Repository navigation
Claude/phase 8.1 point in time - #159
Merged
Merged
Conversation
… stale-warns, simple allocation table Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…grate + D-04 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…, PIT vacuity guard, sidecars); STATE planned Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…spine - config: top-level publication_lags table for every emittable column (m2sl 1, totalsl 2, div_yield 3, fred_gdp fallback 3, research derived, agency vintage-aligned) plus report.staleness_grace_days: 7 - publication_lags.py: lag_table (validates, rejects fred_monthly shift), apply_publication_lags (timestamp shift, raises on unlisted/derived/vintage), lag marker helpers - build_monthly_spine lags splice_input once; research series and monthly_raw are built from the lagged frame - test_platform_point_in_time.py: truncation-by-poisoning proof through the real build, detector self-test (div_yield 0, bypassed lag), floor and completeness checks Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…merge guard - ALFRED: at every month-end 1970-1980 the aligned value is the latest reference period released by then, in both eras (red: 40 month-ends, Q1 visible at Feb 28 under the shift(1) fallback) - last_complete_month_end and a last-day-of-month build without that row - publication_lags.json marker guard: missing/different raises before any write, matching merges, empty dir writes the marker - fred_monthly shift: true makes lag_table raise Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…-marker merge guard - _shift_fallback_series takes lag; align_agency_monthly passes each series' publication_lags fallback_months and raises for an agency name without a vintage entry (pre-vintage fred_gdp 1 -> 3, ruling 1) - remove the fred_monthly shift flag and macro_monthly's shift branch (every flag was false: byte-identical output); lag_table rejects shift - last_complete_month_end: a build never writes the running month - build_monthly_spine refuses to merge onto a monthly_raw whose publication_lags.json marker is missing or different, before any write, and writes the marker after a successful save - docs/vintage_alignment.md: CR-03 gap closed in code; GDP fallback note Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…g of 46 - gate_tiers: DECLARED_TRIAL_CEILING = 46 (DECISIONS G-05) for the live count; RECORDED_TRIAL_CEILING = 44 and the historical pins unchanged - joint_diagnostics_record: 44 <= live <= 46; 08-10's two rows exist in order at adjacent positions (not necessarily last); record pins 42/44 and adr_0002_ceiling == 44 kept Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
- CLAUDE.md layout tree + current status, README badge + feature list (test_docs_recorded_counts pins them to pytest --collect-only) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…refusal - stale_series/expected_month_end judge each publication_lags series against the run date (report.staleness_grace_days, default 7); the banner warns and the report still writes - MAX_SCORING_LAG_MONTHS and its refusal are removed (DECISIONS A-12 supersedes A-07) - tests: nan_tail=4 banner, grace boundary, pure stale_series, banner rendering Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…k's executed book - class | ticker | target % | last week % | change table under the trades heading, printed with or without accounts; cash row FZFXX is the residual - load_last_executed_weights reads the previous run's executed book before it is overwritten - the same-month re-run test now compares sections without the table's last-week column Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…3-line account how-to; counts 2550 - a late series puts a STALE DATA banner at the top and the report still runs - how to add a gitignored config/accounts/<name>.yaml and list it under report.accounts - recorded test counts updated to the live collection (2550) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…plan summary Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
- run_full_backtest_evaluation on HEAD monthly_features/monthly_raw with NO_REGISTRY - report, KPI table and both equity curves under outputs/reports/platform/pit_08.1/before - registry 44 before and after, sha256 c957e8fd...088ad unchanged Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
- scripts/migrate_publication_lags.py: one-off offline migration (merge=False + publication_lags.json marker; refuses a second run) - div_yield lag 3, fred_m2sl 1, fred_totalsl 2 via apply_publication_lags; every lag-0 column byte-equal to HEAD; 2026-08-31 row holds HEAD's div_yield@05-31, m2sl@07-31, totalsl@06-30 exactly - equities_tr rebuilt from lagged div_yield on HEAD's merge-preserved base (HEAD = unlagged rebuild x 1790.04, proven constant to rel 1e-9) - fred_gdp: pre-vintage fallback lag 3 (= HEAD two month-ends earlier); post-vintage chain re-anchored (x 0.996526657709); live ALFRED equals the HEAD-derived expectation in all 5 agency series, zero revision drift Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…ed raw - scripts/recompute_monthly_features.py (offline): dev 708 rows <= 2020-12, holdout 68 rows 2021-01..2026-08; index, columns and boundary unchanged - only lag-explained columns move: div_yield, fred_m2sl, fred_totalsl, fred_gdp, equities_tr and its 4 derived features (trailing_return_1m/3m, realized_vol_1m/3m); recompute on HEAD's raw reproduces HEAD exactly Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
- 07-DEPENDENCE 0.2 recipe: label_regimes(dev_features[ref_cols], cfg) on the 10 frozen columns (_reference_label_columns, first decision 1972-01-31); the frozen set is unchanged by the lags - determinism gate: the same call on HEAD's features reproduces HEAD's labels exactly and its confidences at rel 1e-9 - 695 labels 1963-02..2020-12 (unchanged span); 2 months move: 1974-10 5 -> 0 and 1991-04 1 -> 5; state 4's third profile term changes (low cape_shiller -> high div_yield) - regime_labels_2 (classifier #2, DEFER) untouched and now stale Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
- platform_snapshot.py export --names monthly_raw monthly_features: the 2026-09-08 snapshot was unlagged (20 cols); a restore would have reintroduced unlagged data. Now 47 / 55 cols through 2026-08-31, lagged - the pre-existing 0-row daily_raw snapshot file is left as it was; the new manifest lists only the two exported names Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…oves Rule 1 (verifies a Phase 7/8 record -> pre-8.1 data via git show 06002f9): - conftest: pre_pit_platform_dir fixture (skips if the commit is unreachable) - sojourn_lag TestHeadlinePinOnRealDevInputs: pins unchanged (9.5/4.0/2.375) - subsample_stability_record: module reads pre-8.1 checkpoints; pins unchanged (regime_labels_2 is DEFER and stale on the lagged data) Rule 2 (property of the current data, lag-explained, dated old -> new notes): - plotting_regime EXPECTED_CHANGE_POINTS 7 -> 9 points, min active 5 -> 4 (div_yield lag 3; equities_tr's 1m features start 1962-05) - report_serving CR-01 real-data test: label counts {0:40,1:228} -> {0:41,1:227}; belief 0.300/0.293/0.163 -> 0.306/0.290/0.162; old[3] 0.369 -> 0.370. The CR-01 prior flip survives (argmax 0 new, 3 old) Full suite: 2550 passed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…> 46) - Two append-only registry rows tagged 08.1-pit-tilt-vs-ablation (strategy, ablation) - Backtest and model-metrics outputs rewritten on the migrated point-in-time data - Window 1972-01-31..2020-12-31, 588 steps, 10 bps Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…row updates - E-06: before|after table, DSR at 46 vs hurdle 2.2442, the one yes/no sentence - E-07 (DEFER to 8.2): monthly-average-price returns caveat - D-07: pre-vintage fred_gdp fallback lag 3; D-05 open -> built with table summary - A-07 superseded by A-12; A-11/A-12 built; A-03 deferred to 8.2; E-04 -> E-06 - G-05: budget spent 44 -> 46, tag 08.1-pit-tilt-vs-ablation Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…ter answer - E-06 answer NO: strategy TLW 3.8909 vs ablation 4.0424 (delta -0.1515), 10 bps, same run - Registry 44 -> 46, sha256 1d893af3...d02d; suite 2550 passed; no Task 4 re-pins Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…E/ROADMAP executed 3/3 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
…tays advisory in 8.2 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018uY2PDfrfhs9KL6vSbBAvB
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.