…#15)
* Materialize demo scenarios from immutable tags, not upstream branches
The two collision scenarios were long-lived collide-a/collide-b branches on
this shared upstream repository. Deleting them (to release stale head
reservations) broke the sandbox. Store each scenario as an immutable annotated
tag (fixture-v1-agent-a/-b) instead, and materialize the branches into the
user's own fork on demand — no scenario branch ever lives upstream again.
- demo-manifest.json: schemaVersion 2.0.0; scenarios carry sourceRef/
sourceCommit/outputBranch; add fixtureMode, reproducibleFixture, and split
recordedRun into historicalRecordedRun (#1/#2) and currentLiveProof (#13/#14).
- scripts/materialize_fixtures.py: verify source commit/base/diff/tests, then
create branches on the fork only. Idempotent, never force-pushes, refuses the
upstream repo, fails closed on a dirty tree, prints no tokens or credentials.
- scripts/verify_fixtures.py: verify the immutable tags/commits, not branches.
- check_docs.py, README.md, orders/pricing.py, fixtures.yml: new contract; CI
fetches tags and asserts the materializer refuses upstream.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* verify_fixtures: resolve base branch across full-clone and CI PR checkouts
pull_request checkouts are detached with no local 'main', so the literal
baseBranch ref failed the descends-from-base check in CI. Resolve the mainline
tip via candidates (local, origin remote, FETCH_HEAD, HEAD) and fetch
origin/main into a ref in CI.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* Drop the pricing.py docstring edit from this PR
Editing orders/pricing.py collides (correctly, per Veripsa's own check) with
the permanent live-proof PRs #13/#14, which are kept open indefinitely and so
would block this structural repair forever. The docstring wording is cosmetic;
keep this PR to the manifest/scripts/docs/CI contract so it lands cleanly.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
---------
Co-authored-by: RollNuts <277724446+RollNuts@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Adds a 5% bulk discount inside
calculate_total(the discount section oforders/pricing.py). Standalonepython -m pytest -q→ 7 passed. Part of the fresh canonical collision demo (leader).