codex-workflow-v2 2.0.0-beta.1 → 2.0.0-beta.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. package/README.md +94 -12
  2. package/dist/src/alpha6/adoption.js +13 -3
  3. package/dist/src/alpha6/adoption.js.map +1 -1
  4. package/dist/src/alpha6/handoff.d.ts +26 -2
  5. package/dist/src/alpha6/handoff.js +277 -29
  6. package/dist/src/alpha6/handoff.js.map +1 -1
  7. package/dist/src/alpha6/mechanical-feasibility.d.ts +7 -0
  8. package/dist/src/alpha6/mechanical-feasibility.js +303 -0
  9. package/dist/src/alpha6/mechanical-feasibility.js.map +1 -0
  10. package/dist/src/alpha6/milestone.d.ts +37 -2
  11. package/dist/src/alpha6/milestone.js +472 -33
  12. package/dist/src/alpha6/milestone.js.map +1 -1
  13. package/dist/src/alpha6/plan-integrity.d.ts +14 -0
  14. package/dist/src/alpha6/plan-integrity.js +127 -0
  15. package/dist/src/alpha6/plan-integrity.js.map +1 -0
  16. package/dist/src/alpha6/plan-risk.d.ts +1 -0
  17. package/dist/src/alpha6/plan-risk.js +15 -7
  18. package/dist/src/alpha6/plan-risk.js.map +1 -1
  19. package/dist/src/alpha6/remediation.d.ts +2 -1
  20. package/dist/src/alpha6/remediation.js +186 -9
  21. package/dist/src/alpha6/remediation.js.map +1 -1
  22. package/dist/src/alpha6/review.d.ts +3 -0
  23. package/dist/src/alpha6/review.js +24 -0
  24. package/dist/src/alpha6/review.js.map +1 -1
  25. package/dist/src/cli.js +486 -46
  26. package/dist/src/cli.js.map +1 -1
  27. package/dist/src/contracts.d.ts +238 -6
  28. package/dist/src/contracts.js +1 -1
  29. package/dist/src/credential-output.d.ts +10 -0
  30. package/dist/src/credential-output.js +73 -0
  31. package/dist/src/credential-output.js.map +1 -0
  32. package/dist/src/dependency-provenance.d.ts +19 -0
  33. package/dist/src/dependency-provenance.js +185 -0
  34. package/dist/src/dependency-provenance.js.map +1 -0
  35. package/dist/src/errors.d.ts +1 -1
  36. package/dist/src/errors.js.map +1 -1
  37. package/dist/src/git.d.ts +1 -1
  38. package/dist/src/git.js +13 -5
  39. package/dist/src/git.js.map +1 -1
  40. package/dist/src/index.d.ts +2 -1
  41. package/dist/src/index.js +2 -1
  42. package/dist/src/index.js.map +1 -1
  43. package/dist/src/lifecycle/canonical-hash.d.ts +6 -0
  44. package/dist/src/lifecycle/canonical-hash.js +24 -0
  45. package/dist/src/lifecycle/canonical-hash.js.map +1 -0
  46. package/dist/src/lifecycle/catalog.d.ts +26 -0
  47. package/dist/src/lifecycle/catalog.js +208 -0
  48. package/dist/src/lifecycle/catalog.js.map +1 -0
  49. package/dist/src/lifecycle/compiler-inspection.d.ts +48 -0
  50. package/dist/src/lifecycle/compiler-inspection.js +29 -0
  51. package/dist/src/lifecycle/compiler-inspection.js.map +1 -0
  52. package/dist/src/lifecycle/core-static-readiness.d.ts +6 -0
  53. package/dist/src/lifecycle/core-static-readiness.js +130 -0
  54. package/dist/src/lifecycle/core-static-readiness.js.map +1 -0
  55. package/dist/src/lifecycle/corrective-replan-authority.d.ts +53 -0
  56. package/dist/src/lifecycle/corrective-replan-authority.js +139 -0
  57. package/dist/src/lifecycle/corrective-replan-authority.js.map +1 -0
  58. package/dist/src/lifecycle/corrective-replan-binding-manifest.d.ts +21 -0
  59. package/dist/src/lifecycle/corrective-replan-binding-manifest.js +35 -0
  60. package/dist/src/lifecycle/corrective-replan-binding-manifest.js.map +1 -0
  61. package/dist/src/lifecycle/corrective-replan-credential-core.d.ts +86 -0
  62. package/dist/src/lifecycle/corrective-replan-credential-core.js +563 -0
  63. package/dist/src/lifecycle/corrective-replan-credential-core.js.map +1 -0
  64. package/dist/src/lifecycle/corrective-replan-credential-schema.d.ts +17 -0
  65. package/dist/src/lifecycle/corrective-replan-credential-schema.js +44 -0
  66. package/dist/src/lifecycle/corrective-replan-credential-schema.js.map +1 -0
  67. package/dist/src/lifecycle/corrective-replan-credentials.d.ts +47 -0
  68. package/dist/src/lifecycle/corrective-replan-credentials.js +103 -0
  69. package/dist/src/lifecycle/corrective-replan-credentials.js.map +1 -0
  70. package/dist/src/lifecycle/corrective-replan.d.ts +64 -0
  71. package/dist/src/lifecycle/corrective-replan.js +553 -0
  72. package/dist/src/lifecycle/corrective-replan.js.map +1 -0
  73. package/dist/src/lifecycle/evaluator.d.ts +2 -0
  74. package/dist/src/lifecycle/evaluator.js +35 -0
  75. package/dist/src/lifecycle/evaluator.js.map +1 -0
  76. package/dist/src/lifecycle/fingerprint.d.ts +31 -0
  77. package/dist/src/lifecycle/fingerprint.js +388 -0
  78. package/dist/src/lifecycle/fingerprint.js.map +1 -0
  79. package/dist/src/lifecycle/immutable.d.ts +1 -0
  80. package/dist/src/lifecycle/immutable.js +10 -0
  81. package/dist/src/lifecycle/immutable.js.map +1 -0
  82. package/dist/src/lifecycle/implementation-table.d.ts +29 -0
  83. package/dist/src/lifecycle/implementation-table.js +87 -0
  84. package/dist/src/lifecycle/implementation-table.js.map +1 -0
  85. package/dist/src/lifecycle/index.d.ts +4 -0
  86. package/dist/src/lifecycle/index.js +5 -0
  87. package/dist/src/lifecycle/index.js.map +1 -0
  88. package/dist/src/lifecycle/schema-artifact.d.ts +12 -0
  89. package/dist/src/lifecycle/schema-artifact.js +214 -0
  90. package/dist/src/lifecycle/schema-artifact.js.map +1 -0
  91. package/dist/src/lifecycle/semantic-registry.d.ts +6 -0
  92. package/dist/src/lifecycle/semantic-registry.js +489 -0
  93. package/dist/src/lifecycle/semantic-registry.js.map +1 -0
  94. package/dist/src/lifecycle/types.d.ts +718 -0
  95. package/dist/src/lifecycle/types.js +4 -0
  96. package/dist/src/lifecycle/types.js.map +1 -0
  97. package/dist/src/observation.d.ts +20 -0
  98. package/dist/src/observation.js +171 -0
  99. package/dist/src/observation.js.map +1 -0
  100. package/dist/src/reviewer.d.ts +43 -1
  101. package/dist/src/reviewer.js +203 -50
  102. package/dist/src/reviewer.js.map +1 -1
  103. package/dist/src/state/corrective-replan-executor.d.ts +64 -0
  104. package/dist/src/state/corrective-replan-executor.js +608 -0
  105. package/dist/src/state/corrective-replan-executor.js.map +1 -0
  106. package/dist/src/state/corrective-replan-public-schema.d.ts +3 -0
  107. package/dist/src/state/corrective-replan-public-schema.js +43 -0
  108. package/dist/src/state/corrective-replan-public-schema.js.map +1 -0
  109. package/dist/src/state/corrective-replan-public.d.ts +95 -0
  110. package/dist/src/state/corrective-replan-public.js +665 -0
  111. package/dist/src/state/corrective-replan-public.js.map +1 -0
  112. package/dist/src/state/corrective-replan-transaction.d.ts +160 -0
  113. package/dist/src/state/corrective-replan-transaction.js +730 -0
  114. package/dist/src/state/corrective-replan-transaction.js.map +1 -0
  115. package/dist/src/state/corrective-yield-executor.d.ts +31 -0
  116. package/dist/src/state/corrective-yield-executor.js +236 -0
  117. package/dist/src/state/corrective-yield-executor.js.map +1 -0
  118. package/dist/src/state/corrective-yield-transaction.d.ts +97 -0
  119. package/dist/src/state/corrective-yield-transaction.js +591 -0
  120. package/dist/src/state/corrective-yield-transaction.js.map +1 -0
  121. package/dist/src/state/lock.d.ts +76 -3
  122. package/dist/src/state/lock.js +611 -30
  123. package/dist/src/state/lock.js.map +1 -1
  124. package/dist/src/state/store.d.ts +3 -0
  125. package/dist/src/state/store.js +65 -12
  126. package/dist/src/state/store.js.map +1 -1
  127. package/dist/src/transition-core.d.ts +67 -0
  128. package/dist/src/transition-core.js +318 -0
  129. package/dist/src/transition-core.js.map +1 -0
  130. package/dist/src/version.d.ts +1 -1
  131. package/dist/src/version.js +1 -1
  132. package/dist/src/version.js.map +1 -1
  133. package/dist/src/workflow.d.ts +88 -24
  134. package/dist/src/workflow.js +1647 -270
  135. package/dist/src/workflow.js.map +1 -1
  136. package/docs/autonomy-guardrails.md +61 -1
  137. package/docs/beta11-plan-integrity-recovery-brief.md +38 -0
  138. package/docs/beta2-initial-assembly-navigation-brief.md +616 -0
  139. package/docs/delegated-approval.md +26 -1
  140. package/docs/development-flow.md +63 -8
  141. package/docs/lifecycle/state-machine-stabilization.md +641 -0
  142. package/docs/pdf/README.md +24 -0
  143. package/docs/pdf/codex-workflow-v2-architecture-ru.pdf +0 -0
  144. package/docs/pdf/codex-workflow-v2-chat-only-guide-ru.pdf +0 -0
  145. package/docs/pdf/codex-workflow-v2-technical-reference-ru.pdf +0 -0
  146. package/docs/pdf/requirements.txt +1 -0
  147. package/docs/pdf/sources/codex-workflow-v2-architecture-ru.md +234 -0
  148. package/docs/pdf/sources/codex-workflow-v2-chat-only-guide-ru.md +334 -0
  149. package/docs/pdf/sources/codex-workflow-v2-technical-reference-ru.md +413 -0
  150. package/docs/problem-briefs/01-pre-implementation-integrity.md +478 -0
  151. package/docs/problem-briefs/02-minimal-step-integrity.md +411 -0
  152. package/docs/problem-briefs/03-minimal-agent-context-integrity.md +358 -0
  153. package/docs/problem-briefs/04-task-dependency-and-structural-replacement-integrity.md +566 -0
  154. package/docs/problem-briefs/BRIEF-TEMPLATE.md +56 -0
  155. package/docs/problem-briefs/README.md +120 -0
  156. package/docs/problem-briefs/evidence/p01-mechanical-feasibility-corpus.md +90 -0
  157. package/docs/problem-briefs/evidence/signal-v4-pre-m3-replay.md +246 -0
  158. package/docs/release.md +30 -6
  159. package/docs/split-required-recovery.md +19 -25
  160. package/docs/stable-release-defect-register.md +465 -3
  161. package/docs/updating-existing-project.md +59 -4
  162. package/docs/validation-report.md +124 -56
  163. package/package.json +9 -1
  164. package/plugins/codex-workflow-gateway/.codex-plugin/plugin.json +10 -3
  165. package/plugins/codex-workflow-gateway/references/protocol.md +92 -4
  166. package/plugins/codex-workflow-gateway/scripts/chat-registry.mjs +376 -0
  167. package/plugins/codex-workflow-gateway/skills/codex-workflow-gateway/SKILL.md +263 -4
  168. package/references/state-machine.md +13 -6
  169. package/roles/delivery-coordinator.md +39 -0
  170. package/schemas/adoption-posture-event.schema.json +1 -1
  171. package/schemas/authorization-event.schema.json +64 -1
  172. package/schemas/context-envelope.schema.json +1 -1
  173. package/schemas/corrective-decision-event.schema.json +48 -3
  174. package/schemas/corrective-replan-credentials.private.schema.json +98 -0
  175. package/schemas/corrective-replan-execution-event.private.schema.json +53 -0
  176. package/schemas/corrective-replan-public.schema.json +142 -0
  177. package/schemas/corrective-replan-task-transaction.private.schema.json +151 -0
  178. package/schemas/corrective-yield-task-transaction.private.schema.json +98 -0
  179. package/schemas/milestone-scope-change-event.schema.json +6 -1
  180. package/schemas/milestone.schema.json +6 -1
  181. package/schemas/remediation-event.schema.json +11 -1
  182. package/schemas/task-handoff-event.schema.json +19 -3
  183. package/schemas/task.schema.json +24 -1
  184. package/schemas/transition-definition.schema.json +2609 -0
  185. package/schemas/transition-payloads.schema.json +140 -0
  186. package/scripts/generate-pdf-docs.py +512 -0
  187. package/scripts/run-pdf-docs.mjs +62 -0
