codex-workflow-v2 2.0.0-beta.2 → 2.0.0-beta.4

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 (128) hide show
  1. package/README.md +35 -2
  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 +21 -0
  5. package/dist/src/alpha6/handoff.js +100 -19
  6. package/dist/src/alpha6/handoff.js.map +1 -1
  7. package/dist/src/alpha6/milestone.d.ts +2 -0
  8. package/dist/src/alpha6/milestone.js +15 -0
  9. package/dist/src/alpha6/milestone.js.map +1 -1
  10. package/dist/src/alpha6/plan-risk.d.ts +1 -0
  11. package/dist/src/alpha6/plan-risk.js +6 -0
  12. package/dist/src/alpha6/plan-risk.js.map +1 -1
  13. package/dist/src/cli.js +188 -65
  14. package/dist/src/cli.js.map +1 -1
  15. package/dist/src/contracts.d.ts +111 -5
  16. package/dist/src/contracts.js +1 -1
  17. package/dist/src/credential-output.d.ts +10 -0
  18. package/dist/src/credential-output.js +73 -0
  19. package/dist/src/credential-output.js.map +1 -0
  20. package/dist/src/errors.d.ts +1 -1
  21. package/dist/src/errors.js.map +1 -1
  22. package/dist/src/index.d.ts +1 -1
  23. package/dist/src/index.js +1 -1
  24. package/dist/src/index.js.map +1 -1
  25. package/dist/src/lifecycle/canonical-hash.d.ts +6 -0
  26. package/dist/src/lifecycle/canonical-hash.js +24 -0
  27. package/dist/src/lifecycle/canonical-hash.js.map +1 -0
  28. package/dist/src/lifecycle/catalog.d.ts +26 -0
  29. package/dist/src/lifecycle/catalog.js +208 -0
  30. package/dist/src/lifecycle/catalog.js.map +1 -0
  31. package/dist/src/lifecycle/compiler-inspection.d.ts +48 -0
  32. package/dist/src/lifecycle/compiler-inspection.js +29 -0
  33. package/dist/src/lifecycle/compiler-inspection.js.map +1 -0
  34. package/dist/src/lifecycle/core-static-readiness.d.ts +6 -0
  35. package/dist/src/lifecycle/core-static-readiness.js +130 -0
  36. package/dist/src/lifecycle/core-static-readiness.js.map +1 -0
  37. package/dist/src/lifecycle/corrective-replan-authority.d.ts +53 -0
  38. package/dist/src/lifecycle/corrective-replan-authority.js +139 -0
  39. package/dist/src/lifecycle/corrective-replan-authority.js.map +1 -0
  40. package/dist/src/lifecycle/corrective-replan-binding-manifest.d.ts +21 -0
  41. package/dist/src/lifecycle/corrective-replan-binding-manifest.js +35 -0
  42. package/dist/src/lifecycle/corrective-replan-binding-manifest.js.map +1 -0
  43. package/dist/src/lifecycle/corrective-replan-credential-core.d.ts +86 -0
  44. package/dist/src/lifecycle/corrective-replan-credential-core.js +534 -0
  45. package/dist/src/lifecycle/corrective-replan-credential-core.js.map +1 -0
  46. package/dist/src/lifecycle/corrective-replan-credential-schema.d.ts +17 -0
  47. package/dist/src/lifecycle/corrective-replan-credential-schema.js +44 -0
  48. package/dist/src/lifecycle/corrective-replan-credential-schema.js.map +1 -0
  49. package/dist/src/lifecycle/corrective-replan-credentials.d.ts +47 -0
  50. package/dist/src/lifecycle/corrective-replan-credentials.js +103 -0
  51. package/dist/src/lifecycle/corrective-replan-credentials.js.map +1 -0
  52. package/dist/src/lifecycle/corrective-replan.d.ts +64 -0
  53. package/dist/src/lifecycle/corrective-replan.js +548 -0
  54. package/dist/src/lifecycle/corrective-replan.js.map +1 -0
  55. package/dist/src/lifecycle/evaluator.d.ts +2 -0
  56. package/dist/src/lifecycle/evaluator.js +35 -0
  57. package/dist/src/lifecycle/evaluator.js.map +1 -0
  58. package/dist/src/lifecycle/fingerprint.d.ts +31 -0
  59. package/dist/src/lifecycle/fingerprint.js +388 -0
  60. package/dist/src/lifecycle/fingerprint.js.map +1 -0
  61. package/dist/src/lifecycle/immutable.d.ts +1 -0
  62. package/dist/src/lifecycle/immutable.js +10 -0
  63. package/dist/src/lifecycle/immutable.js.map +1 -0
  64. package/dist/src/lifecycle/implementation-table.d.ts +29 -0
  65. package/dist/src/lifecycle/implementation-table.js +87 -0
  66. package/dist/src/lifecycle/implementation-table.js.map +1 -0
  67. package/dist/src/lifecycle/index.d.ts +4 -0
  68. package/dist/src/lifecycle/index.js +5 -0
  69. package/dist/src/lifecycle/index.js.map +1 -0
  70. package/dist/src/lifecycle/schema-artifact.d.ts +12 -0
  71. package/dist/src/lifecycle/schema-artifact.js +214 -0
  72. package/dist/src/lifecycle/schema-artifact.js.map +1 -0
  73. package/dist/src/lifecycle/semantic-registry.d.ts +6 -0
  74. package/dist/src/lifecycle/semantic-registry.js +489 -0
  75. package/dist/src/lifecycle/semantic-registry.js.map +1 -0
  76. package/dist/src/lifecycle/types.d.ts +718 -0
  77. package/dist/src/lifecycle/types.js +4 -0
  78. package/dist/src/lifecycle/types.js.map +1 -0
  79. package/dist/src/observation.d.ts +20 -0
  80. package/dist/src/observation.js +171 -0
  81. package/dist/src/observation.js.map +1 -0
  82. package/dist/src/state/corrective-replan-executor.d.ts +64 -0
  83. package/dist/src/state/corrective-replan-executor.js +598 -0
  84. package/dist/src/state/corrective-replan-executor.js.map +1 -0
  85. package/dist/src/state/corrective-replan-public-schema.d.ts +3 -0
  86. package/dist/src/state/corrective-replan-public-schema.js +43 -0
  87. package/dist/src/state/corrective-replan-public-schema.js.map +1 -0
  88. package/dist/src/state/corrective-replan-public.d.ts +95 -0
  89. package/dist/src/state/corrective-replan-public.js +618 -0
  90. package/dist/src/state/corrective-replan-public.js.map +1 -0
  91. package/dist/src/state/corrective-replan-transaction.d.ts +158 -0
  92. package/dist/src/state/corrective-replan-transaction.js +723 -0
  93. package/dist/src/state/corrective-replan-transaction.js.map +1 -0
  94. package/dist/src/state/corrective-yield-executor.d.ts +31 -0
  95. package/dist/src/state/corrective-yield-executor.js +236 -0
  96. package/dist/src/state/corrective-yield-executor.js.map +1 -0
  97. package/dist/src/state/corrective-yield-transaction.d.ts +97 -0
  98. package/dist/src/state/corrective-yield-transaction.js +591 -0
  99. package/dist/src/state/corrective-yield-transaction.js.map +1 -0
  100. package/dist/src/state/lock.d.ts +75 -3
  101. package/dist/src/state/lock.js +582 -30
  102. package/dist/src/state/lock.js.map +1 -1
  103. package/dist/src/state/store.d.ts +3 -0
  104. package/dist/src/state/store.js +65 -12
  105. package/dist/src/state/store.js.map +1 -1
  106. package/dist/src/transition-core.d.ts +67 -0
  107. package/dist/src/transition-core.js +318 -0
  108. package/dist/src/transition-core.js.map +1 -0
  109. package/dist/src/version.d.ts +1 -1
  110. package/dist/src/version.js +1 -1
  111. package/dist/src/workflow.d.ts +34 -22
  112. package/dist/src/workflow.js +486 -141
  113. package/dist/src/workflow.js.map +1 -1
  114. package/docs/lifecycle/state-machine-stabilization.md +641 -0
  115. package/docs/release.md +4 -2
  116. package/docs/updating-existing-project.md +9 -0
  117. package/package.json +4 -1
  118. package/schemas/adoption-posture-event.schema.json +1 -1
  119. package/schemas/context-envelope.schema.json +1 -1
  120. package/schemas/corrective-replan-credentials.private.schema.json +98 -0
  121. package/schemas/corrective-replan-execution-event.private.schema.json +53 -0
  122. package/schemas/corrective-replan-public.schema.json +142 -0
  123. package/schemas/corrective-replan-task-transaction.private.schema.json +151 -0
  124. package/schemas/corrective-yield-task-transaction.private.schema.json +98 -0
  125. package/schemas/remediation-event.schema.json +11 -1
  126. package/schemas/task-handoff-event.schema.json +1 -1
  127. package/schemas/transition-definition.schema.json +2609 -0
  128. package/schemas/transition-payloads.schema.json +140 -0
