@superbee/core 0.1.6 → 0.2.0-pre.10

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 (248) hide show
  1. package/README.md +127 -0
  2. package/dist/artifact-contract.d.ts +90 -0
  3. package/dist/artifact-contract.d.ts.map +1 -0
  4. package/dist/artifact-contract.js +205 -0
  5. package/dist/artifact-contract.js.map +1 -0
  6. package/dist/backend.d.ts +16 -1
  7. package/dist/backend.d.ts.map +1 -1
  8. package/dist/backend.js +112 -47
  9. package/dist/backend.js.map +1 -1
  10. package/dist/bundle-ops.d.ts +42 -0
  11. package/dist/bundle-ops.d.ts.map +1 -0
  12. package/dist/bundle-ops.js +88 -0
  13. package/dist/bundle-ops.js.map +1 -0
  14. package/dist/bundle.d.ts +10 -28
  15. package/dist/bundle.d.ts.map +1 -1
  16. package/dist/bundle.js +12 -69
  17. package/dist/bundle.js.map +1 -1
  18. package/dist/document-codec.d.ts +6 -1
  19. package/dist/document-codec.d.ts.map +1 -1
  20. package/dist/document-codec.js +8 -4
  21. package/dist/document-codec.js.map +1 -1
  22. package/dist/document-field-actions.d.ts +107 -0
  23. package/dist/document-field-actions.d.ts.map +1 -0
  24. package/dist/document-field-actions.js +302 -0
  25. package/dist/document-field-actions.js.map +1 -0
  26. package/dist/document-mutation.d.ts +61 -3
  27. package/dist/document-mutation.d.ts.map +1 -1
  28. package/dist/document-mutation.js +116 -25
  29. package/dist/document-mutation.js.map +1 -1
  30. package/dist/document-write-policy.d.ts +0 -1
  31. package/dist/document-write-policy.d.ts.map +1 -1
  32. package/dist/document-write-policy.js +7 -4
  33. package/dist/document-write-policy.js.map +1 -1
  34. package/dist/engine.d.ts +3 -1
  35. package/dist/engine.d.ts.map +1 -1
  36. package/dist/engine.js +6 -4
  37. package/dist/engine.js.map +1 -1
  38. package/dist/file-journaled-backend-internal.d.ts +19 -0
  39. package/dist/file-journaled-backend-internal.d.ts.map +1 -0
  40. package/dist/file-journaled-backend-internal.js +10 -0
  41. package/dist/file-journaled-backend-internal.js.map +1 -0
  42. package/dist/file-journaled-backend.d.ts +162 -0
  43. package/dist/file-journaled-backend.d.ts.map +1 -0
  44. package/dist/file-journaled-backend.js +1113 -0
  45. package/dist/file-journaled-backend.js.map +1 -0
  46. package/dist/filesystem-host.d.ts +15 -0
  47. package/dist/filesystem-host.d.ts.map +1 -0
  48. package/dist/filesystem-host.js +20 -0
  49. package/dist/filesystem-host.js.map +1 -0
  50. package/dist/filesystem-identity.d.ts +86 -4
  51. package/dist/filesystem-identity.d.ts.map +1 -1
  52. package/dist/filesystem-identity.js +338 -102
  53. package/dist/filesystem-identity.js.map +1 -1
  54. package/dist/filesystem-lock.d.ts +16 -3
  55. package/dist/filesystem-lock.d.ts.map +1 -1
  56. package/dist/filesystem-lock.js +323 -77
  57. package/dist/filesystem-lock.js.map +1 -1
  58. package/dist/filesystem-push-role.d.ts +77 -0
  59. package/dist/filesystem-push-role.d.ts.map +1 -0
  60. package/dist/filesystem-push-role.js +165 -0
  61. package/dist/filesystem-push-role.js.map +1 -0
  62. package/dist/filesystem.d.ts +17 -0
  63. package/dist/filesystem.d.ts.map +1 -0
  64. package/dist/filesystem.js +18 -0
  65. package/dist/filesystem.js.map +1 -0
  66. package/dist/freshness.d.ts +10 -7
  67. package/dist/freshness.d.ts.map +1 -1
  68. package/dist/freshness.js +14 -11
  69. package/dist/freshness.js.map +1 -1
  70. package/dist/frontmatter-contract.d.ts +2 -2
  71. package/dist/frontmatter-contract.js +2 -2
  72. package/dist/frontmatter.d.ts +11 -1
  73. package/dist/frontmatter.d.ts.map +1 -1
  74. package/dist/frontmatter.js +20 -7
  75. package/dist/frontmatter.js.map +1 -1
  76. package/dist/governed-body-write.d.ts +106 -0
  77. package/dist/governed-body-write.d.ts.map +1 -0
  78. package/dist/governed-body-write.js +251 -0
  79. package/dist/governed-body-write.js.map +1 -0
  80. package/dist/heads-digest.d.ts +32 -0
  81. package/dist/heads-digest.d.ts.map +1 -0
  82. package/dist/heads-digest.js +37 -0
  83. package/dist/heads-digest.js.map +1 -0
  84. package/dist/host-policy-snapshot.d.ts +9 -0
  85. package/dist/host-policy-snapshot.d.ts.map +1 -0
  86. package/dist/host-policy-snapshot.js +33 -0
  87. package/dist/host-policy-snapshot.js.map +1 -0
  88. package/dist/host-text.d.ts +31 -0
  89. package/dist/host-text.d.ts.map +1 -0
  90. package/dist/host-text.js +77 -0
  91. package/dist/host-text.js.map +1 -0
  92. package/dist/hosted-transport/answer-rows.d.ts +216 -0
  93. package/dist/hosted-transport/answer-rows.d.ts.map +1 -0
  94. package/dist/hosted-transport/answer-rows.js +396 -0
  95. package/dist/hosted-transport/answer-rows.js.map +1 -0
  96. package/dist/hosted-transport/carrier.d.ts +142 -0
  97. package/dist/hosted-transport/carrier.d.ts.map +1 -0
  98. package/dist/hosted-transport/carrier.js +241 -0
  99. package/dist/hosted-transport/carrier.js.map +1 -0
  100. package/dist/hosted-transport/history-pages.d.ts +55 -0
  101. package/dist/hosted-transport/history-pages.d.ts.map +1 -0
  102. package/dist/hosted-transport/history-pages.js +69 -0
  103. package/dist/hosted-transport/history-pages.js.map +1 -0
  104. package/dist/hosted-transport/index.d.ts +18 -0
  105. package/dist/hosted-transport/index.d.ts.map +1 -0
  106. package/dist/hosted-transport/index.js +18 -0
  107. package/dist/hosted-transport/index.js.map +1 -0
  108. package/dist/hosted-transport/operations.d.ts +85 -0
  109. package/dist/hosted-transport/operations.d.ts.map +1 -0
  110. package/dist/hosted-transport/operations.js +128 -0
  111. package/dist/hosted-transport/operations.js.map +1 -0
  112. package/dist/hosted-transport/paged-reads.d.ts +87 -0
  113. package/dist/hosted-transport/paged-reads.d.ts.map +1 -0
  114. package/dist/hosted-transport/paged-reads.js +238 -0
  115. package/dist/hosted-transport/paged-reads.js.map +1 -0
  116. package/dist/hosted-transport/read-adapter.d.ts +250 -0
  117. package/dist/hosted-transport/read-adapter.d.ts.map +1 -0
  118. package/dist/hosted-transport/read-adapter.js +557 -0
  119. package/dist/hosted-transport/read-adapter.js.map +1 -0
  120. package/dist/hosted-transport/root-write.d.ts +114 -0
  121. package/dist/hosted-transport/root-write.d.ts.map +1 -0
  122. package/dist/hosted-transport/root-write.js +171 -0
  123. package/dist/hosted-transport/root-write.js.map +1 -0
  124. package/dist/hosted-transport/whole-document-transport.d.ts +174 -0
  125. package/dist/hosted-transport/whole-document-transport.d.ts.map +1 -0
  126. package/dist/hosted-transport/whole-document-transport.js +411 -0
  127. package/dist/hosted-transport/whole-document-transport.js.map +1 -0
  128. package/dist/index.d.ts +29 -8
  129. package/dist/index.d.ts.map +1 -1
  130. package/dist/index.js +26 -6
  131. package/dist/index.js.map +1 -1
  132. package/dist/indexeddb-backend.d.ts +197 -0
  133. package/dist/indexeddb-backend.d.ts.map +1 -0
  134. package/dist/indexeddb-backend.js +1183 -0
  135. package/dist/indexeddb-backend.js.map +1 -0
  136. package/dist/journaled-backend.d.ts +467 -0
  137. package/dist/journaled-backend.d.ts.map +1 -0
  138. package/dist/journaled-backend.js +389 -0
  139. package/dist/journaled-backend.js.map +1 -0
  140. package/dist/kind-coverage.d.ts +99 -0
  141. package/dist/kind-coverage.d.ts.map +1 -0
  142. package/dist/kind-coverage.js +186 -0
  143. package/dist/kind-coverage.js.map +1 -0
  144. package/dist/kind-field-mutation.d.ts +15 -0
  145. package/dist/kind-field-mutation.d.ts.map +1 -0
  146. package/dist/kind-field-mutation.js +160 -0
  147. package/dist/kind-field-mutation.js.map +1 -0
  148. package/dist/kinds.d.ts +31 -1
  149. package/dist/kinds.d.ts.map +1 -1
  150. package/dist/kinds.js +86 -17
  151. package/dist/kinds.js.map +1 -1
  152. package/dist/links.d.ts +1 -1
  153. package/dist/links.d.ts.map +1 -1
  154. package/dist/links.js +5 -10
  155. package/dist/links.js.map +1 -1
  156. package/dist/managed-document-metadata.d.ts +2 -0
  157. package/dist/managed-document-metadata.d.ts.map +1 -0
  158. package/dist/managed-document-metadata.js +9 -0
  159. package/dist/managed-document-metadata.js.map +1 -0
  160. package/dist/meaningful-change-time.d.ts +6 -6
  161. package/dist/meaningful-change-time.d.ts.map +1 -1
  162. package/dist/meaningful-change-time.js +12 -13
  163. package/dist/meaningful-change-time.js.map +1 -1
  164. package/dist/memory-backend.d.ts +2 -2
  165. package/dist/memory-backend.d.ts.map +1 -1
  166. package/dist/memory-backend.js +32 -16
  167. package/dist/memory-backend.js.map +1 -1
  168. package/dist/mutation.d.ts.map +1 -1
  169. package/dist/mutation.js +2 -2
  170. package/dist/mutation.js.map +1 -1
  171. package/dist/page.d.ts.map +1 -1
  172. package/dist/page.js +2 -1
  173. package/dist/page.js.map +1 -1
  174. package/dist/paths.d.ts +6 -2
  175. package/dist/paths.d.ts.map +1 -1
  176. package/dist/paths.js +35 -33
  177. package/dist/paths.js.map +1 -1
  178. package/dist/platform.d.ts +239 -0
  179. package/dist/platform.d.ts.map +1 -0
  180. package/dist/platform.js +82 -0
  181. package/dist/platform.js.map +1 -0
  182. package/dist/portable-export.d.ts +119 -0
  183. package/dist/portable-export.d.ts.map +1 -0
  184. package/dist/portable-export.js +501 -0
  185. package/dist/portable-export.js.map +1 -0
  186. package/dist/publication-filesystem.d.ts +1 -1
  187. package/dist/publication-filesystem.d.ts.map +1 -1
  188. package/dist/publication-filesystem.js +1 -1
  189. package/dist/publication-filesystem.js.map +1 -1
  190. package/dist/query-filter.d.ts +7 -2
  191. package/dist/query-filter.d.ts.map +1 -1
  192. package/dist/query-filter.js +24 -1
  193. package/dist/query-filter.js.map +1 -1
  194. package/dist/query-order.d.ts +22 -0
  195. package/dist/query-order.d.ts.map +1 -0
  196. package/dist/query-order.js +42 -0
  197. package/dist/query-order.js.map +1 -0
  198. package/dist/recipes.d.ts +3 -1
  199. package/dist/recipes.d.ts.map +1 -1
  200. package/dist/recipes.js +4 -4
  201. package/dist/recipes.js.map +1 -1
  202. package/dist/remote-backend.d.ts +114 -22
  203. package/dist/remote-backend.d.ts.map +1 -1
  204. package/dist/remote-backend.js +285 -44
  205. package/dist/remote-backend.js.map +1 -1
  206. package/dist/remote-document-codec.d.ts +15 -0
  207. package/dist/remote-document-codec.d.ts.map +1 -0
  208. package/dist/remote-document-codec.js +103 -0
  209. package/dist/remote-document-codec.js.map +1 -0
  210. package/dist/remote-error.d.ts +38 -0
  211. package/dist/remote-error.d.ts.map +1 -0
  212. package/dist/remote-error.js +59 -0
  213. package/dist/remote-error.js.map +1 -0
  214. package/dist/remote-operations.d.ts +63 -0
  215. package/dist/remote-operations.d.ts.map +1 -0
  216. package/dist/remote-operations.js +125 -0
  217. package/dist/remote-operations.js.map +1 -0
  218. package/dist/remote-parsers.d.ts +86 -0
  219. package/dist/remote-parsers.d.ts.map +1 -0
  220. package/dist/remote-parsers.js +181 -0
  221. package/dist/remote-parsers.js.map +1 -0
  222. package/dist/remote.d.ts +7 -2
  223. package/dist/remote.d.ts.map +1 -1
  224. package/dist/remote.js +6 -1
  225. package/dist/remote.js.map +1 -1
  226. package/dist/sha256.d.ts +21 -0
  227. package/dist/sha256.d.ts.map +1 -0
  228. package/dist/sha256.js +114 -0
  229. package/dist/sha256.js.map +1 -0
  230. package/dist/storage.d.ts +8 -2
  231. package/dist/storage.d.ts.map +1 -1
  232. package/dist/storage.js +11 -2
  233. package/dist/storage.js.map +1 -1
  234. package/dist/types.d.ts +40 -5
  235. package/dist/types.d.ts.map +1 -1
  236. package/dist/uncertain-write.d.ts +178 -0
  237. package/dist/uncertain-write.d.ts.map +1 -0
  238. package/dist/uncertain-write.js +198 -0
  239. package/dist/uncertain-write.js.map +1 -0
  240. package/dist/version-transport.d.ts +7 -0
  241. package/dist/version-transport.d.ts.map +1 -1
  242. package/dist/version-transport.js +9 -0
  243. package/dist/version-transport.js.map +1 -1
  244. package/dist/versioning.d.ts +18 -7
  245. package/dist/versioning.d.ts.map +1 -1
  246. package/dist/versioning.js +23 -14
  247. package/dist/versioning.js.map +1 -1
  248. package/package.json +75 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-field-actions.js","sourceRoot":"","sources":["../src/document-field-actions.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,17 @@
