@superbee/core 0.2.0-pre.19 → 0.2.0-pre.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/README.md +40 -18
  2. package/dist/connectors.d.ts +7 -0
  3. package/dist/connectors.d.ts.map +1 -1
  4. package/dist/connectors.js +17 -10
  5. package/dist/connectors.js.map +1 -1
  6. package/dist/recipe-lifecycle/errors.d.ts +17 -0
  7. package/dist/recipe-lifecycle/errors.d.ts.map +1 -1
  8. package/dist/recipe-lifecycle/errors.js +26 -0
  9. package/dist/recipe-lifecycle/errors.js.map +1 -1
  10. package/dist/recipe-lifecycle/evolution.d.ts +6 -2
  11. package/dist/recipe-lifecycle/evolution.d.ts.map +1 -1
  12. package/dist/recipe-lifecycle/evolution.js +132 -2
  13. package/dist/recipe-lifecycle/evolution.js.map +1 -1
  14. package/dist/recipe-lifecycle/index.d.ts +10 -9
  15. package/dist/recipe-lifecycle/index.d.ts.map +1 -1
  16. package/dist/recipe-lifecycle/index.js +9 -8
  17. package/dist/recipe-lifecycle/index.js.map +1 -1
  18. package/dist/recipe-lifecycle/install.d.ts +22 -7
  19. package/dist/recipe-lifecycle/install.d.ts.map +1 -1
  20. package/dist/recipe-lifecycle/install.js +102 -3
  21. package/dist/recipe-lifecycle/install.js.map +1 -1
  22. package/dist/recipe-lifecycle/stamp.d.ts +46 -19
  23. package/dist/recipe-lifecycle/stamp.d.ts.map +1 -1
  24. package/dist/recipe-lifecycle/stamp.js +97 -37
  25. package/dist/recipe-lifecycle/stamp.js.map +1 -1
  26. package/dist/recipes.d.ts +24 -1
  27. package/dist/recipes.d.ts.map +1 -1
  28. package/dist/recipes.js +132 -1
  29. package/dist/recipes.js.map +1 -1
  30. package/dist/search/backend-source.d.ts +6 -0
  31. package/dist/search/backend-source.d.ts.map +1 -0
  32. package/dist/search/backend-source.js +33 -0
  33. package/dist/search/backend-source.js.map +1 -0
  34. package/dist/search/index.d.ts +1 -0
  35. package/dist/search/index.d.ts.map +1 -1
  36. package/dist/search/index.js +1 -0
  37. package/dist/search/index.js.map +1 -1
  38. package/dist/search/memory-source.d.ts +11 -0
  39. package/dist/search/memory-source.d.ts.map +1 -1
  40. package/dist/search/memory-source.js +7 -2
  41. package/dist/search/memory-source.js.map +1 -1
  42. package/dist/search/search.d.ts.map +1 -1
  43. package/dist/search/search.js +25 -8
  44. package/dist/search/search.js.map +1 -1
  45. package/dist/source-harness/conformance.js +1 -1
  46. package/dist/source-harness/conformance.js.map +1 -1
  47. package/package.json +1 -1
@@ -4,10 +4,14 @@ import { type RecipeEvolutionCompletedDefinition } from "./errors.js";
4
4
  import { type RecipeStampState } from "./stamp.js";
5
5
  export interface RecipeEvolutionDefinition {
6
6
  id: ConceptId;
7
+ /**
8
+ * The Kind a convention governs; `Connector` on a Connector row, a value no recipe convention
9
+ * may govern.
10
+ */
7
11
  governs: string;
8
- /** Content only: whether the convention's declarations change. */
12
+ /** Content only: whether the definition's declarations change (a Connector's, as a whole). */
9
13
  action: "missing" | "unchanged" | "update";
10
- /** The installed convention's recipe stamp relative to this recipe. */
14
+ /** The installed definition's recipe stamp relative to this recipe. */
11
15
  stamp: RecipeStampState;
12
16
  expected_version: Version | null;
13
17
  desired_version: Version;
@@ -1 +1 @@
1
- {"version":3,"file":"evolution.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/evolution.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAe,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3E,OAAO,EAML,KAAK,kCAAkC,EACxC,MAAM,aAAa,CAAC;AAMrB,OAAO,EAOL,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAUpB,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,SAAS,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,uEAAuE;IACvE,KAAK,EAAE,gBAAgB,CAAC;IACxB,gBAAgB,EAAE,OAAO,GAAG,IAAI,CAAC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,wEAAwE;IACxE,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,8EAA8E;AAC9E,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,gBAAgB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,oGAAoG;IACpG,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,yBAAyB,EAAE,CAAC;IACzC,MAAM,EAAE;QACN,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,yFAAyF;QACzF,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,QAAQ,EAAE,sBAAsB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,0BAA0B;IACzC,wGAAwG;IACxG,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,iBAAiB,CAAC;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,kCAAkC,EAAE,CAAC;IAClD,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE;AAgwBD,0FAA0F;AAC1F,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,mBAAmB,CAAC,CAE9B;AAED,sEAAsE;AACtE,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,iBAAiB,EAAE,MAAM,EACzB,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/B,OAAO,CAAC,0BAA0B,CAAC,CAsHrC"}
1
+ {"version":3,"file":"evolution.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/evolution.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAe,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3E,OAAO,EAML,KAAK,kCAAkC,EACxC,MAAM,aAAa,CAAC;AAMrB,OAAO,EAOL,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAUpB,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,SAAS,CAAC;IACd;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,8FAA8F;IAC9F,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,uEAAuE;IACvE,KAAK,EAAE,gBAAgB,CAAC;IACxB,gBAAgB,EAAE,OAAO,GAAG,IAAI,CAAC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,wEAAwE;IACxE,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,8EAA8E;AAC9E,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,gBAAgB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,oGAAoG;IACpG,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,yBAAyB,EAAE,CAAC;IACzC,MAAM,EAAE;QACN,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,yFAAyF;QACzF,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,QAAQ,EAAE,sBAAsB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,0BAA0B;IACzC,wGAAwG;IACxG,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,iBAAiB,CAAC;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,kCAAkC,EAAE,CAAC;IAClD,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE;AAy4BD,0FAA0F;AAC1F,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,mBAAmB,CAAC,CAE9B;AAED,sEAAsE;AACtE,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,iBAAiB,EAAE,MAAM,EACzB,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/B,OAAO,CAAC,0BAA0B,CAAC,CAsHrC"}
@@ -5,7 +5,10 @@
5
5
  // exact-token preflight and exact-version CAS apply over each target whose content or recipe stamp
6
6
  // needs a write. The stamp travels in the same write as the convention's content. Since the bundle
7
7
  // has no cross-document transaction, a postcondition reports concurrent non-target changes honestly.
8
+ // A Connector the recipe carries is a declaration without instances: its content change replaces
9
+ // the whole document, and only one this recipe wrote that nobody changed since.
8
10
  import { query, readBlob, readBundleOkfVersion, readDocVersioned } from "../bundle-ops.js";
11
+ import { checkConnectorAgainstKinds, CONNECTOR_TYPE } from "../connectors.js";
9
12
  import { resolveContentType } from "../content-type.js";
10
13
  import { DocumentNotFoundError, mutateDocument } from "../document-mutation.js";
11
14
  import { applyV02MutationMetadata } from "../document-write-policy.js";
@@ -127,6 +130,67 @@ function additiveConventionCandidate(existing, desired, blockers) {
127
130
  addedPaths: [...new Set(addedPaths)].sort(),
128
131
  };
129
132
  }
133
+ /**
134
+ * The recipe's Connector as the replacement of the installed one: every content key and the body
135
+ * from the recipe, the root metadata and a bundle-local `order` from the installed document, as a
136
+ * convention update keeps them.
137
+ */
138
+ function connectorReplacement(existing, desired) {
139
+ const frontmatter = {};
140
+ for (const [key, value] of Object.entries(desired.frontmatter)) {
141
+ if (!PRESERVED_ROOT_METADATA.has(key))
142
+ setOwn(frontmatter, key, value);
143
+ }
144
+ for (const key of [...PRESERVED_ROOT_METADATA, ...BUNDLE_LOCAL_PLACEMENT]) {
145
+ if (BUNDLE_LOCAL_PLACEMENT.has(key) && desired.frontmatter[key] !== undefined)
146
+ continue;
147
+ if (Object.hasOwn(existing.frontmatter, key))
148
+ setOwn(frontmatter, key, existing.frontmatter[key]);
149
+ }
150
+ return { id: desired.id, frontmatter: frontmatter, body: desired.body };
151
+ }
152
+ /**
153
+ * Why an installed Connector may not be written, or null. A Connector has no additive merge, so
154
+ * evolution writes one only when this recipe's stamp holds and its definition digest shows nobody
155
+ * changed it since, or when it is unstamped and already equal to the recipe's. A person's edit, a
156
+ * hand-written declaration and another recipe's Connector all block, so their content is never
157
+ * replaced and their stamp never rewritten.
158
+ */
159
+ function connectorWriteBlocker(existing, stamp, unchanged) {
160
+ const id = existing.id;
161
+ if (existing.frontmatter.type !== CONNECTOR_TYPE) {
162
+ return {
163
+ code: "RECIPE_EVOLUTION_IDENTITY_CONFLICT",
164
+ message: `existing '${id}' has type '${String(existing.frontmatter.type)}', not '${CONNECTOR_TYPE}'`,
165
+ };
166
+ }
167
+ if (stamp === "foreign") {
168
+ return {
169
+ code: "RECIPE_EVOLUTION_REPLACEMENT_UNSUPPORTED",
170
+ message: `Connector '${id}' belongs to another recipe (its stamp names '${String(plainRecord(existing.frontmatter[RECIPE_STAMP_KEY])?.id)}'); evolution never replaces or re-stamps another recipe's Connector`,
171
+ };
172
+ }
173
+ if (stamp === "missing") {
174
+ return unchanged ? null : {
175
+ code: "RECIPE_EVOLUTION_REPLACEMENT_UNSUPPORTED",
176
+ message: `Connector '${id}' carries no recipe stamp and differs from this recipe's; evolution does not adopt a hand-written declaration: remove it and run 'recipe add', or keep it and leave this recipe where it is`,
177
+ };
178
+ }
179
+ const definition = conventionStampState(existing);
180
+ if (definition === "diverged") {
181
+ return {
182
+ code: "RECIPE_EVOLUTION_REPLACEMENT_UNSUPPORTED",
183
+ message: `Connector '${id}' changed since this recipe wrote it; evolution never replaces or re-stamps a Connector a person changed: undo the change, or remove the Connector and run 'recipe add'`,
184
+ };
185
+ }
186
+ if (definition === "unknown") {
187
+ return {
188
+ code: "RECIPE_EVOLUTION_REPLACEMENT_UNSUPPORTED",
189
+ message: `Connector '${id}' carries a stamp whose digest rules this release does not read, so it cannot prove nobody changed it`,
190
+ };
191
+ }
192
+ return null;
193
+ }
130
194
  async function readRecipeDocIfPresent(bundle, id) {
131
195
  try {
132
196
  return await readDocVersioned(bundle, id);
@@ -423,6 +487,71 @@ async function prepareRecipeEvolution(bundle, sourceRecipe) {
423
487
  evolutionBlocker(blockers, "RECIPE_EVOLUTION_DUPLICATE_GOVERNS", kind.id, `prospective registry keeps '${prospectiveRegistry.kinds.get(governs)?.id ?? "none"}' as the authority for '${governs}', not '${kind.id}'`, governs);
424
488
  }
425
489
  }
490
+ const connectorIds = new Set();
491
+ for (const { doc: authored, connector } of recipe.connectors ?? []) {
492
+ const target = recipeDocumentForApply(authored, okfVersion, "1970-01-01T00:00:00.000Z");
493
+ connectorIds.add(target.id);
494
+ // The target-Kind rules over the registry this plan would leave, so an unsatisfied Kind is a
495
+ // blocker here and never a failure part way through the apply.
496
+ for (const error of checkConnectorAgainstKinds(connector, prospectiveRegistry)) {
497
+ evolutionBlocker(blockers, "RECIPE_EVOLUTION_CONNECTOR_TARGET", target.id, `${error.code}: ${error.message}`, error.path);
498
+ }
499
+ const existing = await readRecipeDocIfPresent(bundle, target.id);
500
+ if (!existing) {
501
+ const desiredVersion = contentVersion(comparableRecipeDoc(target, okfVersion));
502
+ definitions.push({
503
+ id: target.id,
504
+ governs: CONNECTOR_TYPE,
505
+ action: "missing",
506
+ stamp: "missing",
507
+ expected_version: null,
508
+ desired_version: desiredVersion,
509
+ added_paths: [],
510
+ });
511
+ proofs.push({ kind: "connector", id: target.id, current_version: null, desired_version: desiredVersion });
512
+ evolutionBlocker(blockers, "RECIPE_EVOLUTION_ASSET_MISSING", target.id, `recipe Connector '${target.id}' is not installed; install the complete recipe with 'recipe add' first`);
513
+ continue;
514
+ }
515
+ let candidate = connectorReplacement(existing.doc, target);
516
+ if (okfVersion === "0.2") {
517
+ try {
518
+ const withMetadata = applyV02MutationMetadata({
519
+ existing: existing.doc,
520
+ candidate: { frontmatter: candidate.frontmatter, body: candidate.body },
521
+ meaningfulChangeAt: "1970-01-01T00:00:00.000Z",
522
+ allowGeneratedProvenanceSeed: false,
523
+ });
524
+ candidate = { id: candidate.id, ...withMetadata };
525
+ }
526
+ catch (error) {
527
+ if (!(error instanceof InvalidInputError))
528
+ throw error;
529
+ evolutionBlocker(blockers, "RECIPE_EVOLUTION_WRITE_POLICY_INVALID", target.id, `prospective Connector cannot satisfy the OKF v0.2 write policy: ${error.message}`);
530
+ }
531
+ }
532
+ const desiredVersion = contentVersion(comparableRecipeDoc(candidate, okfVersion));
533
+ const unchanged = sameInstalledDoc(existing.doc, candidate, okfVersion);
534
+ const stamp = recipeStampState(existing.doc, identity);
535
+ definitions.push({
536
+ id: target.id,
537
+ governs: CONNECTOR_TYPE,
538
+ action: unchanged ? "unchanged" : "update",
539
+ stamp,
540
+ expected_version: existing.version,
541
+ desired_version: desiredVersion,
542
+ added_paths: [],
543
+ });
544
+ proofs.push({ kind: "connector", id: target.id, current_version: existing.version, desired_version: desiredVersion });
545
+ const blocked = connectorWriteBlocker(existing.doc, stamp, unchanged);
546
+ if (blocked) {
547
+ evolutionBlocker(blockers, blocked.code, target.id, blocked.message, "/");
548
+ continue;
549
+ }
550
+ if (!unchanged)
551
+ writes.set(target.id, withRecipeStamp(candidate, identity));
552
+ else if (stamp === "stale" || stamp === "missing")
553
+ writes.set(target.id, withRecipeStamp(existing.doc, identity));
554
+ }
426
555
  const assetDocProof = async (kind, authored) => {
427
556
  const target = recipeDocumentForApply(authored, okfVersion, "1970-01-01T00:00:00.000Z");
428
557
  const wanted = contentVersion(comparableRecipeDoc(target, okfVersion));
@@ -451,7 +580,7 @@ async function prepareRecipeEvolution(bundle, sourceRecipe) {
451
580
  }
452
581
  }
453
582
  const changingKinds = definitions
454
- .filter((definition) => definition.action === "update")
583
+ .filter((definition) => definition.action === "update" && !connectorIds.has(definition.id))
455
584
  .map((definition) => desiredKinds.get(definition.governs))
456
585
  .filter((kind) => kind !== undefined);
457
586
  let instancesChecked = 0;
@@ -518,7 +647,8 @@ async function prepareRecipeEvolution(bundle, sourceRecipe) {
518
647
  }
519
648
  }
520
649
  proofs.push(...instanceProofs.sort((a, b) => a.id.localeCompare(b.id)));
521
- definitions.sort((a, b) => a.id.localeCompare(b.id));
650
+ // Connectors after conventions, so an apply writes a Kind before a Connector that maps onto it.
651
+ definitions.sort((a, b) => Number(connectorIds.has(a.id)) - Number(connectorIds.has(b.id)) || a.id.localeCompare(b.id));
522
652
  proofs.sort((a, b) => `${a.kind}:${a.id}`.localeCompare(`${b.kind}:${b.id}`));
523
653
  blockers.sort((a, b) => `${a.code}:${a.id}:${a.field ?? ""}`.localeCompare(`${b.code}:${b.id}:${b.field ?? ""}`));
524
654
  // Each definition's stamp state and the stamp the apply writes (the recipe's source digest)
@@ -1 +1 @@
1
- {"version":3,"file":"evolution.js","sourceRoot":"","sources":["../../src/recipe-lifecycle/evolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evolution.js","sourceRoot":"","sources":["../../src/recipe-lifecycle/evolution.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,23 @@
1
1
  /**
2
2
  * `@superbee/core/recipe-lifecycle`: install and evolve a parsed recipe on any bundle.
3
3
  *
4
- * `installRecipe` creates a recipe's conventions, View pairs and References create-only, never
5
- * overwriting what a bundle already holds. `planRecipeEvolution` is a read-only, state-bound
6
- * preflight of an additive upgrade to installed conventions, and `applyRecipeEvolution` applies
7
- * exactly the plan whose token the caller observed, one exact-version CAS write per changed
8
- * convention. The caller acquires the recipe (`@superbee/core/recipes` parses files into a
4
+ * `installRecipe` creates a recipe's conventions, Connectors, View pairs and References
5
+ * create-only, never overwriting what a bundle already holds, after checking every Connector
6
+ * against the Kinds the bundle will hold. `planRecipeEvolution` is a read-only, state-bound
7
+ * preflight of an additive upgrade to installed conventions and of the replacement of Connectors
8
+ * this recipe wrote and nobody changed since, and `applyRecipeEvolution` applies exactly the plan
9
+ * whose token the caller observed, one exact-version CAS write per changed definition. The caller acquires the recipe (`@superbee/core/recipes` parses files into a
9
10
  * `LoadedRecipe`) and presents results and typed errors. Storage-neutral: it runs in Node,
10
11
  * Workers and browsers over any `StorageBackend`.
11
12
  *
12
- * Every convention either path writes carries an `x_recipe` stamp in the same write;
13
+ * Every convention and Connector either path writes carries an `x_recipe` stamp in the same write;
13
14
  * `installedRecipes` derives each recipe's install state from those stamps alone.
14
15
  */
15
- export { installRecipe, installedConventionDocs, isRecipeApplied, materializeRecipeForEdition, recipeDrifts, } from "./install.js";
16
- export type { RecipeDocResult, RecipeInstallCounts, RecipeInstallResult, RecipePageResult, RecipeReferenceResult, } from "./install.js";
16
+ export { installRecipe, installedConnectorDocs, installedConventionDocs, isRecipeApplied, materializeRecipeForEdition, recipeDrifts, } from "./install.js";
17
+ export type { RecipeConnectorResult, RecipeDocResult, RecipeInstallCounts, RecipeInstallResult, RecipePageResult, RecipeReferenceResult, } from "./install.js";
17
18
  export { applyRecipeEvolution, planRecipeEvolution } from "./evolution.js";
18
19
  export type { RecipeEvolutionApplyResult, RecipeEvolutionBlocker, RecipeEvolutionDefinition, RecipeEvolutionPlan, } from "./evolution.js";
19
- export { RecipeAssetConflict, RecipeEditionChanged, RecipeEvolutionBlocked, RecipeEvolutionInterrupted, RecipeEvolutionPlanChanged, RecipeEvolutionPostcondition, RecipeInputError, RecipeLifecycleError, } from "./errors.js";
20
+ export { ConnectorTargetUnsatisfied, RecipeAssetConflict, RecipeEditionChanged, RecipeEvolutionBlocked, RecipeEvolutionInterrupted, RecipeEvolutionPlanChanged, RecipeEvolutionPostcondition, RecipeInputError, RecipeLifecycleError, } from "./errors.js";
20
21
  export type { RecipeEvolutionCompletedDefinition, RecipeEvolutionInterruptionReason } from "./errors.js";
21
22
  export { DEFINITION_DIGEST_RULES, RECIPE_STAMP_KEY, definitionDigest, installedRecipes, readRecipeStamp, recipeSourceDigest, } from "./stamp.js";
22
23
  export type { ConventionStampState, InstalledRecipeRow, RecipeInstallState, RecipeStamp, RecipeStampState, } from "./stamp.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,eAAe,EACf,2BAA2B,EAC3B,YAAY,GACb,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,YAAY,EACV,0BAA0B,EAC1B,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,kCAAkC,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AACzG,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,gBAAgB,GACjB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,EACf,2BAA2B,EAC3B,YAAY,GACb,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,YAAY,EACV,0BAA0B,EAC1B,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,kCAAkC,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AACzG,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,gBAAgB,GACjB,MAAM,YAAY,CAAC"}
@@ -1,19 +1,20 @@
1
1
  /**
2
2
  * `@superbee/core/recipe-lifecycle`: install and evolve a parsed recipe on any bundle.
3
3
  *
4
- * `installRecipe` creates a recipe's conventions, View pairs and References create-only, never
5
- * overwriting what a bundle already holds. `planRecipeEvolution` is a read-only, state-bound
6
- * preflight of an additive upgrade to installed conventions, and `applyRecipeEvolution` applies
7
- * exactly the plan whose token the caller observed, one exact-version CAS write per changed
8
- * convention. The caller acquires the recipe (`@superbee/core/recipes` parses files into a
4
+ * `installRecipe` creates a recipe's conventions, Connectors, View pairs and References
5
+ * create-only, never overwriting what a bundle already holds, after checking every Connector
6
+ * against the Kinds the bundle will hold. `planRecipeEvolution` is a read-only, state-bound
7
+ * preflight of an additive upgrade to installed conventions and of the replacement of Connectors
8
+ * this recipe wrote and nobody changed since, and `applyRecipeEvolution` applies exactly the plan
9
+ * whose token the caller observed, one exact-version CAS write per changed definition. The caller acquires the recipe (`@superbee/core/recipes` parses files into a
9
10
  * `LoadedRecipe`) and presents results and typed errors. Storage-neutral: it runs in Node,
10
11
  * Workers and browsers over any `StorageBackend`.
11
12
  *
12
- * Every convention either path writes carries an `x_recipe` stamp in the same write;
13
+ * Every convention and Connector either path writes carries an `x_recipe` stamp in the same write;
13
14
  * `installedRecipes` derives each recipe's install state from those stamps alone.
14
15
  */
15
- export { installRecipe, installedConventionDocs, isRecipeApplied, materializeRecipeForEdition, recipeDrifts, } from "./install.js";
16
+ export { installRecipe, installedConnectorDocs, installedConventionDocs, isRecipeApplied, materializeRecipeForEdition, recipeDrifts, } from "./install.js";
16
17
  export { applyRecipeEvolution, planRecipeEvolution } from "./evolution.js";
17
- export { RecipeAssetConflict, RecipeEditionChanged, RecipeEvolutionBlocked, RecipeEvolutionInterrupted, RecipeEvolutionPlanChanged, RecipeEvolutionPostcondition, RecipeInputError, RecipeLifecycleError, } from "./errors.js";
18
+ export { ConnectorTargetUnsatisfied, RecipeAssetConflict, RecipeEditionChanged, RecipeEvolutionBlocked, RecipeEvolutionInterrupted, RecipeEvolutionPlanChanged, RecipeEvolutionPostcondition, RecipeInputError, RecipeLifecycleError, } from "./errors.js";
18
19
  export { DEFINITION_DIGEST_RULES, RECIPE_STAMP_KEY, definitionDigest, installedRecipes, readRecipeStamp, recipeSourceDigest, } from "./stamp.js";
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recipe-lifecycle/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,eAAe,EACf,2BAA2B,EAC3B,YAAY,GACb,MAAM,cAAc,CAAC;AAQtB,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAO3E,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recipe-lifecycle/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,EACf,2BAA2B,EAC3B,YAAY,GACb,MAAM,cAAc,CAAC;AAStB,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAO3E,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
@@ -38,12 +38,19 @@ export interface RecipeReferenceResult {
38
38
  id: ConceptId;
39
39
  changed: boolean;
40
40
  }
41
- /** Per-artifact tally (docs + pages + references; a page's registry/entry pair is ONE artifact). */
41
+ /** One Connector's install outcome: created, or left as it was (`source_differs` when it differs). */
42
+ export interface RecipeConnectorResult {
43
+ id: ConceptId;
44
+ changed: boolean;
45
+ /** The existing document was preserved, but it differs from this recipe's Connector. */
46
+ source_differs?: true;
47
+ }
48
+ /** Per-artifact tally (docs + connectors + pages + references; a page's registry/entry pair is ONE artifact). */
42
49
  export interface RecipeInstallCounts {
43
50
  created: number;
44
51
  existing: number;
45
52
  legacy_present: number;
46
- /** Existing convention docs whose definitions do not match the recipe source. */
53
+ /** Existing convention or Connector docs whose definitions do not match the recipe source. */
47
54
  source_differs?: number;
48
55
  /** Artifacts whose slot is held by RETIRED-name content (see `migration_required` fields). */
49
56
  migration_required: number;
@@ -58,19 +65,22 @@ export interface RecipeInstallResult {
58
65
  version: string;
59
66
  source: string;
60
67
  docs: RecipeDocResult[];
68
+ /** One row per Connector the recipe carries; empty for a recipe without connectors. */
69
+ connectors: RecipeConnectorResult[];
61
70
  pages: RecipePageResult[];
62
71
  references: RecipeReferenceResult[];
63
72
  counts: RecipeInstallCounts;
64
73
  changed: boolean;
65
74
  /**
66
- * The worst stamp among the recipe's conventions after the install, in the order current,
67
- * stale, foreign, missing: a created convention is `current`; an existing one keeps its stamp,
68
- * since install never rewrites it. A `stale` or `missing` stamp is converged by `recipe evolve`.
75
+ * The worst stamp among the recipe's conventions and Connectors after the install, in the order
76
+ * current, stale, foreign, missing: a created document is `current`; an existing one keeps its
77
+ * stamp, since install never rewrites it. A `stale` or `missing` stamp is converged by
78
+ * `recipe evolve`.
69
79
  */
70
80
  stamp: RecipeStampState;
71
- /** Existing conventions whose stamp is `stale` or `missing`: what an evolve plan would re-stamp. */
81
+ /** Existing conventions and Connectors whose stamp is `stale` or `missing`: what an evolve plan would look at. */
72
82
  restamp_ids: string[];
73
- /** Existing conventions another recipe's stamp owns; they stay with that recipe. */
83
+ /** Existing conventions and Connectors another recipe's stamp owns; they stay with that recipe. */
74
84
  foreign_ids: string[];
75
85
  warnings: ValidationWarning[];
76
86
  }
@@ -97,6 +107,11 @@ export declare function sameInstalledDoc(existing: OkfDocument, desired: OkfDocu
97
107
  * a full read; returning the docs instead of discarding their content costs zero added I/O.
98
108
  */
99
109
  export declare function installedConventionDocs(bundle: Bundle): Promise<Map<ConceptId, OkfDocument>>;
110
+ /**
111
+ * The documents under `connectors/`, by id: the Connector documents `installedRecipes` reads beside
112
+ * the conventions, in one round-trip.
113
+ */
114
+ export declare function installedConnectorDocs(bundle: Bundle): Promise<Map<ConceptId, OkfDocument>>;
100
115
  /**
101
116
  * True when at least one of `recipe`'s installed docs differs in content from the recipe source
102
117
  * (the same `sameInstalledDoc` comparison `installRecipe` makes; timestamp-insensitive). Honest at
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/install.ts"],"names":[],"mappings":"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"}