2.9 KiB
2.9 KiB
Capability Verification Commands
Every command here runs from the repository root, is offline and deterministic,
starts no Paperclip service, and holds no credential. All are prefixed
pnpm --filter @paperclipai/paperclip-runner.
| Surface | Command | Expected result |
|---|---|---|
| Capability contract completeness and drift | check:capability-inventory |
Capability inventory completeness and generated-output checks passed. |
| Contract validator negatives | test:capability-inventory |
4 tests pass |
| Mock control plane + shared port | exec vitest run src/conformance/control-plane-port.test.ts src/mock-core/capability-mock-control-plane-adapter.test.ts |
9 tests pass |
| Semantic tools + authorization/redaction | exec vitest run src/tools/capability-semantic-tools.test.ts |
9 tests pass |
| 106-case conformance | test:capability-evals |
1 file (all 106 cases) passes |
| Fake-agent matrix + bounded Codex + parity report | report:capability-evals |
Capability eval conformance passed: 106 cases across 16 groups. |
| Scenario runtime + explorer + clean room + routes | test:scenarios |
159 tests pass |
| Browser IA, accessibility, determinism, boundary | test:browser:scenarios |
Playwright suites pass (60 in the issue-thread/clean-room suite) |
| Screenshot acceptance set | deferred recorded-evidence campaign | 24 deterministic images |
| Documentation links | docs:validate |
all local links resolve |
Live commands (not offline)
The clean-room chat has no fake or replay path, so its end-to-end proof needs a Rust toolchain and a locally authenticated Codex. These are the only Capability commands that start a provider.
| Surface | Command | Expected result |
|---|---|---|
| Real Codex through real runnerd on a fresh mock tenant | smoke:capability:cleanroom |
every assertion true; two MCK- identifiers, one per chat |
| Preset issue thread against real Codex | smoke:capability:ui |
every assertion true |
| Clean-room screenshots | deferred recorded-evidence campaign | 7 images; intentionally not byte-stable |
Notes
- No Rust toolchain is needed for any Capability command. The full
verifytarget still builds the Rust workspace, but nothing above does. - Determinism. Fake-mode runs render fixture time only, so repeat runs and repeat screenshots are byte-identical.
- The parity report is generated on demand.
report:capability-evalswrites.paperclip-local/evidence/capability/eval-parity-report.{json,md}, which are not committed or scanned bydocs:validate. - Browser libraries. On minimal or rootless hosts, extract Playwright's
browser libraries first; the package's
verify:rootlesstarget shows the pattern.