@@ -0,0 +1,214 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { readFileSync } from 'node:fs';
3
+ import { Ajv2020 } from 'ajv/dist/2020.js';
4
+ import { hashCanonical } from './fingerprint.js';
5
+ import { deepFreeze } from './immutable.js';
6
+ import { correctiveReplanCredentialSchemaArtifacts, correctiveReplanCredentialSchemaValidators, } from './corrective-replan-credential-schema.js';
7
+ const schemaUrl = new URL('../../../schemas/transition-definition.schema.json', import.meta.url);
8
+ const schemaBytes = readFileSync(schemaUrl);
9
+ const schemaDocument = JSON.parse(schemaBytes.toString('utf8'));
10
+ const vocabularyDocument = extractVocabulary(schemaDocument);
11
+ const ajv = new Ajv2020({ allErrors: true, strict: true, formats: { 'date-time': true } });
12
+ if (!ajv.validateSchema(schemaDocument)) {
13
+ throw new TypeError(`Transition definition schema artifact is invalid: ${ajv.errorsText(ajv.errors)}`);
14
+ }
15
+ const validateSchemaDocument = ajv.compile(schemaDocument);
16
+ const payloadSchemaUrl = new URL('../../../schemas/transition-payloads.schema.json', import.meta.url);
17
+ const payloadSchemaBytes = readFileSync(payloadSchemaUrl);
18
+ const payloadSchemaDocument = JSON.parse(payloadSchemaBytes.toString('utf8'));
19
+ export const transitionDefinitionDocumentSha256 = createHash('sha256').update(schemaBytes).digest('hex');
20
+ export const transitionDefinitionVocabularySha256 = hashCanonical(vocabularyDocument);
21
+ const transitionDefinitionArtifact = {
22
+ id: 'schema.transition-definition',
23
+ version: 1,
24
+ implementationId: 'implementation.schema-artifact.transition-definition',
25
+ implementationVersion: 1,
26
+ documentSha256: transitionDefinitionDocumentSha256,
27
+ schemaPointer: '#',
28
+ subschemaSha256: hashCanonical(schemaDocument),
29
+ document: schemaDocument,
30
+ };
31
+ const transitionDefinitionValidator = {
32
+ id: transitionDefinitionArtifact.id,
33
+ version: transitionDefinitionArtifact.version,
34
+ implementationId: 'implementation.schema-validator.ajv-draft-2020-12.transition-definition',
35
+ implementationVersion: 1,
36
+ artifactSha256: transitionDefinitionArtifact.documentSha256,
37
+ subschemaSha256: transitionDefinitionArtifact.subschemaSha256,
38
+ callable: (raw) => validateSchemaDocument(raw) === true,
39
+ };
40
+ const payloadDefinitionBySchemaId = {
41
+ 'schema.task-id': 'taskId',
42
+ 'schema.expected-revision': 'expectedRevision',
43
+ 'schema.task-plan-input': 'taskPlanInput',
44
+ 'schema.plan-risk-audit-input': 'planRiskAuditInput',
45
+ 'schema.corrective-replan-snapshot': 'correctiveReplanSnapshot',
46
+ 'schema.corrective-replan-bindings': 'correctiveReplanBindings',
47
+ 'schema.task-state-readback': 'taskStateReadback',
48
+ };
49
+ export const transitionPayloadDocumentSha256 = createHash('sha256').update(payloadSchemaBytes).digest('hex');
50
+ const payloadArtifactRows = Object.entries(payloadDefinitionBySchemaId).map(([id, definitionName]) => ({
51
+ id, version: 1,
52
+ implementationId: `implementation.schema-artifact.transition-payloads.${definitionName}`,
53
+ implementationVersion: 1,
54
+ documentSha256: transitionPayloadDocumentSha256,
55
+ schemaPointer: `#/$defs/${definitionName}`,
56
+ subschemaSha256: hashCanonical(payloadSchemaDocument.$defs[definitionName]),
57
+ document: payloadSchemaDocument,
58
+ }));
59
+ ajv.addSchema(payloadSchemaDocument, payloadSchemaDocument.$id);
60
+ const payloadValidatorRows = payloadArtifactRows.map((artifact) => {
61
+ const definitionName = payloadDefinitionBySchemaId[artifact.id];
62
+ const validate = ajv.compile({ $ref: `${payloadSchemaDocument.$id}#/$defs/${definitionName}` });
63
+ return {
64
+ id: artifact.id,
65
+ version: artifact.version,
66
+ implementationId: `implementation.schema-validator.ajv-draft-2020-12.${definitionName}`,
67
+ implementationVersion: 1,
68
+ artifactSha256: artifact.documentSha256,
69
+ subschemaSha256: artifact.subschemaSha256,
70
+ callable: (raw) => validate(raw) === true,
71
+ };
72
+ });
73
+ const credentialPayloadIds = new Set([
74
+ 'schema.corrective-replan-binding',
75
+ 'schema.corrective-replan-plan-validation-attestation',
76
+ 'schema.corrective-replan-receipt',
77
+ ]);
78
+ const credentialPayloadArtifacts = correctiveReplanCredentialSchemaArtifacts
79
+ .filter((entry) => credentialPayloadIds.has(entry.id))
80
+ .map((entry) => ({
81
+ id: entry.id, version: entry.version, implementationId: entry.implementationId,
82
+ implementationVersion: entry.implementationVersion, documentSha256: entry.documentBytesSha256,
83
+ schemaPointer: entry.schemaPointer, subschemaSha256: entry.subschemaCanonicalSha256, document: entry.document,
84
+ }));
85
+ const credentialPayloadValidators = correctiveReplanCredentialSchemaValidators
86
+ .filter((entry) => credentialPayloadIds.has(entry.id))
87
+ .map((entry) => ({
88
+ id: entry.id, version: entry.version, implementationId: entry.implementationId,
89
+ implementationVersion: entry.implementationVersion, artifactSha256: entry.artifactDocumentBytesSha256,
90
+ subschemaSha256: entry.subschemaCanonicalSha256, callable: entry.callable,
91
+ }));
92
+ const taskTransactionUrl = new URL('../../../schemas/corrective-replan-task-transaction.private.schema.json', import.meta.url);
93
+ const taskTransactionBytes = readFileSync(taskTransactionUrl);
94
+ const taskTransactionDocument = JSON.parse(taskTransactionBytes.toString('utf8'));
95
+ const taskTransactionSha256 = createHash('sha256').update(taskTransactionBytes).digest('hex');
96
+ const validateTaskTransaction = ajv.compile(taskTransactionDocument);
97
+ const taskTransactionArtifact = {
98
+ id: 'schema.corrective-replan-task-transaction', version: 1,
99
+ implementationId: 'implementation.schema-artifact.corrective-replan-task-transaction', implementationVersion: 1,
100
+ documentSha256: taskTransactionSha256, schemaPointer: '#', subschemaSha256: hashCanonical(taskTransactionDocument),
101
+ document: taskTransactionDocument,
102
+ };
103
+ const taskTransactionValidator = {
104
+ id: taskTransactionArtifact.id, version: 1,
105
+ implementationId: 'implementation.schema-validator.ajv-draft-2020-12.corrective-replan-task-transaction', implementationVersion: 1,
106
+ artifactSha256: taskTransactionArtifact.documentSha256, subschemaSha256: taskTransactionArtifact.subschemaSha256,
107
+ callable: (raw) => validateTaskTransaction(raw) === true,
108
+ };
109
+ export const installedTransitionDefinitionArtifact = deepFreeze(transitionDefinitionArtifact);
110
+ export const installedTransitionDefinitionValidator = deepFreeze(transitionDefinitionValidator);
111
+ export const installedPayloadSchemaArtifacts = deepFreeze([
112
+ ...payloadArtifactRows, ...credentialPayloadArtifacts, taskTransactionArtifact,
113
+ ]);
114
+ export const installedPayloadSchemaValidators = deepFreeze([
115
+ ...payloadValidatorRows, ...credentialPayloadValidators, taskTransactionValidator,
116
+ ]);
117
+ export function createTransitionSchemaArtifact(registry) {
118
+ if (registryVocabularySha256(registry) !== hashCanonical(vocabularyDocument)) {
119
+ throw new TypeError('Transition definition vocabulary artifact is stale for the installed semantic registry.');
120
+ }
121
+ validateSchemaReferenceVocabulary(schemaDocument, vocabularyDocument);
122
+ return {
123
+ documentSha256: transitionDefinitionDocumentSha256,
124
+ vocabularySha256: transitionDefinitionVocabularySha256,
125
+ };
126
+ }
127
+ export function registryVocabularySha256(registry) {
128
+ return hashCanonical(registryVocabulary(registry));
129
+ }
130
+ export function registryVocabulary(registry) {
131
+ const entries = Object.fromEntries(Object.entries(registry)
132
+ .filter((entry) => Array.isArray(entry[1])
133
+ && entry[1].every((candidate) => candidate !== null
134
+ && typeof candidate === 'object'
135
+ && typeof candidate.id === 'string'
136
+ && Number.isInteger(candidate.version)))
137
+ .map(([category, entries]) => [
138
+ category,
139
+ entries.map((entry) => `${entry.id}@${entry.version}`).sort((left, right) => left.localeCompare(right)),
140
+ ])
141
+ .sort(([left], [right]) => left.localeCompare(right)));
142
+ return {
143
+ ...entries,
144
+ projectionFields: registry.projections
145
+ .flatMap((projection) => projection.fieldIds.map((fieldId) => `${projection.id}@${projection.version}:${fieldId}`))
146
+ .sort((left, right) => left.localeCompare(right)),
147
+ };
148
+ }
149
+ export function installedTransitionDefinitionVocabulary() {
150
+ return vocabularyDocument;
151
+ }
152
+ function extractVocabulary(document) {
153
+ const candidate = document;
154
+ const vocabulary = candidate.$defs?.semanticRegistryVocabulary?.const;
155
+ if (vocabulary === null || typeof vocabulary !== 'object' || Array.isArray(vocabulary)) {
156
+ throw new TypeError('Transition definition schema has no embedded semantic registry vocabulary.');
157
+ }
158
+ for (const [category, entries] of Object.entries(vocabulary)) {
159
+ if (!Array.isArray(entries) || !entries.every((entry) => typeof entry === 'string')) {
160
+ throw new TypeError(`Transition definition schema vocabulary category ${category} is invalid.`);
161
+ }
162
+ }
163
+ return vocabulary;
164
+ }
165
+ function validateSchemaReferenceVocabulary(document, vocabulary) {
166
+ const definitionByCategory = {
167
+ inputs: 'inputRef',
168
+ projections: 'projectionRef',
169
+ hashPolicies: 'hashPolicyRef',
170
+ identities: 'identityRef',
171
+ identityComparators: 'identityComparatorRef',
172
+ principalBases: 'principalBasisRef',
173
+ capabilities: 'capabilityRef',
174
+ credentialPolicies: 'credentialPolicyRef',
175
+ credentialVerifiers: 'credentialVerifierRef',
176
+ delegationPolicies: 'delegationPolicyRef',
177
+ ownershipPolicies: 'ownershipPolicyRef',
178
+ guardEvaluators: 'guardEvaluatorRef',
179
+ effectAdapters: 'effectAdapterRef',
180
+ resources: 'resourceRef',
181
+ lockPolicies: 'lockPolicyRef',
182
+ executionKeyPolicies: 'executionKeyPolicyRef',
183
+ journalSchemas: 'journalSchemaRef',
184
+ journalAdapters: 'journalAdapterRef',
185
+ recoveryAdapters: 'recoveryAdapterRef',
186
+ readbackAdapters: 'readbackAdapterRef',
187
+ releaseProfiles: 'releaseProfileRef',
188
+ coverageProfiles: 'coverageProfileRef',
189
+ limitations: 'limitationRef',
190
+ };
191
+ for (const [category, definitionName] of Object.entries(definitionByCategory)) {
192
+ const registered = (vocabulary[category] ?? []).map((entry) => entry.slice(0, entry.lastIndexOf('@'))).sort();
193
+ const schemaIds = referenceIds(document, definitionName);
194
+ if (hashCanonical(registered) !== hashCanonical(schemaIds)) {
195
+ throw new TypeError(`Transition definition schema reference ${definitionName} is stale for ${category}.`);
196
+ }
197
+ }
198
+ const projectionFields = new Set((vocabulary.projectionFields ?? []).map((entry) => entry.slice(entry.indexOf(':') + 1)));
199
+ if (hashCanonical([...projectionFields].sort()) !== hashCanonical(referenceIds(document, 'fieldId'))) {
200
+ throw new TypeError('Transition definition schema field vocabulary is stale for registered projections.');
201
+ }
202
+ }
203
+ function referenceIds(document, definitionName) {
204
+ const definition = document.$defs?.[definitionName];
205
+ const idSchema = definitionName === 'fieldId' ? definition : definition?.properties?.id;
206
+ const ids = Array.isArray(idSchema?.enum)
207
+ ? idSchema.enum.filter((entry) => typeof entry === 'string')
208
+ : typeof idSchema?.const === 'string' ? [idSchema.const] : [];
209
+ if (definitionName !== 'fieldId' && definition?.properties?.version?.const !== 1) {
210
+ throw new TypeError(`Transition definition schema reference ${definitionName} has no exact version binding.`);
211
+ }
212
+ return ids.sort((left, right) => left.localeCompare(right));
213
+ }
214
+ //# sourceMappingURL=schema-artifact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-artifact.js","sourceRoot":"","sources":["../../../src/lifecycle/schema-artifact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { RegisteredCoverageProfileRef, RegisteredRef, RegisteredReleaseProfileRef, SemanticRegistry, VersionedRegistryEntry } from './types.js';
2
+ export declare const exactTransitionCoverageProfileRef: RegisteredCoverageProfileRef;
3
+ export declare const exactMutationReleaseProfileRef: RegisteredReleaseProfileRef;
4
+ export declare const transitionSemanticRegistry: SemanticRegistry;
5
+ export declare function validateSemanticRegistry<TRegistry extends SemanticRegistry>(registry: TRegistry): TRegistry;
6
+ export declare function resolveRegistryEntry<TEntry extends VersionedRegistryEntry<string>>(entries: readonly TEntry[], ref: RegisteredRef<string>, label: string): TEntry;