Skip to content

Commit ecab1c9

Browse files
V40 Gate 1: Open exhaustive testing roadmap
Open the V40 draft spec family over promoted V39 and scope the eleven-gate exhaustive testing plan across E2E, visual, integration, unit, synchronization, rehearsal, and prompt benchmark smoke coverage. Wire check:v40-gate1 into package scripts and active V39/draft V40 workflows, refresh roadmap and README posture, and reserve V41 for Prompt/PromptPart prompts-as-programs work. Repair active V39 protocol proof predicates so promoted V39 reports remain green once V40 is the current draft target. Validated with check-bitcode-spec-family V40 draft, canon posture drift V39/V40, check-bitcode-spec-family V39 promoted, check:v40-gate1, git diff --check, and pnpm --filter @bitcode/protocol test.
1 parent 3e2ddf4 commit ecab1c9

17 files changed

Lines changed: 912 additions & 35 deletions

.github/pull_request_template.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
## Title
22

3-
Use the version and gate prefix for gate PRs: `V39 Gate N: Concise Topical Title`.
4-
Use the version and promotion prefix for version promotion PRs: `V39 Canonical Promotion: Concise Topical Title`.
3+
Use the version and gate prefix for gate PRs: `V40 Gate N: Concise Topical Title`.
4+
Use the version and promotion prefix for version promotion PRs: `V40 Canonical Promotion: Concise Topical Title`.
55

66
## Closure
77

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

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,10 @@ jobs:
220220
node scripts/check-bitcode-canonical-inputs.mjs --current-target V39
221221
node scripts/check-bitcode-canon-posture-drift.mjs --active-canon V39 --draft-target V40
222222
node scripts/check-v39-gate11-promotion-readiness.mjs --promotion-mode --skip-branch-check --skip-package-tests
223+
if [ -f BITCODE_SPEC_V40.md ]; then
224+
node scripts/check-bitcode-spec-family.mjs --version V40 --mode draft --current-target V39
225+
node scripts/check-v40-gate1-testing-roadmap-opening.mjs --skip-branch-check
226+
fi
223227
else
224228
echo "Unexpected BITCODE_SPEC.txt pointer: $POINTER" >&2
225229
exit 1
@@ -343,7 +347,10 @@ jobs:
343347
node scripts/check-bitcode-spec-family.mjs --version V39 --mode draft --current-target V38
344348
fi
345349
;;
350+
spec:\ V40*|spec:\ v40*)
351+
node scripts/check-bitcode-spec-family.mjs --version V40 --mode draft --current-target V39
352+
;;
346353
*)
347-
echo "Skipping strict spec-title conformance; title is not a V29/V30/V31/V32/V33/V34/V35/V36/V37/V38/V39 spec change."
354+
echo "Skipping strict spec-title conformance; title is not a V29/V30/V31/V32/V33/V34/V35/V36/V37/V38/V39/V40 spec change."
348355
;;
349356
esac

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

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -349,6 +349,10 @@ jobs:
349349
node scripts/check-bitcode-canonical-inputs.mjs --current-target V39
350350
node scripts/check-bitcode-canon-posture-drift.mjs --active-canon V39 --draft-target V40
351351
node scripts/check-v39-gate11-promotion-readiness.mjs --promotion-mode --skip-branch-check --skip-package-tests
352+
if [ -f BITCODE_SPEC_V40.md ]; then
353+
node scripts/check-bitcode-spec-family.mjs --version V40 --mode draft --current-target V39
354+
node scripts/check-v40-gate1-testing-roadmap-opening.mjs --skip-branch-check
355+
fi
352356
else
353357
echo "Unexpected BITCODE_SPEC.txt pointer: $POINTER" >&2
354358
exit 1

BITCODE_SPEC_V40.md

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

