test(artifact-registry-coverage): Phase 4 PR 5 — ae-research producer-side CI guard#243
Merged
Merged
Conversation
…-side CI guard Phase 4 PR 5 of the artifact-freshness-monitor arc (plan doc: ~/Development/alpha-engine-docs/private/artifact-freshness-monitor-260527.md). Mirrors alpha-engine-data PR 4 (#336, merged 2026-05-27) across the ae-research repo. The cascade closes producer-side coverage of the registry across all 4 producing repos (ae-data done; this is PR 5). What this catches: new s3.put_object(...) / s3.upload_file(...) in ae-research production code without a matching ARTIFACT_REGISTRY.yaml entry. Forces operator attention at every new producer addition. Initial pin: 30 PUT sites across 20 files in ae-research production code (excluding tests/, infrastructure/lambdas/, .claude/, .venv/, build/). Design choice — per-file count over per-key-template extraction. See ae-data PR 4 commit message for the full rationale. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
5 tasks
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
Phase 4 PR 5 of the artifact-freshness-monitor arc (plan doc at
~/Development/alpha-engine-docs/private/artifact-freshness-monitor-260527.md; ROADMAP P1 entry in alpha-engine-config #342 / #344). Mirrors alpha-engine-data PR 4 #336 (merged 2026-05-27) across the ae-research repo. The cascade closes producer-side coverage of the registry across all 4 producing repos.Sibling PRs ship same-session: ae-predictor PR 6, ae-backtester PR 7.
What this catches
A new
s3.put_object(...)ors3.upload_file(...)in ae-research production code that hasn't been registered inalpha-engine-config/private-docs/ARTIFACT_REGISTRY.yaml(or explicitly grandfathered). Forces operator attention at every new producer addition — the silent absence-of-artifact bug class (e.g., 2026-05-17→27pit_parity.json, 2026-05-23 missingsignals.json— which originates in this repo'sgraph/research_graph.py→lambda/handler.py) can't slip past PR review without an explicit register-or-grandfather decision.Initial pin
30 PUT sites across 20 files in ae-research production code (excludes
tests/,infrastructure/lambdas/,.claude/). Notable concentrations:archive/manager.py: 5 (per-thesis archive + db backup)evals/*.py: 8 across 6 files (orchestrator, judge, manifest, scorecard, rolling_mean, clustering)data/fetchers/*.py: 3 (analyst, insider, revision daily snapshotters)scoring/factor_scoring.py: 2 (per-date + latest pointer)Test plan
pytest tests/test_artifact_registry_coverage.py -v— 3 passings3.put_object(...)line to any existing producer file → test fails with the operator-resolution message🤖 Generated with Claude Code