mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-10-26 18:31:34 +01:00
Implements the standalone, package-local Phase 7 scenario explorer against the approved interaction map (docs/design/phase-7-scenario-explorer-ux.md). Scenario runtime (src/phase7, no DOM, no network): - Scenario index over all 106 eval cases and 16 groups, with actor role, task mode, fixture seed, and catalog claims declared in a profile table rather than inferred from case prose. Claims that cannot unlock an operation in a scenario's task mode or for its actor role are dropped, so no scenario shows a grant that unlocks nothing. - Deterministic fixture seeds and fake-agent plans: twelve authored plans for the UX acceptance scenarios, derived plans for the rest. Derived plans only invoke operations the run actually exposes, so any denial in a derived transcript is a real policy result, not a scripting artefact. - A run-artifact builder that executes each plan against the Phase 7C mock control plane through the Phase 7D authorization engine and records the ordered timeline (both channels), tool exposure, authorization records, an immutable ten-domain state diff, and a parity verdict. Descriptor redaction rules are applied at the artifact boundary so no raw secret can reach a rendered record. - Parity is judged in the runtime, never in a component. Phase 7E's per-case result is carried through verbatim in its own labelled block and renders "Not run" when no report is bundled. Explorer (examples/phase7-explorer): - Read-only surface over the frozen SDK: hash routing, scenario picker with faceted filters, agent and control-plane transcript channels, and Context, Authorization, State diff, and Parity inspector tabs. Tokens only; the 0.1.2 export surface is unchanged and the runtime is reached through the deliberately package-local @paperclip-runner-local/phase7 alias. - Checked-in inputs arrive as declared virtual modules, so the example consumer keeps its boundary and fake mode does no network I/O. Verification: 45 unit tests (index, plans, all-scenario runs and parity, components, routes), 19 Playwright tests (route determinism, evidence routes, credential boundary, keyboard paths, responsive), and the 24-image screenshot acceptance set. Fixes found while building: SDK badges overflowed at 390px inside disclosure summaries; SDK badge capitalisation broke the label vocabulary; hash-change deep links left the wrong mobile segment; screenshot capture leaked run state between shots. All recorded as revisions in the interaction map. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>