BITCODE_SPEC_V40_DELTA.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
# Bitcode Spec V40 Delta
2+
3+
## Status
4+
5+
- Version: `V40`
6+
- V40 state: draft opened; this delta records the planned exhaustive commercial application testing closure set
7+
- Current canonical/latest target: `V39`
8+
- Prior canonical anchor: `BITCODE_SPEC_V39.md`
9+
- Prior generated proof appendix: `BITCODE_SPEC_V39_PROVEN.md`
10+
- Generated structured artifact inventory: draft `.bitcode/v40-spec-family-report.json`, `.bitcode/v40-canonical-input-report.json`, and later V40 testing artifacts
11+
- Source parity state: V40 testing surfaces are scoped but not yet closed
12+
13+
## Why V40 exists
14+
15+
V39 made commercial Reading product behavior canonical.
16+
V40 exists because that behavior now needs exhaustive proof through tests: browser E2E, visual/screenshot comparisons, API contracts, pipeline integrations, conversation integrations, ledger/database/storage synchronization, unit coverage, prompt benchmark smoke, and local/staging rehearsal.
17+
18+
## Accepted V40 decisions
19+
20+
- V40 is a testing-focused version, not a prompt-rewriting version.
21+
- V40 must test both primitives and real commercial implementations.
22+
- V40 must make the five-step Reading flow fully browser-proven and contract-proven.
23+
- V40 must add generated artifacts for every major testing surface.
24+
- V40 must keep value-bearing production-mainnet checks opt-in until explicitly promoted.
25+
- V41 is reserved for Prompt and PromptPart excellence after V40 makes benchmark and test lanes reliable.
26+
27+
## V40 gate plan
28+
29+
### Gate 1: Exhaustive Testing Roadmap And Spec Opening
30+
31+
Open the V40 spec family, roadmap, branch posture, workflow posture, checker, and V41 planning boundary.
32+
33+
### Gate 2: Test Inventory And Coverage Matrix
34+
35+
Inventory existing tests, missing critical surfaces, owners, commands, fixtures, and generated artifacts.
36+
37+
### Gate 3: Unit Coverage For Packages And Primitives
38+
39+
Close unit coverage over protocol, BTD, prompts, agents, tools, executions, pipelines, utilities, and isolated app helpers.
40+
41+
### Gate 4: API And Route Integration Contracts
42+
43+
Close API, UAPI, public route, MCP API, ChatGPT App, persistence, and authorization contract suites.
44+
45+
### Gate 5: Reading Pipeline Integration Coverage
46+
47+
Close primitive and real implementation coverage for `ReadNeedComprehensionSynthesis` and `ReadFitsFindingSynthesis`.
48+
49+
### Gate 6: Conversation And Terminal Integration Coverage
50+
51+
Close cross-surface tests for Conversation, Terminal handoff, Reading state, telemetry, and source-safe disclosure.
52+
53+
### Gate 7: Browser E2E, Accessibility, Responsive, And Visual Proof
54+
55+
Close Playwright/browser paths, visual baselines, accessibility, responsive viewports, and interaction-state matrices.
56+
57+
### Gate 8: Ledger, Database, Storage, Wallet, And Delivery Synchronization
58+
59+
Close synchronization and reconciliation tests for settlement, rights transfer, delivery, repair, and storage projections.
60+
61+
### Gate 9: Local And Staging-Testnet Rehearsal Automation
62+
63+
Close local/staging rehearsal scripts with lane-bound secrets, no tracked credentials, and reproducible operator receipts.
64+
65+
### Gate 10: Prompt Benchmark Smoke And V41 Readiness
66+
67+
Make prompt and PromptPart benchmark commands runnable and reportable without rewriting prompt content, then hand focused prompt evolution to V41.
68+
69+
### Gate 11: V40 Promotion Readiness
70+
71+
Bind all V40 artifacts, proof generation, workflows, and promotion commands into the V40 canonical promotion path.
72+
73+
## Explicitly deferred
74+
75+
- Prompt and PromptPart semantic rewriting, repartitioning, retitling, and excellence auditing are deferred to V41.
76+
- New commercial product features are deferred unless needed to make tests truthful.
77+
- Production-mainnet value-bearing tests remain opt-in until a later promotion mandates them.
78+
79+
## Pre-Implementation Sequence
80+
81+
1. Open `version/v40` and `v40/gate-1-testing-roadmap-opening`.
82+
2. Keep `BITCODE_SPEC.txt` at `V39`.
83+
3. Add the V40 spec family and Gate 1 checker.
84+
4. Update roadmap, docs, package scripts, and workflows for active V39 / draft V40.
85+
5. Validate V40 draft family and V39 active posture.
86+
87+
## Commit-Body Direction
88+
89+
V40 commits should name the testing surface, generated artifact, proof command, and whether the gate closes unit, integration, browser, visual, local/staging, or promotion readiness coverage.

