@cavelang/cli 0.22.0 → 0.27.3

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/dist/src/cli.d.ts CHANGED
@@ -18,6 +18,7 @@
18
18
  * - `cave sync [--db <path>] <source>` — merge another store by row identity (spec §28; `--dry-run`, `--as`, `--into`)
19
19
  * - `cave export [--db <path>]` — canonical text out (`--current`, `--tx`)
20
20
  * - `cave serve [--db <path>]` — the human read surface in a browser (spec §30; async, routed in `main.ts`)
21
+ * - `cave report [--db <path>] [template.md…]` — cited markdown from CAVE-Q template blocks (spec §31)
21
22
  * - `cave connect [--db <path>] <source>` — deterministic structured ingestion (async, routed in `main.ts`)
22
23
  * - `cave eval <suite...>` — golden-fixture extraction/query/reconstruction evals (async, routed in `main.ts`)
23
24
  * - `cave reconstruct [--db <path>] <seed...>` — §18 reconstruction from seed cues (async, routed in `main.ts`)
@@ -33,7 +34,7 @@ export type Output = {
33
34
  readonly out: string;
34
35
  readonly err: string;
35
36
  };
36
- export declare const usage = "cave \u2014 Compressed Atomic Verb Expressions\n\nUsage:\n cave parse [file...] [--json] lint CAVE text (stdin when no file)\n cave highlight [file...] print CAVE text with ANSI syntax colors\n cave add [--db <path>] [file...] ingest into a store [--strict] [--check] [--no-prelude] [--no-src]\n cave import [--db <path>] [file...] restore/merge from CAVE text (add without @src: stamping)\n cave query [--db <path>] <pattern> run a CAVE-Q pattern [--json] [--all] [--aliases] [--as-of <t>] [--resolve] [--no-prelude]\n cave resolve [--db <path>] contested facts + winners (spec \u00A726) [--aliases] [--policy] [--json]\n cave derive [--db <path>] [rules.cave..] declare + fire rules (spec \u00A724) [--dry-run] [--full] [--list] [--retract <rule>]\n cave act [--db <path>] <name> [p=v...] execute an action (spec \u00A725) [--dry-run] [--no-check] [--hooks <file>]\n cave act --declare [file...] declare actions from a CAVE document; --list / --retract <name> manage them\n cave automate [--db <path>] event-driven loop (spec \u00A729): new claims fire rules/actions/hooks/agent prompts [--once]\n cave check [--db <path>] knowledge health report (spec \u00A720) [--stale <days>] [--json]\n cave suggest-alias [--db <path>] propose same-entity ALIAS candidates (spec \u00A727) [--min <s>] [--agent] [--write]\n cave sync [--db <path>] <source> merge another store by row identity (spec \u00A728) [--dry-run] [--as] [--into]\n cave export [--db <path>] [--out <file>] emit canonical CAVE text [--current] [--tx] [--no-prelude]\n cave serve [--db <path>] browse the store in a browser (spec \u00A730) [--port <n>] [--host <a>]\n cave mcp [--db <path>] serve the engine as an MCP server on stdio [--no-prelude]\n cave ingest [--db <path>] <globs/urls..> LLM-driven ingestion of files and web pages\n cave eval <suite..> --agent '<command>' golden-fixture extraction/query/reconstruction evals (items 9, 10)\n cave connect <source> --map <file> deterministic structured ingestion (CSV/JSON/SQLite/URL, spec \u00A723)\n cave reconstruct [--db <path>] <seed..> reconstruct memory from seed cues (spec \u00A718) [--agent] [--query] [--trace]\n cave demo run the cave-loop reconstruction demo\n cave version print the cave version\n cave help [command] this text, or one command's options and examples\n\nEvery command answers --help. --db defaults to $CAVE_DB, or cave.db in\nthe current directory. The spec lives in the .claude/skills/ directory at\nthe repository root (section index in README.md).";
37
+ export declare const usage = "cave \u2014 Compressed Atomic Verb Expressions\n\nUsage:\n cave parse [file...] [--json] lint CAVE text (stdin when no file)\n cave highlight [file...] print CAVE text with ANSI syntax colors\n cave add [--db <path>] [file...] ingest into a store [--strict] [--check] [--no-prelude] [--no-src]\n cave import [--db <path>] [file...] restore/merge from CAVE text (add without @src: stamping)\n cave query [--db <path>] <pattern> run a CAVE-Q pattern [--json] [--all] [--aliases] [--as-of <t>] [--at <t>] [--resolve] [--no-prelude]\n cave resolve [--db <path>] contested facts + winners (spec \u00A726) [--aliases] [--policy] [--json]\n cave derive [--db <path>] [rules.cave..] declare + fire rules (spec \u00A724) [--dry-run] [--full] [--list] [--retract <rule>]\n cave act [--db <path>] <name> [p=v...] execute an action (spec \u00A725) [--dry-run] [--no-check] [--hooks <file>]\n cave act --declare [file...] declare actions from a CAVE document; --list / --retract <name> manage them\n cave automate [--db <path>] event-driven loop (spec \u00A729): new claims fire rules/actions/hooks/agent prompts [--once]\n cave check [--db <path>] knowledge health report (spec \u00A720) [--stale <days>] [--json]\n cave suggest-alias [--db <path>] propose same-entity ALIAS candidates (spec \u00A727) [--min <s>] [--agent] [--write]\n cave sync [--db <path>] <source> merge another store by row identity (spec \u00A728) [--dry-run] [--as] [--into]\n cave export [--db <path>] [--out <file>] emit canonical CAVE text [--current] [--tx] [--no-prelude]\n cave serve [--db <path>] browse the store in a browser (spec \u00A730) [--port <n>] [--host <a>]\n cave report [--db <path>] [template...] render cited markdown from a CAVE-Q template (spec \u00A731) [--out <file>] [--resolve]\n cave mcp [--db <path>] serve the engine as an MCP server on stdio [--no-prelude]\n cave ingest [--db <path>] <globs/urls..> LLM-driven ingestion of files and web pages\n cave eval <suite..> --agent '<command>' golden-fixture extraction/query/reconstruction evals (items 9, 10)\n cave connect <source> --map <file> deterministic structured ingestion (CSV/JSON/SQLite/URL, spec \u00A723)\n cave reconstruct [--db <path>] <seed..> reconstruct memory from seed cues (spec \u00A718) [--agent] [--query] [--trace]\n cave demo run the cave-loop reconstruction demo\n cave version print the cave version\n cave help [command] this text, or one command's options and examples\n\nEvery command answers --help. --db defaults to $CAVE_DB, or cave.db in\nthe current directory. The spec lives in the .claude/skills/ directory at\nthe repository root (section index in README.md).";
37
38
  /** Per-command help, printed for \`cave <command> --help\` and \`cave help <command>\`. */
