iteration 08 ยท card 59 S4โS11 ยท batch-6 implementation ยท 2026-07-02
Card 59 โ wired and certified in one pass; lessons from card 78 paid off 11/16
← campaign board ยท previous: iter 07 (the bit-exact kernel)
In plain language โ what happened this iteration
Feature 2 went from "computes correctly" to "wired and certified" in a single iteration โ half the iterations feature 1 needed for the same ground. Two reasons, both worth understanding:
Reason 1 โ the second traveler uses the first one's map. Feature 1 (Hoeffding) had to blaze the trail: discover every hand-off where a computed value could silently vanish (the #556 incident class), bump every exact-count tripwire, and learn โ via its adversarial trial โ that a forgotten bookkeeping test elsewhere (the "65 features" compat count) breaks the suite on deploy day. Today feature 2 simply walked the same 11 hand-off points in order, and proactively bumped the compat counts (66โ67, 13โ14) that the card-78 attacker had to catch after the fact. A lesson learned once, institutionalized.
Reason 2 โ this feature lives in the shared machinery. Because "how long until price comes back?" reads only closing prices, iteration 07 plugged it into the standard 200-bar window record shared by 12 other features. Today that paid compound interest: the pipeline-wide certification tests โ "no crystal ball" (causality), "same answer twice" (determinism) โ sweep every column of that shared record across both markets. The moment the wiring landed, those sweeps were already exercising the new column. Certification came almost free; only the restart-continuity and stress-input drills needed explicit new lines.
The watchdog that turned red on purpose in iteration 07 is green again: the database blueprint, the engine's record, the feature catalogue, and the column documentation all agree on exactly 14 bar-close measurements. The rehearsal file written by the emergency spool now carries 92 columns and reads back perfectly in Python. All 43 test suites: green.
What's left: the decision record, the six typed commands (/hvghorizon:*), the full
repo quality gate, the adversarial attacker/defender trial, and the pull request โ stacked on top of
feature 1's, so the human operator can review them in order.
Grounded this iteration
S4: all write surfaces from the manifest SSoT โ 14th bar_close manifest entry, schema.sql,
column_comments.py, constants.py, arrow_export.rs
(schema/builder/append/finish + round-trip test value 6.5), helpers.rs dict,
row.rs, dead_letter.rs; tripwires 86โ87 / 91โ92 (+py mirror) / compat 66โ67 &
13โ14 (proactive). S5/S6: the standard 13-column causality/determinism drivers now sweep the column โ
green ร2 symbols. S10: batch โก streaming โก checkpoint-restart extended + non-vacuity guard. S11:
registered in the pow2-scale (bit-exact) and crash-bounds harness lanes. Battery: 43/43; row 11/11 (92);
dead-letter round-trip green; completeness 14==14==14.
Next fire picks up here
S12 ADR (docs/adr/2026-07-02-bar-hvg-forward-visibility-horizon-mean.md โ record the
first-passage formulation, the โฅ tie rule, right-censoring, the VG-helper correction, bit-exactness).
S13 hvghorizon:* namespace โ NOTE the filterset trap: unit tests match
test(hvghorizon) but the oracle gate is
test(bar_hvg_forward_visibility_horizon_mean_matches_python_oracle) โ include BOTH, with
--no-tests=fail. S14 check-full. S15 Attacker/Defender (0 conceded) โ attack
angles: the โฅ vs > tie rule vs the probe, right-censoring bias, stack-pop order, walk-tuple arity
churn, stale hand-counts. S16 commit + stacked PR: base = feat/bar-orth/batch6-78-hoeffding
(NOT main โ PR #568 must merge first), gh pr list --head before creating. Worktree:
~/eon/odb-worktrees/batch6-59-hvg-horizon, uncommitted, ledger is truth.