BITCODE_SPEC_V40_NOTES.md

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# Bitcode Spec V40 Notes
2+
3+
## Status
4+
5+
- Version: `V40`
6+
- V40 state: draft opened; notes capture testing-depth requirements over promoted V39
7+
- Current canonical/latest target: `V39`
8+
- Prior canonical anchor: `BITCODE_SPEC_V39.md`
9+
- Prior generated proof appendix: `BITCODE_SPEC_V39_PROVEN.md`
10+
- Generated structured artifact inventory: draft `.bitcode/v40-spec-family-report.json`, `.bitcode/v40-canonical-input-report.json`, and later V40 testing artifacts
11+
- Source parity state: V40 testing gates are planned and not yet closed
12+
13+
## Notes companion rule
14+
15+
These notes clarify V40 testing intent.
16+
They are binding for V40 gate work while `BITCODE_SPEC.txt` remains `V39`, but the active canon remains V39 until V40 promotion.
17+
18+
## Concise current-system reading
19+
20+
V39 is active canon.
21+
V40 is the draft target for exhaustive commercial application testing.
22+
V41 is the next planned target and must focus singularly on Prompt and PromptPart implementation quality.
23+
24+
## Simplified-spec reading rule
25+
26+
Read V40 as: make Bitcode's commercial application provably tested across the whole product and infrastructure surface before changing prompt content deeply in V41.
27+
28+
## V40 testing emphasis
29+
30+
V40 must cover:
31+
32+
- browser E2E across all rich website interactions and state possibilities;
33+
- visual and screenshot comparison proof;
34+
- accessibility and responsive proof;
35+
- API and route integration contracts;
36+
- pipeline primitive tests and real Reading pipeline implementation tests;
37+
- conversation integration and telemetry tests;
38+
- ledger, database, object-storage, wallet, settlement, rights transfer, and delivery synchronization tests;
39+
- unit tests for packages, primitives, isolated implementations, and real commercial implementations;
40+
- prompt benchmark smoke proof to prepare V41.
41+
42+
## V41 prompt-program boundary
43+
44+
V41 should focus on Prompt and PromptPart implementation.
45+
Every raw PromptPart and composed Prompt should be examined, benchmarked, semantically repartitioned where useful, retitled where useful, rewritten where benchmark evidence supports it, catalogued, and tied to inference callsites.
46+
V40 should make those benchmarks runnable and trustworthy, not consume the prompt-rewrite scope.
47+
48+
## Candidate V40 workstreams
49+
50+
- Gate 1 opens specification, roadmap, workflow, and checker posture.
51+
- Gate 2 inventories the whole test surface and missing coverage.
52+
- Gate 3 closes unit coverage breadth.
53+
- Gate 4 closes API and route integrations.
54+
- Gate 5 closes Reading pipeline integration coverage.
55+
- Gate 6 closes Conversation and Terminal integration coverage.
56+
- Gate 7 closes browser, visual, accessibility, responsive, and screenshot proof.
57+
- Gate 8 closes ledger/database/storage/wallet/delivery synchronization.
58+
- Gate 9 closes local and staging-testnet rehearsals.
59+
- Gate 10 closes prompt benchmark smoke and V41 readiness.
60+
- Gate 11 closes promotion readiness.