38
39
  export declare const commandHelp: Record<string, string>;
39
40
  export declare const parseCommand: (argv: readonly string[]) => Output;
@@ -81,6 +82,14 @@ export declare const suggestAliasCommand: (argv: readonly string[]) => Promise<O
81
82
  * ids. Idempotent: re-runs merge nothing and append no record.
82
83
  */
83
84
  export declare const syncCommand: (argv: readonly string[]) => Output;
85
+ /**
86
+ * `cave report` — the §31 deliverable: a markdown template's cave-q
87
+ * blocks and inline splices render from the store, every stated fact
88
+ * cited back to its claim. Problems mark the text, land on stderr with
89
+ * template line numbers, and fail the exit code — the render never
90
+ * silently drops a fact.
91
+ */
92
+ export declare const reportCommand: (argv: readonly string[]) => Output;
84
93
  export declare const exportCommand: (argv: readonly string[]) => Output;
85
94
  /**
86
95
  * `cave reconstruct` — the §18 loop over the store: heuristic policy by
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAyBH,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB,CAAA;AAQD,eAAO,MAAM,KAAK,4sFA6BgC,CAAA;AAIlD,2FAA2F;AAC3F,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqZ9C,CAAA;AAOD,eAAO,MAAM,YAAY,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAyBtD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAU,MAAM,SAAS,MAAM,EAAE,KAAG,OAAO,CAAC,MAAM,CAM9E,CAAA;AAuDD,eAAO,MAAM,UAAU,SA1CkC,SAAS,MAAM,EAAE,KAAG,MA0C/B,CAAA;AAE9C;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,SAxD+B,SAAS,MAAM,EAAE,KAAG,MAwDzB,CAAA;AAEpD,eAAO,MAAM,YAAY,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MA8CtD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MA+CxD,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAsHvD,CAAA;AA8CD,eAAO,MAAM,UAAU,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAsFpD,CAAA;AAqCD,eAAO,MAAM,YAAY,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MA0BtD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAU,MAAM,SAAS,MAAM,EAAE,KAAG,OAAO,CAAC,MAAM,CA6DjF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAmDrD,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAwBvD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAU,MAAM,SAAS,MAAM,EAAE,KAAG,OAAO,CAAC,MAAM,CAgEhF,CAAA;AAED,eAAO,MAAM,WAAW,QAAO,MACS,CAAA;AAExC,eAAO,MAAM,cAAc,QAAO,MACJ,CAAA;AAE9B,wEAAwE;AACxE,eAAO,MAAM,WAAW,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAcrD,CAAA;AAED,iCAAiC;AACjC,eAAO,MAAM,IAAI,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MA+C9C,CAAA"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AA2BH,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB,CAAA;AAQD,eAAO,MAAM,KAAK,21FA8BgC,CAAA;AAIlD,2FAA2F;AAC3F,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAgd9C,CAAA;AAOD,eAAO,MAAM,YAAY,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAyBtD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAU,MAAM,SAAS,MAAM,EAAE,KAAG,OAAO,CAAC,MAAM,CAM9E,CAAA;AAuDD,eAAO,MAAM,UAAU,SA1CkC,SAAS,MAAM,EAAE,KAAG,MA0C/B,CAAA;AAE9C;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,SAxD+B,SAAS,MAAM,EAAE,KAAG,MAwDzB,CAAA;AAEpD,eAAO,MAAM,YAAY,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAqDtD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MA+CxD,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAsHvD,CAAA;AA8CD,eAAO,MAAM,UAAU,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAsFpD,CAAA;AAqCD,eAAO,MAAM,YAAY,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MA0BtD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAU,MAAM,SAAS,MAAM,EAAE,KAAG,OAAO,CAAC,MAAM,CA6DjF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAmDrD,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAyCvD,CAAA;AAoBD,eAAO,MAAM,aAAa,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MA4BvD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAU,MAAM,SAAS,MAAM,EAAE,KAAG,OAAO,CAAC,MAAM,CAgEhF,CAAA;AAED,eAAO,MAAM,WAAW,QAAO,MACS,CAAA;AAExC,eAAO,MAAM,cAAc,QAAO,MACJ,CAAA;AAE9B,wEAAwE;AACxE,eAAO,MAAM,WAAW,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAcrD,CAAA;AAED,iCAAiC;AACjC,eAAO,MAAM,IAAI,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MAiD9C,CAAA"}
package/dist/src/cli.js CHANGED
@@ -18,6 +18,7 @@
18
18
  * - `cave sync [--db <path>] <source>` — merge another store by row identity (spec §28; `--dry-run`, `--as`, `--into`)
19
19
  * - `cave export [--db <path>]` — canonical text out (`--current`, `--tx`)
20
20
  * - `cave serve [--db <path>]` — the human read surface in a browser (spec §30; async, routed in `main.ts`)
21
+ * - `cave report [--db <path>] [template.md…]` — cited markdown from CAVE-Q template blocks (spec §31)
21
22
  * - `cave connect [--db <path>] <source>` — deterministic structured ingestion (async, routed in `main.ts`)
22
23
  * - `cave eval <suite...>` — golden-fixture extraction/query/reconstruction evals (async, routed in `main.ts`)
23
24
  * - `cave reconstruct [--db <path>] <seed...>` — §18 reconstruction from seed cues (async, routed in `main.ts`)
@@ -28,7 +29,8 @@
28
29
  * `file` defaults to stdin (`-`); `--db` defaults to `$CAVE_DB`, then
29
30
  * `cave.db`. Every command answers `--help` with options and examples.
30
31
  */
31
- import { readFileSync, writeFileSync } from 'node:fs';
32
+ import { readFileSync, statSync, writeFileSync } from 'node:fs';
33
+ import { resolve } from 'node:path';
32
34
  import { parseArgs } from 'node:util';
33
35
  import { Version } from '@cavelang/core';
34
36
  import { parseDocument } from '@cavelang/parser';
