feat(adaptive): TSX single-session study + frozen pre/post eval#19
Merged
Conversation
…skills Wire the S&P/TSX Composite into the bootcamp pre/post adaptive shape, mirroring how SP500_ADAPTIVE_DOMAIN was built from SP500_DOMAIN: - `TSX_ADAPTIVE_DOMAIN` = `TSX_DOMAIN.model_copy` with the four adaptive skill-dir fields, plus `TsxStrategyState` (branded "S&P/TSX Composite Forecasting Strategy") and tsx-distinct config/predictor factories. - Committed `tsx-strategy` seed skill (StrategyState, domain priors only) and TSX variants of the equity pipeline skills under `skills_tsx/`: fetch-yfinance (^GSPTSE), vol-regime (TSX realised-vol bands 10/15/22/30 from TSX_DOMAIN), trend-projection, meta-learning. The sp500 `skills/` dirs are untouched. - `reseed_strategy` takes a `state_type` so the trained SKILL.md re-renders with the right branding; `reseed_tsx_strategy` pins the tsx seed/trained dirs. Trained variants are gitignored (RESEED artifacts, seed is never mutated). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- `ws-study --domain tsx` (no subcommand) runs the whole bootcamp demonstration study: ONE self-directed session over the full pre-2026 history AND a review of the 2025 period, distilled into `tsx-strategy` via the gated mutation tools (default 50 turns, distill checkpoints every 10). Reuses the Phase-A driver machinery — `run_study_hall` now takes a `StudyHallPrompts` override, and the CLI is domain-parameterised (seed/trained dirs, branded state, config factory, turn prompts). `--run` RESEEDs seed → trained first; the sp500 phase-a/phase-b paths are unchanged. Per-turn transcript + accounting persist as 2c built. - `ws-adaptive-eval --domain tsx` runs the two frozen arms (untrained seed vs trained) over `tsx_ws_eval_2026_weekly` via the resumable runner, ADVANCED_MODEL by default (model is a parameter). Predictor ids are tsx- and arm-distinct so caches never collide; both commands report the standard RunAccounting. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Offline tests (no model calls): - domain: TSX_ADAPTIVE_DOMAIN renders with the TSX persona and no S&P-500 / oil-persona bleed, the branded strategy title, seed skill loads + SKILL.md round-trips, and mutation-tool attach/strip with tsx-distinct agent names. - reseed: RESEED for the tsx dirs branded correctly; the seed is never mutated. - eval: the two-arm plan over tsx_ws_eval_2026_weekly, distinct arm dirs, and arm expansion with distinct predictor ids (fake predictor). - CLIs: `ws-study --domain tsx` single-session dry-run (+ phase-a alias, sp500 default unchanged), `ws-adaptive-eval --domain tsx` dry-run + --arm override, and the TSX study prompts threading through the driver. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
Summary
The bootcamp-style adaptive demonstration wired for the TSX (retrospective addendum, per plan):
ws-study --domain tsx --runperforms one RESEED + one bounded (50-turn) self-directed study session distilling a strategy intotsx-strategy-trainedvia the gated mutation tools;ws-adaptive-eval --domain tsx --runevaluates untrained-vs-trained, frozen, overtsx_ws_eval_2026_weeklywith arm-distinct, cache-separated predictor ids. Deliberately excludes the twins/continual-learning machinery (that's the live phase); the TSX meta-learning skill drops the live-gating section accordingly.TSX_ADAPTIVE_DOMAIN, committedtsx-strategyseed (byte-exact SKILL.md round-trip),skills_tsx/pipeline variants (sp500 dirs untouched), 24 new tests.Verification (orchestrator-run)
pre-commit --all-files clean; 701 passed, 7 skipped.
🤖 Generated with Claude Code