BITCODE_SPEC_V40_PARITY_MATRIX.md

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
# Bitcode Spec V40 Parity Matrix
2+
3+
## Status
4+
5+
- Version: `V40`
6+
- V40 state: draft opened; parity tracks exhaustive commercial application testing work over promoted V39
7+
- Current canonical/latest target: `V39`
8+
- Prior canonical anchor: `BITCODE_SPEC_V39.md`
9+
- Prior generated proof appendix: `BITCODE_SPEC_V39_PROVEN.md`
10+
- Generated structured artifact inventory: draft `.bitcode/v40-spec-family-report.json`, `.bitcode/v40-canonical-input-report.json`, and later V40 testing artifacts
11+
- Source parity state: V40 testing parity is drafted
12+
13+
## Purpose
14+
15+
This matrix records the V40 testing surfaces that must become promotion-grade before V40 can replace V39 as active canon.
16+
17+
## Audit basis
18+
19+
- `BITCODE_SPEC.txt` -> `V39`
20+
- `BITCODE_SPEC_V39.md`
21+
- `BITCODE_SPEC_V39_PROVEN.md`
22+
- `BITCODE_SPEC_V40.md`
23+
- existing package, API, UI, workflow, and demonstration tests
24+
25+
## V40 implementation matrix
26+
27+
| Area | Required V40 result | Source evidence | Judgment |
28+
| --- | --- | --- | --- |
29+
| Draft family | V40 SPEC, DELTA, NOTES, and PARITY files exist over active V39 | `BITCODE_SPEC_V40.md` family | drafted |
30+
| Roadmap truth | Roadmap states V39 active, V40 draft, V41 prompt-program future | `SPECIFICATIONS_ROADMAP.md` | drafted |
31+
| Gate workflow | Gate quality knows active V39 and draft V40 | `.github/workflows/bitcode-gate-quality.yml` | drafted |
32+
| Canon workflow | Canon quality knows active V39 and draft V40 | `.github/workflows/bitcode-canon-quality.yml` | drafted |
33+
| Browser E2E | Critical website flows have browser proof | future V40 artifacts | not yet implemented |
34+
| Visual proof | Screenshot comparisons are deterministic and reviewable | future V40 artifacts | not yet implemented |
35+
| API integration | Route and API contracts are parseable and source-safe | future V40 artifacts | not yet implemented |
36+
| Pipeline integration | Primitive and real Reading pipeline implementations are tested | future V40 artifacts | not yet implemented |
37+
| Unit coverage | Packages, primitives, isolated implementations, and real implementations have unit coverage | future V40 artifacts | not yet implemented |
38+
| Prompt benchmark smoke | Prompt and PromptPart benchmarks run before V41 | future V40 artifacts | not yet implemented |
39+
40+
## V40 implementation checklist
41+
42+
| Area | Closure requirement | Judgment |
43+
| --- | --- | --- |
44+
| Gate 1 | Open V40 family and check script | drafted |
45+
| Gate 2 | Test inventory artifact and coverage matrix | not yet implemented |
46+
| Gate 3 | Unit coverage closure artifact | not yet implemented |
47+
| Gate 4 | API/route integration artifact | not yet implemented |
48+
| Gate 5 | Reading pipeline integration artifact | not yet implemented |
49+
| Gate 6 | Conversation/Terminal integration artifact | not yet implemented |
50+
| Gate 7 | Browser/visual/accessibility/responsive artifact | not yet implemented |
51+
| Gate 8 | Ledger/database/storage/wallet/delivery sync artifact | not yet implemented |
52+
| Gate 9 | Local/staging rehearsal artifact | not yet implemented |
53+
| Gate 10 | Prompt benchmark smoke and V41 readiness artifact | not yet implemented |
54+
| Gate 11 | Promotion readiness artifact and workflow | not yet implemented |
55+
56+
## V40 accepted boundaries
57+
58+
V40 may refactor test architecture, fixtures, generated artifacts, workflows, and documentation to make commercial quality greenable.
59+
V40 must not rewrite prompt content as its main work; V41 owns prompt excellence.
60+
61+
## V40 completion condition
62+
63+
V40 closes when exhaustive testing is implemented, documented, generated, and greenable across the commercial product, packages, interfaces, pipelines, state synchronization, local/staging rehearsal, and promotion workflow.

