Skip to content

Commit 27cc141

Browse files
V46 Gate 5: Interface Claim Contracts
Close Gate 5 by binding API/MCP, ChatGPT App, Bitcode Chat, and package-consumer InterfaceClaim contracts with generated source-safe artifact and gate checks.
1 parent 555ddeb commit 27cc141

22 files changed

Lines changed: 1921 additions & 55 deletions

.bitcode/v46-interface-claim-contracts.json

Lines changed: 772 additions & 0 deletions
Large diffs are not rendered by default.

.bitcode/v46-product-route-comprehension-readback.json

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
11
{
22
"artifactId": "v46-product-route-comprehension-readback",
33
"artifactPath": ".bitcode/v46-product-route-comprehension-readback.json",
4-
"artifactRoot": "v46-product-route-comprehension-readback:5bc3193c537a60994221614c",
4+
"artifactRoot": "v46-product-route-comprehension-readback:f1a5d0211f739510cb8d2154",
55
"schemaId": "bitcode.v46.productRouteComprehensionReadback.v1",
66
"version": "V46",
77
"currentTarget": "V45",
88
"sourceSafetyVerdict": "source-safe-product-route-comprehension-readback",
99
"sourceRoots": {
1010
"activePointer": "BITCODE_SPEC.txt:674f33696f4048b636f67e13",
11-
"spec": "BITCODE_SPEC_V46.md:4cc45d3f347055f6e1c41dfb",
12-
"delta": "BITCODE_SPEC_V46_DELTA.md:d3a9827a2ab22d7586c9068a",
13-
"notes": "BITCODE_SPEC_V46_NOTES.md:ec27a9894f9b42082fce5ceb",
14-
"parity": "BITCODE_SPEC_V46_PARITY_MATRIX.md:fa329d3d950173391cc942b5",
15-
"roadmap": "SPECIFICATIONS_ROADMAP.md:5c6e23123d158007377d52ec",
16-
"packageJson": "package.json:a45f631d26b4b87124be7849",
17-
"packageIndex": "packages/protocol/src/index.js:60ed0a4f219845b39e07e4bb",
18-
"packageTypes": "packages/protocol/src/index.d.ts:1dddeb9bb40d80b131a30ce5",
19-
"packageSource": "packages/protocol/src/canonical/v46-product-route-comprehension-readback.js:373f5861ee772d21f052de38",
11+
"spec": "BITCODE_SPEC_V46.md:3b619dd4971f05e9f26d2d52",
12+
"delta": "BITCODE_SPEC_V46_DELTA.md:ae7a032374ef3a15afc165b1",
13+
"notes": "BITCODE_SPEC_V46_NOTES.md:553cd172a2197af62d359f90",
14+
"parity": "BITCODE_SPEC_V46_PARITY_MATRIX.md:f136e996c7f10fec0294d763",
15+
"roadmap": "SPECIFICATIONS_ROADMAP.md:1deef7aebb8b8ffaa629800b",
16+
"packageJson": "package.json:c34b3c2fad27dcdda5681997",
17+
"packageIndex": "packages/protocol/src/index.js:7d253665b2eb8abc2c84ef31",
18+
"packageTypes": "packages/protocol/src/index.d.ts:91eb37870471a544f284be49",
19+
"packageSource": "packages/protocol/src/canonical/v46-product-route-comprehension-readback.js:c7b3e44d22703ca4b8f17ac3",
2020
"packageTest": "packages/protocol/test/v46-product-route-comprehension-readback.test.js:3118d40ad600a9fb1d025bf6",
2121
"generator": "scripts/generate-v46-product-route-comprehension-readback.mjs:131473a8dcd0d665f74f56a7",
2222
"checker": "scripts/check-v46-gate4-product-route-comprehension-readback.mjs:483822ed6cd2809c20ee8fe5",
23-
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:5ce1c8681bb2ef5d0ac25066",
24-
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:0b6dfb96c5cbee7d42652666",
23+
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:5146b7aad831ade15738e8e8",
24+
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:c0dcd99e25b780873e412123",
2525
"productRouteShell": "uapi/components/base/bitcode/routes/product-route-shell.tsx:e71f90c289dec52fd158568a",
2626
"packsClient": "uapi/app/packs/PacksPageClient.tsx:68c61c8fd312e6c750d742ba",
2727
"packsModel": "uapi/components/base/bitcode/activity/pack-activity-model.ts:88d0334af8bc699e071ca2a1",
@@ -484,7 +484,7 @@
484484
"passed": true
485485
},
486486
{
487-
"id": "roadmap-records-current-gate4",
487+
"id": "roadmap-records-gate4-closure",
488488
"sourcePath": "SPECIFICATIONS_ROADMAP.md",
489489
"passed": true
490490
},

.bitcode/v46-protocol-comprehension-object-model.json

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@
88
"sourceSafetyVerdict": "source-safe-protocol-comprehension-metadata",
99
"sourceRoots": {
1010
"activePointer": "BITCODE_SPEC.txt:674f33696f4048b636f67e13",
11-
"spec": "BITCODE_SPEC_V46.md:4cc45d3f347055f6e1c41dfb",
12-
"delta": "BITCODE_SPEC_V46_DELTA.md:d3a9827a2ab22d7586c9068a",
13-
"notes": "BITCODE_SPEC_V46_NOTES.md:ec27a9894f9b42082fce5ceb",
14-
"parity": "BITCODE_SPEC_V46_PARITY_MATRIX.md:fa329d3d950173391cc942b5",
15-
"roadmap": "SPECIFICATIONS_ROADMAP.md:5c6e23123d158007377d52ec",
16-
"readme": "README.md:316f79e40a6922fa0bf29961",
17-
"protocolReadme": "packages/protocol/README.md:3a3d3a1340fb98b87f722375",
18-
"packageJson": "package.json:a45f631d26b4b87124be7849",
19-
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:5ce1c8681bb2ef5d0ac25066",
20-
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:0b6dfb96c5cbee7d42652666",
21-
"packageIndex": "packages/protocol/src/index.js:60ed0a4f219845b39e07e4bb",
22-
"packageTypes": "packages/protocol/src/index.d.ts:1dddeb9bb40d80b131a30ce5",
11+
"spec": "BITCODE_SPEC_V46.md:3b619dd4971f05e9f26d2d52",
12+
"delta": "BITCODE_SPEC_V46_DELTA.md:ae7a032374ef3a15afc165b1",
13+
"notes": "BITCODE_SPEC_V46_NOTES.md:553cd172a2197af62d359f90",
14+
"parity": "BITCODE_SPEC_V46_PARITY_MATRIX.md:f136e996c7f10fec0294d763",
15+
"roadmap": "SPECIFICATIONS_ROADMAP.md:1deef7aebb8b8ffaa629800b",
16+
"readme": "README.md:72b51bb4c1dd930185f6f4d6",
17+
"protocolReadme": "packages/protocol/README.md:72af480ca278f8f038ee27af",
18+
"packageJson": "package.json:c34b3c2fad27dcdda5681997",
19+
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:5146b7aad831ade15738e8e8",
20+
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:c0dcd99e25b780873e412123",
21+
"packageIndex": "packages/protocol/src/index.js:7d253665b2eb8abc2c84ef31",
22+
"packageTypes": "packages/protocol/src/index.d.ts:91eb37870471a544f284be49",
2323
"packageSource": "packages/protocol/src/canonical/v46-protocol-comprehension-object-model.js:a55974c399c15656961c7370",
2424
"packageTest": "packages/protocol/test/v46-protocol-comprehension-object-model.test.js:b3dd4b276e9c00b76becb15e",
2525
"generator": "scripts/generate-v46-protocol-comprehension-object-model.mjs:814f07e809e47d359485ba46",

.bitcode/v46-public-operator-claim-boundaries.json

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,22 @@
88
"sourceSafetyVerdict": "source-safe-public-operator-claim-boundary-metadata",
99
"sourceRoots": {
1010
"activePointer": "BITCODE_SPEC.txt:674f33696f4048b636f67e13",
11-
"spec": "BITCODE_SPEC_V46.md:4cc45d3f347055f6e1c41dfb",
12-
"delta": "BITCODE_SPEC_V46_DELTA.md:d3a9827a2ab22d7586c9068a",
13-
"notes": "BITCODE_SPEC_V46_NOTES.md:ec27a9894f9b42082fce5ceb",
14-
"parity": "BITCODE_SPEC_V46_PARITY_MATRIX.md:fa329d3d950173391cc942b5",
15-
"roadmap": "SPECIFICATIONS_ROADMAP.md:5c6e23123d158007377d52ec",
16-
"readme": "README.md:316f79e40a6922fa0bf29961",
17-
"protocolReadme": "packages/protocol/README.md:3a3d3a1340fb98b87f722375",
18-
"packageJson": "package.json:a45f631d26b4b87124be7849",
19-
"packageIndex": "packages/protocol/src/index.js:60ed0a4f219845b39e07e4bb",
20-
"packageTypes": "packages/protocol/src/index.d.ts:1dddeb9bb40d80b131a30ce5",
21-
"packageSource": "packages/protocol/src/canonical/v46-public-operator-claim-boundaries.js:c13ecca31452effec4966ea7",
11+
"spec": "BITCODE_SPEC_V46.md:3b619dd4971f05e9f26d2d52",
12+
"delta": "BITCODE_SPEC_V46_DELTA.md:ae7a032374ef3a15afc165b1",
13+
"notes": "BITCODE_SPEC_V46_NOTES.md:553cd172a2197af62d359f90",
14+
"parity": "BITCODE_SPEC_V46_PARITY_MATRIX.md:f136e996c7f10fec0294d763",
15+
"roadmap": "SPECIFICATIONS_ROADMAP.md:1deef7aebb8b8ffaa629800b",
16+
"readme": "README.md:72b51bb4c1dd930185f6f4d6",
17+
"protocolReadme": "packages/protocol/README.md:72af480ca278f8f038ee27af",
18+
"packageJson": "package.json:c34b3c2fad27dcdda5681997",
19+
"packageIndex": "packages/protocol/src/index.js:7d253665b2eb8abc2c84ef31",
20+
"packageTypes": "packages/protocol/src/index.d.ts:91eb37870471a544f284be49",
21+
"packageSource": "packages/protocol/src/canonical/v46-public-operator-claim-boundaries.js:03799d116974cb5d9efba096",
2222
"packageTest": "packages/protocol/test/v46-public-operator-claim-boundaries.test.js:0afae65791ef7d7081b2a87a",
2323
"generator": "scripts/generate-v46-public-operator-claim-boundaries.mjs:5a7e5f8c9013c83e3c3818fb",
2424
"checker": "scripts/check-v46-gate3-public-operator-claim-boundaries.mjs:b958086681492633958639bf",
25-
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:5ce1c8681bb2ef5d0ac25066",
26-
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:0b6dfb96c5cbee7d42652666",
25+
"gateWorkflow": ".github/workflows/bitcode-gate-quality.yml:5146b7aad831ade15738e8e8",
26+
"canonWorkflow": ".github/workflows/bitcode-canon-quality.yml:c0dcd99e25b780873e412123",
2727
"publicCopy": "uapi/components/base/bitcode/layout/bitcode-public-copy.ts:9b39322f872b899e1c752701",
2828
"publicExplainers": "uapi/components/base/bitcode/layout/bitcode-public-explainers.ts:4e3b84dda50607ea8ea2b73e",
2929
"landingShared": "uapi/app/(root)/components/landing/marketing-landing-shared.tsx:27c33bd46ea46fd7608fd093",

.github/workflows/bitcode-canon-quality.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -431,6 +431,9 @@ jobs:
431431
if [ -f scripts/check-v46-gate4-product-route-comprehension-readback.mjs ]; then
432432
node scripts/check-v46-gate4-product-route-comprehension-readback.mjs --skip-branch-check --skip-package-tests
433433
fi
434+
if [ -f scripts/check-v46-gate5-interface-claim-contracts.mjs ]; then
435+
node scripts/check-v46-gate5-interface-claim-contracts.mjs --skip-branch-check --skip-package-tests
436+
fi
434437
fi
435438
else
436439
echo "Unexpected BITCODE_SPEC.txt pointer: $POINTER" >&2

.github/workflows/bitcode-gate-quality.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -560,6 +560,9 @@ jobs:
560560
if [ -f scripts/check-v46-gate4-product-route-comprehension-readback.mjs ]; then
561561
node scripts/check-v46-gate4-product-route-comprehension-readback.mjs --skip-branch-check --skip-package-tests
562562
fi
563+
if [ -f scripts/check-v46-gate5-interface-claim-contracts.mjs ]; then
564+
node scripts/check-v46-gate5-interface-claim-contracts.mjs --skip-branch-check --skip-package-tests
565+
fi
563566
fi
564567
else
565568
echo "Unexpected BITCODE_SPEC.txt pointer: $POINTER" >&2
@@ -610,6 +613,9 @@ jobs:
610613
if [ -f BITCODE_SPEC_V46.md ] && [ -f scripts/check-v46-gate4-product-route-comprehension-readback.mjs ]; then
611614
node scripts/check-v46-gate4-product-route-comprehension-readback.mjs --skip-branch-check --skip-package-tests
612615
fi
616+
if [ -f BITCODE_SPEC_V46.md ] && [ -f scripts/check-v46-gate5-interface-claim-contracts.mjs ]; then
617+
node scripts/check-v46-gate5-interface-claim-contracts.mjs --skip-branch-check --skip-package-tests
618+
fi
613619
fi
614620
if [ "$POINTER" = "V43" ] && [ -f scripts/check-v44-gate1-scaled-economy-roadmap-opening.mjs ]; then
615621
node scripts/check-v44-gate1-scaled-economy-roadmap-opening.mjs --skip-branch-check

BITCODE_SPEC_V46.md

Lines changed: 54 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -315,6 +315,50 @@ The source-safe generated artifact for this Gate 4 atom is
315315
`.bitcode/v46-product-route-comprehension-readback.json`; it is generated by
316316
`buildV46ProductRouteComprehensionReadback` and checked by `check:v46-gate4`.
317317

318+
## V46 interface claim contract law
319+
320+
Gate 5: API/MCP, ChatGPT App, And Bitcode Chat Claim Contracts binds machine,
321+
assistant, conversation, and package-consumer surfaces to the same
322+
`InterfaceClaim` taxonomy as public docs and website routes. These surfaces
323+
may carry requests, responses, tool descriptors, action descriptors, source-safe
324+
rendering metadata, proof roots, denied states, and handoff metadata, but they
325+
must not become parallel protocol authority or serialize private payloads.
326+
327+
The public API is the versionless machine contract for source-safe schema
328+
compatibility. It must expose only source-safe request/response fields, proof
329+
roots, denied repair states, and compatibility posture. It must not expose
330+
protected source, unpaid AssetPack source, raw prompts, provider responses,
331+
credentials, wallet private material, private settlement payloads, or
332+
value-bearing mainnet authority.
333+
334+
The MCP API is the package-owned tool contract for source-safe protocol entry.
335+
It may expose tool registry names, permission requirements, provider binding
336+
blockers, write-admission posture, proof roots, queue metadata, and denied
337+
repair states. MCP does not settle BTC, transfer BTD rights, unlock source, or
338+
deliver source-bearing AssetPacks by itself.
339+
340+
The ChatGPT App is the package-owned assistant action contract for Reading and
341+
delivery-adjacent actions. It may render source-safe Need, Finding Fits,
342+
preview, quote, settlement-blocker, delivery-lock, and proof-root metadata.
343+
It must require explicit write admission for stateful actions and must show
344+
settlement/right/delivery denied states until proof readback authorizes the
345+
next boundary.
346+
347+
Bitcode Chat is the website conversation overlay and stream/handoff surface.
348+
It may guide Reading, summarize route-local state, display source-safe stream
349+
events, preserve proof roots, and hand off to `/read`; it cannot advance
350+
protocol state, settle, transfer rights, unlock source, or bypass Terminal,
351+
route, ledger, wallet, or proof authority.
352+
353+
Package consumers receive stable source-safe contracts and generated readback
354+
metadata. Package exports may help consumers reason about claims, but package
355+
consumers do not get a separate state machine, value-bearing authority, or
356+
source disclosure boundary beyond the same proof-backed protocol law.
357+
358+
The source-safe generated artifact for this Gate 5 atom is
359+
`.bitcode/v46-interface-claim-contracts.json`; it is generated by
360+
`buildV46InterfaceClaimContracts` and checked by `check:v46-gate5`.
361+
318362
## V46 whole Bitcode operator chain
319363

320364
The V46 operator chain is: connect source and organization policy, synthesize
@@ -811,6 +855,7 @@ and quality summary.
811855
| `.bitcode/v46-protocol-comprehension-object-model.json` | protocol comprehension object and claim taxonomy artifact | Gate 2 |
812856
| `.bitcode/v46-public-operator-claim-boundaries.json` | public/operator claim-boundary artifact | Gate 3 |
813857
| `.bitcode/v46-product-route-comprehension-readback.json` | product route comprehension readback artifact | Gate 4 |
858+
| `.bitcode/v46-interface-claim-contracts.json` | API/MCP, ChatGPT App, Bitcode Chat, and package-consumer claim-contract artifact | Gate 5 |
814859
| `.bitcode/v46-inference-synthesis-proof.json` | inference proof-family artifact | future proof gate |
815860
| `.bitcode/v46-prompt-completeness-proof.json` | prompt proof-family artifact | future proof gate |
816861
| `.bitcode/v46-static-code-analysis-proof.json` | static-code proof-family artifact | future proof gate |
@@ -830,8 +875,9 @@ V46 specifying generated artifacts must include `.bitcode/v46-spec-family-report
830875
`.bitcode/v46-canonical-input-report.json`,
831876
`.bitcode/v46-protocol-comprehension-object-model.json`,
832877
`.bitcode/v46-public-operator-claim-boundaries.json`,
833-
`.bitcode/v46-product-route-comprehension-readback.json`, all nine V46
834-
proof-family artifacts, `.bitcode/v46-source-safe-e2e-rehearsal.json`,
878+
`.bitcode/v46-product-route-comprehension-readback.json`,
879+
`.bitcode/v46-interface-claim-contracts.json`, all nine V46 proof-family
880+
artifacts, `.bitcode/v46-source-safe-e2e-rehearsal.json`,
835881
`.bitcode/v46-promotion-readiness-report.json`, and future
836882
`BITCODE_SPEC_V46_PROVEN.md`; each artifact becomes required only when its own
837883
gate closes.
@@ -886,6 +932,7 @@ Gate 1 validates only active V45 plus draft V46 posture:
886932
- `pnpm run check:v46-gate2`
887933
- `pnpm run check:v46-gate3`
888934
- `pnpm run check:v46-gate4`
935+
- `pnpm run check:v46-gate5`
889936

890937
## V46 promotion canon
891938

@@ -996,9 +1043,11 @@ artifact roots.
9961043

9971044
## Appendix D. Validation and checking gate catalog
9981045

999-
Validation commands include `check:v46-gate1`, draft V46 spec-family checks,
1000-
active V45 promoted checks, V45/V46 canon posture drift checks, and later
1001-
parity, proof, implementation, rehearsal, and promotion commands.
1046+
Validation commands include `check:v46-gate1`, `check:v46-gate2`,
1047+
`check:v46-gate3`, `check:v46-gate4`, `check:v46-gate5`, draft V46
1048+
spec-family checks, active V45 promoted checks, V45/V46 canon posture drift
1049+
checks, and later parity, proof, implementation, rehearsal, and promotion
1050+
commands.
10021051

10031052
## Appendix E. Current canonical source map
10041053

BITCODE_SPEC_V46_DELTA.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,36 @@ Accepted Gate 4 decisions:
145145
prompts, raw provider responses, credentials, wallet private material,
146146
private settlement payloads, or value-bearing mainnet authority.
147147

148+
## Gate 5: API/MCP, ChatGPT App, And Bitcode Chat Claim Contracts
149+
150+
Gate 5 adds `V46InterfaceClaimContracts` as a source-safe generated artifact
151+
at `.bitcode/v46-interface-claim-contracts.json`. It binds public API, MCP
152+
API, ChatGPT App, Bitcode Chat, and package-consumer surfaces to the Gate 2
153+
`InterfaceClaim` taxonomy, Gate 3 public/operator claim boundaries, and Gate 4
154+
product-route readback law.
155+
156+
Accepted Gate 5 decisions:
157+
158+
- The public API exposes versionless source-safe schema compatibility, proof
159+
roots, denied repair states, and compatibility posture without protected
160+
source or private payload serialization.
161+
- MCP exposes package-owned tool contracts, permission requirements, provider
162+
binding blockers, write-admission posture, proof roots, queue metadata, and
163+
denied repair states; it does not settle BTC, transfer BTD rights, unlock
164+
source, or deliver source-bearing AssetPacks by itself.
165+
- The ChatGPT App exposes package-owned Reading and delivery-adjacent action
166+
contracts, source-safe rendering, explicit write admission, proof roots, and
167+
settlement/right/delivery denied states until proof readback authorizes the
168+
next boundary.
169+
- Bitcode Chat exposes route-local conversation, stream, proof-root, and
170+
terminal-delegated handoff metadata; it does not advance protocol state or
171+
create parallel state authority.
172+
- Package consumers receive stable source-safe contracts and generated
173+
readback metadata, not a separate state machine or disclosure boundary.
174+
- Gate 5 remains source-safe metadata and contract readback work. It does not
175+
authorize runtime behavior changes, source disclosure, settlement, delivery,
176+
or value-bearing mainnet behavior.
177+
148178
## Commit-Body Direction
149179

150180
V46 commit bodies should name the gate class, protocol law or interface claim

0 commit comments

Comments
 (0)