@superbee/core 0.2.0-pre.5 → 0.2.0-pre.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +89 -0
- package/dist/bundle-ops.d.ts +1 -1
- package/dist/bundle-ops.d.ts.map +1 -1
- package/dist/bundle-ops.js +2 -2
- package/dist/bundle-ops.js.map +1 -1
- package/dist/document-codec.d.ts +5 -1
- package/dist/document-codec.d.ts.map +1 -1
- package/dist/document-codec.js +7 -4
- package/dist/document-codec.js.map +1 -1
- package/dist/document-write-policy.d.ts.map +1 -1
- package/dist/document-write-policy.js +4 -2
- package/dist/document-write-policy.js.map +1 -1
- package/dist/engine.d.ts +1 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +4 -3
- package/dist/engine.js.map +1 -1
- package/dist/file-journaled-backend-internal.d.ts +19 -0
- package/dist/file-journaled-backend-internal.d.ts.map +1 -0
- package/dist/file-journaled-backend-internal.js +10 -0
- package/dist/file-journaled-backend-internal.js.map +1 -0
- package/dist/file-journaled-backend.d.ts +162 -0
- package/dist/file-journaled-backend.d.ts.map +1 -0
- package/dist/file-journaled-backend.js +1113 -0
- package/dist/file-journaled-backend.js.map +1 -0
- package/dist/filesystem-lock.d.ts +10 -0
- package/dist/filesystem-lock.d.ts.map +1 -1
- package/dist/filesystem-lock.js +283 -22
- package/dist/filesystem-lock.js.map +1 -1
- package/dist/filesystem-push-role.d.ts +77 -0
- package/dist/filesystem-push-role.d.ts.map +1 -0
- package/dist/filesystem-push-role.js +165 -0
- package/dist/filesystem-push-role.js.map +1 -0
- package/dist/governed-body-write.d.ts +8 -1
- package/dist/governed-body-write.d.ts.map +1 -1
- package/dist/governed-body-write.js +9 -2
- package/dist/governed-body-write.js.map +1 -1
- package/dist/host-text.d.ts +31 -0
- package/dist/host-text.d.ts.map +1 -0
- package/dist/host-text.js +77 -0
- package/dist/host-text.js.map +1 -0
- package/dist/hosted-transport/answer-rows.d.ts +216 -0
- package/dist/hosted-transport/answer-rows.d.ts.map +1 -0
- package/dist/hosted-transport/answer-rows.js +396 -0
- package/dist/hosted-transport/answer-rows.js.map +1 -0
- package/dist/hosted-transport/carrier.d.ts +142 -0
- package/dist/hosted-transport/carrier.d.ts.map +1 -0
- package/dist/hosted-transport/carrier.js +241 -0
- package/dist/hosted-transport/carrier.js.map +1 -0
- package/dist/hosted-transport/history-pages.d.ts +55 -0
- package/dist/hosted-transport/history-pages.d.ts.map +1 -0
- package/dist/hosted-transport/history-pages.js +69 -0
- package/dist/hosted-transport/history-pages.js.map +1 -0
- package/dist/hosted-transport/index.d.ts +18 -0
- package/dist/hosted-transport/index.d.ts.map +1 -0
- package/dist/hosted-transport/index.js +18 -0
- package/dist/hosted-transport/index.js.map +1 -0
- package/dist/hosted-transport/operations.d.ts +85 -0
- package/dist/hosted-transport/operations.d.ts.map +1 -0
- package/dist/hosted-transport/operations.js +128 -0
- package/dist/hosted-transport/operations.js.map +1 -0
- package/dist/hosted-transport/paged-reads.d.ts +87 -0
- package/dist/hosted-transport/paged-reads.d.ts.map +1 -0
- package/dist/hosted-transport/paged-reads.js +238 -0
- package/dist/hosted-transport/paged-reads.js.map +1 -0
- package/dist/hosted-transport/read-adapter.d.ts +250 -0
- package/dist/hosted-transport/read-adapter.d.ts.map +1 -0
- package/dist/hosted-transport/read-adapter.js +557 -0
- package/dist/hosted-transport/read-adapter.js.map +1 -0
- package/dist/hosted-transport/root-write.d.ts +114 -0
- package/dist/hosted-transport/root-write.d.ts.map +1 -0
- package/dist/hosted-transport/root-write.js +171 -0
- package/dist/hosted-transport/root-write.js.map +1 -0
- package/dist/hosted-transport/whole-document-transport.d.ts +174 -0
- package/dist/hosted-transport/whole-document-transport.d.ts.map +1 -0
- package/dist/hosted-transport/whole-document-transport.js +411 -0
- package/dist/hosted-transport/whole-document-transport.js.map +1 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/indexeddb-backend.d.ts +6 -1
- package/dist/indexeddb-backend.d.ts.map +1 -1
- package/dist/indexeddb-backend.js +77 -6
- package/dist/indexeddb-backend.js.map +1 -1
- package/dist/journaled-backend.d.ts +73 -5
- package/dist/journaled-backend.d.ts.map +1 -1
- package/dist/journaled-backend.js +55 -1
- package/dist/journaled-backend.js.map +1 -1
- package/dist/kinds.d.ts +25 -1
- package/dist/kinds.d.ts.map +1 -1
- package/dist/kinds.js +52 -4
- package/dist/kinds.js.map +1 -1
- package/dist/links.d.ts +1 -1
- package/dist/links.d.ts.map +1 -1
- package/dist/links.js +5 -10
- package/dist/links.js.map +1 -1
- package/dist/memory-backend.d.ts.map +1 -1
- package/dist/memory-backend.js +6 -2
- package/dist/memory-backend.js.map +1 -1
- package/dist/platform.d.ts +9 -2
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js.map +1 -1
- package/dist/query-order.d.ts +22 -0
- package/dist/query-order.d.ts.map +1 -0
- package/dist/query-order.js +42 -0
- package/dist/query-order.js.map +1 -0
- package/dist/remote-backend.d.ts +56 -11
- package/dist/remote-backend.d.ts.map +1 -1
- package/dist/remote-backend.js +154 -27
- package/dist/remote-backend.js.map +1 -1
- package/dist/remote-error.d.ts +17 -1
- package/dist/remote-error.d.ts.map +1 -1
- package/dist/remote-error.js +32 -2
- package/dist/remote-error.js.map +1 -1
- package/dist/remote-operations.d.ts +5 -4
- package/dist/remote-operations.d.ts.map +1 -1
- package/dist/remote-operations.js +16 -6
- package/dist/remote-operations.js.map +1 -1
- package/dist/remote-parsers.d.ts +1 -1
- package/dist/remote-parsers.js +1 -1
- package/dist/types.d.ts +9 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/uncertain-write.d.ts +45 -11
- package/dist/uncertain-write.d.ts.map +1 -1
- package/dist/uncertain-write.js +30 -9
- package/dist/uncertain-write.js.map +1 -1
- package/dist/versioning.d.ts +9 -4
- package/dist/versioning.d.ts.map +1 -1
- package/dist/versioning.js +9 -4
- package/dist/versioning.js.map +1 -1
- package/package.json +18 -2
package/README.md
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# @superbee/core
|
|
2
|
+
|
|
3
|
+
The Superbee knowledge engine reads and writes Open Knowledge Format bundles, with versioned
|
|
4
|
+
writes, cross-links and storage backends. It is a library; installing it does not install the
|
|
5
|
+
`superbee` executable.
|
|
6
|
+
|
|
7
|
+
Core and `@superbee/server` are released together, independently of the `superbee` CLI. A CLI
|
|
8
|
+
release bundles the engine source selected at build time; it does not load `@superbee/core@latest`.
|
|
9
|
+
|
|
10
|
+
## Filesystem platform migration
|
|
11
|
+
|
|
12
|
+
The Windows extraction changes the default Node.js filesystem backend. Its built-in host policy
|
|
13
|
+
supports macOS and Linux. On native Windows or another unsupported host, filesystem construction
|
|
14
|
+
requires an explicit `FilesystemHostPolicy`; there is no automatic Windows fallback.
|
|
15
|
+
|
|
16
|
+
| Entry point | Default on macOS/Linux | On other hosts |
|
|
17
|
+
| --- | --- | --- |
|
|
18
|
+
| `new FilesystemBackend(root)` | Uses the built-in policy | Pass `{ hostPolicy }` as the second argument |
|
|
19
|
+
| `initBundle(root, options)` | Uses the built-in policy | Pass `{ hostPolicy }` as the third argument |
|
|
20
|
+
| `createFilesystemRuntime()` | Captures the built-in policy | Pass a host policy as its argument |
|
|
21
|
+
| `withFilesystemMutationLock(target, body, options)` | Uses the built-in policy | Include `hostPolicy` in `options` |
|
|
22
|
+
| `filesystemMutationLockPath(target, portableRoot)` | Uses the built-in policy | Pass a host policy as the third argument |
|
|
23
|
+
|
|
24
|
+
Without that policy, these filesystem entry points throw `InvalidInputError` on unsupported hosts;
|
|
25
|
+
backend construction and bundle initialization refuse before creating or modifying the target.
|
|
26
|
+
The package has no npm `os` restriction: storage contracts and non-filesystem backends remain
|
|
27
|
+
available independently of the default filesystem policy. Choose a backend and imports appropriate
|
|
28
|
+
to your runtime; installing the library alone does not establish native filesystem support.
|
|
29
|
+
|
|
30
|
+
There is no Windows adapter on npm to install. The experimental first-party adapters are built
|
|
31
|
+
from source in a separate repository, https://github.com/Holaxis-ai/superbee-windows-cli.
|
|
32
|
+
Supplying a policy is an integration contract for an adapter owner, not a promise that arbitrary
|
|
33
|
+
policies make Windows supported.
|
|
34
|
+
|
|
35
|
+
## Keep the backend returned by initBundle
|
|
36
|
+
|
|
37
|
+
`initBundle` now returns `{ root, backend }`. Pass that returned bundle to engine operations so they
|
|
38
|
+
retain the backend and host policy selected during initialization:
|
|
39
|
+
|
|
40
|
+
```ts
|
|
41
|
+
import { initBundle, readDoc, writeDoc } from '@superbee/core';
|
|
42
|
+
|
|
43
|
+
const bundle = await initBundle('./knowledge'); // Default filesystem: macOS/Linux.
|
|
44
|
+
await writeDoc(bundle, {
|
|
45
|
+
id: 'notes/example',
|
|
46
|
+
frontmatter: { type: 'Note', title: 'Example' },
|
|
47
|
+
body: 'Shared knowledge.\n',
|
|
48
|
+
});
|
|
49
|
+
const document = await readDoc(bundle, 'notes/example');
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Reading `bundle.root` still works. Code that assumes the return value has exactly one property,
|
|
53
|
+
serializes the whole return value, or uses backend presence as a synonym for a remote bundle must
|
|
54
|
+
be updated. A filesystem bundle now has a backend too. Serialize only the fields your application
|
|
55
|
+
intends to persist; do not reconstruct `{ root: bundle.root }` when continuing engine operations
|
|
56
|
+
that need the selected backend.
|
|
57
|
+
|
|
58
|
+
## Integrating an explicit filesystem policy
|
|
59
|
+
|
|
60
|
+
`@superbee/core/filesystem` exports `createFilesystemRuntime`, `FilesystemBackend`, and the
|
|
61
|
+
`FilesystemHostPolicy` type. An application that owns its host adapter can bind it once:
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
import { createFilesystemRuntime, type FilesystemHostPolicy } from '@superbee/core/filesystem';
|
|
65
|
+
|
|
66
|
+
export async function openFilesystemBundle(root: string, hostPolicy: FilesystemHostPolicy) {
|
|
67
|
+
const filesystem = createFilesystemRuntime(hostPolicy);
|
|
68
|
+
return filesystem.initBundle(root);
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
The resulting runtime supplies `backend`, `initBundle`, `withMutationLock`, and `mutationLockPath`
|
|
73
|
+
with the same captured policy. Direct backend construction uses
|
|
74
|
+
`new FilesystemBackend(root, { hostPolicy })`. Lock helpers are also exported from `@superbee/core`.
|
|
75
|
+
|
|
76
|
+
A policy supplies the lock-parent directory, owner-namespace key, private-mode enforcement choice,
|
|
77
|
+
and host error classifications. Core still owns lock ownership, version checks, retry bounds and
|
|
78
|
+
cleanup. Policies are structural snapshots: public data and methods are captured, while callbacks
|
|
79
|
+
may continue to observe live operating-system facts. Do not use opaque private fields or methods
|
|
80
|
+
pre-bound to a mutable receiver.
|
|
81
|
+
|
|
82
|
+
## Release compatibility
|
|
83
|
+
|
|
84
|
+
This migration describes the source after the Windows extraction. Previously published versions
|
|
85
|
+
are unchanged. Consult the release notes for the first affected version before upgrading a pinned
|
|
86
|
+
consumer. CLI and engine version numbers are independent; do not infer matching embedded code from
|
|
87
|
+
package names or version labels.
|
|
88
|
+
|
|
89
|
+
[Source and contribution guide](https://github.com/Holaxis-ai/superbee)
|
package/dist/bundle-ops.d.ts
CHANGED
|
@@ -32,7 +32,7 @@ export declare function query(bundle: Bundle, filter?: QueryFilter, options?: en
|
|
|
32
32
|
export declare const list: typeof query;
|
|
33
33
|
export declare function queryHeads(bundle: Bundle, filter?: QueryFilter, options?: engine.QueryOptions): Promise<HeadResult[]>;
|
|
34
34
|
export declare function parseLinks(_bundle: Bundle, doc: OkfDocument): Link[];
|
|
35
|
-
export declare function queryEdges(bundle: Bundle, filter?: EdgeFilter): Promise<Link[]>;
|
|
35
|
+
export declare function queryEdges(bundle: Bundle, filter?: EdgeFilter, options?: engine.QueryOptions): Promise<Link[]>;
|
|
36
36
|
export declare function backlinks(bundle: Bundle, target: ConceptId): Promise<Link[]>;
|
|
37
37
|
export declare function readBlob(bundle: Bundle, key: BlobKey): Promise<ReadBlobResult | null>;
|
|
38
38
|
export declare function writeBlob(bundle: Bundle, key: BlobKey, bytes: Uint8Array, contentType?: string, options?: WriteOptions): Promise<Version>;
|
package/dist/bundle-ops.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle-ops.d.ts","sourceRoot":"","sources":["../src/bundle-ops.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,OAAO,KAAK,EACV,OAAO,EACP,MAAM,EACN,SAAS,EACT,aAAa,EACb,UAAU,EACV,UAAU,EACV,IAAI,EACJ,WAAW,EACX,WAAW,EACX,cAAc,EACd,UAAU,EACV,cAAc,EACd,OAAO,EACP,WAAW,EACX,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEzE,+EAA+E;AAC/E,MAAM,MAAM,qBAAqB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,cAAc,CAAC;AAIrE;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,SAAS,GAAG,IAAI,CAEzF;AAED,gEAAgE;AAChE,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CASzD;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEtF;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,WAAW,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAE7B;AAED,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAE7B;AAED,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,WAAW,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,WAAW,CAAC,CAEtB;AAED,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAEzF;AAED,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAEjF;AAED,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAEvF;AAED,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAExG;AAED,wBAAsB,KAAK,CACzB,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,WAAgB,EACxB,OAAO,GAAE,MAAM,CAAC,YAAiB,GAChC,OAAO,CAAC,WAAW,EAAE,CAAC,CAExB;AAED,eAAO,MAAM,IAAI,cAAQ,CAAC;AAE1B,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,WAAgB,EACxB,OAAO,GAAE,MAAM,CAAC,YAAiB,GAChC,OAAO,CAAC,UAAU,EAAE,CAAC,CAEvB;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,EAAE,CAEpE;AAED,wBAAsB,UAAU,
|
|
1
|
+
{"version":3,"file":"bundle-ops.d.ts","sourceRoot":"","sources":["../src/bundle-ops.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,OAAO,KAAK,EACV,OAAO,EACP,MAAM,EACN,SAAS,EACT,aAAa,EACb,UAAU,EACV,UAAU,EACV,IAAI,EACJ,WAAW,EACX,WAAW,EACX,cAAc,EACd,UAAU,EACV,cAAc,EACd,OAAO,EACP,WAAW,EACX,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEzE,+EAA+E;AAC/E,MAAM,MAAM,qBAAqB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,cAAc,CAAC;AAIrE;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,SAAS,GAAG,IAAI,CAEzF;AAED,gEAAgE;AAChE,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CASzD;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEtF;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,WAAW,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAE7B;AAED,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAE7B;AAED,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,WAAW,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,WAAW,CAAC,CAEtB;AAED,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAEzF;AAED,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAEjF;AAED,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAEvF;AAED,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAExG;AAED,wBAAsB,KAAK,CACzB,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,WAAgB,EACxB,OAAO,GAAE,MAAM,CAAC,YAAiB,GAChC,OAAO,CAAC,WAAW,EAAE,CAAC,CAExB;AAED,eAAO,MAAM,IAAI,cAAQ,CAAC;AAE1B,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,WAAgB,EACxB,OAAO,GAAE,MAAM,CAAC,YAAiB,GAChC,OAAO,CAAC,UAAU,EAAE,CAAC,CAEvB;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,EAAE,CAEpE;AAED,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,UAAe,EACvB,OAAO,GAAE,MAAM,CAAC,YAAiB,GAChC,OAAO,CAAC,IAAI,EAAE,CAAC,CAEjB;AAED,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAElF;AAED,wBAAsB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAE3F;AAED,wBAAsB,SAAS,CAC7B,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,UAAU,EACjB,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,OAAO,CAAC,CAElB;AAED,wBAAsB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;AAED,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAEnF;AAED,wBAAsB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAExG"}
|
package/dist/bundle-ops.js
CHANGED
|
@@ -64,8 +64,8 @@ export async function queryHeads(bundle, filter = {}, options = {}) {
|
|
|
64
64
|
export function parseLinks(_bundle, doc) {
|
|
65
65
|
return engine.parseLinks(doc);
|
|
66
66
|
}
|
|
67
|
-
export async function queryEdges(bundle, filter = {}) {
|
|
68
|
-
return engine.queryEdges(backendFor(bundle), filter);
|
|
67
|
+
export async function queryEdges(bundle, filter = {}, options = {}) {
|
|
68
|
+
return engine.queryEdges(backendFor(bundle), filter, options);
|
|
69
69
|
}
|
|
70
70
|
export async function backlinks(bundle, target) {
|
|
71
71
|
return engine.backlinks(backendFor(bundle), target);
|
package/dist/bundle-ops.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle-ops.js","sourceRoot":"","sources":["../src/bundle-ops.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAwBhD,IAAI,qBAAwD,CAAC;AAE7D;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,OAA0C;IACjF,qBAAqB,GAAG,OAAO,CAAC;AAClC,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC;IAC1C,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;QACxC,MAAM,IAAI,iBAAiB,CACzB,WAAW,MAAM,CAAC,IAAI,yDAAyD;YAC7E,+EAA+E,CAClF,CAAC;IACJ,CAAC;IACD,OAAO,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,MAAc;IACvD,OAAO,MAAM,CAAC,oBAAoB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAc,EACd,GAAgB,EAChB,OAAsB;IAEtB,OAAO,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,MAAc,EACd,GAAgB,EAChB,UAAkB,EAClB,OAAsB;IAEtB,OAAO,MAAM,CAAC,2BAA2B,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;AAC1F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAc,EACd,GAAgB,EAChB,OAAsB;IAEtB,OAAO,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAAc,EAAE,EAAa;IAClE,OAAO,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAAc,EAAE,EAAa;IACzD,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAc,EAAE,EAAa;IAC3D,OAAO,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,EAAa;IAC7D,OAAO,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAc,EAAE,EAAa,EAAE,OAAuB;IACpF,OAAO,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,MAAc,EACd,SAAsB,EAAE,EACxB,UAA+B,EAAE;IAEjC,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC;AAE1B,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAc,EACd,SAAsB,EAAE,EACxB,UAA+B,EAAE;IAEjC,OAAO,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAe,EAAE,GAAgB;IAC1D,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,
|
|
1
|
+
{"version":3,"file":"bundle-ops.js","sourceRoot":"","sources":["../src/bundle-ops.ts"],"names":[],"mappings":"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"}
|
package/dist/document-codec.d.ts
CHANGED
|
@@ -8,6 +8,10 @@ export { resolveContentType } from "./content-type.js";
|
|
|
8
8
|
export { captureRemoteFrontmatter, RemoteDocumentValueError } from "./remote-document-codec.js";
|
|
9
9
|
export type { Frontmatter, OkfDocument, Version } from "./types.js";
|
|
10
10
|
import type { Version } from "./types.js";
|
|
11
|
-
/**
|
|
11
|
+
/**
|
|
12
|
+
* SHA-256 version of exact bytes, including binary data. Minted by the same pure
|
|
13
|
+
* implementation as every other version token, so one digest owner serves Node and
|
|
14
|
+
* browser runtimes; the async signature is kept for the codec's existing callers.
|
|
15
|
+
*/
|
|
12
16
|
export declare function versionFromBytes(bytes: Uint8Array): Promise<Version>;
|
|
13
17
|
//# sourceMappingURL=document-codec.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-codec.d.ts","sourceRoot":"","sources":["../src/document-codec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAChG,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"document-codec.d.ts","sourceRoot":"","sources":["../src/document-codec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAChG,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAE1E"}
|
package/dist/document-codec.js
CHANGED
|
@@ -6,10 +6,13 @@
|
|
|
6
6
|
export { parseMarkdown, stringifyDoc, stringifyWithData, normalizeDocumentBodyForStorage, MalformedDocumentError, } from "./frontmatter.js";
|
|
7
7
|
export { resolveContentType } from "./content-type.js";
|
|
8
8
|
export { captureRemoteFrontmatter, RemoteDocumentValueError } from "./remote-document-codec.js";
|
|
9
|
-
|
|
9
|
+
import { sha256HexOfBytes } from "./sha256.js";
|
|
10
|
+
/**
|
|
11
|
+
* SHA-256 version of exact bytes, including binary data. Minted by the same pure
|
|
12
|
+
* implementation as every other version token, so one digest owner serves Node and
|
|
13
|
+
* browser runtimes; the async signature is kept for the codec's existing callers.
|
|
14
|
+
*/
|
|
10
15
|
export async function versionFromBytes(bytes) {
|
|
11
|
-
|
|
12
|
-
const hex = Array.from(new Uint8Array(digest), (byte) => byte.toString(16).padStart(2, "0")).join("");
|
|
13
|
-
return `sha256:${hex}`;
|
|
16
|
+
return `sha256:${sha256HexOfBytes(bytes)}`;
|
|
14
17
|
}
|
|
15
18
|
//# sourceMappingURL=document-codec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-codec.js","sourceRoot":"","sources":["../src/document-codec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"document-codec.js","sourceRoot":"","sources":["../src/document-codec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAGhG,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG/C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAiB;IACtD,OAAO,UAAU,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;AAC7C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
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,
|
|
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"}
|
|
@@ -23,7 +23,9 @@ export function normalizeV01DocumentForWrite(doc, validatedType, timestamp) {
|
|
|
23
23
|
// `type` leads and `timestamp` trails, matching OKF sample documents and historical bytes.
|
|
24
24
|
const { type: _type, timestamp: _timestamp, ...rest } = doc.frontmatter;
|
|
25
25
|
const frontmatter = { type: validatedType, ...rest, timestamp: normalizedTimestamp };
|
|
26
|
-
|
|
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 ?? "") };
|
|
27
29
|
}
|
|
28
30
|
/**
|
|
29
31
|
* Normalize a v0.2 document without inventing optional provenance or legacy clock fields.
|
|
@@ -31,7 +33,7 @@ export function normalizeV01DocumentForWrite(doc, validatedType, timestamp) {
|
|
|
31
33
|
*/
|
|
32
34
|
export function normalizeV02DocumentForWrite(doc, validatedType) {
|
|
33
35
|
const { type: _type, ...rest } = doc.frontmatter;
|
|
34
|
-
return { id: doc.id, frontmatter: { type: validatedType, ...rest }, body: doc.body ?? "" };
|
|
36
|
+
return { id: doc.id, frontmatter: { type: validatedType, ...rest }, body: normalizeDocumentBodyForStorage(doc.body ?? "") };
|
|
35
37
|
}
|
|
36
38
|
function withoutV02AutomaticMetadata(frontmatter, kindRequiresActor, compareTimestamp) {
|
|
37
39
|
const copy = { ...frontmatter };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-write-policy.js","sourceRoot":"","sources":["../src/document-write-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,yFAAyF;AAEzF,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,IAAI,QAAQ,EAAE,cAAc,IAAI,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAKtE,SAAS,MAAM,CAAC,MAA+B,EAAE,GAAW;IAC1D,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAC1C,GAAgB,EAChB,aAAqB,EACrB,SAC0D;IAE1D,MAAM,mBAAmB,GAAG,SAAS,CAAC,gBAAgB;QACpD,CAAC,CAAC,SAAS,CAAC,iBAAiB;QAC7B,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC;IAEhC,2FAA2F;IAC3F,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC;IACxE,MAAM,WAAW,GAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;IAClG,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;
|
|
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
|
@@ -40,7 +40,7 @@ export declare function query(backend: StorageBackend, filter?: QueryFilter, opt
|
|
|
40
40
|
export declare const list: typeof query;
|
|
41
41
|
export declare function queryHeads(backend: StorageBackend, filter?: QueryFilter, options?: QueryOptions): Promise<HeadResult[]>;
|
|
42
42
|
export declare function parseLinks(doc: OkfDocument): Link[];
|
|
43
|
-
export declare function queryEdges(backend: StorageBackend, filter?: EdgeFilter): Promise<Link[]>;
|
|
43
|
+
export declare function queryEdges(backend: StorageBackend, filter?: EdgeFilter, options?: QueryOptions): Promise<Link[]>;
|
|
44
44
|
export declare function backlinks(backend: StorageBackend, target: ConceptId): Promise<Link[]>;
|
|
45
45
|
export declare function readBlob(backend: StorageBackend, key: BlobKey): Promise<ReadBlobResult | null>;
|
|
46
46
|
export declare function writeBlob(backend: StorageBackend, key: BlobKey, bytes: Uint8Array, contentType?: string, options?: WriteOptions): Promise<Version>;
|
package/dist/engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,OAAO,KAAK,EACV,OAAO,EACP,SAAS,EACT,aAAa,EACb,UAAU,EACV,UAAU,EACV,IAAI,EACJ,WAAW,EACX,WAAW,EACX,cAAc,EACd,UAAU,EACV,cAAc,EACd,OAAO,EACP,WAAW,EACX,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEnD,uFAAuF;AACvF,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,WAAW,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,oEAAoE;AACpE,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,2CAA2C;AAC3C,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;CACrC;AAED,oEAAoE;AACpE,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAK/F;AAwCD,+FAA+F;AAC/F,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE,WAAW,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,WAAW,CAAC,CAItB;AAED,kFAAkF;AAClF,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,WAAW,CAAC,CAEtB;AAED,4EAA4E;AAC5E,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE,WAAW,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,WAAW,CAAC,CAEtB;AAED,qFAAqF;AACrF,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,SAAS,GAAG,IAAI,CAM3D;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAGlG;AAED,wBAAsB,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAE1F;AAED,wBAAsB,SAAS,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAGxF;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAGhG;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,cAAc,EACvB,EAAE,EAAE,SAAS,EACb,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,OAAO,CAAC,CAOlB;AA+CD,wBAAsB,KAAK,CACzB,OAAO,EAAE,cAAc,EACvB,MAAM,GAAE,WAAgB,EACxB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,WAAW,EAAE,CAAC,CAExB;AAED,eAAO,MAAM,IAAI,cAAQ,CAAC;AAE1B,wBAAsB,UAAU,CAC9B,OAAO,EAAE,cAAc,EACvB,MAAM,GAAE,WAAgB,EACxB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,UAAU,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
package/dist/engine.js
CHANGED
|
@@ -137,7 +137,8 @@ export async function query(backend, filter = {}, options = {}) {
|
|
|
137
137
|
export const list = query;
|
|
138
138
|
export async function queryHeads(backend, filter = {}, options = {}) {
|
|
139
139
|
if (backend.queryHeads) {
|
|
140
|
-
const rows = (await backend.queryHeads(filter
|
|
140
|
+
const rows = (await backend.queryHeads(filter, options.onSkip ? { onSkip: options.onSkip } : undefined))
|
|
141
|
+
.filter((row) => matchesFilter(row, filter));
|
|
141
142
|
rows.sort((a, b) => a.id.localeCompare(b.id));
|
|
142
143
|
return rows;
|
|
143
144
|
}
|
|
@@ -169,11 +170,11 @@ function toSelectorList(value) {
|
|
|
169
170
|
return undefined;
|
|
170
171
|
return Array.isArray(value) ? value : [value];
|
|
171
172
|
}
|
|
172
|
-
export async function queryEdges(backend, filter = {}) {
|
|
173
|
+
export async function queryEdges(backend, filter = {}, options = {}) {
|
|
173
174
|
const fromSelectors = toSelectorList(filter.from)?.map(normalizeEdgeSelector);
|
|
174
175
|
const toSelectors = toSelectorList(filter.to)?.map(normalizeEdgeSelector);
|
|
175
176
|
const edges = [];
|
|
176
|
-
for (const doc of await query(backend)) {
|
|
177
|
+
for (const doc of await query(backend, {}, options)) {
|
|
177
178
|
for (const link of parseLinksFromDoc(doc)) {
|
|
178
179
|
if (!matchesEdgeSelector(link.from, fromSelectors))
|
|
179
180
|
continue;
|
package/dist/engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal Test seams of the Node log store. This module is not in the package's `exports`, so
|
|
3
|
+
* no consumer of `@superbee/core` can reach these keys; the store's own tests import them from
|
|
4
|
+
* source to inject a failing log handle and to plant raw document bytes.
|
|
5
|
+
*/
|
|
6
|
+
/** The file operations the store performs on its log; a test substitutes a handle that fails on cue. */
|
|
7
|
+
export interface FileJournalHandle {
|
|
8
|
+
write(buffer: Uint8Array, offset: number, length: number, position: number): Promise<{
|
|
9
|
+
bytesWritten: number;
|
|
10
|
+
}>;
|
|
11
|
+
sync(): Promise<void>;
|
|
12
|
+
truncate(length: number): Promise<void>;
|
|
13
|
+
close(): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
/** Option key: `(file) => Promise<FileJournalHandle>`, opening the existing log for positional writes. */
|
|
16
|
+
export declare const OPEN_LOG: unique symbol;
|
|
17
|
+
/** Method key: `(id, raw) => Promise<void>`, planting exact bytes as a document's stored serialization. */
|
|
18
|
+
export declare const STORE_RAW: unique symbol;
|
|
19
|
+
//# sourceMappingURL=file-journaled-backend-internal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-journaled-backend-internal.d.ts","sourceRoot":"","sources":["../src/file-journaled-backend-internal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,wGAAwG;AACxG,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/G,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,0GAA0G;AAC1G,eAAO,MAAM,QAAQ,EAAE,OAAO,MAA+C,CAAC;AAE9E,2GAA2G;AAC3G,eAAO,MAAM,SAAS,EAAE,OAAO,MAAgD,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal Test seams of the Node log store. This module is not in the package's `exports`, so
|
|
3
|
+
* no consumer of `@superbee/core` can reach these keys; the store's own tests import them from
|
|
4
|
+
* source to inject a failing log handle and to plant raw document bytes.
|
|
5
|
+
*/
|
|
6
|
+
/** Option key: `(file) => Promise<FileJournalHandle>`, opening the existing log for positional writes. */
|
|
7
|
+
export const OPEN_LOG = Symbol("superbee.fileJournal.openLog");
|
|
8
|
+
/** Method key: `(id, raw) => Promise<void>`, planting exact bytes as a document's stored serialization. */
|
|
9
|
+
export const STORE_RAW = Symbol("superbee.fileJournal.storeRaw");
|
|
10
|
+
//# sourceMappingURL=file-journaled-backend-internal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-journaled-backend-internal.js","sourceRoot":"","sources":["../src/file-journaled-backend-internal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,0GAA0G;AAC1G,MAAM,CAAC,MAAM,QAAQ,GAAkB,MAAM,CAAC,8BAA8B,CAAC,CAAC;AAE9E,2GAA2G;AAC3G,MAAM,CAAC,MAAM,SAAS,GAAkB,MAAM,CAAC,+BAA+B,CAAC,CAAC"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Experimental (`0.2.0-pre`): the API and the on-disk format may change before a stable release.
|
|
3
|
+
*
|
|
4
|
+
* A Node {@link JournaledBackend}: the private store behind a CLI working copy, proven by the
|
|
5
|
+
* same contract kit as the IndexedDB adapter. It is an append-only, checksummed transaction log
|
|
6
|
+
* over an in-memory index, in one directory the store owns:
|
|
7
|
+
*
|
|
8
|
+
* - `store.log` holds one record per transaction. A record is the transaction's effect as a list
|
|
9
|
+
* of absolute puts and removals over the five record families (documents, reserved files,
|
|
10
|
+
* blobs, intents, meta) plus the intent sequence, framed as magic, format version, length,
|
|
11
|
+
* SHA-256 of the payload, payload. The payload is tagged JSON this module owns, so the bytes
|
|
12
|
+
* never depend on the Node version that wrote them. Every check a verb makes runs synchronously against the index before its
|
|
13
|
+
* record is written; the record is written at the log's end and fsynced, and only then applied
|
|
14
|
+
* to the index and the verb resolved. So a resolved write survives a crash, a rejected one
|
|
15
|
+
* left nothing behind, and a record that was never fsynced was never acknowledged.
|
|
16
|
+
* - `store.snapshot` is the whole index at one transaction number, written by {@link compact}:
|
|
17
|
+
* write a temporary file, fsync it, rename it over the snapshot, fsync the directory, then
|
|
18
|
+
* truncate the log. A crash at any point in that sequence leaves either the old snapshot and
|
|
19
|
+
* the whole log, or the new snapshot and log records it already covers, which open skips by
|
|
20
|
+
* transaction number.
|
|
21
|
+
*
|
|
22
|
+
* At open the snapshot is loaded and the log replayed. Bytes after the last whole record are a
|
|
23
|
+
* torn write (the one append that can be interrupted, never acknowledged, its pages persisted in
|
|
24
|
+
* any order) and are truncated away, unless a whole record begins inside them: that is
|
|
25
|
+
* corruption, and open refuses without touching the files. One transaction spans documents, intents and meta, which is what the seam requires:
|
|
26
|
+
* the engine settles an intent together with the global pause flag, and writes a receipt, a
|
|
27
|
+
* base and a body record at once.
|
|
28
|
+
*
|
|
29
|
+
* The store holds an exclusive same-user cross-process lock on its directory from open to
|
|
30
|
+
* {@link close}, so a second process cannot replay a log another process is appending to, and
|
|
31
|
+
* compaction always runs under that lock. Within the process, mutations are serialized; reads
|
|
32
|
+
* never wait for them and always see the last committed transaction.
|
|
33
|
+
*
|
|
34
|
+
* Durability is `fsync`: a resolved mutation's record was fsynced, and so was the directory
|
|
35
|
+
* entry of every file the store created. On macOS `fsync` does not force the drive's own cache
|
|
36
|
+
* (Node exposes no `F_FULLFSYNC`), which is the same promise every Node program gets there.
|
|
37
|
+
*/
|
|
38
|
+
import { OPEN_LOG, STORE_RAW, type FileJournalHandle } from "./file-journaled-backend-internal.js";
|
|
39
|
+
import { type FilesystemHostPolicy } from "./filesystem-host.js";
|
|
40
|
+
import { type FilesystemMutationLockOptions } from "./filesystem-lock.js";
|
|
41
|
+
import { type IntentPatch, type IntentRecord, type IntentUpdateOptions, type JournaledBackend, type JournaledDeleteOptions, type JournaledDeleteResult, type JournaledHead, type JournaledHeadsOptions, type JournaledReadResult, type RetireAcknowledgedOptions, type JournaledWriteOptions, type MetaWriteOptions } from "./journaled-backend.js";
|
|
42
|
+
import type { OperationState } from "./uncertain-write.js";
|
|
43
|
+
import type { BlobKey, ConceptId, DeleteOptions, OkfDocument, ReadBlobResult, ReadResult, ReservedFilename, ReservedReadResult, StorageCapabilities, Version, VersionInfo, WriteOptions } from "./types.js";
|
|
44
|
+
/** Bumping this requires a reader for the older layout; open refuses any other format. */
|
|
45
|
+
export declare const FILE_JOURNAL_FORMAT_VERSION = 1;
|
|
46
|
+
export declare const FILE_JOURNAL_LOG = "store.log";
|
|
47
|
+
export declare const FILE_JOURNAL_SNAPSHOT = "store.snapshot";
|
|
48
|
+
/** The store's files do not hold a log or snapshot this adapter wrote; open changes nothing. */
|
|
49
|
+
export declare class FileJournalCorruptError extends Error {
|
|
50
|
+
readonly name: string;
|
|
51
|
+
readonly file: string;
|
|
52
|
+
readonly offset: number | undefined;
|
|
53
|
+
constructor(file: string, message: string, offset?: number);
|
|
54
|
+
}
|
|
55
|
+
/** A whole, checksummed record or snapshot in a format this adapter does not read (a newer store wrote it). */
|
|
56
|
+
export declare class FileJournalFormatError extends FileJournalCorruptError {
|
|
57
|
+
readonly name = "FileJournalFormatError";
|
|
58
|
+
readonly format: number;
|
|
59
|
+
constructor(file: string, format: number, offset?: number);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* The store cannot tell whether its last append reached the disk (the append failed and so did
|
|
63
|
+
* removing it), or it was closed. Every later call rejects; reopening decides from the files.
|
|
64
|
+
*/
|
|
65
|
+
export declare class FileJournalUnavailableError extends Error {
|
|
66
|
+
readonly name = "FileJournalUnavailableError";
|
|
67
|
+
}
|
|
68
|
+
/** A value the codec cannot persist; the mutation carrying it is refused before anything is written. */
|
|
69
|
+
export declare class FileJournalValueError extends TypeError {
|
|
70
|
+
readonly name = "FileJournalValueError";
|
|
71
|
+
}
|
|
72
|
+
export interface FileJournaledBackendOptions {
|
|
73
|
+
/** The directory that holds this store's log and snapshot. Created (mode 0700) when absent. */
|
|
74
|
+
directory: string;
|
|
75
|
+
/**
|
|
76
|
+
* The store's exclusive lock: how long open waits for another holder, and, for isolated
|
|
77
|
+
* tests, the lock namespace. The default waits five seconds in the per-user runtime namespace.
|
|
78
|
+
*/
|
|
79
|
+
lock?: Pick<FilesystemMutationLockOptions, "waitMs" | "pollMs" | "lockRoot">;
|
|
80
|
+
/**
|
|
81
|
+
* The trusted host construction, as every Node filesystem protocol in core takes it. Omitted,
|
|
82
|
+
* the supported default (macOS and Linux); another host (the Windows distribution) passes its
|
|
83
|
+
* own. It decides the lock namespace and which replacement errors are transient.
|
|
84
|
+
*/
|
|
85
|
+
hostPolicy?: FilesystemHostPolicy;
|
|
86
|
+
/** Open compacts when the log is larger than this many bytes. Default 8 MiB. */
|
|
87
|
+
compactAfterBytes?: number;
|
|
88
|
+
/**
|
|
89
|
+
* Open an existing store to read it and change no file in its directory: no directory or log is
|
|
90
|
+
* created, a torn log tail is ignored rather than truncated, nothing is compacted, and every
|
|
91
|
+
* mutation (and `compact`) is refused. The lock is still taken, so no writer runs meanwhile.
|
|
92
|
+
*/
|
|
93
|
+
readOnly?: boolean;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* The Node working copy's persistent store: one directory, one exclusive lock, one log. Open it
|
|
97
|
+
* with {@link FileJournaledBackend.open}; {@link close} releases the lock.
|
|
98
|
+
*/
|
|
99
|
+
export declare class FileJournaledBackend implements JournaledBackend {
|
|
100
|
+
#private;
|
|
101
|
+
readonly journalSnapshotCas: true;
|
|
102
|
+
/** A resolved mutation's log record, and every directory entry the store created, were fsynced. */
|
|
103
|
+
readonly durability: "fsync";
|
|
104
|
+
readonly directory: string;
|
|
105
|
+
private constructor();
|
|
106
|
+
/**
|
|
107
|
+
* Claim the directory's lock, load the snapshot, replay the log, and truncate a torn tail. A
|
|
108
|
+
* corrupt snapshot or a corrupt record before the log's end refuses the open and changes no
|
|
109
|
+
* file. Compacts when the log is larger than `compactAfterBytes`.
|
|
110
|
+
*/
|
|
111
|
+
static open(options: FileJournaledBackendOptions): Promise<FileJournaledBackend>;
|
|
112
|
+
/** @internal The test seam: open with a substitute log handle. Reachable only through {@link OPEN_LOG}. */
|
|
113
|
+
static [OPEN_LOG](options: FileJournaledBackendOptions, openLog: (file: string) => Promise<FileJournalHandle>): Promise<FileJournaledBackend>;
|
|
114
|
+
capabilities(): StorageCapabilities;
|
|
115
|
+
/** The number of the last committed transaction; it grows by one per mutation that wrote. */
|
|
116
|
+
get transaction(): number;
|
|
117
|
+
/** Let queued mutations finish, close the log, and release the directory's lock. Later calls reject. */
|
|
118
|
+
close(): Promise<void>;
|
|
119
|
+
/**
|
|
120
|
+
* Write the whole index as the snapshot and empty the log: a temporary file, fsynced, renamed
|
|
121
|
+
* over the snapshot, the directory fsynced, then the log truncated. Serialized with mutations,
|
|
122
|
+
* under the directory lock the store holds.
|
|
123
|
+
*/
|
|
124
|
+
compact(): Promise<void>;
|
|
125
|
+
read(id: ConceptId): Promise<ReadResult>;
|
|
126
|
+
readMany(ids: ConceptId[]): Promise<ReadResult[]>;
|
|
127
|
+
write(id: ConceptId, doc: OkfDocument, options?: WriteOptions): Promise<Version>;
|
|
128
|
+
delete(id: ConceptId, options?: DeleteOptions): Promise<boolean>;
|
|
129
|
+
exists(id: ConceptId): Promise<boolean>;
|
|
130
|
+
list(prefix?: string): Promise<ConceptId[]>;
|
|
131
|
+
versions(id: ConceptId): Promise<VersionInfo[]>;
|
|
132
|
+
readReserved(dir: string, name: ReservedFilename): Promise<ReservedReadResult | null>;
|
|
133
|
+
writeReserved(dir: string, name: ReservedFilename, content: string, options?: WriteOptions): Promise<Version>;
|
|
134
|
+
readBlob(key: BlobKey): Promise<ReadBlobResult | null>;
|
|
135
|
+
writeBlob(key: BlobKey, bytes: Uint8Array, contentType?: string, options?: WriteOptions): Promise<Version>;
|
|
136
|
+
deleteBlob(key: BlobKey, options?: DeleteOptions): Promise<boolean>;
|
|
137
|
+
existsBlob(key: BlobKey): Promise<boolean>;
|
|
138
|
+
listBlobs(prefix?: string): Promise<BlobKey[]>;
|
|
139
|
+
writeJournaled(id: ConceptId, doc: OkfDocument, options?: JournaledWriteOptions): Promise<{
|
|
140
|
+
version: Version;
|
|
141
|
+
raw: string;
|
|
142
|
+
intent: IntentRecord | null;
|
|
143
|
+
}>;
|
|
144
|
+
deleteJournaled(id: ConceptId, options?: JournaledDeleteOptions): Promise<JournaledDeleteResult>;
|
|
145
|
+
readWithJournal(id: ConceptId, options?: {
|
|
146
|
+
meta?: readonly string[];
|
|
147
|
+
}): Promise<JournaledReadResult>;
|
|
148
|
+
readHeads<T = JournaledHead>(options?: JournaledHeadsOptions<T>): Promise<T[]>;
|
|
149
|
+
listIntents(state?: OperationState | readonly OperationState[]): Promise<IntentRecord[]>;
|
|
150
|
+
readIntent(requestId: string): Promise<IntentRecord | undefined>;
|
|
151
|
+
updateIntent(requestId: string, expectedState: OperationState, patch: IntentPatch, options?: IntentUpdateOptions): Promise<IntentRecord>;
|
|
152
|
+
retireAcknowledged(target: ConceptId, options: RetireAcknowledgedOptions): Promise<void>;
|
|
153
|
+
readMeta<T = unknown>(key: string): Promise<T | undefined>;
|
|
154
|
+
/**
|
|
155
|
+
* @internal Plant exact bytes as `id`'s stored serialization, bypassing the serializer, through
|
|
156
|
+
* the log like any other write: the contract kit's malformed-record and edition rows. Reachable
|
|
157
|
+
* only through {@link STORE_RAW}.
|
|
158
|
+
*/
|
|
159
|
+
[STORE_RAW](id: ConceptId, raw: string): Promise<void>;
|
|
160
|
+
writeMeta(key: string, value: unknown, options?: MetaWriteOptions): Promise<void>;
|
|
161
|
+
}
|
|
162
|
+
//# sourceMappingURL=file-journaled-backend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-journaled-backend.d.ts","sourceRoot":"","sources":["../src/file-journaled-backend.ts"],"names":[],"mappings":"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"}
|