README.md

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Bitcode Repository
22

33
`BITCODE_SPEC.txt` is the canonical pointer for active-system work. It currently
4-
resolves to `V38`; V39 is the active draft target for commercial Reading
5-
readiness after the promoted inference correctness canon.
4+
resolves to `V39`; V40 is the active draft target for exhaustive commercial
5+
application testing after the promoted commercial Reading readiness canon.
66

77
## Current Product Posture
88

@@ -260,6 +260,13 @@ AssetPack source, credentials, wallet private material, or private settlement
260260
payloads. Use `pnpm run generate:v39-promotion-readiness`,
261261
`pnpm run check:v39-promotion-readiness`, and `pnpm run check:v39-gate11`
262262
before closing the gate.
263+
V40 Gate 1 opens the exhaustive commercial application testing draft family and
264+
`check:v40-gate1` over active V39. V40 focuses on browser E2E, visual and
265+
screenshot proof, accessibility, responsive behavior, API and route integration,
266+
Reading pipeline integration, Conversation and Terminal integration,
267+
ledger/database/storage/wallet/delivery synchronization, local/staging rehearsal,
268+
unit coverage across packages and primitives, prompt benchmark smoke, and V41
269+
prompt-program readiness.
263270
V39 Gate 2 adds the package-owned `DepositorySupplyIndex` and source-safe
264271
generated artifact `.bitcode/v39-depository-supply-indexing.json`. Deposited
265272
source supply is normalized into rights-aware records with repository, branch,
@@ -514,6 +521,9 @@ through `pnpm run check:v39-gate8` and its generated
514521
`.bitcode/v39-operational-telemetry-repair-readback.json` artifact. V39 Gate 9
515522
is wired through `pnpm run check:v39-gate9` and its generated
516523
`.bitcode/v39-interface-conversation-product-parity.json` artifact.
524+
For V40, Gate 1 opens `version/v40` and the gate-quality posture through
525+
`pnpm run check:v40-gate1` before later gates add generated exhaustive testing
526+
artifacts and the V40 promotion workflow.
517527
V38 Gates 1 through 11 are wired through `pnpm run check:v38-gate1`,
518528
`pnpm run check:v38-gate2`, `pnpm run check:v38-gate3`,
519529
`pnpm run check:v38-gate4`, `pnpm run check:v38-gate5`,
@@ -552,9 +562,9 @@ or promotion validation.
552562
## Key Surfaces
553563

554564
- [BITCODE_SPEC.txt](BITCODE_SPEC.txt) is the canonical version pointer.
555-
- [BITCODE_SPEC_V37.md](BITCODE_SPEC_V37.md) is the active promoted spec family.
556-
- [BITCODE_SPEC_V38.md](BITCODE_SPEC_V38.md) is the active draft target.
557-
- [BITCODE_SPEC_V38_PARITY_MATRIX.md](BITCODE_SPEC_V38_PARITY_MATRIX.md) tracks V38 gate parity.
565+
- [BITCODE_SPEC_V39.md](BITCODE_SPEC_V39.md) is the active promoted spec family.
566+
- [BITCODE_SPEC_V40.md](BITCODE_SPEC_V40.md) is the active draft target.
567+
- [BITCODE_SPEC_V40_PARITY_MATRIX.md](BITCODE_SPEC_V40_PARITY_MATRIX.md) tracks V40 gate parity.
558568
- [uapi/README.md](uapi/README.md) documents the commercial website/API surface.
559569
- [uapi/app/terminal/README.md](uapi/app/terminal/README.md) documents Terminal.
560570
- [uapi/app/exchange/README.md](uapi/app/exchange/README.md) documents Exchange.

0 commit comments

Comments
 (0)