mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-10-31 06:04:11 +01:00
docs(runner): reconcile phase 6 final evidence
Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
1 parent
bacf670497
commit
f0eb3d5c18
4 files changed
+48
-15
No files matched your search
@@ -1,6 +1,6 @@
|
||||
# Phase 6 Thin Paperclip Adapter Boundary
|
||||
|
||||
Status: design approved; remediation 4 implemented; CTO conformance re-review pending
|
||||
Status: design approved; remediation 8 documentation reconciliation complete; final CTO gate pending
|
||||
Date: 2026-08-09
|
||||
Decision scope: the first feature-flagged Paperclip native run, including the
|
||||
normative native finalizer and server-owned Section 18 status arbitration
|
||||
@@ -932,7 +932,7 @@ additional resolver kinds remain deferred.
|
||||
|
||||
The provisional list and seam amendments above remain the decision history.
|
||||
For final diff auditing, their authoritative union is the following exact
|
||||
93-file allowlist. It matches the Phase 6 branch diff from the parent of the
|
||||
89-file allowlist. It matches the Phase 6 branch diff from the parent of the
|
||||
authorization commit through this remediation, including the package README,
|
||||
the Section 18.13 checker, package/runtime tests, `canonical.ts`, and
|
||||
`runtime-mode.test.ts`. No file outside this list is authorized as Phase 6 work.
|
||||
@@ -954,21 +954,17 @@ packages/db/src/schema/status_decision_effects.ts
|
||||
packages/db/src/schema/status_decisions.ts
|
||||
packages/db/src/schema/work_assessments.ts
|
||||
packages/paperclip-runner/README.md
|
||||
packages/paperclip-runner/docs/architecture.md
|
||||
packages/paperclip-runner/docs/design/phase-6-thin-paperclip-adapter.md
|
||||
packages/paperclip-runner/docs/index.md
|
||||
packages/paperclip-runner/docs/phase-06-thin-paperclip-adapter.md
|
||||
packages/paperclip-runner/docs/tutorials/phase-06-thin-paperclip-adapter.md
|
||||
packages/paperclip-runner/knowledge/evidence/2026-08-09-phase-06-verification.md
|
||||
packages/paperclip-runner/knowledge/evidence/index.md
|
||||
packages/paperclip-runner/knowledge/journal/2026-08-09-phase-06-design.md
|
||||
packages/paperclip-runner/knowledge/journal/2026-08-09-phase-06-implementation.md
|
||||
packages/paperclip-runner/knowledge/journal/index.md
|
||||
packages/paperclip-runner/knowledge/log.md
|
||||
packages/paperclip-runner/package.json
|
||||
packages/paperclip-runner/spec/fixtures/status-authority-phase5.json
|
||||
packages/paperclip-runner/spec/paperclip-native-runner-implementation-plan.md
|
||||
packages/paperclip-runner/spec/paperclip-native-runner-spike-spec.md
|
||||
packages/paperclip-runner/src/backends/codex-native-backend.ts
|
||||
packages/paperclip-runner/src/backends/harness-driver-backend.test.ts
|
||||
packages/paperclip-runner/src/backends/harness-driver-backend.ts
|
||||
|
||||
@@ -36,9 +36,10 @@ pnpm --filter @paperclipai/paperclip-runner trace:phase6 -- \
|
||||
--target mock --scenario happy-path
|
||||
```
|
||||
|
||||
Expected: six targeted tests pass and the trace reports `resolvedMode` as
|
||||
`native`, three replay-stable events, a successful workspace barrier, and one
|
||||
mock server-owned `done` decision. This tracer does not connect to Paperclip.
|
||||
Expected: four targeted files and seven tests pass, and the trace reports
|
||||
`resolvedMode` as `native`, three replay-stable events, a successful workspace
|
||||
barrier, and one mock server-owned `done` decision. This tracer does not connect
|
||||
to Paperclip.
|
||||
|
||||
## 2. Prove the database-backed Paperclip port
|
||||
|
||||
|
||||
@@ -13,9 +13,10 @@ This record verifies the default-off Phase 6 tracer at the approved
|
||||
`ControlPlanePort`/`NativeSessionBackend` boundary. No browser surface changed,
|
||||
so Phase 6 has command/database evidence rather than screenshots.
|
||||
|
||||
The counts below are the PAP-16880 remediation rerun. “Internal canary” means
|
||||
the selected-task database test through the public package session contract;
|
||||
it does not mean that a new live Codex provider task was dispatched.
|
||||
The counts below are from the remediation-7 final rerun on 2026-08-09.
|
||||
“Internal canary” means the selected-task database test through the public
|
||||
package session contract; it does not mean that a new live Codex provider task
|
||||
was dispatched.
|
||||
|
||||
# Package contract and mock tracer
|
||||
|
||||
@@ -150,9 +151,35 @@ The final rerun on 2026-08-09 produced:
|
||||
- runner documentation validation: 58 links and the 25-concept/four-index OKF
|
||||
bundle passed;
|
||||
- server TypeScript and runner TypeScript/protocol typechecks passed;
|
||||
- the design's authoritative 93-file allowlist matched the Phase 6 diff exactly;
|
||||
- the design's authoritative 89-file allowlist matched the Phase 6 diff exactly;
|
||||
- `git diff --check` passed.
|
||||
|
||||
The exact-file claim is mechanically fail-closed. This comparison extracts the
|
||||
authoritative fenced block, asserts its count, and then compares it with the
|
||||
committed Phase 6 diff. Any missing or extra path makes `diff` return non-zero:
|
||||
|
||||
```sh
|
||||
PHASE6_SCRATCH="${PAPERCLIP_RUN_SCRATCH_DIR:-$(mktemp -d)}"
|
||||
PHASE6_ALLOWLIST="$PHASE6_SCRATCH/phase6-allowlist.txt"
|
||||
PHASE6_ACTUAL="$PHASE6_SCRATCH/phase6-actual.txt"
|
||||
|
||||
awk '
|
||||
/^### Remediation 7 authoritative exact-file reconciliation / { section = 1; next }
|
||||
section && /^```text$/ { block = 1; next }
|
||||
block && /^```$/ { exit }
|
||||
block { print }
|
||||
' packages/paperclip-runner/docs/design/phase-6-thin-paperclip-adapter.md \
|
||||
| LC_ALL=C sort > "$PHASE6_ALLOWLIST"
|
||||
git diff --name-only 3a38c8f931..HEAD \
|
||||
| LC_ALL=C sort > "$PHASE6_ACTUAL"
|
||||
test "$(wc -l < "$PHASE6_ALLOWLIST")" -eq 89
|
||||
test "$(wc -l < "$PHASE6_ACTUAL")" -eq 89
|
||||
diff -u "$PHASE6_ALLOWLIST" "$PHASE6_ACTUAL"
|
||||
```
|
||||
|
||||
Result: exit 0 with no diff output; 89 documented paths, 89 committed paths,
|
||||
zero missing, and zero extra.
|
||||
|
||||
The final owner review traced the successful audit-only path as
|
||||
`PaperclipControlPlanePort.completeRun -> native_run_results ->
|
||||
finalizeNativeRun -> routePersistedNativeResultAttention ->
|
||||
@@ -168,6 +195,14 @@ create another assessment or mutate the interaction timestamp. Missing or
|
||||
cross-company targets throw before the coordinator commits and enter named
|
||||
retryable recovery with the issue status/version unchanged.
|
||||
|
||||
# Remediation 8 documentation self-review
|
||||
|
||||
The final documentation review confirmed that the exact allowlist is the same
|
||||
89-path set as `git diff --name-only 3a38c8f931..HEAD`, the status header records
|
||||
the remediation-8/final-gate state, this evidence identifies the remediation-7
|
||||
final rerun, and the tutorial expects four package files and seven tests. The
|
||||
reconciliation changes documentation only and does not alter runtime behavior.
|
||||
|
||||
# Compile and migration checks
|
||||
|
||||
```sh
|
||||
|
||||
@@ -123,8 +123,9 @@ existing server authority and keep legacy execution as the default.
|
||||
result persistence, the finalizer alone commits the zero-decision outcome,
|
||||
the internal router binds the exact same-company interaction, and committed
|
||||
replay short-circuits without another assessment or target mutation.
|
||||
- The design's authoritative 93-file allowlist was mechanically compared with
|
||||
the Phase 6 branch diff and had no missing or extra path, including the README,
|
||||
- The remediation-8 documentation reconciliation corrected the design's
|
||||
authoritative allowlist to 89 files and mechanically compared it with the
|
||||
Phase 6 branch diff with no missing or extra path, including the README,
|
||||
spec checker, canonical helper, runtime-mode test, and database-backed port
|
||||
test paths.
|
||||
|
||||
|
||||
Reference in new issue
Block a user