Skip to content

Commit ee48119

Browse files
V42 Gate 1: Preserve promoted canon proof compatibility
Teach V40 and V41 protocol proof predicates to accept the promoted V41 / draft V42 roadmap posture while preserving their original closure-anchor checks. Extend the protocol package boundary test to recognize the current V41 active canon and V42 draft target.
1 parent f502512 commit ee48119

8 files changed

Lines changed: 39 additions & 10 deletions

packages/protocol/src/canonical/v40-api-integration-contracts.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -365,7 +365,12 @@ function buildPredicateResults(repoRoot) {
365365
predicateResult('notes-document-gate4', 'BITCODE_SPEC_V40_NOTES.md', notes.includes('Gate 4 implementation notes') && notes.includes('API route integration contracts')),
366366
predicateResult('parity-documents-gate4', 'BITCODE_SPEC_V40_PARITY_MATRIX.md', parity.includes('v40-api-integration-contracts') && parity.includes('| Gate 4 | API/route integration artifact | implemented |')),
367367
predicateResult('roadmap-advanced-through-gate4', 'SPECIFICATIONS_ROADMAP.md', roadmap.includes('V40 Gate 4 closure anchor')),
368-
predicateResult('roadmap-documents-v41-prompt-programs', 'SPECIFICATIONS_ROADMAP.md', roadmap.includes('V41 should focus singularly on Prompt and PromptPart implementation') && roadmap.includes('meaningfully benchmarkable semantic parts')),
368+
predicateResult(
369+
'roadmap-documents-v41-prompt-programs',
370+
'SPECIFICATIONS_ROADMAP.md',
371+
roadmap.includes('| V41 | `BITCODE_SPEC_V41.md` | active canon | Prompt and PromptPart excellence') &&
372+
roadmap.includes('meaningfully benchmarkable semantic parts'),
373+
),
369374
...rowPredicates,
370375
];
371376
}

packages/protocol/src/canonical/v40-browser-e2e-visual-proof.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -495,7 +495,14 @@ function buildPredicateResults(repoRoot) {
495495
predicateResult('delta-documents-gate7', 'BITCODE_SPEC_V40_DELTA.md', delta.includes('Gate 7 closes with package-backed `V40BrowserE2eVisualProof`')),
496496
predicateResult('notes-document-gate7', 'BITCODE_SPEC_V40_NOTES.md', notes.includes('Gate 7 implementation notes') && notes.includes('browser E2E, visual, accessibility, and responsive proof')),
497497
predicateResult('parity-documents-gate7', 'BITCODE_SPEC_V40_PARITY_MATRIX.md', parity.includes('v40-browser-e2e-visual-proof') && parity.includes('| Gate 7 | Browser/visual/accessibility/responsive artifact | implemented |')),
498-
predicateResult('roadmap-advanced-through-gate7', 'SPECIFICATIONS_ROADMAP.md', (/Current working gate: V40 Gate (?:7|8|9|10|11)\b/u.test(roadmap) || roadmap.includes('Latest closed version: V40')) && roadmap.includes('V40 Gate 7 closure anchor')),
498+
predicateResult(
499+
'roadmap-advanced-through-gate7',
500+
'SPECIFICATIONS_ROADMAP.md',
501+
(/Current working gate: V40 Gate (?:7|8|9|10|11)\b/u.test(roadmap) ||
502+
roadmap.includes('Latest closed version: V40') ||
503+
roadmap.includes('Recent V40 closure anchor')) &&
504+
roadmap.includes('V40 Gate 7 closure anchor'),
505+
),
499506
predicateResult('readmes-document-gate7', 'README.md', rootReadme.includes('V40 Gate 7') && protocolReadme.includes('V40BrowserE2eVisualProof')),
500507
...rowPredicates,
501508
];

packages/protocol/src/canonical/v40-conversation-terminal-integration.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -479,7 +479,12 @@ function buildPredicateResults(repoRoot) {
479479
roadmap.includes('Recent V40 closure anchor')),
480480
),
481481
predicateResult('readmes-document-gate6', 'README.md', rootReadme.includes('V40 Gate 6') && protocolReadme.includes('V40ConversationTerminalIntegration')),
482-
predicateResult('roadmap-preserves-v41-prompt-programs', 'SPECIFICATIONS_ROADMAP.md', roadmap.includes('V41 should focus singularly on Prompt and PromptPart implementation') && roadmap.includes('prompts as programs')),
482+
predicateResult(
483+
'roadmap-preserves-v41-prompt-programs',
484+
'SPECIFICATIONS_ROADMAP.md',
485+
roadmap.includes('| V41 | `BITCODE_SPEC_V41.md` | active canon | Prompt and PromptPart excellence') &&
486+
roadmap.includes('prompts as programs'),
487+
),
483488
...rowPredicates,
484489
];
485490
}

