run_id = "pib5_geometry_audit_2018_2024_g4_3_20260808"
created_at = "2026-08-08T06:34:27Z"
git_commit = "3a930fb02d48f714da6a45817926da42a80d87b5"
git_dirty = true
universe_config_path = "config/strategies/universes/v2.toml"
universe_config_hash = "dc3fbaaf95436814f5693833cb247eb43f091674ecbeca7161c4f733cc027308"
atoms_config_hash = "eaed01f1052660fce5bd7d63baf4cea8770b07d222d9115ea16f0a78f7f4313d"
from = "2018-01-01"
to = "2024-12-31"
frequency = "daily"
tickers = 371
observations = 597255
price_contract_version = 1
observation_price_source = "sharadar_sep"
observation_price_basis = "sharadar_sep_provider_ohlc"
database_path = "/var/lib/hus/.hus/housing.db"
database_modified_at = "2026-08-07T23:49:28Z"

[pib_geometry]
version = "PIB5_G4_3"
model = "bar_envelope"
legacy_swing_order_unused = 2
max_impulse_leg_bars = 120
legacy_min_impulse_move_unused = 0.2000
legacy_min_pivot_delay_unused = 5
max_impulse_gap_bars = 21
min_base_bars = 10
max_base_bars = 120
primary_resistance = "highest high in frozen base"
primary_support = "lowest low in frozen base"
secondary_subset_min_bars = 6
secondary_subset_max_bars = 61
secondary_subset_end = "validation bar"
secondary_resistance_slope = "declining only"
secondary_support_slope = "rising only"
secondary_outer_containment = true
secondary_must_add_contact = true
contact_tolerance_atr = 0.50
component_contact_gate = "per side: max(primary, secondary) >= 3"
min_component_resistance_contacts = 3
min_component_support_contacts = 3
combined_contacts_are_not_additive = true
decline_dominance_gate = true
decline_dominance_contacts = "secondary resistance > distinct primary or secondary support bars"
decline_dominance_slope = "no secondary support or abs(resistance slope) > abs(support slope)"
flat_floor_channel_consumption_gate = true
min_flat_floor_remaining_ratio = 0.40
freeze_on_first_valid = true
refit_after_validation = false
legacy_max_base_bars_unused = 200
legacy_min_resistance_pivots_unused = 2
legacy_min_support_pivots_unused = 2
legacy_max_resistance_spread_unused = 0.1200
legacy_min_support_slope_unused = -0.0010
legacy_max_breakout_distance_unused = 0.1000
base_depth_gate = false

[artifacts]
observations = "observations.parquet"
observations_sha256 = "027a9f061143ef4268c9a0b1aca2813015b85d9faa58506779306079f0339437"
pib_geometry = "pib_geometry.jsonl"
pib_geometry_sha256 = "19856b52ff7d234a10801a5b7d3af76dda13c93739ce4b4bc6a1ef50c4e94f02"
summary = "summary.csv"
pairs = "pairs.csv"
atoms_dir = ""
incremental_store = false
atom_store_note = "not retained in durable audit copy because the host disk was full"