@@ -0,0 +1,208 @@
1
+ import { catalogDefinitionManifestHash, hashCanonical, runtimeCatalogHash, runtimeSemanticFingerprint, transitionDefinitionManifestHash, } from './fingerprint.js';
2
+ import { transitionSemanticRegistry } from './semantic-registry.js';
3
+ import { TRANSITION_DEFINITION_FORMAT_VERSION, } from './types.js';
4
+ export class GuardedTransitionCatalog {
5
+ #definitions;
6
+ catalogHash;
7
+ catalogDefinitionManifestHash;
8
+ constructor(definitions) {
9
+ const indexed = new Map();
10
+ for (const definition of definitions) {
11
+ const id = definition.metadata.transitionId;
12
+ if (indexed.has(id))
13
+ throw new TypeError(`validation.semantic-id.duplicate ${id}`);
14
+ const semantic = validateTransitionDefinitionSemantics(definition);
15
+ if (!semantic.valid)
16
+ throw new TypeError(`${semantic.issues[0].ruleId} ${id}: ${semantic.issues[0].message}`);
17
+ if (definition.guards.length !== definition.metadata.guards.length
18
+ || definition.guards.some((guard, index) => guard.metadata.guardId !== definition.metadata.guards[index]?.guardId)) {
19
+ throw new TypeError(`validation.guard.evaluator-mismatch ${id}`);
20
+ }
21
+ indexed.set(id, definition);
22
+ }
23
+ this.#definitions = indexed;
24
+ this.catalogHash = runtimeCatalogHash(this.serialize());
25
+ this.catalogDefinitionManifestHash = catalogDefinitionManifestHash(this.serialize());
26
+ }
27
+ has(id) { return this.#definitions.has(id); }
28
+ get(id) {
29
+ const definition = this.#definitions.get(id);
30
+ if (!definition)
31
+ throw new TypeError(`Unknown transition definition: ${id}`);
32
+ return definition;
33
+ }
34
+ serialize() {
35
+ return structuredClone([...this.#definitions.values()].map((definition) => ({
36
+ ...definition.metadata,
37
+ runtimeSemanticFingerprint: definition.runtimeSemanticFingerprint,
38
+ semanticFingerprint: definition.semanticFingerprint,
39
+ definitionManifestHash: definition.definitionManifestHash,
40
+ })).sort((left, right) => left.transitionId.localeCompare(right.transitionId)));
41
+ }
42
+ }
43
+ export function validateTransitionDefinitionSemantics(definition) {
44
+ const issues = [];
45
+ let unpacked;
46
+ try {
47
+ unpacked = unpack(definition);
48
+ }
49
+ catch (error) {
50
+ issue(issues, 'validation.reference.unresolved', '/', message(error));
51
+ return report(issues);
52
+ }
53
+ const metadata = unpacked.metadata;
54
+ if (metadata.definitionFormatVersion !== TRANSITION_DEFINITION_FORMAT_VERSION)
55
+ issue(issues, 'validation.definition.format-invalid', '/definitionFormatVersion', 'Definition format must be 4.');
56
+ const namespace = metadata.entity === 'step' ? 'task' : metadata.entity === 'project-memory' ? 'project' : metadata.entity;
57
+ if (!metadata.transitionId.startsWith(`${namespace}.`))
58
+ issue(issues, 'validation.namespace.transition-invalid', '/transitionId', 'Transition namespace does not match entity.', metadata.transitionId);
59
+ if (!metadata.guardNamespace.startsWith(`${namespace}.`))
60
+ issue(issues, 'validation.guard.namespace-invalid', '/guardNamespace', 'Guard namespace does not match entity.');
61
+ let runtime = '';
62
+ try {
63
+ runtime = runtimeSemanticFingerprint(metadata);
64
+ }
65
+ catch (error) {
66
+ issue(issues, 'validation.reference.unresolved', referencePath(error, metadata), message(error), referenceKey(error));
67
+ }
68
+ if (unpacked.runtime && runtime && unpacked.runtime !== runtime)
69
+ issue(issues, 'validation.fingerprint.runtime-mismatch', '/runtimeSemanticFingerprint', 'Runtime fingerprint is stale.');
70
+ if (unpacked.semantic && unpacked.semantic !== unpacked.runtime)
71
+ issue(issues, 'validation.fingerprint.alias-mismatch', '/semanticFingerprint', 'Deprecated alias is stale.');
72
+ try {
73
+ const manifest = transitionDefinitionManifestHash(metadata, runtime);
74
+ if (unpacked.manifest && unpacked.manifest !== manifest)
75
+ issue(issues, 'validation.definition.manifest-mismatch', '/definitionManifestHash', 'Definition manifest is stale.');
76
+ }
77
+ catch (error) {
78
+ issue(issues, 'validation.reference.unresolved', '/readinessManifest', message(error), referenceKey(error));
79
+ }
80
+ const inputRefs = new Set(metadata.inputContract.map((entry) => refKey(entry.input)));
81
+ unique(metadata.inputContract.map((entry) => refKey(entry.input)), '/inputContract', issues);
82
+ const guards = new Map();
83
+ metadata.guards.forEach((guard, index) => {
84
+ if (!guard.guardId.startsWith(`${metadata.guardNamespace}.`))
85
+ issue(issues, 'validation.guard.namespace-invalid', `/guards/${index}/guardId`, 'Guard is outside namespace.');
86
+ if (guards.has(guard.guardId))
87
+ issue(issues, 'validation.semantic-id.duplicate', `/guards/${index}/guardId`, 'Duplicate guard.', guard.guardId);
88
+ guards.set(guard.guardId, guard);
89
+ const evaluator = exactRef(transitionSemanticRegistry.guardEvaluators, guard.evaluator);
90
+ if (!evaluator)
91
+ issue(issues, 'validation.reference.unresolved', `/guards/${index}/evaluator`, 'Guard evaluator is unresolved.', refKey(guard.evaluator));
92
+ else if (evaluator.transitionId !== metadata.transitionId || evaluator.guardId !== guard.guardId)
93
+ issue(issues, 'validation.guard.evaluator-mismatch', `/guards/${index}/evaluator`, 'Evaluator does not bind this guard.', refKey(guard.evaluator));
94
+ guard.requiredInputs.forEach((input) => {
95
+ if (!inputRefs.has(refKey(input)))
96
+ issue(issues, 'validation.guard.evaluator-mismatch', `/guards/${index}/requiredInputs`, 'Guard input is outside contract.', refKey(input));
97
+ });
98
+ });
99
+ metadata.inputContract.forEach((entry, index) => {
100
+ if (entry.required && !metadata.guards.some((guard) => guard.requiredInputs.some((input) => refKey(input) === refKey(entry.input))))
101
+ issue(issues, 'validation.guard.evaluator-mismatch', `/inputContract/${index}`, 'Required input has no guard.', refKey(entry.input));
102
+ });
103
+ validateEffects(metadata, guards, inputRefs, issues);
104
+ validateRaces(metadata, guards, issues);
105
+ validateAtomicity(metadata, issues);
106
+ return report(issues);
107
+ }
108
+ function validateEffects(metadata, guards, inputs, issues) {
109
+ const nodes = metadata.effects.orderedNodes;
110
+ unique(nodes.map((node) => node.effectId), '/effects/orderedNodes', issues);
111
+ const byId = new Map(nodes.map((node) => [node.effectId, node]));
112
+ nodes.forEach((node, index) => {
113
+ if (node.ordinal !== index)
114
+ issue(issues, 'validation.effect.graph-invalid', `/effects/orderedNodes/${index}/ordinal`, 'Effect ordinals are not contiguous.');
115
+ node.dependsOn.forEach((dependency) => {
116
+ if (!byId.has(dependency) || dependency === node.effectId || depends(byId.get(dependency), node.effectId, byId))
117
+ issue(issues, 'validation.effect.graph-invalid', `/effects/orderedNodes/${index}/dependsOn`, 'Effect graph is cyclic or unresolved.', dependency);
118
+ });
119
+ node.conditions.forEach((condition, conditionIndex) => validateCondition(condition, `/effects/orderedNodes/${index}/conditions/${conditionIndex}`, guards, inputs, issues));
120
+ });
121
+ unique(metadata.effects.postconditions.map((entry) => entry.postconditionId), '/effects/postconditions', issues);
122
+ metadata.effects.postconditions.forEach((entry, index) => {
123
+ if (entry.effectNodeIds.length === 0 || entry.effectNodeIds.some((id) => !byId.has(id)))
124
+ issue(issues, 'validation.effect.graph-invalid', `/effects/postconditions/${index}/effectNodeIds`, 'Postcondition does not bind effects.');
125
+ });
126
+ }
127
+ function validateCondition(condition, path, guards, inputs, issues) {
128
+ if (condition.kind === 'input-present' ? !inputs.has(refKey(condition.input)) : !guards.has(condition.guardId))
129
+ issue(issues, 'validation.effect.graph-invalid', path, 'Effect condition is unresolved.');
130
+ }
131
+ function validateRaces(metadata, guards, issues) {
132
+ unique(metadata.admissionBoundary.orderedRevalidations.map((entry) => entry.revalidationId), '/admissionBoundary/orderedRevalidations', issues);
133
+ unique(metadata.racePreconditions.map((entry) => entry.raceId), '/racePreconditions', issues);
134
+ metadata.admissionBoundary.orderedRevalidations.forEach((entry, index) => {
135
+ const race = metadata.racePreconditions.filter((candidate) => candidate.raceId === entry.raceId && candidate.revalidationId === entry.revalidationId);
136
+ const guard = guards.get(entry.guardId);
137
+ if (entry.ordinal !== index || race.length !== 1 || race[0].guardId !== entry.guardId || !guard || refKey(guard.evaluator) !== refKey(entry.evaluator))
138
+ issue(issues, 'validation.race.revalidation-invalid', `/admissionBoundary/orderedRevalidations/${index}`, 'Race and revalidation are not exact.', entry.raceId);
139
+ });
140
+ }
141
+ function validateAtomicity(metadata, issues) {
142
+ const atomicity = metadata.atomicity;
143
+ const writes = metadata.effects.orderedNodes.filter((entry) => entry.operation !== 'preserve').length;
144
+ if (atomicity.classification === 'single-write' && writes !== 1)
145
+ issue(issues, 'validation.atomicity.contract-invalid', '/atomicity/classification', 'single-write requires exactly one write.');
146
+ if (atomicity.classification === 'read-only' && writes !== 0)
147
+ issue(issues, 'validation.atomicity.contract-invalid', '/atomicity/classification', 'read-only cannot write.');
148
+ if (atomicity.classification.includes('multi-write') && writes < 2)
149
+ issue(issues, 'validation.atomicity.contract-invalid', '/atomicity/classification', 'multi-write requires multiple writes.');
150
+ if (atomicity.classification === 'non-transactional-multi-write' && atomicity.journal.mode !== 'none')
151
+ issue(issues, 'validation.atomicity.contract-invalid', '/atomicity/journal', 'Nontransactional write cannot claim journal.');
152
+ const postconditions = new Set(metadata.effects.postconditions.map((entry) => entry.postconditionId));
153
+ if (atomicity.readback.postconditionIds.length !== postconditions.size || atomicity.readback.postconditionIds.some((id) => !postconditions.has(id)))
154
+ issue(issues, 'validation.atomicity.contract-invalid', '/atomicity/readback/postconditionIds', 'Readback does not cover postconditions.');
155
+ }
156
+ function unpack(definition) {
157
+ if ('metadata' in definition)
158
+ return { metadata: definition.metadata, runtime: definition.runtimeSemanticFingerprint, semantic: definition.semanticFingerprint, manifest: definition.definitionManifestHash };
159
+ if ('runtimeSemanticFingerprint' in definition) {
160
+ const { runtimeSemanticFingerprint: runtime, semanticFingerprint: semantic, definitionManifestHash: manifest, ...metadata } = definition;
161
+ return { metadata, runtime, semantic, manifest };
162
+ }
163
+ return { metadata: definition, runtime: null, semantic: null, manifest: null };
164
+ }
165
+ function exactRef(entries, ref) {
166
+ const matches = entries.filter((entry) => refKey(entry) === refKey(ref));
167
+ return matches.length === 1 ? matches[0] : undefined;
168
+ }
169
+ function referencePath(error, metadata) {
170
+ const key = referenceKey(error);
171
+ return key ? referencePaths(metadata).get(key) ?? '/' : '/';
172
+ }
173
+ function referencePaths(root) {
174
+ const result = new Map();
175
+ visit(root, '');
176
+ return result;
177
+ function visit(value, path) {
178
+ if (Array.isArray(value))
179
+ return value.forEach((entry, index) => visit(entry, `${path}/${index}`));
180
+ if (value === null || typeof value !== 'object')
181
+ return;
182
+ const candidate = value;
183
+ if (typeof candidate.id === 'string' && Number.isInteger(candidate.version))
184
+ result.set(`${candidate.id}@${candidate.version}`, path || '/');
185
+ Object.entries(candidate).forEach(([key, entry]) => visit(entry, `${path}/${key}`));
186
+ }
187
+ }
188
+ function referenceKey(error) { return error instanceof Error ? error.ref : undefined; }
189
+ function refKey(ref) { return `${ref.id}@${ref.version}`; }
190
+ function message(error) { return error instanceof Error ? error.message : String(error); }
191
+ function unique(values, path, issues) {
192
+ if (new Set(values).size !== values.length)
193
+ issue(issues, 'validation.semantic-id.duplicate', path, 'Semantic IDs must be unique.');
194
+ }
195
+ function depends(node, target, nodes, seen = new Set()) {
196
+ if (!node)
197
+ return false;
198
+ return node.dependsOn.some((id) => id === target || (!seen.has(id) && (seen.add(id), depends(nodes.get(id), target, nodes, seen))));
199
+ }
200
+ function issue(issues, ruleId, path, message, ref) {
201
+ issues.push(ref === undefined ? { ruleId, path, message } : { ruleId, path, message, ref });
202
+ }
203
+ function report(issues) {
204
+ const ordered = [...issues].sort((left, right) => `${left.path}\0${left.ruleId}\0${left.ref ?? ''}`.localeCompare(`${right.path}\0${right.ruleId}\0${right.ref ?? ''}`));
205
+ const content = { valid: ordered.length === 0, issues: ordered };
206
+ return { ...content, reportHash: hashCanonical(content) };
207
+ }
208
+ //# sourceMappingURL=catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../../src/lifecycle/catalog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import { diagnoseCoreIssuanceClosure, inspectCorePrivateIr } from '../transition-core.js';
2
+ import { assessCorrectiveReplanAuthorityTuple, projectAuthoritySemanticBundle } from './corrective-replan-authority.js';
3
+ export declare const installedCoreRuleBindingsForTests: readonly import("./types.js").CoreReleaseRuleBinding[];
4
+ export declare const installedAuthoritySemanticBindingsForTests: readonly import("./corrective-replan-authority.js").AuthoritySemanticBinding[];
5
+ export declare const installedTransitionExecutableBindingsForTests: import("../transition-core.js").TransitionExecutableBinding[];
6
+ export declare const installedPayloadSchemaArtifactsForTests: readonly import("./types.js").PayloadSchemaArtifactBinding[];
7
+ export declare const installedPayloadSchemaValidatorsForTests: readonly import("./types.js").PayloadSchemaValidatorBinding[];
8
+ export declare const installedSemanticRegistryForTests: import("./types.js").SemanticRegistry;
9
+ export declare const inspectCorePrivateIrForTests: typeof inspectCorePrivateIr;
10
+ export declare const diagnoseCoreIssuanceClosureForTests: typeof diagnoseCoreIssuanceClosure;
11
+ export declare const assessCorrectiveReplanAuthorityTupleForTests: typeof assessCorrectiveReplanAuthorityTuple;
12
+ export declare const projectAuthoritySemanticBundleForTests: typeof projectAuthoritySemanticBundle;
13
+ export declare const correctiveReplanCredentialInspectionForTests: {
14
+ authorityBindingManifest: {
15
+ manifestSha256: string;
16
+ id: "binding-manifest.corrective-replan.exact-v1";
17
+ version: 1;
18
+ rows: {
19
+ ordinal: number;
20
+ bindingId: string;
21
+ projection: {
22
+ id: `projection.${string}`;
23
+ version: 1;
24
+ };
25
+ fieldId: `field.${string}`;
26
+ valueKind: "sha256" | "literal" | "safe-integer" | "entity-id" | "git-oid" | "actor-role";
27
+ canonicalization: "exact" | "lowercase-hex" | "safe-nonnegative-integer" | "nfc-trim" | "lowercase-git-oid" | "registered-enum";
28
+ receiptPath: `/binding/values/${string}`;
29
+ }[];
30
+ };
31
+ executionLinkage: {
32
+ status: "active";
33
+ transitionId: "task.plan.corrective-replan";
34
+ };
35
+ kernelDescriptor: {
36
+ id: string;
37
+ version: 1;
38
+ wiring: "invoked";
39
+ buildSha256: string;
40
+ };
41
+ schemaArtifacts: readonly import("./corrective-replan-credential-schema.js").CredentialSchemaArtifact[];
42
+ schemaValidators: readonly import("./corrective-replan-credential-schema.js").CredentialSchemaValidator[];
43
+ functionBindings: readonly import("./corrective-replan-credential-core.js").CredentialFunctionBinding[];
44
+ diagnoseClosure: typeof import("./corrective-replan-credentials.js").diagnoseCorrectiveReplanCredentialClosure;
45
+ };
46
+ export declare function runtimeSemanticFingerprintForInspection(metadata: unknown): string;
47
+ export declare function definitionManifestHashForInspection(metadata: unknown, runtime?: string): string;
48
+ export declare function validateTransitionDefinitionForInspection(raw: unknown): import("./catalog.js").TransitionSemanticValidationReport;
@@ -0,0 +1,29 @@
1
+ import { diagnoseCoreIssuanceClosure, inspectCorePrivateIr, installedTransitionExecutableBindings } from '../transition-core.js';
2
+ import { validateTransitionDefinitionSemantics } from './catalog.js';
3
+ import { assessCorrectiveReplanAuthorityTuple, installedAuthoritySemanticBindings, projectAuthoritySemanticBundle } from './corrective-replan-authority.js';
4
+ import { correctiveReplanCredentialInspection } from './corrective-replan-credentials.js';
5
+ import { installedCoreRuleBindings } from './core-static-readiness.js';
6
+ import { runtimeSemanticFingerprint, transitionDefinitionManifestHash } from './fingerprint.js';
7
+ import { installedPayloadSchemaArtifacts, installedPayloadSchemaValidators } from './schema-artifact.js';
8
+ import { transitionSemanticRegistry } from './semantic-registry.js';
9
+ export const installedCoreRuleBindingsForTests = installedCoreRuleBindings;
10
+ export const installedAuthoritySemanticBindingsForTests = installedAuthoritySemanticBindings;
11
+ export const installedTransitionExecutableBindingsForTests = installedTransitionExecutableBindings;
12
+ export const installedPayloadSchemaArtifactsForTests = installedPayloadSchemaArtifacts;
13
+ export const installedPayloadSchemaValidatorsForTests = installedPayloadSchemaValidators;
14
+ export const installedSemanticRegistryForTests = transitionSemanticRegistry;
15
+ export const inspectCorePrivateIrForTests = inspectCorePrivateIr;
16
+ export const diagnoseCoreIssuanceClosureForTests = diagnoseCoreIssuanceClosure;
17
+ export const assessCorrectiveReplanAuthorityTupleForTests = assessCorrectiveReplanAuthorityTuple;
18
+ export const projectAuthoritySemanticBundleForTests = projectAuthoritySemanticBundle;
19
+ export const correctiveReplanCredentialInspectionForTests = correctiveReplanCredentialInspection;
20
+ export function runtimeSemanticFingerprintForInspection(metadata) {
21
+ return runtimeSemanticFingerprint(metadata);
22
+ }
23
+ export function definitionManifestHashForInspection(metadata, runtime) {
24
+ return transitionDefinitionManifestHash(metadata, runtime);
25
+ }
26
+ export function validateTransitionDefinitionForInspection(raw) {
27
+ return validateTransitionDefinitionSemantics(raw);
28
+ }
29
+ //# sourceMappingURL=compiler-inspection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiler-inspection.js","sourceRoot":"","sources":["../../../src/lifecycle/compiler-inspection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,qCAAqC,EAAE,MAAM,uBAAuB,CAAC;AACjI,OAAO,EAAE,qCAAqC,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,oCAAoC,EAAE,kCAAkC,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAC5J,OAAO,EAAE,oCAAoC,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,+BAA+B,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AACzG,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAEpE,MAAM,CAAC,MAAM,iCAAiC,GAAG,yBAAyB,CAAC;AAC3E,MAAM,CAAC,MAAM,0CAA0C,GAAG,kCAAkC,CAAC;AAC7F,MAAM,CAAC,MAAM,6CAA6C,GAAG,qCAAqC,CAAC;AACnG,MAAM,CAAC,MAAM,uCAAuC,GAAG,+BAA+B,CAAC;AACvF,MAAM,CAAC,MAAM,wCAAwC,GAAG,gCAAgC,CAAC;AACzF,MAAM,CAAC,MAAM,iCAAiC,GAAG,0BAA0B,CAAC;AAC5E,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,mCAAmC,GAAG,2BAA2B,CAAC;AAC/E,MAAM,CAAC,MAAM,4CAA4C,GAAG,oCAAoC,CAAC;AACjG,MAAM,CAAC,MAAM,sCAAsC,GAAG,8BAA8B,CAAC;AACrF,MAAM,CAAC,MAAM,4CAA4C,GAAG,oCAAoC,CAAC;AACjG,MAAM,UAAU,uCAAuC,CAAC,QAAiB;IACvE,OAAO,0BAA0B,CAAC,QAA4D,CAAC,CAAC;AAClG,CAAC;AACD,MAAM,UAAU,mCAAmC,CAAC,QAAiB,EAAE,OAAgB;IACrF,OAAO,gCAAgC,CAAC,QAAkE,EAAE,OAAO,CAAC,CAAC;AACvH,CAAC;AACD,MAAM,UAAU,yCAAyC,CAAC,GAAY;IACpE,OAAO,qCAAqC,CAAC,GAAY,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { CoreReleaseRuleBinding, CoreReleaseRuleContext } from './types.js';
2
+ export declare const installedCoreRuleBindings: readonly CoreReleaseRuleBinding[];
3
+ export declare function projectReleaseRuleContextForCore(raw: unknown, ruleId: string): CoreReleaseRuleContext;
4
+ export declare function evaluateInstalledReleaseRulesForCore(bindings: readonly (CoreReleaseRuleBinding & {
5
+ readonly context: CoreReleaseRuleContext;
6
+ })[]): readonly string[];
@@ -0,0 +1,130 @@
1
+ import { runtimeSemanticProjection } from './fingerprint.js';
2
+ import { deepFreeze } from './immutable.js';
3
+ import { coreReleaseRuleDescriptors } from './implementation-table.js';
4
+ const ruleFunctions = [definitionIntegrity, exactAuthority, requiredInputs, admissionBoundary, reliableEffects];
5
+ export const installedCoreRuleBindings = deepFreeze(coreReleaseRuleDescriptors.map(([id, suffix], index) => ({
6
+ id, version: 1,
7
+ implementationId: `implementation.release-rule.${suffix}`,
8
+ implementationVersion: 1,
9
+ callable: ruleFunctions[index],
10
+ })));
11
+ export function projectReleaseRuleContextForCore(raw, ruleId) {
12
+ const source = raw;
13
+ const metadata = Object.fromEntries(Object.entries(source)
14
+ .filter(([key]) => !['runtimeSemanticFingerprint', 'semanticFingerprint', 'definitionManifestHash'].includes(key)));
15
+ const closure = runtimeSemanticProjection(metadata).resolvedRegistryEntries;
16
+ const entries = (category) => closure.filter((entry) => entry.category === category).map(({ entry }) => entry);
17
+ const guards = () => rows(metadata.guards).map((guard) => ({ guardId: guard.guardId }));
18
+ if (ruleId === 'semantic-rule.definition-integrity')
19
+ return context({ guards: guards() });
20
+ if (ruleId === 'semantic-rule.exact-authority') {
21
+ const authority = record(metadata.authority);
22
+ const actor = record(authority.actor);
23
+ const principal = record(authority.principal);
24
+ return context({ authority: { actor: { required: actor.required, identity: ref(actor.identity) }, principal: { identity: ref(principal.identity) },
25
+ capabilities: presence(authority.capabilities), credentials: presence(authority.credentials), separationOfDuty: presence(authority.separationOfDuty),
26
+ forbiddenCombinations: presence(authority.forbiddenCombinations),
27
+ ownership: ref(authority.ownership), eligibleRoles: presence(authority.eligibleRoles) }, guards: guards() }, {
28
+ capabilities: presence(entries('capabilities')), credentialPolicies: presence(entries('credentialPolicies')),
29
+ identityComparators: presence(entries('identityComparators')), ownershipPolicies: entries('ownershipPolicies').map((entry) => ({ id: entry.id, version: entry.version, c1Ownership: entry.c1Ownership, writerLease: entry.writerLease })),
30
+ });
31
+ }
32
+ if (ruleId === 'semantic-rule.required-inputs')
33
+ return context({ inputContract: rows(metadata.inputContract).map((entry) => ({ required: entry.required, input: ref(entry.input) })), guards: rows(metadata.guards).map((guard) => ({ requiredInputs: rows(guard.requiredInputs).map(ref) })) });
34
+ if (ruleId === 'semantic-rule.admission-boundary') {
35
+ const boundary = record(metadata.admissionBoundary);
36
+ return context({ admissionBoundary: {
37
+ lock: { policy: ref(record(boundary.lock).policy) },
38
+ orderedRevalidations: rows(boundary.orderedRevalidations).map((entry) => ({ underLock: entry.underLock })),
39
+ firstEffectAfterRevalidation: boundary.firstEffectAfterRevalidation, release: boundary.release,
40
+ } }, { lockPolicies: entries('lockPolicies').map((entry) => ({ id: entry.id, version: entry.version, lockKind: entry.lockKind })) });
41
+ }
42
+ if (ruleId === 'semantic-rule.reliable-effects') {
43
+ const atomicity = record(metadata.atomicity);
44
+ const readback = record(atomicity.readback);
45
+ return context({ atomicity: {
46
+ classification: atomicity.classification, nonMutatingFailureGuarantee: atomicity.nonMutatingFailureGuarantee,
47
+ readback: { adapter: ref(readback.adapter), wiring: readback.wiring, checkpoints: record(readback.checkpoints) },
48
+ journal: { mode: record(atomicity.journal).mode }, recovery: { mode: record(atomicity.recovery).mode, trigger: record(atomicity.recovery).trigger },
49
+ } }, { readbackAdapters: entries('readbackAdapters').map((entry) => ({ id: entry.id, version: entry.version, wiring: entry.wiring })) });
50
+ }
51
+ throw new TypeError(`No installed Core context projection for ${ruleId}.`);
52
+ }
53
+ export function evaluateInstalledReleaseRulesForCore(bindings) {
54
+ return [...new Set(bindings.flatMap((binding) => binding.callable(binding.context)))].sort();
55
+ }
56
+ function definitionIntegrity({ transition }) {
57
+ const guards = new Set(array(transition.guards).map((guard) => String(guard.guardId)));
58
+ const required = ['actor-role-eligible', 'no-c1-claim', 'no-writer-lease', 'plan-validation-passed', 'receipt-valid', 'risk-audit-passed']
59
+ .map((suffix) => `task.corrective-replan.${suffix}`);
60
+ return required.every((guard) => guards.has(guard)) ? [] : ['static.definition.mandatory-guard-incomplete'];
61
+ }
62
+ function exactAuthority({ transition, registry }) {
63
+ const authority = transition.authority;
64
+ const actor = authority.actor;
65
+ const principal = authority.principal;
66
+ const blockers = [];
67
+ if (actor.required !== true || refText(actor.identity) !== 'identity.actor@1'
68
+ || refText(principal.identity) !== 'identity.human-principal@1')
69
+ blockers.push('static.authority.actor-unbound');
70
+ if (array(authority.capabilities).length === 0 || array(registry.capabilities).length === 0)
71
+ blockers.push('static.authority.exact-capability-missing');
72
+ if (array(authority.credentials).length === 0 || array(registry.credentialPolicies).length === 0)
73
+ blockers.push('static.authority.exact-credential-missing');
74
+ if (array(authority.separationOfDuty).length !== 2 || array(authority.forbiddenCombinations).length !== 1
75
+ || array(registry.identityComparators).length !== 3)
76
+ blockers.push('static.authority.sod-unenforced');
77
+ const ownership = array(registry.ownershipPolicies).find((entry) => refText(entry) === refText(authority.ownership));
78
+ if (!ownership || ownership.c1Ownership === 'unchecked' || ownership.writerLease === 'unchecked')
79
+ blockers.push('static.authority.ownership-unchecked');
80
+ if (array(authority.eligibleRoles).length === 0 || !array(transition.guards)
81
+ .some((guard) => guard.guardId === 'task.corrective-replan.actor-role-eligible'))
82
+ blockers.push('static.authority.role-eligibility-unenforced');
83
+ return blockers;
84
+ }
85
+ function requiredInputs({ transition }) {
86
+ const inputs = new Set(array(transition.inputContract).filter((entry) => entry.required === true).map((entry) => refText(entry.input)));
87
+ const guarded = new Set(array(transition.guards).flatMap((guard) => array(guard.requiredInputs).map(refText)));
88
+ const exact = ['corrective-execution-receipt', 'corrective-plan-risk-audit', 'corrective-plan-validation', 'corrective-replacement-plan', 'expected-revision', 'task-id']
89
+ .map((id) => `input.${id}@1`);
90
+ return exact.every((id) => inputs.has(id) && guarded.has(id)) ? [] : ['static.input.exact-contract-incomplete'];
91
+ }
92
+ function admissionBoundary({ transition, registry }) {
93
+ const boundary = transition.admissionBoundary;
94
+ const lock = boundary.lock.policy;
95
+ const installed = array(registry.lockPolicies).find((entry) => refText(entry) === refText(lock));
96
+ const revalidations = array(boundary.orderedRevalidations);
97
+ return installed?.lockKind === 'exclusive-task'
98
+ && revalidations.length === 3 && revalidations.every((entry) => entry.underLock === true)
99
+ && boundary.firstEffectAfterRevalidation === true && boundary.release === 'finally-after-readback'
100
+ ? [] : ['static.admission.exclusive-lock-incomplete'];
101
+ }
102
+ function reliableEffects({ transition, registry }) {
103
+ const atomicity = transition.atomicity;
104
+ const readback = atomicity.readback;
105
+ const installed = array(registry.readbackAdapters).find((entry) => refText(entry) === refText(readback.adapter));
106
+ const blockers = [];
107
+ const checkpoints = readback.checkpoints;
108
+ if (readback.wiring !== 'invoked-post-effect' || installed?.wiring !== 'invoked-post-effect'
109
+ || checkpoints.preCompletion !== 'domain-readback' || checkpoints.postTerminal !== 'terminal-readback')
110
+ blockers.push('static.reliability.readback-unwired');
111
+ if (atomicity.classification !== 'journaled-multi-write' || atomicity.nonMutatingFailureGuarantee !== 'all-guards-before-effects'
112
+ || atomicity.journal.mode !== 'required' || atomicity.recovery.mode !== 'automatic-roll-forward'
113
+ || atomicity.recovery.trigger !== 'explicit-repair') {
114
+ blockers.push('static.reliability.contract-incomplete');
115
+ }
116
+ return blockers;
117
+ }
118
+ function context(transition, registry = {}) { return deepFreeze({ transition, registry, policy: {} }); }
119
+ function record(value) { return value !== null && typeof value === 'object' && !Array.isArray(value) ? value : {}; }
120
+ function rows(value) { return Array.isArray(value) ? value.map(record) : []; }
121
+ function presence(value) { return Array.isArray(value) ? value.map(() => ({})) : []; }
122
+ function ref(value) { const entry = record(value); return { id: entry.id, version: entry.version }; }
123
+ function array(value) {
124
+ return Array.isArray(value) ? value : [];
125
+ }
126
+ function refText(value) {
127
+ const ref = value;
128
+ return ref && typeof ref.id === 'string' && Number.isInteger(ref.version) ? `${ref.id}@${ref.version}` : '';
129
+ }
130
+ //# sourceMappingURL=core-static-readiness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-static-readiness.js","sourceRoot":"","sources":["../../../src/lifecycle/core-static-readiness.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ type AuthorityCallable = (...arguments_: readonly unknown[]) => unknown;
2
+ export interface AuthoritySemanticBinding {
3
+ readonly id: string;
4
+ readonly version: 1;
5
+ readonly kind: 'role-evaluator' | 'identity-comparator';
6
+ readonly implementationId: `implementation.${string}`;
7
+ readonly implementationVersion: number;
8
+ readonly wiring: 'invoked';
9
+ readonly callable: AuthorityCallable;
10
+ }
11
+ interface AuthorityIssue {
12
+ readonly issueId: string;
13
+ readonly path: string;
14
+ readonly message: string;
15
+ }
16
+ export declare const installedAuthoritySemanticBindings: readonly AuthoritySemanticBinding[];
17
+ /** Diagnostic-only assessment of the installed static tuple. It cannot issue a Core handle. */
18
+ export declare function assessCorrectiveReplanAuthorityTuple(tuple: unknown): {
19
+ reportHash: string;
20
+ staticTupleValid: boolean;
21
+ blockers: string[];
22
+ issues: AuthorityIssue[];
23
+ bindings: readonly AuthoritySemanticBinding[];
24
+ };
25
+ export declare function projectAuthoritySemanticBundle(bindings: readonly AuthoritySemanticBinding[]): {
26
+ bundleSha256: string;
27
+ bundleVersion: number;
28
+ bindingManifest: {
29
+ manifestSha256: string;
30
+ id: "binding-manifest.corrective-replan.exact-v1";
31
+ version: 1;
32
+ rows: {
33
+ ordinal: number;
34
+ bindingId: string;
35
+ projection: {
36
+ id: `projection.${string}`;
37
+ version: 1;
38
+ };
39
+ fieldId: `field.${string}`;
40
+ valueKind: "sha256" | "literal" | "safe-integer" | "entity-id" | "git-oid" | "actor-role";
41
+ canonicalization: "exact" | "lowercase-hex" | "safe-nonnegative-integer" | "nfc-trim" | "lowercase-git-oid" | "registered-enum";
42
+ receiptPath: `/binding/values/${string}`;
43
+ }[];
44
+ };
45
+ bindings: {
46
+ id: string;
47
+ version: 1;
48
+ kind: "role-evaluator" | "identity-comparator";
49
+ implementationId: `implementation.${string}`;
50
+ implementationVersion: number;
51
+ }[];
52
+ };
53
+ export {};