packages/protocol/src/canonical/v40-reading-pipeline-integration-coverage.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -497,7 +497,12 @@ function buildPredicateResults(repoRoot) {
497497
roadmap.includes('Latest closed version: V40 Exhaustive Commercial Application Testing') ||
498498
roadmap.includes('Recent V40 closure anchor')),
499499
),
500-
predicateResult('roadmap-preserves-v41-prompt-programs', 'SPECIFICATIONS_ROADMAP.md', roadmap.includes('V41 should focus singularly on Prompt and PromptPart implementation') && roadmap.includes('prompts as programs')),
500+
predicateResult(
501+
'roadmap-preserves-v41-prompt-programs',
502+
'SPECIFICATIONS_ROADMAP.md',
503+
roadmap.includes('| V41 | `BITCODE_SPEC_V41.md` | active canon | Prompt and PromptPart excellence') &&
504+
roadmap.includes('prompts as programs'),
505+
),
501506
...rowPredicates,
502507
];
503508
}

packages/protocol/src/canonical/v41-conversation-tool-interface-prompt-rewrite.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -866,9 +866,11 @@ function buildPredicateResults(repoRoot) {
866866
'conversation-tool-interface-tests-docs-workflows',
867867
SOURCE_ROOTS.roadmap,
868868
roadmap.includes('V41 Gate 7 closure anchor') &&
869-
/Current working gate: V41 Gate (?:7|8|9)/u.test(roadmap) &&
870-
(/Next queued gate after V41 Gate (?:7|8): V41 (?:Prompt Benchmark Report And Telemetry Integration|Promotion Readiness)/u.test(roadmap) ||
871-
/V41 Gate 9 closure anchor/u.test(roadmap)),
869+
((/Current working gate: V41 Gate (?:7|8|9)/u.test(roadmap) &&
870+
(/Next queued gate after V41 Gate (?:7|8): V41 (?:Prompt Benchmark Report And Telemetry Integration|Promotion Readiness)/u.test(roadmap) ||
871+
/V41 Gate 9 closure anchor/u.test(roadmap))) ||
872+
/Latest closed version: V41 Prompt And PromptPart Excellence/u.test(roadmap) ||
873+
/Recent V41 closure anchor/u.test(roadmap)),
872874
),
873875
predicate(
874876
'readmes-document-gate7-helpers',

packages/protocol/src/canonical/v41-prompt-program-benchmark-report.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -831,8 +831,10 @@ function buildPredicateResults(repoRoot, context) {
831831
'gate8-tests-docs-workflows',
832832
SOURCE_ROOTS.roadmap,
833833
roadmap.includes('V41 Gate 8 closure anchor')
834-
&& /Current working gate: V41 Gate (?:8|9)/u.test(roadmap)
835-
&& (roadmap.includes('Next queued gate after V41 Gate 8') || roadmap.includes('V41 Gate 9 closure anchor')),
834+
&& ((/Current working gate: V41 Gate (?:8|9)/u.test(roadmap)
835+
&& (roadmap.includes('Next queued gate after V41 Gate 8') || roadmap.includes('V41 Gate 9 closure anchor')))
836+
|| /Latest closed version: V41 Prompt And PromptPart Excellence/u.test(roadmap)
837+
|| /Recent V41 closure anchor/u.test(roadmap)),
836838
),
837839
predicate(
838840
'readmes-document-gate8-helpers',

packages/protocol/src/canonical/v41-readfitsfinding-prompt-hardening.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -578,7 +578,9 @@ function predicatesForRow(repoRoot, rowData) {
578578
'docs.current-gate-6',
579579
rowId,
580580
SOURCE_ROOTS.roadmap,
581-
/Current working gate: V41 Gate (?:6|7|8|9)/u.test(source),
581+
/Current working gate: V41 Gate (?:6|7|8|9)/u.test(source) ||
582+
/Latest closed version: V41 Prompt And PromptPart Excellence/u.test(source) ||
583+
/Recent V41 closure anchor/u.test(source),
582584
),
583585
predicate(
584586
'docs.next-gate-7',

packages/protocol/test/protocol-package-boundary.test.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ test('@bitcode/protocol commercial formalization exports package-native canon he
6060
V38: { activeCanon: 'V38', draftTarget: 'V39' },
6161
V39: { activeCanon: 'V39', draftTarget: 'V40' },
6262
V40: { activeCanon: 'V40', draftTarget: 'V41' },
63+
V41: { activeCanon: 'V41', draftTarget: 'V42' },
6364
};
6465
const expectedPosture = expectedPostureByPointer[pointer];
6566

0 commit comments

Comments
 (0)