@superbee/core 0.2.0-pre.32 → 0.2.0-pre.34
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 +13 -0
- package/dist/backend.d.ts +3 -1
- package/dist/backend.d.ts.map +1 -1
- package/dist/backend.js +76 -8
- package/dist/backend.js.map +1 -1
- package/dist/bundle-health/report.d.ts +5 -0
- package/dist/bundle-health/report.d.ts.map +1 -1
- package/dist/bundle-health/report.js +4 -0
- package/dist/bundle-health/report.js.map +1 -1
- package/dist/bundle-ops.d.ts +2 -1
- package/dist/bundle-ops.d.ts.map +1 -1
- package/dist/bundle-ops.js +2 -2
- package/dist/bundle-ops.js.map +1 -1
- package/dist/bundle.d.ts +1 -3
- package/dist/bundle.d.ts.map +1 -1
- package/dist/bundle.js +2 -11
- package/dist/bundle.js.map +1 -1
- package/dist/document-mutation.d.ts +3 -0
- package/dist/document-mutation.d.ts.map +1 -1
- package/dist/document-mutation.js +24 -2
- package/dist/document-mutation.js.map +1 -1
- package/dist/engine.d.ts +3 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +16 -4
- package/dist/engine.js.map +1 -1
- package/dist/filesystem-identity.d.ts +9 -7
- package/dist/filesystem-identity.d.ts.map +1 -1
- package/dist/filesystem-identity.js +58 -5
- package/dist/filesystem-identity.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/inventory-guard.d.ts +58 -0
- package/dist/inventory-guard.d.ts.map +1 -0
- package/dist/inventory-guard.js +169 -0
- package/dist/inventory-guard.js.map +1 -0
- package/dist/kind-authoring.d.ts.map +1 -1
- package/dist/kind-authoring.js +1 -0
- package/dist/kind-authoring.js.map +1 -1
- package/dist/kind-deprecation.d.ts +32 -0
- package/dist/kind-deprecation.d.ts.map +1 -0
- package/dist/kind-deprecation.js +141 -0
- package/dist/kind-deprecation.js.map +1 -0
- package/dist/kinds.d.ts +32 -1
- package/dist/kinds.d.ts.map +1 -1
- package/dist/kinds.js +13 -0
- package/dist/kinds.js.map +1 -1
- package/dist/memory-backend.d.ts +3 -0
- package/dist/memory-backend.d.ts.map +1 -1
- package/dist/memory-backend.js +38 -0
- package/dist/memory-backend.js.map +1 -1
- package/dist/okf-actor.d.ts +1 -0
- package/dist/okf-actor.d.ts.map +1 -1
- package/dist/okf-actor.js +1 -0
- package/dist/okf-actor.js.map +1 -1
- package/dist/okf-authoring.d.ts +4 -0
- package/dist/okf-authoring.d.ts.map +1 -0
- package/dist/okf-authoring.js +12 -0
- package/dist/okf-authoring.js.map +1 -0
- package/dist/okf-standard-fields.d.ts +3 -0
- package/dist/okf-standard-fields.d.ts.map +1 -1
- package/dist/okf-standard-fields.js +3 -0
- package/dist/okf-standard-fields.js.map +1 -1
- package/dist/recipe-lifecycle/evolution.d.ts +13 -1
- package/dist/recipe-lifecycle/evolution.d.ts.map +1 -1
- package/dist/recipe-lifecycle/evolution.js +88 -9
- package/dist/recipe-lifecycle/evolution.js.map +1 -1
- package/dist/recipe-lifecycle/index.d.ts +4 -0
- package/dist/recipe-lifecycle/index.d.ts.map +1 -1
- package/dist/recipe-lifecycle/index.js +2 -0
- package/dist/recipe-lifecycle/index.js.map +1 -1
- package/dist/recipe-lifecycle/install.d.ts.map +1 -1
- package/dist/recipe-lifecycle/install.js +11 -1
- package/dist/recipe-lifecycle/install.js.map +1 -1
- package/dist/recipe-lifecycle/retirement-apply.d.ts +59 -0
- package/dist/recipe-lifecycle/retirement-apply.d.ts.map +1 -0
- package/dist/recipe-lifecycle/retirement-apply.js +165 -0
- package/dist/recipe-lifecycle/retirement-apply.js.map +1 -0
- package/dist/recipe-lifecycle/retirement.d.ts +89 -0
- package/dist/recipe-lifecycle/retirement.d.ts.map +1 -0
- package/dist/recipe-lifecycle/retirement.js +347 -0
- package/dist/recipe-lifecycle/retirement.js.map +1 -0
- package/dist/source-profiles/index.d.ts +1 -1
- package/dist/source-profiles/index.js +1 -1
- package/dist/storage.d.ts +2 -0
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +1 -0
- package/dist/storage.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +17 -1
package/dist/bundle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,gCAAgC,EAAE,6BAA6B,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACjI,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EACL,UAAU,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,SAAS,EACT,IAAI,EACJ,SAAS,EACT,UAAU,EACV,KAAK,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,oBAAoB,EACpB,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,QAAQ,EACR,iBAAiB,EACjB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AAEzB,wBAAwB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;AAEhE,qDAAqD;AACrD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAY,EAAE,UAA6B,EAAE,EAAE,oBAA8C,EAAE;IAC9H,MAAM,UAAU,GAAG,0BAA0B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IACnE,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC/E,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,GAAG,sBAAsB,OAAO,IAAI,wCAAwC,CAAC;QAC1F,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,EAAE,UAAU,EAAE,iBAAiB,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,IAAI,CAAC,EAAE;gBAChG,eAAe,EAAE,IAAI;aACtB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,YAAY,eAAe,CAAC;gBAAE,MAAM,GAAG,CAAC;QACxE,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AACrC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type InventoryGuardRequest } from "./inventory-guard.js";
|
|
1
2
|
import { type BodyReplacePosture } from "./body-replace-guards.js";
|
|
2
3
|
/**
|
|
3
4
|
* CLI-neutral document mutation policy.
|
|
@@ -59,6 +60,8 @@ export type DocumentMutationInput = {
|
|
|
59
60
|
mutation: KindFieldMutation;
|
|
60
61
|
};
|
|
61
62
|
export interface MutateDocumentOptions {
|
|
63
|
+
/** Fixed data-only persistence premise; only hard-CAS existing replacement is supported. */
|
|
64
|
+
inventoryGuard?: Pick<InventoryGuardRequest, "target" | "domain" | "inventory">;
|
|
62
65
|
bundle: Bundle;
|
|
63
66
|
id: ConceptId;
|
|
64
67
|
mode: DocumentMutationMode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-mutation.d.ts","sourceRoot":"","sources":["../src/document-mutation.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC3G;;;;;;;;GAQG;AAEH,OAAO,EAA+E,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACnK,OAAO,EAA4B,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC5F,OAAO,EAA2B,KAAK,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"document-mutation.d.ts","sourceRoot":"","sources":["../src/document-mutation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAA0C,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC3G;;;;;;;;GAQG;AAEH,OAAO,EAA+E,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACnK,OAAO,EAA4B,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC5F,OAAO,EAA2B,KAAK,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAI5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAoBnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAA4B,MAAM,YAAY,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EACV,MAAM,EACN,SAAS,EACT,WAAW,EACX,WAAW,EACX,OAAO,EACR,MAAM,YAAY,CAAC;AAIpB;gFACgF;AAChF,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG,WAAW,GAAG,OAAO,GAAG,kBAAkB,CAAC;AAE9F,sFAAsF;AACtF,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,WAAW,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,8FAA8F;AAC9F,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,KAAK,GAAG,KAAK,CAAC;CAC3B;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC,uFAAuF;AACvF,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;gBAEX,EAAE,EAAE,SAAS;CAK1B;AAED,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE;AAC/C;;;;GAIG;GACD;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAE,GACnG;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,yBAAyB,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAExD,MAAM,WAAW,qBAAqB;IACpC,4FAA4F;IAC5F,cAAc,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC,CAAC;IAChF,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,SAAS,CAAC;IACd,IAAI,EAAE,oBAAoB,CAAC;IAC3B,mGAAmG;IACnG,QAAQ,EAAE,YAAY,CAAC;IACvB,8DAA8D;IAC9D,MAAM,EAAE,OAAO,CAAC;IAChB,qEAAqE;IACrE,cAAc,CAAC,EAAE,CACf,QAAQ,EAAE,WAAW,GAAG,SAAS,EACjC,OAAO,EAAE,uBAAuB,KAC7B,yBAAyB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACpE,oGAAoG;IACpG,KAAK,CAAC,EAAE,qBAAqB,GAAG,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,uBAAuB,KAAK,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACtJ,kGAAkG;IAClG,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,mFAAmF;IACnF,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,EAAE,SAAS,EAAE,yBAAyB,EAAE,OAAO,EAAE,uBAAuB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtJ,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC7B,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;kFAE8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;0FAEsF;IACtF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,sFAAsF;IACtF,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC7C,6FAA6F;IAC7F,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,+FAA+F;IAC/F,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5B,GAAG,EAAE,WAAW,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CAC/B;AAsLD,MAAM,WAAW,8BAA8B;IAC7C,EAAE,EAAE,SAAS,CAAC;IACd,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,KAAK,GAAG,KAAK,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,mFAAmF;AACnF,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,WAAW,GAAG,SAAS,EACjC,YAAY,EAAE,yBAAyB,EACvC,IAAI,EAAE,8BAA8B,GACnC;IAAE,SAAS,EAAE,yBAAyB,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAA;CAAE,CAc3F;AAqBD,wBAAsB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAgQjG;AAED,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC9N,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { captureInventoryGuardRequest } from "./inventory-guard.js";
|
|
1
2
|
import { assertTypedListPatch, guardBodyReplace } from "./body-replace-guards.js";
|
|
2
3
|
/**
|
|
3
4
|
* CLI-neutral document mutation policy.
|
|
@@ -13,6 +14,7 @@ import { prepareKindFieldMutation } from "./kind-field-mutation.js";
|
|
|
13
14
|
import { appendVerificationEvent } from "./verification.js";
|
|
14
15
|
import { okfValuesEqual } from "./okf-authored-values.js";
|
|
15
16
|
import { InvalidInputError } from "./errors.js";
|
|
17
|
+
import { kindDeprecationTransition } from "./kind-deprecation.js";
|
|
16
18
|
import { KindConformanceError } from "./kind-conformance-error.js";
|
|
17
19
|
import { assertAuthoredOkfStandardFields } from "./okf-standard-fields.js";
|
|
18
20
|
import { applyV02MutationMetadata } from "./document-write-policy.js";
|
|
@@ -24,7 +26,7 @@ import { persistMutationActor, SUPERBEE_UPDATED_BY_FIELD } from "./mutation-attr
|
|
|
24
26
|
import { defaultTimestampAndValidateAgainstRegistry, validateAgainstKind, } from "./kinds.js";
|
|
25
27
|
import { versionedMutation } from "./mutation.js";
|
|
26
28
|
import { VersionConflict } from "./versioning.js";
|
|
27
|
-
import { readBundleOkfVersion, readDocVersioned, writeDocVersionedForEdition, } from "./bundle-ops.js";
|
|
29
|
+
import { backendFor, readBundleOkfVersion, readDocVersioned, writeDocVersionedForEdition, } from "./bundle-ops.js";
|
|
28
30
|
const DEFAULT_MAX_ATTEMPTS = 5;
|
|
29
31
|
export { KindConformanceError };
|
|
30
32
|
/** Typed missing-document result for patch callers that require an existing target. */
|
|
@@ -113,7 +115,13 @@ function attributeCandidate(candidate, actor, persistActor, okfVersion, registry
|
|
|
113
115
|
* timestamp first. Returns the kind alongside the warnings so overwrite's ratchet (below) can
|
|
114
116
|
* reuse this ONE validation pass instead of re-deriving the candidate's kind separately.
|
|
115
117
|
*/
|
|
118
|
+
function assertDeprecation(id, candidate, registry, existing) {
|
|
119
|
+
const violations = kindDeprecationTransition(existing, { id, ...candidate }, registry);
|
|
120
|
+
if (violations.length)
|
|
121
|
+
throw new KindConformanceError(id, String(candidate.frontmatter.type), violations);
|
|
122
|
+
}
|
|
116
123
|
function validateCandidate(id, candidate, registry, strict, okfVersion, now, existing) {
|
|
124
|
+
assertDeprecation(id, candidate, registry, existing);
|
|
117
125
|
const result = defaultTimestampAndValidateAgainstRegistry({ id, ...candidate }, registry, { okfVersion, now });
|
|
118
126
|
if (okfVersion === "0.2")
|
|
119
127
|
assertAuthoredOkfStandardFields(candidate.frontmatter, existing?.frontmatter);
|
|
@@ -124,6 +132,7 @@ function validateCandidate(id, candidate, registry, strict, okfVersion, now, exi
|
|
|
124
132
|
}
|
|
125
133
|
/** Validate unchanged stored content without manufacturing clocks or attribution. */
|
|
126
134
|
function validateUnchangedDocument(existing, registry, strict, okfVersion) {
|
|
135
|
+
assertDeprecation(existing.id, existing, registry, existing);
|
|
127
136
|
const kind = registry.kinds.get(String(existing.frontmatter.type));
|
|
128
137
|
const warnings = kind ? validateAgainstKind(existing, kind) : [];
|
|
129
138
|
if (strict && kind && warnings.length > 0) {
|
|
@@ -167,6 +176,7 @@ export function prepareDocumentMutationCandidate(existing, rawCandidate, opts) {
|
|
|
167
176
|
const persistActor = resolvePersistActor(opts);
|
|
168
177
|
const decisionNow = onceNow(opts.now ?? (() => new Date().toISOString()));
|
|
169
178
|
const comparison = withV02Metadata(structuredClone(rawCandidate), existing, opts.okfVersion, opts.registry, decisionNow, opts.seedGenerationClock ?? true, opts.actor, opts.compareTimestamp ?? false, opts.producer);
|
|
179
|
+
assertDeprecation(opts.id, comparison, opts.registry, existing);
|
|
170
180
|
if (existing && isNoopMutation(existing, comparison, opts.compareTimestamp ?? false, opts.okfVersion, opts.okfVersion === "0.2" && persistActor && opts.actor !== undefined, opts.registry.kinds.get(String(comparison.frontmatter.type))?.fields.required.includes("actor") ?? false)) {
|
|
171
181
|
return { candidate: { frontmatter: structuredClone(existing.frontmatter), body: existing.body }, changed: false, warnings: validateUnchangedDocument(existing, opts.registry, opts.strict, opts.okfVersion) };
|
|
172
182
|
}
|
|
@@ -193,6 +203,15 @@ function resolvePersistActor(opts) {
|
|
|
193
203
|
return opts.persistActor ?? (opts.actor !== undefined);
|
|
194
204
|
}
|
|
195
205
|
export async function mutateDocument(opts) {
|
|
206
|
+
opts = { ...opts, bundle: { ...opts.bundle, backend: backendFor(opts.bundle) } };
|
|
207
|
+
if (opts.inventoryGuard !== undefined) {
|
|
208
|
+
if (opts.mode !== "replace-document" || opts.onAbsent !== "fail" || typeof opts.expectedVersion !== "string" || (opts.maxAttempts !== undefined && opts.maxAttempts !== 1)) {
|
|
209
|
+
throw new InvalidInputError("Inventory guard requires existing replace-document, exact target version and one attempt.");
|
|
210
|
+
}
|
|
211
|
+
const captured = captureInventoryGuardRequest({ ...opts.inventoryGuard, id: opts.id, expectedVersion: opts.expectedVersion,
|
|
212
|
+
doc: { id: opts.id, frontmatter: { type: "Concept" }, body: "" } });
|
|
213
|
+
opts.inventoryGuard = { target: captured.target, domain: captured.domain, inventory: captured.inventory };
|
|
214
|
+
}
|
|
196
215
|
const maxAttempts = opts.maxAttempts ?? DEFAULT_MAX_ATTEMPTS;
|
|
197
216
|
const onAbsent = opts.onAbsent ?? "fail";
|
|
198
217
|
const compareTimestamp = opts.compareTimestamp ?? false;
|
|
@@ -324,6 +343,7 @@ export async function mutateDocument(opts) {
|
|
|
324
343
|
assertFieldPreconditions(opts.id, existing?.frontmatter, opts.preconditions, lastReadVersion);
|
|
325
344
|
const withMetadata = withV02Metadata(await build(existing, decisionNow), existing, okfVersion, opts.registry, decisionNow, seedClock, opts.actor, compareTimestamp, opts.producer);
|
|
326
345
|
const candidate = attributeCandidate(withMetadata, opts.actor, persistActor, okfVersion, opts.registry);
|
|
346
|
+
assertDeprecation(opts.id, candidate, opts.registry, existing);
|
|
327
347
|
if (existing && isNoopMutation(existing, candidate, compareTimestamp, okfVersion, persistActor && opts.actor !== undefined, opts.registry.kinds.get(String(candidate.frontmatter.type))?.fields.required.includes("actor") ?? false)) {
|
|
328
348
|
warnings = validateUnchangedDocument(existing, opts.registry, opts.strict, okfVersion);
|
|
329
349
|
return { action: "done", result: { doc: existing } };
|
|
@@ -383,6 +403,8 @@ export async function mutateDocument(opts) {
|
|
|
383
403
|
id: opts.id, registry: opts.registry, strict: opts.strict, okfVersion, now: decisionNow,
|
|
384
404
|
actor: opts.actor, producer: opts.producer, persistActor, compareTimestamp, seedGenerationClock: seedClock,
|
|
385
405
|
});
|
|
406
|
+
if (!changed && opts.inventoryGuard)
|
|
407
|
+
throw new InvalidInputError("Inventory-guarded replacement requires a meaningful change.");
|
|
386
408
|
if (!changed)
|
|
387
409
|
return { action: "done", result: { doc: existing, warnings } };
|
|
388
410
|
return { action: "write", next: { id: opts.id, ...candidate }, result: { warnings } };
|
|
@@ -392,7 +414,7 @@ export async function mutateDocument(opts) {
|
|
|
392
414
|
expectedVersion: hardCas ? opts.expectedVersion : expectedVersion,
|
|
393
415
|
actor: opts.actor,
|
|
394
416
|
bodyReplace: opts.bodyReplace,
|
|
395
|
-
});
|
|
417
|
+
}, opts.inventoryGuard);
|
|
396
418
|
savedDoc = written.doc;
|
|
397
419
|
return written.version;
|
|
398
420
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-mutation.js","sourceRoot":"","sources":["../src/document-mutation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"document-mutation.js","sourceRoot":"","sources":["../src/document-mutation.ts"],"names":[],"mappings":"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"}
|
package/dist/engine.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type InventoryGuardRequest } from "./inventory-guard.js";
|
|
1
2
|
import type { BlobKey, ConceptId, DeleteOptions, EdgeFilter, HeadResult, Link, OkfDocument, QueryFilter, ReadBlobResult, ReadResult, StorageBackend, Version, VersionInfo, WriteOptions } from "./types.js";
|
|
2
3
|
export { MalformedDocumentError } from "./frontmatter-contract.js";
|
|
3
4
|
export type { EdgeFilter, Link } from "./types.js";
|
|
@@ -17,10 +18,11 @@ export interface QueryOptions {
|
|
|
17
18
|
}
|
|
18
19
|
/** Read the bundle-root OKF edition through an explicit backend. */
|
|
19
20
|
export declare function readBundleOkfVersion(backend: Pick<StorageBackend, "readReserved">): Promise<string | undefined>;
|
|
21
|
+
export type DocumentInventoryPremise = Pick<InventoryGuardRequest, "target" | "domain" | "inventory">;
|
|
20
22
|
/** Validate, normalize for the backend's bundle edition, and atomically persist a document. */
|
|
21
23
|
export declare function writeDocVersioned(backend: StorageBackend, doc: OkfDocument, options?: WriteOptions): Promise<WriteResult>;
|
|
22
24
|
/** Edition-pinned sibling for mutation policy after it has read the root once. */
|
|
23
|
-
export declare function writeDocVersionedForEdition(backend: StorageBackend, doc: OkfDocument, okfVersion: string, options?: WriteOptions): Promise<WriteResult>;
|
|
25
|
+
export declare function writeDocVersionedForEdition(backend: StorageBackend, doc: OkfDocument, okfVersion: string, options?: WriteOptions, inventoryPremise?: DocumentInventoryPremise): Promise<WriteResult>;
|
|
24
26
|
/** Persist a document while keeping the historical document-only result. */
|
|
25
27
|
export declare function writeDoc(backend: StorageBackend, doc: OkfDocument, options?: WriteOptions): Promise<OkfDocument>;
|
|
26
28
|
/** The one rule for an id a document read accepts: safe, and not a reserved file. */
|
package/dist/engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
package/dist/engine.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { captureBodyReplacePosture, guardBodyReplace } from "./body-replace-guards.js";
|
|
2
|
+
import { inventoryGuardFor, InventoryGuardConflict } from "./inventory-guard.js";
|
|
2
3
|
import { VersionConflict } from "./version-transport.js";
|
|
3
4
|
/**
|
|
4
5
|
* Runtime-neutral Superbee engine operations.
|
|
@@ -34,7 +35,7 @@ function assertWritableConceptDocument(doc) {
|
|
|
34
35
|
}
|
|
35
36
|
return type;
|
|
36
37
|
}
|
|
37
|
-
async function persistDocForEdition(backend, doc, type, okfVersion, options) {
|
|
38
|
+
async function persistDocForEdition(backend, doc, type, okfVersion, options, inventoryPremise) {
|
|
38
39
|
let saved;
|
|
39
40
|
if (okfVersion === "0.1") {
|
|
40
41
|
const existingTimestamp = doc.frontmatter.timestamp;
|
|
@@ -46,7 +47,18 @@ async function persistDocForEdition(backend, doc, type, okfVersion, options) {
|
|
|
46
47
|
else {
|
|
47
48
|
saved = normalizeV02DocumentForWrite(doc, type);
|
|
48
49
|
}
|
|
49
|
-
|
|
50
|
+
let version;
|
|
51
|
+
if (inventoryPremise) {
|
|
52
|
+
if (inventoryPremise.target.edition !== okfVersion)
|
|
53
|
+
throw new InventoryGuardConflict("edition");
|
|
54
|
+
if (typeof options?.expectedVersion !== "string")
|
|
55
|
+
throw new InvalidInputError("Inventory-guarded persistence requires a target version.");
|
|
56
|
+
const result = await inventoryGuardFor(backend).compareInventoryAndWrite({ ...inventoryPremise, id: doc.id, expectedVersion: options.expectedVersion, doc: saved,
|
|
57
|
+
options: { ...(options.actor === undefined ? {} : { actor: options.actor }), ...(options.agent === undefined ? {} : { agent: options.agent }) } });
|
|
58
|
+
version = result.version;
|
|
59
|
+
}
|
|
60
|
+
else
|
|
61
|
+
version = await backend.write(doc.id, saved, options);
|
|
50
62
|
return { doc: saved, version };
|
|
51
63
|
}
|
|
52
64
|
/** Validate, normalize for the backend's bundle edition, and atomically persist a document. */
|
|
@@ -56,8 +68,8 @@ export async function writeDocVersioned(backend, doc, options) {
|
|
|
56
68
|
return persistDocForEdition(backend, doc, type, okfVersion, options);
|
|
57
69
|
}
|
|
58
70
|
/** Edition-pinned sibling for mutation policy after it has read the root once. */
|
|
59
|
-
export async function writeDocVersionedForEdition(backend, doc, okfVersion, options) {
|
|
60
|
-
return persistDocForEdition(backend, doc, assertWritableConceptDocument(doc), okfVersion, options);
|
|
71
|
+
export async function writeDocVersionedForEdition(backend, doc, okfVersion, options, inventoryPremise) {
|
|
72
|
+
return persistDocForEdition(backend, doc, assertWritableConceptDocument(doc), okfVersion, options, inventoryPremise);
|
|
61
73
|
}
|
|
62
74
|
/** Persist a document while keeping the historical document-only result. */
|
|
63
75
|
export async function writeDoc(backend, doc, options) {
|
package/dist/engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -156,14 +156,16 @@ export declare class FilesystemShapeMismatchError extends Error {
|
|
|
156
156
|
* over-folding (dotless ı with i) only adds serialization, never removes exclusion.
|
|
157
157
|
*/
|
|
158
158
|
export declare function foldSegment(segment: string): string;
|
|
159
|
-
/**
|
|
160
|
-
* The lock key for one logical identity `(root, rel)`: a digest of the fully folded physical
|
|
161
|
-
* root path and the folded `rel`. The WHOLE existing ancestor chain is resolved and folded, so
|
|
162
|
-
* the key is identical whether it is computed before or after any part of the root is created,
|
|
163
|
-
* and identical for every case or normalization spelling of any segment. It depends on nothing
|
|
164
|
-
* else: not the environment, the clock, the process, or the host name.
|
|
165
|
-
*/
|
|
166
159
|
export declare function identityKey(root: string, rel: string): Promise<string>;
|
|
160
|
+
/** Same root key before/after directory creation; physical replacement is a separate witness. */
|
|
161
|
+
export declare function filesystemRootMutationKey(root: string): Promise<string>;
|
|
162
|
+
/** Existing physical-root/ancestor witnesses supplement the stable coordination pathname. */
|
|
163
|
+
export declare function filesystemRootWitness(port: FilesystemIdentityPort, root: string): Promise<string>;
|
|
164
|
+
/** Internal per-backend root coordinator; never re-exported by a public entrypoint. */
|
|
165
|
+
export declare function createFilesystemMutationCoordinator(_port: FilesystemIdentityPort, root: string, hostPolicy?: FilesystemHostPolicy): {
|
|
166
|
+
run<T>(body: () => Promise<T>): Promise<T>;
|
|
167
|
+
namespace(): string;
|
|
168
|
+
};
|
|
167
169
|
export type ConfirmVerdict = "continue" | "absent" | "aliased" | "restart";
|
|
168
170
|
/**
|
|
169
171
|
* The confirmed-witness rule for one `rel` segment: a fresh probe of the requested spelling is
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem-identity.d.ts","sourceRoot":"","sources":["../src/filesystem-identity.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"filesystem-identity.d.ts","sourceRoot":"","sources":["../src/filesystem-identity.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,7 +55,7 @@ import { promises as fs } from "node:fs";
|
|
|
55
55
|
import path from "node:path";
|
|
56
56
|
import { createHash, randomUUID } from "node:crypto";
|
|
57
57
|
import { ConcurrentReplacementError, FilesystemIdentityAliasError, InvalidInputError } from "./errors.js";
|
|
58
|
-
import { acquireFilesystemIdentityLock } from "./filesystem-lock.js";
|
|
58
|
+
import { acquireFilesystemIdentityLock, filesystemMutationLockRoot } from "./filesystem-lock.js";
|
|
59
59
|
import { captureFilesystemHostPolicy } from "./filesystem-host.js";
|
|
60
60
|
/**
|
|
61
61
|
* A host can transiently deny replacement while another process is closing a read handle or a
|
|
@@ -163,12 +163,65 @@ async function existingAnchor(resolved) {
|
|
|
163
163
|
* and identical for every case or normalization spelling of any segment. It depends on nothing
|
|
164
164
|
* else: not the environment, the clock, the process, or the host name.
|
|
165
165
|
*/
|
|
166
|
-
|
|
167
|
-
const foldedRel = relSegments(rel).map(foldSegment).join("/");
|
|
166
|
+
async function foldedPhysicalRoot(root) {
|
|
168
167
|
const { anchor, tail } = await existingAnchor(path.resolve(root));
|
|
169
168
|
const anchorSegments = anchor.split(path.sep).filter((segment, index) => index === 0 || segment !== "");
|
|
170
|
-
|
|
171
|
-
|
|
169
|
+
return [...anchorSegments, ...tail].map(foldSegment).join("/");
|
|
170
|
+
}
|
|
171
|
+
export async function identityKey(root, rel) {
|
|
172
|
+
const foldedRel = relSegments(rel).map(foldSegment).join("/");
|
|
173
|
+
return createHash("sha256").update(`superbee-identity/v1\0${await foldedPhysicalRoot(root)}\0${foldedRel}`).digest("hex");
|
|
174
|
+
}
|
|
175
|
+
/** Same root key before/after directory creation; physical replacement is a separate witness. */
|
|
176
|
+
export async function filesystemRootMutationKey(root) {
|
|
177
|
+
return createHash("sha256").update(`superbee-root-mutation/v1\0${await foldedPhysicalRoot(root)}`).digest("hex");
|
|
178
|
+
}
|
|
179
|
+
/** Existing physical-root/ancestor witnesses supplement the stable coordination pathname. */
|
|
180
|
+
export async function filesystemRootWitness(port, root) {
|
|
181
|
+
const physical = await fs.realpath(root);
|
|
182
|
+
const witnesses = [];
|
|
183
|
+
let current = physical;
|
|
184
|
+
for (;;) {
|
|
185
|
+
const witness = await port.probe(current);
|
|
186
|
+
if (!witness || witness.kind !== "directory")
|
|
187
|
+
throw new InvalidInputError("Inventory guard root identity is unavailable.");
|
|
188
|
+
witnesses.push([current, witness.dev, witness.ino]);
|
|
189
|
+
const parent = path.dirname(current);
|
|
190
|
+
if (parent === current)
|
|
191
|
+
break;
|
|
192
|
+
current = parent;
|
|
193
|
+
}
|
|
194
|
+
return createHash("sha256").update(JSON.stringify(witnesses)).digest("hex");
|
|
195
|
+
}
|
|
196
|
+
const rootMutationQueues = new Map();
|
|
197
|
+
/** Internal per-backend root coordinator; never re-exported by a public entrypoint. */
|
|
198
|
+
export function createFilesystemMutationCoordinator(_port, root, hostPolicy) {
|
|
199
|
+
const policy = captureFilesystemHostPolicy(hostPolicy);
|
|
200
|
+
let lockRoot;
|
|
201
|
+
const namespace = () => lockRoot ??= filesystemMutationLockRoot(root, policy);
|
|
202
|
+
return Object.freeze({
|
|
203
|
+
namespace,
|
|
204
|
+
async run(body) {
|
|
205
|
+
const key = await filesystemRootMutationKey(root);
|
|
206
|
+
const lockRoot = namespace();
|
|
207
|
+
const queueKey = `${lockRoot}:${key}`;
|
|
208
|
+
const previous = rootMutationQueues.get(queueKey) ?? Promise.resolve();
|
|
209
|
+
const run = previous.then(async () => {
|
|
210
|
+
const release = await acquireFilesystemIdentityLock(key, root, { portableRoot: root, lockRoot, hostPolicy: policy });
|
|
211
|
+
try {
|
|
212
|
+
return await body();
|
|
213
|
+
}
|
|
214
|
+
finally {
|
|
215
|
+
await release();
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
const settled = run.then(() => { }, () => { });
|
|
219
|
+
rootMutationQueues.set(queueKey, settled);
|
|
220
|
+
void settled.then(() => { if (rootMutationQueues.get(queueKey) === settled)
|
|
221
|
+
rootMutationQueues.delete(queueKey); });
|
|
222
|
+
return run;
|
|
223
|
+
},
|
|
224
|
+
});
|
|
172
225
|
}
|
|
173
226
|
// ── pure decisions ────────────────────────────────────────────────────────────
|
|
174
227
|
function sameWitness(a, b) {
|