@msn-control/liftoff 0.11.3 → 0.12.0
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.
- package/DEVELOPER.md +19 -18
- package/README.md +18 -18
- package/assets/governance/single-maintainer-gitflow/activation-v2-graph.json +1583 -0
- package/dist/adapters/credentials/github-enrollment.d.ts +51 -0
- package/dist/adapters/credentials/github-enrollment.js +226 -0
- package/dist/adapters/credentials/github-enrollment.js.map +1 -0
- package/dist/adapters/credentials/protected-input.d.ts +7 -0
- package/dist/adapters/credentials/protected-input.js +68 -0
- package/dist/adapters/credentials/protected-input.js.map +1 -0
- package/dist/adapters/filesystem/executables.d.ts +2 -0
- package/dist/adapters/filesystem/executables.js +70 -0
- package/dist/adapters/filesystem/executables.js.map +1 -0
- package/dist/adapters/filesystem/update-previews.d.ts +9 -0
- package/dist/adapters/filesystem/update-previews.js +44 -0
- package/dist/adapters/filesystem/update-previews.js.map +1 -1
- package/dist/adapters/filesystem/workstation-attempts.d.ts +13 -0
- package/dist/adapters/filesystem/workstation-attempts.js +78 -0
- package/dist/adapters/filesystem/workstation-attempts.js.map +1 -0
- package/dist/adapters/github/activation-rest.d.ts +40 -0
- package/dist/adapters/github/activation-rest.js +272 -0
- package/dist/adapters/github/activation-rest.js.map +1 -0
- package/dist/adapters/state/azure-blob.d.ts +43 -0
- package/dist/adapters/state/azure-blob.js +335 -0
- package/dist/adapters/state/azure-blob.js.map +1 -0
- package/dist/adapters/state/darwin-capabilities.d.ts +33 -0
- package/dist/adapters/state/darwin-capabilities.js +146 -0
- package/dist/adapters/state/darwin-capabilities.js.map +1 -0
- package/dist/adapters/state/darwin-native-host.d.ts +32 -0
- package/dist/adapters/state/darwin-native-host.js +294 -0
- package/dist/adapters/state/darwin-native-host.js.map +1 -0
- package/dist/adapters/state/darwin-profile.d.ts +6 -0
- package/dist/adapters/state/darwin-profile.js +56 -0
- package/dist/adapters/state/darwin-profile.js.map +1 -0
- package/dist/adapters/state/darwin-system-program.d.ts +1 -0
- package/dist/adapters/state/darwin-system-program.js +94 -0
- package/dist/adapters/state/darwin-system-program.js.map +1 -0
- package/dist/adapters/state/local-qualification.d.ts +16 -0
- package/dist/adapters/state/local-qualification.js +299 -0
- package/dist/adapters/state/local-qualification.js.map +1 -0
- package/dist/adapters/state/local.d.ts +25 -0
- package/dist/adapters/state/local.js +145 -0
- package/dist/adapters/state/local.js.map +1 -0
- package/dist/adapters/state/native-command.d.ts +21 -0
- package/dist/adapters/state/native-command.js +82 -0
- package/dist/adapters/state/native-command.js.map +1 -0
- package/dist/adapters/state/native-files.d.ts +2 -0
- package/dist/adapters/state/native-files.js +47 -0
- package/dist/adapters/state/native-files.js.map +1 -0
- package/dist/adapters/state/native-system.d.ts +38 -0
- package/dist/adapters/state/native-system.js +86 -0
- package/dist/adapters/state/native-system.js.map +1 -0
- package/dist/adapters/state/opentofu.d.ts +35 -0
- package/dist/adapters/state/opentofu.js +350 -0
- package/dist/adapters/state/opentofu.js.map +1 -0
- package/dist/adapters/state/owned-process.d.ts +43 -0
- package/dist/adapters/state/owned-process.js +252 -0
- package/dist/adapters/state/owned-process.js.map +1 -0
- package/dist/adapters/state/posix-lock-program.d.ts +1 -0
- package/dist/adapters/state/posix-lock-program.js +185 -0
- package/dist/adapters/state/posix-lock-program.js.map +1 -0
- package/dist/adapters/state/posix-native-lock.d.ts +15 -0
- package/dist/adapters/state/posix-native-lock.js +145 -0
- package/dist/adapters/state/posix-native-lock.js.map +1 -0
- package/dist/adapters/state/protected-workspace.d.ts +57 -0
- package/dist/adapters/state/protected-workspace.js +412 -0
- package/dist/adapters/state/protected-workspace.js.map +1 -0
- package/dist/application/context.d.ts +3 -0
- package/dist/application/diagnose/doctor.d.ts +5 -0
- package/dist/application/diagnose/doctor.js +21 -5
- package/dist/application/diagnose/doctor.js.map +1 -1
- package/dist/application/diagnose/generated-project.js +2 -7
- package/dist/application/diagnose/generated-project.js.map +1 -1
- package/dist/application/initialize/fixture.js +8 -1
- package/dist/application/initialize/fixture.js.map +1 -1
- package/dist/application/initialize/use-case.js +70 -36
- package/dist/application/initialize/use-case.js.map +1 -1
- package/dist/application/project/manifest.js +5 -4
- package/dist/application/project/manifest.js.map +1 -1
- package/dist/application/state-migration/execution.d.ts +32 -0
- package/dist/application/state-migration/execution.js +440 -0
- package/dist/application/state-migration/execution.js.map +1 -0
- package/dist/application/state-migration/index.d.ts +22 -0
- package/dist/application/state-migration/index.js +17 -0
- package/dist/application/state-migration/index.js.map +1 -0
- package/dist/application/state-migration/lifecycle.d.ts +3 -0
- package/dist/application/state-migration/lifecycle.js +149 -0
- package/dist/application/state-migration/lifecycle.js.map +1 -0
- package/dist/application/state-migration/planning.d.ts +7 -0
- package/dist/application/state-migration/planning.js +150 -0
- package/dist/application/state-migration/planning.js.map +1 -0
- package/dist/application/state-migration/recovery.d.ts +5 -0
- package/dist/application/state-migration/recovery.js +145 -0
- package/dist/application/state-migration/recovery.js.map +1 -0
- package/dist/application/state-migration/runtime.d.ts +32 -0
- package/dist/application/state-migration/runtime.js +188 -0
- package/dist/application/state-migration/runtime.js.map +1 -0
- package/dist/application/state-migration/service.d.ts +2 -0
- package/dist/application/state-migration/service.js +20 -0
- package/dist/application/state-migration/service.js.map +1 -0
- package/dist/application/update/inspection.d.ts +16 -2
- package/dist/application/update/inspection.js +76 -23
- package/dist/application/update/inspection.js.map +1 -1
- package/dist/application/update/migration-runtime.js +24 -11
- package/dist/application/update/migration-runtime.js.map +1 -1
- package/dist/application/update/output.d.ts +2 -0
- package/dist/application/update/output.js +11 -1
- package/dist/application/update/output.js.map +1 -1
- package/dist/application/update/revalidation-plan.d.ts +1 -0
- package/dist/application/update/revalidation-plan.js +25 -12
- package/dist/application/update/revalidation-plan.js.map +1 -1
- package/dist/application/update/revalidation.d.ts +4 -1
- package/dist/application/update/revalidation.js +62 -21
- package/dist/application/update/revalidation.js.map +1 -1
- package/dist/application/update/use-case.js +25 -17
- package/dist/application/update/use-case.js.map +1 -1
- package/dist/cli/args/definitions.js +11 -3
- package/dist/cli/args/definitions.js.map +1 -1
- package/dist/cli/args/parser.js +29 -3
- package/dist/cli/args/parser.js.map +1 -1
- package/dist/domain/governance/activation/approvals.d.ts +264 -7
- package/dist/domain/governance/activation/approvals.js +166 -23
- package/dist/domain/governance/activation/approvals.js.map +1 -1
- package/dist/domain/governance/activation/capabilities.js +5 -2
- package/dist/domain/governance/activation/capabilities.js.map +1 -1
- package/dist/domain/governance/activation/evidence.d.ts +2 -1
- package/dist/domain/governance/activation/evidence.js +64 -11
- package/dist/domain/governance/activation/evidence.js.map +1 -1
- package/dist/domain/governance/activation/graph.d.ts +11 -384
- package/dist/domain/governance/activation/graph.js +424 -379
- package/dist/domain/governance/activation/graph.js.map +1 -1
- package/dist/domain/governance/activation/inputs.d.ts +3 -1
- package/dist/domain/governance/activation/inputs.js +47 -6
- package/dist/domain/governance/activation/inputs.js.map +1 -1
- package/dist/domain/governance/activation/operations.d.ts +4 -1
- package/dist/domain/governance/activation/operations.js +110 -22
- package/dist/domain/governance/activation/operations.js.map +1 -1
- package/dist/domain/governance/activation/readiness.d.ts +10 -0
- package/dist/domain/governance/activation/readiness.js +77 -38
- package/dist/domain/governance/activation/readiness.js.map +1 -1
- package/dist/domain/governance/activation/types.d.ts +151 -9
- package/dist/domain/governance/activation/types.js +23 -1
- package/dist/domain/governance/activation/types.js.map +1 -1
- package/dist/domain/governance/activation/validators.d.ts +4 -1
- package/dist/domain/governance/activation/validators.js +419 -26
- package/dist/domain/governance/activation/validators.js.map +1 -1
- package/dist/domain/governance/policy/identity.d.ts +55 -13
- package/dist/domain/governance/policy/identity.js +28 -8
- package/dist/domain/governance/policy/identity.js.map +1 -1
- package/dist/domain/project/artifact-lifecycle.d.ts +2 -1
- package/dist/domain/project/artifact-lifecycle.js +7 -1
- package/dist/domain/project/artifact-lifecycle.js.map +1 -1
- package/dist/domain/project/catalog.d.ts +50 -1
- package/dist/domain/project/catalog.js +104 -4
- package/dist/domain/project/catalog.js.map +1 -1
- package/dist/domain/project/contracts.d.ts +9 -1
- package/dist/domain/project/infrastructure-layout.d.ts +1 -1
- package/dist/domain/project/infrastructure-layout.js +2 -1
- package/dist/domain/project/infrastructure-layout.js.map +1 -1
- package/dist/domain/project/manifest/governance.d.ts +1 -1
- package/dist/domain/project/manifest/governance.js +9 -10
- package/dist/domain/project/manifest/governance.js.map +1 -1
- package/dist/domain/project/planning.js +4 -5
- package/dist/domain/project/planning.js.map +1 -1
- package/dist/domain/repair/stateful-bounded.d.ts +1 -0
- package/dist/domain/repair/stateful-bounded.js +37 -0
- package/dist/domain/repair/stateful-bounded.js.map +1 -0
- package/dist/domain/repair/stateful-invariants.d.ts +28 -0
- package/dist/domain/repair/stateful-invariants.js +278 -0
- package/dist/domain/repair/stateful-invariants.js.map +1 -0
- package/dist/domain/repair/stateful.d.ts +690 -0
- package/dist/domain/repair/stateful.js +26 -0
- package/dist/domain/repair/stateful.js.map +1 -0
- package/dist/domain/workstation/constraints.d.ts +1 -0
- package/dist/domain/workstation/constraints.js.map +1 -1
- package/dist/domain/workstation/contracts.d.ts +42 -0
- package/dist/domain/workstation/contracts.js +2 -0
- package/dist/domain/workstation/contracts.js.map +1 -0
- package/dist/domain/workstation/executables.d.ts +19 -0
- package/dist/domain/workstation/executables.js +68 -0
- package/dist/domain/workstation/executables.js.map +1 -0
- package/dist/domain/workstation/versions.d.ts +8 -0
- package/dist/domain/workstation/versions.js +145 -0
- package/dist/domain/workstation/versions.js.map +1 -0
- package/dist/framework-adapters.d.ts +2 -0
- package/dist/framework-adapters.js +148 -22
- package/dist/framework-adapters.js.map +1 -1
- package/dist/framework-validation.d.ts +6 -0
- package/dist/framework-validation.js +89 -24
- package/dist/framework-validation.js.map +1 -1
- package/dist/generators/common/base.js +57 -17
- package/dist/generators/common/base.js.map +1 -1
- package/dist/governance-activation/activation-state.js +39 -7
- package/dist/governance-activation/activation-state.js.map +1 -1
- package/dist/governance-activation/authority-records.d.ts +4 -0
- package/dist/governance-activation/authority-records.js +24 -0
- package/dist/governance-activation/authority-records.js.map +1 -0
- package/dist/governance-activation/commands.d.ts +9 -1
- package/dist/governance-activation/commands.js +392 -97
- package/dist/governance-activation/commands.js.map +1 -1
- package/dist/governance-activation/compatibility.d.ts +11 -8
- package/dist/governance-activation/compatibility.js +37 -23
- package/dist/governance-activation/compatibility.js.map +1 -1
- package/dist/governance-activation/doctor.js +40 -16
- package/dist/governance-activation/doctor.js.map +1 -1
- package/dist/governance-activation/github-config.d.ts +17 -0
- package/dist/governance-activation/github-config.js +88 -0
- package/dist/governance-activation/github-config.js.map +1 -0
- package/dist/governance-activation/github-discovery.d.ts +18 -0
- package/dist/governance-activation/github-discovery.js +229 -0
- package/dist/governance-activation/github-discovery.js.map +1 -0
- package/dist/governance-activation/github-ports.d.ts +12 -0
- package/dist/governance-activation/github-ports.js +4 -0
- package/dist/governance-activation/github-ports.js.map +1 -0
- package/dist/governance-activation/github-publication.d.ts +3 -0
- package/dist/governance-activation/github-publication.js +190 -0
- package/dist/governance-activation/github-publication.js.map +1 -0
- package/dist/governance-activation/historical-common.d.ts +98 -0
- package/dist/governance-activation/historical-common.js +269 -0
- package/dist/governance-activation/historical-common.js.map +1 -0
- package/dist/governance-activation/historical-credential-policy.d.ts +3 -0
- package/dist/governance-activation/historical-credential-policy.js +91 -0
- package/dist/governance-activation/historical-credential-policy.js.map +1 -0
- package/dist/governance-activation/historical-inputs.d.ts +6 -0
- package/dist/governance-activation/historical-inputs.js +57 -0
- package/dist/governance-activation/historical-inputs.js.map +1 -0
- package/dist/governance-activation/historical-safety.d.ts +9 -0
- package/dist/governance-activation/historical-safety.js +102 -0
- package/dist/governance-activation/historical-safety.js.map +1 -0
- package/dist/governance-activation/historical-source-metadata.d.ts +31 -0
- package/dist/governance-activation/historical-source-metadata.js +55 -0
- package/dist/governance-activation/historical-source-metadata.js.map +1 -0
- package/dist/governance-activation/historical-state.d.ts +12 -50
- package/dist/governance-activation/historical-state.js +195 -308
- package/dist/governance-activation/historical-state.js.map +1 -1
- package/dist/governance-activation/historical-v1-auxiliary.d.ts +1 -0
- package/dist/governance-activation/historical-v1-auxiliary.js +43 -0
- package/dist/governance-activation/historical-v1-auxiliary.js.map +1 -0
- package/dist/governance-activation/historical-v1-phase-contracts.d.ts +31 -0
- package/dist/governance-activation/historical-v1-phase-contracts.js +46 -0
- package/dist/governance-activation/historical-v1-phase-contracts.js.map +1 -0
- package/dist/governance-activation/historical-v2.d.ts +53 -0
- package/dist/governance-activation/historical-v2.js +313 -0
- package/dist/governance-activation/historical-v2.js.map +1 -0
- package/dist/governance-activation/history-contracts.d.ts +21 -12
- package/dist/governance-activation/history-contracts.js +99 -27
- package/dist/governance-activation/history-contracts.js.map +1 -1
- package/dist/governance-activation/inputs.d.ts +8 -2
- package/dist/governance-activation/inputs.js +41 -6
- package/dist/governance-activation/inputs.js.map +1 -1
- package/dist/governance-activation/migration-history.d.ts +43 -5
- package/dist/governance-activation/migration-history.js +231 -50
- package/dist/governance-activation/migration-history.js.map +1 -1
- package/dist/governance-activation/migration.d.ts +7 -4
- package/dist/governance-activation/migration.js +53 -252
- package/dist/governance-activation/migration.js.map +1 -1
- package/dist/governance-activation/phase-azure.d.ts +3 -0
- package/dist/governance-activation/phase-azure.js +205 -0
- package/dist/governance-activation/phase-azure.js.map +1 -0
- package/dist/governance-activation/phase-bootstrap-state.js +3 -0
- package/dist/governance-activation/phase-bootstrap-state.js.map +1 -1
- package/dist/governance-activation/phase-github.d.ts +3 -0
- package/dist/governance-activation/phase-github.js +192 -0
- package/dist/governance-activation/phase-github.js.map +1 -0
- package/dist/governance-activation/phase-governance.js +8 -2
- package/dist/governance-activation/phase-governance.js.map +1 -1
- package/dist/governance-activation/public-plans.d.ts +36 -0
- package/dist/governance-activation/public-plans.js +100 -0
- package/dist/governance-activation/public-plans.js.map +1 -0
- package/dist/governance-activation/read-only.d.ts +3 -1
- package/dist/governance-activation/read-only.js +7 -3
- package/dist/governance-activation/read-only.js.map +1 -1
- package/dist/governance-activation/reconciliation.js +10 -0
- package/dist/governance-activation/reconciliation.js.map +1 -1
- package/dist/governance-activation/seed-lifecycle.js +14 -25
- package/dist/governance-activation/seed-lifecycle.js.map +1 -1
- package/dist/governance-activation/source-of-truth.d.ts +21 -5
- package/dist/governance-activation/source-of-truth.js +102 -13
- package/dist/governance-activation/source-of-truth.js.map +1 -1
- package/dist/governance-activation/task-projection.d.ts +4 -1
- package/dist/governance-activation/task-projection.js +32 -3
- package/dist/governance-activation/task-projection.js.map +1 -1
- package/dist/governance-activation/task-writes.d.ts +42 -0
- package/dist/governance-activation/task-writes.js +250 -0
- package/dist/governance-activation/task-writes.js.map +1 -0
- package/dist/governance-activation/transition-files.d.ts +12 -0
- package/dist/governance-activation/transition-files.js +109 -0
- package/dist/governance-activation/transition-files.js.map +1 -0
- package/dist/governance-activation/transition-planning.d.ts +3 -1
- package/dist/governance-activation/transition-planning.js +158 -20
- package/dist/governance-activation/transition-planning.js.map +1 -1
- package/dist/governance-activation/transition-ports.d.ts +31 -3
- package/dist/governance-activation/transition-records.d.ts +11 -1
- package/dist/governance-activation/transition-records.js +52 -6
- package/dist/governance-activation/transition-records.js.map +1 -1
- package/dist/governance-activation/transitions.d.ts +5 -0
- package/dist/governance-activation/transitions.js +271 -37
- package/dist/governance-activation/transitions.js.map +1 -1
- package/dist/governance-assessment/engine.js +22 -15
- package/dist/governance-assessment/engine.js.map +1 -1
- package/dist/governance-assessment/project.d.ts +2 -0
- package/dist/governance-assessment/project.js +2 -1
- package/dist/governance-assessment/project.js.map +1 -1
- package/dist/interactive.d.ts +0 -1
- package/dist/interactive.js +3 -22
- package/dist/interactive.js.map +1 -1
- package/dist/openspec-profile.d.ts +2 -1
- package/dist/openspec-profile.js +11 -41
- package/dist/openspec-profile.js.map +1 -1
- package/dist/repository-governance.d.ts +10 -5
- package/dist/repository-governance.js +178 -92
- package/dist/repository-governance.js.map +1 -1
- package/dist/telemetry/contract.d.ts +1 -1
- package/dist/telemetry/contract.js +3 -0
- package/dist/telemetry/contract.js.map +1 -1
- package/dist/workstation-catalog.d.ts +13 -1
- package/dist/workstation-catalog.js +122 -0
- package/dist/workstation-catalog.js.map +1 -1
- package/dist/workstation.d.ts +69 -14
- package/dist/workstation.js +600 -215
- package/dist/workstation.js.map +1 -1
- package/docs/cli-reference.md +59 -21
- package/docs/configuration-and-manifests.md +9 -8
- package/docs/prerequisites.md +93 -18
- package/docs/repository-governance.md +68 -40
- package/docs/spec-workflows-and-agents.md +132 -13
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-of-truth.js","sourceRoot":"","sources":["../../src/governance-activation/source-of-truth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"source-of-truth.js","sourceRoot":"","sources":["../../src/governance-activation/source-of-truth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type PhaseId, type PhaseState } from '../domain/governance/activation/types.js';
|
|
2
2
|
export interface PhaseTaskMapping {
|
|
3
3
|
phaseId: PhaseId;
|
|
4
4
|
taskId: string;
|
|
@@ -18,4 +18,7 @@ export interface TaskProjectionResult {
|
|
|
18
18
|
markdown: string;
|
|
19
19
|
changes: readonly TaskProjectionChange[];
|
|
20
20
|
}
|
|
21
|
+
/** Project only a validated current source. Historical task bytes are never a projection destination. */
|
|
22
|
+
export declare function projectGovernanceChangeTasks(markdown: string, metadata: unknown, phaseStates: Partial<Record<PhaseId, PhaseProjectionInput>>): TaskProjectionResult;
|
|
23
|
+
export declare function governanceTaskLayoutHash(markdown: string, metadata: unknown): string;
|
|
21
24
|
export declare function projectOpenSpecTaskCheckboxes(markdown: string, mappings: readonly PhaseTaskMapping[], phaseStates: Partial<Record<PhaseId, PhaseProjectionInput>>): TaskProjectionResult;
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import { phaseIds, phaseStates as currentPhaseStates } from '../domain/governance/activation/types.js';
|
|
2
|
+
import { validateGovernanceChangeMetadata } from './source-of-truth.js';
|
|
3
|
+
import { currentActivationIdentity } from '../domain/governance/activation/graph.js';
|
|
4
|
+
import { canonicalSha256, sha256Hex } from '../domain/governance/activation/canonical-json.js';
|
|
1
5
|
const checkedStates = new Set([
|
|
2
6
|
'approved',
|
|
3
7
|
'verified',
|
|
@@ -15,12 +19,18 @@ function projectionState(value) {
|
|
|
15
19
|
if (value === undefined) {
|
|
16
20
|
return undefined;
|
|
17
21
|
}
|
|
18
|
-
|
|
22
|
+
const state = typeof value === 'string' ? value : value.state;
|
|
23
|
+
if (state !== 'identity-incompatible' && !currentPhaseStates.some((entry) => entry === state)) {
|
|
24
|
+
throw new Error('Task projection requires an explicit calculated current phase state, not historical or unknown progress.');
|
|
25
|
+
}
|
|
26
|
+
return state;
|
|
19
27
|
}
|
|
20
28
|
function validateMappings(mappings) {
|
|
21
29
|
const phases = new Set();
|
|
22
30
|
const tasks = new Set();
|
|
23
31
|
for (const mapping of mappings) {
|
|
32
|
+
if (!phaseIds.some((id) => id === mapping.phaseId))
|
|
33
|
+
throw new Error('Task projection contains an unknown current phase.');
|
|
24
34
|
if (phases.has(mapping.phaseId)) {
|
|
25
35
|
throw new Error(`Task projection contains duplicate mapping for phase ${mapping.phaseId}.`);
|
|
26
36
|
}
|
|
@@ -34,6 +44,24 @@ function validateMappings(mappings) {
|
|
|
34
44
|
tasks.add(mapping.taskId);
|
|
35
45
|
}
|
|
36
46
|
}
|
|
47
|
+
/** Project only a validated current source. Historical task bytes are never a projection destination. */
|
|
48
|
+
export function projectGovernanceChangeTasks(markdown, metadata, phaseStates) {
|
|
49
|
+
const current = validateGovernanceChangeMetadata(metadata);
|
|
50
|
+
if (canonicalSha256(current.activationIdentity) !== canonicalSha256(currentActivationIdentity)) {
|
|
51
|
+
throw new Error('Historical or incompatible governance tasks cannot be projected as current proof.');
|
|
52
|
+
}
|
|
53
|
+
for (const mapping of current.phaseTaskMapping) {
|
|
54
|
+
const task = new RegExp(`^\\s*[-*]\\s+\\[[ xX]\\]\\s+${escapeRegex(mapping.taskId)}(?=\\s|$)`);
|
|
55
|
+
const rows = markdown.split(/\r?\n/u).filter((line) => task.test(line));
|
|
56
|
+
if (rows.length !== 1 || !rows[0].includes(mapping.marker) || markdown.split(mapping.marker).length !== 2) {
|
|
57
|
+
throw new Error(`Current task ${mapping.taskId} must have exactly its registered phase marker.`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return projectOpenSpecTaskCheckboxes(markdown, current.phaseTaskMapping, phaseStates);
|
|
61
|
+
}
|
|
62
|
+
export function governanceTaskLayoutHash(markdown, metadata) {
|
|
63
|
+
return sha256Hex(projectGovernanceChangeTasks(markdown, metadata, Object.fromEntries(phaseIds.map((id) => [id, 'pending']))).markdown);
|
|
64
|
+
}
|
|
37
65
|
export function projectOpenSpecTaskCheckboxes(markdown, mappings, phaseStates) {
|
|
38
66
|
validateMappings(mappings);
|
|
39
67
|
const lines = markdown.split('\n');
|
|
@@ -45,7 +73,7 @@ export function projectOpenSpecTaskCheckboxes(markdown, mappings, phaseStates) {
|
|
|
45
73
|
}
|
|
46
74
|
const pattern = new RegExp(`^(\\s*[-*]\\s+\\[)([ xX])(\\]\\s+${escapeRegex(mapping.taskId)}(?=\\s|$).*)$`);
|
|
47
75
|
const matches = lines
|
|
48
|
-
.map((line, index) => ({ line, index, match: line.match(pattern) }))
|
|
76
|
+
.map((line, index) => ({ line, index, match: (line.endsWith('\r') ? line.slice(0, -1) : line).match(pattern) }))
|
|
49
77
|
.filter((entry) => entry.match !== null);
|
|
50
78
|
if (matches.length === 0) {
|
|
51
79
|
throw new Error(`Task projection mapping for ${mapping.phaseId} cannot find task ${mapping.taskId}.`);
|
|
@@ -57,7 +85,8 @@ export function projectOpenSpecTaskCheckboxes(markdown, mappings, phaseStates) {
|
|
|
57
85
|
const fromChecked = match.match[2].toLowerCase() === 'x';
|
|
58
86
|
const toChecked = projectedChecked(state);
|
|
59
87
|
if (fromChecked !== toChecked) {
|
|
60
|
-
|
|
88
|
+
const position = match.match[1].length;
|
|
89
|
+
lines[match.index] = `${match.line.slice(0, position)}${toChecked ? 'x' : ' '}${match.line.slice(position + 1)}`;
|
|
61
90
|
changes.push({
|
|
62
91
|
phaseId: mapping.phaseId,
|
|
63
92
|
taskId: mapping.taskId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-projection.js","sourceRoot":"","sources":["../../src/governance-activation/task-projection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"task-projection.js","sourceRoot":"","sources":["../../src/governance-activation/task-projection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type GovernanceTaskProjectionContract, type GovernanceTaskProjectionRecord, type PhaseEvidenceRecord, type PhaseGraphNode, type SavedTransitionPlan, type TransitionOperation, type UserActivationState } from '../domain/governance/activation/types.js';
|
|
2
|
+
import { type ProjectFileMutation, type ProjectFileSnapshot } from '../adapters/filesystem/project-transaction.js';
|
|
3
|
+
import type { GovernanceTransitionInspection } from './transition-ports.js';
|
|
4
|
+
import { type GovernanceChangeMetadata, type GovernanceChangeWritePlan } from './source-of-truth.js';
|
|
5
|
+
import { type ActivationInputSnapshot } from './inputs.js';
|
|
6
|
+
export interface CapturedGovernanceTaskSource {
|
|
7
|
+
contract: GovernanceTaskProjectionContract;
|
|
8
|
+
metadata: GovernanceChangeMetadata;
|
|
9
|
+
metadataBefore: ProjectFileSnapshot;
|
|
10
|
+
taskBefore: ProjectFileSnapshot;
|
|
11
|
+
text: string;
|
|
12
|
+
}
|
|
13
|
+
export interface PreparedGovernanceTaskProjection {
|
|
14
|
+
source: CapturedGovernanceTaskSource;
|
|
15
|
+
record: GovernanceTaskProjectionRecord;
|
|
16
|
+
mutation?: ProjectFileMutation;
|
|
17
|
+
}
|
|
18
|
+
export declare function governanceSourceFilesWithoutTasks(plan: GovernanceChangeWritePlan): GovernanceChangeWritePlan['files'];
|
|
19
|
+
/** Checkbox bits are declared derived values; all other source bytes and metadata are approval-bound. */
|
|
20
|
+
export declare function planGovernanceTaskProjection(inspection: GovernanceTransitionInspection, phase: PhaseGraphNode): Promise<TransitionOperation | undefined>;
|
|
21
|
+
export declare function withoutDerivedTaskWrites(mutations: readonly ProjectFileMutation[], projection?: TransitionOperation): readonly ProjectFileMutation[];
|
|
22
|
+
export declare function captureGovernanceTaskSource(inspection: GovernanceTransitionInspection, plan: SavedTransitionPlan): Promise<CapturedGovernanceTaskSource | undefined>;
|
|
23
|
+
export declare function calculatePostOutcomeTaskReadiness(input: {
|
|
24
|
+
inspection: GovernanceTransitionInspection;
|
|
25
|
+
plan: SavedTransitionPlan;
|
|
26
|
+
nextState: UserActivationState;
|
|
27
|
+
snapshot: ActivationInputSnapshot;
|
|
28
|
+
evidenceRecord?: PhaseEvidenceRecord;
|
|
29
|
+
now: Date;
|
|
30
|
+
}): Promise<import("../domain/governance/activation/readiness.js").ReadinessResult>;
|
|
31
|
+
export declare function prepareGovernanceTaskProjection(input: {
|
|
32
|
+
source: CapturedGovernanceTaskSource;
|
|
33
|
+
inspection: GovernanceTransitionInspection;
|
|
34
|
+
plan: SavedTransitionPlan;
|
|
35
|
+
nextState: UserActivationState;
|
|
36
|
+
snapshot: ActivationInputSnapshot;
|
|
37
|
+
evidenceRecord?: PhaseEvidenceRecord;
|
|
38
|
+
now: Date;
|
|
39
|
+
}): Promise<PreparedGovernanceTaskProjection>;
|
|
40
|
+
export declare function blockedGovernanceTaskProjection(plan: SavedTransitionPlan, now: Date, blocker: string): GovernanceTaskProjectionRecord | undefined;
|
|
41
|
+
export declare function validatePreparedTaskProjection(plan: SavedTransitionPlan, nextState: UserActivationState, prepared: PreparedGovernanceTaskProjection): void;
|
|
42
|
+
export declare function uniqueTaskWritePreconditions(snapshots: readonly ProjectFileSnapshot[]): ProjectFileSnapshot[];
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
import { canonicalSha256, sha256Hex } from '../domain/governance/activation/canonical-json.js';
|
|
2
|
+
import { phaseIds } from '../domain/governance/activation/types.js';
|
|
3
|
+
import { validateApprovalEnvelope, validateGovernanceTaskProjectionContract, validateGovernanceTaskProjectionRecord } from '../domain/governance/activation/validators.js';
|
|
4
|
+
import { calculatePhaseReadiness } from '../domain/governance/activation/readiness.js';
|
|
5
|
+
import { phaseCapabilities } from '../domain/governance/activation/capabilities.js';
|
|
6
|
+
import { governanceTaskProjectionAction, taskProjectionContract } from '../domain/governance/activation/operations.js';
|
|
7
|
+
import { buildApprovedPhase0FactsFromState, renderGovernanceChangeWritePlan, validateGovernanceChangeMetadata } from './source-of-truth.js';
|
|
8
|
+
import { governanceTaskLayoutHash, projectGovernanceChangeTasks } from './task-projection.js';
|
|
9
|
+
import { activationEvidenceContexts, activationInputPathIsObserved, isSensitiveActivationPath, protectedLocalInputBlockers } from './inputs.js';
|
|
10
|
+
import { discoverGeneratedSeed, inspectArchivedSeedIntegrity, seedInfrastructureBaselineBlocker } from './seed-lifecycle.js';
|
|
11
|
+
import { captureHistoryFile, historicalActiveRecordPaths } from './historical-state.js';
|
|
12
|
+
import { parseHistoryJson } from './history-contracts.js';
|
|
13
|
+
import { historicalLifecyclePhaseBlockers } from './migration-history.js';
|
|
14
|
+
import { readActivationEvidence, readReviewedTransitionPlans } from './proof-records.js';
|
|
15
|
+
import { assertGovernanceApprovalIssued } from './authority-records.js';
|
|
16
|
+
function taskPaths(metadata) {
|
|
17
|
+
const base = metadata.workflowKind === 'openspec' ? ['openspec', 'changes', metadata.changeId] : ['specs', metadata.changeId];
|
|
18
|
+
return { taskPathParts: [...base, 'tasks.md'], metadataPathParts: [...base, 'liftoff-governance.json'] };
|
|
19
|
+
}
|
|
20
|
+
function text(snapshot) {
|
|
21
|
+
if (!snapshot.content || snapshot.content.length > 262_144)
|
|
22
|
+
throw new Error('Current governance tasks/metadata require bounded existing UTF-8 source.');
|
|
23
|
+
return new TextDecoder('utf-8', { fatal: true, ignoreBOM: true }).decode(snapshot.content);
|
|
24
|
+
}
|
|
25
|
+
function assertPublicTaskPaths(inspection, paths) {
|
|
26
|
+
for (const parts of paths) {
|
|
27
|
+
if (isSensitiveActivationPath(parts, inspection.sensitivePathExclusions ?? [])) {
|
|
28
|
+
throw new Error('Protected retained material cannot be consumed or replaced by governance task projection.');
|
|
29
|
+
}
|
|
30
|
+
if (activationInputPathIsObserved(parts)) {
|
|
31
|
+
throw new Error('Task projection cannot target an application, seed, or execution-input file.');
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export function governanceSourceFilesWithoutTasks(plan) {
|
|
36
|
+
const { taskPathParts } = taskPaths(plan.metadata);
|
|
37
|
+
return plan.files.filter((file) => file.pathParts.join('/') !== taskPathParts.join('/'));
|
|
38
|
+
}
|
|
39
|
+
/** Checkbox bits are declared derived values; all other source bytes and metadata are approval-bound. */
|
|
40
|
+
export async function planGovernanceTaskProjection(inspection, phase) {
|
|
41
|
+
let contract;
|
|
42
|
+
if (phase.id === 'activation-approved' && inspection.sourceOfTruth.status === 'none') {
|
|
43
|
+
const facts = buildApprovedPhase0FactsFromState(inspection.manifest, inspection.state, inspection.evidence, inspection.contexts['phase-0-complete']);
|
|
44
|
+
if (!facts)
|
|
45
|
+
throw new Error('Current Phase 0 proof is required before planning initial governance task projection.');
|
|
46
|
+
const creation = renderGovernanceChangeWritePlan(facts);
|
|
47
|
+
const paths = taskPaths(creation.metadata);
|
|
48
|
+
assertPublicTaskPaths(inspection, [paths.taskPathParts, paths.metadataPathParts]);
|
|
49
|
+
const template = creation.files.find((file) => file.pathParts.join('/') === paths.taskPathParts.join('/'))?.content;
|
|
50
|
+
const metadataText = creation.files.find((file) => file.pathParts.join('/') === paths.metadataPathParts.join('/'))?.content;
|
|
51
|
+
if (!template || !metadataText)
|
|
52
|
+
throw new Error('The current creation inventory omitted its exact task or metadata artifact.');
|
|
53
|
+
contract = validateGovernanceTaskProjectionContract({
|
|
54
|
+
schemaVersion: 1, derivation: 'validated-current-readiness', source: 'create',
|
|
55
|
+
changeId: creation.changeId, workflowKind: creation.workflowKind, ...paths,
|
|
56
|
+
metadataHash: sha256Hex(metadataText), layoutHash: governanceTaskLayoutHash(template, creation.metadata),
|
|
57
|
+
template, metadataText
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
if (inspection.sourceOfTruth.status !== 'selected' || !inspection.sourceOfTruth.selected.metadata)
|
|
62
|
+
return undefined;
|
|
63
|
+
const selected = inspection.sourceOfTruth.selected;
|
|
64
|
+
const metadata = validateGovernanceChangeMetadata(selected.metadata);
|
|
65
|
+
if (inspection.sourceOfTruth.reconciliation.status !== 'not-required' ||
|
|
66
|
+
metadata.phaseGraphHash !== inspection.graphHash ||
|
|
67
|
+
canonicalSha256(metadata.activationIdentity) !== canonicalSha256(inspection.state.identity) ||
|
|
68
|
+
metadata.changeId === inspection.state.successorHistory?.sourceActiveChange?.id &&
|
|
69
|
+
metadata.workflowKind === inspection.state.successorHistory.sourceActiveChange.kind) {
|
|
70
|
+
throw new Error('Only the selected current governance source can receive task projection.');
|
|
71
|
+
}
|
|
72
|
+
const paths = taskPaths(metadata);
|
|
73
|
+
if (selected.pathParts.join('/') !== paths.taskPathParts.slice(0, -1).join('/'))
|
|
74
|
+
throw new Error('The selected source path differs from its metadata.');
|
|
75
|
+
assertPublicTaskPaths(inspection, [paths.taskPathParts, paths.metadataPathParts]);
|
|
76
|
+
const metadataFile = await captureHistoryFile(inspection.projectRoot, paths.metadataPathParts);
|
|
77
|
+
const tasks = await captureHistoryFile(inspection.projectRoot, paths.taskPathParts);
|
|
78
|
+
const parsed = validateGovernanceChangeMetadata(parseHistoryJson(metadataFile.content ?? Buffer.alloc(0), 'current governance metadata'));
|
|
79
|
+
if (canonicalSha256(parsed) !== canonicalSha256(metadata))
|
|
80
|
+
throw new Error('Current source metadata changed during task planning.');
|
|
81
|
+
contract = validateGovernanceTaskProjectionContract({
|
|
82
|
+
schemaVersion: 1, derivation: 'validated-current-readiness', source: 'existing',
|
|
83
|
+
changeId: metadata.changeId, workflowKind: metadata.workflowKind, ...paths,
|
|
84
|
+
metadataHash: sha256Hex(text(metadataFile)), layoutHash: governanceTaskLayoutHash(text(tasks), metadata)
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
adapter: 'local-evidence', actionId: governanceTaskProjectionAction, mutationClass: 'project-governance-tasks',
|
|
89
|
+
phaseId: phase.id, inputs: { projection: contract },
|
|
90
|
+
destination: { type: 'local', identity: contract.taskPathParts.join('/'), pathParts: contract.taskPathParts },
|
|
91
|
+
remote: false, destructive: false
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
export function withoutDerivedTaskWrites(mutations, projection) {
|
|
95
|
+
const contract = projection && taskProjectionContract([projection]);
|
|
96
|
+
if (!contract)
|
|
97
|
+
return mutations;
|
|
98
|
+
return mutations.filter((mutation) => {
|
|
99
|
+
if (mutation.pathParts.join('/') !== contract.taskPathParts.join('/'))
|
|
100
|
+
return true;
|
|
101
|
+
if (contract.source !== 'create' || mutation.type !== 'write' || mutation.content.toString() !== contract.template) {
|
|
102
|
+
throw new Error('An adapter cannot replace current task text under a checkbox-projection contract.');
|
|
103
|
+
}
|
|
104
|
+
return false;
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
export async function captureGovernanceTaskSource(inspection, plan) {
|
|
108
|
+
const contract = taskProjectionContract(plan.operations);
|
|
109
|
+
if (!contract)
|
|
110
|
+
return undefined;
|
|
111
|
+
assertPublicTaskPaths(inspection, [contract.taskPathParts, contract.metadataPathParts]);
|
|
112
|
+
const taskBefore = await captureHistoryFile(inspection.projectRoot, contract.taskPathParts);
|
|
113
|
+
const metadataBefore = await captureHistoryFile(inspection.projectRoot, contract.metadataPathParts);
|
|
114
|
+
if (contract.source === 'create' && (taskBefore.content !== undefined || metadataBefore.content !== undefined)) {
|
|
115
|
+
throw new Error('Current source creation cannot overwrite existing task or metadata files.');
|
|
116
|
+
}
|
|
117
|
+
const metadataText = contract.source === 'create' ? contract.metadataText : text(metadataBefore);
|
|
118
|
+
const taskText = contract.source === 'create' ? contract.template : text(taskBefore);
|
|
119
|
+
const metadata = validateGovernanceChangeMetadata(parseHistoryJson(Buffer.from(metadataText), 'current task projection metadata'));
|
|
120
|
+
if (metadata.changeId !== contract.changeId || metadata.workflowKind !== contract.workflowKind ||
|
|
121
|
+
canonicalSha256(metadata.activationIdentity) !== canonicalSha256(plan.identity) ||
|
|
122
|
+
sha256Hex(metadataText) !== contract.metadataHash || governanceTaskLayoutHash(taskText, metadata) !== contract.layoutHash) {
|
|
123
|
+
throw new Error('Current task source changed outside the approved checkbox-only derivation.');
|
|
124
|
+
}
|
|
125
|
+
return { contract, metadata, metadataBefore, taskBefore, text: taskText };
|
|
126
|
+
}
|
|
127
|
+
async function issuedApprovals(inspection) {
|
|
128
|
+
const approvals = [];
|
|
129
|
+
for (const parts of await historicalActiveRecordPaths(inspection.projectRoot, 'approvals')) {
|
|
130
|
+
const file = await captureHistoryFile(inspection.projectRoot, parts);
|
|
131
|
+
if (!file.content)
|
|
132
|
+
throw new Error('A current approval disappeared during post-outcome inspection.');
|
|
133
|
+
const approval = validateApprovalEnvelope(parseHistoryJson(file.content, parts.join('/')), { expectedIdentity: inspection.state.identity });
|
|
134
|
+
await assertGovernanceApprovalIssued(inspection.projectRoot, approval);
|
|
135
|
+
approvals.push(approval);
|
|
136
|
+
}
|
|
137
|
+
return approvals;
|
|
138
|
+
}
|
|
139
|
+
export async function calculatePostOutcomeTaskReadiness(input) {
|
|
140
|
+
const { inspection, plan, nextState, snapshot, now } = input;
|
|
141
|
+
const evidence = await readActivationEvidence(inspection.projectRoot);
|
|
142
|
+
if (input.evidenceRecord) {
|
|
143
|
+
if (evidence.some((record) => record.evidenceId === input.evidenceRecord.evidenceId))
|
|
144
|
+
throw new Error('The prospective current evidence identity is already occupied.');
|
|
145
|
+
evidence.push(input.evidenceRecord);
|
|
146
|
+
}
|
|
147
|
+
const plans = await readReviewedTransitionPlans(inspection.projectRoot);
|
|
148
|
+
if (!plans.some((entry) => canonicalSha256(entry) === canonicalSha256(plan)))
|
|
149
|
+
throw new Error('The saved reviewed plan changed before task projection.');
|
|
150
|
+
const contexts = activationEvidenceContexts(inspection.graph, nextState, snapshot, now);
|
|
151
|
+
for (const id of phaseIds)
|
|
152
|
+
contexts[id].reviewedPlans = plans;
|
|
153
|
+
const archived = await inspectArchivedSeedIntegrity(inspection.projectRoot, inspection.manifest);
|
|
154
|
+
const seed = await discoverGeneratedSeed(inspection.projectRoot, inspection.manifest);
|
|
155
|
+
const infrastructure = seedInfrastructureBaselineBlocker(inspection.manifest);
|
|
156
|
+
const local = [...(infrastructure ? [infrastructure] : []), ...protectedLocalInputBlockers(snapshot.sensitivePathExclusions ?? [])];
|
|
157
|
+
const historical = historicalLifecyclePhaseBlockers(inspection.historicalLifecycleObligations ?? []);
|
|
158
|
+
return calculatePhaseReadiness({
|
|
159
|
+
graph: inspection.graph, state: nextState, evidence, approvals: await issuedApprovals(inspection),
|
|
160
|
+
transitionContexts: contexts, scope: inspection.scope, recoverPhase: inspection.recoverPhase,
|
|
161
|
+
retryArchivedSeedBaseline: nextState.phases['seed-verified'].state === 'blocked' && archived.status === 'valid' && seed.state === 'archived',
|
|
162
|
+
historicalLifecycleBlockers: historical['bootstrap-state-disposed'],
|
|
163
|
+
phaseBlockers: {
|
|
164
|
+
...Object.fromEntries(Object.entries(phaseCapabilities).filter(([, capability]) => capability.blocker)
|
|
165
|
+
.map(([id, capability]) => [id, [capability.blocker]])),
|
|
166
|
+
...(archived.status === 'invalid' ? { 'seed-archived': archived.issues } : {}),
|
|
167
|
+
...(seed.state === 'blocked' ? { 'seed-valid': seed.issues } : {}),
|
|
168
|
+
...(local.length ? { 'seed-verified': local } : {}), ...historical
|
|
169
|
+
}, now
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
export async function prepareGovernanceTaskProjection(input) {
|
|
173
|
+
const readiness = await calculatePostOutcomeTaskReadiness(input);
|
|
174
|
+
const succeeded = new Set(['verified', 'approved', 'inapplicable', 'retained', 'disposed']);
|
|
175
|
+
if (succeeded.has(input.nextState.phases[input.plan.phaseId].state) &&
|
|
176
|
+
!succeeded.has(readiness.phases[input.plan.phaseId].state)) {
|
|
177
|
+
throw new Error(`The completed ${input.plan.phaseId} outcome has no current post-operation readiness: ${readiness.phases[input.plan.phaseId].blockers.join(' ')}`);
|
|
178
|
+
}
|
|
179
|
+
const states = Object.fromEntries(phaseIds.map((id) => [id, readiness.phases[id].state]));
|
|
180
|
+
const projected = projectGovernanceChangeTasks(input.source.text, input.source.metadata, readiness.phases);
|
|
181
|
+
if (governanceTaskLayoutHash(projected.markdown, input.source.metadata) !== input.source.contract.layoutHash) {
|
|
182
|
+
throw new Error('Task projection changed text outside the exact mapped checkbox characters.');
|
|
183
|
+
}
|
|
184
|
+
const record = validateGovernanceTaskProjectionRecord({
|
|
185
|
+
schemaVersion: 1, purpose: 'projection-audit-only', phaseId: input.plan.phaseId, planDigest: input.plan.planDigest,
|
|
186
|
+
contractDigest: canonicalSha256(input.source.contract), taskPathParts: input.source.contract.taskPathParts,
|
|
187
|
+
metadataHash: input.source.contract.metadataHash, layoutHash: input.source.contract.layoutHash,
|
|
188
|
+
status: 'complete', observedAt: input.now.toISOString(),
|
|
189
|
+
beforeHash: input.source.taskBefore.content ? sha256Hex(text(input.source.taskBefore)) : null,
|
|
190
|
+
afterHash: sha256Hex(projected.markdown), states, blockers: []
|
|
191
|
+
});
|
|
192
|
+
return {
|
|
193
|
+
source: input.source, record,
|
|
194
|
+
...(input.source.taskBefore.content?.equals(Buffer.from(projected.markdown)) ? {} : {
|
|
195
|
+
mutation: { type: 'write', pathParts: [...input.source.contract.taskPathParts], content: projected.markdown }
|
|
196
|
+
})
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
export function blockedGovernanceTaskProjection(plan, now, blocker) {
|
|
200
|
+
const contract = taskProjectionContract(plan.operations);
|
|
201
|
+
if (!contract)
|
|
202
|
+
return undefined;
|
|
203
|
+
return validateGovernanceTaskProjectionRecord({
|
|
204
|
+
schemaVersion: 1, purpose: 'projection-audit-only', phaseId: plan.phaseId, planDigest: plan.planDigest,
|
|
205
|
+
contractDigest: canonicalSha256(contract), taskPathParts: contract.taskPathParts,
|
|
206
|
+
metadataHash: contract.metadataHash, layoutHash: contract.layoutHash, status: 'blocked', observedAt: now.toISOString(),
|
|
207
|
+
beforeHash: null, afterHash: null, states: null, blockers: [blocker]
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
export function validatePreparedTaskProjection(plan, nextState, prepared) {
|
|
211
|
+
const contract = taskProjectionContract(plan.operations);
|
|
212
|
+
const record = validateGovernanceTaskProjectionRecord(prepared.record);
|
|
213
|
+
if (!contract || canonicalSha256(contract) !== canonicalSha256(prepared.source.contract) ||
|
|
214
|
+
record.contractDigest !== canonicalSha256(contract) || record.planDigest !== plan.planDigest ||
|
|
215
|
+
record.phaseId !== plan.phaseId || Date.parse(record.observedAt) < Date.parse(plan.createdAt) ||
|
|
216
|
+
canonicalSha256(nextState.taskProjection) !== canonicalSha256(record) || record.states === null ||
|
|
217
|
+
record.metadataHash !== contract.metadataHash || record.layoutHash !== contract.layoutHash ||
|
|
218
|
+
record.taskPathParts.join('/') !== contract.taskPathParts.join('/') ||
|
|
219
|
+
prepared.source.taskBefore.pathParts.join('/') !== contract.taskPathParts.join('/') ||
|
|
220
|
+
prepared.source.metadataBefore.pathParts.join('/') !== contract.metadataPathParts.join('/')) {
|
|
221
|
+
throw new Error('Derived task output is not bound to this exact approved phase contract.');
|
|
222
|
+
}
|
|
223
|
+
const metadataText = contract.source === 'create' ? contract.metadataText : text(prepared.source.metadataBefore);
|
|
224
|
+
const original = contract.source === 'create' ? contract.template : text(prepared.source.taskBefore);
|
|
225
|
+
if (sha256Hex(metadataText) !== contract.metadataHash || original !== prepared.source.text ||
|
|
226
|
+
canonicalSha256(validateGovernanceChangeMetadata(parseHistoryJson(Buffer.from(metadataText), 'task projection metadata'))) !== canonicalSha256(prepared.source.metadata) ||
|
|
227
|
+
record.beforeHash !== (prepared.source.taskBefore.content ? sha256Hex(text(prepared.source.taskBefore)) : null)) {
|
|
228
|
+
throw new Error('Task projection lost its exact captured source/metadata preconditions.');
|
|
229
|
+
}
|
|
230
|
+
const content = projectGovernanceChangeTasks(prepared.source.text, prepared.source.metadata, record.states).markdown;
|
|
231
|
+
if (sha256Hex(content) !== record.afterHash || governanceTaskLayoutHash(content, prepared.source.metadata) !== contract.layoutHash ||
|
|
232
|
+
(prepared.mutation ? prepared.mutation.type !== 'write' || prepared.mutation.pathParts.join('/') !== contract.taskPathParts.join('/') ||
|
|
233
|
+
prepared.mutation.content.toString() !== content : !prepared.source.taskBefore.content?.equals(Buffer.from(content)))) {
|
|
234
|
+
throw new Error('Derived task output is not the exact checkbox projection of validated readiness.');
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
export function uniqueTaskWritePreconditions(snapshots) {
|
|
238
|
+
const unique = new Map();
|
|
239
|
+
for (const snapshot of snapshots) {
|
|
240
|
+
const key = snapshot.pathParts.join('/');
|
|
241
|
+
const prior = unique.get(key);
|
|
242
|
+
if (prior && (prior.mode !== snapshot.mode || (prior.content === undefined
|
|
243
|
+
? snapshot.content !== undefined : !snapshot.content?.equals(prior.content)))) {
|
|
244
|
+
throw new Error(`Task/source preconditions conflict at ${key}.`);
|
|
245
|
+
}
|
|
246
|
+
unique.set(key, snapshot);
|
|
247
|
+
}
|
|
248
|
+
return [...unique.values()];
|
|
249
|
+
}
|
|
250
|
+
//# sourceMappingURL=task-writes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-writes.js","sourceRoot":"","sources":["../../src/governance-activation/task-writes.ts"],"names":[],"mappings":"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"}
|