feat(delphi): certify.py battery runner + focuser + fingerprint ledger (Spec A, Phase 0)#2647
Draft
jucor wants to merge 1 commit into
Draft
feat(delphi): certify.py battery runner + focuser + fingerprint ledger (Spec A, Phase 0)#2647jucor wants to merge 1 commit into
jucor wants to merge 1 commit into
Conversation
…r (Spec A, Phase 0) Sonnet-agent build from SPEC_A — the R1 certification backbone: - polismath/replay/certify.py + scripts/certify.py (click CLI: run / focus) over scripts/certify_battery.json (starter battery: vw uniform8 / front-loaded6 / single-cut + biodiversity uniform8, all clojure-legacy). - Clojure recording cache: reuse iff manifest matches (votes sha256, canonical schedule hash, replay.clj + math/src tree hashes); Python recording cache keyed on polismath tree hash + engine_mode. Both drivers invoked as subprocesses via --schedule <tmp> (the only way to bake the collision-free schedule_id into the recording path without touching replay_driver.py). - Hash-first compare (canonical-JSON step hashes after acceptance projection) + content-addressed step-verdict cache; a same-input re-run is a pure cache hit (verified: zero subprocess calls on repeat). - Acceptance projection = prep-main whitelist MINUS subgroup-* trio (CLOJURE_QUIRKS.md Q7); the exclusion is printed on EVERY run, never silent. - First-divergence focuser (earliest divergent step, divergent key-paths only, ≤40-line stdout, full detail to focus-report.json) + fingerprint ledger docs/divergences.json (normalized path × family × engine_mode; ships empty — diagnoses accrue as certification proceeds). - Crosslang bridge PROMOTED tests/replay_harness/clj_crosslang.py → polismath/replay/crosslang.py (now a production API); behavior-identical (84 pre-existing replay-harness tests green before and after), import sites updated (test_clj_crosslang.py, replay_smoke.sh heredoc). Tests: 132 passed + 1 gated integration (ran for real: actual clojure + python drivers on vw single-cut, ~11s, then cache-hit re-run). Agent's real smoke surfaced ~19 undiagnosed divergent fingerprints on the PRE-port base — the certification loop's starting worklist (ledger deliberately left empty; diagnosis is top-level work). commit-id:4a87a6ae
This was referenced Jul 22, 2026
Draft
docs(delphi): R1-parity goal docs, journal (2026-07-18 → 07-22 s3), quirks + divergence ledger
#2626
Draft
jucor
marked this pull request as draft
July 22, 2026 00:52
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.
Sonnet-agent build from SPEC_A — the R1 certification backbone:
over scripts/certify_battery.json (starter battery: vw uniform8 /
front-loaded6 / single-cut + biodiversity uniform8, all clojure-legacy).
canonical schedule hash, replay.clj + math/src tree hashes); Python
recording cache keyed on polismath tree hash + engine_mode. Both drivers
invoked as subprocesses via --schedule (the only way to bake the
collision-free schedule_id into the recording path without touching
replay_driver.py).
projection) + content-addressed step-verdict cache; a same-input re-run
is a pure cache hit (verified: zero subprocess calls on repeat).
(CLOJURE_QUIRKS.md Q7); the exclusion is printed on EVERY run, never
silent.
only, ≤40-line stdout, full detail to focus-report.json) + fingerprint
ledger docs/divergences.json (normalized path × family × engine_mode;
ships empty — diagnoses accrue as certification proceeds).
polismath/replay/crosslang.py (now a production API); behavior-identical
(84 pre-existing replay-harness tests green before and after), import
sites updated (test_clj_crosslang.py, replay_smoke.sh heredoc).
Tests: 132 passed + 1 gated integration (ran for real: actual clojure +
python drivers on vw single-cut, ~11s, then cache-hit re-run). Agent's real
smoke surfaced ~19 undiagnosed divergent fingerprints on the PRE-port base
— the certification loop's starting worklist (ledger deliberately left
empty; diagnosis is top-level work).
commit-id:4a87a6ae
Stack: