@agent-teams/engineering-foundation 0.11.0 → 0.13.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 +32 -0
- package/dist/cli-arguments.d.ts +5 -0
- package/dist/cli-arguments.d.ts.map +1 -1
- package/dist/cli-arguments.js +78 -15
- package/dist/cli-arguments.js.map +1 -1
- package/dist/cli.js +38 -13
- package/dist/cli.js.map +1 -1
- package/dist/document-authoring/adapters/node/node-authoring-profile-reader.d.ts +9 -0
- package/dist/document-authoring/adapters/node/node-authoring-profile-reader.d.ts.map +1 -0
- package/dist/document-authoring/adapters/node/node-authoring-profile-reader.js +53 -0
- package/dist/document-authoring/adapters/node/node-authoring-profile-reader.js.map +1 -0
- package/dist/document-authoring/adapters/node/node-metadata-instance-validator.d.ts +9 -0
- package/dist/document-authoring/adapters/node/node-metadata-instance-validator.d.ts.map +1 -0
- package/dist/document-authoring/adapters/node/node-metadata-instance-validator.js +84 -0
- package/dist/document-authoring/adapters/node/node-metadata-instance-validator.js.map +1 -0
- package/dist/document-authoring/adapters/node/node-owner-membership-reader.d.ts +10 -0
- package/dist/document-authoring/adapters/node/node-owner-membership-reader.d.ts.map +1 -0
- package/dist/document-authoring/adapters/node/node-owner-membership-reader.js +62 -0
- package/dist/document-authoring/adapters/node/node-owner-membership-reader.js.map +1 -0
- package/dist/document-authoring/adapters/node/read-document-authority-file.d.ts +12 -0
- package/dist/document-authoring/adapters/node/read-document-authority-file.d.ts.map +1 -0
- package/dist/document-authoring/adapters/node/read-document-authority-file.js +88 -0
- package/dist/document-authoring/adapters/node/read-document-authority-file.js.map +1 -0
- package/dist/document-authoring/application/model/document-catalog.d.ts +59 -0
- package/dist/document-authoring/application/model/document-catalog.d.ts.map +1 -0
- package/dist/document-authoring/application/model/document-catalog.js +2 -0
- package/dist/document-authoring/application/model/document-catalog.js.map +1 -0
- package/dist/document-authoring/application/model/document-find.d.ts +18 -0
- package/dist/document-authoring/application/model/document-find.d.ts.map +1 -0
- package/dist/document-authoring/application/model/document-find.js +2 -0
- package/dist/document-authoring/application/model/document-find.js.map +1 -0
- package/dist/document-authoring/application/policies/document-catalog-diagnostics.d.ts +8 -0
- package/dist/document-authoring/application/policies/document-catalog-diagnostics.d.ts.map +1 -0
- package/dist/document-authoring/application/policies/document-catalog-diagnostics.js +44 -0
- package/dist/document-authoring/application/policies/document-catalog-diagnostics.js.map +1 -0
- package/dist/document-authoring/application/policies/document-catalog-fields.d.ts +18 -0
- package/dist/document-authoring/application/policies/document-catalog-fields.d.ts.map +1 -0
- package/dist/document-authoring/application/policies/document-catalog-fields.js +62 -0
- package/dist/document-authoring/application/policies/document-catalog-fields.js.map +1 -0
- package/dist/document-authoring/application/policies/document-repository-path.d.ts +2 -0
- package/dist/document-authoring/application/policies/document-repository-path.d.ts.map +1 -0
- package/dist/document-authoring/application/policies/document-repository-path.js +5 -0
- package/dist/document-authoring/application/policies/document-repository-path.js.map +1 -0
- package/dist/document-authoring/application/policies/inspect-catalog-document.d.ts +11 -0
- package/dist/document-authoring/application/policies/inspect-catalog-document.d.ts.map +1 -0
- package/dist/document-authoring/application/policies/inspect-catalog-document.js +78 -0
- package/dist/document-authoring/application/policies/inspect-catalog-document.js.map +1 -0
- package/dist/document-authoring/application/ports/authoring-profile-reader.d.ts +27 -0
- package/dist/document-authoring/application/ports/authoring-profile-reader.d.ts.map +1 -0
- package/dist/document-authoring/application/ports/authoring-profile-reader.js +2 -0
- package/dist/document-authoring/application/ports/authoring-profile-reader.js.map +1 -0
- package/dist/document-authoring/application/ports/documentation-search-catalog-reader.d.ts +10 -0
- package/dist/document-authoring/application/ports/documentation-search-catalog-reader.d.ts.map +1 -0
- package/dist/document-authoring/application/ports/documentation-search-catalog-reader.js +2 -0
- package/dist/document-authoring/application/ports/documentation-search-catalog-reader.js.map +1 -0
- package/dist/document-authoring/application/ports/metadata-instance-validator.d.ts +17 -0
- package/dist/document-authoring/application/ports/metadata-instance-validator.d.ts.map +1 -0
- package/dist/document-authoring/application/ports/metadata-instance-validator.js +2 -0
- package/dist/document-authoring/application/ports/metadata-instance-validator.js.map +1 -0
- package/dist/document-authoring/application/ports/owner-membership-reader.d.ts +14 -0
- package/dist/document-authoring/application/ports/owner-membership-reader.d.ts.map +1 -0
- package/dist/document-authoring/application/ports/owner-membership-reader.js +2 -0
- package/dist/document-authoring/application/ports/owner-membership-reader.js.map +1 -0
- package/dist/document-authoring/application/projections/document-catalog-projections.d.ts +3 -0
- package/dist/document-authoring/application/projections/document-catalog-projections.d.ts.map +1 -0
- package/dist/document-authoring/application/projections/document-catalog-projections.js +24 -0
- package/dist/document-authoring/application/projections/document-catalog-projections.js.map +1 -0
- package/dist/document-authoring/application/use-cases/build-documentation-catalog.d.ts +23 -0
- package/dist/document-authoring/application/use-cases/build-documentation-catalog.d.ts.map +1 -0
- package/dist/document-authoring/application/use-cases/build-documentation-catalog.js +204 -0
- package/dist/document-authoring/application/use-cases/build-documentation-catalog.js.map +1 -0
- package/dist/document-authoring/application/use-cases/find-documents.d.ts +14 -0
- package/dist/document-authoring/application/use-cases/find-documents.d.ts.map +1 -0
- package/dist/document-authoring/application/use-cases/find-documents.js +95 -0
- package/dist/document-authoring/application/use-cases/find-documents.js.map +1 -0
- package/dist/document-authoring/document-catalog-error.d.ts +6 -0
- package/dist/document-authoring/document-catalog-error.d.ts.map +1 -0
- package/dist/document-authoring/document-catalog-error.js +9 -0
- package/dist/document-authoring/document-catalog-error.js.map +1 -0
- package/dist/document-authoring/find-command.d.ts +37 -0
- package/dist/document-authoring/find-command.d.ts.map +1 -0
- package/dist/document-authoring/find-command.js +180 -0
- package/dist/document-authoring/find-command.js.map +1 -0
- package/dist/document-authoring/index.d.ts +12 -0
- package/dist/document-authoring/index.d.ts.map +1 -0
- package/dist/document-authoring/index.js +27 -0
- package/dist/document-authoring/index.js.map +1 -0
- package/dist/document-command.d.ts +3 -0
- package/dist/document-command.d.ts.map +1 -0
- package/dist/document-command.js +44 -0
- package/dist/document-command.js.map +1 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-document-reader.d.ts +3 -0
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-document-reader.d.ts.map +1 -1
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-document-reader.js +18 -1
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-document-reader.js.map +1 -1
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-tree-observer.d.ts.map +1 -1
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-tree-observer.js +29 -2
- package/dist/documentation-observation/adapters/outbound/filesystem/filesystem-markdown-tree-observer.js.map +1 -1
- package/dist/documentation-observation/application/model/markdown-document.d.ts +1 -1
- package/dist/documentation-observation/application/model/markdown-document.d.ts.map +1 -1
- package/dist/documentation-observation/application/model/markdown-document.js.map +1 -1
- package/dist/documentation-observation/application/ports/markdown-repository.d.ts +1 -0
- package/dist/documentation-observation/application/ports/markdown-repository.d.ts.map +1 -1
- package/dist/foundation-state-contract.d.ts +7 -0
- package/dist/foundation-state-contract.d.ts.map +1 -0
- package/dist/foundation-state-contract.js +7 -0
- package/dist/foundation-state-contract.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/local-mode/attach-transaction.d.ts.map +1 -1
- package/dist/local-mode/attach-transaction.js +13 -7
- package/dist/local-mode/attach-transaction.js.map +1 -1
- package/dist/local-mode/inspection.d.ts +4 -1
- package/dist/local-mode/inspection.d.ts.map +1 -1
- package/dist/local-mode/inspection.js +20 -0
- package/dist/local-mode/inspection.js.map +1 -1
- package/dist/local-mode/local-state-store.d.ts.map +1 -1
- package/dist/local-mode/local-state-store.js +8 -105
- package/dist/local-mode/local-state-store.js.map +1 -1
- package/dist/local-mode/service.d.ts.map +1 -1
- package/dist/local-mode/service.js +17 -4
- package/dist/local-mode/service.js.map +1 -1
- package/dist/local-mode/types.d.ts +7 -4
- package/dist/local-mode/types.d.ts.map +1 -1
- package/dist/local-mode/types.js +1 -4
- package/dist/local-mode/types.js.map +1 -1
- package/dist/package-self-check.d.ts +1 -1
- package/dist/package-self-check.d.ts.map +1 -1
- package/dist/package-self-check.js +37 -23
- package/dist/package-self-check.js.map +1 -1
- package/dist/package-version.d.ts +2 -0
- package/dist/package-version.d.ts.map +1 -0
- package/dist/package-version.js +10 -0
- package/dist/package-version.js.map +1 -0
- package/dist/process-execution/windows-managed-process.d.ts.map +1 -1
- package/dist/process-execution/windows-managed-process.js +1 -0
- package/dist/process-execution/windows-managed-process.js.map +1 -1
- package/dist/public-api-surface.d.ts +1 -0
- package/dist/public-api-surface.d.ts.map +1 -1
- package/dist/public-api-surface.js +1 -0
- package/dist/public-api-surface.js.map +1 -1
- package/dist/scaffolding/adapters/node/filesystem-authority-workspace.d.ts.map +1 -1
- package/dist/scaffolding/adapters/node/filesystem-authority-workspace.js +52 -8
- package/dist/scaffolding/adapters/node/filesystem-authority-workspace.js.map +1 -1
- package/dist/scaffolding/adapters/node/filesystem-file-identity.d.ts +5 -1
- package/dist/scaffolding/adapters/node/filesystem-file-identity.d.ts.map +1 -1
- package/dist/scaffolding/adapters/node/filesystem-file-identity.js +2 -1
- package/dist/scaffolding/adapters/node/filesystem-file-identity.js.map +1 -1
- package/dist/scaffolding/adapters/node/filesystem-journal.d.ts +1 -1
- package/dist/scaffolding/adapters/node/filesystem-journal.d.ts.map +1 -1
- package/dist/scaffolding/adapters/node/filesystem-journal.js +4 -20
- package/dist/scaffolding/adapters/node/filesystem-journal.js.map +1 -1
- package/dist/scaffolding/adapters/node/installed-foundation-version.d.ts +1 -1
- package/dist/scaffolding/adapters/node/installed-foundation-version.d.ts.map +1 -1
- package/dist/scaffolding/adapters/node/installed-foundation-version.js +1 -9
- package/dist/scaffolding/adapters/node/installed-foundation-version.js.map +1 -1
- package/dist/scaffolding/kernel/authority-journal-validation.d.ts +4 -0
- package/dist/scaffolding/kernel/authority-journal-validation.d.ts.map +1 -0
- package/dist/scaffolding/kernel/authority-journal-validation.js +24 -0
- package/dist/scaffolding/kernel/authority-journal-validation.js.map +1 -0
- package/dist/schema-catalog.d.ts.map +1 -1
- package/dist/schema-catalog.js +12 -2
- package/dist/schema-catalog.js.map +1 -1
- package/dist/schema-ids.d.ts +1 -1
- package/dist/schema-ids.d.ts.map +1 -1
- package/dist/schema-ids.js +6 -0
- package/dist/schema-ids.js.map +1 -1
- package/dist/transaction-coordination/adapters/node/installed-foundation-build-identity.d.ts +11 -0
- package/dist/transaction-coordination/adapters/node/installed-foundation-build-identity.d.ts.map +1 -0
- package/dist/transaction-coordination/adapters/node/installed-foundation-build-identity.js +130 -0
- package/dist/transaction-coordination/adapters/node/installed-foundation-build-identity.js.map +1 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-operation-lock.d.ts +7 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-operation-lock.d.ts.map +1 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-operation-lock.js +336 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-operation-lock.js.map +1 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-state-directory.d.ts +4 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-state-directory.d.ts.map +1 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-state-directory.js +76 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-state-directory.js.map +1 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-coordinator.d.ts +3 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-coordinator.d.ts.map +1 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-coordinator.js +23 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-coordinator.js.map +1 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.d.ts +12 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.d.ts.map +1 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.js +332 -0
- package/dist/transaction-coordination/adapters/node/node-foundation-transaction-slot.js.map +1 -0
- package/dist/transaction-coordination/application/foundation-transaction-coordinator.d.ts +22 -0
- package/dist/transaction-coordination/application/foundation-transaction-coordinator.d.ts.map +1 -0
- package/dist/transaction-coordination/application/foundation-transaction-coordinator.js +78 -0
- package/dist/transaction-coordination/application/foundation-transaction-coordinator.js.map +1 -0
- package/dist/transaction-coordination/application/foundation-transaction-error.d.ts +16 -0
- package/dist/transaction-coordination/application/foundation-transaction-error.d.ts.map +1 -0
- package/dist/transaction-coordination/application/foundation-transaction-error.js +19 -0
- package/dist/transaction-coordination/application/foundation-transaction-error.js.map +1 -0
- package/dist/transaction-coordination/application/model/transaction-status.d.ts +47 -0
- package/dist/transaction-coordination/application/model/transaction-status.d.ts.map +1 -0
- package/dist/transaction-coordination/application/model/transaction-status.js +2 -0
- package/dist/transaction-coordination/application/model/transaction-status.js.map +1 -0
- package/dist/transaction-coordination/application/ports/foundation-operation-lock.d.ts +7 -0
- package/dist/transaction-coordination/application/ports/foundation-operation-lock.d.ts.map +1 -0
- package/dist/transaction-coordination/application/ports/foundation-operation-lock.js +2 -0
- package/dist/transaction-coordination/application/ports/foundation-operation-lock.js.map +1 -0
- package/dist/transaction-coordination/application/ports/foundation-transaction-slot.d.ts +5 -0
- package/dist/transaction-coordination/application/ports/foundation-transaction-slot.d.ts.map +1 -0
- package/dist/transaction-coordination/application/ports/foundation-transaction-slot.js +2 -0
- package/dist/transaction-coordination/application/ports/foundation-transaction-slot.js.map +1 -0
- package/package.json +11 -1
- package/schemas/document-authoring-profile/v1.schema.json +186 -0
- package/schemas/document-command-envelope/v1.schema.json +161 -0
- package/schemas/document-intent/v1.schema.json +60 -0
- package/schemas/document-plan/v1.schema.json +146 -0
- package/schemas/document-receipt/v1.schema.json +141 -0
- package/schemas/foundation-transaction-envelope/v2.schema.json +106 -0
|
@@ -5,7 +5,8 @@ import { FoundationError } from "../errors.js";
|
|
|
5
5
|
import { inspectFoundationPackage, parseFoundationPackageSelfCheck } from "../package-self-check.js";
|
|
6
6
|
import { isExactVersion } from "../semantic-version.js";
|
|
7
7
|
import { inspectFoundationMode } from "./inspection.js";
|
|
8
|
-
import {
|
|
8
|
+
import { removeLinkState, syncDirectory, writeLinkState } from "./local-state-store.js";
|
|
9
|
+
import { createNodeFoundationTransactionCoordinator } from "../transaction-coordination/adapters/node/node-foundation-transaction-coordinator.js";
|
|
9
10
|
import { pathEntryExists, resolveTargetPackageRoot, restoreRegistryEntry } from "./registry-recovery.js";
|
|
10
11
|
import { FOUNDATION_PACKAGE_NAME, LOCAL_REGISTRY_BACKUP, LOCAL_STATE_DIRECTORY } from "./types.js";
|
|
11
12
|
async function verifyTargetPackage(input, consumerRoot) {
|
|
@@ -143,7 +144,6 @@ async function recoverFailedAttach(preparation, state, failure) {
|
|
|
143
144
|
throw new FoundationError("LOCAL_STATE_INVALID", "Local attach failed and the registry installation was restored.", { cause: failure });
|
|
144
145
|
}
|
|
145
146
|
async function commitAttach(input, preflight) {
|
|
146
|
-
const releaseLock = await acquireFoundationOperationLock(preflight.consumerRoot);
|
|
147
147
|
let preparation;
|
|
148
148
|
let state;
|
|
149
149
|
try {
|
|
@@ -179,12 +179,18 @@ async function commitAttach(input, preflight) {
|
|
|
179
179
|
}
|
|
180
180
|
return await recoverFailedAttach(preparation, state, error);
|
|
181
181
|
}
|
|
182
|
-
finally {
|
|
183
|
-
await releaseLock();
|
|
184
|
-
}
|
|
185
182
|
}
|
|
186
183
|
export async function attachFoundation(input) {
|
|
187
|
-
const
|
|
188
|
-
|
|
184
|
+
const coordinator = await createNodeFoundationTransactionCoordinator(input.consumerPath);
|
|
185
|
+
const lease = await coordinator.acquire({ requestedMutation: "attach" });
|
|
186
|
+
try {
|
|
187
|
+
const preflight = await inspectAttachConsumerState(input, "CONSUMER_INVALID");
|
|
188
|
+
return await commitAttach(input, preflight);
|
|
189
|
+
}
|
|
190
|
+
finally {
|
|
191
|
+
await lease.release({
|
|
192
|
+
retainTransactionBarrier: (await coordinator.inspect()).state !== "idle"
|
|
193
|
+
});
|
|
194
|
+
}
|
|
189
195
|
}
|
|
190
196
|
//# sourceMappingURL=attach-transaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attach-transaction.js","sourceRoot":"","sources":["../../src/local-mode/attach-transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,KAAK,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,EAAE,EACF,OAAO,EACR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EACL,wBAAwB,EACxB,+BAA+B,EAChC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"attach-transaction.js","sourceRoot":"","sources":["../../src/local-mode/attach-transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,KAAK,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,EAAE,EACF,OAAO,EACR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EACL,wBAAwB,EACxB,+BAA+B,EAChC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EACL,eAAe,EACf,aAAa,EACb,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,0CAA0C,EAAE,MAAM,sFAAsF,CAAC;AAClJ,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AA4BpB,KAAK,UAAU,mBAAmB,CAChC,KAA6B,EAC7B,YAAoB;IAEpB,MAAM,iBAAiB,GAAG,MAAM,wBAAwB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC3E,IAAI,iBAAiB,KAAK,YAAY,EAAE,CAAC;QACvC,MAAM,IAAI,eAAe,CAAC,iBAAiB,EAAE,sDAAsD,CAAC,CAAC;IACvG,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;QACpC,OAAO,EAAE,OAAO,CAAC,QAAQ;QACzB,IAAI,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC;QACzE,GAAG,EAAE,iBAAiB;KACvB,CAAC,CAAC;IACH,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,+BAA+B,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAY,CAAC,CAAC;IACjF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,eAAe,CACvB,iBAAiB,EACjB,iEAAiE,EACjE,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,eAAe,CACvB,iBAAiB,EACjB,mEAAmE,CACpE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,QAAQ,CAAC,cAAc,EAAE,CAAC;AACxE,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,MAAqB,EACrB,YAAoB,EACpB,iBAAyB;IAEzB,MAAM,SAAS,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC;QAClC,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,CAAC,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,CAAC;QACpD,GAAG,EAAE,YAAY;KAClB,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAClB,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC;QACjC,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,CAAC,IAAI,EAAE,iBAAiB,EAAE,QAAQ,EAAE,aAAa,CAAC;QACxD,GAAG,EAAE,YAAY;KAClB,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,MAAqB,EACrB,YAAoB;IAEpB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC;QAC9B,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,CAAC;QACrE,GAAG,EAAE,YAAY;KAClB,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACvC,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACzF,MAAM,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACpE,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,qBAAqB,GAAG,CAAC,EAAE,CAAC;QAClE,OAAO;IACT,CAAC;IACD,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7E,MAAM,UAAU,CAAC,WAAW,EAAE,GAAG,SAAS,GAAG,qBAAqB,KAAK,EAAE,MAAM,CAAC,CAAC;AACnF,CAAC;AAED,KAAK,UAAU,0BAA0B,CACvC,KAA6B,EAC7B,WAAyC,EACzC,QAAuE;IAEvE,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9F,IACE,MAAM,CAAC,IAAI,KAAK,UAAU;QAC1B,MAAM,CAAC,cAAc,KAAK,SAAS;QACnC,CAAC,cAAc,CAAC,MAAM,CAAC,cAAc,CAAC;QACtC,MAAM,CAAC,oBAAoB,KAAK,SAAS,EACzC,CAAC;QACD,MAAM,IAAI,eAAe,CACvB,WAAW,EACX,WAAW,KAAK,kBAAkB;YAChC,CAAC,CAAC,yDAAyD,uBAAuB,2BAA2B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG;YACtJ,CAAC,CAAC,8EAA8E,CACnF,CAAC;IACJ,CAAC;IACD,IACE,QAAQ,KAAK,SAAS;QACtB,CAAC,MAAM,CAAC,YAAY,KAAK,QAAQ,CAAC,YAAY;YAC5C,MAAM,CAAC,cAAc,KAAK,QAAQ,CAAC,cAAc,CAAC,EACpD,CAAC;QACD,MAAM,IAAI,eAAe,CACvB,qBAAqB,EACrB,8EAA8E,CAC/E,CAAC;IACJ,CAAC;IACD,OAAO;QACL,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,mBAAmB,EAAE,MAAM,CAAC,oBAAoB;KACjD,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,KAA6B,EAC7B,QAA6B;IAE7B,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvE,MAAM,GAAG,GAAG,MAAM,eAAe,CAC/B,KAAK,CAAC,MAAM,EACZ,QAAQ,CAAC,YAAY,EACrB,MAAM,CAAC,iBAAiB,CACzB,CAAC;IACF,OAAO;QACL,GAAG,QAAQ;QACX,GAAG,MAAM;QACT,GAAG,GAAG;KACP,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,WAA8B,EAC9B,mBAA2B,EAC3B,iBAA2D,EAC3D,GAAe;IAEf,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,KAAK,EAAE,WAAW;QAClB,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;QAChD,kBAAkB,EAAE,IAAI,CACtB,WAAW,CAAC,YAAY,EACxB,qBAAqB,EACrB,qBAAqB,CACtB;QACD,iBAAiB;QACjB,mBAAmB;QACnB,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,UAAU,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE;KAChC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,4BAA4B,CACzC,KAA0B,EAC1B,oBAA4B;IAE5B,IAAI,KAAK,CAAC,iBAAiB,KAAK,eAAe,EAAE,CAAC;QAChD,MAAM,OAAO,CACX,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,kBAAkB,EACxB,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAClD,CAAC;QACF,MAAM,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;QACvD,MAAM,EAAE,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,CAAC,oBAAoB,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC7D,MAAM,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,aAAa,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;IACnD,MAAM,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,MAAM,OAAO,CACX,KAAK,CAAC,iBAAiB,EACvB,oBAAoB,EACpB,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAClD,CAAC;IACF,IAAI,CAAC,MAAM,QAAQ,CAAC,oBAAoB,CAAC,CAAC,KAAK,KAAK,CAAC,iBAAiB,EAAE,CAAC;QACvE,MAAM,IAAI,eAAe,CACvB,qBAAqB,EACrB,8DAA8D,CAC/D,CAAC;IACJ,CAAC;IACD,MAAM,aAAa,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,WAA8B,EAC9B,KAA0B,EAC1B,OAAgB;IAEhB,MAAM,cAAc,GAAc,EAAE,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,oBAAoB,CAAC,WAAW,CAAC,YAAY,EAAE,WAAW,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC1F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,CAAC;QACH,MAAM,eAAe,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,eAAe,CACvB,qBAAqB,EACrB,yEAAyE,EACzE,EAAE,KAAK,EAAE,IAAI,cAAc,CAAC,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,EAAE,oDAAoD,CAAC,EAAE,CAClH,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,eAAe,CACvB,qBAAqB,EACrB,iEAAiE,EACjE,EAAE,KAAK,EAAE,OAAO,EAAE,CACnB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,KAA6B,EAC7B,SAA8B;IAE9B,IAAI,WAA0C,CAAC;IAC/C,IAAI,KAAsC,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAC/C,KAAK,EACL,qBAAqB,EACrB,SAAS,CACV,CAAC;QACF,WAAW,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACnD,MAAM,aAAa,GAAG,IAAI,CACxB,WAAW,CAAC,YAAY,EACxB,cAAc,EACd,uBAAuB,CACxB,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,CACrB,WAAW,CAAC,YAAY,EACxB,qBAAqB,EACrB,qBAAqB,CACtB,CAAC;QACF,IAAI,MAAM,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,eAAe,CACvB,qBAAqB,EACrB,8EAA8E,CAC/E,CAAC;QACJ,CAAC;QACD,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,CAAC;YACpE,MAAM,IAAI,eAAe,CACvB,qBAAqB,EACrB,wEAAwE,CACzE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,QAAQ,CAAC,aAAa,CAAC,CAAC,KAAK,WAAW,CAAC,mBAAmB,EAAE,CAAC;YACxE,MAAM,IAAI,eAAe,CACvB,qBAAqB,EACrB,oEAAoE,CACrE,CAAC;QACJ,CAAC;QACD,MAAM,2BAA2B,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC;QAC1E,KAAK,GAAG,oBAAoB,CAC1B,WAAW,EACX,WAAW,CAAC,mBAAmB,EAC/B,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,EAC9D,KAAK,CAAC,GAAG,CACV,CAAC;QACF,MAAM,cAAc,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QACtD,MAAM,4BAA4B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QACzD,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QACrC,MAAM,cAAc,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACtE,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5B,MAAM,IAAI,eAAe,CACvB,qBAAqB,EACrB,qCAAqC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC/D,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,CAAC,iBAAiB,EAAE,CAAC;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YACrD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,OAAO,MAAM,mBAAmB,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAA6B;IAE7B,MAAM,WAAW,GAAG,MAAM,0CAA0C,CAClE,KAAK,CAAC,YAAY,CACnB,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC;IACzE,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAChD,KAAK,EACL,kBAAkB,CACnB,CAAC;QACF,OAAO,MAAM,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC;YAAS,CAAC;QACT,MAAM,KAAK,CAAC,OAAO,CAAC;YAClB,wBAAwB,EAAE,CAAC,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,KAAK,MAAM;SACzE,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import type { FoundationStatus } from "./types.js";
|
|
1
|
+
import type { FoundationStatus, FoundationTransactionAwareStatus } from "./types.js";
|
|
2
2
|
export declare function inspectFoundationMode(consumerPath: string, options?: {
|
|
3
3
|
readonly ignoreOperationLock?: boolean;
|
|
4
4
|
}): Promise<FoundationStatus>;
|
|
5
|
+
export declare function inspectFoundationTransactionAwareMode(consumerPath: string, options?: {
|
|
6
|
+
readonly ignoreOperationLock?: boolean;
|
|
7
|
+
}): Promise<FoundationTransactionAwareStatus>;
|
|
5
8
|
export { inspectFoundationDevOnly, inspectFoundationRegistryProvenance } from "./consumer-policy.js";
|
|
6
9
|
export { isExactVersion } from "../semantic-version.js";
|
|
7
10
|
//# sourceMappingURL=inspection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspection.d.ts","sourceRoot":"","sources":["../../src/local-mode/inspection.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,gBAAgB,
|
|
1
|
+
{"version":3,"file":"inspection.d.ts","sourceRoot":"","sources":["../../src/local-mode/inspection.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,gBAAgB,EAChB,gCAAgC,EACjC,MAAM,YAAY,CAAC;AAyPpB,wBAAsB,qBAAqB,CACzC,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE;IAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAAO,GACvD,OAAO,CAAC,gBAAgB,CAAC,CAE3B;AAED,wBAAsB,qCAAqC,CACzD,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE;IAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAAO,GACvD,OAAO,CAAC,gCAAgC,CAAC,CAqE3C;AAED,OAAO,EACL,wBAAwB,EACxB,mCAAmC,EACpC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -2,6 +2,9 @@ import { lstat, readFile, readdir, realpath } from "node:fs/promises";
|
|
|
2
2
|
import { isAbsolute, join, relative, resolve, sep } from "node:path";
|
|
3
3
|
import { inspectFoundationDevOnly, inspectFoundationRegistryProvenance } from "./consumer-policy.js";
|
|
4
4
|
import { FOUNDATION_PACKAGE_NAME, LOCAL_OPERATION_LOCK, LOCAL_REGISTRY_BACKUP, LOCAL_STATE_DIRECTORY, LOCAL_STATE_FILE } from "./types.js";
|
|
5
|
+
import { installedFoundationVersion } from "../package-version.js";
|
|
6
|
+
import { installedFoundationBuildIdentity } from "../transaction-coordination/adapters/node/installed-foundation-build-identity.js";
|
|
7
|
+
import { NodeFoundationTransactionSlot } from "../transaction-coordination/adapters/node/node-foundation-transaction-slot.js";
|
|
5
8
|
async function readJson(path) {
|
|
6
9
|
return JSON.parse(await readFile(path, "utf8"));
|
|
7
10
|
}
|
|
@@ -181,13 +184,28 @@ function buildStatus(input) {
|
|
|
181
184
|
registryIntegrity: input.provenance.integrity
|
|
182
185
|
}),
|
|
183
186
|
...(input.linkState === undefined ? {} : { linkState: input.linkState }),
|
|
187
|
+
...(input.transaction === undefined ? {} : { transaction: input.transaction }),
|
|
184
188
|
issues: input.issues
|
|
185
189
|
};
|
|
186
190
|
}
|
|
187
191
|
export async function inspectFoundationMode(consumerPath, options = {}) {
|
|
192
|
+
return inspectFoundationTransactionAwareMode(consumerPath, options);
|
|
193
|
+
}
|
|
194
|
+
export async function inspectFoundationTransactionAwareMode(consumerPath, options = {}) {
|
|
188
195
|
const consumerRoot = await realpath(resolve(consumerPath));
|
|
189
196
|
const issues = [];
|
|
190
197
|
const localStateDirectoryIsSafe = await inspectLocalStateDirectory(consumerRoot, options.ignoreOperationLock === true, issues);
|
|
198
|
+
const transaction = localStateDirectoryIsSafe
|
|
199
|
+
? await new NodeFoundationTransactionSlot({
|
|
200
|
+
consumerRoot,
|
|
201
|
+
installedVersion: await installedFoundationVersion(),
|
|
202
|
+
installedBuildIdentity: await installedFoundationBuildIdentity()
|
|
203
|
+
}).inspect()
|
|
204
|
+
: { state: "idle", diagnostics: [] };
|
|
205
|
+
const transactionDiagnostic = transaction.state === "idle" ? undefined : transaction.diagnostics[0]?.message;
|
|
206
|
+
if (transactionDiagnostic !== undefined) {
|
|
207
|
+
issues.push(transactionDiagnostic);
|
|
208
|
+
}
|
|
191
209
|
const dependencyPolicy = await inspectFoundationDevOnly(consumerRoot);
|
|
192
210
|
issues.push(...dependencyPolicy.issues);
|
|
193
211
|
const dependencySpec = dependencyPolicy.dependencySpec;
|
|
@@ -205,6 +223,7 @@ export async function inspectFoundationMode(consumerPath, options = {}) {
|
|
|
205
223
|
installed,
|
|
206
224
|
...(provenance.provenance === undefined ? {} : { provenance: provenance.provenance }),
|
|
207
225
|
linkState,
|
|
226
|
+
...(transaction.state === "idle" ? {} : { transaction }),
|
|
208
227
|
issues
|
|
209
228
|
});
|
|
210
229
|
}
|
|
@@ -224,6 +243,7 @@ export async function inspectFoundationMode(consumerPath, options = {}) {
|
|
|
224
243
|
...(dependencySpec === undefined ? {} : { dependencySpec }),
|
|
225
244
|
installed,
|
|
226
245
|
...(provenance.provenance === undefined ? {} : { provenance: provenance.provenance }),
|
|
246
|
+
...(transaction.state === "idle" ? {} : { transaction }),
|
|
227
247
|
issues
|
|
228
248
|
});
|
|
229
249
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspection.js","sourceRoot":"","sources":["../../src/local-mode/inspection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAMrE,OAAO,EACL,wBAAwB,EACxB,mCAAmC,EACpC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB,KAAK,UAAU,QAAQ,CAAC,IAAY;IAClC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAY,CAAC;AAC7D,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,SAAS,cAAc,CAAC,KAAc;IACpC,IACE,CAAC,QAAQ,CAAC,KAAK,CAAC;QAChB,KAAK,CAAC,aAAa,KAAK,CAAC;QACzB,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,QAAQ,CAC3C,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CACnD;QACD,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ;QACtC,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ;QAC3C,OAAO,KAAK,CAAC,kBAAkB,KAAK,QAAQ;QAC5C,CAAC,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC,QAAQ,CACtC,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ;YACzC,CAAC,CAAC,KAAK,CAAC,iBAAiB;YACzB,CAAC,CAAC,EAAE,CACP;QACD,OAAO,KAAK,CAAC,mBAAmB,KAAK,QAAQ;QAC7C,OAAO,KAAK,CAAC,cAAc,KAAK,QAAQ;QACxC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;QACnC,OAAO,KAAK,CAAC,QAAQ,KAAK,SAAS;QACnC,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EACpC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,KAAK,EAAE,KAAK,CAAC,KAAqC;QAClD,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,iBAAiB,EACf,KAAK,CAAC,iBAA6D;QACrE,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;KAC7B,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,YAAoB,EACpB,MAAgB;IAEhB,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,CAAC,CAAC;IACzE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QACnD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IACE,KAAK,YAAY,KAAK;YACtB,MAAM,IAAI,KAAK;YACd,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAClD,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACtD,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,MAAc,EAAE,SAAiB;IACjD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACzC,OAAO,IAAI,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED,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,KAAK,UAAU,0BAA0B,CACvC,YAAoB,EACpB,mBAA4B,EAC5B,MAAgB;IAEhB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;IAC5D,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,GAAG,IAAI,CAAC;QACd,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAChG,MAAM,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;YACpF,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;YACrE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IACD,IAAI,CAAC,mBAAmB,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACnE,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,gBAAgB,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QAChG,MAAM,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAOD,KAAK,UAAU,0BAA0B,CACvC,YAAoB,EACpB,MAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,EAAE,uBAAuB,CAAC,CAAC,CAAC;QACzF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;QAC5D,IACE,QAAQ,CAAC,QAAQ,CAAC;YAClB,QAAQ,CAAC,IAAI,KAAK,uBAAuB;YACzC,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,EACpC,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC7C,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;QAC5E,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QAChE,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,YAAoB,EACpB,KAA0B,EAC1B,SAA8B,EAC9B,MAAgB;IAEhB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,CAAC;IACpF,IAAI,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,UAAU,EAAE,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,CAAC;QACH,MAAM,kBAAkB,GAAG,KAAK,CAAC,iBAAiB,KAAK,eAAe;YACpE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC;YACpC,CAAC,CAAC,UAAU,CAAC;QACf,IAAI,CAAC,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC,KAAK,kBAAkB,EAAE,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,6CAA6C,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,YAAY,EAAE,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;QACxF,MAAM,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC;QAClF,MAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,YAAoB,EACpB,MAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,CAAC,CAAC;QAC9E,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;IACrE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,KAOpB;IACC,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAC7B,CAAC,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO;YACtD,CAAC,CAAC,SAAS;QACb,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,GAAG,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;QACvF,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAC7F,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QAC/F,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS;YAChC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,YAAY;gBAC3C,kBAAkB,EAAE,KAAK,CAAC,UAAU,CAAC,UAAU;gBAC/C,iBAAiB,EAAE,KAAK,CAAC,UAAU,CAAC,SAAS;aAC9C,CAAC;QACN,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;QACxE,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,YAAoB,EACpB,OAAO,GAA+C,EAAE;IAExD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,yBAAyB,GAAG,MAAM,0BAA0B,CAChE,YAAY,EACZ,OAAO,CAAC,mBAAmB,KAAK,IAAI,EACpC,MAAM,CACP,CAAC;IAEF,MAAM,gBAAgB,GAAG,MAAM,wBAAwB,CAAC,YAAY,CAAC,CAAC;IACtE,MAAM,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,cAAc,GAAG,gBAAgB,CAAC,cAAc,CAAC;IACvD,MAAM,UAAU,GAAG,MAAM,mCAAmC,CAC1D,YAAY,EACZ,cAAc,CACf,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAEzE,MAAM,SAAS,GAAG,yBAAyB;QACzC,CAAC,CAAC,MAAM,qBAAqB,CAAC,YAAY,EAAE,MAAM,CAAC;QACnD,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,2BAA2B,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAC9E,OAAO,WAAW,CAAC;YACjB,YAAY;YACZ,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC;YAC3D,SAAS;YACT,GAAG,CAAC,UAAU,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;YACrF,SAAS;YACT,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAED,IAAI,yBAAyB,EAAE,CAAC;QAC9B,MAAM,mBAAmB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QAClG,MAAM,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;IACxF,CAAC;IACD,IACE,cAAc,KAAK,SAAS;QAC5B,SAAS,CAAC,OAAO,KAAK,SAAS;QAC/B,cAAc,KAAK,SAAS,CAAC,OAAO,EACpC,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;IACjF,CAAC;IAED,OAAO,WAAW,CAAC;QACjB,YAAY;QACZ,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC;QAC3D,SAAS;QACT,GAAG,CAAC,UAAU,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;QACrF,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EACL,wBAAwB,EACxB,mCAAmC,EACpC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"inspection.js","sourceRoot":"","sources":["../../src/local-mode/inspection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-state-store.d.ts","sourceRoot":"","sources":["../../src/local-mode/local-state-store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"local-state-store.d.ts","sourceRoot":"","sources":["../../src/local-mode/local-state-store.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGtD,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/D;AAED,wBAAsB,cAAc,CAClC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED,wBAAsB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAczE;AAED,wBAAsB,8BAA8B,CAClD,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAE9B"}
|
|
@@ -1,66 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { open, readdir, rename, rm } from "node:fs/promises";
|
|
2
2
|
import { join } from "node:path";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
async function ensureLocalStateDirectory(consumerRoot) {
|
|
7
|
-
const directory = join(consumerRoot, LOCAL_STATE_DIRECTORY);
|
|
8
|
-
try {
|
|
9
|
-
const entry = await lstat(directory);
|
|
10
|
-
if (!entry.isDirectory() || entry.isSymbolicLink()) {
|
|
11
|
-
throw new FoundationError("LOCAL_STATE_INVALID", "Local foundation state path must be a real consumer-owned directory.");
|
|
12
|
-
}
|
|
13
|
-
if ((await realpath(directory)) !== directory) {
|
|
14
|
-
throw new FoundationError("LOCAL_STATE_INVALID", "Local foundation state directory resolves outside its expected path.");
|
|
15
|
-
}
|
|
16
|
-
return directory;
|
|
17
|
-
}
|
|
18
|
-
catch (error) {
|
|
19
|
-
if (!(error instanceof Error &&
|
|
20
|
-
"code" in error &&
|
|
21
|
-
error.code === "ENOENT")) {
|
|
22
|
-
throw error;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
try {
|
|
26
|
-
await mkdir(directory);
|
|
27
|
-
}
|
|
28
|
-
catch (error) {
|
|
29
|
-
if (error instanceof Error &&
|
|
30
|
-
"code" in error &&
|
|
31
|
-
error.code === "EEXIST") {
|
|
32
|
-
return await ensureLocalStateDirectory(consumerRoot);
|
|
33
|
-
}
|
|
34
|
-
throw error;
|
|
35
|
-
}
|
|
36
|
-
await syncDirectory(consumerRoot);
|
|
37
|
-
return directory;
|
|
38
|
-
}
|
|
3
|
+
import { NodeFoundationOperationLock } from "../transaction-coordination/adapters/node/node-foundation-operation-lock.js";
|
|
4
|
+
import { ensureFoundationStateDirectory, pruneFoundationStateDirectory, syncFoundationStateDirectory } from "../transaction-coordination/adapters/node/node-foundation-state-directory.js";
|
|
5
|
+
import { LOCAL_STATE_DIRECTORY, LOCAL_STATE_FILE } from "./types.js";
|
|
39
6
|
export async function syncDirectory(path) {
|
|
40
|
-
|
|
41
|
-
const handle = await open(path, "r");
|
|
42
|
-
try {
|
|
43
|
-
await handle.sync();
|
|
44
|
-
}
|
|
45
|
-
finally {
|
|
46
|
-
await handle.close();
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
catch (error) {
|
|
50
|
-
if (process.platform === "win32" &&
|
|
51
|
-
error instanceof Error &&
|
|
52
|
-
"code" in error &&
|
|
53
|
-
["EACCES", "EINVAL", "EISDIR", "EPERM"].includes(error.code ?? "")) {
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
throw error;
|
|
57
|
-
}
|
|
7
|
+
await syncFoundationStateDirectory(path);
|
|
58
8
|
}
|
|
59
9
|
export async function writeLinkState(consumerRoot, state) {
|
|
60
10
|
const directory = join(consumerRoot, LOCAL_STATE_DIRECTORY);
|
|
61
11
|
const destination = join(directory, LOCAL_STATE_FILE);
|
|
62
12
|
const temporary = `${destination}.${process.pid}.tmp`;
|
|
63
|
-
await
|
|
13
|
+
await ensureFoundationStateDirectory(consumerRoot);
|
|
64
14
|
const handle = await open(temporary, "w", 0o600);
|
|
65
15
|
try {
|
|
66
16
|
await handle.writeFile(`${JSON.stringify(state, null, 2)}\n`, "utf8");
|
|
@@ -72,19 +22,6 @@ export async function writeLinkState(consumerRoot, state) {
|
|
|
72
22
|
await rename(temporary, destination);
|
|
73
23
|
await syncDirectory(directory);
|
|
74
24
|
}
|
|
75
|
-
async function pruneLocalStateDirectory(consumerRoot) {
|
|
76
|
-
try {
|
|
77
|
-
await rmdir(join(consumerRoot, LOCAL_STATE_DIRECTORY));
|
|
78
|
-
}
|
|
79
|
-
catch (error) {
|
|
80
|
-
if (error instanceof Error &&
|
|
81
|
-
"code" in error &&
|
|
82
|
-
["ENOENT", "ENOTEMPTY"].includes(error.code ?? "")) {
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
throw error;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
25
|
export async function removeLinkState(consumerRoot) {
|
|
89
26
|
const directory = join(consumerRoot, LOCAL_STATE_DIRECTORY);
|
|
90
27
|
const destination = join(directory, LOCAL_STATE_FILE);
|
|
@@ -96,43 +33,9 @@ export async function removeLinkState(consumerRoot) {
|
|
|
96
33
|
await rm(join(directory, entry), { force: true });
|
|
97
34
|
}));
|
|
98
35
|
await syncDirectory(directory);
|
|
99
|
-
await
|
|
36
|
+
await pruneFoundationStateDirectory(consumerRoot);
|
|
100
37
|
}
|
|
101
38
|
export async function acquireFoundationOperationLock(consumerRoot) {
|
|
102
|
-
|
|
103
|
-
const lockPath = join(directory, LOCAL_OPERATION_LOCK);
|
|
104
|
-
try {
|
|
105
|
-
const lockEntry = await lstat(lockPath);
|
|
106
|
-
if (!lockEntry.isDirectory() || lockEntry.isSymbolicLink()) {
|
|
107
|
-
throw new FoundationError("LOCAL_STATE_INVALID", "Foundation operation lock path must be a real local directory.");
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
catch (error) {
|
|
111
|
-
if (!(error instanceof Error &&
|
|
112
|
-
"code" in error &&
|
|
113
|
-
error.code === "ENOENT")) {
|
|
114
|
-
throw error;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
try {
|
|
118
|
-
const release = await lock(directory, {
|
|
119
|
-
lockfilePath: lockPath,
|
|
120
|
-
onCompromised: (error) => {
|
|
121
|
-
throw error;
|
|
122
|
-
},
|
|
123
|
-
realpath: true,
|
|
124
|
-
retries: 0,
|
|
125
|
-
stale: 120_000,
|
|
126
|
-
update: 30_000
|
|
127
|
-
});
|
|
128
|
-
return async () => {
|
|
129
|
-
await release();
|
|
130
|
-
await syncDirectory(directory);
|
|
131
|
-
await pruneLocalStateDirectory(consumerRoot);
|
|
132
|
-
};
|
|
133
|
-
}
|
|
134
|
-
catch (error) {
|
|
135
|
-
throw new FoundationError("LOCAL_STATE_INVALID", "Another foundation operation is active or its lock is not safely recoverable.", { cause: error });
|
|
136
|
-
}
|
|
39
|
+
return new NodeFoundationOperationLock(consumerRoot).acquire();
|
|
137
40
|
}
|
|
138
41
|
//# sourceMappingURL=local-state-store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-state-store.js","sourceRoot":"","sources":["../../src/local-mode/local-state-store.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"local-state-store.js","sourceRoot":"","sources":["../../src/local-mode/local-state-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,2BAA2B,EAAE,MAAM,6EAA6E,CAAC;AAC1H,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,EAC7B,4BAA4B,EAC7B,MAAM,8EAA8E,CAAC;AAEtF,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAErE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY;IAC9C,MAAM,4BAA4B,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,YAAoB,EACpB,KAA0B;IAE1B,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;IACtD,MAAM,8BAA8B,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IACjD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IACD,MAAM,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACrC,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,YAAoB;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IACtD,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAClE,MAAM,OAAO,CAAC,GAAG,CACf,gBAAgB;SACb,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,gBAAgB,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACrF,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC,CACL,CAAC;IACF,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC;IAC/B,MAAM,6BAA6B,CAAC,YAAY,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,YAAoB;IAEpB,OAAO,IAAI,2BAA2B,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC;AACjE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/local-mode/service.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACd,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AAExE,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,qBAAa,0BAA0B;;IAIrC,YAAY,OAAO,EAAE,iCAAiC,EAGrD;IAsDK,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAE5D;IAEK,MAAM,CACV,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,CAAC,CASvB;IAEK,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/local-mode/service.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACd,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AAExE,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,qBAAa,0BAA0B;;IAIrC,YAAY,OAAO,EAAE,iCAAiC,EAGrD;IAsDK,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAE5D;IAEK,MAAM,CACV,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,CAAC,CASvB;IAEK,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8D5D;IAEK,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CASpE;IAEK,aAAa,CACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,uBAAuB,CAAC,CAUlC;CACF"}
|
|
@@ -5,7 +5,8 @@ import { attachFoundation } from "./attach-transaction.js";
|
|
|
5
5
|
import { inspectFoundationDevOnly } from "./consumer-policy.js";
|
|
6
6
|
import { isExactVersion } from "../semantic-version.js";
|
|
7
7
|
import { inspectFoundationMode } from "./inspection.js";
|
|
8
|
-
import {
|
|
8
|
+
import { removeLinkState, writeLinkState } from "./local-state-store.js";
|
|
9
|
+
import { createNodeFoundationTransactionCoordinator } from "../transaction-coordination/adapters/node/node-foundation-transaction-coordinator.js";
|
|
9
10
|
import { restoreRegistryEntry } from "./registry-recovery.js";
|
|
10
11
|
import { FOUNDATION_PACKAGE_NAME } from "./types.js";
|
|
11
12
|
export { acquireFoundationOperationLock } from "./local-state-store.js";
|
|
@@ -75,11 +76,21 @@ export class FoundationLocalModeService {
|
|
|
75
76
|
!isExactVersion(before.dependencySpec)) {
|
|
76
77
|
throw new FoundationError("CONSUMER_INVALID", `Consumer must retain an exact ${FOUNDATION_PACKAGE_NAME} registry dependency.`);
|
|
77
78
|
}
|
|
78
|
-
const
|
|
79
|
+
const coordinator = await createNodeFoundationTransactionCoordinator(before.consumerRoot);
|
|
80
|
+
const lease = await coordinator.acquire({
|
|
81
|
+
requestedMutation: "detach",
|
|
82
|
+
allowRecoveryOf: "local-mode"
|
|
83
|
+
});
|
|
79
84
|
try {
|
|
80
85
|
const current = await inspectFoundationMode(before.consumerRoot, {
|
|
81
86
|
ignoreOperationLock: true
|
|
82
87
|
});
|
|
88
|
+
if (current.consumerRoot !== before.consumerRoot ||
|
|
89
|
+
current.dependencySpec === undefined ||
|
|
90
|
+
current.dependencySpec !== before.dependencySpec ||
|
|
91
|
+
!isExactVersion(current.dependencySpec)) {
|
|
92
|
+
throw new FoundationError("LOCAL_STATE_INVALID", "Consumer foundation dependency changed before detach acquired its operation lock.");
|
|
93
|
+
}
|
|
83
94
|
if (current.mode === "REGISTRY") {
|
|
84
95
|
return current;
|
|
85
96
|
}
|
|
@@ -89,11 +100,13 @@ export class FoundationLocalModeService {
|
|
|
89
100
|
phase: "DETACHING"
|
|
90
101
|
});
|
|
91
102
|
}
|
|
92
|
-
await restoreRegistryEntry(before.consumerRoot,
|
|
103
|
+
await restoreRegistryEntry(before.consumerRoot, current.dependencySpec, current.linkState);
|
|
93
104
|
await removeLinkState(before.consumerRoot);
|
|
94
105
|
}
|
|
95
106
|
finally {
|
|
96
|
-
await
|
|
107
|
+
await lease.release({
|
|
108
|
+
retainTransactionBarrier: (await coordinator.inspect()).state !== "idle"
|
|
109
|
+
});
|
|
97
110
|
}
|
|
98
111
|
const after = await inspectFoundationMode(before.consumerRoot);
|
|
99
112
|
if (after.mode !== "REGISTRY") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/local-mode/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/local-mode/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
export declare const FOUNDATION_PACKAGE_NAME: "@agent-teams/engineering-foundation";
|
|
2
|
-
export
|
|
3
|
-
export declare const LOCAL_STATE_FILE: "foundation-link.json";
|
|
4
|
-
export declare const LOCAL_REGISTRY_BACKUP: "foundation-registry-backup";
|
|
5
|
-
export declare const LOCAL_OPERATION_LOCK: "foundation-operation.lock";
|
|
2
|
+
export { FOUNDATION_LINK_STATE_FILE as LOCAL_STATE_FILE, FOUNDATION_REGISTRY_BACKUP as LOCAL_REGISTRY_BACKUP, LOCAL_OPERATION_LOCK, LOCAL_STATE_DIRECTORY } from "../foundation-state-contract.js";
|
|
6
3
|
export declare const FOUNDATION_LOCAL_MODE_PROTOCOL_VERSION: 1;
|
|
7
4
|
export type { ProcessRequest, ProcessResult, ProcessRunner } from "../process-execution/types.js";
|
|
5
|
+
import type { FoundationTransactionStatus } from "../transaction-coordination/application/model/transaction-status.js";
|
|
6
|
+
export type { FoundationManualRecoveryReason, FoundationRecoveryRoute, FoundationTransactionDiagnostic, FoundationTransactionStatus } from "../transaction-coordination/application/model/transaction-status.js";
|
|
8
7
|
export type FoundationMode = "INVALID" | "LOCAL" | "REGISTRY";
|
|
9
8
|
export type FoundationLinkPhase = "ATTACHING" | "DETACHING" | "LOCAL";
|
|
10
9
|
export interface FoundationLinkState {
|
|
@@ -34,6 +33,10 @@ export interface FoundationStatus {
|
|
|
34
33
|
readonly sourceGitDirty?: boolean;
|
|
35
34
|
readonly issues: readonly string[];
|
|
36
35
|
}
|
|
36
|
+
/** Additive transaction-aware status for callers that need recovery routing. */
|
|
37
|
+
export interface FoundationTransactionAwareStatus extends FoundationStatus {
|
|
38
|
+
readonly transaction?: FoundationTransactionStatus;
|
|
39
|
+
}
|
|
37
40
|
export interface FoundationDevOnlyStatus {
|
|
38
41
|
readonly consumerRoot: string;
|
|
39
42
|
readonly dependencySpec?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/local-mode/types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,EAClC,qCAA8C,CAAC;AACjD,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/local-mode/types.ts"],"names":[],"mappings":"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"}
|
package/dist/local-mode/types.js
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
export const FOUNDATION_PACKAGE_NAME = "@agent-teams/engineering-foundation";
|
|
2
|
-
export
|
|
3
|
-
export const LOCAL_STATE_FILE = "foundation-link.json";
|
|
4
|
-
export const LOCAL_REGISTRY_BACKUP = "foundation-registry-backup";
|
|
5
|
-
export const LOCAL_OPERATION_LOCK = "foundation-operation.lock";
|
|
2
|
+
export { FOUNDATION_LINK_STATE_FILE as LOCAL_STATE_FILE, FOUNDATION_REGISTRY_BACKUP as LOCAL_REGISTRY_BACKUP, LOCAL_OPERATION_LOCK, LOCAL_STATE_DIRECTORY } from "../foundation-state-contract.js";
|
|
6
3
|
export const FOUNDATION_LOCAL_MODE_PROTOCOL_VERSION = 1;
|
|
7
4
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/local-mode/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAClC,qCAA8C,CAAC;AACjD,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/local-mode/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAClC,qCAA8C,CAAC;AACjD,OAAO,EACL,0BAA0B,IAAI,gBAAgB,EAC9C,0BAA0B,IAAI,qBAAqB,EACnD,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,iCAAiC,CAAC;AACzC,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAU,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const FOUNDATION_METADATA_SCHEMA_VERSION: 1;
|
|
2
|
-
export declare const FOUNDATION_REQUIRED_ARTIFACT_PATHS: readonly ["dist/cli.js", "dist/index.d.ts", "dist/index.js", "dist/public-api-surface.d.ts", "dist/local-mode/index.d.ts", "dist/local-mode/index.js", "dist/scaffolding/index.d.ts", "dist/scaffolding/index.js", "presets/oxlint/base.json", "presets/oxlint/node.json", "presets/oxlint/type-aware.json", "presets/typescript/base.json", "presets/typescript/node.json", ...string[]];
|
|
2
|
+
export declare const FOUNDATION_REQUIRED_ARTIFACT_PATHS: readonly ["dist/cli.js", "dist/index.d.ts", "dist/index.js", "dist/public-api-surface.d.ts", "dist/document-authoring/index.d.ts", "dist/document-authoring/index.js", "dist/local-mode/index.d.ts", "dist/local-mode/index.js", "dist/scaffolding/index.d.ts", "dist/scaffolding/index.js", "presets/oxlint/base.json", "presets/oxlint/node.json", "presets/oxlint/type-aware.json", "presets/typescript/base.json", "presets/typescript/node.json", ...string[]];
|
|
3
3
|
export interface FoundationPackageSelfCheck {
|
|
4
4
|
readonly ok: true;
|
|
5
5
|
readonly metadataSchemaVersion: typeof FOUNDATION_METADATA_SCHEMA_VERSION;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-self-check.d.ts","sourceRoot":"","sources":["../src/package-self-check.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,kCAAkC,EAAG,CAAU,CAAC;AAC7D,eAAO,MAAM,kCAAkC,
|
|
1
|
+
{"version":3,"file":"package-self-check.d.ts","sourceRoot":"","sources":["../src/package-self-check.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,kCAAkC,EAAG,CAAU,CAAC;AAC7D,eAAO,MAAM,kCAAkC,qcAiBrC,CAAC;AAEX,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,qBAAqB,EAAE,OAAO,kCAAkC,CAAC;IAC1E,QAAQ,CAAC,WAAW,EAAE,qCAAqC,CAAC;IAC5D,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,mCAAmC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChE,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAChE;AA6JD,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,0BAA0B,CAAC,CA8GrC;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,OAAO,GACb,0BAA0B,CA0B5B"}
|
|
@@ -13,6 +13,8 @@ export const FOUNDATION_REQUIRED_ARTIFACT_PATHS = [
|
|
|
13
13
|
"dist/index.d.ts",
|
|
14
14
|
"dist/index.js",
|
|
15
15
|
"dist/public-api-surface.d.ts",
|
|
16
|
+
"dist/document-authoring/index.d.ts",
|
|
17
|
+
"dist/document-authoring/index.js",
|
|
16
18
|
"dist/local-mode/index.d.ts",
|
|
17
19
|
"dist/local-mode/index.js",
|
|
18
20
|
"dist/scaffolding/index.d.ts",
|
|
@@ -82,6 +84,36 @@ function parseProtocolMetadata(manifest) {
|
|
|
82
84
|
compatibleLocalModeProtocolVersions
|
|
83
85
|
};
|
|
84
86
|
}
|
|
87
|
+
function importUnknown(specifier) {
|
|
88
|
+
return import(specifier);
|
|
89
|
+
}
|
|
90
|
+
async function assertRequiredRuntimeExports(packageRoot) {
|
|
91
|
+
const [rootExports, documentAuthoringExports, localModeExports, scaffoldingExports] = await Promise.all([
|
|
92
|
+
importUnknown(pathToFileURL(join(packageRoot, "dist", "index.js")).href),
|
|
93
|
+
importUnknown(pathToFileURL(join(packageRoot, "dist", "document-authoring", "index.js")).href),
|
|
94
|
+
importUnknown(pathToFileURL(join(packageRoot, "dist", "local-mode", "index.js")).href),
|
|
95
|
+
importUnknown(pathToFileURL(join(packageRoot, "dist", "scaffolding", "index.js")).href)
|
|
96
|
+
]);
|
|
97
|
+
if (!isRecord(rootExports) ||
|
|
98
|
+
!isRecord(documentAuthoringExports) ||
|
|
99
|
+
!isRecord(localModeExports) ||
|
|
100
|
+
!isRecord(scaffoldingExports)) {
|
|
101
|
+
throw new FoundationError("PACKAGE_INVALID", "Foundation target runtime exports must be module objects.");
|
|
102
|
+
}
|
|
103
|
+
const requiredRuntimeExports = [
|
|
104
|
+
["FoundationError", rootExports.FoundationError],
|
|
105
|
+
["buildDocumentationCatalog", documentAuthoringExports.buildDocumentationCatalog],
|
|
106
|
+
["FoundationLocalModeService", localModeExports.FoundationLocalModeService],
|
|
107
|
+
["planScaffoldFromFile", scaffoldingExports.planScaffoldFromFile],
|
|
108
|
+
["applyFilesystemScaffold", scaffoldingExports.applyFilesystemScaffold],
|
|
109
|
+
["inspectFoundationMode", localModeExports.inspectFoundationMode]
|
|
110
|
+
];
|
|
111
|
+
for (const [exportName, candidate] of requiredRuntimeExports) {
|
|
112
|
+
if (typeof candidate !== "function") {
|
|
113
|
+
throw new FoundationError("PACKAGE_INVALID", `Foundation target runtime export is unavailable: ${exportName}.`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
85
117
|
export async function inspectFoundationPackage(packageRoot) {
|
|
86
118
|
let manifest;
|
|
87
119
|
try {
|
|
@@ -114,6 +146,10 @@ export async function inspectFoundationPackage(packageRoot) {
|
|
|
114
146
|
types: "./dist/local-mode/index.d.ts",
|
|
115
147
|
import: "./dist/local-mode/index.js"
|
|
116
148
|
});
|
|
149
|
+
validateExport(manifest.exports, "./document-authoring", {
|
|
150
|
+
types: "./dist/document-authoring/index.d.ts",
|
|
151
|
+
import: "./dist/document-authoring/index.js"
|
|
152
|
+
});
|
|
117
153
|
validateExport(manifest.exports, "./scaffolding", {
|
|
118
154
|
types: "./dist/scaffolding/index.d.ts",
|
|
119
155
|
import: "./dist/scaffolding/index.js"
|
|
@@ -131,29 +167,7 @@ export async function inspectFoundationPackage(packageRoot) {
|
|
|
131
167
|
throw new FoundationError("PACKAGE_INVALID", `Foundation target build output is unavailable: ${outputPath}.`, { cause: error });
|
|
132
168
|
}
|
|
133
169
|
}
|
|
134
|
-
|
|
135
|
-
const localModeExports = await import(pathToFileURL(join(packageRoot, "dist", "local-mode", "index.js")).href);
|
|
136
|
-
const scaffoldingExports = await import(pathToFileURL(join(packageRoot, "dist", "scaffolding", "index.js")).href);
|
|
137
|
-
if (!isRecord(rootExports) ||
|
|
138
|
-
!isRecord(localModeExports) ||
|
|
139
|
-
!isRecord(scaffoldingExports)) {
|
|
140
|
-
throw new FoundationError("PACKAGE_INVALID", "Foundation target runtime exports must be module objects.");
|
|
141
|
-
}
|
|
142
|
-
const requiredRuntimeExports = [
|
|
143
|
-
["FoundationError", rootExports.FoundationError],
|
|
144
|
-
[
|
|
145
|
-
"FoundationLocalModeService",
|
|
146
|
-
localModeExports.FoundationLocalModeService
|
|
147
|
-
],
|
|
148
|
-
["planScaffoldFromFile", scaffoldingExports.planScaffoldFromFile],
|
|
149
|
-
["applyFilesystemScaffold", scaffoldingExports.applyFilesystemScaffold],
|
|
150
|
-
["inspectFoundationMode", localModeExports.inspectFoundationMode]
|
|
151
|
-
];
|
|
152
|
-
for (const [exportName, candidate] of requiredRuntimeExports) {
|
|
153
|
-
if (typeof candidate !== "function") {
|
|
154
|
-
throw new FoundationError("PACKAGE_INVALID", `Foundation target runtime export is unavailable: ${exportName}.`);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
170
|
+
await assertRequiredRuntimeExports(packageRoot);
|
|
157
171
|
const protocolMetadata = parseProtocolMetadata(manifest);
|
|
158
172
|
const runtimeDependencies = assertStringRecord(manifest.dependencies, "dependencies");
|
|
159
173
|
const requireFromTarget = createRequire(join(packageRoot, "package.json"));
|