Files
BFM-decomp/config/tool_dictionary.tsv
T

86 KiB

1pathphaseportabilityneedwhatadaptsstatussuccessor_or_product
2tools/ab_score.pyP5ADAPTre-score both arms of an experiment with the standalone matcher as ground truthRe-scores every draft of two experiment arms with the standalone matcher as ground truthrepo scratch pathsLIVE
3tools/agent_drafts_restore.pyP8ADAPTrebuild an agent's final draft by replaying its transcript writesReplays an agent's writes from its transcript to rebuild its final deliverableagent transcript pathsLIVE
4tools/agent_reports.pyP8ADAPTsave each subagent's full final report to one file per targetSaves each subagent's full final prose report to one file per targetagent transcript pathsLIVE
5tools/agent_verdicts.pyP8ADAPTpull the final structured verdict out of each subagent transcriptPulls the final structured verdict out of subagent transcriptsagent transcript pathsLIVE
6tools/alloc_table.pyP7PORTABLElist each pseudo-register's refs, live length and allocation priority from compiler dumpsPrints each pseudo's refs, live length, block and allocation priority from compiler pass dumpscompiler pass-dump format, repo dump rootLIVE
7tools/api_agent.pyP8ADAPTgive an external chat model the same multi-turn tool harness an agent getsGives an external chat model the same multi-turn tool harness an agent getsprovider endpoint, repo doc pathsLIVE
8tools/api_draft.pyP8ADAPTdraft one function against any chat-completions endpoint, provider-agnosticProvider-agnostic single-shot drafting worker against any chat completions endpointprovider endpoint, repo doc pathsLIVE
9tools/api_rate.pyP8ADAPTmeasure a drafting provider's real request rate and rate-limit attributionReports measured request rate and rate-limit attribution from append-only telemetryrepo telemetry pathSTILL-NEEDEDmeasure a drafting provider's true request rate and rate-limit attribution
10tools/aprop_autodraft.pyP6ADAPTdraft a family member mechanically from a seed body and symbol rebaseMechanically drafts a family member from the seed body plus a positional symbol rebaserepo scratch pathsFROZENtools/share_body.py
11tools/aprop_symfix.pyP6ADAPTrebase a remapped draft's stale seed symbols onto the target's ownRebases stale seed symbols in a mechanically adapted draft onto the target's own symbolsrepo symbol/config sourcesLIVE
12tools/asm_verbatim.pyP10ADAPTemit a function's target assembly as an inline-assembly bodyEmits the file-scope inline-assembly body form from a disassembly filerepo asm layoutLIVE
13tools/atlas.pyP5ADAPTpartition every open function into exactly one lever-labelled work groupPartitions all open functions into exactly one lever-labelled work grouprepo scratch pathsLIVE
14tools/atlas_features.pyP5ADAPTextract one deterministic feature record per function across every registered binaryExtracts one deterministic feature record per function across all registered binariesrepo signature filesLIVE
15tools/audit_binaries.pyP5ADAPTassert every consumer knows about each newly onboarded binaryGate asserting every consumer knows about each newly onboarded binaryrepo config/registry pathsLIVE
16tools/audit_digest.pyP5ADAPTrecompute headline metrics and fail if the committed digest disagreesRecomputes headline metrics from the current tree and fails if the committed digest disagreesrepo docs pathsLIVE
17tools/audit_frontier.pyP5ADAPTcheck that the independent what-remains views agree with the corpus oracleChecks that the independent "what remains" views agree with the corpus oraclerepo pathsLIVE
18tools/audit_header_sigs.pyP5ADAPTfind shared-header declarations that contradict a function's banked definitionFinds shared-header declarations that contradict the banked definitionrepo shared-header pathsSUPERSEDEDtools/conform_decls.py
19tools/audit_public.pyP9ADAPTgate a first push: prove no derived bytes among tracked filesThe first-push gate: no derived bytes among tracked files, four independent checksrepo purge-set and path lists (the kit's template reads `config/firewall.txt` instead)LIVE
20tools/audit_text_sources.pyP5ADAPTassert every tracked source is plain text so text searches never skip itEvery tracked C source must be plain text, or text searches silently skip itrepo src pathsLIVE
21tools/auto_driver.pyP8ADAPTloop a stub worklist through scaffold, draft and gate without any modelAutonomous model-free driver looping a stub worklist through scaffold, draft and gatecanonical source binary, repo pathsLIVE
22tools/auto_status.shP8ADAPTprint an unattended run's heartbeats and recent progress for a remote check-inPrints the unattended run's heartbeats and recent progress for a remote check-inrepo scratch pathsLIVE
23tools/auto_stop.shP8ADAPTrequest a safe exit of an unattended run through a stop sentinelRequests a safe exit of the unattended run via a stop sentinelrepo scratch pathsLIVE
24tools/auto_supervisor.shP8ADAPTkeep an unattended driver alive across crashes until a clean exitKeeps an unattended driver alive across crashes until a clean or requested exitrepo scratch pathsLIVE
25tools/autopsy.pyP7ADAPTrecompile every open draft and classify its failure into a residual corpusMaterializes the residual corpus by recompiling every open draft and classifying its failurerepo scratch/build pathsLIVE
26tools/backlog.pyP5ADAPTkeep a ranked ledger of every close-but-not-matching attemptNear-miss ledger: every close-but-not-matching attempt, ranked for hand sessionsrepo scratch/doc pathsLIVE
27tools/bank_exemplar.pyP6ADAPTbank one cracked exemplar through the carve, splice and staged-recovery ladderBanks one cracked exemplar through the carve, splice and staged-recovery ladderrepo src/config layoutSUPERSEDEDtools/gate_stage.py
28tools/bfm_extract/__init__.pyPROJECT-ONLYPROJECT-ONLYexpose a disc extraction pipeline's stages as one packagePackage entry for one title's disc pipeline; names its own container stagesproject-onlyLIVE
29tools/bfm_extract/cd_archive.pyPROJECT-ONLYPROJECT-ONLYread a bespoke container's table of contents to locate its filesReader for one game's bespoke container table-of-contents formatproject-onlyLIVE
30tools/bfm_extract/crosscheck.pyPROJECT-ONLYPROJECT-ONLYcross-validate an extraction against an independent third-party toolCross-validates against a third-party tool written for that specific gameproject-onlyLIVE
31tools/bfm_extract/extract.pyPROJECT-ONLYPROJECT-ONLYwalk the whole medium and extract every file deterministicallyFull-disc extractor bound to one disc's root file list and audio-track handlingproject-onlyLIVE
32tools/bfm_extract/extract_exe.pyPROJECT-ONLYPROJECT-ONLYextract the console executable and hard-validate its name, size and headerHard-validates one executable's exact name, size, hash and header field valuesproject-onlyLIVE
33tools/bfm_extract/extract_proto_exe.pyPROJECT-ONLYPROJECT-ONLYextract a prototype build's executable, allowing for its known deviationsCompanion for one title's prototype discs and their specific deviationsproject-onlyLIVE
34tools/bfm_extract/iso9660.pyP1PORTABLEwalk a raw data track's filesystem and extract files by nameReusable reader for a raw 2352-byte-sector data track; walks the filesystem and extracts files by namenoneLIVE
35tools/bfm_extract/lzss.pyPROJECT-ONLYPROJECT-ONLYdecode a bespoke compression format, cross-checked against its own length fieldDecoder for one game's non-generic compression semantics, verified against its own decompressorproject-onlyLIVE
36tools/bfm_extract/manifest.pyP1ADAPTbuild and verify a deterministic sorted checksum manifest of an extraction treeBuilds and verifies a deterministic sorted SHA1 manifest of an extraction treethe extraction output rootLIVE
37tools/bfm_extract/pac.pyPROJECT-ONLYPROJECT-ONLYparse a bespoke archive-chain header formatParser for one game's bespoke archive-chain header formatproject-onlyLIVE
38tools/bfm_extract/test_lzss.pyPROJECT-ONLYPROJECT-ONLYunit-test a bespoke compression decoder against known casesUnit tests for that game-specific compression variantproject-onlyLIVE
39tools/bisect_slate.pyP8ADAPTisolate the byte-wrong drafts in a batch, with a null control firstIsolates the byte-wrong drafts in a batch, with a null control firstrepo build pathsSUPERSEDEDtools/gate_main_parallel.py
40tools/blast_radius.pyP8ADAPTmeasure a change's write set and name the verification it actually requiresMeasures a change's write set and names the verification it actually requiresrepo tree layoutLIVE
41tools/blocker_probe.pyP5ADAPTexplain with two oracles why a byte-correct draft fails the whole-binary gateRead-only two-oracle explanation of why a byte-correct draft fails the whole-binary gaterepo build pathsFROZENtools/share_body.py
42tools/bootstrap.shP9ADAPTset up a fresh clone idempotently: packages, environments, pinned toolsIdempotent fresh-clone setup: check packages, create environments, fetch pinned toolsrepo layout, package namesLIVE
43tools/build_engine_types.pyP10ADAPTextract inline-defined types and typedefs from a source file into a shared headerExtracts inline-defined named types and typedefs from a source file into a shared headerrepo shared-header pathLIVE
44tools/build_fuel_manifest.pyP8ADAPTunify live stubs into one ranked, class-tagged, cache-annotated target poolUnifies live stubs into one ranked, class-tagged, cache-annotated target poolcanonical source binary, repo scratch pathsLIVE
45tools/build_wave.pyP8ADAPTbuild the next drafting wave from a card pool by fleet leverageBuilds the next wave from a card pool, ranked by fleet leveragerepo scratch pathsSUPERSEDEDtools/draw_waves.py
46tools/build_wave_args.pyP8ADAPTemit drafting-workflow arguments for a wave from a target manifestEmits workflow arguments for a wave from the target manifest, resolving each pathrepo asm/scratch layoutSUPERSEDEDtools/wave_args.py
47tools/build_wave_atlas.pyP8ADAPTbuild a wave from the frontier atlas, optimized for gate throughputBuilds a wave from the frontier atlas, optimized for gate throughputrepo scratch pathsLIVE
48tools/bulk_harvest.pyP8ADAPTmass-draft small stubs with a served model and gate them in parallelPhase-separated bulk drafting plus a parallel gate farm, for throughputrepo scratch paths, GPU endpointSTILL-NEEDEDmass-draft small stubs with a served model and byte-gate them in parallel
49tools/burndown.pyP5ADAPTtrack per-session yield and velocity so a diminishing-returns close is visibleTracks per-session yield and velocity so a diminishing-returns close is visiblerepo ledger pathsSTILL-NEEDEDsee when per-session yield floors out so a diminishing-returns close is defensible
50tools/campaign_status.pyP8ADAPTreport every concurrent lane with its own metrics, not only the loud oneOne status view covering every lane, not only the loud onelane names, repo scratch pathsSTILL-NEEDEDreport every concurrent lane with its own metrics, not only the loud one
51tools/canon_draft_decls.pyP6ADAPTcanonicalize a draft's extern and data declarations to the banked-consistent setCanonicalizes a draft's extern and data declarations to the banked-consistent setrepo shared-header pathsSUPERSEDEDtools/sig_unify.py
52tools/canon_resident_calls.pyP6ADAPTrewrite address-named calls in a draft to their curated symbol namesRewrites address-named calls in a draft to the curated symbol name when one existsrepo symbol file pathLIVE
53tools/canon_sig_reconcile.pyP6ADAPTreconcile a definition's typed signature with what its destination unit declares — part of banking against a canonical type layer from Phase 6; again at readability (Phase 10)Reconciles a definition's typed signature with what its destination unit already declaresrepo src layoutFROZENthe types phase (Phase 37)
54tools/cast_call_sites.pyP10ADAPTadd per-site function-pointer casts so a draft can call a differently typed calleeAdds per-site function-pointer casts so a draft can call a differently typed calleerepo src layoutLIVE
55tools/cast_self_callers.pyP6ADAPTlet a unit keep calling, through per-site casts, the function it now definesLets a unit keep calling, through a per-site cast, the function it is about to definerepo src layoutLIVE
56tools/cc1_dumps.shP4ADAPTdump every compiler pass file for a self-contained draftDumps every compiler pass file for a self-contained draft into a private directorycompiler triple, repo scratch pathsLIVE
57tools/cc1_dumps_tu.shP4ADAPTdump every compiler pass file for the spliced real translation unitSame pass dumps for the spliced real translation unit, the faithful compileabsolute repo path, compiler tripleLIVE
58tools/cdecl.pyP6PORTABLEparse C declarators once, for every declaration tool to shareThe single recursive-descent C declarator parser every declaration tool sharesC89 grammar onlyLIVE
59tools/cdtrace.pyPROJECT-ONLYPROJECT-ONLYobserve a live loader's requests to learn which payload loads whereReads one game's loader request structures at fixed RAM addressesproject-onlySTILL-NEEDEDobserve a live loader's requests to learn which payload is read to which address
60tools/claude_wave_packs.pyP8ADAPTbuild the per-function prompt packs a drafting agent wave works fromBuilds the per-function prompt packs an agent wave drafts fromrepo scratch paths, agent harnessLIVE
61tools/compile_only.pyP9ADAPTcompile every eligible translation unit with the pinned toolchain, using no derived bytesCompiles every eligible translation unit with the pinned toolchain, without any game bytescompiler triple, repo makefile parsingLIVE
62tools/conform_decls.pyP6ADAPTconform every declaration of a function fleet-wide to its byte-true definition — width and signedness proven by the bytes at bank time (Phase 6)Conforms every declaration of a function fleet-wide to its byte-true definitionrepo src/shared-header layoutFROZENthe types phase (Phase 37)
63tools/cookbook_index.pyP9ADAPTgenerate a symptom-keyed index of a large technique documentGenerates a symptom-keyed index of the large technique documentrepo doc pathsLIVE
64tools/corpus.pyP5ADAPTanswer from one derived model whether each function is open, matched or sharedThe single derived model of the source tree: open, matched or shared, per functionrepo src/config layoutLIVE
65tools/decl_from_use.pyP6ADAPTinfer a minimal extern for a data symbol the destination unit does not declareInfers a minimal extern for a data symbol a draft uses but its destination does not declarerepo src layoutLIVE
66tools/decl_prior.pyP6ADAPTcompute the fleet's consensus declaration for every symbol, as card fuel — the seed of a canonical type layer (Phase 6)Computes the fleet's consensus declaration for every symbol, as card fuelrepo src layoutLIVE
67tools/decompile.pyP4ADAPTturn one function's disassembly into a C scaffold to start a matchWrapper locating a function's disassembly and running the C-scaffold generator on itrepo asm paths, decompiler target nameSTILL-NEEDEDturn one function's disassembly into a C scaffold to start a match
68tools/decompme_replica.shP4ADAPTreproduce an external reference toolchain locally and compare its words to targetRuns a function through an external reference toolchain build and compares words against the targetpinned toolchain versions, network fetchSTILL-NEEDEDkept: a public preset request needs the replica of the community toolchain to prove equivalence
69tools/dedup_extend.pyP6ADAPTextend an existing code-share registry to newly onboarded binariesExtends the existing share registry to newly onboarded binariesrepo config/src layoutSUPERSEDEDtools/share_body.py
70tools/dedup_integrate.pyP6ADAPTvalidate a code-share registry byte-honestly, failing closed on signature driftByte-honesty validator for the code-share registry; fails closed on signature driftrepo config registry pathLIVE
71tools/dedup_propagate.pyP6ADAPTlift one matched body into a shared macro and instantiate it everywhereLifts one matched body into a shared macro and instantiates it at every duplicate siterepo shared-header/src layoutSUPERSEDEDtools/share_body.py
72tools/delever.pyP10ADAPTtake register pins, asm statements, volatile and register levers out of matched C, byte-gated per siteThe Phase-36 de-lever engine and campaign tool: positional rewrites per lever class (pin -> plain declaration, barrier/keep-alive deleted, a launder deleted or turned into the assignment it is, a hand-placed instruction -> its C, the zero-register variable -> 0, a macro-carried site deleted/valued/refused by its macro's shape, volatile/register dropped); per body replay -> rung A strip-all -> rung B greedy through delever_oracle; the file is the write unit and its final compile through every recipe the proof; --plan/--apply batches (TUs parallel, exemplar files first; headers serial, includers parallel), the ledger keyed by tu+fn+addr with the body's nhash before/after, !FAKE markers on class A/B survivors, --redraw for bodies refused by an older tool, --restore from inflight.json, --scrub for orphan markers, --apply-body for T6/T7, --recipes (rung R: the byte-neutral shape recipes — the formerly-pinned declarations permuted, one moved through the declaration run, an initializer split — each judged by the oracle, with an identity control on both the splice and the oracle), --selftest with a stub oracle, --probe (T2)the census site records, the oracleLIVE
73tools/delever_permute.pyP10ADAPTsearch the compiler's own shape space for a lever-free body that keeps the bytesThe Phase-36 rung D: one exemplar per residue text class from the delever ledger (largest class first — a match banks every copy), each prepared as a single-function translation unit (delever's rung-A rewrite of every removable site, every other definition reduced to a prototype, shared-header includes to their prototypes, INCLUDE_ASM and file-scope asm dropped, the build's own CPPFLAGS through cpp -P) against a target regenerated from the ROM image in both the assemblable and the splat form; every attempt calibrates itself first (the LEVERED body must be MATCH, or the harness is not measuring that function) and records the lever-free body's starting distance; decomp-permuter through permuter_ils with the weight profile chosen from the NEEDED kinds; a score-0 winner is banked only through delever --apply-body and the GTE re-fold; scratch, winners and the outcome ledger keyed by alias+fnthe ledger, the permuter harness, the target regeneratorLIVE
74tools/delever_search.pyP10ADAPTfind a lever-free spelling of a body by a guided search on the byte distance, not a blind testThe Phase-36 rung G: the same shape generators as rung R (declaration order/move, initializer split, commutative swap, temp inlined/introduced/hoisted, block wrap/unwrap, adjacent swap) and the same per-TU oracle, but every candidate SCORED — the function's instructions read out of the scratch object and compared, reloc-masked, with the fleet run's baseline object, as an edit distance — the residual CLASSIFIED (REG caller/callee, COUNT, ORDER, MIXED) to choose the move families, and a beam search composing two and three moves under a compile budget; a score-0 verified on every recipe and banked through delever --apply-body, then --propagate to the class. Controls: the tree's own text must score 0 (per body), --positive-control perturbs a matching body and requires the way back, --selftest.repo scratch paths; the recipe oracleLIVE
75tools/delever_pack.pyP10ADAPTbuild the pack one agent needs to read and crack one residue exemplar, without touching the treeThe Phase-36 T7 pack builder (one agent at a time): per residue exemplar of ≥N copies a directory under .run/P36/agents/ with the TU path, the body as the tree has it, the lever-free body (the seed), the residual as mnemonic blocks from delever_search --try (a scratch compile, no tree write), the ledger's NEEDED sites, and every engine attempt with its best moves; ORDER.tsv ranks the exemplars by the best distance reached, then copies. PROMPT.md beside them is the agent's brief.repo scratch paths; the engine's outcomes and tracesLIVE
76tools/delever_oracle.pyP10ADAPTjudge one translation-unit edit by the bytes of its object in under a secondThe Phase-36 fast byte oracle: every object's exact build command captured once via make -n -W (the Makefile's own recipe, pad stage and -O0 overrides included), a candidate compiled in place with -o/-MF redirected to scratch and compared with the fleet run's object; --calibrate proves 100 % equality untouched, twin == primary and a positive control before any verdict is trustedthe Makefile's object rules, the twin ruleLIVE
77tools/gte_consolidate.pyP10ADAPTconsolidate the GTE coprocessor inline-asm macros under Sony's names in one header and sweep dead lever macrosThe Phase-36 T5 tool: every asm-bearing macro definition and direct GTE statement SIGNED by the build's own maspsx→as tail (template bytes with operands bound to fixed registers, operand counts, clobbers); one canonical text per signature named by PsyQ's inline_c.h convention (Sony's file supplies names and clobber lists, never opcode words) written to include/gte_inline.h; per file the canonical duplicates deleted, private names renamed, a variant with extra clobbers tried as canonical and kept as a marked <name>_m lever only when the object differs, direct statements rewritten into canonical calls (a concatenation of two included); every file judged through every recipe; --sweep deletes dead asm-bearing macros and drops a compound macro's inner asm when byte-neutralSony's inline_c.h path, the census sites, the oracleLIVE
78tools/demacroize.pyP6ADAPTescape a shared-header declaration conflict locally by unmacroizing one bodyPer-binary local escape from a shared-header declaration conflict by unmacroizing one bodyrepo shared-header layoutFROZENtools/share_body.py
79tools/diff_autopsy.shP7ADAPTfind which words diverge when the whole-binary gate says different but not whereReproduces exactly what the gate saw, then decodes the diverging words and restores the treerepo src/build pathsSTILL-NEEDEDfind WHICH words diverge when the whole-binary gate says DIFF but not where
80tools/diff_regions.pyP7ADAPTclassify where a remapped sibling's compiled bytes diverge from its targetClassifies where a remapped member's compiled bytes diverge from its targetrepo build pathsSTILL-NEEDEDclassify where a mechanically remapped sibling's compiled bytes diverge from its target
81tools/difficulty.pyP5ADAPTrank unmatched functions easiest-first by size, control flow and call countRanks unmatched functions easiest-first by size, control flow, table presence and call countrepo asm layoutLIVE
82tools/disc_audit.pyPROJECT-ONLYPROJECT-ONLYaccount for every byte of the medium, leaving zero unexplained residueByte partition over one disc, importing the game-specific container and compression modules — the partition itself (every byte of the medium accounted for, residue zero) is a Phase-1 taskproject-onlyLIVE
83tools/distill_scan.pyP8ADAPTdecide which harvested waves still need mining into the technique documentOne pass of the distillation lane deciding which harvested waves still need miningrepo scratch pathsLIVE
84tools/doc_links.pyP9ADAPTcheck that every relative link in the public docs resolvesChecks that every relative link in the public docs resolves and the link policy holdsrepo doc pathsLIVE
85tools/draft_prechecks.pyP4ADAPTskip a draft doomed to fail before any compile is spentStatic pre-checks that skip a draft doomed to fail before any compile is spentrepo symbol/config sourcesLIVE
86tools/draw_waves.pyP8ADAPTdraw several drafting waves off the open frontier, cheapest-firstDraws several drafting waves off the open frontier, cheapest-firstrepo scratch pathsLIVE
87tools/dup_report.pyP5ADAPTreport byte-identical and structurally identical function groups within and across binariesReports byte-identical and structurally identical function groups within and across binariesrepo signature filesLIVE
88tools/eval_lora.pyP8ADAPTevaluate a fine-tuned matching model gate-truthfully on held-out banked functionsGate-true evaluation of a fine-tuned model on held-out banked functionsdataset paths, repo corpusSTILL-NEEDEDevaluate a fine-tuned matching model gate-truthfully on held-out banked functions
89tools/exclude_audit.pyP6ADAPTclassify every exclude-list entry by its current blocker and regenerate the listClassifies every exclude-list entry by its current blocker and regenerates the listrepo config pathLIVE
90tools/exemplar_miner.pyP6ADAPTroute every residual stub to its lever and rank the highest-reach workRoutes every residual stub to its lever and ranks the highest-reach workcensus file paths, canonical source binarySUPERSEDEDtools/atlas.py
91tools/export_pairs.pyP8ADAPTmine gate-verified assembly-to-source pairs into a fine-tuning corpusMines gate-verified assembly-to-source pairs into a fine-tuning corpusrepo src/build layoutSTILL-NEEDEDmine gate-verified assembly-to-source pairs into a fine-tuning corpus
92tools/family_align.pyP6ADAPTclassify drifted structural siblings by aligned words and expand their constantsLength-tolerant aligned classifier plus the mechanical constant-expansion engine for drifted membersrepo scratch pathsLIVE
93tools/family_cousins.pyP6ADAPTcluster the open frontier one tier looser than exact skeleton hashingSimilarity clustering one tier looser than exact skeleton hashing over the open frontierrepo signature filesLIVE
94tools/family_hseq.pyP6ADAPTrank clusters of the unmatched frontier by mnemonic-skeleton hashRanked clustering of the unmatched frontier by mnemonic-skeleton hashrepo signature filesLIVE
95tools/family_manifest.pyP6ADAPTname the one exemplar to draft per structural family, rankedRanked structural-family target manifest naming the one exemplar to draft per familyrepo signature filesLIVE
96tools/family_remap.pyP6ADAPTremap a matched exemplar's source onto a structural sibling by positional symbol pairingMechanically remaps a matched exemplar's C onto a structural sibling by positional symbol pairingrepo src layoutFROZENtools/share_body.py
97tools/family_sweep.pyP6ADAPTsweep a matched exemplar across every same-structure sibling, gate-arbitratedSweeps a matched exemplar across every same-structure sibling, gate-arbitratedrepo src/config layoutFROZENtools/share_body.py
98tools/fetch_psyq.shP9ADAPTacquire and checksum-verify vendor SDK pieces for a linked buildOptional acquisition and checksum verification of vendor SDK pieces for the linked buildPS1 SDK sources, repo pathsLIVE
99tools/find_addr_refs.pyP2PORTABLEfind code that materializes an absolute address, tracking registers rather than pairing windowsRegister-tracked scan for code that materializes an absolute address; never window-pairedMIPS encodings, repo binary registryLIVE
100tools/fix_arity_callers.pyP6ADAPTrepair a shared caller's argument-count conflict for the no-prototype failure classRepairs the shared-caller argument-count conflict for the no-prototype failure classrepo shared-header layoutLIVE
101tools/fix_decl_mirror.pyP6ADAPTbind a void definition to a symbol the destination declares as returning a valueBinds a void definition to its symbol when the destination declares a value returnrepo src layoutLIVE
102tools/fix_header_decl.pyP6ADAPTrewrite a shared-header caller declaration to a draft's byte-true signatureRewrites a shared-header caller declaration to a draft's byte-true signaturerepo shared-header pathSUPERSEDEDtools/conform_decls.py
103tools/fix_tu_ret_decls.pyP6ADAPTretype a unit's stale forward declarations to a draft's byte-true return, reverting on failureRetypes a binary's own stale forward declarations to a draft's byte-true return, revert-on-failrepo src layoutLIVE
104tools/format_finetune.pyP8ADAPTturn mined pairs into a chat-template instruction datasetTurns the mined pairs into a chat-template instruction datasetdataset paths, model chat templateLIVE
105tools/fragment_check.pyP8ADAPTrefuse a draft that swallows a neighbouring symbol inside one function's rangeRefuses drafts that subsume a neighbouring symbol, the enclosing-function traprepo asm layoutSTILL-NEEDEDrefuse a draft that swallows a neighbouring symbol inside one function's range
106tools/frogress_upload.pyP9ADAPTpublish progress metrics to a hosted progress servicePosts the progress JSON to a hosted progress service, dry-run by defaultservice URL, project/version namesSTILL-NEEDEDpublish progress metrics to a hosted decomp progress service
107tools/frontier_classify.pyP5ADAPTname the true blocker of every remaining open function, deterministicallyClassifies every remaining open function by its true blocker, deterministicallyrepo pathsSTILL-NEEDEDname the true blocker of every remaining open function, deterministically
108tools/frozen.pyP10PORTABLErefuse, from one place, the command line of a tool the project has frozenThe one refusal a FROZEN tool prints from its main(): the tool, the successor and why; imports never exit (libraries stay usable)nothingLIVE
109tools/gap_triage.pyP8ADAPTpre-filter agents' knowledge-gap reports against the existing technique documentPre-filters a wave's knowledge-gap reports against the existing documentationrepo doc pathsSTILL-NEEDEDpre-filter agents' knowledge-gap reports against the existing technique document
110tools/gate_lane.pyP8ADAPTdrive a wave's gate accepting either result shape and an explicit draft pathThe wave gate driver, accepting either result shape and an explicit draft pathrepo scratch pathsLIVE
111tools/gate_main.pyP8ADAPTgate the executable's drafts the only trustworthy way: a clean rebuild with bisectGates a batch of executable drafts the only trustworthy way: a clean rebuild with bisectrepo build/make targetsLIVE
112tools/gate_main_parallel.pyP8ADAPTdiscover an executable slate's bankable drafts concurrently, then bank once seriallyDiscovers the executable's bankable drafts concurrently, then banks them once, seriallyrepo build/make targetsSTILL-NEEDEDdiscover an executable slate's bankable drafts concurrently, then bank once serially
113tools/gate_stage.pyP8ADAPTrun the one shared recovery, byte-gate and log ladder every producer callsThe shared deterministic recovery, gate and log ladder every producer callsrepo src/config layoutLIVE
114tools/gate_triage.pyP8ADAPTroute a gate result set to the repair tool its own verdict namesRoutes a gate result set to the repair tool its own verdict namesrepo scratch pathsLIVE
115tools/gate_wave.pyP8ADAPTgate a whole wave by splitting table-bearing drafts off and running lanes concurrentlyGates a whole wave by splitting table-bearing drafts off and running both lanes concurrentlyrepo scratch/config layoutLIVE
116tools/gater_lane.pyP8ADAPTdrain finished drafts into the gate continuously while drafting still streamsContinuous gater draining a wave's finished drafts into the parallel gate, grouped by binaryrepo scratch pathsSTILL-NEEDEDdrain finished drafts into the gate continuously while drafting still streams
117tools/gccmap_cites.pyP7ADAPTtag every compiler-source citation with the source tree it refers toTags every compiler-source citation in the codegen-map docs with the tree it refers torepo doc/reference pathsLIVE
118tools/gen_engine_decls.pyP6ADAPTdeclare every shared function and data symbol once, canonically, in a generated headerDeclares every shared function and data symbol once, canonically, in a generated headerrepo shared-header pathSUPERSEDEDtools/conform_decls.py
119tools/gen_harvest_targets.pyP8ADAPTgenerate a callee-signature-aware target manifest with per-function fleet reachGenerates a callee-signature-aware target manifest with per-function fleet reachcanonical source binary, repo pathsFROZENtools/share_census.py
120tools/gen_lib_subsegs.pyP3ADAPTgenerate segment lines and a stub list for a multi-block vendor library regionGenerates segment lines and a stub list for a multi-block vendor library regionrepo config layout, PS1 SDK libsLIVE
121tools/ghidra_annotations_delta.pyP2ADAPTderive the hand-authored annotations by subtracting a fresh analysis baselineDerives the hand-authored annotation rows by subtracting a fresh rebuild baselinerepo pathsLIVE
122tools/ghidra_apply_symbols.shP10ADAPTmirror the curated symbol file into the analysis database with a real saveMirrors the curated symbol file into the analysis program headlessly, with a real saverepo symbol path, project nameSTILL-NEEDEDmirror the curated symbol file into the analysis database headlessly with a real save
123tools/ghidra_export_annotations.shP2ADAPTexport a program's annotations to byte-stable line-delimited records, read-onlyRead-only export of a program's annotations to byte-stable line-delimited JSONrepo pathsLIVE
124tools/ghidra_import.shP2ADAPTimport and auto-analyze a console executable headlessly with the platform loaderHeadless import and auto-analysis of a console executable with the platform loaderPS1 executable loader, project nameLIVE
125tools/ghidra_import_raw.shP2ADAPTimport a flat headerless blob at a given base with the right processor specHeadless import of a flat headerless blob at a given base with the right processor specPS1 processor spec, project nameLIVE
126tools/ghidra_mcp_start.shP2ADAPTstart the disassembler's automation server detached on a fixed local portStarts the headless disassembler MCP server detached on a fixed local portrepo paths, project name, portLIVE
127tools/ghidra_mcp_stop.shP2ADAPTclose the analysis program cleanly so its edits actually persistClean save-and-close via a sentinel file; the only persistence eventrepo paths, project nameLIVE
128tools/ghidra_mcp_verify.shP2ADAPTre-open read-only to confirm a symbol edit survived the saveRead-only re-open confirming a symbol edit actually persisted after save-shutdownrepo paths, project nameLIVE
129tools/ghidra_rebuild.shP2ADAPTrebuild an analysis program from committed text plus extracted bytes, proving equalityRebuilds one analysis program from committed text plus extracted bytes, and proves equalityrepo paths, project layoutLIVE
130tools/ghidra_roster.pyP2ADAPTgenerate and check a roster of committed analysis programs from the registryGenerates and checks a roster of committed analysis programs from the build registryrepo config pathsLIVE
131tools/ghidra_scripts/ApplySymbols.javaP10PORTABLEapply curated names and signatures inside the analysis tool and saveThe in-tool half of that mirror: apply curated names and signatures, save on exitnoneLIVE
132tools/ghidra_scripts/BfmMcpServer.javaP2ADAPTserve the analysis tool over an automation protocol, saving on a sentinel stopThe headless MCP server itself; holds an open transaction and saves on a sentinel stoprepo sentinel path, server portLIVE
133tools/ghidra_scripts/DecompileAt.javaP2ADAPTdecompile one function at a given address straight from the analysis databaseHeadless script decompiling the function at one address and printing its Cdefault addressSTILL-NEEDEDdecompile one function at a given address straight from the analysis database
134tools/ghidra_scripts/DecompileFunctions.javaP2PORTABLEbatch-decompile an address list into one source file per functionHeadless batch decompile of an address list into one C file per functionnoneLIVE
135tools/ghidra_scripts/DefineFunctions.javaP2ADAPTcreate functions at externally validated entry points listed in a fileDisassembles and creates functions at externally validated entry points listed in a filerepo scratch pathLIVE
136tools/ghidra_scripts/DumpFunctionSignatures.javaP2PORTABLEdump per-function fingerprints in three hash tiers for cross-binary correspondenceRead-only per-function fingerprint dump in three hash tiers for cross-binary correspondencenoneLIVE
137tools/ghidra_scripts/DumpProgramInfo.javaP2PORTABLEprint a program's language, compiler spec, image base and function countPrints program metadata: language, compiler spec, image base, function count, propertiesnoneLIVE
138tools/ghidra_scripts/ExportAnnotations.javaP2PORTABLEserialize types, signatures, data, comments and labels to stable recordsRead-only serialization of types, signatures, data, comments, bookmarks and labels to stable JSONLnoneLIVE
139tools/ghidra_scripts/ExportSymbols.javaP2PORTABLEexport the analysis database's hand-authored symbols to a committable text fileExports user-defined symbols to a committable text file so annotations are version-controllednoneSTILL-NEEDEDexport the analysis database's hand-authored symbols to a committable text file
140tools/ghidra_scripts/GetSymbolAt.javaP2PORTABLEprint the symbol name at one address for scripted persistence checksPrints the function or symbol name at one address for scripted persistence checksnoneLIVE
141tools/ghidra_scripts/ImportAnnotations.javaP2PORTABLEimport annotations back into a program, comparing before writingIdempotent compare-before-write import of the annotation JSONL back into a programnoneLIVE
142tools/ghidra_scripts/ImportPsyqGdt.javaP2ADAPTresolve a vendor SDK type archive into the program's type managerHeadlessly resolves a vendor SDK type archive into the program's type managerPS1 SDK type archive nameLIVE
143tools/ghost_census.pyP7PORTABLEfind pseudo-registers with references but no remaining occurrences, and their frame slotsFrame-residue oracle: finds pseudos with references but no remaining occurrences, and their slotscompiler pass-dump formatLIVE
144tools/gitignore_template_check.pyP9ADAPTassert a documented ignore-file template equals the shipped template byte for byteAsserts the ignore-file template in the docs equals the kit's template byte for byterepo doc and template pathsLIVE
145tools/glm_parallel.shP8ADAPTsplit a target list into slices and run concurrent drafting workersSplits a target list into slices and runs concurrent drafting workers against one endpointprovider endpoint, repo pathsSUPERSEDEDtools/ox_campaign.py
146tools/glm_reconcile.pyP8ADAPTaim a reasoning model at the declaration wall and capture its reasoningAims a reasoning model at the declaration wall and captures its reasoning for reuseprovider endpoint, repo pathsONE-OFFthe measured verdict that the declaration wall is a reconciliation problem, plus the captured reasoning distilled into the cookbook (Phase 23 T10.7 A/B)
147tools/grinder.pyP7ADAPTgrind the closest near-misses with the permuter and bank through the gateToken-free permuter daemon grinding the closest near-misses and banking through the gaterepo scratch pathsLIVE
148tools/harvest_verify.pyP8ADAPTsubstitute, build, keep only if byte-identical, else revertThe whole-binary byte gate: substitute, build, keep only if identical, else revertrepo src/build layoutLIVE
149tools/idiom_harvest.pyP8ADAPTpull newly learned idioms out of a wave's logs into candidate notesPulls the newly learned idioms out of a wave's shard logs into candidate notesrepo log pathsLIVE
150tools/idiom_hunt.pyP8ADAPTdiscover new compiler idioms from grouped near-misses with a reasoning modelUses a reasoning model on grouped near-misses to discover new compiler idiomsprovider endpoint, repo pathsLIVE
151tools/idiom_loop.pyP8ADAPTdrain the easy fuel, learn the next idiom, hand off, repeatNever-ending meta-loop: drain the easy fuel, learn the next idiom, hand offrepo scratch pathsSUPERSEDEDtools/idiom_serial.py
152tools/idiom_serial.pyP8ADAPTlearn idioms serially so each target inherits what the previous one taughtThe serial idiom-learning lane where each step inherits what the previous learnedrepo scratch pathsLIVE
153tools/idxtab_map.pyPROJECT-ONLYPROJECT-ONLYdecode an on-disc index table into a payload-to-binary naming mapDecodes one game's on-disc index table and its payload-to-binary naming convention — the load map itself is a Phase-2 taskproject-onlyLIVE
154tools/inject_capped_externs.pyP6ADAPTfree duplicate matches a share propagation skips as not self-containedFrees high-reach inline matches skipped as not self-contained by injecting their file-scope externsrepo shared-header layoutFROZENtools/share_body.py
155tools/integration_resolver.pyP8ADAPTre-judge already byte-correct drafts and bank them for zero model tokensZero-token lane re-judging drafts that are already byte-correct and banking themrepo scratch pathsLIVE
156tools/interleave_check.pyP6ADAPTassert a read-only-data carve's interleave order equals the segment sequenceAsserts the carve interleave order equals the segment sequence, position by positionrepo config layoutSTILL-NEEDEDassert a read-only-data carve's interleave order equals the segment sequence
157tools/journal_notes.pyP8ADAPTmine each function's own past-attempt history out of agent journalsMines per-function past-attempt notes out of the agent journals into card fuelagent transcript pathsLIVE
158tools/jr_isolate.pyP6ADAPTisolate one switch function into its own segment for an independent table carveIsolates one switch function into its own code segment for an independent table carverepo config/src layoutSUPERSEDEDtools/jr_isolate_all.py
159tools/jr_isolate_all.pyP6ADAPTisolate every switch function in a binary in one multi-cut resegmentOne-shot multi-cut resegment isolating every switch function in a binaryrepo config/src layoutLIVE
160tools/jtbl_carve.pyP6ADAPTset up the read-only-data carve for a binary's matched jump-table functionsSets up the read-only-data carve for a binary's matched jump-table functionsrepo config/build layoutLIVE
161tools/jtbl_family_bank.pyP6ADAPTbank a matched jump-table exemplar across its siblings, reverting on failureBanks a matched jump-table exemplar across its structural siblings, revert-on-failrepo config/src layoutLIVE
162tools/jtbl_lane.pyP8ADAPTcarve, draft and bank jump-table functions as their own laneCarve, draft and bank lane for jump-table functions, with the carve deliberately outside itrepo config/src layoutLIVE
163tools/jtbl_pads_fix.pyP6ADAPTrepair a stale padding spec by search plus byte proof, never by guessingRepairs a stale padding spec by search plus byte proof, never by guessingrepo config layoutLIVE
164tools/jtbl_rodata_pads.pyP6ADAPTreproduce the original inter-table padding in a multi-table carvePost-assembler filter reproducing the original inter-table padding in a multi-table carvecompiler/assembler behaviour, repo build pathsLIVE
165tools/kit_coverage.pyP9ADAPTassert that the distilled kit cites or dispositions every rule and every hindsight entry of the source project (no silent gap in the distillation)Derives the rule and accelerator populations from the digest and the ledger, matches them against the kit's provenance lines, refuses an uncovered entry unless config/kit_coverage_map.tsv dispositions itrepo digest/ledger/kit paths + the provenance citation formsLIVE
166tools/kit_lint.pyP9ADAPTkeep a portable starter kit free of one project's names, paths and numbersKeeps the day-one kit free of the source project's names, paths, addresses and rule numbers, honours its placeholder contract, and syntax-checks its scriptsthe kit path and the source project's leak patternLIVE
167tools/lane_inflight.pyP8ADAPTknow authoritatively which drafting agents are currently liveThe authoritative ledger of which drafting agents are currently liverepo scratch pathsLIVE
168tools/lanes/bounce_drafter_on_queue.shP8ADAPTrestart a drafting worker at a queue boundary so new arguments applyWaits for the in-flight wave to queue, then restarts the drafting processlane script pathsSUPERSEDEDtools/lanes/relaunch_drafter_shell.sh
169tools/lanes/campaign.shP8ADAPTrun two drafting pools against one serial gateDual-pool campaign lane: two drafting pools, one serial gateprovider config, repo pathsLIVE
170tools/lanes/distill.shP8ADAPTrun distillation beside drafting so learned idioms reach the next waveThe distillation lane, running beside drafting and never in front of itrepo scratch pathsSTILL-NEEDEDrun distillation beside drafting so learned idioms reach the next wave
171tools/lanes/drafter.shP8ADAPTkeep drafting running continuously, touching only scratch stateThe drafting lane that must never stop; touches only scratch staterepo scratch paths, provider configLIVE
172tools/lanes/elastic.shP8ADAPTspend spare provider capacity on other work when the gate is the constraintSpends spare provider capacity on extra work when the main lane cannotprovider config, repo pathsSTILL-NEEDEDspend spare provider capacity on other work when the gate is the constraint
173tools/lanes/forever.shP8ADAPTkeep an unattended campaign loop alive across run caps and crashesKeeps the wave campaign running indefinitely across caps and crashesrepo scratch pathsSTILL-NEEDEDkeep an unattended campaign loop alive across run caps and crashes
174tools/lanes/gater.shP8ADAPTrun a restartable gating lane that is safe to kill at any timeThe restartable gating lane, safe to kill and relaunch at any timejob count, repo pathsLIVE
175tools/lanes/grinder_lane.shP8ADAPTrun the token-free permuter grinder beside a saturated gateRuns the model-free permuter grinder beside a saturated gaterrepo scratch pathsSTILL-NEEDEDrun the token-free permuter grinder beside a saturated gate
176tools/lanes/launch_ox.shP8ADAPTlaunch a sharded unattended campaign run with a tag and shard countLauncher for a sharded campaign run with a tag and shard countprovider key file, repo pathsONE-OFFthe sharded overnight campaign run it launched (its key file, endpoint and model are that campaign's)
177tools/lanes/main.shP8ADAPTrun the executable's own lane loop on its clean-rebuild cadenceThe executable's own lane loop, on its clean-rebuild cadencerepo make targetsLIVE
178tools/lanes/maintenance.shP8ADAPTrun the free recovery and re-judgement passes whenever the gate is idleThe maintenance lane running the free recovery and re-judgement passesrepo scratch pathsSTILL-NEEDEDrun the free recovery and re-judgement passes whenever the gate is idle
179tools/lanes/relaunch_drafter_shell.shP8ADAPTrestart the drafting lane's shell at a queue boundary so new arguments applyWaits for a wave to queue, then restarts the drafting lane's shell so new arguments applylane script pathsSTILL-NEEDEDrestart the drafting lane's shell at a queue boundary so new arguments apply
180tools/lanes/resolver_lane.shP8ADAPTre-judge, verify twice, stage and gate correct drafts for zero tokensThe zero-token resolver lane: re-judge, verify twice, stage, gate, commitrepo scratch pathsSTILL-NEEDEDre-judge, double-verify, stage and gate already-correct drafts for zero model tokens
181tools/lanes/restart_gater_when_idle.shP8ADAPTrestart the gating lane's shell between gates so a jobs change landsRestarts the gating lane's shell once the current gate finisheslane script pathsSTILL-NEEDEDrestart the gating lane's shell between gates so a jobs change lands
182tools/lanes/restart_main_lane_when_idle.shP8ADAPTrestart the executable lane's shell at its one safe boundaryRestarts the executable lane's shell at its one safe boundarylane script pathsSTILL-NEEDEDrestart the executable lane's shell at its one safe boundary without losing work
183tools/lanes/sibling_lane.shP8ADAPTdrive structural sibling sweeps with synthesized declarations, free of model tokensThe free sibling lane driving structural sweeps with synthesized declarationsrepo pathsSTILL-NEEDEDdrive structural sibling sweeps with synthesized declarations, free of model tokens
184tools/lanes/stallguard.shP8ADAPTdetect and repair lane stalls automatically on measured conditionsDetects and repairs lane stalls on measured conditions every minute, logging each actionlane names, repo pathsSTILL-NEEDEDdetect and repair lane stalls automatically on measured conditions
185tools/lanes/toolwork.shP8ADAPTrun tooling-design briefs against an external model with the build configRuns tooling-design briefs against an external model with build config as contextprovider config, repo pathsONE-OFFthe tooling-design briefs it ran against an external model (its key, endpoint and model are that era's)
186tools/lanes/wait_distill.shP8ADAPTblock until a background lane raises its next batch, without pollingBlocks until the distillation lane raises the next batch, then exitsrepo scratch pathsSTILL-NEEDEDblock until a background lane raises its next batch, without polling
187tools/launch_check.pyP8ADAPTrefuse to launch an agent at a target that is already bankedRefuses to launch an agent at a target that is already bankedrepo src layoutLIVE
188tools/ld_interleave.pyP3ADAPTreorder a generated linker script to reproduce the original section interleavingReorders a generated linker script to reproduce the original section interleavingrepo build pathsLIVE
189tools/len_tells.pyP7ADAPTclassify a length-drift near-miss against its own target and build its routing cardClassifies a length-drift near-miss against its own target and builds the routing cardrepo scratch pathsLIVE
190tools/lenmiss_route.pyP7ADAPTroute a length-drift near-miss pile through the documented lenses, re-verifiedRoutes the length-drift near-miss pile through the documented lenses, re-verified against the treerepo scratch pathsONE-OFFthe routed outcome of one length-drift near-miss pile (it consumes that audit's classified ledger)
191tools/lever_progress.pyP10ADAPTkeep the lever count as a series a chart and a story can be drawn fromThe Phase-36 lever series: a milestone row appended per census snapshot (its totals by class with the tree's HEAD, since a census is a moment that cannot be recovered later) plus the campaign table derived from the de-lever ledger on every render — per batch the rungs used, the bodies first judged, the sites removed and rewritten, and, scored as a transition against what that body's previous row left, the sites a later rung closed and the bodies it made lever-free; renders both into docs/levers.md's generated block and --check refuses a series that is not this tree'sthe census json, the delever ledgerLIVE
192tools/lever_census.pyP10ADAPTcensus every compiler-forcing construct in the C and gate the levers-off phaseThe Phase-36 census of lever sites (register pins, asm statements by kind, volatile levers, bare register, asm-label aliases, builtins, attributes; the whole-body hand-asm routines and the GTE ops set apart) derived from the shared-body scanner with a per-token coverage assertion against the raw text, four known-true controls, the !FAKE marker split, --check (0 unmarked pins/asm, 0 orphan markers) and --strict (0 pins, 0 asm) gates, --sites for the delever ledger, a fixture self-testrepo paths, the shared-body scannerLIVE
193tools/lift_types.pyP6ADAPTlift a named list of types fleet-wide into the shared type header — the canonical type layer from the first bank (Phase 6, the multiplier); again at readability (Phase 10)Lifts a named list of types fleet-wide into the shared type headerrepo shared-header pathLIVE
194tools/lint_symbol_refs.pyP10ADAPTflag address-named references whose address now has a curated nameFlags address-named references in committed sources whose address now has a curated namerepo symbol/src pathsLIVE
195tools/lora_grind.pyP8ADAPTrotate binaries drafting small stubs with a served model, gating and propagatingMass-run driver rotating binaries, drafting small stubs with a served model, gating, propagatingrepo scratch paths, model endpointLIVE
196tools/macro_draft.pyP6ADAPTmaterialize a shared macro body back into a compilable standalone draftMaterializes a shared macro body back into a compilable standalone draftrepo shared-header layoutONE-OFFthe per-function headers under src/shared/ (Phase 35 T4; the macro form is gone)
197tools/macro_to_header.pyP10PROJECT-ONLYconvert a shared-body macro header into per-function plain-C headers included at each siteThe Phase-35 converter: every DEFINE_ macro body becomes a plain-C header under src/shared/<space>/ included at its site, the legacy name-parameterized headers converted, the registry text-edited, the macro header deleted; --plan / --apply / --finalize / --verifythe macro form is this project's; a kit-born project shares headers from its first bankLIVE
198tools/main_diff_locate.pyP7ADAPTturn a red whole-binary result into a named list of divergent symbolsTurns a red whole-binary result into a named list of divergent symbolsrepo build/config layoutLIVE
199tools/main_lane.pyP8ADAPTrun the executable's own draft, gate and commit cadence beside other lanesThe executable's own draft, gate and commit cadence beside the other lanesrepo build/make targetsLIVE
200tools/main_queue_rebuild.pyP8ADAPTrebuild the executable lane's queue from the tree, never from a stale listRebuilds the executable lane's queue from the tree, never from a stale listrepo src layoutLIVE
201tools/main_seed_ends.pyP2ADAPTemit function start and length seeds for the executable's own code objectsEmits function start/length seeds for the executable's game-code objects, derived from the buildrepo build pathsLIVE
202tools/make_apicard_used.pyPROJECT-ONLYPROJECT-ONLYlist the interface library's objects and address window the executable actually linksHard-codes one executable's interface-library address window and object rosterproject-onlyLIVE
203tools/make_libgs.shPROJECT-ONLYPROJECT-ONLYassemble a vendor graphics library's object list and address blocks for linkingHard-codes one executable's exact vendor object list and address blocksproject-onlyLIVE
204tools/make_snd_used.pyPROJECT-ONLYPROJECT-ONLYlist a sound library's address window and per-address exclusionsHard-codes one executable's sound-library address window and per-address exclusionsproject-onlyLIVE
205tools/masked_diff.pyP4PORTABLEcompare instructions with relocations masked, shared by matcher and scorerShared relocation-masked instruction comparison used by the matcher and the permuter scorerMIPS relocation encodingsLIVE
206tools/masked_scorer.pyP7ADAPTscore permuter candidates on true masked code closeness, not mnemonic diffDrop-in permuter scorer scoring true relocation-masked code closeness instead of mnemonic diffpermuter internals, repo module pathsLIVE
207tools/match_one.pyP4ADAPTcompile one function standalone and compare its masked bytes to the targetCompiles one function standalone with the pinned toolchain, masks relocations, compares to target bytescompiler triple, repo build flagsLIVE
208tools/match_protos.pyP6ADAPTjoin two related builds' signature dumps into a function correspondenceJoins per-function signature dumps of two related builds into a function correspondencerepo signature filesLIVE
209tools/mine_hindsight.pyP9ADAPTgather every recorded hindsight into one document with file and line anchorsGathers every recorded hindsight with file and line anchors into one documentrepo doc pathsSTILL-NEEDEDkept: every project writes its retrospective from anchored records — the PhaseEnd narrative axis feeds exactly this tool
210tools/mk_write.pyP3ADAPTwrite the generated binary-registry makefile safely, validating before replacingThe only safe writer of the generated binary-registry makefile; validates before replacingrepo config pathLIVE
211tools/neighbor_ref.pyP8ADAPTrank already-matched functions worth reading as worked examples for an open stubFor an open stub, ranks already-matched functions worth reading as worked examplesrepo signature filesLIVE
212tools/new_binary.shP3ADAPTonboard any flat blob in one command: config, registry entry, first buildOne-command onboarding of any flat blob: config from template, registry entry, first buildrepo config/template paths, the source game's payload classesLIVE
213tools/new_overlay.shPROJECT-ONLYPROJECT-ONLYonboard one payload by its container and file-index namingTakes one game's container and file-index naming as its command-line contractproject-onlyLIVE
214tools/normalize_self_decls.pyP6ADAPTnormalize a function's own declaration when a templated definition lands in a new unitNormalizes a function's own declaration when a templated definition lands in a new unitrepo src layoutFROZENtools/share_body.py
215tools/o0_boundary.pyP6ADAPTfind and bank unoptimized functions stranded at an optimized region's boundaryFinds and banks unoptimized functions stranded at the end of an unoptimized regionrepo config layoutSTILL-NEEDEDfind and bank unoptimized functions stranded at an optimized region's boundary
216tools/o0_detect.pyP6ADAPTanswer from a prologue whether a function was built unoptimizedThe single place that answers whether a function was built unoptimized, from its prologuecompiler prologue shapeLIVE
217tools/o0_subsplit.pyP6ADAPTroute an unoptimized address range sitting inside an otherwise optimized objectRoutes an unoptimized address range that sits inside an otherwise optimized objectrepo config layoutFROZENthe Makefile -O0 globs (tools/rollout_o0.py)
218tools/objdiff_report.pyP9PORTABLEconvert progress metrics into an external progress-report schemaConverts the progress JSON into the external progress-report schemaexternal report schemaLIVE
219tools/oracle/reg_renumber_swap.shP7ADAPTdecide whether a residual reorder is scheduling or a register-grant consequenceMechanized oracle separating a register-allocation swap from a scheduling reordercompiler triple, repo scratch pathsSTILL-NEEDEDdecide whether a residual reorder is a scheduling choice or a register-grant consequence
220tools/oracle_reorder.pyP5ADAPTdecide whether a near-miss residual is a source defect or an assembler artifactDecides whether a near-miss residual is a source defect or an assembler artifactpinned assembler flagsLIVE
221tools/orchestrator.pyP8ADAPTpick the pool, emit the batch and record the cycle, deterministicallyThe deterministic half of the unattended loop: pick the pool, emit the batch, record the cyclerepo scratch pathsLIVE
222tools/overlay_src_split.pyP6ADAPTpartition a source file at object boundaries, aware of comment stateComment-state-aware partition of a source file, the oracle for the split chainrepo src layoutLIVE
223tools/ox_campaign.pyP8ADAPTloop draw, draft, pre-filter, gate, commit and ledger unattendedThe unattended wave loop: draw, draft, pre-filter, gate, commit, ledger, repeatrepo scratch paths, provider configLIVE
224tools/p16_improve.pyP5ADAPTrevert known answers to stubs and categorize every harness failure it exposesKnown-answer loop: reverts matched functions to stubs and measures the real pipelinerepo src/build pathsFROZENtools/share_body.py
225tools/p16_known_answer.pyP5ADAPTvalidate a scaffold pipeline against known answers across difficulty bandsGraduated known-answer validation of the scaffold pipeline across difficulty bandsrepo pathsSUPERSEDEDtools/p16_improve.py
226tools/p16_permute.pyP7ADAPTdrive the permuter per function, building base, target and settingsPer-function permuter driver building base, target and settings, then reporting closenessrepo scratch paths, permuter layoutLIVE
227tools/pads_audit.pyP6ADAPTderive an object's inter-table padding spec from the bytes instead of searchingDerives each object's padding spec from the bytes instead of searching for itrepo build/config layoutSTILL-NEEDEDderive an object's inter-table padding spec from the bytes instead of searching
228tools/parallel_gate.pyP8ADAPTgate many binaries concurrently in isolated worktrees and merge only passersGates many binaries concurrently in isolated worktrees and merges only the passersrepo worktree/build layoutLIVE
229tools/payload_base_evidence.pyP2ADAPTrank candidate load addresses for a payload that was never onboardedRanks candidate load addresses for an unonboarded payload from pointers, self-calls and upper-half reachthe source game's payload mapSTILL-NEEDEDrank candidate load addresses for a payload that was never onboarded
230tools/permuter/compile.shP7ADAPTcompile a permuter candidate exactly as the build rule doesThe permuter's compile command, mirroring the build rule exactly so objects are build-faithfulcompiler triple, repo build flagsLIVE
231tools/permuter/compile_o0.shP7ADAPTcompile a permuter candidate unoptimized, exactly as the build rule doesUnoptimized variant of the same permuter compile commandcompiler triple, repo build flagsLIVE
232tools/permuter/run_masked.pyP7ADAPTrun the permuter with a masked scorer rebound, without patching itRuns the permuter with the masked scorer rebound before its entry point, without patching itpermuter internals, repo module pathsLIVE
233tools/permuter_ils.pyP7ADAPTwarm-restart the permuter from its best waypoint each cycleIterated-local-search wrapper warm-restarting the permuter from the best waypoint each cyclepermuter layout, repo scratch pathsLIVE
234tools/permuter_sweep.pyP7ADAPThand a batch's near-misses to the permuter, only the ones worth CPUHands a batch's near-misses to the permuter, but only the ones worth the CPUrepo scratch pathsLIVE
235tools/permuter_weights.pyP7PORTABLEsteer permuter mutation toward the lever family the residual class impliesDirects permuter mutation toward the lever family the residual class impliespermuter settings formatLIVE
236tools/plumbing_groups.pyP5ADAPTgroup recorded declaration-conflict failures into sweepable work groupsGroups recorded declaration-conflict failures into sweepable work groups from the ledgersrepo ledger pathsSUPERSEDEDtools/gate_triage.py
237tools/prefetch_fleet.pyP2ADAPTbatch-decompile one representative per distinct open class into a cacheBatch headless decompilation of one representative per distinct open class into a cacherepo paths, binary registryLIVE
238tools/pregate_check.pyP8ADAPTvalidate a batch's declaration compatibility in seconds without building itValidates a batch without building it, in seconds instead of minutesrepo src layoutLIVE
239tools/progress.pyP9ADAPTcompute and publish progress metrics as report, machine data and per-binary breakdownsComputes and publishes the progress metrics as report, JSON and per-binary breakdownsrepo src/config layoutLIVE
240tools/psyq_bss_probe.pyP3ADAPTask whether an object's scattered zero-init section can be placed byte-exactlyAsks whether an object's scattered zero-init section can be split and placed byte-exactlyPS1 SDK object shapeLIVE
241tools/psyq_bss_split.pyP3PORTABLEsplit one zero-init section of an object into per-base no-bits piecesRewrites an ELF object, splitting one zero-init section into per-base no-bits piecesELF32 REL layoutLIVE
242tools/psyq_build_libs.shP3ADAPTconvert vendor library members to the linker's format and archive themConverts vendor library members to ELF and archives them per libraryPS1 SDK, repo scratch pathsLIVE
243tools/psyq_identify.pyP3ADAPTlocate where vendor library objects are linked in a target imageLocates where vendor library objects are linked in a target image via relocation-masked patternsPS1 SDK objectsLIVE
244tools/psyq_integrate.pyP3ADAPTwire real library objects into the split build, replacing stub subsegmentsWires real library objects into the split build, replacing stub subsegmentsrepo config/build pathsLIVE
245tools/psyq_lib_split.pyP3ADAPTsplit a vendor library archive into its member objectsSplits a vendor linker-format library archive into its member objectsPS1 SDK archive formatLIVE
246tools/psyq_libs_from_disc.pyP3ADAPTextract vendor SDK library files from the vendor's runtime-library discExtracts vendor SDK library files from the vendor's runtime-library disc imagevendor disc layout, PS1 SDKLIVE
247tools/psyq_link.pyP3ADAPTlink one vendor object at a fixed address so its code is byte-identicalLinks one vendor object at a fixed address so its code is byte-identical to the targetPS1 SDK, repo build pathsLIVE
248tools/psyq_link_lib.pyP3ADAPTlink every used object of a vendor library and byte-verify eachDriver linking every used object of a library and byte-verifying eachPS1 SDK, repo pathsSTILL-NEEDEDlink every used object of a vendor library and byte-verify each
249tools/psyq_link_region.pyP3ADAPTlink a whole library's objects in place of stubs, placing data no-loadLinks a whole library's objects in place of stubs, placing non-code sections as no-loadPS1 SDK, repo pathsLIVE
250tools/public_rewrite/absent_scan.pyP9ADAPTassert nothing purged remains in any object, message or refAsserts nothing purged remains in any object, message or refrepo scratch pathsSTILL-NEEDEDkept: the history-rewrite package is one unit — the runbook's "if bytes got in anyway" path needs it whole
251tools/public_rewrite/build_commit_map.pyP9ADAPTemit the public ordinal-to-hash map and the private old-to-new mapEmits the public ordinal-to-new-hash map and the private old-to-new maprepo doc/scratch pathsLIVE
252tools/public_rewrite/common.pyP9ADAPTshare the purge rules and derived hash sets across the rewrite packageShared purge rules, derived hash sets and helpers for the history-rewrite packagerepo scratch pathsLIVE
253tools/public_rewrite/gate_scan.pyP9ADAPTprove no derived blob is reachable from the refs about to be pushedHistory gate: no derived blob reachable from the given refs, four derived checksrepo declaration filesLIVE
254tools/public_rewrite/hash_dict.pyP9ADAPTmap every old commit hash to an inert token, privatelyBuilds the private dictionary mapping every old commit hash to an inert tokenrepo scratch pathsLIVE
255tools/public_rewrite/probe_github.shP9ADAPTprobe whether old commit hashes still resolve on the hosting serviceProbes whether old commit hashes still resolve on the hosting service after a purgehosting service API, repo nameLIVE
256tools/public_rewrite/resolve_tokens.pyP9ADAPTturn ordinal tokens back into shortest-unique hashes at the rewritten tipTurns ordinal tokens back into shortest-unique hashes at the rewritten tiprepo tracked text filesLIVE
257tools/public_rewrite/run_filter.pyP9ADAPTrun a history rewrite inside a bare clone, refusing to run elsewhereComposes and runs the history rewrite inside a bare clone, refusing to run elsewhererewrite tool version, repo scratch pathsSTILL-NEEDEDkept: the history-rewrite package is one unit — the runbook's "if bytes got in anyway" path needs it whole
258tools/public_rewrite/scrub.pyP9ADAPTscrub one text with the rewrite's rules, with a sample and self-testThe single scrub function of the history rewrite, plus its sample and self-testpurge rules, repo scratch pathsLIVE
259tools/public_rewrite/verify_rewrite.pyP9ADAPTprove pairwise that a rewrite changed only what it was told toPairwise proof that the rewrite changed only what it was told to changerepo scratch pathsLIVE
260tools/r22_verify.shP8ADAPTverify the whole fleet exclusively on a clean tree and clear deferred debtExclusive clean-tree fleet verification that also clears deferred-check debtrepo make targetsLIVE
261tools/ram_probe.pyP2ADAPTcapture and diff live console memory across scenarios to type struct fieldsCaptures, diffs and reads emulator main RAM over its web API for field typingemulator host/port, 2 MB console RAM mapSTILL-NEEDEDcapture and diff live console RAM across scenarios to type struct fields
262tools/reconcile_slate.pyP6ADAPTdrive a whole batch to declaration-compatible before any rebuild is spentDrives a whole batch to declaration-compatible before any rebuild is spentrepo src layoutSUPERSEDEDtools/pregate_check.py
263tools/reconcile_tu.pyP6ADAPTconform a draft's data declarations to what its destination unit can seeConforms a draft's data declarations to what the destination translation unit can actually seerepo src layoutLIVE
264tools/recover_drafts.pyP8ADAPTrecover deleted agent draft files from a run's transcriptsRecovers agent-written draft files from a run's transcripts after they were deletedagent transcript pathsSUPERSEDEDtools/agent_drafts_restore.py
265tools/recover_giant.pyP8ADAPTrecover a large draft rejected only on declaration plumbing, with canonical externsCanonical-extern recovery for a large draft rejected only on declaration plumbingrepo shared-header layoutFROZENtools/share_body.py
266tools/recover_integration.pyP8ADAPTdrive batch integration recovery over a directory of correct-but-rejected draftsBatch integration recovery driver over a wave directory of correct-but-rejected draftsrepo scratch/src layoutLIVE
267tools/recover_rejects.pyP8ADAPTturn pre-gate rejects back into bankable drafts for zero model tokensTurns pre-gate rejects back into bankable drafts for zero model tokensrepo scratch pathsLIVE
268tools/recover_route.pyP8ADAPTname the one recovery tool that actually applies to a drop verdictGiven a drop verdict, names the one recovery tool that actually appliesrepo scratch pathsLIVE
269tools/reloc_identity.pyP5ADAPTcheck the symbol identity the masked comparison deliberately hidesDisagreeing oracle checking the symbol identity the masked comparison deliberately hidesrepo build pathsLIVE
270tools/reloc_verify.pyP5ADAPTresolve every relocation in a draft and compare the resolved words to targetResolves every relocation in a draft and compares the resolved words to the targetrepo build pathsSTILL-NEEDEDcatch a wrong-symbol or wrong-address draft the masked comparison scores as matching
271tools/reorder_passthrough.pyP3ADAPTrestore the assembler-reorder build path for objects originally assembled that wayRestores the assembler-reorder build path for the objects originally assembled that waypinned assembler flags, repo build pathsLIVE
272tools/residual_class.pyP7PORTABLEmap a residual to a named codegen class by decoding its wordsDeterministic decoder-based classifier mapping a residual to a named codegen classMIPS encodingsLIVE
273tools/residual_rules.pyP7ADAPTturn a measured residual into the specific documented lever that addresses itTurns a measured residual into the specific documented lever that addresses itrepo doc pathsSUPERSEDEDtools/residual_rules_b.py
274tools/residual_rules_b.pyP7ADAPTclassify a residual's shape to its documented lever, as an independent implementationIndependent second implementation of residual-shape to rule classification, for head-to-headrepo doc pathsLIVE
275tools/restage_matching.pyP8ADAPTre-stage only drafts that match in their real unit so one failure is isolatedRe-stages only the drafts that compile and match in their real unit, so one failure is isolatedrepo src layoutSTILL-NEEDEDre-stage only drafts that match in their real unit so one failure is isolated
276tools/restore_dropped_decls.pyP6ADAPTrestore file-scope declarations a share propagation deleted with the bodyPuts back file-scope declarations a share propagation deleted with the bodyrepo src layoutFROZENtools/share_body.py
277tools/rollout_o0.pyP6ADAPTroll an unoptimized definition atomically across every binary carrying itGeneralized two-file atomic rollout of an unoptimized definition across every binary carrying itrepo src/config layoutLIVE
278tools/rtu_match.pyP4ADAPTsplice a candidate into a copy of its real translation unit and compare bytesSplices a candidate into a copy of the real translation unit and checks the same bytesrepo src layout, compiler tripleLIVE
279tools/rtu_second_chance.pyP4ADAPTre-judge standalone compile failures against their real translation unit before droppingRe-judges standalone compile-failures against their real translation unit before dropping themrepo scratch pathsLIVE
280tools/rtu_shadow.pyP5ADAPTmeasure gate inversion by running the real-unit check in shadow beside the gateRuns the real-translation-unit check in shadow beside the gate to measure gate inversionrepo scratch pathsONE-OFFthe measured gate-inversion decision (whether the cheap real-unit check should become the gate's stage 0)
281tools/scan_leftovers.pyP8ADAPTre-verify every draft already on disk and bank the free winsRe-verifies every draft already on disk and banks the free winsrepo scratch pathsSUPERSEDEDtools/integration_resolver.py
282tools/scope_data_externs.pyP6ADAPTplace a templated body's data externs at a scope the destination acceptsPlaces a templated body's data externs at the scope the destination unit can acceptrepo src layoutLIVE
283tools/scope_demote_drafts.pyP6ADAPTdemote declaration scope as one rung of the recovery ladderThe scope-demote step, wired as a rung of the recovery ladderrepo src layoutLIVE
284tools/scope_tu_externs.pyP6ADAPTmove a unit's file-scope data externs down into their consumersMoves a unit's own file-scope data externs down into their consumers to legalize a block-scope typerepo src layoutLIVE
285tools/seed_ref.pyP8ADAPTfind an already-banked body that matches an open stub, near and contained tiersFor an open stub, finds the already-banked body that matches it, including near and contained tiersrepo signature filesLIVE
286tools/serve_local.pyP8ADAPTserve a fine-tuned model locally behind a chat-completions endpointServes the fine-tuned model locally behind a chat-completions endpointtraining venv, GPU assumptionsLIVE
287tools/share_body.pyP10ADAPTshare one byte-identical function class across its binaries through an include-at-site header, gated per binaryThe Phase-35 successor of dedup_propagate + dedup_extend for the include-at-site form: exemplar by majority text, the header written once, every private copy replaced by the include at its position, per-binary byte gate with object comparison, bisect on red, the registry appended or extended by text, the exception ledger on refusal; --plan / --apply --bucket extend|newrepo paths, the registry and signature schemasLIVE
288tools/share_body_cycle.shP10ADAPTrun the share-body batch cycle unattended: batch, verify by exit code, log, commit, periodic clean fleet checkThe Phase-35 T5 driver for bucket new: per batch share_body --apply --bucket new --batches 1 --label new<k>, the gated N/N line read, the phase log entry appended, the bank committed the moment it is green, the clean fleet run every N batches — stops on the first redrepo paths, the phase-log format, the fleet count from config/check.*.shaLIVE
289tools/delever_cycle.shP10ADAPTrun the de-lever batch cycle unattended: batch, verify by exit code, clean fleet gate, census, log, commitThe Phase-36 T3/T4 driver: per batch a clean-tree check, the oracle recalibrated when stale, delever --apply read by exit code and its final X/X line, the clean fleet run as the outer gate (218/218), the census rerun, the phase-log entry and the checkpoint headline, one commit per batch; stops on the first red with the files in place for --restorethe batch size, the aliases, the fleet countLIVE
290tools/share_census.pyP10ADAPTmeasure duplicate function bodies across the fleet and assert one source per unique functionThe census of byte-identical function classes across every binary with their source forms and verdicts, plus the S1 invariant check with its exception ledger and a fixture self-testrepo paths, the registry and signature schemasLIVE
291tools/shared_lock.pyP8ADAPThold one reader/writer lock over the shared source state for concurrent lanesOne reader/writer lock over the shared source state for concurrent lanesrepo lock pathsLIVE
292tools/sig_image.pyP6PORTABLEsign every function of a flat image at a known base, without a disassemblerDisassembler-free per-function signer for a flat image at a known base, field-identical to the dumperMIPS encodings, repo scratch pathsLIVE
293tools/sig_unify.pyP6ADAPTunify a draft's callee externs and its own signature to the banked-canonical setUnifies a draft's callee externs and its own definition signature to the banked-canonical setrepo shared-header pathsLIVE
294tools/split_indicator.pyP2ADAPTname the code segments that must be split before their switch functions carveNames code segments that must be split before their switch functions can be sectionedrepo config layoutLIVE
295tools/split_src_region.pyP3ADAPTsplit a source file at object boundaries, preserving matched code and stubsSplits a source file at object boundaries, preserving matched code and stub blocksrepo src/config layoutLIVE
296tools/strand_census.pyP5ADAPTcheck whether an open target already has a draft on diskLists every draft already on disk whose function is still open, with its blockerrepo scratch pathsSTILL-NEEDEDcheck whether an open target already has a draft on disk before drafting it
297tools/stub_invariant_audit.pyP5ADAPTnegative-control the comparer: every stub's built object must equal its targetNegative control: for every stub the built object must equal the target assembly exactlyrepo build pathsSTILL-NEEDEDnegative-control the masked comparer: every stub's built object must equal its target
298tools/sweep_citations.pyP7ADAPTlocalize every compiler-source citation in a document against the pinned sourcesDeterministically localizes every compiler-source citation in a document against the pinned sourcesrepo reference tree pathsSUPERSEDEDtools/gccmap_cites.py
299tools/sweep_parallel.pyP8ADAPTgate pre-staged draft directories across distinct binaries in parallelGates pre-staged draft directories across distinct binaries in parallelrepo scratch pathsLIVE
300tools/symcheck.pyP5ADAPTdiff the symbol set a draft references against the target's, before gatingPre-gate guard diffing the symbol set a draft references against the target'srepo build pathsSUPERSEDEDtools/reloc_verify.py
301tools/sync_tu_decls.pyP6ADAPTbank a refused draft by copying the destination unit's own declarations into it — the declaration-conflict class a canonical type layer prevents (Phase 6)Banks a refused draft by copying the destination unit's own declarations into itrepo src layoutLIVE
302tools/t5_bank.shP8ADAPTjudge each arm of a wave and bank the union, refusing if unsafePost-draft half of an agent wave: refuse if unsafe, judge each arm, bank the unionrepo paths, lane conventionsSUPERSEDEDtools/gate_wave.py
303tools/t5_cards.pyP8ADAPTbuild the card fuel for one wave's own targets, keyed per binaryBuilds the card fuel for one wave's own targets, keyed correctly per binaryrepo scratch pathsLIVE
304tools/t5_distill_args.pyP8ADAPTbuild the post-wave distillation slate from a wave's directoriesBuilds the post-wave distillation slate from a wave's directoriesrepo scratch pathsSUPERSEDEDtools/distill_scan.py
305tools/t5_targets.pyP8ADAPTdraw one routed slate from the classified frontierDraws one routed slate from the frontier classesrepo scratch pathsSUPERSEDEDtools/draw_waves.py
306tools/t7_bank.pyP8ADAPTbank a batch, reconciling declarations at bank time before the whole-binary gateBatch banking driver applying reconcile-at-bank-time plus the whole-binary gaterepo src/config layoutSUPERSEDEDtools/gate_stage.py
307tools/test_jtbl_parse_config.pyP5ADAPTregression-test the table-carve configuration parser with a negative controlRegression plus negative control for the table-carve configuration parserrepo config fixturesLIVE
308tools/test_o0_detect.pyP5ADAPTnegative-control the detector that decides a function's optimization levelNegative control for the matcher's optimization-level auto-detectionrepo pathsSTILL-NEEDEDnegative-control the detector that decides a function's optimization level
309tools/test_reconcile_ledger.pyP5ADAPTexercise a guarded repair path the full negative control never reachesTargeted proof of the propagation ledger guard the full control never exercisedrepo pathsONE-OFFthe S45p7 reconcile-ledger proof, retired with its subject dedup_propagate
310tools/test_residual_class.pyP5PORTABLEunit-test a residual classifier on hand-encoded words, not its own decoderSynthetic hand-encoded unit tests for the deterministic residual classifierMIPS encodingsSTILL-NEEDEDunit-test a residual classifier on hand-encoded words, not on its own decoder
311tools/timeline.pyP9ADAPTbuild a progress timeline from the repository's own committed digestsBuilds a progress timeline from the repository's own committed digests, with a self-checkrepo doc pathsLIVE
312tools/tool_census.pyP5ADAPTderive the tool census, the need-keyed index, the kit manifest and the verbatim corpora from one dictionaryDerives the tool census, the need-keyed tool index, the kit manifest and the verbatim corpora from one dictionary, coverage-asserted both waysrepo layout (tools/, docs/SETUP.md rows, the kit paths)LIVE
313tools/train_lora.pyP8ADAPTfine-tune a code model into a matching specialist on a mined corpusFine-tunes a code model into a matching specialist and saves the adapterdataset paths, training venvSTILL-NEEDEDfine-tune a code model into a matching specialist on the mined corpus
314tools/transcript_dump.pyP8ADAPTcondense a session transcript into readable text for a successor sessionCondenses a session transcript into readable text for a successor sessionagent transcript pathsLIVE
315tools/treelock.shP8ADAPThold one mutex over tree-writing campaigns, with status and stale detectionThe mutex wrapper for tree-writing campaigns, with status and stale detectionrepo lock pathsSUPERSEDEDtools/shared_lock.py
316tools/triage_ladder.pyP8ADAPTdecide before and after drafting whether a target needs an agent at allZero-token pass deciding whether a target needs an agent at all, before and after draftingrepo scratch pathsLIVE
317tools/twin_rescan.pyP6ADAPTreport which open stubs became mechanical remaps the moment one was bankedAfter a bank, reports which open stubs just became mechanical remaps instead of draftsrepo signature filesSTILL-NEEDEDreport which open stubs became mechanical remaps the moment one was banked
318tools/twin_sweep.pyP6ADAPTbank every open stub that already has a banked structural twinBanks every open stub that has an already-banked structural twin, for near-zero tokensrepo signature filesLIVE
319tools/uniquify_type.pyP10ADAPTgive each conflicting camp of a same-named type its own nameGives each conflicting camp of a same-named type its own name so every camp becomes liftablerepo src layoutSTILL-NEEDEDgive each conflicting camp of a same-named type its own name so both become liftable
320tools/validate_targets.pyP8ADAPTgate every target list for validity before agents are spawnedThe validity gate every target list must pass before agents are spawnedrepo scratch pathsLIVE
321tools/verbatim_check.pyP10ADAPTguard that every inline-assembly body still reproduces its target bytesRegression guard that every inline-assembly body still reproduces its target bytesrepo src layoutLIVE
322tools/verbatim_target_s.pyP10ADAPTregenerate a splitter-format target disassembly for a function no longer stubbedRegenerates a splitter-format target disassembly for a function that is no longer a stub; --gas emits the assemblable gas-syntax form ($-registers, .L labels, noreorder) that a web diff service accepts as a pasted targetrepo build/asm layoutLIVE
323tools/verbatim_to_stub.pyP10ADAPTturn an inline-assembly body back into a stub the toolchain can reachTurns an inline-assembly body back into an include-assembly stubrepo src/asm layoutSTILL-NEEDEDturn an inline-assembly body back into a stub the toolchain can reach
324tools/verify_binary.pyP3ADAPTbyte-verify one binary by hand the only correct way, re-extract includedThe correct hand verification of one binary: full re-extract plus rebuild, then hash comparerepo make targetsSTILL-NEEDEDbyte-verify one binary by hand the only correct way, re-extract included
325tools/verify_contract.shP9ADAPTprove the whole byte-identity contract end to end, step by stepThe recorded end-to-end verification run of the byte-identity contract, step by steprepo make targets, output dirSTILL-NEEDEDprove the whole byte-identity contract end to end from a committed tree
326tools/verify_map_findings.pyP7ADAPTmachine-check an audit's findings against the actual compiler sourcesMachine-checks a codegen-map audit's findings against the actual compiler sourcesrepo reference tree pathsONE-OFFthe machine-checked verdicts of one codegen-map audit (docs/gcc-2.7.2-map/regalloc.md)
327tools/verify_worktree.pyP8ADAPTcheck a commit out into its own worktree and verify it thereChecks a commit into its own worktree, provisions build deps, and verifies it thererepo worktree/build layoutLIVE
328tools/wall_sweep.pyP5ADAPTenumerate fleet-wide every instance of one known assembler-level blocker classEnumerates fleet-wide instances of one known assembler-level blocker classrepo asm layout, toolchain quirkLIVE
329tools/wall_taxonomy.pyP5ADAPTsize each avenue by classifying every unmatched residual by blocker classCensus-classifies every unmatched residual by blocker class to size each avenuecanonical source binary nameSUPERSEDEDtools/frontier_classify.py
330tools/warmstart.pyP7ADAPTfeed the permuter warm-start drafts built from banked exemplars and routed fuelFeeds the permuter warm-start drafts built from banked exemplars and routed fuelrepo scratch pathsSUPERSEDEDtools/permuter_sweep.py
331tools/wave_args.pyP8ADAPTemit the exact drafting-workflow arguments, asserting every target is still openEmits the exact workflow arguments for a wave, asserting every target is openrepo scratch pathsLIVE
332tools/wave_card_fuel.pyP8ADAPTcompute in one library the per-target card fuel a prompt pack carriesThe single library computing the per-target card fuel a pack carriesrepo scratch pathsLIVE
333tools/wave_judge.pyP8ADAPTgate each arm on the whole binary with a tree reset between armsPer-arm whole-binary gate with tree reset between arms, then gates the best-of unionrepo scratch/src layoutLIVE
334tools/wave_snapshot.pyP8ADAPTgive a wave its own immutable copy of the disassembly its agents readGives a wave its own immutable copy of the disassembly files its agents readrepo asm pathsLIVE
335tools/wave_targets.pyP8ADAPTselect a worker wave's target batch from the manifest with cache filtersSelects a worker-wave target batch from the target manifest with cache filtersrepo scratch pathsLIVE
336tools/weave_sweep.pyP6ADAPTapply one proven codegen lever everywhere the bytes say it belongsApplies one known prologue-scheduling lever everywhere the bytes say it belongsrepo src layout, compiler behaviourSTILL-NEEDEDapply one proven codegen lever everywhere the bytes say it belongs
337tools/wiki_render.pyP9ADAPTrender doc trees into wiki page names, rewriting every relative linkRenders the doc trees into wiki page names with every relative link rewritten deterministicallyrepo doc pathsLIVE
338tools/wiki_sync.shP9ADAPTrender and publish the docs to a hosted wiki, replacing its pagesRenders and publishes the docs to the hosted wiki, replacing its pageswiki remote URL, repo pathsLIVE
339tools/work_evidence.pyP8ADAPTassert that a tool actually did the work it reportsAssertions that a tool actually did the work it reportsrepo scratch pathsLIVE
340tools/worklist.pyP5ADAPTjoin the target pool and near-miss ledger into one byte-weighted queueJoins the target pool and the near-miss ledger into one byte-weighted ranked queuerepo scratch pathsLIVE
341tools/xsig/tests/make_fixtures.shP6ADAPTregenerate the signature tool's fixtures with the pinned toolchainRegenerates the signature-tool fixtures with the pinned toolchaincompiler triple, repo tool pathsLIVE
342tools/xsig/tests/test_xsig.pyP6PORTABLEproperty-test the signature tool on committed fixtures, needing no compilerProperty tests for the signature tool on committed fixtures, needing no compilerfixture pathsLIVE
343tools/xsig/xsig.pyP6PORTABLEsign functions with relocations masked for cross-project code identificationRelocation-masked per-function signatures for cross-project code identificationMIPS/relocation model onlyLIVE