@@ -40,6 +42,7 @@ import { declareRules, defaultMaxPasses, defaultMinConf, derive, listRules, retr
40
42
  import { act, declareActions, listActions, retractAction } from '@cavelang/act';
41
43
  import { Demo, heuristicPolicy, llmPolicy, reconstruct, reconstructAsync, shellComplete, sqliteStore } from '@cavelang/loop';
42
44
  import { labelOf, sanitizeLabel, syncFile, syncText } from '@cavelang/sync';
45
+ import { report as caveReport } from '@cavelang/view';
43
46
  import { emitClaim, txOfLine } from '@cavelang/canonical';
44
47
  const ok = (out) => ({ code: 0, out, err: '' });
45
48
  const fail = (err, code = 1) => ({ code, out: '', err });
@@ -50,7 +53,7 @@ Usage:
50
53
  cave highlight [file...] print CAVE text with ANSI syntax colors
51
54
  cave add [--db <path>] [file...] ingest into a store [--strict] [--check] [--no-prelude] [--no-src]
52
55
  cave import [--db <path>] [file...] restore/merge from CAVE text (add without @src: stamping)
53
- cave query [--db <path>] <pattern> run a CAVE-Q pattern [--json] [--all] [--aliases] [--as-of <t>] [--resolve] [--no-prelude]
56
+ cave query [--db <path>] <pattern> run a CAVE-Q pattern [--json] [--all] [--aliases] [--as-of <t>] [--at <t>] [--resolve] [--no-prelude]
54
57
  cave resolve [--db <path>] contested facts + winners (spec §26) [--aliases] [--policy] [--json]
55
58
  cave derive [--db <path>] [rules.cave..] declare + fire rules (spec §24) [--dry-run] [--full] [--list] [--retract <rule>]
56
59
  cave act [--db <path>] <name> [p=v...] execute an action (spec §25) [--dry-run] [--no-check] [--hooks <file>]
@@ -61,6 +64,7 @@ Usage:
61
64
  cave sync [--db <path>] <source> merge another store by row identity (spec §28) [--dry-run] [--as] [--into]
62
65
  cave export [--db <path>] [--out <file>] emit canonical CAVE text [--current] [--tx] [--no-prelude]
63
66
  cave serve [--db <path>] browse the store in a browser (spec §30) [--port <n>] [--host <a>]
67
+ cave report [--db <path>] [template...] render cited markdown from a CAVE-Q template (spec §31) [--out <file>] [--resolve]
64
68
  cave mcp [--db <path>] serve the engine as an MCP server on stdio [--no-prelude]
65
69
  cave ingest [--db <path>] <globs/urls..> LLM-driven ingestion of files and web pages
66
70
  cave eval <suite..> --agent '<command>' golden-fixture extraction/query/reconstruction evals (items 9, 10)
@@ -153,7 +157,7 @@ Examples:
153
157
  query: `cave query — run a CAVE-Q pattern against a store
154
158
 
155
159
  Usage:
156
- cave query [--db <path>] <pattern> [WHERE <filter>] [--json] [--all] [--aliases] [--as-of <t>] [--resolve] [--no-prelude]
160
+ cave query [--db <path>] <pattern> [WHERE <filter>] [--json] [--all] [--aliases] [--as-of <t>] [--at <t>] [--resolve] [--no-prelude]
157
161
 
158
162
  Options:
159
163
  ${dbHelp}
@@ -163,6 +167,13 @@ Options:
163
167
  --as-of <t> resolve beliefs as of a past moment (spec §12.3): a date
164
168
  (whole day included), a timestamp (whole second), or a
165
169
  transaction id — rows recorded later are invisible
170
+ --at <t> anchor in valid time (spec §32.4): a date-like period
171
+ (read as its start instant) or a timestamp. Claims whose
172
+ time contexts — @2026-Q1 points, @2025..2028 ranges — do
173
+ not cover the instant are invisible; timeless claims
174
+ always match; trajectory values (20B -> 40B USD/yr)
175
+ interpolate at the instant. Composes with --as-of: what
176
+ was believed then, about that moment
166
177
  --resolve match resolved winners only (spec §26): contested facts —
167
178
  same fact from several sources, or opposite polarity —
168
179
  collapse to the row the resolution policy picks
@@ -181,6 +192,8 @@ Examples:
181
192
  cave query --db k.db 'terrier EXTENDS+ animal'
182
193
  cave query --db k.db '?x USES postgres' --aliases
183
194
  cave query --db k.db 'server IS compromised' --as-of 2026-01-15
195
+ cave query --db k.db 'revenue IS' --at 2026-07
196
+ cave query --db k.db 'alice WORKS-AT ?org' --at 2021
184
197
  cave query --db k.db 'service HAS owner: ?who' --resolve
185
198
  cave query --db k.db '?x ?verb ?y @production' --json`,
186
199
  resolve: `cave resolve — contested facts and their winners (spec §26)
@@ -331,8 +344,9 @@ Options:
331
344
  --agent <template> LLM judge filtering the candidates — the cave
332
345
  ingest/eval shell contract: the prompt (each pair
333
346
  with both sides' current claims) is piped to stdin
334
- and {prompt-file} is substituted; stdout replies
335
- with a JSON array of confirmed suggestion numbers
347
+ and {prompt-file} is substituted shell-quoted;
348
+ stdout replies with a JSON array of confirmed
349
+ suggestion numbers
336
350
  --timeout <seconds> judge timeout (default 120)
337
351
  --write append the suggestions, stamped @src:suggest/alias,
338
352
  instead of only printing them
@@ -411,7 +425,8 @@ Usage:
411
425
 
412
426
  Options:
413
427
  ${dbHelp}
414
- --out <file> write to a file instead of stdout
428
+ --out <file> write to a file instead of stdout — refused when it
429
+ names the store's own database file
415
430
  --current current beliefs only (skip superseded rows)
416
431
  --tx precede every claim line with its ;@ transaction
417
432
  annotation (spec §28.4) — the text carries row identity,
@@ -426,6 +441,52 @@ Examples:
426
441
  cave export --db k.db --tx | cave sync --db other.db -
427
442
  cave export --db work.db --tx --out knowledge.cave # the committed,
428
443
  # reviewable store text (spec §28.6)`,
444
+ report: `cave report — render cited markdown from a CAVE-Q template (spec §31)
445
+
446
+ Usage:
447
+ cave report [--db <path>] [template.md...] [--out <file>]
448
+ [--aliases] [--resolve] [--as-of <t>] [--at <t>] [--no-prelude]
449
+
450
+ Options:
451
+ ${dbHelp}
452
+ --out <file> write the rendered markdown to a file instead of stdout
453
+ --aliases queries match through the alias closure (spec §13.6)
454
+ --resolve queries match resolved winners only (spec §26) — the fix
455
+ when an inline splice reports an ambiguous fact
456
+ --as-of <t> render the report as of a past moment (spec §12.3): a
457
+ date, timestamp, or transaction id
458
+ --at <t> anchor every query in valid time (spec §32.4): claims
459
+ whose time contexts don't cover the instant drop out,
460
+ trajectory values render interpolated
461
+ --no-prelude open the store without the standard verb registry
462
+
463
+ Reads stdin when no file (or \`-\`) is given. A template is ordinary
464
+ markdown with two live constructs (spec §31.1); everything else passes
465
+ through verbatim:
466
+
467
+ \`\`\`cave-q
468
+ ?svc HAS owner: ?who
469
+ - **?svc** is owned by ?who [^?]
470
+ \`\`\`
471
+
472
+ a fenced cave-q block — a CAVE-Q pattern, optional WHERE filter lines,
473
+ then a fragment rendered once per solution (?var substituted; without a
474
+ fragment each solution renders as a cited bullet) — and an inline splice
475
+ \`cave-q: OpenAI HAS revenue: ?v\` replaced by the single value the
476
+ pattern binds (exactly one variable and one solution, or it is a
477
+ problem). Every rendered solution cites its stored row: [^cN] footnote
478
+ markers land at the fragment's [^?] placeholder (appended when absent),
479
+ and the definitions — the row's canonical line, tx date and claim key —
480
+ collect at the end of the document. Problems are reported with template
481
+ line numbers and exit 1; the document still renders, problems marked in
482
+ place.
483
+
484
+ Examples:
485
+ cave report --db k.db weekly.md
486
+ cave report --db k.db weekly.md --out report.md
487
+ cave report --db k.db weekly.md --resolve
488
+ cave report --db k.db weekly.md --as-of 2026-01-15
489
+ echo 'Revenue: \`cave-q: acme HAS revenue: ?v\`' | cave report --db k.db`,
429
490
  reconstruct: `cave reconstruct — active memory reconstruction from seed cues (spec §18)
430
491
 
431
492
  Usage:
@@ -437,8 +498,9 @@ Options:
437
498
  --agent <template> shell agent making the select/stop decision each step —
438
499
  the LLM policy: the prompt (collected claims + scored
439
500
  frontier) is piped to stdin and {prompt-file} is
440
- substituted; stdout replies with a cue name or STOP.
441
- Without --agent the deterministic heuristic runs.
501
+ substituted shell-quoted; stdout replies with a cue
502
+ name or STOP. Without --agent the deterministic
503
+ heuristic runs.
442
504
  --steps <n> expansion budget (default 16)
443
505
  --claims <n> stop after collecting this many claims
444
506
  --timeout <seconds> per-step agent timeout (default 120)
@@ -583,6 +645,7 @@ export const queryCommand = (argv) => {
583
645
  all: { type: 'boolean' },
584
646
  aliases: { type: 'boolean' },
585
647
  'as-of': { type: 'string' },
648
+ at: { type: 'string' },
586
649
  resolve: { type: 'boolean' },
587
650
  'no-prelude': { type: 'boolean' }
588
651
  },
@@ -598,7 +661,8 @@ export const queryCommand = (argv) => {
598
661
  all: values.all === true,
599
662
  aliases: values.aliases === true,
600
663
  resolve: values.resolve === true,
601
- ...values['as-of'] === undefined ? {} : { asOf: values['as-of'] }
664
+ ...values['as-of'] === undefined ? {} : { asOf: values['as-of'] },
665
+ ...values.at === undefined ? {} : { at: values.at }
602
666
  });
603
667
  if (values.json === true) {
604
668
  return ok(`${JSON.stringify(matches, undefined, 2)}\n`);
@@ -612,7 +676,12 @@ export const queryCommand = (argv) => {
612
676
  .join(' ');
613
677
  // A fully bound pattern has no bindings to print; transitive matches
614
678
  // additionally carry no row — confirm with the pattern itself.
615
- return bindings !== '' ? bindings : match.row?.raw_line ?? pattern.split('\n')[0];
679
+ const line = bindings !== '' ? bindings : match.row?.raw_line ?? pattern.split('\n')[0];
680
+ // An interpolated trajectory shows its value at the anchor
681
+ // (spec §32.4) — bindings already carry it in the value slot.
682
+ return match.at !== undefined && bindings === '' ?
683
+ `${line} ; at ${values.at}: ${match.at.text}` :
684
+ line;
616
685
  });
617
686
  return ok(`${lines.join('\n')}\n`);
618
687
  }
@@ -1116,6 +1185,75 @@ export const syncCommand = (argv) => {
1116
1185
  store.close();
1117
1186
  }
1118
1187
  };
1188
+ /**
1189
+ * `cave report` — the §31 deliverable: a markdown template's cave-q
1190
+ * blocks and inline splices render from the store, every stated fact
1191
+ * cited back to its claim. Problems mark the text, land on stderr with
1192
+ * template line numbers, and fail the exit code — the render never
1193
+ * silently drops a fact.
1194
+ */
1195
+ export const reportCommand = (argv) => {
1196
+ const { values, positionals } = parseArgs({
1197
+ args: [...argv],
1198
+ options: {
1199
+ db: { type: 'string' },
1200
+ out: { type: 'string' },
1201
+ aliases: { type: 'boolean' },
1202
+ resolve: { type: 'boolean' },
1203
+ 'as-of': { type: 'string' },
1204
+ at: { type: 'string' },
1205
+ 'no-prelude': { type: 'boolean' }
1206
+ },
1207
+ allowPositionals: true
1208
+ });
1209
+ const template = readInput(positionals);
1210
+ const store = open(values.db ?? defaultDbPath(), values['no-prelude'] === true ? { registry: Registry.empty } : {});
1211
+ try {
1212
+ const rendered = caveReport(store, template, {
1213
+ aliases: values.aliases === true,
1214
+ resolve: values.resolve === true,
1215
+ ...values['as-of'] === undefined ? {} : { asOf: values['as-of'] },
1216
+ ...values.at === undefined ? {} : { at: values.at }
1217
+ });
1218
+ const err = rendered.problems
1219
+ .map(problem => `template line ${problem.line}: ${problem.message}`)
1220
+ .join('\n');
1221
+ const code = rendered.problems.length > 0 ? 1 : 0;
1222
+ if (values.out === undefined) {
1223
+ return { code, out: rendered.markdown, err: err === '' ? '' : `${err}\n` };
1224
+ }
1225
+ writeFileSync(values.out, rendered.markdown);
1226
+ return {
1227
+ code,
1228
+ out: `rendered ${rendered.citations} citation(s) to ${values.out}\n`,
1229
+ err: err === '' ? '' : `${err}\n`
1230
+ };
1231
+ }
1232
+ catch (error) {
1233
+ return fail(`${error instanceof Error ? error.message : String(error)}\n`);
1234
+ }
1235
+ finally {
1236
+ store.close();
1237
+ }
1238
+ };
1239
+ /**
1240
+ * True when both paths name the same file: equal once resolved, or — when
1241
+ * both exist — one device/inode pair, which also catches symlinks and
1242
+ * hard links to the file.
1243
+ */
1244
+ const sameFile = (a, b) => {
1245
+ if (resolve(a) === resolve(b)) {
1246
+ return true;
1247
+ }
1248
+ try {
1249
+ const left = statSync(a);
1250
+ const right = statSync(b);
1251
+ return left.dev === right.dev && left.ino === right.ino;
1252
+ }
1253
+ catch {
1254
+ return false;
1255
+ }
1256
+ };
1119
1257
  export const exportCommand = (argv) => {
1120
1258
  const { values } = parseArgs({
1121
1259
  args: [...argv],
@@ -1128,7 +1266,11 @@ export const exportCommand = (argv) => {
1128
1266
  },
1129
1267
  allowPositionals: false
1130
1268
  });
1131
- const store = open(values.db ?? defaultDbPath(), values['no-prelude'] === true ? { registry: Registry.empty } : {});
1269
+ const db = values.db ?? defaultDbPath();
1270
+ if (values.out !== undefined && sameFile(db, values.out)) {
1271
+ return fail(`cave export: --out '${values.out}' is the source database — refusing to overwrite it\n`);
1272
+ }
1273
+ const store = open(db, values['no-prelude'] === true ? { registry: Registry.empty } : {});
1132
1274
  try {
1133
1275
  const text = store.exportText({ current: values.current === true, tx: values.tx === true });
1134
1276
  if (values.out === undefined) {
@@ -1256,6 +1398,8 @@ export const cave = (argv) => {
1256
1398
  return syncCommand(rest);
1257
1399
  case 'export':
1258
1400
  return exportCommand(rest);
1401
+ case 'report':
1402
+ return reportCommand(rest);
1259
1403
  case 'demo':
1260
1404
  return demoCommand();
1261
1405
  case 'version':
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * `@cavelang/cli` — the `cave` command (parse / add / query / resolve / derive / act / check / suggest-alias / sync / export / reconstruct / demo).
2
+ * `@cavelang/cli` — the `cave` command (parse / add / query / resolve / derive / act / check / suggest-alias / sync / export / report / reconstruct / demo).
3
3
  * Programmatic access to the same implementations lives here.
4
4
  */
5
- export { actCommand, addCommand, cave, checkCommand, commandHelp, demoCommand, deriveCommand, exportCommand, helpCommand, highlightCommand, importCommand, parseCommand, queryCommand, reconstructCommand, resolveCommand, suggestAliasCommand, syncCommand, usage, versionCommand } from './cli.ts';
5
+ export { actCommand, addCommand, cave, checkCommand, commandHelp, demoCommand, deriveCommand, exportCommand, helpCommand, highlightCommand, importCommand, parseCommand, queryCommand, reconstructCommand, reportCommand, resolveCommand, suggestAliasCommand, syncCommand, usage, versionCommand } from './cli.ts';
6
6
  export type { Output } from './cli.ts';
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACpS,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACnT,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA"}
package/dist/src/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
- * `@cavelang/cli` — the `cave` command (parse / add / query / resolve / derive / act / check / suggest-alias / sync / export / reconstruct / demo).
2
+ * `@cavelang/cli` — the `cave` command (parse / add / query / resolve / derive / act / check / suggest-alias / sync / export / report / reconstruct / demo).
3
3
  * Programmatic access to the same implementations lives here.
4
4
  */
5
- export { actCommand, addCommand, cave, checkCommand, commandHelp, demoCommand, deriveCommand, exportCommand, helpCommand, highlightCommand, importCommand, parseCommand, queryCommand, reconstructCommand, resolveCommand, suggestAliasCommand, syncCommand, usage, versionCommand } from "./cli.js";
5
+ export { actCommand, addCommand, cave, checkCommand, commandHelp, demoCommand, deriveCommand, exportCommand, helpCommand, highlightCommand, importCommand, parseCommand, queryCommand, reconstructCommand, reportCommand, resolveCommand, suggestAliasCommand, syncCommand, usage, versionCommand } from "./cli.js";
6
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cavelang/cli",
3
- "version": "0.22.0",
3
+ "version": "0.27.3",
4
4
  "type": "module",
5
5
  "description": "cave — CLI for parsing, storing, querying and exporting CAVE knowledge.",
6
6
  "license": "CC0-1.0",
@@ -39,23 +39,23 @@
39
39
  "access": "public"
40
40
  },
41
41
  "dependencies": {
42
- "@cavelang/act": "0.22.0",
43
- "@cavelang/automate": "0.22.0",
44
- "@cavelang/canonical": "0.22.0",
45
- "@cavelang/connect": "0.22.0",
46
- "@cavelang/eval": "0.22.0",
47
- "@cavelang/core": "0.22.0",
48
- "@cavelang/highlight": "0.22.0",
49
- "@cavelang/ingest": "0.22.0",
50
- "@cavelang/loop": "0.22.0",
51
- "@cavelang/mcp": "0.22.0",
52
- "@cavelang/parser": "0.22.0",
53
- "@cavelang/rules": "0.22.0",
54
- "@cavelang/shape": "0.22.0",
55
- "@cavelang/query": "0.22.0",
56
- "@cavelang/store": "0.22.0",
57
- "@cavelang/sync": "0.22.0",
58
- "@cavelang/view": "0.22.0"
42
+ "@cavelang/act": "0.27.3",
43
+ "@cavelang/automate": "0.27.3",
44
+ "@cavelang/core": "0.27.3",
45
+ "@cavelang/eval": "0.27.3",
46
+ "@cavelang/canonical": "0.27.3",
47
+ "@cavelang/connect": "0.27.3",
48
+ "@cavelang/highlight": "0.27.3",
49
+ "@cavelang/ingest": "0.27.3",
50
+ "@cavelang/mcp": "0.27.3",
51
+ "@cavelang/parser": "0.27.3",
52
+ "@cavelang/loop": "0.27.3",
53
+ "@cavelang/query": "0.27.3",
54
+ "@cavelang/shape": "0.27.3",
55
+ "@cavelang/rules": "0.27.3",
56
+ "@cavelang/store": "0.27.3",
57
+ "@cavelang/sync": "0.27.3",
58
+ "@cavelang/view": "0.27.3"
59
59
  },
60
60
  "scripts": {
61
61
  "build": "tsc -b",
package/src/cli.ts CHANGED
@@ -18,6 +18,7 @@
18
18
  * - `cave sync [--db <path>] <source>` — merge another store by row identity (spec §28; `--dry-run`, `--as`, `--into`)
19
19
  * - `cave export [--db <path>]` — canonical text out (`--current`, `--tx`)
20
20
  * - `cave serve [--db <path>]` — the human read surface in a browser (spec §30; async, routed in `main.ts`)
21
+ * - `cave report [--db <path>] [template.md…]` — cited markdown from CAVE-Q template blocks (spec §31)
21
22
  * - `cave connect [--db <path>] <source>` — deterministic structured ingestion (async, routed in `main.ts`)
22
23
  * - `cave eval <suite...>` — golden-fixture extraction/query/reconstruction evals (async, routed in `main.ts`)
23
24
  * - `cave reconstruct [--db <path>] <seed...>` — §18 reconstruction from seed cues (async, routed in `main.ts`)
@@ -29,7 +30,8 @@
29
30
  * `cave.db`. Every command answers `--help` with options and examples.
30
31
  */
31
32
 
32
- import { readFileSync, writeFileSync } from 'node:fs'
33
+ import { readFileSync, statSync, writeFileSync } from 'node:fs'
34
+ import { resolve } from 'node:path'
33
35
  import { parseArgs } from 'node:util'
34
36
  import { Version } from '@cavelang/core'
35
37
  import { parseDocument } from '@cavelang/parser'
@@ -50,6 +52,7 @@ import {
50
52
  } from '@cavelang/loop'
51
53
  import { labelOf, sanitizeLabel, syncFile, syncText } from '@cavelang/sync'
52
54
  import type { SyncReport } from '@cavelang/sync'
55
+ import { report as caveReport } from '@cavelang/view'
53
56
  import { emitClaim, txOfLine } from '@cavelang/canonical'
54
57
 
55
58
  export type Output = {
@@ -71,7 +74,7 @@ Usage:
71
74
  cave highlight [file...] print CAVE text with ANSI syntax colors
72
75
  cave add [--db <path>] [file...] ingest into a store [--strict] [--check] [--no-prelude] [--no-src]
73
76
  cave import [--db <path>] [file...] restore/merge from CAVE text (add without @src: stamping)
74
- cave query [--db <path>] <pattern> run a CAVE-Q pattern [--json] [--all] [--aliases] [--as-of <t>] [--resolve] [--no-prelude]
77
+ cave query [--db <path>] <pattern> run a CAVE-Q pattern [--json] [--all] [--aliases] [--as-of <t>] [--at <t>] [--resolve] [--no-prelude]
75
78
  cave resolve [--db <path>] contested facts + winners (spec §26) [--aliases] [--policy] [--json]
76
79
  cave derive [--db <path>] [rules.cave..] declare + fire rules (spec §24) [--dry-run] [--full] [--list] [--retract <rule>]
77
80
  cave act [--db <path>] <name> [p=v...] execute an action (spec §25) [--dry-run] [--no-check] [--hooks <file>]
@@ -82,6 +85,7 @@ Usage:
82
85
  cave sync [--db <path>] <source> merge another store by row identity (spec §28) [--dry-run] [--as] [--into]
83
86
  cave export [--db <path>] [--out <file>] emit canonical CAVE text [--current] [--tx] [--no-prelude]
84
87
  cave serve [--db <path>] browse the store in a browser (spec §30) [--port <n>] [--host <a>]
88
+ cave report [--db <path>] [template...] render cited markdown from a CAVE-Q template (spec §31) [--out <file>] [--resolve]
85
89
  cave mcp [--db <path>] serve the engine as an MCP server on stdio [--no-prelude]
86
90
  cave ingest [--db <path>] <globs/urls..> LLM-driven ingestion of files and web pages
87
91
  cave eval <suite..> --agent '<command>' golden-fixture extraction/query/reconstruction evals (items 9, 10)
@@ -180,7 +184,7 @@ Examples:
180
184
  query: `cave query — run a CAVE-Q pattern against a store
181
185
 
182
186
  Usage:
183
- cave query [--db <path>] <pattern> [WHERE <filter>] [--json] [--all] [--aliases] [--as-of <t>] [--resolve] [--no-prelude]
187
+ cave query [--db <path>] <pattern> [WHERE <filter>] [--json] [--all] [--aliases] [--as-of <t>] [--at <t>] [--resolve] [--no-prelude]
184
188
 
185
189
  Options:
186
190
  ${dbHelp}
@@ -190,6 +194,13 @@ Options:
190
194
  --as-of <t> resolve beliefs as of a past moment (spec §12.3): a date
191
195
  (whole day included), a timestamp (whole second), or a
192
196
  transaction id — rows recorded later are invisible
197
+ --at <t> anchor in valid time (spec §32.4): a date-like period
198
+ (read as its start instant) or a timestamp. Claims whose
199
+ time contexts — @2026-Q1 points, @2025..2028 ranges — do
200
+ not cover the instant are invisible; timeless claims
201
+ always match; trajectory values (20B -> 40B USD/yr)
202
+ interpolate at the instant. Composes with --as-of: what
203
+ was believed then, about that moment
193
204
  --resolve match resolved winners only (spec §26): contested facts —
194
205
  same fact from several sources, or opposite polarity —
195
206
  collapse to the row the resolution policy picks
@@ -208,6 +219,8 @@ Examples:
208
219
  cave query --db k.db 'terrier EXTENDS+ animal'
209
220
  cave query --db k.db '?x USES postgres' --aliases
210
221
  cave query --db k.db 'server IS compromised' --as-of 2026-01-15
222
+ cave query --db k.db 'revenue IS' --at 2026-07
223
+ cave query --db k.db 'alice WORKS-AT ?org' --at 2021
211
224
  cave query --db k.db 'service HAS owner: ?who' --resolve
212
225
  cave query --db k.db '?x ?verb ?y @production' --json`,
213
226
 
@@ -363,8 +376,9 @@ Options:
363
376
  --agent <template> LLM judge filtering the candidates — the cave
364
377
  ingest/eval shell contract: the prompt (each pair
365
378
  with both sides' current claims) is piped to stdin
366
- and {prompt-file} is substituted; stdout replies
367
- with a JSON array of confirmed suggestion numbers
379
+ and {prompt-file} is substituted shell-quoted;
380
+ stdout replies with a JSON array of confirmed
381
+ suggestion numbers
368
382
  --timeout <seconds> judge timeout (default 120)
369
383
  --write append the suggestions, stamped @src:suggest/alias,
370
384
  instead of only printing them
@@ -445,7 +459,8 @@ Usage:
445
459
 
446
460
  Options:
447
461
  ${dbHelp}
448
- --out <file> write to a file instead of stdout
462
+ --out <file> write to a file instead of stdout — refused when it
463
+ names the store's own database file
449
464
  --current current beliefs only (skip superseded rows)
450
465
  --tx precede every claim line with its ;@ transaction
451
466
  annotation (spec §28.4) — the text carries row identity,
@@ -461,6 +476,53 @@ Examples:
461
476
  cave export --db work.db --tx --out knowledge.cave # the committed,
462
477
  # reviewable store text (spec §28.6)`,
463
478
 
479
+ report: `cave report — render cited markdown from a CAVE-Q template (spec §31)
480
+
481
+ Usage:
482
+ cave report [--db <path>] [template.md...] [--out <file>]
483
+ [--aliases] [--resolve] [--as-of <t>] [--at <t>] [--no-prelude]
484
+
485
+ Options:
486
+ ${dbHelp}
487
+ --out <file> write the rendered markdown to a file instead of stdout
488
+ --aliases queries match through the alias closure (spec §13.6)
489
+ --resolve queries match resolved winners only (spec §26) — the fix
490
+ when an inline splice reports an ambiguous fact
491
+ --as-of <t> render the report as of a past moment (spec §12.3): a
492
+ date, timestamp, or transaction id
493
+ --at <t> anchor every query in valid time (spec §32.4): claims
494
+ whose time contexts don't cover the instant drop out,
495
+ trajectory values render interpolated
496
+ --no-prelude open the store without the standard verb registry
497
+
498
+ Reads stdin when no file (or \`-\`) is given. A template is ordinary
499
+ markdown with two live constructs (spec §31.1); everything else passes
500
+ through verbatim:
501
+
502
+ \`\`\`cave-q
503
+ ?svc HAS owner: ?who
504
+ - **?svc** is owned by ?who [^?]
505
+ \`\`\`
506
+
507
+ a fenced cave-q block — a CAVE-Q pattern, optional WHERE filter lines,
508
+ then a fragment rendered once per solution (?var substituted; without a
509
+ fragment each solution renders as a cited bullet) — and an inline splice
510
+ \`cave-q: OpenAI HAS revenue: ?v\` replaced by the single value the
511
+ pattern binds (exactly one variable and one solution, or it is a
512
+ problem). Every rendered solution cites its stored row: [^cN] footnote
513
+ markers land at the fragment's [^?] placeholder (appended when absent),
514
+ and the definitions — the row's canonical line, tx date and claim key —
515
+ collect at the end of the document. Problems are reported with template
516
+ line numbers and exit 1; the document still renders, problems marked in
517
+ place.
518
+
519
+ Examples:
520
+ cave report --db k.db weekly.md
521
+ cave report --db k.db weekly.md --out report.md
522
+ cave report --db k.db weekly.md --resolve
523
+ cave report --db k.db weekly.md --as-of 2026-01-15
524
+ echo 'Revenue: \`cave-q: acme HAS revenue: ?v\`' | cave report --db k.db`,
525
+
464
526
  reconstruct: `cave reconstruct — active memory reconstruction from seed cues (spec §18)
465
527
 
466
528
  Usage:
@@ -472,8 +534,9 @@ Options:
472
534
  --agent <template> shell agent making the select/stop decision each step —
473
535
  the LLM policy: the prompt (collected claims + scored
474
536
  frontier) is piped to stdin and {prompt-file} is
475
- substituted; stdout replies with a cue name or STOP.
476
- Without --agent the deterministic heuristic runs.
537
+ substituted shell-quoted; stdout replies with a cue
538
+ name or STOP. Without --agent the deterministic
539
+ heuristic runs.
477
540
  --steps <n> expansion budget (default 16)
478
541
  --claims <n> stop after collecting this many claims
479
542
  --timeout <seconds> per-step agent timeout (default 120)
@@ -628,6 +691,7 @@ export const queryCommand = (argv: readonly string[]): Output => {
628
691
  all: { type: 'boolean' },
629
692
  aliases: { type: 'boolean' },
630
693
  'as-of': { type: 'string' },
694
+ at: { type: 'string' },
631
695
  resolve: { type: 'boolean' },
632
696
  'no-prelude': { type: 'boolean' }
633
697
  },
@@ -643,7 +707,8 @@ export const queryCommand = (argv: readonly string[]): Output => {
643
707
  all: values.all === true,
644
708
  aliases: values.aliases === true,
645
709
  resolve: values.resolve === true,
646
- ...values['as-of'] === undefined ? {} : { asOf: values['as-of'] }
710
+ ...values['as-of'] === undefined ? {} : { asOf: values['as-of'] },
711
+ ...values.at === undefined ? {} : { at: values.at }
647
712
  })
648
713
  if (values.json === true) {
649
714
  return ok(`${JSON.stringify(matches, undefined, 2)}\n`)
@@ -657,7 +722,12 @@ export const queryCommand = (argv: readonly string[]): Output => {
657
722
  .join(' ')
658
723
  // A fully bound pattern has no bindings to print; transitive matches
659
724
  // additionally carry no row — confirm with the pattern itself.
660
- return bindings !== '' ? bindings : match.row?.raw_line ?? pattern.split('\n')[0]!
725
+ const line = bindings !== '' ? bindings : match.row?.raw_line ?? pattern.split('\n')[0]!
726
+ // An interpolated trajectory shows its value at the anchor
727
+ // (spec §32.4) — bindings already carry it in the value slot.
728
+ return match.at !== undefined && bindings === '' ?
729
+ `${line} ; at ${values.at}: ${match.at.text}` :
730
+ line
661
731
  })
662
732
  return ok(`${lines.join('\n')}\n`)
663
733
  } catch (error) {
@@ -1164,6 +1234,74 @@ export const syncCommand = (argv: readonly string[]): Output => {
1164
1234
  }
1165
1235
  }
1166
1236
 
1237
+ /**
1238
+ * `cave report` — the §31 deliverable: a markdown template's cave-q
1239
+ * blocks and inline splices render from the store, every stated fact
1240
+ * cited back to its claim. Problems mark the text, land on stderr with
1241
+ * template line numbers, and fail the exit code — the render never
1242
+ * silently drops a fact.
1243
+ */
1244
+ export const reportCommand = (argv: readonly string[]): Output => {
1245
+ const { values, positionals } = parseArgs({
1246
+ args: [...argv],
1247
+ options: {
1248
+ db: { type: 'string' },
1249
+ out: { type: 'string' },
1250
+ aliases: { type: 'boolean' },
1251
+ resolve: { type: 'boolean' },
1252
+ 'as-of': { type: 'string' },
1253
+ at: { type: 'string' },
1254
+ 'no-prelude': { type: 'boolean' }
1255
+ },
1256
+ allowPositionals: true
1257
+ })
1258
+ const template = readInput(positionals)
1259
+ const store = open(values.db ?? defaultDbPath(), values['no-prelude'] === true ? { registry: Registry.empty } : {})
1260
+ try {
1261
+ const rendered = caveReport(store, template, {
1262
+ aliases: values.aliases === true,
1263
+ resolve: values.resolve === true,
1264
+ ...values['as-of'] === undefined ? {} : { asOf: values['as-of'] },
1265
+ ...values.at === undefined ? {} : { at: values.at }
1266
+ })
1267
+ const err = rendered.problems
1268
+ .map(problem => `template line ${problem.line}: ${problem.message}`)
1269
+ .join('\n')
1270
+ const code = rendered.problems.length > 0 ? 1 : 0
1271
+ if (values.out === undefined) {
1272
+ return { code, out: rendered.markdown, err: err === '' ? '' : `${err}\n` }
1273
+ }
1274
+ writeFileSync(values.out, rendered.markdown)
1275
+ return {
1276
+ code,
1277
+ out: `rendered ${rendered.citations} citation(s) to ${values.out}\n`,
1278
+ err: err === '' ? '' : `${err}\n`
1279
+ }
1280
+ } catch (error) {
1281
+ return fail(`${error instanceof Error ? error.message : String(error)}\n`)
1282
+ } finally {
1283
+ store.close()
1284
+ }
1285
+ }
1286
+
1287
+ /**
1288
+ * True when both paths name the same file: equal once resolved, or — when
1289
+ * both exist — one device/inode pair, which also catches symlinks and
1290
+ * hard links to the file.
1291
+ */
1292
+ const sameFile = (a: string, b: string): boolean => {
1293
+ if (resolve(a) === resolve(b)) {
1294
+ return true
1295
+ }
1296
+ try {
1297
+ const left = statSync(a)
1298
+ const right = statSync(b)
1299
+ return left.dev === right.dev && left.ino === right.ino
1300
+ } catch {
1301
+ return false
1302
+ }
1303
+ }
1304
+
1167
1305
  export const exportCommand = (argv: readonly string[]): Output => {
1168
1306
  const { values } = parseArgs({
1169
1307
  args: [...argv],
@@ -1176,7 +1314,11 @@ export const exportCommand = (argv: readonly string[]): Output => {
1176
1314
  },
1177
1315
  allowPositionals: false
1178
1316
  })
1179
- const store = open(values.db ?? defaultDbPath(), values['no-prelude'] === true ? { registry: Registry.empty } : {})
1317
+ const db = values.db ?? defaultDbPath()
1318
+ if (values.out !== undefined && sameFile(db, values.out)) {
1319
+ return fail(`cave export: --out '${values.out}' is the source database — refusing to overwrite it\n`)
1320
+ }
1321
+ const store = open(db, values['no-prelude'] === true ? { registry: Registry.empty } : {})
1180
1322
  try {
1181
1323
  const text = store.exportText({ current: values.current === true, tx: values.tx === true })
1182
1324
  if (values.out === undefined) {
@@ -1315,6 +1457,8 @@ export const cave = (argv: readonly string[]): Output => {
1315
1457
  return syncCommand(rest)
1316
1458
  case 'export':
1317
1459
  return exportCommand(rest)
1460
+ case 'report':
1461
+ return reportCommand(rest)
1318
1462
  case 'demo':
1319
1463
  return demoCommand()
1320
1464
  case 'version':
package/src/index.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
- * `@cavelang/cli` — the `cave` command (parse / add / query / resolve / derive / act / check / suggest-alias / sync / export / reconstruct / demo).
2
+ * `@cavelang/cli` — the `cave` command (parse / add / query / resolve / derive / act / check / suggest-alias / sync / export / report / reconstruct / demo).
3
3
  * Programmatic access to the same implementations lives here.
4
4
  */
5
5
 
6
- export { actCommand, addCommand, cave, checkCommand, commandHelp, demoCommand, deriveCommand, exportCommand, helpCommand, highlightCommand, importCommand, parseCommand, queryCommand, reconstructCommand, resolveCommand, suggestAliasCommand, syncCommand, usage, versionCommand } from './cli.ts'
6
+ export { actCommand, addCommand, cave, checkCommand, commandHelp, demoCommand, deriveCommand, exportCommand, helpCommand, highlightCommand, importCommand, parseCommand, queryCommand, reconstructCommand, reportCommand, resolveCommand, suggestAliasCommand, syncCommand, usage, versionCommand } from './cli.ts'
7
7
  export type { Output } from './cli.ts'