Skip to content

testing: golden differential harness across backends#158

Merged
jcelerier merged 1 commit into
mainfrom
test/golden-differential-harness
Jul 6, 2026
Merged

testing: golden differential harness across backends#158
jcelerier merged 1 commit into
mainfrom
test/golden-differential-harness

Conversation

@jcelerier

Copy link
Copy Markdown
Member

The cross-backend golden differential testing framework, split out of the former channel-safety mega-PR (#143). Ships no library code — it's dev tooling + the golden generator.

The golden backend records each object's inputs + correct outputs; per-backend harnesses replay those inputs and diff the captured output against the oracle.

  • binding/golden/run.hpp — one-at-a-time case sweep (base case + per enum mode + per numeric range endpoint) per object.
  • tooling/golden_compare.py — shared audio/control/texture compare + per-case verdict aggregation.
  • tooling/run_{python,gst,pd,max}_golden.py + tooling/max driver — the per-backend replay harnesses.
  • tooling/gen_tester_patches.py, tooling/td/run_td_sweep.py — TD runner generation + sweep (records the crash stage; texture output reported as "not verifiable headless" rather than a false mismatch).

Merge after #155 (backend fixes) and #156 (python binding) — those fixes are what make the harnesses report clean.

🤖 Generated with Claude Code

@jcelerier jcelerier force-pushed the test/golden-differential-harness branch 2 times, most recently from f24c755 to ca95d00 Compare July 5, 2026 15:20
Cross-backend golden differential testing: the golden backend records
each object's inputs + correct outputs, and per-backend harnesses replay
those inputs and diff the captured output against the oracle.

- binding/golden/run.hpp: one-at-a-time case sweep (base case + per enum
  mode + per numeric range endpoint) per object.
- tooling/golden_compare.py: shared audio/control/texture compare + case
  aggregation.
- tooling/run_{python,gst,pd,max}_golden.py + tooling/max driver: the
  per-backend replay harnesses.
- tooling/gen_tester_patches.py, tooling/td/run_td_sweep.py: TD runner
  generation + sweep (records the crash stage; texture output reported
  as not verifiable headless rather than a false mismatch).

Depends at runtime on the backend fixes in
fix/backend-audio-texture-correctness and fix/python-binding-improvements
for the harnesses to report clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JH7HS58wPSA22HztHZsakd
@jcelerier jcelerier force-pushed the test/golden-differential-harness branch from ca95d00 to c97bf76 Compare July 5, 2026 16:01
@jcelerier jcelerier merged commit ff649e6 into main Jul 6, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant