@superbee/core 0.1.5 → 0.2.0-pre.1

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 (125) hide show
  1. package/dist/backend.d.ts.map +1 -1
  2. package/dist/backend.js +29 -7
  3. package/dist/backend.js.map +1 -1
  4. package/dist/bundle-ops.d.ts +42 -0
  5. package/dist/bundle-ops.d.ts.map +1 -0
  6. package/dist/bundle-ops.js +88 -0
  7. package/dist/bundle-ops.js.map +1 -0
  8. package/dist/bundle.d.ts +8 -27
  9. package/dist/bundle.d.ts.map +1 -1
  10. package/dist/bundle.js +9 -66
  11. package/dist/bundle.js.map +1 -1
  12. package/dist/document-field-actions.d.ts +95 -0
  13. package/dist/document-field-actions.d.ts.map +1 -0
  14. package/dist/document-field-actions.js +261 -0
  15. package/dist/document-field-actions.js.map +1 -0
  16. package/dist/document-mutation.d.ts +51 -3
  17. package/dist/document-mutation.d.ts.map +1 -1
  18. package/dist/document-mutation.js +90 -43
  19. package/dist/document-mutation.js.map +1 -1
  20. package/dist/document-write-policy.d.ts +5 -3
  21. package/dist/document-write-policy.d.ts.map +1 -1
  22. package/dist/document-write-policy.js +38 -46
  23. package/dist/document-write-policy.js.map +1 -1
  24. package/dist/engine.d.ts +2 -0
  25. package/dist/engine.d.ts.map +1 -1
  26. package/dist/engine.js +2 -1
  27. package/dist/engine.js.map +1 -1
  28. package/dist/freshness.d.ts +10 -7
  29. package/dist/freshness.d.ts.map +1 -1
  30. package/dist/freshness.js +14 -11
  31. package/dist/freshness.js.map +1 -1
  32. package/dist/frontmatter-contract.d.ts +2 -2
  33. package/dist/frontmatter-contract.js +2 -2
  34. package/dist/frontmatter.d.ts +3 -1
  35. package/dist/frontmatter.d.ts.map +1 -1
  36. package/dist/frontmatter.js +7 -4
  37. package/dist/frontmatter.js.map +1 -1
  38. package/dist/index.d.ts +11 -3
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +13 -2
  41. package/dist/index.js.map +1 -1
  42. package/dist/indexeddb-backend.d.ts +165 -0
  43. package/dist/indexeddb-backend.d.ts.map +1 -0
  44. package/dist/indexeddb-backend.js +718 -0
  45. package/dist/indexeddb-backend.js.map +1 -0
  46. package/dist/journaled-backend.d.ts +178 -0
  47. package/dist/journaled-backend.d.ts.map +1 -0
  48. package/dist/journaled-backend.js +77 -0
  49. package/dist/journaled-backend.js.map +1 -0
  50. package/dist/kind-field-mutation.d.ts +15 -0
  51. package/dist/kind-field-mutation.d.ts.map +1 -0
  52. package/dist/kind-field-mutation.js +160 -0
  53. package/dist/kind-field-mutation.js.map +1 -0
  54. package/dist/kinds-load.d.ts.map +1 -1
  55. package/dist/kinds-load.js +11 -3
  56. package/dist/kinds-load.js.map +1 -1
  57. package/dist/kinds.d.ts +6 -2
  58. package/dist/kinds.d.ts.map +1 -1
  59. package/dist/kinds.js +15 -4
  60. package/dist/kinds.js.map +1 -1
  61. package/dist/meaningful-change-time.d.ts +6 -6
  62. package/dist/meaningful-change-time.d.ts.map +1 -1
  63. package/dist/meaningful-change-time.js +12 -13
  64. package/dist/meaningful-change-time.js.map +1 -1
  65. package/dist/mutation.d.ts.map +1 -1
  66. package/dist/mutation.js +2 -2
  67. package/dist/mutation.js.map +1 -1
  68. package/dist/okf-authored-values.d.ts +11 -0
  69. package/dist/okf-authored-values.d.ts.map +1 -0
  70. package/dist/okf-authored-values.js +37 -0
  71. package/dist/okf-authored-values.js.map +1 -0
  72. package/dist/okf-lifecycle.d.ts +4 -0
  73. package/dist/okf-lifecycle.d.ts.map +1 -0
  74. package/dist/okf-lifecycle.js +6 -0
  75. package/dist/okf-lifecycle.js.map +1 -0
  76. package/dist/okf-standard-fields.d.ts +10 -0
  77. package/dist/okf-standard-fields.d.ts.map +1 -0
  78. package/dist/okf-standard-fields.js +111 -0
  79. package/dist/okf-standard-fields.js.map +1 -0
  80. package/dist/okf-timestamps.d.ts +1 -2
  81. package/dist/okf-timestamps.d.ts.map +1 -1
  82. package/dist/okf-timestamps.js +2 -29
  83. package/dist/okf-timestamps.js.map +1 -1
  84. package/dist/page.d.ts.map +1 -1
  85. package/dist/page.js +2 -1
  86. package/dist/page.js.map +1 -1
  87. package/dist/platform.d.ts +161 -0
  88. package/dist/platform.d.ts.map +1 -0
  89. package/dist/platform.js +77 -0
  90. package/dist/platform.js.map +1 -0
  91. package/dist/recipes.d.ts +3 -1
  92. package/dist/recipes.d.ts.map +1 -1
  93. package/dist/recipes.js +4 -4
  94. package/dist/recipes.js.map +1 -1
  95. package/dist/remote-backend.d.ts +28 -0
  96. package/dist/remote-backend.d.ts.map +1 -1
  97. package/dist/remote-backend.js +75 -2
  98. package/dist/remote-backend.js.map +1 -1
  99. package/dist/remote-operations.d.ts +60 -0
  100. package/dist/remote-operations.d.ts.map +1 -0
  101. package/dist/remote-operations.js +110 -0
  102. package/dist/remote-operations.js.map +1 -0
  103. package/dist/sha256.d.ts +21 -0
  104. package/dist/sha256.d.ts.map +1 -0
  105. package/dist/sha256.js +114 -0
  106. package/dist/sha256.js.map +1 -0
  107. package/dist/storage.d.ts +5 -1
  108. package/dist/storage.d.ts.map +1 -1
  109. package/dist/storage.js +7 -1
  110. package/dist/storage.js.map +1 -1
  111. package/dist/types.d.ts +12 -0
  112. package/dist/types.d.ts.map +1 -1
  113. package/dist/uncertain-write.d.ts +142 -0
  114. package/dist/uncertain-write.d.ts.map +1 -0
  115. package/dist/uncertain-write.js +174 -0
  116. package/dist/uncertain-write.js.map +1 -0
  117. package/dist/version-transport.d.ts +7 -0
  118. package/dist/version-transport.d.ts.map +1 -1
  119. package/dist/version-transport.js +9 -0
  120. package/dist/version-transport.js.map +1 -1
  121. package/dist/versioning.d.ts +9 -3
  122. package/dist/versioning.d.ts.map +1 -1
  123. package/dist/versioning.js +14 -10
  124. package/dist/versioning.js.map +1 -1
  125. package/package.json +42 -3
@@ -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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"}
@@ -15,13 +15,16 @@
15
15
  import type { FreshnessOptions, FreshnessResult, OkfDocument } from "./types.js";
16
16
  /** A deadline must name an explicit instant; rounding up avoids expiring sub-ms instants early. */
17
17
  export declare function staleAfterInstant(value: unknown): number | null;
18
- /**
19
- * Parse a timestamp to epoch ms, or `null`. Accepts an ISO-8601 (or any
20
- * `Date.parse`-able) STRING — the normal case, since {@link parseMarkdown}
21
- * normalizes frontmatter dates to strings — and, as belt-and-suspenders, a raw
22
- * `Date` or epoch-millis `number` should one reach here unnormalized.
23
- */
24
- export declare function parseTimestamp(ts: unknown): number | null;
18
+ /** Parse a clock to epoch milliseconds. v0.2 requires an explicit ISO instant; legacy mode is permissive. */
19
+ export declare function parseTimestamp(ts: unknown, okfVersion?: string): number | null;
20
+ /** Diagnose only an effective, present legacy clock; standard generated.at diagnostics own shadowing values. */
21
+ export declare function invalidLegacyTimestamp(frontmatter: {
22
+ readonly generated?: unknown;
23
+ readonly timestamp?: unknown;
24
+ }, okfVersion?: string): {
25
+ field: "timestamp";
26
+ value: unknown;
27
+ } | undefined;
25
28
  /**
26
29
  * Derive a freshness verdict from `generated.at`, falling back to legacy `timestamp`.
27
30
  *
@@ -1 +1 @@
1
- {"version":3,"file":"freshness.d.ts","sourceRoot":"","sources":["../src/freshness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIjF,mGAAmG;AACnG,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAE/D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAWzD;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,GAAE,gBAAqB,GAAG,eAAe,CA6C3F"}
1
+ {"version":3,"file":"freshness.d.ts","sourceRoot":"","sources":["../src/freshness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIjF,mGAAmG;AACnG,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAE/D;AAED,6GAA6G;AAC7G,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAY9E;AAED,gHAAgH;AAChH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE;IAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,EAC3E,UAAU,CAAC,EAAE,MAAM,GAClB;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,CAKpD;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,GAAE,gBAAqB,GAAG,eAAe,CA2C3F"}
package/dist/freshness.js CHANGED
@@ -12,19 +12,16 @@
12
12
  *
13
13
  * Pure and dependency-free, hence directly unit-testable.
14
14
  */
15
- import { meaningfulChangeTimeValue } from "./meaningful-change-time.js";
15
+ import { meaningfulChangeTimeField, meaningfulChangeTimeValue } from "./meaningful-change-time.js";
16
16
  import { parseIsoInstant } from "./verification.js";
17
17
  /** A deadline must name an explicit instant; rounding up avoids expiring sub-ms instants early. */
18
18
  export function staleAfterInstant(value) {
19
19
  return typeof value === "string" ? parseIsoInstant(value, "ceil") : null;
20
20
  }
21
- /**
22
- * Parse a timestamp to epoch ms, or `null`. Accepts an ISO-8601 (or any
23
- * `Date.parse`-able) STRING — the normal case, since {@link parseMarkdown}
24
- * normalizes frontmatter dates to strings — and, as belt-and-suspenders, a raw
25
- * `Date` or epoch-millis `number` should one reach here unnormalized.
26
- */
27
- export function parseTimestamp(ts) {
21
+ /** Parse a clock to epoch milliseconds. v0.2 requires an explicit ISO instant; legacy mode is permissive. */
22
+ export function parseTimestamp(ts, okfVersion) {
23
+ if (okfVersion === "0.2")
24
+ return typeof ts === "string" ? parseIsoInstant(ts) : null;
28
25
  if (ts instanceof Date) {
29
26
  const ms = ts.getTime();
30
27
  return Number.isNaN(ms) ? null : ms;
@@ -37,6 +34,14 @@ export function parseTimestamp(ts) {
37
34
  const ms = Date.parse(ts);
38
35
  return Number.isNaN(ms) ? null : ms;
39
36
  }
37
+ /** Diagnose only an effective, present legacy clock; standard generated.at diagnostics own shadowing values. */
38
+ export function invalidLegacyTimestamp(frontmatter, okfVersion) {
39
+ if (okfVersion !== "0.2" || !Object.hasOwn(frontmatter, "timestamp")
40
+ || meaningfulChangeTimeField(frontmatter) !== "timestamp"
41
+ || parseTimestamp(frontmatter.timestamp, okfVersion) !== null)
42
+ return undefined;
43
+ return { field: "timestamp", value: frontmatter.timestamp };
44
+ }
40
45
  /**
41
46
  * Derive a freshness verdict from `generated.at`, falling back to legacy `timestamp`.
42
47
  *
@@ -45,9 +50,7 @@ export function parseTimestamp(ts) {
45
50
  * the ISO timestamps of upstream `dependsOn` artifacts.
46
51
  */
47
52
  export function freshness(doc, options = {}) {
48
- const parseClock = options.okfVersion === "0.2"
49
- ? (value) => typeof value === "string" ? parseIsoInstant(value) : null
50
- : parseTimestamp;
53
+ const parseClock = (value) => parseTimestamp(value, options.okfVersion);
51
54
  const tsMs = parseClock(meaningfulChangeTimeValue(doc.frontmatter));
52
55
  const now = options.now ?? new Date();
53
56
  const ageMs = tsMs === null ? undefined : now.getTime() - tsMs;
@@ -1 +1 @@
1
- {"version":3,"file":"freshness.js","sourceRoot":"","sources":["../src/freshness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"freshness.js","sourceRoot":"","sources":["../src/freshness.ts"],"names":[],"mappings":"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"}
@@ -10,8 +10,8 @@ export declare class MalformedDocumentError extends Error {
10
10
  constructor(context: string | undefined, cause: unknown);
11
11
  }
12
12
  /**
13
- * The engine's usable-document-timestamp predicate: a non-empty (post-trim) string. Anything else
14
- * is unusable, and the edition-aware write path replaces it with the current time.
13
+ * Legacy timestamp shape predicate: a non-empty (post-trim) string. This controls v0.1
14
+ * defaults, not edition-aware clock validity or v0.2 imported-value preservation.
15
15
  */
16
16
  export declare function isUsableTimestamp(value: unknown): value is string;
17
17
  //# sourceMappingURL=frontmatter-contract.d.ts.map
@@ -20,8 +20,8 @@ export class MalformedDocumentError extends Error {
20
20
  }
21
21
  }
22
22
  /**
23
- * The engine's usable-document-timestamp predicate: a non-empty (post-trim) string. Anything else
24
- * is unusable, and the edition-aware write path replaces it with the current time.
23
+ * Legacy timestamp shape predicate: a non-empty (post-trim) string. This controls v0.1
24
+ * defaults, not edition-aware clock validity or v0.2 imported-value preservation.
25
25
  */
26
26
  export function isUsableTimestamp(value) {
27
27
  return typeof value === "string" && value.trim() !== "";
@@ -15,7 +15,9 @@ export { isUsableTimestamp, MalformedDocumentError } from "./frontmatter-contrac
15
15
  * The shared splitter recognizes only exact OKF delimiters, and the fixed YAML engine preserves
16
16
  * timestamp-like scalars as strings so date-only values retain their original semantic shape.
17
17
  */
18
- export declare function parseMarkdown(raw: string, context?: string): {
18
+ export declare function parseMarkdown(raw: string, context?: string, options?: {
19
+ okfVersion?: string;
20
+ }): {
19
21
  frontmatter: Frontmatter;
20
22
  body: string;
21
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAmEtF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,MAAM,GACf;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAY5C;AAED,qEAAqE;AACrE,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,4FAA4F;AAC5F,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMrF;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3E"}
1
+ {"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAqEtF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GACpC;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAY5C;AAED,qEAAqE;AACrE,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,4FAA4F;AAC5F,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMrF;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3E"}
@@ -44,10 +44,13 @@ const yamlEngine = {
44
44
  * sample bundles use (`timestamp: 2026-07-01T12:05:00Z`) — into a non-string under its
45
45
  * default schema. The parser above now retains all YAML timestamp scalars as strings so
46
46
  * date-only values remain distinguishable at any depth. This legacy field still keeps its
47
- * established canonical ISO behavior, including epoch-millisecond input.
47
+ * established canonical ISO behavior, including epoch-millisecond input, for default/v0.1
48
+ * decoding. v0.2 preserves its value so consumers can distinguish ambiguous legacy clocks.
48
49
  */
49
- function normalizeFrontmatter(data) {
50
+ function normalizeFrontmatter(data, okfVersion) {
50
51
  const out = { ...data };
52
+ if (okfVersion === "0.2")
53
+ return out;
51
54
  const value = out.timestamp;
52
55
  if (value instanceof Date) {
53
56
  out.timestamp = value.toISOString();
@@ -69,7 +72,7 @@ function normalizeFrontmatter(data) {
69
72
  * The shared splitter recognizes only exact OKF delimiters, and the fixed YAML engine preserves
70
73
  * timestamp-like scalars as strings so date-only values retain their original semantic shape.
71
74
  */
72
- export function parseMarkdown(raw, context) {
75
+ export function parseMarkdown(raw, context, options = {}) {
73
76
  const split = splitLeadingFrontmatter(raw, context);
74
77
  if (!("yamlSource" in split))
75
78
  return { frontmatter: {}, body: split.body };
@@ -80,7 +83,7 @@ export function parseMarkdown(raw, context) {
80
83
  catch (err) {
81
84
  throw new MalformedDocumentError(context, err);
82
85
  }
83
- const frontmatter = normalizeFrontmatter(parsed);
86
+ const frontmatter = normalizeFrontmatter(parsed, options.okfVersion);
84
87
  return { frontmatter, body: split.body };
85
88
  }
86
89
  /** Match the exact body shape emitted by the document serializer. */
@@ -1 +1 @@
1
- {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -35,11 +35,15 @@ export { TRUST_TIERS, TRUST_TIER_FIELD, appendVerificationEvent, latestVerifiedA
35
35
  export type { AppendVerificationOptions, TrustTier, TrustTierCounts, VerificationEvent } from "./verification.js";
36
36
  export { FilesystemBackend } from "./backend.js";
37
37
  export { MemoryBackend } from "./memory-backend.js";
38
+ export { IntentHoldConflict, IntentStateConflict } from "./journaled-backend.js";
39
+ export type { IntentPatch, IntentRecord, JournaledBackend, JournaledReadResult, JournaledWriteOptions, MetaRecord, NewIntentRecord, } from "./journaled-backend.js";
38
40
  export { withFilesystemMutationLock, FilesystemMutationLockError, filesystemMutationLockPath, } from "./filesystem-lock.js";
39
41
  export type { FilesystemMutationLockOptions, FilesystemMutationLockOwner, } from "./filesystem-lock.js";
40
42
  export { RemoteBackend, RemoteError } from "./remote-backend.js";
41
- export type { FetchLike, RemoteBackendOptions } from "./remote-backend.js";
42
- export { contentVersion, versionOfBytes, blobVersion, defaultActor, VersionConflict, stripETagWrapper, } from "./versioning.js";
43
+ export type { FetchLike, RemoteBackendOptions, WireCapabilities } from "./remote-backend.js";
44
+ export { createRemoteOperationTransport, openRemoteOperationTransport, OperationsUnsupportedError } from "./remote-operations.js";
45
+ export type { RemoteOperationTransportOptions } from "./remote-operations.js";
46
+ export { contentVersion, versionOfBytes, blobVersion, defaultActor, VersionConflict, isContentVersion, stripETagWrapper, } from "./versioning.js";
43
47
  export { versionedMutation } from "./mutation.js";
44
48
  export type { MutationDecision, VersionedMutationOptions, VersionedMutationOutcome } from "./mutation.js";
45
49
  export { mutateDocument, DocumentNotFoundError, KindConformanceError, } from "./document-mutation.js";
@@ -58,7 +62,7 @@ export type { PlannedIndex, IndexProjectionPlan, IndexProjectionDisposition, Pre
58
62
  export { RESERVED_FILENAMES, isReservedFile, conceptIdFromPath, pathFromConceptId, assertSafeConceptId, assertSafeReservedDir, assertSafeBlobKey, toPosix, } from "./paths.js";
59
63
  export { extractMarkdownLinks, resolveConceptId, relativeHref, parseLinksFromDoc, isExternalHref, } from "./links.js";
60
64
  export type { RawLink } from "./links.js";
61
- export { parseTimestamp } from "./freshness.js";
65
+ export { parseTimestamp, invalidLegacyTimestamp } from "./freshness.js";
62
66
  export { SUPERBEE_UPDATED_BY_FIELD, mutationActorFromFrontmatter, persistMutationActor, } from "./mutation-attribution.js";
63
67
  export type { PersistMutationActorOptions } from "./mutation-attribution.js";
64
68
  export { parseMarkdown, stringifyDoc, stringifyWithData, normalizeDocumentBodyForStorage, isUsableTimestamp, MalformedDocumentError, } from "./frontmatter.js";
@@ -70,4 +74,8 @@ export type { KindClaimCoordinates, KindClaimPolicy, KindConvention, KindFieldCo
70
74
  export { EXTENSION_CONTENT_TYPES, extensionOfDocKey, inferContentTypeFromDocKey, inferContentTypeForNewBlob, resolveContentType, DEFAULT_BLOB_CONTENT_TYPE, } from "./content-type.js";
71
75
  export type { ContentTypeInference, ValidationWarning } from "./content-type.js";
72
76
  export { invalidOkfTimestamps, assertAuthoredOkfTimestamps, type InvalidOkfTimestamp } from "./okf-timestamps.js";
77
+ export { isOkfLifecycleStatus, OKF_LIFECYCLE_STATUSES } from "./okf-lifecycle.js";
78
+ export { prepareDocumentFieldAction, isStandardDocumentSetField, FieldActionError, type FieldActionErrorDetails, type SourceCandidateIdentity, type FieldAction, type SourceEntry, type SourceSelector, type FieldActionScope, type FieldActionContext, type PreparedDocumentFieldAction } from "./document-field-actions.js";
79
+ export { prepareDocumentMutationCandidate, type PrepareDocumentMutationOptions, type DocumentMutationInput } from "./document-mutation.js";
80
+ export { KindFieldMutationConflict, prepareKindFieldMutation, type KindFieldMutation } from "./kind-field-mutation.js";
73
81
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -51,6 +51,10 @@ export { TRUST_TIERS, TRUST_TIER_FIELD, appendVerificationEvent, latestVerifiedA
51
51
  // enforced compare-and-swap, per-write actor) and proves the engine is backend-neutral.
52
52
  export { FilesystemBackend } from "./backend.js";
53
53
  export { MemoryBackend } from "./memory-backend.js";
54
+ // The journaled-backend seam (`journaled-backend.ts`): what an adapter adds to `StorageBackend`
55
+ // so a browser-local working copy's sync runtime can journal intents through it. The IndexedDB
56
+ // adapter implements it behind the `indexeddb-backend` subpath.
57
+ export { IntentHoldConflict, IntentStateConflict } from "./journaled-backend.js";
54
58
  // Internal-workspace filesystem arbitration authority. CLI create-only policy reuses this
55
59
  // external same-user lock rather than defining a second lock protocol or writing claims into a
56
60
  // portable bundle tree.
@@ -60,11 +64,14 @@ export { withFilesystemMutationLock, FilesystemMutationLockError, filesystemMuta
60
64
  // in-repo reference server (`@superbee/server`) by the tri-backend contract
61
65
  // tests. No CF/D1/production deployment is implied by its presence.
62
66
  export { RemoteBackend, RemoteError } from "./remote-backend.js";
67
+ // The uncertain-write transport over `RemoteBackend`: identified document writes plus outcome
68
+ // lookup, the client side of the wire's request identity.
69
+ export { createRemoteOperationTransport, openRemoteOperationTransport, OperationsUnsupportedError } from "./remote-operations.js";
63
70
  // Versioning / attribution primitives shared by every adapter: the content-addressed
64
71
  // version token, a default actor, and the typed compare-and-swap conflict error.
65
72
  // `blobVersion` is the raw-bytes sibling of `contentVersion`/`versionOfBytes` (blobs
66
73
  // are hashed directly, never routed through a string/UTF-8 step).
67
- export { contentVersion, versionOfBytes, blobVersion, defaultActor, VersionConflict, stripETagWrapper, } from "./versioning.js";
74
+ export { contentVersion, versionOfBytes, blobVersion, defaultActor, VersionConflict, isContentVersion, stripETagWrapper, } from "./versioning.js";
68
75
  // The ONE versioned-mutation boundary: a shared read-decide-CAS-retry
69
76
  // primitive consumed by document, link, and index mutation policies instead of
70
77
  // independently hand-rolled loops.
@@ -91,7 +98,7 @@ export { GENERATED_INDEX_MARKER, IndexProjectionWriteError, planIndexProjection,
91
98
  // Pure, unit-testable path / link / note / freshness helpers.
92
99
  export { RESERVED_FILENAMES, isReservedFile, conceptIdFromPath, pathFromConceptId, assertSafeConceptId, assertSafeReservedDir, assertSafeBlobKey, toPosix, } from "./paths.js";
93
100
  export { extractMarkdownLinks, resolveConceptId, relativeHref, parseLinksFromDoc, isExternalHref, } from "./links.js";
94
- export { parseTimestamp } from "./freshness.js";
101
+ export { parseTimestamp, invalidLegacyTimestamp } from "./freshness.js";
95
102
  export { SUPERBEE_UPDATED_BY_FIELD, mutationActorFromFrontmatter, persistMutationActor, } from "./mutation-attribution.js";
96
103
  export { parseMarkdown, stringifyDoc, stringifyWithData, normalizeDocumentBodyForStorage, isUsableTimestamp, MalformedDocumentError, } from "./frontmatter.js";
97
104
  // Typed input-validation rejection — consumer boundaries branch on the TYPE (CLI: USAGE/exit 2),
@@ -112,4 +119,8 @@ export { loadKinds } from "./kinds-load.js";
112
119
  // backend's blob methods route through it.
113
120
  export { EXTENSION_CONTENT_TYPES, extensionOfDocKey, inferContentTypeFromDocKey, inferContentTypeForNewBlob, resolveContentType, DEFAULT_BLOB_CONTENT_TYPE, } from "./content-type.js";
114
121
  export { invalidOkfTimestamps, assertAuthoredOkfTimestamps } from "./okf-timestamps.js";
122
+ export { isOkfLifecycleStatus, OKF_LIFECYCLE_STATUSES } from "./okf-lifecycle.js";
123
+ export { prepareDocumentFieldAction, isStandardDocumentSetField, FieldActionError } from "./document-field-actions.js";
124
+ export { prepareDocumentMutationCandidate } from "./document-mutation.js";
125
+ export { KindFieldMutationConflict, prepareKindFieldMutation } from "./kind-field-mutation.js";
115
126
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * IndexedDB-backed {@link JournaledBackend}: the browser-local working copy's first persistent
3
+ * store candidate, sitting behind the same core seam as {@link FilesystemBackend} and
4
+ * {@link MemoryBackend} and proven by the same adapter contract kit, plus the journal seam the
5
+ * sync runtime needs (`journaled-backend.ts`), proven by that kit's journal rows.
6
+ *
7
+ * Storage shape mirrors the filesystem adapter, not the memory adapter: a concept document is
8
+ * stored as its exact OKF-serialized string and parsed on every read, so the read body carries
9
+ * the serializer's normalization (the trailing newline) and the version token is
10
+ * `versionOfBytes(raw)` over the same bytes the disk copy would hold. Reserved files are stored
11
+ * as raw strings and blobs as raw bytes, both content-addressed with the shared primitives, so a
12
+ * document, reserved file, or blob carries one token on disk, in memory, and in the browser.
13
+ *
14
+ * Compare-and-swap is one IndexedDB readwrite transaction per mutation: the current record is
15
+ * read, compared, and replaced (or the transaction aborted with a {@link VersionConflict}) before
16
+ * the transaction commits. IndexedDB serializes readwrite transactions that overlap on a store,
17
+ * so two adapter instances (two tabs, two workers) over the same database cannot both win a
18
+ * conditional write. A write resolves only after the transaction's `complete` event, which is
19
+ * the point a local-save indicator may follow. That is a commit promise, not a power-loss
20
+ * promise: the browser decides when committed pages reach stable storage.
21
+ *
22
+ * Two further stores serve the working copy's synchronization: `intents` journals every local
23
+ * write as a pending-change intent committed in the same transaction as the document record
24
+ * ({@link IndexedDbBackend.writeJournaled}), and `meta` holds opaque key-value rows such as the
25
+ * bootstrap marker and per-document shared bases. The adapter owns the transaction mechanics;
26
+ * what the rows mean belongs to the sync component that writes them, and what the verbs
27
+ * promise is stated once on the seam.
28
+ *
29
+ * This module imports no Node builtin so it bundles for the browser; the IndexedDB factory is
30
+ * injectable so a Node test can supply an in-memory implementation without touching globals.
31
+ */
32
+ import { type IntentPatch, type IntentRecord, type JournaledBackend, type JournaledReadResult, type JournaledWriteOptions, type MetaRecord } from "./journaled-backend.js";
33
+ import type { OperationState } from "./uncertain-write.js";
34
+ import type { BlobKey, ConceptId, DeleteOptions, OkfDocument, ReadBlobResult, ReadResult, ReservedFilename, ReservedReadResult, StorageCapabilities, Version, VersionInfo, WriteOptions } from "./types.js";
35
+ export { IntentHoldConflict, IntentStateConflict } from "./journaled-backend.js";
36
+ export type { IntentPatch, IntentRecord, JournaledReadResult, JournaledWriteOptions, MetaRecord, NewIntentRecord } from "./journaled-backend.js";
37
+ type Handler = ((this: any, event: any) => any) | null;
38
+ export interface IdbRequestLike<T = unknown> {
39
+ readonly result: T;
40
+ readonly error: unknown;
41
+ onsuccess: Handler;
42
+ onerror: Handler;
43
+ }
44
+ export interface IdbOpenRequestLike extends IdbRequestLike<IdbDatabaseLike> {
45
+ onupgradeneeded: Handler;
46
+ onblocked: Handler;
47
+ readonly transaction: IdbTransactionLike | null;
48
+ }
49
+ export interface IdbObjectStoreLike {
50
+ get(key: string): IdbRequestLike;
51
+ getAll(): IdbRequestLike<unknown[]>;
52
+ getAllKeys(): IdbRequestLike<unknown[]>;
53
+ count(key: string): IdbRequestLike<number>;
54
+ put(value: unknown): IdbRequestLike;
55
+ delete(key: string): IdbRequestLike;
56
+ }
57
+ export interface IdbTransactionLike {
58
+ objectStore(name: string): IdbObjectStoreLike;
59
+ abort(): void;
60
+ readonly error: unknown;
61
+ oncomplete: Handler;
62
+ onerror: Handler;
63
+ onabort: Handler;
64
+ }
65
+ export interface IdbDatabaseLike {
66
+ readonly version: number;
67
+ readonly objectStoreNames: {
68
+ contains(name: string): boolean;
69
+ readonly length: number;
70
+ };
71
+ createObjectStore(name: string, options?: {
72
+ keyPath?: string;
73
+ }): unknown;
74
+ transaction(storeNames: string | string[], mode?: "readonly" | "readwrite"): IdbTransactionLike;
75
+ close(): void;
76
+ onversionchange: Handler;
77
+ }
78
+ export interface IdbFactoryLike {
79
+ open(name: string, version?: number): IdbOpenRequestLike;
80
+ }
81
+ export interface IndexedDbBackendOptions {
82
+ /** The IndexedDB database holding this working copy; one bundle per database. */
83
+ databaseName: string;
84
+ /** The factory to open it with. Defaults to the host's global `indexedDB`. */
85
+ indexedDB?: IdbFactoryLike;
86
+ }
87
+ /** The database does not carry this adapter's schema and the adapter refuses to touch it. */
88
+ export declare class IndexedDbSchemaError extends Error {
89
+ readonly name = "IndexedDbSchemaError";
90
+ }
91
+ /** Bumping this requires a migration in `upgrade`; the handler refuses any other older layout. */
92
+ export declare const INDEXEDDB_SCHEMA_VERSION = 1;
93
+ /**
94
+ * A persistent browser-local OKF store implementing the {@link JournaledBackend} contract over
95
+ * IndexedDB. One instance per bundle per JavaScript realm; several instances over the same
96
+ * database name are peers whose conditional writes are serialized by the database.
97
+ */
98
+ export declare class IndexedDbBackend implements JournaledBackend {
99
+ #private;
100
+ /**
101
+ * What a resolved write promises: the IndexedDB transaction reported `complete`. Whether the
102
+ * committed pages survive power loss is the browser's and the operating system's decision.
103
+ */
104
+ readonly durability: "transaction-committed";
105
+ constructor(options: IndexedDbBackendOptions);
106
+ /** Whether an IndexedDB factory is reachable, so a caller can fall back to another store. */
107
+ static available(indexedDB?: IdbFactoryLike): boolean;
108
+ /** The database name this adapter opens. */
109
+ get databaseName(): string;
110
+ capabilities(): StorageCapabilities;
111
+ /** Release the database handle. The next operation reopens it lazily. */
112
+ close(): void;
113
+ read(id: ConceptId): Promise<ReadResult>;
114
+ readMany(ids: ConceptId[]): Promise<ReadResult[]>;
115
+ write(id: ConceptId, doc: OkfDocument, options?: WriteOptions): Promise<Version>;
116
+ delete(id: ConceptId, options?: DeleteOptions): Promise<boolean>;
117
+ exists(id: ConceptId): Promise<boolean>;
118
+ list(prefix?: string): Promise<ConceptId[]>;
119
+ versions(id: ConceptId): Promise<VersionInfo[]>;
120
+ readReserved(dir: string, name: ReservedFilename): Promise<ReservedReadResult | null>;
121
+ writeReserved(dir: string, name: ReservedFilename, content: string, options?: WriteOptions): Promise<Version>;
122
+ /**
123
+ * One transaction over documents, intents, and meta: the document compare-and-swap of
124
+ * {@link write}, plus (optionally) deleting a superseded intent, recording a new intent for
125
+ * the written bytes, and putting meta rows. Every step is conditional on every other: a
126
+ * failed document CAS records no intent, and a superseded intent whose state moved fails the
127
+ * whole write with {@link IntentStateConflict} so the caller composes against fresh state.
128
+ * With `requireSettled`, an unsettled intent on the target fails it with
129
+ * {@link IntentHoldConflict} before the document is touched.
130
+ */
131
+ writeJournaled(id: ConceptId, doc: OkfDocument, options?: JournaledWriteOptions): Promise<{
132
+ version: Version;
133
+ raw: string;
134
+ intent: IntentRecord | null;
135
+ }>;
136
+ /**
137
+ * The document, every intent targeting it, and the named meta rows, from ONE readonly
138
+ * transaction over documents, reserved, intents, and meta. A caller deriving where a document
139
+ * stands (its bytes against its shared base and its journal) reads them here so a write in
140
+ * another realm between separate reads can never show it a document of one moment beside a
141
+ * journal of another; with this snapshot a mismatch is a genuine working-copy defect.
142
+ */
143
+ readWithJournal(id: ConceptId, options?: {
144
+ meta?: readonly string[];
145
+ }): Promise<JournaledReadResult>;
146
+ /** Intents in local commit order, optionally restricted to one or more states. */
147
+ listIntents(state?: OperationState | readonly OperationState[]): Promise<IntentRecord[]>;
148
+ readIntent(requestId: string): Promise<IntentRecord | undefined>;
149
+ /**
150
+ * Compare-and-swap on an intent's `state`: the patch applies only while the record is in
151
+ * `expectedState`, together with any meta rows, in one transaction. A different state or a
152
+ * missing record rejects with {@link IntentStateConflict} and writes nothing.
153
+ */
154
+ updateIntent(requestId: string, expectedState: OperationState, patch: IntentPatch, options?: {
155
+ meta?: MetaRecord[];
156
+ }): Promise<IntentRecord>;
157
+ readMeta<T = unknown>(key: string): Promise<T | undefined>;
158
+ writeMeta(key: string, value: unknown): Promise<void>;
159
+ readBlob(key: BlobKey): Promise<ReadBlobResult | null>;
160
+ writeBlob(key: BlobKey, bytes: Uint8Array, contentType?: string, options?: WriteOptions): Promise<Version>;
161
+ deleteBlob(key: BlobKey, options?: DeleteOptions): Promise<boolean>;
162
+ existsBlob(key: BlobKey): Promise<boolean>;
163
+ listBlobs(prefix?: string): Promise<BlobKey[]>;
164
+ }
165
+ //# sourceMappingURL=indexeddb-backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexeddb-backend.d.ts","sourceRoot":"","sources":["../src/indexeddb-backend.ts"],"names":[],"mappings":"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"}