7
7
  * Consumers own their transport and presentation errors; this module throws typed
8
8
  * core failures and never imports CLI or browser concerns.
9
9
  */
10
+ import { type FieldAction, type FieldActionScope } from "./document-field-actions.js";
11
+ import { type KindFieldMutation } from "./kind-field-mutation.js";
12
+ import { type AppendVerificationOptions } from "./verification.js";
10
13
  import { InvalidInputError } from "./errors.js";
11
14
  import type { FieldPrecondition } from "./document-precondition.js";
12
15
  import type { KindRegistry } from "./kinds.js";
13
16
  import type { ValidationWarning } from "./content-type.js";
14
17
  import type { Bundle, ConceptId, Frontmatter, OkfDocument, Version } from "./types.js";
15
- export type DocumentMutationMode = "create-only" | "overwrite" | "patch";
18
+ /** replace-document shares patch CAS and metadata preparation, but permits an explicit
19
+ * whole-document replacement instead of ordinary assignment/list protection. */
20
+ export type DocumentMutationMode = "create-only" | "overwrite" | "patch" | "replace-document";
16
21
  /** The frontmatter and body a caller wants persisted; the service supplies the id. */
17
22
  export interface DocumentMutationCandidate {
18
23
  frontmatter: Frontmatter;
@@ -35,6 +40,30 @@ export declare class DocumentNotFoundError extends Error {
35
40
  readonly id: ConceptId;
36
41
  constructor(id: ConceptId);
37
42
  }
43
+ export type DocumentMutationInput = {
44
+ kind: "field-action";
45
+ action: FieldAction;
46
+ }
47
+ /**
48
+ * Several field actions applied in order to ONE fresh read and committed as one CAS write, with
49
+ * one metadata, attribution and validation pass: for example scalar `set`s together with a
50
+ * `sources` upsert. Each action keeps its single-action rules; the result reports `scopes`.
51
+ */
52
+ | {
53
+ kind: "field-actions";
54
+ actions: readonly FieldAction[];
55
+ } | {
56
+ kind: "assign";
57
+ assignments: Record<string, unknown>;
58
+ body?: string;
59
+ refreshTimestamp?: boolean;
60
+ } | {
61
+ kind: "verify";
62
+ event: AppendVerificationOptions;
63
+ } | {
64
+ kind: "kind-field";
65
+ mutation: KindFieldMutation;
66
+ };
38
67
  export interface MutateDocumentOptions {
39
68
  bundle: Bundle;
40
69
  id: ConceptId;
@@ -44,7 +73,11 @@ export interface MutateDocumentOptions {
44
73
  /** Reject rather than return a non-empty kind warning set. */
45
74
  strict: boolean;
46
75
  /** Recomputed against a detached copy of every fresh CAS attempt. */
47
- buildCandidate: (existing: OkfDocument | undefined, context: DocumentMutationContext) => DocumentMutationCandidate | Promise<DocumentMutationCandidate>;
76
+ buildCandidate?: (existing: OkfDocument | undefined, context: DocumentMutationContext) => DocumentMutationCandidate | Promise<DocumentMutationCandidate>;
77
+ /** Actual semantic intent, evaluated on each fresh read. Mutually exclusive with buildCandidate. */
78
+ input?: DocumentMutationInput | ((existing: OkfDocument, context: DocumentMutationContext) => DocumentMutationInput | Promise<DocumentMutationInput>);
79
+ /** Adapter invariants observe every fresh candidate, regardless of input route. */
80
+ assertCandidate?: (existing: OkfDocument | undefined, candidate: DocumentMutationCandidate, context: DocumentMutationContext) => void | Promise<void>;
48
81
  /** Patch only: require an existing target or allow an expect-absent create. */
49
82
  onAbsent?: "fail" | "create";
50
83
  /** Retry budget for overwrite and ordinary patch. */
@@ -57,7 +90,9 @@ export interface MutateDocumentOptions {
57
90
  * Defaults to actor when omitted; ignored by v0.1. Does not alter history or
58
91
  * persisted attribution, and a producer-only change is not a content edit. */
59
92
  producer?: string;
60
- /** Also persist the advisory actor in the edition-appropriate frontmatter field after no-op detection. */
93
+ /** Persist the advisory actor in edition-appropriate frontmatter when a write occurs.
94
+ * Defaults to true when actor is supplied. Explicit false leaves candidate attribution alone.
95
+ * Supplying actor alone never turns an otherwise unchanged candidate into a write. */
61
96
  persistActor?: boolean;
62
97
  /** Patch only: a caller-supplied token makes the operation a single-shot hard CAS. */
63
98
  expectedVersion?: Version;
@@ -78,10 +113,33 @@ export interface MutateDocumentOptions {
78
113
  seedGenerationClock?: boolean;
79
114
  }
80
115
  export interface DocumentMutationResult {
116
+ scope?: FieldActionScope;
117
+ /** Per-action scopes of a `field-actions` input, in input order, from the deciding attempt. */
118
+ scopes?: FieldActionScope[];
81
119
  doc: OkfDocument;
82
120
  changed: boolean;
83
121
  version: Version;
84
122
  warnings: ValidationWarning[];
85
123
  }
124
+ export interface PrepareDocumentMutationOptions {
125
+ id: ConceptId;
126
+ registry: KindRegistry;
127
+ strict: boolean;
128
+ okfVersion: "0.1" | "0.2";
129
+ now?: () => string;
130
+ actor?: string;
131
+ /** Content producer for generated.by; defaults to actor when omitted. */
132
+ producer?: string;
133
+ /** Same default and explicit opt-out as MutateDocumentOptions.persistActor. */
134
+ persistActor?: boolean;
135
+ compareTimestamp?: boolean;
136
+ seedGenerationClock?: boolean;
137
+ }
138
+ /** The pure patch preparation shared by mutation commits and governed previews. */
139
+ export declare function prepareDocumentMutationCandidate(existing: OkfDocument | undefined, rawCandidate: DocumentMutationCandidate, opts: PrepareDocumentMutationOptions): {
140
+ candidate: DocumentMutationCandidate;
141
+ changed: boolean;
142
+ warnings: ValidationWarning[];
143
+ };
86
144
  export declare function mutateDocument(opts: MutateDocumentOptions): Promise<DocumentMutationResult>;
87
145
  //# sourceMappingURL=document-mutation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-mutation.d.ts","sourceRoot":"","sources":["../src/document-mutation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAmBhD,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,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG,WAAW,GAAG,OAAO,CAAC;AAEzE,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,4FAA4F;AAC5F,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,iBAAiB,EAAE,CAAC;IACzC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;gBAGlC,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,iBAAiB,EAAE,EAC/B,UAAU,CAAC,EAAE,KAAK,GAAG,KAAK;CAS7B;AAED,uFAAuF;AACvF,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;gBAEX,EAAE,EAAE,SAAS;CAK1B;AAED,MAAM,WAAW,qBAAqB;IACpC,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,EAAE,CACd,QAAQ,EAAE,WAAW,GAAG,SAAS,EACjC,OAAO,EAAE,uBAAuB,KAC7B,yBAAyB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACpE,+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,0GAA0G;IAC1G,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,GAAG,EAAE,WAAW,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CAC/B;AA6KD,wBAAsB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAkOjG"}
1
+ {"version":3,"file":"document-mutation.d.ts","sourceRoot":"","sources":["../src/document-mutation.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,9 @@
7
7
  * Consumers own their transport and presentation errors; this module throws typed
8
8
  * core failures and never imports CLI or browser concerns.
9
9
  */
10
+ import { assertOrdinaryPatch, prepareDocumentAssignments, prepareDocumentFieldAction } from "./document-field-actions.js";
11
+ import { prepareKindFieldMutation } from "./kind-field-mutation.js";
12
+ import { appendVerificationEvent } from "./verification.js";
10
13
  import { okfValuesEqual } from "./okf-authored-values.js";
11
14
  import { InvalidInputError } from "./errors.js";
12
15
  import { assertAuthoredOkfStandardFields } from "./okf-standard-fields.js";
@@ -19,7 +22,7 @@ import { persistMutationActor, SUPERBEE_UPDATED_BY_FIELD } from "./mutation-attr
19
22
  import { defaultTimestampAndValidateAgainstRegistry, validateAgainstKind, } from "./kinds.js";
20
23
  import { versionedMutation } from "./mutation.js";
21
24
  import { VersionConflict } from "./versioning.js";
22
- import { readBundleOkfVersion, readDocVersioned, writeDocVersionedForEdition, } from "./bundle.js";
25
+ import { readBundleOkfVersion, readDocVersioned, writeDocVersionedForEdition, } from "./bundle-ops.js";
23
26
  const DEFAULT_MAX_ATTEMPTS = 5;
24
27
  /** Typed strict-kind rejection for trusted consumers to translate at their own boundary. */
25
28
  export class KindConformanceError extends InvalidInputError {
@@ -56,12 +59,12 @@ function withoutAutomaticMutationActor(frontmatter, okfVersion, kindRequiresActo
56
59
  const { actor: _actor, ...withoutActor } = rest;
57
60
  return withoutActor;
58
61
  }
59
- function withCanonicalComparableTimestamp(frontmatter) {
62
+ function withCanonicalComparableTimestamp(frontmatter, okfVersion) {
60
63
  const timestamp = frontmatter.timestamp;
61
64
  if (typeof timestamp !== "string")
62
65
  return frontmatter;
63
- const instant = Date.parse(timestamp);
64
- if (Number.isNaN(instant))
66
+ const instant = parseTimestamp(timestamp, okfVersion);
67
+ if (instant === null)
65
68
  return frontmatter;
66
69
  const canonical = new Date(instant).toISOString();
67
70
  return canonical === timestamp ? frontmatter : { ...frontmatter, timestamp: canonical };
@@ -78,10 +81,10 @@ function isNoopMutation(existing, candidate, compareTimestamp, okfVersion, ignor
78
81
  ? withoutAutomaticMutationActor(candidate.frontmatter, okfVersion, kindRequiresActor)
79
82
  : candidate.frontmatter;
80
83
  const existingFrontmatter = compareTimestamp
81
- ? withCanonicalComparableTimestamp(existingFrontmatterWithActorPolicy)
84
+ ? withCanonicalComparableTimestamp(existingFrontmatterWithActorPolicy, okfVersion)
82
85
  : existingFrontmatterWithActorPolicy;
83
86
  const candidateFrontmatter = compareTimestamp
84
- ? withCanonicalComparableTimestamp(candidateFrontmatterWithActorPolicy)
87
+ ? withCanonicalComparableTimestamp(candidateFrontmatterWithActorPolicy, okfVersion)
85
88
  : candidateFrontmatterWithActorPolicy;
86
89
  if (okfVersion === "0.2") {
87
90
  const withoutGeneratedAt = (frontmatter) => {
@@ -131,6 +134,15 @@ function validateCandidate(id, candidate, registry, strict, okfVersion, now, exi
131
134
  }
132
135
  return result;
133
136
  }
137
+ /** Validate unchanged stored content without manufacturing clocks or attribution. */
138
+ function validateUnchangedDocument(existing, registry, strict, okfVersion) {
139
+ const kind = registry.kinds.get(String(existing.frontmatter.type));
140
+ const warnings = kind ? validateAgainstKind(existing, kind) : [];
141
+ if (strict && kind && warnings.length > 0) {
142
+ throw new KindConformanceError(existing.id, kind.governs, warnings, okfVersion);
143
+ }
144
+ return warnings;
145
+ }
134
146
  function withV02Metadata(candidate, existing, okfVersion, registry, now, seedGenerationClock, actor, compareTimestamp, producer) {
135
147
  if (okfVersion !== "0.2")
136
148
  return candidate;
@@ -146,13 +158,15 @@ function withV02Metadata(candidate, existing, okfVersion, registry, now, seedGen
146
158
  allowGeneratedProvenanceSeed: seedGenerationClock,
147
159
  // Every v0.2 create gets one standard clock unless a usable time already exists (an explicit
148
160
  // legacy `timestamp`, a declared `generated.at`) or its kind requires `timestamp` (that one
149
- // clock is defaulted instead). Ungoverned types are the point: accumulation evidence for
161
+ // clock is defaulted instead when absent). Present unusable legacy values are preserved.
162
+ // Ungoverned types are the point: accumulation evidence for
150
163
  // per-bundle modeling (designs/agent-proposed-kind-conventions-v1) must not depend on a kind
151
164
  // already existing. Callers installing definitions opt out via `seedGenerationClock: false`.
152
165
  requireGenerationClock: existing === undefined
153
166
  && seedGenerationClock
154
- && !(kind?.fields.required.includes("timestamp") ?? false)
155
- && parseTimestamp(meaningfulChangeTimeValue(candidate.frontmatter)) === null,
167
+ && (!(kind?.fields.required.includes("timestamp") ?? false)
168
+ || Object.hasOwn(candidate.frontmatter, "timestamp"))
169
+ && parseTimestamp(meaningfulChangeTimeValue(candidate.frontmatter), okfVersion) === null,
156
170
  });
157
171
  }
158
172
  /** One stable instant per CAS decision, shared by every clock a bundle Kind explicitly carries. */
@@ -160,6 +174,18 @@ function onceNow(now) {
160
174
  let value;
161
175
  return () => (value ??= now());
162
176
  }
177
+ /** The pure patch preparation shared by mutation commits and governed previews. */
178
+ export function prepareDocumentMutationCandidate(existing, rawCandidate, opts) {
179
+ const persistActor = resolvePersistActor(opts);
180
+ const decisionNow = onceNow(opts.now ?? (() => new Date().toISOString()));
181
+ const comparison = withV02Metadata(structuredClone(rawCandidate), existing, opts.okfVersion, opts.registry, decisionNow, opts.seedGenerationClock ?? true, opts.actor, opts.compareTimestamp ?? false, opts.producer);
182
+ 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)) {
183
+ return { candidate: { frontmatter: structuredClone(existing.frontmatter), body: existing.body }, changed: false, warnings: validateUnchangedDocument(existing, opts.registry, opts.strict, opts.okfVersion) };
184
+ }
185
+ const candidate = attributeCandidate(comparison, opts.actor, persistActor, opts.okfVersion, opts.registry);
186
+ const { warnings } = validateCandidate(opts.id, candidate, opts.registry, opts.strict, opts.okfVersion, decisionNow, existing);
187
+ return { candidate, changed: true, warnings };
188
+ }
163
189
  /**
164
190
  * True when `existing` already satisfies ITS OWN governing kind — the monotone ratchet's
165
191
  * precondition (probe: tasks/overwrite-ratchet-survey). Validates the RAW existing
@@ -175,11 +201,14 @@ function conforms(existing, registry) {
175
201
  return false;
176
202
  return validateAgainstKind(existing, kind).length === 0;
177
203
  }
204
+ function resolvePersistActor(opts) {
205
+ return opts.persistActor ?? (opts.actor !== undefined);
206
+ }
178
207
  export async function mutateDocument(opts) {
179
208
  const maxAttempts = opts.maxAttempts ?? DEFAULT_MAX_ATTEMPTS;
180
209
  const onAbsent = opts.onAbsent ?? "fail";
181
210
  const compareTimestamp = opts.compareTimestamp ?? false;
182
- const persistActor = opts.persistActor ?? false;
211
+ const persistActor = resolvePersistActor(opts);
183
212
  const seedClock = opts.seedGenerationClock ?? true;
184
213
  const okfVersion = await readBundleOkfVersion(opts.bundle) ?? "0.1";
185
214
  if (okfVersion !== "0.1" && okfVersion !== "0.2") {
@@ -187,6 +216,67 @@ export async function mutateDocument(opts) {
187
216
  }
188
217
  const now = opts.now ?? (() => new Date().toISOString());
189
218
  const context = { okfVersion };
219
+ if ((opts.input === undefined) === (opts.buildCandidate === undefined))
220
+ throw new InvalidInputError("Supply exactly one semantic input or buildCandidate.");
221
+ if (opts.input !== undefined && opts.mode !== "patch")
222
+ throw new InvalidInputError("Semantic field/domain input requires patch mode.");
223
+ let scope;
224
+ let scopes;
225
+ const build = async (existing, decisionNow) => {
226
+ scope = undefined;
227
+ scopes = undefined;
228
+ let candidate;
229
+ if (opts.input !== undefined) {
230
+ if (!existing)
231
+ throw new DocumentNotFoundError(opts.id);
232
+ const input = typeof opts.input === "function" ? await opts.input(structuredClone(existing), context) : opts.input;
233
+ if (input.kind === "field-action") {
234
+ if ((input.action.action === "edit" || input.action.action === "replace-all") && opts.expectedVersion === undefined)
235
+ throw new InvalidInputError("edit and replace-all require expectedVersion from an observed document.");
236
+ const prepared = prepareDocumentFieldAction(existing, input.action, { registry: opts.registry, okfVersion, now: decisionNow });
237
+ candidate = prepared.candidate;
238
+ scope = prepared.scope;
239
+ }
240
+ else if (input.kind === "field-actions") {
241
+ if (!Array.isArray(input.actions) || input.actions.length === 0)
242
+ throw new InvalidInputError("field-actions requires a nonempty list of field actions.");
243
+ if (input.actions.some(action => action?.action === "edit" || action?.action === "replace-all") && opts.expectedVersion === undefined)
244
+ throw new InvalidInputError("edit and replace-all require expectedVersion from an observed document.");
245
+ let working = existing;
246
+ const prepared = [];
247
+ for (const action of input.actions) {
248
+ const step = prepareDocumentFieldAction(working, action, { registry: opts.registry, okfVersion, now: decisionNow });
249
+ working = { id: existing.id, ...step.candidate };
250
+ prepared.push(step.scope);
251
+ }
252
+ candidate = { frontmatter: working.frontmatter, body: working.body };
253
+ scopes = prepared;
254
+ }
255
+ else if (input.kind === "assign") {
256
+ candidate = prepareDocumentAssignments(existing, input.assignments);
257
+ if (input.body !== undefined)
258
+ candidate.body = input.body;
259
+ if (input.refreshTimestamp && okfVersion === "0.1")
260
+ candidate.frontmatter.timestamp = decisionNow();
261
+ }
262
+ else if (input.kind === "verify") {
263
+ if (okfVersion !== "0.2")
264
+ throw new InvalidInputError("Verification events require OKF v0.2.");
265
+ candidate = { frontmatter: appendVerificationEvent(existing.frontmatter, input.event), body: existing.body };
266
+ }
267
+ else if (input.kind === "kind-field")
268
+ candidate = prepareKindFieldMutation(existing, input.mutation, okfVersion);
269
+ else
270
+ throw new InvalidInputError("Unknown document mutation input.");
271
+ }
272
+ else {
273
+ candidate = await opts.buildCandidate(existing === undefined ? undefined : structuredClone(existing), context);
274
+ if (existing && opts.mode === "patch")
275
+ assertOrdinaryPatch(existing.frontmatter, candidate.frontmatter);
276
+ }
277
+ await opts.assertCandidate?.(existing === undefined ? undefined : structuredClone(existing), structuredClone(candidate), context);
278
+ return candidate;
279
+ };
190
280
  if (opts.mode === "create-only") {
191
281
  // Fail closed: create-only issues NO read — its CAS basis is expect-absent — so there is no
192
282
  // observed state to evaluate an assertion against. Accepting the option and silently not
@@ -196,7 +286,7 @@ export async function mutateDocument(opts) {
196
286
  + "(use mode 'patch' with onAbsent: 'create')");
197
287
  }
198
288
  const decisionNow = onceNow(now);
199
- const withMetadata = withV02Metadata(await opts.buildCandidate(undefined, context), undefined, okfVersion, opts.registry, decisionNow, seedClock, opts.actor, compareTimestamp, opts.producer);
289
+ const withMetadata = withV02Metadata(await build(undefined, decisionNow), undefined, okfVersion, opts.registry, decisionNow, seedClock, opts.actor, compareTimestamp, opts.producer);
200
290
  const candidate = attributeCandidate(withMetadata, opts.actor, persistActor, okfVersion, opts.registry);
201
291
  const { warnings } = validateCandidate(opts.id, candidate, opts.registry, opts.strict, okfVersion, decisionNow);
202
292
  const { doc, version } = await writeDocVersionedForEdition(opts.bundle, { id: opts.id, ...candidate }, okfVersion, {
@@ -232,8 +322,12 @@ export async function mutateDocument(opts) {
232
322
  decide: async (existing) => {
233
323
  const decisionNow = onceNow(now);
234
324
  assertFieldPreconditions(opts.id, existing?.frontmatter, opts.preconditions, lastReadVersion);
235
- const withMetadata = withV02Metadata(await opts.buildCandidate(existing === undefined ? undefined : structuredClone(existing), context), existing, okfVersion, opts.registry, decisionNow, seedClock, opts.actor, compareTimestamp, opts.producer);
325
+ const withMetadata = withV02Metadata(await build(existing, decisionNow), existing, okfVersion, opts.registry, decisionNow, seedClock, opts.actor, compareTimestamp, opts.producer);
236
326
  const candidate = attributeCandidate(withMetadata, opts.actor, persistActor, okfVersion, opts.registry);
327
+ 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
+ warnings = validateUnchangedDocument(existing, opts.registry, opts.strict, okfVersion);
329
+ return { action: "done", result: { doc: existing } };
330
+ }
237
331
  const validated = validateCandidate(opts.id, candidate, opts.registry, opts.strict, okfVersion, decisionNow, existing);
238
332
  warnings = validated.warnings;
239
333
  // Monotone conformance ratchet (probe: tasks/overwrite-ratchet-survey, productionized
@@ -248,10 +342,6 @@ export async function mutateDocument(opts) {
248
342
  if (!opts.strict && existing && warnings.length > 0 && conforms(existing, opts.registry)) {
249
343
  throw new KindConformanceError(opts.id, validated.kind.governs, warnings, okfVersion);
250
344
  }
251
- if (existing
252
- && isNoopMutation(existing, candidate, compareTimestamp, okfVersion, persistActor && opts.actor !== undefined, validated.kind?.fields.required.includes("actor") ?? false)) {
253
- return { action: "done", result: { doc: existing } };
254
- }
255
345
  return { action: "write", next: { id: opts.id, ...candidate }, result: {} };
256
346
  },
257
347
  write: async (next, expectedVersion) => {
@@ -287,13 +377,13 @@ export async function mutateDocument(opts) {
287
377
  if (hardCas && lastReadVersion !== opts.expectedVersion) {
288
378
  throw new VersionConflict(opts.id, opts.expectedVersion, lastReadVersion);
289
379
  }
290
- const rawCandidate = await opts.buildCandidate(existing === undefined ? undefined : structuredClone(existing), context);
291
- const candidateForComparison = withV02Metadata(rawCandidate, existing, okfVersion, opts.registry, decisionNow, seedClock, opts.actor, compareTimestamp, opts.producer);
292
- if (existing && isNoopMutation(existing, candidateForComparison, compareTimestamp, okfVersion, okfVersion === "0.2" && persistActor && opts.actor !== undefined, opts.registry.kinds.get(String(candidateForComparison.frontmatter.type))?.fields.required.includes("actor") ?? false)) {
293
- return { action: "done", result: { doc: existing, warnings: [] } };
294
- }
295
- const candidate = attributeCandidate(candidateForComparison, opts.actor, persistActor, okfVersion, opts.registry);
296
- const { warnings } = validateCandidate(opts.id, candidate, opts.registry, opts.strict, okfVersion, decisionNow, existing);
380
+ const rawCandidate = await build(existing, decisionNow);
381
+ const { candidate, changed, warnings } = prepareDocumentMutationCandidate(existing, rawCandidate, {
382
+ id: opts.id, registry: opts.registry, strict: opts.strict, okfVersion, now: decisionNow,
383
+ actor: opts.actor, producer: opts.producer, persistActor, compareTimestamp, seedGenerationClock: seedClock,
384
+ });
385
+ if (!changed)
386
+ return { action: "done", result: { doc: existing, warnings } };
297
387
  return { action: "write", next: { id: opts.id, ...candidate }, result: { warnings } };
298
388
  },
299
389
  write: async (next, expectedVersion) => {
@@ -306,8 +396,9 @@ export async function mutateDocument(opts) {
306
396
  },
307
397
  maxAttempts: hardCas ? 1 : maxAttempts,
308
398
  });
399
+ const scoped = { ...(scope ? { scope } : {}), ...(scopes ? { scopes } : {}) };
309
400
  return outcome.wrote
310
- ? { doc: savedDoc, changed: true, version: outcome.version, warnings: outcome.result.warnings }
311
- : { doc: outcome.result.doc, changed: false, version: outcome.version, warnings: [] };
401
+ ? { doc: savedDoc, changed: true, version: outcome.version, warnings: outcome.result.warnings, ...scoped }
402
+ : { doc: outcome.result.doc, changed: false, version: outcome.version, warnings: outcome.result.warnings, ...scoped };
312
403
  }
313
404
  //# sourceMappingURL=document-mutation.js.map
@@ -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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"}
@@ -1,4 +1,3 @@
1
- /** Pure document-shape policies applied before a normalized document reaches storage. */
2
1
  import type { Frontmatter, OkfDocument } from "./types.js";
3
2
  export { isOkfActor } from "./okf-actor.js";
4
3
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"document-write-policy.d.ts","sourceRoot":"","sources":["../src/document-write-policy.ts"],"names":[],"mappings":"AAAA,yFAAyF;AASzF,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQ3D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,WAAW,EAChB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE;IAAE,gBAAgB,EAAE,IAAI,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,gBAAgB,EAAE,KAAK,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,GACzD,WAAW,CASb;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,GAAG,WAAW,CAGjG;AAuBD,mGAAmG;AACnG,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC,EACnD,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC,EACpD,OAAO,GAAE;IAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,GACxE,OAAO,CAkBT;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC;IACrD,SAAS,EAAE;QAAE,WAAW,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;qFACiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6FAA6F;IAC7F,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,8FAA8F;IAC9F,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,8FAA8F;IAC9F,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,8FAA8F;IAC9F,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,0BAA0B,GAAG;IAC1E,WAAW,EAAE,WAAW,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;CACd,CAKA"}
1
+ {"version":3,"file":"document-write-policy.d.ts","sourceRoot":"","sources":["../src/document-write-policy.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQ3D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,WAAW,EAChB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE;IAAE,gBAAgB,EAAE,IAAI,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,gBAAgB,EAAE,KAAK,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,GACzD,WAAW,CAWb;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,GAAG,WAAW,CAGjG;AAuBD,mGAAmG;AACnG,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC,EACnD,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC,EACpD,OAAO,GAAE;IAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,GACxE,OAAO,CAkBT;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC;IACrD,SAAS,EAAE;QAAE,WAAW,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;qFACiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6FAA6F;IAC7F,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,8FAA8F;IAC9F,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,8FAA8F;IAC9F,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,8FAA8F;IAC9F,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,0BAA0B,GAAG;IAC1E,WAAW,EAAE,WAAW,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;CACd,CAKA"}
@@ -1,3 +1,4 @@
1
+ import { parseTimestamp } from "./freshness.js";
1
2
  /** Pure document-shape policies applied before a normalized document reaches storage. */
2
3
  import { OkfActorError } from "./errors.js";
3
4
  import { isOkfRecord as isRecord, okfValuesEqual as sameValue } from "./okf-authored-values.js";
@@ -22,7 +23,9 @@ export function normalizeV01DocumentForWrite(doc, validatedType, timestamp) {
22
23
  // `type` leads and `timestamp` trails, matching OKF sample documents and historical bytes.
23
24
  const { type: _type, timestamp: _timestamp, ...rest } = doc.frontmatter;
24
25
  const frontmatter = { type: validatedType, ...rest, timestamp: normalizedTimestamp };
25
- return { id: doc.id, frontmatter, body: doc.body ?? "" };
26
+ // The body is normalized for storage here so the returned doc IS the persisted doc —
27
+ // the same canonical shape every backend reports on a subsequent read.
28
+ return { id: doc.id, frontmatter, body: normalizeDocumentBodyForStorage(doc.body ?? "") };
26
29
  }
27
30
  /**
28
31
  * Normalize a v0.2 document without inventing optional provenance or legacy clock fields.
@@ -30,7 +33,7 @@ export function normalizeV01DocumentForWrite(doc, validatedType, timestamp) {
30
33
  */
31
34
  export function normalizeV02DocumentForWrite(doc, validatedType) {
32
35
  const { type: _type, ...rest } = doc.frontmatter;
33
- return { id: doc.id, frontmatter: { type: validatedType, ...rest }, body: doc.body ?? "" };
36
+ return { id: doc.id, frontmatter: { type: validatedType, ...rest }, body: normalizeDocumentBodyForStorage(doc.body ?? "") };
34
37
  }
35
38
  function withoutV02AutomaticMetadata(frontmatter, kindRequiresActor, compareTimestamp) {
36
39
  const copy = { ...frontmatter };
@@ -38,8 +41,8 @@ function withoutV02AutomaticMetadata(frontmatter, kindRequiresActor, compareTime
38
41
  if (kindRequiresActor)
39
42
  delete copy.actor;
40
43
  if (compareTimestamp && typeof copy.timestamp === "string") {
41
- const instant = Date.parse(copy.timestamp);
42
- if (!Number.isNaN(instant))
44
+ const instant = parseTimestamp(copy.timestamp, "0.2");
45
+ if (instant !== null)
43
46
  copy.timestamp = new Date(instant).toISOString();
44
47
  }
45
48
  const generated = copy.generated;
@@ -1 +1 @@
1
- {"version":3,"file":"document-write-policy.js","sourceRoot":"","sources":["../src/document-write-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-write-policy.js","sourceRoot":"","sources":["../src/document-write-policy.ts"],"names":[],"mappings":"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"}
package/dist/engine.d.ts CHANGED
@@ -29,6 +29,8 @@ export declare function writeDocVersioned(backend: StorageBackend, doc: OkfDocum
29
29
  export declare function writeDocVersionedForEdition(backend: StorageBackend, doc: OkfDocument, okfVersion: string, options?: WriteOptions): Promise<WriteResult>;
30
30
  /** Persist a document while keeping the historical document-only result. */
31
31
  export declare function writeDoc(backend: StorageBackend, doc: OkfDocument, options?: WriteOptions): Promise<OkfDocument>;
32
+ /** The one rule for an id a document read accepts: safe, and not a reserved file. */
33
+ export declare function assertReadableConceptId(id: ConceptId): void;
32
34
  export declare function readDocVersioned(backend: StorageBackend, id: ConceptId): Promise<ReadResult>;
33
35
  export declare function readDoc(backend: StorageBackend, id: ConceptId): Promise<OkfDocument>;
34
36
  export declare function existsDoc(backend: StorageBackend, id: ConceptId): Promise<boolean>;
@@ -38,7 +40,7 @@ export declare function query(backend: StorageBackend, filter?: QueryFilter, opt
38
40
  export declare const list: typeof query;
39
41
  export declare function queryHeads(backend: StorageBackend, filter?: QueryFilter, options?: QueryOptions): Promise<HeadResult[]>;
40
42
  export declare function parseLinks(doc: OkfDocument): Link[];
41
- export declare function queryEdges(backend: StorageBackend, filter?: EdgeFilter): Promise<Link[]>;
43
+ export declare function queryEdges(backend: StorageBackend, filter?: EdgeFilter, options?: QueryOptions): Promise<Link[]>;
42
44
  export declare function backlinks(backend: StorageBackend, target: ConceptId): Promise<Link[]>;
43
45
  export declare function readBlob(backend: StorageBackend, key: BlobKey): Promise<ReadBlobResult | null>;
44
46
  export declare function writeBlob(backend: StorageBackend, key: BlobKey, bytes: Uint8Array, contentType?: string, options?: WriteOptions): Promise<Version>;
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}