Repository navigation
Scout pipeline and the PRD-750 Tier-1 games (PRD-735 Phases 2-3) - #1
Merged
Merged
Conversation
…idation (PRD-735 Phase 2) Co-Authored-By: Claude Opus 5.5 <[email protected]>
5 of 7 tasks
… scouted; SCOUT_ARM runs a scout through a wrapper when the dsh balance is empty Co-Authored-By: Claude Opus 5.5 <[email protected]>
Collaborator
Author
|
Quake scouted (PRD-750 row 2): 9 nodes, 22 cards at |
… them Co-Authored-By: Claude Opus 5.5 <[email protected]>
… existing ids kept (PRD-735 AC-1)
…unce, chase side, damage kick)
…D-750 genre row 4)
…e scaling decoded (PRD-735 AC-3)
…econd import is byte-identical (PRD-735 AC-1)
…90b3, fixed-point speeds decoded (PRD-750 genre row 5)
…ts/ (PRD-001) - git mv games, catalog, schemas, both CLIs and all suites into canonical paths; derive data/schema paths from module locations and the scout root from its own - load both schemas from disk, add --data-only/check:data that rejects legacy root data, filename/id drift, tier faults and noncanonical JSON offline - validate the whole library before pinned-source checks, release writes and the atomic catalog replacement in the importer - scout brief and prompt name data/games/<id>.json; catalog promotion stays with the review lane - add tests/library.spec.mjs CLI coverage and make CI collect every suite Baseline 8b36c2c: every migrated document parses identical to its pre-move blob.
…cout prompt in tests Each new invariant test was mutation-checked: breaking the schema file, an authored-data write, a stale root path or a prompt/brief path drift each makes it fail.
The map was left at the repository root by the scout lane: 11 nodes and 19 review cards at vetritheretri/ssb-decomp-re 572a747, all pinned citations verified. Move it to data/games/ and promote its catalog row to Tier 1 so check:data and the release build see six mapped games. The real-dataset test now derives the game count instead of freezing it.
editorial scale: 5 genre-defining, 4 landmark, 3 notable, 2 niche, 1 minor. The value lives only on the Tier-1 catalog row so game files and the release index cannot disagree; check:data fails when a mapped game has no rating and the catalog schema rejects ratings outside 1-5. Tier-2 rows stay unrated until a game is mapped.
genre is a closed enum and the stable filter key; subgenre is an optional lowercase label. Both sit on the catalog row only, are required for mapped games (check:data fails otherwise), and stay absent on unreviewed Tier-2 rows instead of guessing thousands of classifications.
platform was carrying list section names: 249 rows said 'Open-source
reimplementations', 36 'Other', 138 'Source ports' and 26 'Multiplatform',
and platforms named in a note ('Engine reimplementation, PC / DOS.') were
dropped. platform is now a closed 52-value vocabulary plus 'unknown', and the
new required kind records what the repository is (decompilation, disassembly,
static-recompilation, port, source-port, browser-port, engine-reimplementation,
system-software, original-source) from the same section and note text.
classify() in scripts/import.mjs owns the mapping so fresh imports agree:
re-importing the pinned list is byte-identical. Mapped games must name a real
platform; 'unknown' is limited to unexplored rows (203).
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.
What is this PR about?
The scout pipeline from ThreeNative PRD-735:
npm run scout -- <id> <repo> <sha>clones one game repo at a pinned SHA, runs one headless DeepSeek scout with the fixed brief inscout/BRIEF.md, and validates itsgame-<id>.jsonagainst the pinned source.Why does it matter?
The ThreeNative kit loop (PRD-750) needs reverse-engineer references past SM64. Games land here in the PRD-750 genre order.
Done
scout/BRIEF.md,scout/run.sh,validate.mjs --game <id>;node --test scout/run.spec.mjs validate.spec.mjs8/8 (red 4/4 first)Still open