@cavelang/cli 0.34.0 → 0.36.0
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 +225 -13
- package/dist/internal/act/action.js +2 -1
- package/dist/internal/act/action.js.map +1 -1
- package/dist/internal/act/declare.d.ts.map +1 -1
- package/dist/internal/act/declare.js +82 -53
- package/dist/internal/act/declare.js.map +1 -1
- package/dist/internal/act/engine.d.ts +4 -3
- package/dist/internal/act/engine.d.ts.map +1 -1
- package/dist/internal/act/engine.js +121 -32
- package/dist/internal/act/engine.js.map +1 -1
- package/dist/internal/automate/cancellation.d.ts +3 -0
- package/dist/internal/automate/cancellation.d.ts.map +1 -0
- package/dist/internal/automate/cancellation.js +38 -0
- package/dist/internal/automate/cancellation.js.map +1 -0
- package/dist/internal/automate/declare.d.ts.map +1 -1
- package/dist/internal/automate/declare.js +49 -24
- package/dist/internal/automate/declare.js.map +1 -1
- package/dist/internal/automate/engine.d.ts +7 -3
- package/dist/internal/automate/engine.d.ts.map +1 -1
- package/dist/internal/automate/engine.js +196 -93
- package/dist/internal/automate/engine.js.map +1 -1
- package/dist/internal/automate/error-message.d.ts +3 -0
- package/dist/internal/automate/error-message.d.ts.map +1 -0
- package/dist/internal/automate/error-message.js +10 -0
- package/dist/internal/automate/error-message.js.map +1 -0
- package/dist/internal/automate/main.d.ts.map +1 -1
- package/dist/internal/automate/main.js +240 -35
- package/dist/internal/automate/main.js.map +1 -1
- package/dist/internal/automate/options.d.ts +4 -0
- package/dist/internal/automate/options.d.ts.map +1 -0
- package/dist/internal/automate/options.js +19 -0
- package/dist/internal/automate/options.js.map +1 -0
- package/dist/internal/connect/declared.d.ts +204 -0
- package/dist/internal/connect/declared.d.ts.map +1 -0
- package/dist/internal/connect/declared.js +610 -0
- package/dist/internal/connect/declared.js.map +1 -0
- package/dist/internal/connect/error-message.d.ts +3 -0
- package/dist/internal/connect/error-message.d.ts.map +1 -0
- package/dist/internal/connect/error-message.js +10 -0
- package/dist/internal/connect/error-message.js.map +1 -0
- package/dist/internal/connect/federation.d.ts +9 -0
- package/dist/internal/connect/federation.d.ts.map +1 -0
- package/dist/internal/connect/federation.js +19 -0
- package/dist/internal/connect/federation.js.map +1 -0
- package/dist/internal/connect/fetch-failure.d.ts +3 -0
- package/dist/internal/connect/fetch-failure.d.ts.map +1 -0
- package/dist/internal/connect/fetch-failure.js +36 -0
- package/dist/internal/connect/fetch-failure.js.map +1 -0
- package/dist/internal/connect/index.d.ts +4 -2
- package/dist/internal/connect/index.d.ts.map +1 -1
- package/dist/internal/connect/index.js +3 -1
- package/dist/internal/connect/index.js.map +1 -1
- package/dist/internal/connect/main.d.ts +1 -0
- package/dist/internal/connect/main.d.ts.map +1 -1
- package/dist/internal/connect/main.js +575 -59
- package/dist/internal/connect/main.js.map +1 -1
- package/dist/internal/connect/options.d.ts +3 -0
- package/dist/internal/connect/options.d.ts.map +1 -0
- package/dist/internal/connect/options.js +9 -0
- package/dist/internal/connect/options.js.map +1 -0
- package/dist/internal/connect/records.d.ts +3 -0
- package/dist/internal/connect/records.d.ts.map +1 -0
- package/dist/internal/connect/records.js +21 -0
- package/dist/internal/connect/records.js.map +1 -0
- package/dist/internal/connect/run.d.ts +48 -19
- package/dist/internal/connect/run.d.ts.map +1 -1
- package/dist/internal/connect/run.js +185 -77
- package/dist/internal/connect/run.js.map +1 -1
- package/dist/internal/connect/source.d.ts +36 -3
- package/dist/internal/connect/source.d.ts.map +1 -1
- package/dist/internal/connect/source.js +378 -39
- package/dist/internal/connect/source.js.map +1 -1
- package/dist/internal/connect/template.d.ts +20 -2
- package/dist/internal/connect/template.d.ts.map +1 -1
- package/dist/internal/connect/template.js +53 -9
- package/dist/internal/connect/template.js.map +1 -1
- package/dist/internal/connect/utf8.d.ts +3 -0
- package/dist/internal/connect/utf8.d.ts.map +1 -0
- package/dist/internal/connect/utf8.js +12 -0
- package/dist/internal/connect/utf8.js.map +1 -0
- package/dist/internal/eval/cleanup.d.ts +5 -0
- package/dist/internal/eval/cleanup.d.ts.map +1 -0
- package/dist/internal/eval/cleanup.js +50 -0
- package/dist/internal/eval/cleanup.js.map +1 -0
- package/dist/internal/eval/error-message.d.ts +3 -0
- package/dist/internal/eval/error-message.d.ts.map +1 -0
- package/dist/internal/eval/error-message.js +10 -0
- package/dist/internal/eval/error-message.js.map +1 -0
- package/dist/internal/eval/judge.d.ts.map +1 -1
- package/dist/internal/eval/judge.js +3 -31
- package/dist/internal/eval/judge.js.map +1 -1
- package/dist/internal/eval/loop.d.ts.map +1 -1
- package/dist/internal/eval/loop.js +18 -4
- package/dist/internal/eval/loop.js.map +1 -1
- package/dist/internal/eval/main.d.ts.map +1 -1
- package/dist/internal/eval/main.js +22 -10
- package/dist/internal/eval/main.js.map +1 -1
- package/dist/internal/eval/options.d.ts +6 -0
- package/dist/internal/eval/options.d.ts.map +1 -0
- package/dist/internal/eval/options.js +31 -0
- package/dist/internal/eval/options.js.map +1 -0
- package/dist/internal/eval/queries.d.ts.map +1 -1
- package/dist/internal/eval/queries.js +9 -6
- package/dist/internal/eval/queries.js.map +1 -1
- package/dist/internal/eval/run.d.ts.map +1 -1
- package/dist/internal/eval/run.js +112 -24
- package/dist/internal/eval/run.js.map +1 -1
- package/dist/internal/eval/score.d.ts.map +1 -1
- package/dist/internal/eval/score.js +9 -2
- package/dist/internal/eval/score.js.map +1 -1
- package/dist/internal/eval/suite.d.ts.map +1 -1
- package/dist/internal/eval/suite.js +14 -2
- package/dist/internal/eval/suite.js.map +1 -1
- package/dist/internal/ingest/cleanup.d.ts +5 -0
- package/dist/internal/ingest/cleanup.d.ts.map +1 -0
- package/dist/internal/ingest/cleanup.js +50 -0
- package/dist/internal/ingest/cleanup.js.map +1 -0
- package/dist/internal/ingest/content.d.ts +6 -0
- package/dist/internal/ingest/content.d.ts.map +1 -0
- package/dist/internal/ingest/content.js +25 -0
- package/dist/internal/ingest/content.js.map +1 -0
- package/dist/internal/ingest/context.d.ts.map +1 -1
- package/dist/internal/ingest/context.js +25 -7
- package/dist/internal/ingest/context.js.map +1 -1
- package/dist/internal/ingest/error-message.d.ts +3 -0
- package/dist/internal/ingest/error-message.d.ts.map +1 -0
- package/dist/internal/ingest/error-message.js +10 -0
- package/dist/internal/ingest/error-message.js.map +1 -0
- package/dist/internal/ingest/files.d.ts +4 -12
- package/dist/internal/ingest/files.d.ts.map +1 -1
- package/dist/internal/ingest/files.js +22 -10
- package/dist/internal/ingest/files.js.map +1 -1
- package/dist/internal/ingest/main.d.ts.map +1 -1
- package/dist/internal/ingest/main.js +48 -17
- package/dist/internal/ingest/main.js.map +1 -1
- package/dist/internal/ingest/options.d.ts +6 -0
- package/dist/internal/ingest/options.d.ts.map +1 -0
- package/dist/internal/ingest/options.js +27 -0
- package/dist/internal/ingest/options.js.map +1 -0
- package/dist/internal/ingest/prompt.d.ts.map +1 -1
- package/dist/internal/ingest/prompt.js +14 -10
- package/dist/internal/ingest/prompt.js.map +1 -1
- package/dist/internal/ingest/run.d.ts +9 -2
- package/dist/internal/ingest/run.d.ts.map +1 -1
- package/dist/internal/ingest/run.js +206 -62
- package/dist/internal/ingest/run.js.map +1 -1
- package/dist/internal/ingest/timeout.d.ts +3 -0
- package/dist/internal/ingest/timeout.d.ts.map +1 -0
- package/dist/internal/ingest/timeout.js +14 -0
- package/dist/internal/ingest/timeout.js.map +1 -0
- package/dist/internal/ingest/web.d.ts +2 -11
- package/dist/internal/ingest/web.d.ts.map +1 -1
- package/dist/internal/ingest/web.js +131 -25
- package/dist/internal/ingest/web.js.map +1 -1
- package/dist/internal/loop/budgets.d.ts +3 -0
- package/dist/internal/loop/budgets.d.ts.map +1 -0
- package/dist/internal/loop/budgets.js +10 -0
- package/dist/internal/loop/budgets.js.map +1 -0
- package/dist/internal/loop/index.d.ts +2 -0
- package/dist/internal/loop/index.d.ts.map +1 -1
- package/dist/internal/loop/index.js +2 -0
- package/dist/internal/loop/index.js.map +1 -1
- package/dist/internal/loop/json-answer.d.ts +7 -0
- package/dist/internal/loop/json-answer.d.ts.map +1 -0
- package/dist/internal/loop/json-answer.js +79 -0
- package/dist/internal/loop/json-answer.js.map +1 -0
- package/dist/internal/loop/json-spans.d.ts +3 -0
- package/dist/internal/loop/json-spans.d.ts.map +1 -0
- package/dist/internal/loop/json-spans.js +88 -0
- package/dist/internal/loop/json-spans.js.map +1 -0
- package/dist/internal/loop/llm.d.ts +3 -2
- package/dist/internal/loop/llm.d.ts.map +1 -1
- package/dist/internal/loop/llm.js +115 -32
- package/dist/internal/loop/llm.js.map +1 -1
- package/dist/internal/loop/process.d.ts +3 -1
- package/dist/internal/loop/process.d.ts.map +1 -1
- package/dist/internal/loop/process.js +159 -59
- package/dist/internal/loop/process.js.map +1 -1
- package/dist/internal/loop/read-snapshot.d.ts +4 -0
- package/dist/internal/loop/read-snapshot.d.ts.map +1 -0
- package/dist/internal/loop/read-snapshot.js +29 -0
- package/dist/internal/loop/read-snapshot.js.map +1 -0
- package/dist/internal/loop/reconstruct.d.ts +6 -5
- package/dist/internal/loop/reconstruct.d.ts.map +1 -1
- package/dist/internal/loop/reconstruct.js +19 -8
- package/dist/internal/loop/reconstruct.js.map +1 -1
- package/dist/internal/loop/score-settings.d.ts +5 -0
- package/dist/internal/loop/score-settings.d.ts.map +1 -0
- package/dist/internal/loop/score-settings.js +14 -0
- package/dist/internal/loop/score-settings.js.map +1 -0
- package/dist/internal/loop/sqlite.d.ts.map +1 -1
- package/dist/internal/loop/sqlite.js +15 -7
- package/dist/internal/loop/sqlite.js.map +1 -1
- package/dist/internal/loop/store.d.ts.map +1 -1
- package/dist/internal/loop/store.js +11 -7
- package/dist/internal/loop/store.js.map +1 -1
- package/dist/internal/loop/timeout.d.ts +3 -0
- package/dist/internal/loop/timeout.d.ts.map +1 -0
- package/dist/internal/loop/timeout.js +13 -0
- package/dist/internal/loop/timeout.js.map +1 -0
- package/dist/internal/mcp/error-message.d.ts +3 -0
- package/dist/internal/mcp/error-message.d.ts.map +1 -0
- package/dist/internal/mcp/error-message.js +10 -0
- package/dist/internal/mcp/error-message.js.map +1 -0
- package/dist/internal/mcp/main.d.ts.map +1 -1
- package/dist/internal/mcp/main.js +44 -27
- package/dist/internal/mcp/main.js.map +1 -1
- package/dist/internal/mcp/read-snapshot.d.ts +4 -0
- package/dist/internal/mcp/read-snapshot.d.ts.map +1 -0
- package/dist/internal/mcp/read-snapshot.js +22 -0
- package/dist/internal/mcp/read-snapshot.js.map +1 -0
- package/dist/internal/mcp/server.d.ts.map +1 -1
- package/dist/internal/mcp/server.js +181 -21
- package/dist/internal/mcp/server.js.map +1 -1
- package/dist/internal/mcp/source.d.ts +3 -0
- package/dist/internal/mcp/source.d.ts.map +1 -0
- package/dist/internal/mcp/source.js +13 -0
- package/dist/internal/mcp/source.js.map +1 -0
- package/dist/internal/mcp/tools.d.ts.map +1 -1
- package/dist/internal/mcp/tools.js +135 -72
- package/dist/internal/mcp/tools.js.map +1 -1
- package/dist/internal/rules/declarations.d.ts +6 -0
- package/dist/internal/rules/declarations.d.ts.map +1 -0
- package/dist/internal/rules/declarations.js +14 -0
- package/dist/internal/rules/declarations.js.map +1 -0
- package/dist/internal/rules/declare.d.ts.map +1 -1
- package/dist/internal/rules/declare.js +30 -16
- package/dist/internal/rules/declare.js.map +1 -1
- package/dist/internal/rules/engine.d.ts +8 -7
- package/dist/internal/rules/engine.d.ts.map +1 -1
- package/dist/internal/rules/engine.js +150 -44
- package/dist/internal/rules/engine.js.map +1 -1
- package/dist/internal/rules/rule.d.ts.map +1 -1
- package/dist/internal/rules/rule.js +1 -22
- package/dist/internal/rules/rule.js.map +1 -1
- package/dist/internal/shape/alias-root.d.ts +3 -0
- package/dist/internal/shape/alias-root.d.ts.map +1 -0
- package/dist/internal/shape/alias-root.js +13 -0
- package/dist/internal/shape/alias-root.js.map +1 -0
- package/dist/internal/shape/check.d.ts +15 -3
- package/dist/internal/shape/check.d.ts.map +1 -1
- package/dist/internal/shape/check.js +230 -100
- package/dist/internal/shape/check.js.map +1 -1
- package/dist/internal/shape/client.d.ts.map +1 -1
- package/dist/internal/shape/client.js +42 -20
- package/dist/internal/shape/client.js.map +1 -1
- package/dist/internal/shape/constraints.d.ts +8 -0
- package/dist/internal/shape/constraints.d.ts.map +1 -0
- package/dist/internal/shape/constraints.js +17 -0
- package/dist/internal/shape/constraints.js.map +1 -0
- package/dist/internal/shape/edit-distance.d.ts +3 -0
- package/dist/internal/shape/edit-distance.d.ts.map +1 -0
- package/dist/internal/shape/edit-distance.js +33 -0
- package/dist/internal/shape/edit-distance.js.map +1 -0
- package/dist/internal/shape/gate.d.ts.map +1 -1
- package/dist/internal/shape/gate.js +0 -0
- package/dist/internal/shape/gate.js.map +1 -1
- package/dist/internal/shape/snapshot.d.ts +4 -0
- package/dist/internal/shape/snapshot.d.ts.map +1 -0
- package/dist/internal/shape/snapshot.js +20 -0
- package/dist/internal/shape/snapshot.js.map +1 -0
- package/dist/internal/shape/suggest.d.ts +8 -6
- package/dist/internal/shape/suggest.d.ts.map +1 -1
- package/dist/internal/shape/suggest.js +208 -92
- package/dist/internal/shape/suggest.js.map +1 -1
- package/dist/internal/sync/error-message.d.ts +3 -0
- package/dist/internal/sync/error-message.d.ts.map +1 -0
- package/dist/internal/sync/error-message.js +10 -0
- package/dist/internal/sync/error-message.js.map +1 -0
- package/dist/internal/sync/index.d.ts +3 -2
- package/dist/internal/sync/index.d.ts.map +1 -1
- package/dist/internal/sync/index.js +3 -2
- package/dist/internal/sync/index.js.map +1 -1
- package/dist/internal/sync/sync.d.ts +8 -5
- package/dist/internal/sync/sync.d.ts.map +1 -1
- package/dist/internal/sync/sync.js +322 -65
- package/dist/internal/sync/sync.js.map +1 -1
- package/dist/internal/view/api.d.ts +3 -1
- package/dist/internal/view/api.d.ts.map +1 -1
- package/dist/internal/view/api.js +154 -90
- package/dist/internal/view/api.js.map +1 -1
- package/dist/internal/view/error-message.d.ts +3 -0
- package/dist/internal/view/error-message.d.ts.map +1 -0
- package/dist/internal/view/error-message.js +10 -0
- package/dist/internal/view/error-message.js.map +1 -0
- package/dist/internal/view/main.d.ts.map +1 -1
- package/dist/internal/view/main.js +63 -9
- package/dist/internal/view/main.js.map +1 -1
- package/dist/internal/view/page.d.ts.map +1 -1
- package/dist/internal/view/page.js +119 -20
- package/dist/internal/view/page.js.map +1 -1
- package/dist/internal/view/report.d.ts.map +1 -1
- package/dist/internal/view/report.js +180 -145
- package/dist/internal/view/report.js.map +1 -1
- package/dist/internal/view/scope.d.ts +6 -2
- package/dist/internal/view/scope.d.ts.map +1 -1
- package/dist/internal/view/scope.js +107 -24
- package/dist/internal/view/scope.js.map +1 -1
- package/dist/internal/view/sensitivity.d.ts +4 -0
- package/dist/internal/view/sensitivity.d.ts.map +1 -0
- package/dist/internal/view/sensitivity.js +11 -0
- package/dist/internal/view/sensitivity.js.map +1 -0
- package/dist/internal/view/server.d.ts.map +1 -1
- package/dist/internal/view/server.js +57 -20
- package/dist/internal/view/server.js.map +1 -1
- package/dist/src/atomic-output.d.ts +3 -0
- package/dist/src/atomic-output.d.ts.map +1 -0
- package/dist/src/atomic-output.js +67 -0
- package/dist/src/atomic-output.js.map +1 -0
- package/dist/src/cli.d.ts +17 -2
- package/dist/src/cli.d.ts.map +1 -1
- package/dist/src/cli.js +333 -195
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands.d.ts +2 -2
- package/dist/src/commands.js +2 -2
- package/dist/src/commands.js.map +1 -1
- package/dist/src/dispatch.d.ts.map +1 -1
- package/dist/src/dispatch.js +10 -3
- package/dist/src/dispatch.js.map +1 -1
- package/dist/src/doctor.d.ts +1 -1
- package/dist/src/doctor.d.ts.map +1 -1
- package/dist/src/doctor.js +192 -91
- package/dist/src/doctor.js.map +1 -1
- package/dist/src/error-message.d.ts +3 -0
- package/dist/src/error-message.d.ts.map +1 -0
- package/dist/src/error-message.js +20 -0
- package/dist/src/error-message.js.map +1 -0
- package/dist/src/hooks-config.d.ts +3 -0
- package/dist/src/hooks-config.d.ts.map +1 -0
- package/dist/src/hooks-config.js +23 -0
- package/dist/src/hooks-config.js.map +1 -0
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/package.json +23 -20
- package/src/atomic-output.ts +47 -0
- package/src/cli.ts +345 -171
- package/src/commands.ts +2 -2
- package/src/dispatch.ts +10 -3
- package/src/doctor.ts +207 -100
- package/src/error-message.ts +13 -0
- package/src/hooks-config.ts +22 -0
- package/src/index.ts +1 -1
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import type { Store } from '@cavelang/store';
|
|
2
|
+
import * as Source from './source.ts';
|
|
3
|
+
import * as Template from './template.ts';
|
|
4
|
+
import type { Report } from './run.ts';
|
|
5
|
+
/** Entity prefix of source declarations and policy (spec §26.3). */
|
|
6
|
+
export declare const prefix = "source/";
|
|
7
|
+
/** The declaration attributes, one per `cave connect` option. */
|
|
8
|
+
export declare const attributes: readonly ["path", "map", "key", "format", "delimiter", "table", "sql", "records"];
|
|
9
|
+
export type Attribute = typeof attributes[number];
|
|
10
|
+
export type Declared = {
|
|
11
|
+
/** The entity name after `source/`. */
|
|
12
|
+
readonly name: string;
|
|
13
|
+
/** File path (relative to the store's directory) or URL. */
|
|
14
|
+
readonly path: string;
|
|
15
|
+
/** Mapping template path, or an inline template (`?name IS person, …`); a `.cave` source needs none. */
|
|
16
|
+
readonly map?: string;
|
|
17
|
+
readonly key?: string;
|
|
18
|
+
/** `csv | tsv | json | jsonl | sqlite`, or `cave`; by extension when omitted. */
|
|
19
|
+
readonly format?: string;
|
|
20
|
+
readonly delimiter?: string;
|
|
21
|
+
readonly table?: string;
|
|
22
|
+
readonly sql?: string;
|
|
23
|
+
readonly records?: string;
|
|
24
|
+
};
|
|
25
|
+
export type t = Declared;
|
|
26
|
+
/** A source's declaration attributes as one text carries them — possibly partial, a delta over what the store knows. */
|
|
27
|
+
export type Delta = {
|
|
28
|
+
readonly name: string;
|
|
29
|
+
readonly fields: Partial<Record<Attribute, string>>;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* A stored attribute value as declared: the store keeps a literal's
|
|
33
|
+
* delimiters (`"SELECT …"`, `` `?name IS person, …` ``), and a path, a
|
|
34
|
+
* query, or an inline mapping is the text inside them.
|
|
35
|
+
*/
|
|
36
|
+
export declare const unwrap: (value: string) => string;
|
|
37
|
+
/** Every `source/<name>` attribute claim current in the store, grouped by source — complete or not. */
|
|
38
|
+
export declare const deltasOf: (store: Store) => Delta[];
|
|
39
|
+
/** A delta applied over a known declaration; a source without a `path` is not declared. */
|
|
40
|
+
export declare const merge: (known: undefined | Declared, delta: Delta) => undefined | Declared;
|
|
41
|
+
/**
|
|
42
|
+
* The store's declared sources: every `source/<name>` whose current belief
|
|
43
|
+
* carries a positive `path`, with the other declaration attributes that
|
|
44
|
+
* are current alongside it. Retracting a `path` (`… @ 0%`) removes that
|
|
45
|
+
* series; the source disappears only when no positive path series remains.
|
|
46
|
+
* Superseding the newest positive path moves it.
|
|
47
|
+
*/
|
|
48
|
+
export declare const declaredSources: (store: Store) => Declared[];
|
|
49
|
+
/**
|
|
50
|
+
* The sources a CAVE text declares, read without touching any store: the
|
|
51
|
+
* text is replayed into a scratch in-memory store. This is how an overlay
|
|
52
|
+
* or a dry run discovers what a followed `.cave` source declares in turn,
|
|
53
|
+
* before anything is appended.
|
|
54
|
+
*/
|
|
55
|
+
export declare const declaredIn: (text: string) => Declared[];
|
|
56
|
+
/**
|
|
57
|
+
* Every source declaration attribute a CAVE text carries, complete or
|
|
58
|
+
* partial: a followed `.cave` source may change just the map or key of a
|
|
59
|
+
* source the store already declares, and that delta must reach whatever
|
|
60
|
+
* reads declarations without appending (`discover`, `--name`).
|
|
61
|
+
*/
|
|
62
|
+
export declare const declarationsIn: (text: string) => Delta[];
|
|
63
|
+
/** Where a declared path points: URLs as they are, files against the store's directory. */
|
|
64
|
+
export declare const resolvePath: (path: string, dir: string) => string;
|
|
65
|
+
/** A mapping-free CAVE text source: the file is its own template (all prelude). */
|
|
66
|
+
export declare const isCave: (declared: Declared) => boolean;
|
|
67
|
+
/** The declaration as the equivalent `cave connect` invocation, for listings. */
|
|
68
|
+
export declare const describe: (declared: Declared) => string;
|
|
69
|
+
/** The store directory a root path implies: the file's directory, or the working directory for `:memory:`. */
|
|
70
|
+
export declare const directoryOf: (root: string) => string;
|
|
71
|
+
/** The declaration's content, for change detection between passes of one run. */
|
|
72
|
+
export declare const signature: (declared: Declared) => string;
|
|
73
|
+
/** Bookkeeping attribute recording which declaration a source was last run under. */
|
|
74
|
+
export declare const declarationAttribute = "connect-declaration";
|
|
75
|
+
/** Digest of a declaration — what a run records, and what `followed` compares. */
|
|
76
|
+
export declare const declarationDigest: (declared: Declared) => string;
|
|
77
|
+
/**
|
|
78
|
+
* @returns `true` when the store followed the source under exactly this
|
|
79
|
+
* declaration: every run records the declaration's digest on the source
|
|
80
|
+
* entity (`source/<name> HAS connect-declaration: …`), so a source
|
|
81
|
+
* re-declared since — a local file that became a URL, say — is not
|
|
82
|
+
* followed, whatever digests its earlier version left behind.
|
|
83
|
+
*/
|
|
84
|
+
export declare const followed: (store: Store, declared: Declared) => boolean;
|
|
85
|
+
/** A selection and everything it owns, transitively — what a named watch must watch. */
|
|
86
|
+
export declare const closure: (store: Store, names: readonly string[]) => Declared[];
|
|
87
|
+
/** A declared source loaded and ready for a pass. */
|
|
88
|
+
export type Prepared = {
|
|
89
|
+
readonly declared: Declared;
|
|
90
|
+
readonly mapping: Template.Mapping;
|
|
91
|
+
readonly records: readonly Record<string, unknown>[];
|
|
92
|
+
readonly spans?: NonNullable<Source.Loaded['spans']>;
|
|
93
|
+
/** The path or URL the records came from, as declared — portable in `@src:` spans. */
|
|
94
|
+
readonly source?: string;
|
|
95
|
+
readonly cave: boolean;
|
|
96
|
+
};
|
|
97
|
+
/** Loads a declared source synchronously — local files only (`assemble`); a URL is refused. */
|
|
98
|
+
export declare const prepareSync: (declared: Declared, dir: string) => Prepared;
|
|
99
|
+
/** Loads a declared source, URLs included — a `.cave` URL is fetched and parsed as the template (`cave connect`). */
|
|
100
|
+
export declare const prepare: (declared: Declared, dir: string, fetchImpl?: Source.FetchLike, signal?: AbortSignal) => Promise<Prepared>;
|
|
101
|
+
export type DiscoverOptions = {
|
|
102
|
+
readonly signal?: AbortSignal;
|
|
103
|
+
readonly fetchImpl?: Source.FetchLike;
|
|
104
|
+
/** Only this declared source (and what it declares in turn). */
|
|
105
|
+
readonly only?: string;
|
|
106
|
+
/** Simulate a `--force` pass: every followed text is applied, digest or not. */
|
|
107
|
+
readonly force?: boolean;
|
|
108
|
+
/** Simulate a `--prune` pass: records that left a source retract, declarations they made included. */
|
|
109
|
+
readonly prune?: boolean;
|
|
110
|
+
/**
|
|
111
|
+
* Skip sources the store has already followed (they carry a digest claim)
|
|
112
|
+
* — what a text store's overlay needs: assembly followed every local
|
|
113
|
+
* source on open, so only the URL ones, and what they declare, are left.
|
|
114
|
+
*/
|
|
115
|
+
readonly skipFollowed?: boolean;
|
|
116
|
+
};
|
|
117
|
+
/** Counts a source's declaration versions within one pass and refuses a cycle. */
|
|
118
|
+
export declare const versionCounter: () => (name: string) => void;
|
|
119
|
+
/**
|
|
120
|
+
* Loads every declared source of the store without leaving anything in
|
|
121
|
+
* it, URLs included, and returns the exact sequence a pass would run —
|
|
122
|
+
* a source re-declared along the way appears again, later. Nothing is
|
|
123
|
+
* simulated: the sources run through the real pass against a private
|
|
124
|
+
* snapshot of the store, each exactly once as it is discovered, and the
|
|
125
|
+
* declarations are read from that copy as they stand after each run; so
|
|
126
|
+
* precedence, deltas, retractions, and what an unchanged source skips
|
|
127
|
+
* come out exactly as in the pass, and the real database holds no lock
|
|
128
|
+
* while sources load. `force` replays every text (the overlay applies
|
|
129
|
+
* everything it loads); `prune` retracts what vanished records declared.
|
|
130
|
+
*/
|
|
131
|
+
export declare const discover: (origin: Store, root: string, options?: DiscoverOptions) => Promise<Prepared[]>;
|
|
132
|
+
/** A discovery's run sequence with the declaration state it started from — what an overlay must still see before replaying. */
|
|
133
|
+
export type Discovery = {
|
|
134
|
+
readonly sequence: Prepared[];
|
|
135
|
+
readonly baseline: ReadonlyMap<string, string>;
|
|
136
|
+
};
|
|
137
|
+
/**
|
|
138
|
+
* The declaration state an overlay depends on: the current row of every
|
|
139
|
+
* `source/…` claim key — effective declarations, shadowed series, partial
|
|
140
|
+
* deltas, bookkeeping, and the provenance ownership follows — keyed by
|
|
141
|
+
* claim key. Any change a writer makes to those inputs, even one that
|
|
142
|
+
* leaves every effective declaration and owner the same, changes it.
|
|
143
|
+
*/
|
|
144
|
+
export declare const declarationState: (store: Store) => Map<string, string>;
|
|
145
|
+
/** Compare keyed declaration signatures or claim-row identities without ignoring ownership changes. */
|
|
146
|
+
export declare const sameDeclarations: (a: ReadonlyMap<string, string>, b: ReadonlyMap<string, string>) => boolean;
|
|
147
|
+
/** How many times an overlay rediscovers when the declarations changed underneath it. */
|
|
148
|
+
export declare const overlayAttempts = 3;
|
|
149
|
+
export declare const staleOverlay: () => Error;
|
|
150
|
+
/** `discover`, also returning the declarations the snapshot started from. */
|
|
151
|
+
export declare const discovery: (origin: Store, root: string, options?: DiscoverOptions) => Promise<Discovery>;
|
|
152
|
+
/**
|
|
153
|
+
* Names of the sources whose current declaration claims a followed source
|
|
154
|
+
* owns — appended under its run — so a selection keeps a source's
|
|
155
|
+
* descendants even when its run changed nothing.
|
|
156
|
+
*/
|
|
157
|
+
export declare const ownedDeclarations: (store: Store, owner: string) => string[];
|
|
158
|
+
/**
|
|
159
|
+
* Who owns which declarations, in one pass over the current declaration
|
|
160
|
+
* rows: the prelude runs as `<owner>`, a record as `<owner>/<key>`, so a
|
|
161
|
+
* mapping that emits declarations per record owns them through its
|
|
162
|
+
* records.
|
|
163
|
+
*/
|
|
164
|
+
export declare const ownership: (store: Store) => Map<string, Set<string>>;
|
|
165
|
+
/** Declaration signatures by name. */
|
|
166
|
+
export declare const signatures: (declared: readonly Declared[]) => Map<string, string>;
|
|
167
|
+
/** Names whose declaration was added, changed, or removed between two snapshots. */
|
|
168
|
+
export declare const changedNames: (before: ReadonlyMap<string, string>, after: ReadonlyMap<string, string>) => string[];
|
|
169
|
+
export type RunOptions = {
|
|
170
|
+
readonly force?: boolean;
|
|
171
|
+
readonly prune?: boolean;
|
|
172
|
+
};
|
|
173
|
+
/** The digest of the declaration a source was last run under, if any. */
|
|
174
|
+
export declare const recordedDeclaration: (store: Store, name: string) => undefined | string;
|
|
175
|
+
/**
|
|
176
|
+
* One pass of a prepared declared source under `declaredNaming` (spec
|
|
177
|
+
* §23.4), recording the declaration it ran under. A source whose
|
|
178
|
+
* declaration changed since its last run — another path, key, query, or
|
|
179
|
+
* record selector — prunes as it runs: records the new version does not
|
|
180
|
+
* produce are retired, since the per-record diff never visits them. A
|
|
181
|
+
* source that was followed without a recorded declaration (digests, no
|
|
182
|
+
* marker) is treated as changed, conservatively.
|
|
183
|
+
*/
|
|
184
|
+
export declare const run: (store: Store, ready: Prepared, options?: RunOptions) => Report;
|
|
185
|
+
export type Assembled = {
|
|
186
|
+
readonly declared: Declared;
|
|
187
|
+
readonly report: Report;
|
|
188
|
+
};
|
|
189
|
+
/**
|
|
190
|
+
* Follows every declared source of the store, the ones the followed
|
|
191
|
+
* sources declare in turn included, until none is left. `root` is the
|
|
192
|
+
* store's own file (or `:memory:`): paths resolve against its directory
|
|
193
|
+
* and the root file itself is never re-read as a source, so a file that
|
|
194
|
+
* declares itself, directly or through a cycle, is loaded exactly once —
|
|
195
|
+
* one file under several names, with different mappings say, is followed
|
|
196
|
+
* under each. URL sources are skipped, not errors: fetching cannot be
|
|
197
|
+
* synchronous, and `cave connect` follows them. Other failures are
|
|
198
|
+
* `LocateError`s — the store is incomplete without its sources, exactly
|
|
199
|
+
* as with a text file that does not parse.
|
|
200
|
+
*/
|
|
201
|
+
export declare const assemble: (store: Store, root: string, options?: {
|
|
202
|
+
readonly force?: boolean;
|
|
203
|
+
}) => Assembled[];
|
|
204
|
+
//# sourceMappingURL=declared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"declared.d.ts","sourceRoot":"","sources":["../../src/declared.ts"],"names":[],"mappings":"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"}
|