core/core/demos
Shay 7f6c497a21
All checks were successful
smoke / smoke (-m "not quarantine") (pull_request) Successful in 14m5s
lane-shas / verify pinned lane SHAs (pull_request) Successful in 25m23s
fix(ci): path-stable env deltas so lane SHA pins stop thrashing
Root cause of demo_composition pin thrash was not cancelled CI runs:
verify_no_global_state_mutation dumped full env_subset before/after
tuples into the lane report, embedding CORE_ENGINE_STATE_DIR temp
paths (and any ambient CORE_* host values). Each hermetic run then
produced a different report SHA.

Fix for good:
- Report key-level env deltas only (+/- / changed), with path-like
  CORE_* values redacted to <path> in the message text.
- Detection still uses raw snapshots (mutations are not ignored).
- Hermetic CORE_ENGINE_STATE_DIR for demo_composition and all
  verify_lane_shas invocations.
- Dual-run-stable re-pin: demo_composition e2ba2314…,
  public_demo 7d8ba0db… (matches CI-observed soft-budget SHA).
- Drop dead CORE_SHOWCASE_SKIP_BUDGET workflow env (soft is default).
- Tests pin the delta format and hermetic-path stability.

Lane: python scripts/verify_lane_shas.py → 9/9 match.
2026-07-14 17:41:04 -07:00
..
__init__.py feat(demos): implement ADR-0098 — Demo Composition Contract 2026-05-21 19:02:29 -07:00
audit_tour_adapter.py feat(demos): implement ADR-0098 — Demo Composition Contract 2026-05-21 19:02:29 -07:00
contract.py fix(ci): path-stable env deltas so lane SHA pins stop thrashing 2026-07-14 17:41:04 -07:00
expert_demo.py feat: ADR-0113 rename expert-demoaudit-passed; reserve expert namespace (ADR-0114 GSM8K roadmap) 2026-05-22 15:36:10 -07:00
learning_loop_adapter.py feat(demos): implement ADR-0099 — Public Showcase Demo 2026-05-21 19:44:48 -07:00
README.md chore: Refactor CLI and Governance Anchors (#926) 2026-07-03 12:34:56 -07:00
showcase.py feat: close 3-lang depth deck — same-turn roots, capability pins, public_demo budget 2026-07-08 19:15:34 -07:00
showcase_adapters.py fix(ci): re-pin public_demo lane SHA after showcase content drift (#807) 2026-06-17 15:42:40 -07:00
tour_adapters.py feat(demos): implement ADR-0098 — Demo Composition Contract 2026-05-21 19:02:29 -07:00

Demo Composition Layer

core/demos/ contains the typed composition surface for demos: contracts, adapters, showcase rendering, and expert-demo packaging.

It does not own standalone scenario fixtures. Those live under top-level demos/, where each demo package can pin its inputs, expected artifacts, and honesty ledger.

Boundary:

  • demos/ proves a narrow claim inside a deterministic local envelope.
  • core/demos/ adapts proven demos into shared presentation and Workbench surfaces.