@cavelang/cli 0.34.0 → 0.35.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 +2 -2
- package/dist/internal/automate/main.d.ts.map +1 -1
- package/dist/internal/automate/main.js +2 -0
- package/dist/internal/automate/main.js.map +1 -1
- package/dist/internal/connect/declared.d.ts +225 -0
- package/dist/internal/connect/declared.d.ts.map +1 -0
- package/dist/internal/connect/declared.js +521 -0
- package/dist/internal/connect/declared.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.map +1 -1
- package/dist/internal/connect/main.js +352 -10
- package/dist/internal/connect/main.js.map +1 -1
- package/dist/internal/connect/run.d.ts +47 -1
- package/dist/internal/connect/run.d.ts.map +1 -1
- package/dist/internal/connect/run.js +81 -33
- package/dist/internal/connect/run.js.map +1 -1
- package/dist/internal/connect/source.d.ts +33 -2
- package/dist/internal/connect/source.d.ts.map +1 -1
- package/dist/internal/connect/source.js +168 -8
- package/dist/internal/connect/source.js.map +1 -1
- package/dist/internal/connect/template.d.ts +18 -0
- package/dist/internal/connect/template.d.ts.map +1 -1
- package/dist/internal/connect/template.js +28 -0
- package/dist/internal/connect/template.js.map +1 -1
- package/dist/internal/ingest/main.d.ts.map +1 -1
- package/dist/internal/ingest/main.js +2 -1
- package/dist/internal/ingest/main.js.map +1 -1
- package/dist/internal/mcp/main.d.ts.map +1 -1
- package/dist/internal/mcp/main.js +2 -0
- package/dist/internal/mcp/main.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/view/main.d.ts.map +1 -1
- package/dist/internal/view/main.js +2 -1
- package/dist/internal/view/main.js.map +1 -1
- package/dist/src/cli.d.ts +14 -0
- package/dist/src/cli.d.ts.map +1 -1
- package/dist/src/cli.js +161 -38
- 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 +7 -1
- 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 +26 -1
- package/dist/src/doctor.js.map +1 -1
- 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 +19 -19
- package/src/cli.ts +187 -36
- package/src/commands.ts +2 -2
- package/src/dispatch.ts +7 -1
- package/src/doctor.ts +28 -2
- package/src/index.ts +1 -1
package/README.md
CHANGED
|
@@ -103,7 +103,7 @@ is reported. Unexpected errors are one-line and stack-free by default; set
|
|
|
103
103
|
| `highlight [file…]` | | ANSI syntax colors from the tree-sitter grammar's own highlight query (see [`@cavelang/highlight`](../highlight)); `cave export` colors the same way on a terminal. |
|
|
104
104
|
| `add [--db p] [file…]` | `--strict`, `--check`, `--no-prelude`, `--no-src` | Ingest. Lenient by default (problems on stderr, valid lines land); `--strict` rolls back on any problem; `--check` is the shape gate (spec §20.3) — the append rolls back if it introduces new expectation violations; `--no-prelude` starts from an empty registry instead of the standard §5.5 pairs. Claims without a `@src:` context are stamped `@src:cli` (spec §9.5); `--no-src` opts out. |
|
|
105
105
|
| `import [--db p] [file…]` | `--strict`, `--no-prelude` | Restore/merge a database from CAVE text — `add` minus provenance stamping, because canonical text *is* the interchange format and replayed claims must keep their exported claim keys (spec §9.5). |
|
|
106
|
-
| `query [--db p] <pattern…>` | `--json`, `--limit <n>`, `--cursor <t>`, `--all`, `--aliases`, `--as-of <t>`, `--at <t>`, `--resolve`, `--no-prelude` | Bounded CAVE-Q page (100 matches by default, maximum 1,000). Extra positionals join as lines, so `WHERE` filters ride as separate arguments. Bindings print as `?x = value`, followed by ` ; comment` when the matched claim carries one (a multi-line comment opens as `;` lines above the binding line, as it does above a claim), so evidence written next to a claim travels with the answer; fully bound patterns print the matched raw line, comment block included (or the pattern itself for transitive matches, which carry no row). Human output ends with `next: <token>` when another page exists; pass it to `--cursor` to continue the first page's frozen transaction snapshot. `--aliases` widens matching through the §13.6 closure; `--as-of <t>` reconstructs belief at a past date/timestamp/tx (spec §12.3); `--at <t>` selects valid-time claims and interpolates trajectories (spec §32.4); `--resolve` matches only the winners the §26 resolution policy picks among contested facts (incompatible with `--all`). `--no-prelude` aligns the read-time registry with a store written via `add --no-prelude`. |
|
|
106
|
+
| `query [--db p] <pattern…>` | `--json`, `--limit <n>`, `--cursor <t>`, `--all`, `--aliases`, `--as-of <t>`, `--at <t>`, `--resolve`, `--sources`, `--no-prelude` | Bounded CAVE-Q page (100 matches by default, maximum 1,000). Extra positionals join as lines, so `WHERE` filters ride as separate arguments. Bindings print as `?x = value`, followed by ` ; comment` when the matched claim carries one (a multi-line comment opens as `;` lines above the binding line, as it does above a claim), so evidence written next to a claim travels with the answer; fully bound patterns print the matched raw line, comment block included (or the pattern itself for transitive matches, which carry no row). Human output ends with `next: <token>` when another page exists; pass it to `--cursor` to continue the first page's frozen transaction snapshot. `--aliases` widens matching through the §13.6 closure; `--as-of <t>` reconstructs belief at a past date/timestamp/tx (spec §12.3); `--at <t>` selects valid-time claims and interpolates trajectories (spec §32.4); `--resolve` matches only the winners the §26 resolution policy picks among contested facts (incompatible with `--all`). `--sources` overlays the store's declared sources (spec §23.4) inside a rolled-back transaction — federation-lite, nothing persists, URLs included; the answer is whole (no `--cursor`), and a text store, which followed its local sources on open, loads only its URL sources here. `--no-prelude` aligns the read-time registry with a store written via `add --no-prelude`. |
|
|
107
107
|
| `search [--db p] <terms…>` | `--raw`, `--limit <n>`, `--json`, `--no-prelude` | FTS5 full-text search over the store's index (spec §13.2): subject, verb, object, attribute name, value text, comment, and the raw line as written, so tags, contexts, and inverse spellings match too. The terms are one literal phrase by default (hyphenated names such as `token-expiry` are safe); `--raw` passes FTS5 MATCH syntax through (`AND`/`OR`/`NOT`, `NEAR`, `prefix*`, column filters such as `comment:heap`). Newest first, one raw line per match with its comment; `--limit` defaults to 100 (maximum 1,000) and a trailing `more matches beyond <n>` line reports a cap. `--json` emits a `cave.search/v1` object whose matches are `cave.claim/v1` records. Superseded and retracted rows stay searchable (spec §9.6); confirm currency with `query`. |
|
|
108
108
|
| `resolve [--db p]` | `--aliases`, `--policy`, `--json`, `--no-prelude` | Contested facts under the §26 resolution policy: every fact more than one belief series speaks about, candidates ranked (precedence class, reliability-weighted confidence, tx) with the winner first — what `query --resolve` would match. `--policy` prints the effective policy instead: the built-in precedence ladder merged with in-band `source/<name> HAS precedence:` / `HAS reliability:` declarations. |
|
|
109
109
|
| `derive [--db p] [rules.cave…]` | `--dry-run`, `--full`, `--aliases`, `--min-conf <p>`, `--max-passes <n>`, `--list`, `--retract <r>`, `--json`, `--no-prelude` | Declare and fire rules (spec §24, see [`@cavelang/rules`](../rules)): `premises => conclusion` forward chaining over current beliefs, `BECAUSE`/`VIA` lineage, watermark-incremental and idempotent; retracts conclusions whose premises no longer hold. |
|
|
@@ -121,7 +121,7 @@ is reported. Unexpected errors are one-line and stack-free by default; set
|
|
|
121
121
|
| `mcp [--db p]` | `--read-only`, `--permissions <list>`, `--tools <list>`, `--hooks <file>`, `--no-prelude`, `--src <ctx>`, `--no-src` | Serve the engine as an MCP server on stdio (see [`@cavelang/mcp`](../mcp)) — static tools for version-matched help plus add/query/fuse/search/about/neighbors/reconstruct/derive/export/lint, and one generated `act_<name>` tool per current action. Permission classes separate `read`, ephemeral `evaluate`, durable `record`, and effect-capable `action`; `--read-only` keeps only read/evaluate. Permission, tool, and read-only scopes intersect. `--hooks` supplies reviewed out-of-band commands for action tools. Appends are stamped `@src:agent/<client-name>` (spec §9.5); `--src` replaces the stamp, `--no-src` disables it. |
|
|
122
122
|
| `ingest [--db p] <globs/urls…>` | `--agent <template>`, `--stdout`, `--lenient`, `--plan`, `--dry-run`, `--json`, `--no-prelude` | LLM-driven ingestion of files and web pages (fetched and readability-extracted) through any headless agent (see [`@cavelang/ingest`](../ingest)): strict atomic staging by default; explicit lenient partial progress with a complete per-source manifest; isolated URL outcomes classified as retryable network/HTTP or permanent HTTP failures; batching, hybrid context, MCP or stdout agents, incremental retry digests, and `--plan` NDJSON for SDK drivers. |
|
|
123
123
|
| `eval <suite…>` | `--agent <template>`, `--judge <template>`, `--runs <n>`, `--stdout`, `--min <p>`, `--json`, `--no-prelude` | Golden-fixture extraction/query evals (see [`@cavelang/eval`](../eval)): N fresh-store runs against any agent, claim-key + value scoring with §9.5 actor-stamp normalization, CAVE-Q expectations, optional LLM judge, `--min` CI gate. |
|
|
124
|
-
| `connect <source
|
|
124
|
+
| `connect [<source>]` | `--map <file\|inline>`, `--key <field>`, `--sql <query>`, `--watch`, `--prune`, `--query <pattern>`, `--dry-run`, `--list`, `--no-prelude` | Deterministic structured ingestion (spec §9.8, §23, see [`@cavelang/connect`](../connect)): CSV/TSV/JSON/JSONL/SQLite/URL records through `?field` templates (a file, or inline as a comma-separated list of claim lines), `--sql` reshaping any tabular source through a temporary SQLite table first, physical source identity and CSV/TSV/JSONL line spans, per-record digests, `--watch`, `--prune`, query-time overlay. Without a source, the store's declared sources run (spec §23.4): `source/<name> HAS path: …` claims with `map`, `key`, `format`, `delimiter`, `table`, `sql`, and `records` attributes mirror the options, a `.cave` path needs no map, and paths resolve against the store's directory; `--list` prints them, `--name` selects one, `--query` overlays them all, `--watch` re-runs on any of their files. A CAVE text file used as `--db` follows its declared sources on every open. |
|
|
125
125
|
| `reconstruct [--db p] <seed…>` | `--query <text>`, `--agent <template>`, `--steps <n>`, `--claims <n>`, `--timeout <s>`, `--trace`, `--no-prelude` | Active memory reconstruction from seed cues (spec §18, see [`@cavelang/loop`](../loop)): best-first traversal collecting related claims as canonical CAVE text; the heuristic policy by default, an LLM select/stop policy with `--agent`. |
|
|
126
126
|
| `doctor [--db p]` | `--hooks <file>`, `--json` | Read-only runtime, package-layout, configuration, and store-health diagnostics. Missing optional configuration is advisory; unsupported runtimes, broken assets, malformed configured hooks, and unreadable or corrupt stores fail. Reports identify configuration sources but never expose paths, hook content, URLs, or environment values, so both human and `cave.doctor/v1` JSON output are safe to share. |
|
|
127
127
|
| `demo` | | The cave-loop multi-hop recovery demo (§18). |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAG5C,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AA0E9D,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,cAAc,CAAA;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAA;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAA;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAC9B,CAAA;AAoFD;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,EACZ,SAAS,aAAa,EACtB,UAAU,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,KACvC,OAAO,CAAC,IAAI,GAAG,MAAM,CAQvB,CAAA;AAuCD,eAAO,MAAM,WAAW,GAAU,MAAM,SAAS,MAAM,EAAE,EAAE,UAAS,UAAe,KAAG,OAAO,CAAC,MAAM,CAoHnG,CAAA"}
|
|
@@ -8,6 +8,7 @@ import { parseArgs } from 'node:util';
|
|
|
8
8
|
import { Registry } from '@cavelang/canonical';
|
|
9
9
|
import { shellComplete } from '@cavelang/cli/loop';
|
|
10
10
|
import { defaultDbPath, openAt } from '@cavelang/store';
|
|
11
|
+
import { assemble } from '@cavelang/cli/connect';
|
|
11
12
|
import { declareAutomations, listAutomations, retractAutomation } from "./declare.js";
|
|
12
13
|
import { defaultAgentTimeoutSeconds, defaultMaxPasses, settle, settled } from "./engine.js";
|
|
13
14
|
const usage = `cave automate — the event-driven loop (spec §29)
|
|
@@ -237,6 +238,7 @@ export const runAutomate = async (argv, context = {}) => {
|
|
|
237
238
|
// listing is considered.
|
|
238
239
|
const store = openAt(values.db ?? defaultDbPath(), {
|
|
239
240
|
intent: values.declare === true ? 'write' : values.list === true ? 'read' : 'write',
|
|
241
|
+
assemble,
|
|
240
242
|
...values['no-prelude'] === true ? { registry: Registry.empty } : {}
|
|
241
243
|
});
|
|
242
244
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Declared sources (spec §23.4) — a `cave connect` invocation persisted
|
|
3
|
+
* in-band as ordinary attribute claims on a `source/<name>` entity:
|
|
4
|
+
*
|
|
5
|
+
* ```cave
|
|
6
|
+
* source/people HAS path: people.csv
|
|
7
|
+
* source/people HAS map: people.map.cave
|
|
8
|
+
* source/people HAS key: id
|
|
9
|
+
* source/verbs HAS path: verbs.cave ; a .cave file needs no map
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* The entity is the one §26.3 already uses for source policy, so
|
|
13
|
+
* `source/people HAS reliability: 80%` applies to what the source yields:
|
|
14
|
+
* declared sources stamp `@src:<name>/<key>` and keep their digests under
|
|
15
|
+
* `source/<name>/<key>` (`declaredNaming`), the stamp and the entity
|
|
16
|
+
* mirroring each other. Paths resolve against the store's directory — a
|
|
17
|
+
* store and its sources travel together — never the working directory.
|
|
18
|
+
*
|
|
19
|
+
* `assemble` follows every declared source of a store synchronously, which
|
|
20
|
+
* is what a CAVE text file used as `--db` needs (spec §13.7): the file and
|
|
21
|
+
* what it declares are one store. `cave connect` with no source runs the
|
|
22
|
+
* same declarations against a SQLite store, URLs included.
|
|
23
|
+
*/
|
|
24
|
+
import type { Store } from '@cavelang/store';
|
|
25
|
+
import * as Source from './source.ts';
|
|
26
|
+
import * as Template from './template.ts';
|
|
27
|
+
import type { Report } from './run.ts';
|
|
28
|
+
/** Entity prefix of source declarations and policy (spec §26.3). */
|
|
29
|
+
export declare const prefix = "source/";
|
|
30
|
+
/** The declaration attributes, one per `cave connect` option. */
|
|
31
|
+
export declare const attributes: readonly ["path", "map", "key", "format", "delimiter", "table", "sql", "records"];
|
|
32
|
+
export type Attribute = typeof attributes[number];
|
|
33
|
+
export type Declared = {
|
|
34
|
+
/** The entity name after `source/`. */
|
|
35
|
+
readonly name: string;
|
|
36
|
+
/** File path (relative to the store's directory) or URL. */
|
|
37
|
+
readonly path: string;
|
|
38
|
+
/** Mapping template path, or an inline template (`?name IS person, …`); a `.cave` source needs none. */
|
|
39
|
+
readonly map?: string;
|
|
40
|
+
readonly key?: string;
|
|
41
|
+
/** `csv | tsv | json | jsonl | sqlite`, or `cave`; by extension when omitted. */
|
|
42
|
+
readonly format?: string;
|
|
43
|
+
readonly delimiter?: string;
|
|
44
|
+
readonly table?: string;
|
|
45
|
+
readonly sql?: string;
|
|
46
|
+
readonly records?: string;
|
|
47
|
+
};
|
|
48
|
+
export type t = Declared;
|
|
49
|
+
/** A source's declaration attributes as one text carries them — possibly partial, a delta over what the store knows. */
|
|
50
|
+
export type Delta = {
|
|
51
|
+
readonly name: string;
|
|
52
|
+
readonly fields: Partial<Record<Attribute, string>>;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* A stored attribute value as declared: the store keeps a literal's
|
|
56
|
+
* delimiters (`"SELECT …"`, `` `?name IS person, …` ``), and a path, a
|
|
57
|
+
* query, or an inline mapping is the text inside them.
|
|
58
|
+
*/
|
|
59
|
+
export declare const unwrap: (value: string) => string;
|
|
60
|
+
/** Every `source/<name>` attribute claim current in the store, grouped by source — complete or not. */
|
|
61
|
+
export declare const deltasOf: (store: Store) => Delta[];
|
|
62
|
+
/** A delta applied over a known declaration; a source without a `path` is not declared. */
|
|
63
|
+
export declare const merge: (known: undefined | Declared, delta: Delta) => undefined | Declared;
|
|
64
|
+
/**
|
|
65
|
+
* The store's declared sources: every `source/<name>` whose current belief
|
|
66
|
+
* carries a positive `path`, with the other declaration attributes that
|
|
67
|
+
* are current alongside it. Retracting the `path` (`… @ 0%`) removes the
|
|
68
|
+
* source; superseding it moves it.
|
|
69
|
+
*/
|
|
70
|
+
export declare const declaredSources: (store: Store) => Declared[];
|
|
71
|
+
/**
|
|
72
|
+
* The sources a CAVE text declares, read without touching any store: the
|
|
73
|
+
* text is replayed into a scratch in-memory store. This is how an overlay
|
|
74
|
+
* or a dry run discovers what a followed `.cave` source declares in turn,
|
|
75
|
+
* before anything is appended.
|
|
76
|
+
*/
|
|
77
|
+
export declare const declaredIn: (text: string) => Declared[];
|
|
78
|
+
/**
|
|
79
|
+
* Every source declaration attribute a CAVE text carries, complete or
|
|
80
|
+
* partial: a followed `.cave` source may change just the map or key of a
|
|
81
|
+
* source the store already declares, and that delta must reach whatever
|
|
82
|
+
* reads declarations without appending (`discover`, `--name`).
|
|
83
|
+
*/
|
|
84
|
+
export declare const declarationsIn: (text: string) => Delta[];
|
|
85
|
+
/** Where a declared path points: URLs as they are, files against the store's directory. */
|
|
86
|
+
export declare const resolvePath: (path: string, dir: string) => string;
|
|
87
|
+
/** A mapping-free CAVE text source: the file is its own template (all prelude). */
|
|
88
|
+
export declare const isCave: (declared: Declared) => boolean;
|
|
89
|
+
/** The declaration as the equivalent `cave connect` invocation, for listings. */
|
|
90
|
+
export declare const describe: (declared: Declared) => string;
|
|
91
|
+
/** The store directory a root path implies: the file's directory, or the working directory for `:memory:`. */
|
|
92
|
+
export declare const directoryOf: (root: string) => string;
|
|
93
|
+
/** The declaration's content, for change detection between passes of one run. */
|
|
94
|
+
export declare const signature: (declared: Declared) => string;
|
|
95
|
+
/** Bookkeeping attribute recording which declaration a source was last run under. */
|
|
96
|
+
export declare const declarationAttribute = "connect-declaration";
|
|
97
|
+
/** Digest of a declaration — what a run records, and what `followed` compares. */
|
|
98
|
+
export declare const declarationDigest: (declared: Declared) => string;
|
|
99
|
+
/**
|
|
100
|
+
* @returns `true` when the store followed the source under exactly this
|
|
101
|
+
* declaration: every run records the declaration's digest on the source
|
|
102
|
+
* entity (`source/<name> HAS connect-declaration: …`), so a source
|
|
103
|
+
* re-declared since — a local file that became a URL, say — is not
|
|
104
|
+
* followed, whatever digests its earlier version left behind.
|
|
105
|
+
*/
|
|
106
|
+
export declare const followed: (store: Store, declared: Declared) => boolean;
|
|
107
|
+
/** A selection and everything it owns, transitively — what a named watch must watch. */
|
|
108
|
+
export declare const closure: (store: Store, names: readonly string[]) => Declared[];
|
|
109
|
+
/** A declared source loaded and ready for a pass. */
|
|
110
|
+
export type Prepared = {
|
|
111
|
+
readonly declared: Declared;
|
|
112
|
+
readonly mapping: Template.Mapping;
|
|
113
|
+
readonly records: readonly Record<string, unknown>[];
|
|
114
|
+
readonly spans?: NonNullable<Source.Loaded['spans']>;
|
|
115
|
+
/** The path or URL the records came from, as declared — portable in `@src:` spans. */
|
|
116
|
+
readonly source?: string;
|
|
117
|
+
readonly cave: boolean;
|
|
118
|
+
};
|
|
119
|
+
/** Loads a declared source synchronously — local files only (`assemble`); a URL is refused. */
|
|
120
|
+
export declare const prepareSync: (declared: Declared, dir: string) => Prepared;
|
|
121
|
+
/** Loads a declared source, URLs included — a `.cave` URL is fetched and parsed as the template (`cave connect`). */
|
|
122
|
+
export declare const prepare: (declared: Declared, dir: string, fetchImpl?: Source.FetchLike) => Promise<Prepared>;
|
|
123
|
+
export type DiscoverOptions = {
|
|
124
|
+
readonly fetchImpl?: Source.FetchLike;
|
|
125
|
+
/** Only this declared source (and what it declares in turn). */
|
|
126
|
+
readonly only?: string;
|
|
127
|
+
/** Simulate a `--force` pass: every followed text is applied, digest or not. */
|
|
128
|
+
readonly force?: boolean;
|
|
129
|
+
/** Simulate a `--prune` pass: records that left a source retract, declarations they made included. */
|
|
130
|
+
readonly prune?: boolean;
|
|
131
|
+
/**
|
|
132
|
+
* Skip sources the store has already followed (they carry a digest claim)
|
|
133
|
+
* — what a text store's overlay needs: assembly followed every local
|
|
134
|
+
* source on open, so only the URL ones, and what they declare, are left.
|
|
135
|
+
*/
|
|
136
|
+
readonly skipFollowed?: boolean;
|
|
137
|
+
};
|
|
138
|
+
/** Counts a source's declaration versions within one pass and refuses a cycle. */
|
|
139
|
+
export declare const versionCounter: () => (name: string) => void;
|
|
140
|
+
/**
|
|
141
|
+
* Loads every declared source of the store without leaving anything in
|
|
142
|
+
* it, URLs included, and returns the exact sequence a pass would run —
|
|
143
|
+
* a source re-declared along the way appears again, later. Nothing is
|
|
144
|
+
* simulated: the sources run through the real pass against a private
|
|
145
|
+
* snapshot of the store, each exactly once as it is discovered, and the
|
|
146
|
+
* declarations are read from that copy as they stand after each run; so
|
|
147
|
+
* precedence, deltas, retractions, and what an unchanged source skips
|
|
148
|
+
* come out exactly as in the pass, and the real database holds no lock
|
|
149
|
+
* while sources load. `force` replays every text (the overlay applies
|
|
150
|
+
* everything it loads); `prune` retracts what vanished records declared.
|
|
151
|
+
*/
|
|
152
|
+
export declare const discover: (origin: Store, root: string, options?: DiscoverOptions) => Promise<Prepared[]>;
|
|
153
|
+
/** A discovery's run sequence with the declaration state it started from — what an overlay must still see before replaying. */
|
|
154
|
+
export type Discovery = {
|
|
155
|
+
readonly sequence: Prepared[];
|
|
156
|
+
readonly baseline: ReadonlyMap<string, string>;
|
|
157
|
+
};
|
|
158
|
+
/**
|
|
159
|
+
* The declaration state an overlay depends on: the current row of every
|
|
160
|
+
* `source/…` claim key — effective declarations, shadowed series, partial
|
|
161
|
+
* deltas, bookkeeping, and the provenance ownership follows — keyed by
|
|
162
|
+
* claim key. Any change a writer makes to those inputs, even one that
|
|
163
|
+
* leaves every effective declaration and owner the same, changes it.
|
|
164
|
+
*/
|
|
165
|
+
export declare const declarationState: (store: Store) => Map<string, string>;
|
|
166
|
+
/** Whether two declaration snapshots agree, name by name. */
|
|
167
|
+
export declare const sameDeclarations: (a: ReadonlyMap<string, string>, b: ReadonlyMap<string, string>) => boolean;
|
|
168
|
+
/** How many times an overlay rediscovers when the declarations changed underneath it. */
|
|
169
|
+
export declare const overlayAttempts = 3;
|
|
170
|
+
export declare const staleOverlay: () => Error;
|
|
171
|
+
/** `discover`, also returning the declarations the snapshot started from. */
|
|
172
|
+
export declare const discovery: (origin: Store, root: string, options?: DiscoverOptions) => Promise<Discovery>;
|
|
173
|
+
/**
|
|
174
|
+
* Names of the sources whose current declaration claims a followed source
|
|
175
|
+
* owns — appended under its run — so a selection keeps a source's
|
|
176
|
+
* descendants even when its run changed nothing.
|
|
177
|
+
*/
|
|
178
|
+
export declare const ownedDeclarations: (store: Store, owner: string) => string[];
|
|
179
|
+
/**
|
|
180
|
+
* Who owns which declarations, in one pass over the current declaration
|
|
181
|
+
* rows: the prelude runs as `<owner>`, a record as `<owner>/<key>`, so a
|
|
182
|
+
* mapping that emits declarations per record owns them through its
|
|
183
|
+
* records.
|
|
184
|
+
*/
|
|
185
|
+
export declare const ownership: (store: Store) => Map<string, Set<string>>;
|
|
186
|
+
/** Declaration signatures by name. */
|
|
187
|
+
export declare const signatures: (declared: readonly Declared[]) => Map<string, string>;
|
|
188
|
+
/** Names whose declaration was added, changed, or removed between two snapshots. */
|
|
189
|
+
export declare const changedNames: (before: ReadonlyMap<string, string>, after: ReadonlyMap<string, string>) => string[];
|
|
190
|
+
export type RunOptions = {
|
|
191
|
+
readonly force?: boolean;
|
|
192
|
+
readonly prune?: boolean;
|
|
193
|
+
};
|
|
194
|
+
/** The digest of the declaration a source was last run under, if any. */
|
|
195
|
+
export declare const recordedDeclaration: (store: Store, name: string) => undefined | string;
|
|
196
|
+
/**
|
|
197
|
+
* One pass of a prepared declared source under `declaredNaming` (spec
|
|
198
|
+
* §23.4), recording the declaration it ran under. A source whose
|
|
199
|
+
* declaration changed since its last run — another path, key, query, or
|
|
200
|
+
* record selector — prunes as it runs: records the new version does not
|
|
201
|
+
* produce are retired, since the per-record diff never visits them. A
|
|
202
|
+
* source that was followed without a recorded declaration (digests, no
|
|
203
|
+
* marker) is treated as changed, conservatively.
|
|
204
|
+
*/
|
|
205
|
+
export declare const run: (store: Store, ready: Prepared, options?: RunOptions) => Report;
|
|
206
|
+
export type Assembled = {
|
|
207
|
+
readonly declared: Declared;
|
|
208
|
+
readonly report: Report;
|
|
209
|
+
};
|
|
210
|
+
/**
|
|
211
|
+
* Follows every declared source of the store, the ones the followed
|
|
212
|
+
* sources declare in turn included, until none is left. `root` is the
|
|
213
|
+
* store's own file (or `:memory:`): paths resolve against its directory
|
|
214
|
+
* and the root file itself is never re-read as a source, so a file that
|
|
215
|
+
* declares itself, directly or through a cycle, is loaded exactly once —
|
|
216
|
+
* one file under several names, with different mappings say, is followed
|
|
217
|
+
* under each. URL sources are skipped, not errors: fetching cannot be
|
|
218
|
+
* synchronous, and `cave connect` follows them. Other failures are
|
|
219
|
+
* `LocateError`s — the store is incomplete without its sources, exactly
|
|
220
|
+
* as with a text file that does not parse.
|
|
221
|
+
*/
|
|
222
|
+
export declare const assemble: (store: Store, root: string, options?: {
|
|
223
|
+
readonly force?: boolean;
|
|
224
|
+
}) => Assembled[];
|
|
225
|
+
//# sourceMappingURL=declared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"declared.d.ts","sourceRoot":"","sources":["../../src/declared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAMH,OAAO,KAAK,EAAO,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEtC,oEAAoE;AACpE,eAAO,MAAM,MAAM,YAAY,CAAA;AAE/B,iEAAiE;AACjE,eAAO,MAAM,UAAU,mFAAoF,CAAA;AAE3G,MAAM,MAAM,SAAS,GAAG,OAAO,UAAU,CAAC,MAAM,CAAC,CAAA;AAEjD,MAAM,MAAM,QAAQ,GAAG;IACrB,uCAAuC;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,wGAAwG;IACxG,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,iFAAiF;IACjF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,CAAC,GAAG,QAAQ,CAAA;AAKxB,wHAAwH;AACxH,MAAM,MAAM,KAAK,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,CAAA;AAYlG;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAAI,OAAO,MAAM,KAAG,MAI9B,CAAA;AAET,uGAAuG;AACvG,eAAO,MAAM,QAAQ,GAAI,OAAO,KAAK,KAAG,KAAK,EA0B5C,CAAA;AAED,2FAA2F;AAC3F,eAAO,MAAM,KAAK,GAAI,OAAO,SAAS,GAAG,QAAQ,EAAE,OAAO,KAAK,KAAG,SAAS,GAAG,QAG7E,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,KAAK,KAAG,QAAQ,EAInD,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,QAAQ,EAI9C,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,KAAK,EAQlD,CAAA;AAED,2FAA2F;AAC3F,eAAO,MAAM,WAAW,GAAI,MAAM,MAAM,EAAE,KAAK,MAAM,KAAG,MACR,CAAA;AAEhD,mFAAmF;AACnF,eAAO,MAAM,MAAM,GAAI,UAAU,QAAQ,KAAG,OACuE,CAAA;AAYnH,iFAAiF;AACjF,eAAO,MAAM,QAAQ,GAAI,UAAU,QAAQ,KAAG,MAU7C,CAAA;AAED,8GAA8G;AAC9G,eAAO,MAAM,WAAW,GAAI,MAAM,MAAM,KAAG,MACkC,CAAA;AAW7E,iFAAiF;AACjF,eAAO,MAAM,SAAS,GAAI,UAAU,QAAQ,KAAG,MAC2B,CAAA;AAE1E,qFAAqF;AACrF,eAAO,MAAM,oBAAoB,wBAAwB,CAAA;AAEzD,kFAAkF;AAClF,eAAO,MAAM,iBAAiB,GAAI,UAAU,QAAQ,KAAG,MACxB,CAAA;AAE/B;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,KAAK,EAAE,UAAU,QAAQ,KAAG,OACe,CAAA;AAE3E,wFAAwF;AACxF,eAAO,MAAM,OAAO,GAAI,OAAO,KAAK,EAAE,OAAO,SAAS,MAAM,EAAE,KAAG,QAAQ,EAaxE,CAAA;AA8BD,qDAAqD;AACrD,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAA;IAClC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;IACpD,sFAAsF;IACtF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CACvB,CAAA;AAuCD,+FAA+F;AAC/F,eAAO,MAAM,WAAW,GAAI,UAAU,QAAQ,EAAE,KAAK,MAAM,KAAG,QAM7D,CAAA;AAED,qHAAqH;AACrH,eAAO,MAAM,OAAO,GAAU,UAAU,QAAQ,EAAE,KAAK,MAAM,EAAE,YAAY,MAAM,CAAC,SAAS,KAAG,OAAO,CAAC,QAAQ,CAG7G,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,SAAS,CAAA;IACrC,gEAAgE;IAChE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,gFAAgF;IAChF,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,sGAAsG;IACtG,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAQD,kFAAkF;AAClF,eAAO,MAAM,cAAc,QAAO,CAAC,IAAI,EAAE,MAAM,KAAK,IASnD,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,QAAQ,GAAU,QAAQ,KAAK,EAAE,MAAM,MAAM,EAAE,UAAS,eAAoB,KAAG,OAAO,CAAC,QAAQ,EAAE,CAC3D,CAAA;AAEnD,+HAA+H;AAC/H,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAA;IAC7B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/C,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,KAAK,KAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CACY,CAAA;AAE9E,6DAA6D;AAC7D,eAAO,MAAM,gBAAgB,GAAI,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KAAG,OACb,CAAA;AAErF,yFAAyF;AACzF,eAAO,MAAM,eAAe,IAAI,CAAA;AAEhC,eAAO,MAAM,YAAY,QAAO,KACwG,CAAA;AAExI,6EAA6E;AAC7E,eAAO,MAAM,SAAS,GAAU,QAAQ,KAAK,EAAE,MAAM,MAAM,EAAE,UAAS,eAAoB,KAAG,OAAO,CAAC,SAAS,CAyD7G,CAAA;AA2BD;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,KAAK,EAAE,OAAO,MAAM,KAAG,MAAM,EACvB,CAAA;AAE/C;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,OAAO,KAAK,KAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAc/D,CAAA;AAED,sCAAsC;AACtC,eAAO,MAAM,UAAU,GAAI,UAAU,SAAS,QAAQ,EAAE,KAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CACb,CAAA;AAEhE,oFAAoF;AACpF,eAAO,MAAM,YAAY,GAAI,QAAQ,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KAAG,MAAM,EACL,CAAA;AAExG,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED,yEAAyE;AACzE,eAAO,MAAM,mBAAmB,GAAI,OAAO,KAAK,EAAE,MAAM,MAAM,KAAG,SAAS,GAAG,MAK5E,CAAA;AAQD;;;;;;;;GAQG;AACH,eAAO,MAAM,GAAG,GAAI,OAAO,KAAK,EAAE,OAAO,QAAQ,EAAE,UAAS,UAAe,KAAG,MA8B1E,CAAA;AAEJ,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,KAAK,EAAE,MAAM,MAAM,EAAE,UAAS;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,KAAG,SAAS,EAyC1G,CAAA"}
|