@agent-teams/engineering-foundation 1.1.0 → 1.2.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/README.md +9 -0
- package/dist/capabilities/governance-architecture-decisions/adapters/outbound/filesystem/filesystem-architecture-decision-baseline-repository.d.ts.map +1 -1
- package/dist/capabilities/governance-architecture-decisions/adapters/outbound/filesystem/filesystem-architecture-decision-baseline-repository.js +6 -6
- package/dist/capabilities/governance-architecture-decisions/adapters/outbound/filesystem/filesystem-architecture-decision-baseline-repository.js.map +1 -1
- package/dist/capabilities/governance-architecture-decisions/application/policies/architecture-decision-baseline-input.d.ts +1 -0
- package/dist/capabilities/governance-architecture-decisions/application/policies/architecture-decision-baseline-input.d.ts.map +1 -1
- package/dist/capabilities/governance-architecture-decisions/application/policies/architecture-decision-baseline-input.js +6 -0
- package/dist/capabilities/governance-architecture-decisions/application/policies/architecture-decision-baseline-input.js.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/inbound/configuration/load-capability-config.d.ts +1 -1
- package/dist/capabilities/source-dependencies/adapters/inbound/configuration/load-capability-config.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/inbound/configuration/load-capability-config.js +3 -2
- package/dist/capabilities/source-dependencies/adapters/inbound/configuration/load-capability-config.js.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/inbound/configuration/parse-capability-config.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/inbound/configuration/parse-capability-config.js +17 -13
- package/dist/capabilities/source-dependencies/adapters/inbound/configuration/parse-capability-config.js.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/generated-output-filesystem.d.ts +1 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/generated-output-filesystem.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/generated-output-filesystem.js +22 -7
- package/dist/capabilities/source-dependencies/adapters/outbound/node/generated-output-filesystem.js.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/generated-output-manifest-observations.d.ts +8 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/generated-output-manifest-observations.d.ts.map +1 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/generated-output-manifest-observations.js +135 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/generated-output-manifest-observations.js.map +1 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/node-source-dependency-resolver.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/node-source-dependency-resolver.js +1 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/node-source-dependency-resolver.js.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/pnpm-source-workspace-snapshot.d.ts +4 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/pnpm-source-workspace-snapshot.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/pnpm-source-workspace-snapshot.js +70 -34
- package/dist/capabilities/source-dependencies/adapters/outbound/node/pnpm-source-workspace-snapshot.js.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/pnpm-source-workspace-topology-inspector.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/pnpm-source-workspace-topology-inspector.js +12 -4
- package/dist/capabilities/source-dependencies/adapters/outbound/node/pnpm-source-workspace-topology-inspector.js.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/root-package-source-scopes.d.ts +20 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/root-package-source-scopes.d.ts.map +1 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/root-package-source-scopes.js +164 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/root-package-source-scopes.js.map +1 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/selected-package-source-discovery.d.ts +11 -4
- package/dist/capabilities/source-dependencies/adapters/outbound/node/selected-package-source-discovery.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/selected-package-source-discovery.js +38 -67
- package/dist/capabilities/source-dependencies/adapters/outbound/node/selected-package-source-discovery.js.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/selected-package-source-snapshot-reader.d.ts +1 -0
- package/dist/capabilities/source-dependencies/adapters/outbound/node/selected-package-source-snapshot-reader.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/selected-package-source-snapshot-reader.js +4 -1
- package/dist/capabilities/source-dependencies/adapters/outbound/node/selected-package-source-snapshot-reader.js.map +1 -1
- package/dist/capabilities/source-dependencies/application/model/source-workspace-topology.d.ts +1 -0
- package/dist/capabilities/source-dependencies/application/model/source-workspace-topology.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/application/model/source-workspace.d.ts +5 -1
- package/dist/capabilities/source-dependencies/application/model/source-workspace.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/application/policies/evaluate-resolved-source-dependency.js +1 -1
- package/dist/capabilities/source-dependencies/application/policies/evaluate-source-workspace-coverage.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/application/policies/evaluate-source-workspace-coverage.js +19 -14
- package/dist/capabilities/source-dependencies/application/policies/evaluate-source-workspace-coverage.js.map +1 -1
- package/dist/capabilities/source-dependencies/application/policies/selected-source-package-topology.d.ts +5 -0
- package/dist/capabilities/source-dependencies/application/policies/selected-source-package-topology.d.ts.map +1 -0
- package/dist/capabilities/source-dependencies/application/policies/selected-source-package-topology.js +59 -0
- package/dist/capabilities/source-dependencies/application/policies/selected-source-package-topology.js.map +1 -0
- package/dist/capabilities/source-dependencies/application/policies/source-package-ownership.d.ts +11 -0
- package/dist/capabilities/source-dependencies/application/policies/source-package-ownership.d.ts.map +1 -0
- package/dist/capabilities/source-dependencies/application/policies/source-package-ownership.js +27 -0
- package/dist/capabilities/source-dependencies/application/policies/source-package-ownership.js.map +1 -0
- package/dist/capabilities/source-dependencies/application/ports/source-dependency-resolver.d.ts +1 -0
- package/dist/capabilities/source-dependencies/application/ports/source-dependency-resolver.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/application/ports/source-workspace-topology-inspector.d.ts +3 -0
- package/dist/capabilities/source-dependencies/application/ports/source-workspace-topology-inspector.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/application/use-cases/analyze-source-dependencies.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/application/use-cases/analyze-source-dependencies.js +17 -8
- package/dist/capabilities/source-dependencies/application/use-cases/analyze-source-dependencies.js.map +1 -1
- package/dist/capabilities/source-dependencies/application/use-cases/build-observed-source-graph.d.ts +1 -0
- package/dist/capabilities/source-dependencies/application/use-cases/build-observed-source-graph.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/application/use-cases/build-observed-source-graph.js +1 -0
- package/dist/capabilities/source-dependencies/application/use-cases/build-observed-source-graph.js.map +1 -1
- package/dist/capabilities/source-dependencies/contract/config.d.ts +1 -1
- package/dist/capabilities/source-dependencies/contract/config.js +1 -1
- package/dist/capabilities/source-dependencies/module.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/module.js +1 -1
- package/dist/capabilities/source-dependencies/module.js.map +1 -1
- package/dist/capabilities/source-dependencies/schemas.d.ts +1 -1
- package/dist/capabilities/source-dependencies/schemas.d.ts.map +1 -1
- package/dist/capabilities/source-dependencies/schemas.js +2 -1
- package/dist/capabilities/source-dependencies/schemas.js.map +1 -1
- package/dist/schema-catalog.d.ts +1 -1
- package/dist/schema-catalog.d.ts.map +1 -1
- package/dist/schema-ids.d.ts +1 -1
- package/dist/schema-ids.d.ts.map +1 -1
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.d.ts.map +1 -1
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.js +109 -3
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.js.map +1 -1
- package/dist/transaction-coordination/application/foundation-transaction-coordinator.d.ts.map +1 -1
- package/dist/transaction-coordination/application/foundation-transaction-coordinator.js +20 -0
- package/dist/transaction-coordination/application/foundation-transaction-coordinator.js.map +1 -1
- package/package.json +2 -1
- package/schemas/architecture-source-dependencies/v3.schema.json +195 -0
package/dist/schema-ids.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const FOUNDATION_SCHEMA_IDS: readonly ["architecture-source-dependencies/v1", "architecture-source-dependencies/v2", "contract-json-schema-release-baseline/v1", "contract-json-schema-releases/v1", "contract-protobuf-breaking-qualification/v1", "contract-protobuf-evolution-baseline/v1", "contract-protobuf-evolution/v1", "documentation-local-references/v1", "foundation-command-error/v1", "foundation-config/v1", "foundation-check-report/v1", "foundation-transaction-envelope/v2", "governance-architecture-decision-baseline/v1", "governance-architecture-decisions/v1", "package-public-api-baseline/v1", "package-public-api-compatibility/v1", "quality-executable-specification-catalog/v1", "quality-executable-specifications/v1", "quality-gate-run-report/v1", "quality-gate-runner/v1", "quality-suppression-governance/v1", "repository-agent-workflow/v1", "repository-security-baseline/v1", "scaffold-authority-evidence/v1", "scaffold-intent/v1", "scaffold-plan/v1", "scaffold-receipt/v1", "scaffold-recovery-journal/v1", "scaffold-target-catalog/v1", "scaffolding-config/v1", "workspace-dependency-declarations/v1"], firstSchemaId: "architecture-source-dependencies/v1" | "architecture-source-dependencies/v2" | "contract-json-schema-release-baseline/v1" | "contract-json-schema-releases/v1" | "contract-protobuf-breaking-qualification/v1" | "contract-protobuf-evolution-baseline/v1" | "contract-protobuf-evolution/v1" | "documentation-local-references/v1" | "foundation-check-report/v1" | "foundation-command-error/v1" | "foundation-config/v1" | "foundation-transaction-envelope/v2" | "governance-architecture-decision-baseline/v1" | "governance-architecture-decisions/v1" | "package-public-api-baseline/v1" | "package-public-api-compatibility/v1" | "quality-executable-specification-catalog/v1" | "quality-executable-specifications/v1" | "quality-gate-run-report/v1" | "quality-gate-runner/v1" | "quality-suppression-governance/v1" | "repository-agent-workflow/v1" | "repository-security-baseline/v1" | "scaffold-authority-evidence/v1" | "scaffold-intent/v1" | "scaffold-plan/v1" | "scaffold-receipt/v1" | "scaffold-recovery-journal/v1" | "scaffold-target-catalog/v1" | "scaffolding-config/v1" | "workspace-dependency-declarations/v1";
|
|
1
|
+
declare const FOUNDATION_SCHEMA_IDS: readonly ["architecture-source-dependencies/v1", "architecture-source-dependencies/v2", "architecture-source-dependencies/v3", "contract-json-schema-release-baseline/v1", "contract-json-schema-releases/v1", "contract-protobuf-breaking-qualification/v1", "contract-protobuf-evolution-baseline/v1", "contract-protobuf-evolution/v1", "documentation-local-references/v1", "foundation-command-error/v1", "foundation-config/v1", "foundation-check-report/v1", "foundation-transaction-envelope/v2", "governance-architecture-decision-baseline/v1", "governance-architecture-decisions/v1", "package-public-api-baseline/v1", "package-public-api-compatibility/v1", "quality-executable-specification-catalog/v1", "quality-executable-specifications/v1", "quality-gate-run-report/v1", "quality-gate-runner/v1", "quality-suppression-governance/v1", "repository-agent-workflow/v1", "repository-security-baseline/v1", "scaffold-authority-evidence/v1", "scaffold-intent/v1", "scaffold-plan/v1", "scaffold-receipt/v1", "scaffold-recovery-journal/v1", "scaffold-target-catalog/v1", "scaffolding-config/v1", "workspace-dependency-declarations/v1"], firstSchemaId: "architecture-source-dependencies/v1" | "architecture-source-dependencies/v2" | "architecture-source-dependencies/v3" | "contract-json-schema-release-baseline/v1" | "contract-json-schema-releases/v1" | "contract-protobuf-breaking-qualification/v1" | "contract-protobuf-evolution-baseline/v1" | "contract-protobuf-evolution/v1" | "documentation-local-references/v1" | "foundation-check-report/v1" | "foundation-command-error/v1" | "foundation-config/v1" | "foundation-transaction-envelope/v2" | "governance-architecture-decision-baseline/v1" | "governance-architecture-decisions/v1" | "package-public-api-baseline/v1" | "package-public-api-compatibility/v1" | "quality-executable-specification-catalog/v1" | "quality-executable-specifications/v1" | "quality-gate-run-report/v1" | "quality-gate-runner/v1" | "quality-suppression-governance/v1" | "repository-agent-workflow/v1" | "repository-security-baseline/v1" | "scaffold-authority-evidence/v1" | "scaffold-intent/v1" | "scaffold-plan/v1" | "scaffold-receipt/v1" | "scaffold-recovery-journal/v1" | "scaffold-target-catalog/v1" | "scaffolding-config/v1" | "workspace-dependency-declarations/v1";
|
|
2
2
|
export { FOUNDATION_SCHEMA_IDS };
|
|
3
3
|
export type FoundationSchemaId = typeof firstSchemaId;
|
|
4
4
|
//# sourceMappingURL=schema-ids.d.ts.map
|
package/dist/schema-ids.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-ids.d.ts","sourceRoot":"","sources":["../src/schema-ids.ts"],"names":[],"mappings":"AAoBA,QAAA,MAAmB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"schema-ids.d.ts","sourceRoot":"","sources":["../src/schema-ids.ts"],"names":[],"mappings":"AAoBA,QAAA,MAAmB,qBAAqB,wmCAAE,aAAa,0nCAkBrD,CAAC;AAEH,OAAO,EAAE,qBAAqB,EAAE,CAAC;AAEjC,MAAM,MAAM,kBAAkB,GAAG,OAAO,aAAa,CAAC"}
|
package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-foundation-transaction-slot.d.ts","sourceRoot":"","sources":["../../../../src/transaction-coordination/adapters/node/node-foundation-transaction-slot.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"node-foundation-transaction-slot.d.ts","sourceRoot":"","sources":["../../../../src/transaction-coordination/adapters/node/node-foundation-transaction-slot.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAEV,mCAAmC,EACpC,MAAM,wDAAwD,CAAC;AAChE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wDAAwD,CAAC;AACxG,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,8DAA8D,CAAC;AA0PpH,qBAAa,6BAA8B,YAAW,yBAAyB;;IAM7E,YAAY,OAAO,EAAE;QACnB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,UAAU,EAAE,+BAA+B,CAAC;KACtD,EASA;IA6DK,OAAO,IAAI,OAAO,CAAC,mCAAmC,CAAC,CAmC5D;CACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { opendir } from "node:fs/promises";
|
|
2
|
-
import { join } from "node:path";
|
|
1
|
+
import { lstat, opendir, realpath } from "node:fs/promises";
|
|
2
|
+
import { dirname, join } from "node:path";
|
|
3
3
|
import { TextDecoder } from "node:util";
|
|
4
|
-
import { FOUNDATION_LINK_STATE_FILE, FOUNDATION_REGISTRY_BACKUP, FOUNDATION_TRANSACTION_FILE, KNOWN_FILE_TRANSACTION_TEMPORARY_FILE, LOCAL_STATE_DIRECTORY } from "../../application/model/foundation-transaction-identity.js";
|
|
4
|
+
import { FOUNDATION_LINK_STATE_FILE, FOUNDATION_REGISTRY_BACKUP, FOUNDATION_TRANSACTION_FILE, KNOWN_FILE_TRANSACTION_TEMPORARY_FILE, LOCAL_STATE_DIRECTORY, LOCAL_OPERATION_LOCK } from "../../application/model/foundation-transaction-identity.js";
|
|
5
5
|
import { parseStrictJson } from "@agent-teams/repository-mutation/serialization";
|
|
6
6
|
import { readBoundedRegularFile } from "@agent-teams/repository-mutation/node";
|
|
7
7
|
import { portableRepositoryPathIdentity } from "@agent-teams/repository-mutation";
|
|
@@ -9,6 +9,7 @@ import { inspectFoundationTransitionEvidence } from "./foundation-transition-evi
|
|
|
9
9
|
const maximumTransactionBytes = 32 * 1024 * 1024;
|
|
10
10
|
const maximumLinkStateBytes = 64 * 1024;
|
|
11
11
|
const maximumStateDirectoryEntries = 1024;
|
|
12
|
+
const maximumOperationLockBytes = 64 * 1024;
|
|
12
13
|
const strictUtf8 = new TextDecoder("utf-8", { fatal: true, ignoreBOM: true });
|
|
13
14
|
function isMissing(error) {
|
|
14
15
|
return (error instanceof Error &&
|
|
@@ -18,6 +19,88 @@ function isMissing(error) {
|
|
|
18
19
|
function isRecord(value) {
|
|
19
20
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
20
21
|
}
|
|
22
|
+
async function hasUnverifiableOperationLockEntries(stateDirectory) {
|
|
23
|
+
const directory = await opendir(stateDirectory);
|
|
24
|
+
try {
|
|
25
|
+
let count = 0;
|
|
26
|
+
for (;;) {
|
|
27
|
+
const entry = await directory.read();
|
|
28
|
+
if (entry === null) {
|
|
29
|
+
break;
|
|
30
|
+
}
|
|
31
|
+
count += 1;
|
|
32
|
+
if (count > maximumStateDirectoryEntries ||
|
|
33
|
+
(entry.name !== LOCAL_OPERATION_LOCK &&
|
|
34
|
+
portableRepositoryPathIdentity(entry.name) === portableRepositoryPathIdentity(LOCAL_OPERATION_LOCK))) {
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
finally {
|
|
40
|
+
await directory.close();
|
|
41
|
+
}
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
function stateDirectoryObservationChanged(before, after) {
|
|
45
|
+
return before.dev !== after.dev || before.ino !== after.ino ||
|
|
46
|
+
before.birthtimeNs !== after.birthtimeNs || before.ctimeNs !== after.ctimeNs ||
|
|
47
|
+
!after.isDirectory() || after.isSymbolicLink();
|
|
48
|
+
}
|
|
49
|
+
function operationLockObservationChanged(first, last) {
|
|
50
|
+
return (first === undefined ? last !== undefined :
|
|
51
|
+
last === undefined || first.dev !== last.dev || first.ino !== last.ino ||
|
|
52
|
+
first.birthtimeNs !== last.birthtimeNs || first.ctimeNs !== last.ctimeNs ||
|
|
53
|
+
first.mtimeNs !== last.mtimeNs || first.size !== last.size || first.mode !== last.mode);
|
|
54
|
+
}
|
|
55
|
+
async function observeLegacyOperationLock(stateDirectory) {
|
|
56
|
+
try {
|
|
57
|
+
const canonicalParent = await realpath(dirname(stateDirectory));
|
|
58
|
+
const before = await lstat(stateDirectory, { bigint: true });
|
|
59
|
+
if (!before.isDirectory() || before.isSymbolicLink() ||
|
|
60
|
+
await realpath(stateDirectory) !== join(canonicalParent, LOCAL_STATE_DIRECTORY)) {
|
|
61
|
+
return "unverifiable";
|
|
62
|
+
}
|
|
63
|
+
if (await hasUnverifiableOperationLockEntries(stateDirectory)) {
|
|
64
|
+
return "unverifiable";
|
|
65
|
+
}
|
|
66
|
+
const path = join(stateDirectory, LOCAL_OPERATION_LOCK);
|
|
67
|
+
const first = await lstat(path, { bigint: true }).catch((error) => {
|
|
68
|
+
if (isMissing(error)) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
throw error;
|
|
72
|
+
});
|
|
73
|
+
let result = "unverifiable";
|
|
74
|
+
if (first === undefined || first.isDirectory()) {
|
|
75
|
+
result = "compatible";
|
|
76
|
+
}
|
|
77
|
+
else if (first.isFile()) {
|
|
78
|
+
// No token parsing or ownership claim: even an active regular lock is
|
|
79
|
+
// incompatible with the exact 0.9.0 directory-only reader.
|
|
80
|
+
const record = await readBoundedRegularFile(path, maximumOperationLockBytes);
|
|
81
|
+
if (record.outcome === "read" && record.identity.dev === first.dev &&
|
|
82
|
+
record.identity.ino === first.ino && record.identity.birthtimeNs === first.birthtimeNs) {
|
|
83
|
+
result = "regular";
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
const last = await lstat(path, { bigint: true }).catch((error) => {
|
|
87
|
+
if (isMissing(error)) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
throw error;
|
|
91
|
+
});
|
|
92
|
+
const after = await lstat(stateDirectory, { bigint: true });
|
|
93
|
+
if (stateDirectoryObservationChanged(before, after) ||
|
|
94
|
+
await realpath(stateDirectory) !== join(canonicalParent, LOCAL_STATE_DIRECTORY) ||
|
|
95
|
+
operationLockObservationChanged(first, last)) {
|
|
96
|
+
return "unverifiable";
|
|
97
|
+
}
|
|
98
|
+
return result;
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
return "unverifiable";
|
|
102
|
+
}
|
|
103
|
+
}
|
|
21
104
|
function manual(reason, message) {
|
|
22
105
|
return {
|
|
23
106
|
state: "manual-recovery-required",
|
|
@@ -188,6 +271,29 @@ export class NodeFoundationTransactionSlot {
|
|
|
188
271
|
if (localMode.state !== "idle" && transaction.state !== "idle") {
|
|
189
272
|
return manual("multiple-transactions", "Local-mode and transaction-slot recovery evidence coexist; both were preserved and require manual recovery.");
|
|
190
273
|
}
|
|
274
|
+
if (localMode.state === "idle" && transaction.state === "pending" &&
|
|
275
|
+
transaction.operationKind === "scaffolding" && transaction.format === "legacy-scaffolding-v1" &&
|
|
276
|
+
transaction.foundationVersion === "0.9.0") {
|
|
277
|
+
const lock = await observeLegacyOperationLock(this.#stateDirectory);
|
|
278
|
+
if (lock !== "compatible") {
|
|
279
|
+
const message = lock === "regular"
|
|
280
|
+
? "The observed regular operation lock prevents the exact Foundation 0.9.0 directory-only reader from entering recovery."
|
|
281
|
+
: "The operation lock could not be observed safely for the exact Foundation 0.9.0 reader.";
|
|
282
|
+
return {
|
|
283
|
+
state: "manual-recovery-required",
|
|
284
|
+
reason: "recovery-handler-unavailable",
|
|
285
|
+
operationKind: "scaffolding",
|
|
286
|
+
foundationVersion: transaction.foundationVersion,
|
|
287
|
+
diagnostics: [{
|
|
288
|
+
code: "FOUNDATION_TRANSACTION_MANUAL_RECOVERY_REQUIRED",
|
|
289
|
+
message: `The recognized legacy scaffolding v1 journal from Foundation 0.9.0 was preserved. ${message} Manual recovery is required; mutation and consumer cutover remain blocked. No supported automatic handoff is available.`
|
|
290
|
+
}, ...transaction.diagnostics.filter(({ code }) => code === "FOUNDATION_TRANSACTION_VERSION_MISMATCH").map(({ code }) => ({
|
|
291
|
+
code,
|
|
292
|
+
message: "The recorded Foundation 0.9.0 compiler differs from the installed reader; its recovery route is not established for the observed lock."
|
|
293
|
+
}))]
|
|
294
|
+
};
|
|
295
|
+
}
|
|
296
|
+
}
|
|
191
297
|
return transaction.state === "idle" ? localMode : transaction;
|
|
192
298
|
}
|
|
193
299
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-foundation-transaction-slot.js","sourceRoot":"","sources":["../../../../src/transaction-coordination/adapters/node/node-foundation-transaction-slot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node-foundation-transaction-slot.js","sourceRoot":"","sources":["../../../../src/transaction-coordination/adapters/node/node-foundation-transaction-slot.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,2BAA2B,EAC3B,qCAAqC,EACrC,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,4DAA4D,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AAOjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,mCAAmC,EAAE,MAAM,qCAAqC,CAAC;AAE1F,MAAM,uBAAuB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AACjD,MAAM,qBAAqB,GAAG,EAAE,GAAG,IAAI,CAAC;AACxC,MAAM,4BAA4B,GAAG,IAAI,CAAC;AAC1C,MAAM,yBAAyB,GAAG,EAAE,GAAG,IAAI,CAAC;AAC5C,MAAM,UAAU,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAE9E,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,CACL,KAAK,YAAY,KAAK;QACtB,MAAM,IAAI,KAAK;QACd,KAA+B,CAAC,IAAI,KAAK,QAAQ,CACnD,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,KAAK,UAAU,mCAAmC,CAAC,cAAsB;IACvE,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;IAChD,IAAI,CAAC;QACH,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,SAAS,CAAC;YACR,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAAA,MAAM;YAAA,CAAC;YAC5B,KAAK,IAAI,CAAC,CAAC;YACX,IAAI,KAAK,GAAG,4BAA4B;gBACpC,CAAC,KAAK,CAAC,IAAI,KAAK,oBAAoB;oBACnC,8BAA8B,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,8BAA8B,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC;gBAC1G,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gCAAgC,CAAC,MAAmB,EAAE,KAAkB;IAC/E,OAAO,MAAM,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;QACzD,MAAM,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;QAC5E,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;AACnD,CAAC;AAED,SAAS,+BAA+B,CACtC,KAA8B,EAC9B,IAA6B;IAE7B,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAChD,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG;YACtE,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO;YACxE,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5F,CAAC;AAED,KAAK,UAAU,0BAA0B,CAAC,cAAsB;IAC9D,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,cAAc,EAAE;YAChD,MAAM,QAAQ,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,eAAe,EAAE,qBAAqB,CAAC,EAAE,CAAC;YACpF,OAAO,cAAc,CAAC;QACxB,CAAC;QACD,IAAI,MAAM,mCAAmC,CAAC,cAAc,CAAC,EAAE,CAAC;YAC9D,OAAO,cAAc,CAAC;QACxB,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAA2B,EAAE;YAClG,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAA,OAAO;YAAA,CAAC;YAC/B,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QACH,IAAI,MAAM,GAA8C,cAAc,CAAC;QACvE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YAC/C,MAAM,GAAG,YAAY,CAAC;QACxB,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1B,sEAAsE;YACtE,2DAA2D;YAC3D,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;YAC7E,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;gBAC9D,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;gBAC3F,MAAM,GAAG,SAAS,CAAC;YACrB,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAA2B,EAAE;YACjG,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAA,OAAO;YAAA,CAAC;YAC/B,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,IAAI,gCAAgC,CAAC,MAAM,EAAE,KAAK,CAAC;YAC/C,MAAM,QAAQ,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,eAAe,EAAE,qBAAqB,CAAC;YAC/E,+BAA+B,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;YACjD,OAAO,cAAc,CAAC;QACxB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,cAAc,CAAC;IACxB,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CACb,MAA8C,EAC9C,OAAe;IAEf,OAAO;QACL,KAAK,EAAE,0BAA0B;QACjC,MAAM;QACN,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,iDAAiD;gBACvD,OAAO;aACR;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,OAAO;QACL,KAAK,EAAE,SAAS;QAChB,aAAa,EAAE,YAAY;QAC3B,MAAM,EAAE,eAAe;QACvB,QAAQ,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE;QACjC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,+BAA+B,EAAE,OAAO,EAAE,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,YAAY,GAAG;QACnB,YAAY;QACZ,cAAc;QACd,WAAW;QACX,UAAU;QACV,gBAAgB;QAChB,OAAO;QACP,oBAAoB;QACpB,mBAAmB;QACnB,qBAAqB;QACrB,eAAe;QACf,mBAAmB;KACpB,CAAC;IACF,IACE,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC;QAC5B,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACrE,OAAO,KAAK,CAAC,cAAc,CAAC,KAAK,QAAQ;QACzC,OAAO,KAAK,CAAC,mBAAmB,CAAC,KAAK,QAAQ;QAC9C,OAAO,KAAK,CAAC,oBAAoB,CAAC,KAAK,QAAQ;QAC/C,CAAC,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC5E,OAAO,KAAK,CAAC,qBAAqB,CAAC,KAAK,QAAQ;QAChD,OAAO,KAAK,CAAC,gBAAgB,CAAC,KAAK,QAAQ;QAC3C,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,QAAQ;QACtC,OAAO,KAAK,CAAC,UAAU,CAAC,KAAK,SAAS;QACtC,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,QAAQ;QACvC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAClE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,CAAwC,CAAC;AAC/D,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,cAAsB;IAEtB,IAAI,OAAO,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,SAAS,CAAC;gBACR,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;gBACrC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACnB,MAAM;gBACR,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzB,IAAI,OAAO,CAAC,MAAM,GAAG,4BAA4B,EAAE,CAAC;oBAClD,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;QAC5C,CAAC;QACD,OAAO,MAAM,CACX,6BAA6B,EAC7B,qEAAqE,CACtE,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,8BAA8B,CAAC,0BAA0B,CAAC,CAAC;IAChF,MAAM,cAAc,GAAG,8BAA8B,CAAC,0BAA0B,CAAC,CAAC;IAClF,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CACzB,CAAC,8BAA8B,CAAC,KAAK,CAAC,KAAK,YAAY,IAAI,KAAK,KAAK,0BAA0B,CAAC;QAChG,CAAC,8BAA8B,CAAC,KAAK,CAAC,KAAK,cAAc,IAAI,KAAK,KAAK,0BAA0B,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,MAAM,CACX,6BAA6B,EAC7B,+DAA+D,CAChE,CAAC;IACJ,CAAC;IACD,IACE,OAAO,CAAC,IAAI,CACV,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,UAAU,CAAC,GAAG,0BAA0B,GAAG,CAAC;QAClD,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CACzB,EACD,CAAC;QACD,OAAO,MAAM,CACX,6BAA6B,EAC7B,2EAA2E,CAC5E,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IAC/D,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;QAClD,OAAO,SAAS;YACd,CAAC,CAAC,gBAAgB,CACd,uGAAuG,CACxG;YACH,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,sBAAsB,CACzC,IAAI,CAAC,cAAc,EAAE,0BAA0B,CAAC,EAChD,qBAAqB,CACtB,CAAC;QACF,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,KAAK,GAAG,cAAc,CAC1B,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACjD,CAAC;QACF,IAAI,KAAK,KAAK,OAAO,IAAI,SAAS,EAAE,CAAC;YACnC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;QAC5C,CAAC;QACD,OAAO,gBAAgB,CACrB,+CAA+C,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,2BAA2B,sCAAsC,CAC1I,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CACX,6BAA6B,EAC7B,uEAAuE,CACxE,CAAC;IACJ,CAAC;AACH,CAAC;AAGD,MAAM,OAAO,6BAA6B;IAC/B,WAAW,CAAkC;IAC7C,eAAe,CAAS;IACxB,SAAS,CAAS;IAClB,uBAAuB,CAAS;IAEzC,YAAY,OAGX;QACC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;QACzE,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,EAAE,2BAA2B,CAAC,CAAC;QACnE,IAAI,CAAC,uBAAuB,GAAG,IAAI,CACjC,cAAc,EACd,qCAAqC,CACtC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,2BAA2B;QAC/B,MAAM,kBAAkB,GAAG,MAAM,mCAAmC,CAClE,IAAI,CAAC,eAAe,CACrB,CAAC;QACF,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,kBAAkB,CAAC;QAC5B,CAAC;QACD,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,sBAAsB,CACnC,IAAI,CAAC,SAAS,EACd,uBAAuB,CACxB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,sBAAsB,CACnC,IAAI,CAAC,uBAAuB,EAC5B,uBAAuB,CACxB,CAAC;gBACJ,CAAC;gBAAC,OAAO,cAAc,EAAE,CAAC;oBACxB,IAAI,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;wBAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;oBAC5C,CAAC;oBACD,OAAO,MAAM,CACX,cAAc,EACd,8FAA8F,CAC/F,CAAC;gBACJ,CAAC;gBACD,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;oBAC9B,OAAO,MAAM,CACX,eAAe,EACf,0GAA0G,CAC3G,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,MAAM,CACX,cAAc,EACd,6EAA6E,CAC9E,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAC9B,OAAO,MAAM,CACX,eAAe,EACf,yFAAyF,CAC1F,CAAC;QACJ,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC/C,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;QACjE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,MAAM,CACX,yBAAyB,EACzB,0FAA0F,CAC3F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACjD,wBAAwB,CAAC,IAAI,CAAC,eAAe,CAAC;YAC9C,IAAI,CAAC,2BAA2B,EAAE;SACnC,CAAC,CAAC;QACH,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,IAAI,WAAW,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC/D,OAAO,MAAM,CACX,uBAAuB,EACvB,6GAA6G,CAC9G,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,IAAI,WAAW,CAAC,KAAK,KAAK,SAAS;YAC7D,WAAW,CAAC,aAAa,KAAK,aAAa,IAAI,WAAW,CAAC,MAAM,KAAK,uBAAuB;YAC7F,WAAW,CAAC,iBAAiB,KAAK,OAAO,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACpE,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC1B,MAAM,OAAO,GAAG,IAAI,KAAK,SAAS;oBAChC,CAAC,CAAC,uHAAuH;oBACzH,CAAC,CAAC,wFAAwF,CAAC;gBAC7F,OAAO;oBACL,KAAK,EAAE,0BAA0B;oBACjC,MAAM,EAAE,8BAA8B;oBACtC,aAAa,EAAE,aAAa;oBAC5B,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;oBAChD,WAAW,EAAE,CAAC;4BACZ,IAAI,EAAE,iDAAiD;4BACvD,OAAO,EAAE,qFAAqF,OAAO,0HAA0H;yBAChO,EAAE,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,yCAAyC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;4BACxH,IAAI;4BACJ,OAAO,EAAE,wIAAwI;yBAClJ,CAAC,CAAC,CAAC;iBACL,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,WAAW,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;IAChE,CAAC;CACF"}
|
package/dist/transaction-coordination/application/foundation-transaction-coordinator.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundation-transaction-coordinator.d.ts","sourceRoot":"","sources":["../../../src/transaction-coordination/application/foundation-transaction-coordinator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,wCAAwC,CAAC;AAClG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"foundation-transaction-coordinator.d.ts","sourceRoot":"","sources":["../../../src/transaction-coordination/application/foundation-transaction-coordinator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,wCAAwC,CAAC;AAClG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AAsExF,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,MAAM,EAAE,mCAAmC,CAAC;IACrD,OAAO,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnF;AAED,qBAAa,gCAAgC;;IAI3C,YAAY,OAAO,EAAE;QACnB,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;QACvC,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;KAC1C,EAGA;IAEK,OAAO,IAAI,OAAO,CAAC,mCAAmC,CAAC,CAE5D;IAEK,OAAO,CAAC,OAAO,EAAE;QACrB,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;QACnD,QAAQ,CAAC,eAAe,CAAC,EAAE,oBAAoB,GAAG,wBAAwB,GAAG,YAAY,GAAG,aAAa,CAAC;KAC3G,GAAG,OAAO,CAAC,0BAA0B,CAAC,CA+DtC;CACF"}
|
|
@@ -33,6 +33,15 @@ function isKnownFileRecoveryAllowed(status, options) {
|
|
|
33
33
|
options.requestedMutation === "known-file-transaction" &&
|
|
34
34
|
!status.diagnostics.some(({ code }) => code === "FOUNDATION_TRANSACTION_VERSION_MISMATCH");
|
|
35
35
|
}
|
|
36
|
+
function isLegacyScaffoldingPreflightRefusal(status) {
|
|
37
|
+
return ((status.state === "pending" || status.state === "manual-recovery-required") &&
|
|
38
|
+
status.operationKind === "scaffolding" &&
|
|
39
|
+
status.foundationVersion === "0.9.0" &&
|
|
40
|
+
(status.state === "pending"
|
|
41
|
+
? status.format === "legacy-scaffolding-v1"
|
|
42
|
+
: status.reason === "recovery-handler-unavailable" && status.format === undefined) &&
|
|
43
|
+
status.diagnostics.some(({ code }) => code === "FOUNDATION_TRANSACTION_VERSION_MISMATCH"));
|
|
44
|
+
}
|
|
36
45
|
export class FoundationTransactionCoordinator {
|
|
37
46
|
#lock;
|
|
38
47
|
#slot;
|
|
@@ -44,6 +53,17 @@ export class FoundationTransactionCoordinator {
|
|
|
44
53
|
return this.#slot.inspect();
|
|
45
54
|
}
|
|
46
55
|
async acquire(options) {
|
|
56
|
+
// This observation may only deny. Admission still uses a fresh inspection
|
|
57
|
+
// under the existing lock, including when an old writer appears afterward.
|
|
58
|
+
// The Node slot preserves mismatch attribution when it replaces a strictly
|
|
59
|
+
// recognized v1 pending route with the existing format-less manual status.
|
|
60
|
+
const preflight = await this.#slot.inspect();
|
|
61
|
+
if (preflight.state !== "idle" && isLegacyScaffoldingPreflightRefusal(preflight)) {
|
|
62
|
+
throw new FoundationTransactionError({
|
|
63
|
+
requestedMutation: options.requestedMutation,
|
|
64
|
+
status: preflight
|
|
65
|
+
});
|
|
66
|
+
}
|
|
47
67
|
const release = await this.#lock.acquire();
|
|
48
68
|
let held = true;
|
|
49
69
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundation-transaction-coordinator.js","sourceRoot":"","sources":["../../../src/transaction-coordination/application/foundation-transaction-coordinator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"foundation-transaction-coordinator.js","sourceRoot":"","sources":["../../../src/transaction-coordination/application/foundation-transaction-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAQ/E,SAAS,sBAAsB,CAC7B,cAAuB,EACvB,cAAuB;IAEvB,IAAI,CAAC,CAAC,cAAc,YAAY,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,IAAI,cAAc,CACvB,CAAC,cAAc,EAAE,cAAc,CAAC,EAChC,gEAAgE,CACjE,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC;IAC3C,MAAM,eAAe,GACnB,aAAa,KAAK,SAAS;QACzB,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,IAAI,cAAc,CAChB,CAAC,aAAa,EAAE,cAAc,CAAC,EAC/B,mEAAmE,CACpE,CAAC;IACR,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,EAAE;QAC/D,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IACH,OAAO,QAAQ;QACb,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,IAAI,cAAc,CAChB,CAAC,cAAc,EAAE,cAAc,CAAC,EAChC,gEAAgE,CACjE,CAAC;AACR,CAAC;AAED,SAAS,0BAA0B,CACjC,MAA2C,EAC3C,OAGC;IAED,OAAO,MAAM,CAAC,KAAK,KAAK,SAAS;QAC/B,MAAM,CAAC,aAAa,KAAK,wBAAwB;QACjD,MAAM,CAAC,iBAAiB,KAAK,SAAS;QACtC,MAAM,CAAC,iBAAiB,CAAC,aAAa,KAAK,CAAC;QAC5C,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,IAAI,KAAK,kCAAkC;QAClF,MAAM,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,KAAK,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,IAAI;QAC5F,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,OAAO,KAAK,MAAM,CAAC,iBAAiB;QAC3E,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,aAAa,KAAK,MAAM,CAAC,uBAAuB;QACvF,MAAM,CAAC,iBAAiB,CAAC,cAAc,CAAC,OAAO,KAAK,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,OAAO;QAClG,MAAM,CAAC,iBAAiB,CAAC,cAAc,CAAC,aAAa,KAAK,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,aAAa;QAC9G,MAAM,CAAC,QAAQ,CAAC,sBAAsB,KAAK,MAAM,CAAC,iBAAiB;QACnE,MAAM,CAAC,QAAQ,CAAC,4BAA4B,KAAK,MAAM,CAAC,uBAAuB;QAC/E,OAAO,CAAC,eAAe,KAAK,wBAAwB;QACpD,OAAO,CAAC,iBAAiB,KAAK,wBAAwB;QACtD,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,yCAAyC,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,mCAAmC,CAAC,MAA2C;IACtF,OAAO,CACL,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,0BAA0B,CAAC;QAC3E,MAAM,CAAC,aAAa,KAAK,aAAa;QACtC,MAAM,CAAC,iBAAiB,KAAK,OAAO;QACpC,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS;YACzB,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,uBAAuB;YAC3C,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,8BAA8B,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC;QACpF,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,yCAAyC,CAAC,CAC1F,CAAC;AACJ,CAAC;AAOD,MAAM,OAAO,gCAAgC;IAClC,KAAK,CAA0B;IAC/B,KAAK,CAA4B;IAE1C,YAAY,OAGX;QACC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAGb;QACC,0EAA0E;QAC1E,2EAA2E;QAC3E,2EAA2E;QAC3E,2EAA2E;QAC3E,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC7C,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,IAAI,mCAAmC,CAAC,SAAS,CAAC,EAAE,CAAC;YACjF,MAAM,IAAI,0BAA0B,CAAC;gBACnC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,MAAM,EAAE,SAAS;aAClB,CAAC,CAAC;QACL,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC3C,IAAI,IAAI,GAAG,IAAI,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YAC1C,MAAM,0BAA0B,GAC9B,MAAM,CAAC,KAAK,KAAK,SAAS;gBAC1B,MAAM,CAAC,aAAa,KAAK,aAAa;gBACtC,CAAC,oCAAoC,EAAE,uBAAuB,CAAC,CAAC,QAAQ,CACtE,MAAM,CAAC,MAAM,CACd;gBACD,OAAO,CAAC,eAAe,KAAK,MAAM,CAAC,aAAa;gBAChD,OAAO,CAAC,iBAAiB,KAAK,MAAM,CAAC,aAAa;gBAClD,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CACtB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,yCAAyC,CACjE,CAAC;YACJ,MAAM,wBAAwB,GAC5B,MAAM,CAAC,KAAK,KAAK,SAAS;gBAC1B,MAAM,CAAC,aAAa,KAAK,YAAY;gBACrC,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;gBACzC,OAAO,CAAC,eAAe,KAAK,YAAY;gBACxC,OAAO,CAAC,iBAAiB,KAAK,QAAQ,CAAC;YACzC,MAAM,wBAAwB,GAAG,0BAA0B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC7E,IACE,MAAM,CAAC,KAAK,KAAK,MAAM;gBACvB,CAAC,0BAA0B;gBAC3B,CAAC,wBAAwB;gBACzB,CAAC,wBAAwB,EACzB,CAAC;gBACD,MAAM,IAAI,0BAA0B,CAAC;oBACnC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;oBAC5C,MAAM;iBACP,CAAC,CAAC;YACL,CAAC;YACD,OAAO;gBACL,MAAM;gBACN,KAAK,CAAC,OAAO,CAAC,cAAc;oBAC1B,IAAI,IAAI,EAAE,CAAC;wBACT,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;wBAC9B,IAAI,GAAG,KAAK,CAAC;oBACf,CAAC;gBACH,CAAC;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClD,IAAI,GAAG,KAAK,CAAC;YACf,CAAC;YAAC,OAAO,YAAY,EAAE,CAAC;gBACtB,MAAM,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACpD,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -66,6 +66,7 @@
|
|
|
66
66
|
"presets/typescript/node.json",
|
|
67
67
|
"schemas/architecture-source-dependencies/v1.schema.json",
|
|
68
68
|
"schemas/architecture-source-dependencies/v2.schema.json",
|
|
69
|
+
"schemas/architecture-source-dependencies/v3.schema.json",
|
|
69
70
|
"schemas/contract-json-schema-release-baseline/v1.schema.json",
|
|
70
71
|
"schemas/contract-json-schema-releases/v1.schema.json",
|
|
71
72
|
"schemas/contract-protobuf-breaking-qualification/v1.schema.json",
|
|
@@ -115,7 +116,7 @@
|
|
|
115
116
|
},
|
|
116
117
|
"sideEffects": false,
|
|
117
118
|
"type": "module",
|
|
118
|
-
"version": "1.
|
|
119
|
+
"version": "1.2.0",
|
|
119
120
|
"scripts": {
|
|
120
121
|
"build": "tsc --build tsconfig.json --pretty false"
|
|
121
122
|
}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.agent-teams.ai/engineering-foundation/architecture-source-dependencies/v3",
|
|
4
|
+
"title": "Source dependency architecture capability configuration v3",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": [
|
|
8
|
+
"schemaVersion",
|
|
9
|
+
"workspace",
|
|
10
|
+
"packageRoots",
|
|
11
|
+
"governedRoots",
|
|
12
|
+
"boundaries"
|
|
13
|
+
],
|
|
14
|
+
"properties": {
|
|
15
|
+
"schemaVersion": {
|
|
16
|
+
"const": 3
|
|
17
|
+
},
|
|
18
|
+
"workspace": {
|
|
19
|
+
"type": "object",
|
|
20
|
+
"additionalProperties": false,
|
|
21
|
+
"required": [
|
|
22
|
+
"kind",
|
|
23
|
+
"manifest"
|
|
24
|
+
],
|
|
25
|
+
"properties": {
|
|
26
|
+
"kind": {
|
|
27
|
+
"const": "pnpm"
|
|
28
|
+
},
|
|
29
|
+
"manifest": {
|
|
30
|
+
"const": "pnpm-workspace.yaml"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"packageRoots": {
|
|
35
|
+
"type": "array",
|
|
36
|
+
"minItems": 0,
|
|
37
|
+
"uniqueItems": true,
|
|
38
|
+
"items": {
|
|
39
|
+
"$ref": "#/$defs/repositoryDirectory"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"governedRoots": {
|
|
43
|
+
"type": "array",
|
|
44
|
+
"minItems": 1,
|
|
45
|
+
"uniqueItems": true,
|
|
46
|
+
"items": {
|
|
47
|
+
"$ref": "#/$defs/repositoryDirectory"
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"boundaries": {
|
|
51
|
+
"type": "array",
|
|
52
|
+
"minItems": 1,
|
|
53
|
+
"maxItems": 5000,
|
|
54
|
+
"items": {
|
|
55
|
+
"$ref": "#/$defs/boundary"
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"rootPackage": {
|
|
59
|
+
"const": true,
|
|
60
|
+
"description": "Select package.json as owner only of its declared governed source roots."
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
"$defs": {
|
|
64
|
+
"repositoryDirectory": {
|
|
65
|
+
"type": "string",
|
|
66
|
+
"minLength": 1,
|
|
67
|
+
"maxLength": 240,
|
|
68
|
+
"pattern": "^(?!/)(?!.*\\\\)(?!.*(?:^|/)\\.{1,2}(?:/|$))(?!.*[!*?{}[\\]()|+])[^:]+$"
|
|
69
|
+
},
|
|
70
|
+
"boundaryId": {
|
|
71
|
+
"type": "string",
|
|
72
|
+
"minLength": 1,
|
|
73
|
+
"maxLength": 120,
|
|
74
|
+
"pattern": "^[a-z0-9](?:[a-z0-9._-]{0,118}[a-z0-9])?$"
|
|
75
|
+
},
|
|
76
|
+
"packageName": {
|
|
77
|
+
"type": "string",
|
|
78
|
+
"pattern": "^(?:@[a-z0-9][a-z0-9._-]*/)?[a-z0-9][a-z0-9._-]*$"
|
|
79
|
+
},
|
|
80
|
+
"builtinName": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"pattern": "^node:[a-z0-9_./-]+$"
|
|
83
|
+
},
|
|
84
|
+
"exactPackageExport": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"maxLength": 240,
|
|
87
|
+
"pattern": "^(?:\\.|\\./(?!\\.{1,2}(?:/|$))[A-Za-z0-9@._-]*[A-Za-z0-9@_-](?:/(?!\\.{1,2}(?:/|$))[A-Za-z0-9@._-]*[A-Za-z0-9@_-])*)$"
|
|
88
|
+
},
|
|
89
|
+
"boundary": {
|
|
90
|
+
"type": "object",
|
|
91
|
+
"additionalProperties": false,
|
|
92
|
+
"required": [
|
|
93
|
+
"id",
|
|
94
|
+
"roots",
|
|
95
|
+
"entrypoints",
|
|
96
|
+
"allow"
|
|
97
|
+
],
|
|
98
|
+
"properties": {
|
|
99
|
+
"id": {
|
|
100
|
+
"$ref": "#/$defs/boundaryId"
|
|
101
|
+
},
|
|
102
|
+
"dependencyMode": {
|
|
103
|
+
"enum": [
|
|
104
|
+
"runtime",
|
|
105
|
+
"development"
|
|
106
|
+
]
|
|
107
|
+
},
|
|
108
|
+
"packageExports": {
|
|
109
|
+
"type": "array",
|
|
110
|
+
"uniqueItems": true,
|
|
111
|
+
"items": {
|
|
112
|
+
"$ref": "#/$defs/exactPackageExport"
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
"roots": {
|
|
116
|
+
"type": "array",
|
|
117
|
+
"minItems": 1,
|
|
118
|
+
"uniqueItems": true,
|
|
119
|
+
"items": {
|
|
120
|
+
"$ref": "#/$defs/repositoryDirectory"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"entrypoints": {
|
|
124
|
+
"type": "array",
|
|
125
|
+
"uniqueItems": true,
|
|
126
|
+
"items": {
|
|
127
|
+
"$ref": "#/$defs/repositoryDirectory"
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"allow": {
|
|
131
|
+
"type": "object",
|
|
132
|
+
"additionalProperties": false,
|
|
133
|
+
"required": [
|
|
134
|
+
"boundaries",
|
|
135
|
+
"packages",
|
|
136
|
+
"builtins",
|
|
137
|
+
"runtimeReferences"
|
|
138
|
+
],
|
|
139
|
+
"properties": {
|
|
140
|
+
"boundaries": {
|
|
141
|
+
"type": "array",
|
|
142
|
+
"uniqueItems": true,
|
|
143
|
+
"items": {
|
|
144
|
+
"$ref": "#/$defs/boundaryId"
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
"packages": {
|
|
148
|
+
"type": "array",
|
|
149
|
+
"uniqueItems": true,
|
|
150
|
+
"items": {
|
|
151
|
+
"$ref": "#/$defs/packageName"
|
|
152
|
+
}
|
|
153
|
+
},
|
|
154
|
+
"builtins": {
|
|
155
|
+
"type": "array",
|
|
156
|
+
"uniqueItems": true,
|
|
157
|
+
"items": {
|
|
158
|
+
"$ref": "#/$defs/builtinName"
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
"runtimeReferences": {
|
|
162
|
+
"type": "array",
|
|
163
|
+
"uniqueItems": true,
|
|
164
|
+
"items": {
|
|
165
|
+
"enum": [
|
|
166
|
+
"commonjs",
|
|
167
|
+
"dynamic",
|
|
168
|
+
"type-query"
|
|
169
|
+
]
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
"anyOf": [
|
|
178
|
+
{
|
|
179
|
+
"properties": {
|
|
180
|
+
"packageRoots": {
|
|
181
|
+
"type": "array",
|
|
182
|
+
"minItems": 1
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"required": [
|
|
188
|
+
"rootPackage"
|
|
189
|
+
],
|
|
190
|
+
"properties": {
|
|
191
|
+
"rootPackage": true
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
]
|
|
195
|
+
}
|