@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
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import { createHash } from 'node:crypto';
|
|
19
19
|
import { Claim, Key, SourceSpan, Value } from '@cavelang/core';
|
|
20
|
+
import { QuerySql } from '@cavelang/store';
|
|
20
21
|
import { query as caveQuery } from '@cavelang/query';
|
|
21
22
|
import * as Template from "./template.js";
|
|
22
23
|
export const digestAttribute = 'connect-digest';
|
|
@@ -24,15 +25,36 @@ export const provenanceContext = 'src:cave-connect';
|
|
|
24
25
|
/** First 12 hex chars of SHA-256, mirroring `@cavelang/cli/ingest` (spec §9.5). */
|
|
25
26
|
export const digestOf = (content) => createHash('sha256').update(content).digest('hex').slice(0, 12);
|
|
26
27
|
/**
|
|
27
|
-
* Claim key of a
|
|
28
|
-
* (spec §9.2), so the key is stable while
|
|
28
|
+
* Claim key of a bookkeeping claim — `subject HAS attribute: … @src:cave-connect`.
|
|
29
|
+
* The value is excluded from keys (spec §9.2), so the key is stable while
|
|
30
|
+
* the value evolves, and the context makes it the connector's own series:
|
|
31
|
+
* an authored claim with the same attribute is another series entirely.
|
|
29
32
|
*/
|
|
30
|
-
const
|
|
33
|
+
export const bookkeepingKey = (subject, attribute) => Key.of(Claim.of({
|
|
31
34
|
subject: Claim.entity(subject),
|
|
32
35
|
verb: 'HAS',
|
|
33
|
-
payload: Claim.attribute(
|
|
36
|
+
payload: Claim.attribute(attribute, Value.parse('x')),
|
|
34
37
|
contexts: [provenanceContext]
|
|
35
38
|
}));
|
|
39
|
+
const digestKey = (subject) => bookkeepingKey(subject, digestAttribute);
|
|
40
|
+
/**
|
|
41
|
+
* The current row of every claim key whose subject starts with `under`,
|
|
42
|
+
* read with one indexed range query: the range goes into the grouped
|
|
43
|
+
* subquery too, so the latest-per-key aggregation runs over those rows
|
|
44
|
+
* alone, never the whole store.
|
|
45
|
+
*/
|
|
46
|
+
export const currentRowsUnder = (store, under) => {
|
|
47
|
+
const end = `${under.slice(0, -1)}${String.fromCharCode(under.charCodeAt(under.length - 1) + 1)}`;
|
|
48
|
+
return store.db.prepare(`${QuerySql.current('(SELECT * FROM cave_claim WHERE subject >= ? AND subject < ?)')} WHERE c.subject >= ? AND c.subject < ? ORDER BY c.tx`).all(under, end, under, end);
|
|
49
|
+
};
|
|
50
|
+
/** The current digest rows of a unit prefix — the connector's bookkeeping under `source/<name>/` or `connect/<name>/`. */
|
|
51
|
+
export const currentDigestsUnder = (store, under) => currentRowsUnder(store, under).filter(row => row.attribute === digestAttribute && row.negated === 0 && row.conf > 0 &&
|
|
52
|
+
store.toClaim(row).contexts.includes(provenanceContext));
|
|
53
|
+
/** @returns `true` when the unit has been connected at all — a current digest claim of any value. */
|
|
54
|
+
export const hasDigest = (store, subject) => {
|
|
55
|
+
const known = store.currentBelief(digestKey(subject));
|
|
56
|
+
return known !== undefined && known.conf > 0;
|
|
57
|
+
};
|
|
36
58
|
/** @returns `true` when the unit's current digest claim matches `digest`. */
|
|
37
59
|
export const isConnected = (store, subject, digest) => {
|
|
38
60
|
const known = store.currentBelief(digestKey(subject));
|
|
@@ -41,6 +63,18 @@ export const isConnected = (store, subject, digest) => {
|
|
|
41
63
|
const recordDigest = (store, subject, digest) => {
|
|
42
64
|
store.ingest(`${subject} HAS ${digestAttribute}: ${digest} @${provenanceContext}`);
|
|
43
65
|
};
|
|
66
|
+
/** Naming of an ad-hoc `cave connect <source>` pass: `connect/<name>[/<key>]` throughout. */
|
|
67
|
+
export const adHocNaming = (name) => ({
|
|
68
|
+
unit: key => key === undefined ? `connect/${name}` : `connect/${name}/${key}`,
|
|
69
|
+
run: key => key === undefined ? `connect/${name}` : `connect/${name}/${key}`,
|
|
70
|
+
recordPrefix: `connect/${name}/`
|
|
71
|
+
});
|
|
72
|
+
/** Naming of a declared `source/<name>` (spec §23.4): digests under `source/<name>[/<key>]`, stamps `@src:<name>[/<key>]`. */
|
|
73
|
+
export const declaredNaming = (name) => ({
|
|
74
|
+
unit: key => key === undefined ? `source/${name}` : `source/${name}/${key}`,
|
|
75
|
+
run: key => key === undefined ? name : `${name}/${key}`,
|
|
76
|
+
recordPrefix: `source/${name}/`
|
|
77
|
+
});
|
|
44
78
|
const recordFailure = Symbol('cave-connect record failure');
|
|
45
79
|
const failRecord = (problems) => {
|
|
46
80
|
throw { [recordFailure]: true, problems };
|
|
@@ -93,6 +127,8 @@ const retractStale = (store, run, keepIds) => {
|
|
|
93
127
|
});
|
|
94
128
|
return stale.length;
|
|
95
129
|
};
|
|
130
|
+
/** Retracts every current claim a lifecycle run owns — a unit whose declaration changed shape is retired whole. */
|
|
131
|
+
export const retireRun = (store, run) => retractStale(store, run, new Set());
|
|
96
132
|
/**
|
|
97
133
|
* One connect pass: prelude (digest-skipped as a unit under
|
|
98
134
|
* `connect/<name>`), then each record (digest-skipped under
|
|
@@ -107,6 +143,7 @@ export const connect = (store, mapping, records, options) => {
|
|
|
107
143
|
if (name === undefined) {
|
|
108
144
|
throw new Error(`cave connect: unusable source name ${JSON.stringify(options.name)} — pass --name`);
|
|
109
145
|
}
|
|
146
|
+
const naming = options.naming ?? adHocNaming(name);
|
|
110
147
|
const failures = [];
|
|
111
148
|
const notes = [];
|
|
112
149
|
const seen = new Set();
|
|
@@ -116,10 +153,10 @@ export const connect = (store, mapping, records, options) => {
|
|
|
116
153
|
let retracted = 0;
|
|
117
154
|
let pruned = 0;
|
|
118
155
|
let dropped = 0;
|
|
119
|
-
const ingestUnit = (
|
|
156
|
+
const ingestUnit = (unit, run, text, digest, sourceContext) => {
|
|
120
157
|
store.transaction(() => {
|
|
121
158
|
const result = store.ingest(text, {
|
|
122
|
-
source:
|
|
159
|
+
source: run,
|
|
123
160
|
lifecycle: true,
|
|
124
161
|
...sourceContext === undefined ? {} : { contexts: [sourceContext] }
|
|
125
162
|
});
|
|
@@ -127,24 +164,39 @@ export const connect = (store, mapping, records, options) => {
|
|
|
127
164
|
failRecord(result.problems.map(problem => `line ${problem.line}: ${problem.message}`));
|
|
128
165
|
}
|
|
129
166
|
added += result.ids.length;
|
|
130
|
-
retracted += retractStale(store,
|
|
131
|
-
recordDigest(store,
|
|
167
|
+
retracted += retractStale(store, run, new Set(result.ids));
|
|
168
|
+
recordDigest(store, unit, digest);
|
|
132
169
|
});
|
|
133
170
|
};
|
|
134
|
-
|
|
135
|
-
|
|
171
|
+
// A lifecycle prelude that became empty is still an update: the unit now
|
|
172
|
+
// says nothing, and every claim it owned retracts.
|
|
173
|
+
if (mapping.prelude !== '' || options.preludeLifecycle === true) {
|
|
174
|
+
const unit = naming.unit();
|
|
136
175
|
const digest = digestOf(mapping.prelude);
|
|
137
|
-
if (force || !isConnected(store,
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
// The prelude was linted with the mapping; a problem here aborts the run.
|
|
142
|
-
const detail = result.problems.map(problem => `prelude line ${problem.line}: ${problem.message}`).join('\n');
|
|
143
|
-
throw new Error(`cave connect: prelude failed to ingest\n${detail}`);
|
|
176
|
+
if (force || !isConnected(store, unit, digest)) {
|
|
177
|
+
if (options.preludeLifecycle === true) {
|
|
178
|
+
try {
|
|
179
|
+
ingestUnit(unit, naming.run(), mapping.prelude, digest);
|
|
144
180
|
}
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
181
|
+
catch (error) {
|
|
182
|
+
if (!isRecordError(error)) {
|
|
183
|
+
throw error;
|
|
184
|
+
}
|
|
185
|
+
throw new Error(`cave connect: prelude failed to ingest\n${error.problems.map(problem => `prelude ${problem}`).join('\n')}`);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
store.transaction(() => {
|
|
190
|
+
const result = store.ingest(mapping.prelude, { source: naming.run() });
|
|
191
|
+
if (result.problems.length > 0) {
|
|
192
|
+
// The prelude was linted with the mapping; a problem here aborts the run.
|
|
193
|
+
const detail = result.problems.map(problem => `prelude line ${problem.line}: ${problem.message}`).join('\n');
|
|
194
|
+
throw new Error(`cave connect: prelude failed to ingest\n${detail}`);
|
|
195
|
+
}
|
|
196
|
+
added += result.ids.length;
|
|
197
|
+
recordDigest(store, unit, digest);
|
|
198
|
+
});
|
|
199
|
+
}
|
|
148
200
|
}
|
|
149
201
|
else {
|
|
150
202
|
notes.push('prelude unchanged, skipped');
|
|
@@ -170,7 +222,7 @@ export const connect = (store, mapping, records, options) => {
|
|
|
170
222
|
failures.push({ record: `record ${at + 1} (${key})`, problems: instantiation.problems });
|
|
171
223
|
return;
|
|
172
224
|
}
|
|
173
|
-
const subject =
|
|
225
|
+
const subject = naming.unit(key);
|
|
174
226
|
const sourceContext = options.source === undefined ? undefined :
|
|
175
227
|
SourceSpan.context(options.source, options.spans?.[at]);
|
|
176
228
|
const digest = digestOf(`${instantiation.text}\0${sourceContext ?? ''}`);
|
|
@@ -179,7 +231,7 @@ export const connect = (store, mapping, records, options) => {
|
|
|
179
231
|
return;
|
|
180
232
|
}
|
|
181
233
|
try {
|
|
182
|
-
ingestUnit(subject, instantiation.text, digest, sourceContext);
|
|
234
|
+
ingestUnit(subject, naming.run(key), instantiation.text, digest, sourceContext);
|
|
183
235
|
mapped += 1;
|
|
184
236
|
}
|
|
185
237
|
catch (error) {
|
|
@@ -190,20 +242,16 @@ export const connect = (store, mapping, records, options) => {
|
|
|
190
242
|
}
|
|
191
243
|
});
|
|
192
244
|
if (options.prune === true) {
|
|
193
|
-
const prefix =
|
|
194
|
-
|
|
195
|
-
for (const row of store
|
|
196
|
-
const
|
|
197
|
-
if (
|
|
198
|
-
latest.set(row.claim_key, row);
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
for (const row of latest.values()) {
|
|
202
|
-
if (row.conf <= 0 || !row.subject.startsWith(prefix) || seen.has(row.subject.slice(prefix.length))) {
|
|
245
|
+
const prefix = naming.recordPrefix;
|
|
246
|
+
// The source's own record digests, by range — never the whole history.
|
|
247
|
+
for (const row of currentDigestsUnder(store, prefix)) {
|
|
248
|
+
const key = row.subject.slice(prefix.length);
|
|
249
|
+
if (seen.has(key)) {
|
|
203
250
|
continue;
|
|
204
251
|
}
|
|
205
252
|
store.transaction(() => {
|
|
206
|
-
|
|
253
|
+
// The digest entity names the record; its claims are found by run.
|
|
254
|
+
retracted += retractStale(store, naming.run(key), new Set());
|
|
207
255
|
store.insertResult({
|
|
208
256
|
claims: [{ claim: { ...store.toClaim(row), conf: 0, raw: '', comment: 'retracted: record left the source' }, line: 0 }],
|
|
209
257
|
edges: [],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { LineSpan } from '@cavelang/core';
|
|
8
8
|
export type Format = 'csv' | 'tsv' | 'json' | 'jsonl' | 'sqlite';
|
|
9
|
+
/** Every record format, in `--format` order. */
|
|
10
|
+
export declare const formats: readonly Format[];
|
|
9
11
|
/** Injection point for tests; the built-in fetch otherwise. */
|
|
10
12
|
export type FetchLike = (url: string, init: RequestInit) => Promise<Response>;
|
|
11
13
|
export type Options = {
|
|
@@ -13,9 +15,18 @@ export type Options = {
|
|
|
13
15
|
readonly format?: Format;
|
|
14
16
|
/** CSV delimiter (default `,`; `\t` for tsv). */
|
|
15
17
|
readonly delimiter?: string;
|
|
16
|
-
/**
|
|
18
|
+
/**
|
|
19
|
+
* SQLite table to read (`SELECT *`); for any other format, the name of
|
|
20
|
+
* the temporary table `sql` runs against (default `records`).
|
|
21
|
+
*/
|
|
17
22
|
readonly table?: string;
|
|
18
|
-
/**
|
|
23
|
+
/**
|
|
24
|
+
* SQLite query — the alternative to `table`. For any other format the
|
|
25
|
+
* parsed records are loaded into a temporary in-memory SQLite table,
|
|
26
|
+
* values exactly as parsed (CSV cells are text; cast for arithmetic),
|
|
27
|
+
* and the query's rows become the records (spec §23.1): one mechanism
|
|
28
|
+
* for projecting, filtering, and reshaping, no expression language.
|
|
29
|
+
*/
|
|
19
30
|
readonly sql?: string;
|
|
20
31
|
/** Dot path to the record array inside a JSON document. */
|
|
21
32
|
readonly records?: string;
|
|
@@ -29,6 +40,8 @@ export type Loaded = {
|
|
|
29
40
|
readonly format: Format;
|
|
30
41
|
/** Record-aligned source line spans when the format has stable lines. */
|
|
31
42
|
readonly spans?: readonly LineSpan[];
|
|
43
|
+
/** The source's own column order when it declares one (a CSV header), records or none. */
|
|
44
|
+
readonly columns?: readonly string[];
|
|
32
45
|
};
|
|
33
46
|
export declare const isUrl: (source: string) => boolean;
|
|
34
47
|
/** Infers the source format from an explicit option or the file/URL extension. */
|
|
@@ -39,6 +52,24 @@ export declare const formatOf: (source: string, options?: Options) => Format;
|
|
|
39
52
|
*/
|
|
40
53
|
export declare const nameOf: (source: string) => string;
|
|
41
54
|
export declare const parseCsv: (text: string, delimiter?: string) => Record<string, string>[];
|
|
55
|
+
/**
|
|
56
|
+
* Runs `sql` over the records loaded from a text format: the records
|
|
57
|
+
* become one temporary in-memory table (`records`, or `table`), one column
|
|
58
|
+
* per field in first-seen order, and the query's rows are the records
|
|
59
|
+
* that reach the mapping (spec §23.1). Line spans do not survive a query.
|
|
60
|
+
*/
|
|
61
|
+
export declare const queryRecords: (records: readonly Record<string, unknown>[], sql: string, table?: string, schema?: readonly string[]) => Record<string, unknown>[];
|
|
62
|
+
/** Fetches a URL's body; the transport is injectable for tests. */
|
|
63
|
+
export declare const fetchText: (url: string, options: Options) => Promise<{
|
|
64
|
+
text: string;
|
|
65
|
+
contentType: string;
|
|
66
|
+
}>;
|
|
67
|
+
/**
|
|
68
|
+
* Loads a local source synchronously — what assembling a text store needs
|
|
69
|
+
* (spec §23.4); a URL source is refused, since fetching it cannot be
|
|
70
|
+
* synchronous: `cave connect` follows URLs.
|
|
71
|
+
*/
|
|
72
|
+
export declare const loadSync: (source: string, options?: Options) => Loaded;
|
|
42
73
|
/** Loads a source to records. Local files read synchronously; URLs fetch. */
|
|
43
74
|
export declare const load: (source: string, options?: Options) => Promise<Loaded>;
|
|
44
75
|
//# sourceMappingURL=source.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/source.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAG9C,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;AAEhE,+DAA+D;AAC/D,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAE7E,MAAM,MAAM,OAAO,GAAG;IACpB,iEAAiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,iDAAiD;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B
|
|
1
|
+
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/source.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAG9C,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;AAEhE,gDAAgD;AAChD,eAAO,MAAM,OAAO,EAAE,SAAS,MAAM,EAA8C,CAAA;AAEnF,+DAA+D;AAC/D,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAE7E,MAAM,MAAM,OAAO,GAAG;IACpB,iEAAiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,iDAAiD;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,iDAAiD;IACjD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAChC,+DAA+D;IAC/D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IACpD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,yEAAyE;IACzE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAA;IACpC,0FAA0F;IAC1F,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,KAAK,GAAI,QAAQ,MAAM,KAAG,OACT,CAAA;AAa9B,kFAAkF;AAClF,eAAO,MAAM,QAAQ,GAAI,QAAQ,MAAM,EAAE,UAAS,OAAY,KAAG,MAUhE,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,QAAQ,MAAM,KAAG,MAOvC,CAAA;AAsED,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,EAAE,kBAAe,KAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACrC,CAAA;AA6F1C;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GACvB,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAC3C,KAAK,MAAM,EACX,cAAiB,EACjB,SAAS,SAAS,MAAM,EAAE,KACzB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAwFzB,CAAA;AAgBD,mEAAmE;AACnE,eAAO,MAAM,SAAS,GAAU,KAAK,MAAM,EAAE,SAAS,OAAO,KAAG,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAa5G,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,QAAQ,MAAM,EAAE,UAAS,OAAY,KAAG,MAShE,CAAA;AASD,6EAA6E;AAC7E,eAAO,MAAM,IAAI,GAAU,QAAQ,MAAM,EAAE,UAAS,OAAY,KAAG,OAAO,CAAC,MAAM,CAahF,CAAA"}
|
|
@@ -8,6 +8,8 @@ import { readFileSync } from 'node:fs';
|
|
|
8
8
|
import { basename, extname } from 'node:path';
|
|
9
9
|
import { DatabaseSync } from 'node:sqlite';
|
|
10
10
|
import { fieldOf } from "./template.js";
|
|
11
|
+
/** Every record format, in `--format` order. */
|
|
12
|
+
export const formats = ['csv', 'tsv', 'json', 'jsonl', 'sqlite'];
|
|
11
13
|
export const isUrl = (source) => /^https?:\/\//i.test(source);
|
|
12
14
|
const extensionFormats = {
|
|
13
15
|
'.csv': 'csv',
|
|
@@ -106,10 +108,11 @@ const parseCsvLocated = (text, delimiter = ',') => {
|
|
|
106
108
|
const [headerRow, ...dataRows] = rows;
|
|
107
109
|
const header = headerRow?.cells;
|
|
108
110
|
if (header === undefined) {
|
|
109
|
-
return { records: [], spans: [] };
|
|
111
|
+
return { records: [], spans: [], columns: [] };
|
|
110
112
|
}
|
|
111
113
|
const present = dataRows.filter(row_ => row_.cells.length > 1 || row_.cells[0] !== '');
|
|
112
114
|
return {
|
|
115
|
+
columns: header.map(cell => cell.trim()),
|
|
113
116
|
records: present.map(row_ => Object.fromEntries(header.map((name, at) => [name.trim(), row_.cells[at] ?? '']))),
|
|
114
117
|
spans: present.map(row_ => row_.span)
|
|
115
118
|
};
|
|
@@ -153,6 +156,149 @@ const parseJsonlLocated = (text, source) => {
|
|
|
153
156
|
const sqliteValue = (value) => typeof value === 'bigint' ?
|
|
154
157
|
(Number.isSafeInteger(Number(value)) ? Number(value) : value.toString()) :
|
|
155
158
|
value;
|
|
159
|
+
/**
|
|
160
|
+
* The columns a missing-column diagnostic may refer to. SQLite strips
|
|
161
|
+
* backticks and brackets before reporting, keeps the double quotes of a
|
|
162
|
+
* plain quoted identifier, and drops them from a qualified reference, so
|
|
163
|
+
* `r."last.name"` arrives as `r.last.name`, which could be column
|
|
164
|
+
* `last.name` of `r` or column `r.last.name` of the table, and `"x"`
|
|
165
|
+
* could be the column `x` or a field literally named `"x"`. Over an empty
|
|
166
|
+
* table an extra column costs nothing, so every reading is staged and the
|
|
167
|
+
* query resolves whichever it meant.
|
|
168
|
+
*/
|
|
169
|
+
const inferColumns = (reference) => {
|
|
170
|
+
const quoted = /^"([^]*)"$/.exec(reference);
|
|
171
|
+
if (quoted !== null) {
|
|
172
|
+
return [reference, quoted[1]];
|
|
173
|
+
}
|
|
174
|
+
const segments = reference.split('.');
|
|
175
|
+
return segments.map((_, at) => segments.slice(at).join('.'));
|
|
176
|
+
};
|
|
177
|
+
/**
|
|
178
|
+
* The column a SQLite diagnostic says is missing, or `undefined` for any
|
|
179
|
+
* other error. The hint SQLite appends to a double-quoted identifier is a
|
|
180
|
+
* fixed phrase and appears only after a leading quote, so it is stripped
|
|
181
|
+
* exactly and only there — a bare name that happens to end in the phrase
|
|
182
|
+
* is the name. A `JOIN … USING` column arrives with its own fixed suffix.
|
|
183
|
+
*/
|
|
184
|
+
const missingColumn = (message) => {
|
|
185
|
+
const hint = ' - should this be a string literal in single-quotes?';
|
|
186
|
+
// A quoted name may span lines, so the capture does too.
|
|
187
|
+
const column = /no such column: ([^]+)$/.exec(message)?.[1];
|
|
188
|
+
if (column !== undefined) {
|
|
189
|
+
return column.startsWith('"') && column.endsWith(hint) ? column.slice(0, -hint.length) : column;
|
|
190
|
+
}
|
|
191
|
+
return /cannot join using column ([^]+) - column not present in both tables$/.exec(message)?.[1];
|
|
192
|
+
};
|
|
193
|
+
/**
|
|
194
|
+
* The SQLite representation of a record field: scalars as they are
|
|
195
|
+
* (a bigint exact while SQLite's signed 64-bit integer holds it, its
|
|
196
|
+
* decimal text beyond), booleans as 0/1, anything structured as JSON text.
|
|
197
|
+
*/
|
|
198
|
+
const sqlValue = (value) => value === undefined || value === null ? null :
|
|
199
|
+
typeof value === 'number' || typeof value === 'string' ? value :
|
|
200
|
+
typeof value === 'bigint' ? (value >= -(2n ** 63n) && value < 2n ** 63n ? value : value.toString()) :
|
|
201
|
+
typeof value === 'boolean' ? (value ? 1 : 0) :
|
|
202
|
+
JSON.stringify(value);
|
|
203
|
+
/**
|
|
204
|
+
* Runs `sql` over the records loaded from a text format: the records
|
|
205
|
+
* become one temporary in-memory table (`records`, or `table`), one column
|
|
206
|
+
* per field in first-seen order, and the query's rows are the records
|
|
207
|
+
* that reach the mapping (spec §23.1). Line spans do not survive a query.
|
|
208
|
+
*/
|
|
209
|
+
export const queryRecords = (records, sql, table = 'records', schema) => {
|
|
210
|
+
if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(table)) {
|
|
211
|
+
throw new Error(`--table ${JSON.stringify(table)} is not a plain identifier`);
|
|
212
|
+
}
|
|
213
|
+
// The source's own columns first (a CSV header survives an empty file;
|
|
214
|
+
// a repeated header is one column, as it is one record field), then any
|
|
215
|
+
// field the records add.
|
|
216
|
+
const columns = [...new Set(schema ?? [])];
|
|
217
|
+
const known = new Set(columns);
|
|
218
|
+
for (const record of records) {
|
|
219
|
+
for (const key of Object.keys(record)) {
|
|
220
|
+
if (!known.has(key)) {
|
|
221
|
+
known.add(key);
|
|
222
|
+
columns.push(key);
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
// SQLite column names are case-insensitive — for ASCII letters only, as
|
|
227
|
+
// its own folding is — so two fields that differ only in ASCII case
|
|
228
|
+
// cannot both be staged, and merging them would lose data.
|
|
229
|
+
const fold = (name) => name.replace(/[A-Z]/g, letter => letter.toLowerCase());
|
|
230
|
+
const folded = new Map();
|
|
231
|
+
for (const column of columns) {
|
|
232
|
+
const other = folded.get(fold(column));
|
|
233
|
+
if (other !== undefined) {
|
|
234
|
+
throw new Error(`fields ${JSON.stringify(other)} and ${JSON.stringify(column)} differ only in case, which SQLite cannot tell apart — rename one in the source before --sql`);
|
|
235
|
+
}
|
|
236
|
+
folded.set(fold(column), column);
|
|
237
|
+
}
|
|
238
|
+
const quoted = (name) => `"${name.replaceAll('"', '""')}"`;
|
|
239
|
+
const stage = () => {
|
|
240
|
+
const db = new DatabaseSync(':memory:');
|
|
241
|
+
try {
|
|
242
|
+
// No affinity: a value is exactly what the source gave — a CSV cell is
|
|
243
|
+
// text ("00123" stays "00123"), a JSON number is a number — and a query
|
|
244
|
+
// casts when it wants arithmetic (CAST(kg AS REAL) > 10).
|
|
245
|
+
db.exec(`CREATE TABLE ${quoted(table)} (${columns.length === 0 ? 'value' : columns.map(quoted).join(', ')})`);
|
|
246
|
+
if (columns.length > 0) {
|
|
247
|
+
const insert = db.prepare(`INSERT INTO ${quoted(table)} (${columns.map(quoted).join(', ')}) VALUES (${columns.map(() => '?').join(', ')})`);
|
|
248
|
+
for (const record of records) {
|
|
249
|
+
insert.run(...columns.map(column => sqlValue(record[column])));
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
else {
|
|
253
|
+
// Records without any field are still records: one row each, so a
|
|
254
|
+
// count or a constant projection sees them.
|
|
255
|
+
const insert = db.prepare(`INSERT INTO ${quoted(table)} DEFAULT VALUES`);
|
|
256
|
+
for (let i = 0; i < records.length; i += 1)
|
|
257
|
+
insert.run();
|
|
258
|
+
}
|
|
259
|
+
const statement = db.prepare(sql);
|
|
260
|
+
// Integers beyond the safe range arrive as bigints and become text in
|
|
261
|
+
// `sqliteValue`, instead of throwing out of range.
|
|
262
|
+
statement.setReadBigInts(true);
|
|
263
|
+
const rows = statement.all();
|
|
264
|
+
return rows.map(row => Object.fromEntries(Object.entries(row).map(([key, value]) => [key, sqliteValue(value)])));
|
|
265
|
+
}
|
|
266
|
+
finally {
|
|
267
|
+
db.close();
|
|
268
|
+
}
|
|
269
|
+
};
|
|
270
|
+
// A schemaless source (JSON, JSONL) that became empty has no columns to
|
|
271
|
+
// offer, yet the query names the ones it expects: for an empty input
|
|
272
|
+
// only, learn them from SQLite's own complaint and retry, so the query
|
|
273
|
+
// answers with zero rows exactly as it would over a header-only CSV.
|
|
274
|
+
// A CSV cleared to nothing has no header either: an empty schema is no
|
|
275
|
+
// schema, not a header of zero columns.
|
|
276
|
+
const schemaless = schema === undefined || schema.length === 0;
|
|
277
|
+
// Every retry stages at least one column it did not know, so the loop
|
|
278
|
+
// ends when SQLite stops naming new ones — however wide the query.
|
|
279
|
+
for (;;) {
|
|
280
|
+
try {
|
|
281
|
+
return stage();
|
|
282
|
+
}
|
|
283
|
+
catch (error) {
|
|
284
|
+
// Only a schemaless, empty input infers: a header-bearing source keeps
|
|
285
|
+
// SQLite's own validation, so a typo stays a typo. A column named in
|
|
286
|
+
// `JOIN … USING` gets its own diagnostic.
|
|
287
|
+
// The name arrives exactly as SQLite parsed it, edge spaces included:
|
|
288
|
+
// `\` first \`` is the field " first ".
|
|
289
|
+
const reference = records.length === 0 && schemaless && error instanceof Error ? missingColumn(error.message) : undefined;
|
|
290
|
+
// The empty name is a column too: SQLite accepts `""`.
|
|
291
|
+
const names = reference === undefined ? [] : inferColumns(reference).filter(name => !known.has(name));
|
|
292
|
+
if (names.length === 0) {
|
|
293
|
+
throw error;
|
|
294
|
+
}
|
|
295
|
+
for (const name of names) {
|
|
296
|
+
known.add(name);
|
|
297
|
+
columns.push(name);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
};
|
|
156
302
|
const readSqlite = (path, options) => {
|
|
157
303
|
if ((options.table === undefined) === (options.sql === undefined)) {
|
|
158
304
|
throw new Error(`${path}: a SQLite source needs exactly one of --table or --sql`);
|
|
@@ -167,7 +313,8 @@ const readSqlite = (path, options) => {
|
|
|
167
313
|
db.close();
|
|
168
314
|
}
|
|
169
315
|
};
|
|
170
|
-
|
|
316
|
+
/** Fetches a URL's body; the transport is injectable for tests. */
|
|
317
|
+
export const fetchText = async (url, options) => {
|
|
171
318
|
const response = await (options.fetchImpl ?? fetch)(url, {
|
|
172
319
|
headers: {
|
|
173
320
|
'user-agent': 'cave-connect',
|
|
@@ -181,6 +328,23 @@ const fetchText = async (url, options) => {
|
|
|
181
328
|
}
|
|
182
329
|
return { text: await response.text(), contentType: response.headers.get('content-type') ?? '' };
|
|
183
330
|
};
|
|
331
|
+
/**
|
|
332
|
+
* Loads a local source synchronously — what assembling a text store needs
|
|
333
|
+
* (spec §23.4); a URL source is refused, since fetching it cannot be
|
|
334
|
+
* synchronous: `cave connect` follows URLs.
|
|
335
|
+
*/
|
|
336
|
+
export const loadSync = (source, options = {}) => {
|
|
337
|
+
if (isUrl(source)) {
|
|
338
|
+
throw new Error(`${source}: URL sources are followed by cave connect, not when assembling a text store`);
|
|
339
|
+
}
|
|
340
|
+
const format = formatOf(source, options);
|
|
341
|
+
if (format === 'sqlite') {
|
|
342
|
+
return { records: readSqlite(source, options), format };
|
|
343
|
+
}
|
|
344
|
+
return { ...queried(parseLocated(format, readFileSync(source, 'utf8'), source, options), options), format };
|
|
345
|
+
};
|
|
346
|
+
/** Applies `sql`, when given, to records of a text format — the spans no longer align, so they go. */
|
|
347
|
+
const queried = (parsed, options) => options.sql === undefined ? parsed : { records: queryRecords(parsed.records, options.sql, options.table, parsed.columns) };
|
|
184
348
|
/** Loads a source to records. Local files read synchronously; URLs fetch. */
|
|
185
349
|
export const load = async (source, options = {}) => {
|
|
186
350
|
if (isUrl(source)) {
|
|
@@ -192,13 +356,9 @@ export const load = async (source, options = {}) => {
|
|
|
192
356
|
if (format === 'sqlite') {
|
|
193
357
|
throw new Error(`${source}: SQLite sources must be local files`);
|
|
194
358
|
}
|
|
195
|
-
return { ...parseLocated(format, text, source, options), format };
|
|
196
|
-
}
|
|
197
|
-
const format = formatOf(source, options);
|
|
198
|
-
if (format === 'sqlite') {
|
|
199
|
-
return { records: readSqlite(source, options), format };
|
|
359
|
+
return { ...queried(parseLocated(format, text, source, options), options), format };
|
|
200
360
|
}
|
|
201
|
-
return
|
|
361
|
+
return loadSync(source, options);
|
|
202
362
|
};
|
|
203
363
|
const parseLocated = (format, text, source, options) => {
|
|
204
364
|
switch (format) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.js","sourceRoot":"","sources":["../../src/source.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"source.js","sourceRoot":"","sources":["../../src/source.ts"],"names":[],"mappings":"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"}
|
|
@@ -56,6 +56,24 @@ export declare const parse: (text: string) => {
|
|
|
56
56
|
mapping?: Mapping;
|
|
57
57
|
problems: readonly string[];
|
|
58
58
|
};
|
|
59
|
+
/**
|
|
60
|
+
* Whether a mapping is written inline (spec §23.1): one line, a
|
|
61
|
+
* comma-separated list of claim lines in the §25.1 effect-template
|
|
62
|
+
* convention — `?name IS person, ?name WORKS-AT ?company` — recognized by
|
|
63
|
+
* a `?variable` token or a top-level comma. A path never has either.
|
|
64
|
+
*/
|
|
65
|
+
export declare const isInline: (text: string) => boolean;
|
|
66
|
+
/**
|
|
67
|
+
* An inline mapping as the document it stands for: one claim line per
|
|
68
|
+
* top-level comma of the claim text; a trailing `; comment` belongs to the
|
|
69
|
+
* last line, commas and all.
|
|
70
|
+
*/
|
|
71
|
+
export declare const inlineDocument: (text: string) => string;
|
|
72
|
+
/** Parses a mapping written as a document or inline (spec §23.1). */
|
|
73
|
+
export declare const parseAny: (text: string) => {
|
|
74
|
+
mapping?: Mapping;
|
|
75
|
+
problems: readonly string[];
|
|
76
|
+
};
|
|
59
77
|
/**
|
|
60
78
|
* Formats one field value for one template slot (spec §23.1). Deterministic
|
|
61
79
|
* and exact — values insert verbatim when already token-safe, or as quoted
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,MAAM,MAAM,OAAO,GAAG;IACpB,sFAAsF;IACtF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAA;IAClD,mEAAmE;IACnE,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,CAAC,GAAG,OAAO,CAAA;AAEvB,wDAAwD;AACxD,MAAM,MAAM,SAAS,GACjB;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAE1D,0DAA0D;AAC1D,MAAM,MAAM,aAAa,GAAG;IAC1B,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,wEAAwE;IACxE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CACrC,CAAA;AA4BD;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,MAAM,MAAM,KAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CAuDpF,CAAA;
|
|
1
|
+
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,MAAM,MAAM,OAAO,GAAG;IACpB,sFAAsF;IACtF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAA;IAClD,mEAAmE;IACnE,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,CAAC,GAAG,OAAO,CAAA;AAEvB,wDAAwD;AACxD,MAAM,MAAM,SAAS,GACjB;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAE1D,0DAA0D;AAC1D,MAAM,MAAM,aAAa,GAAG;IAC1B,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,wEAAwE;IACxE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CACrC,CAAA;AA4BD;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,MAAM,MAAM,KAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CAuDpF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,KAAG,OAMvC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,MAO7C,CAAA;AAED,qEAAqE;AACrE,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,KAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CACnC,CAAA;AAIrD;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,OAAO,EAAE,UAAU,SAAS,GAAG,SAAS,KAAG,SAqC7E,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,GAAI,QAAQ,OAAO,EAAE,MAAM,MAAM,KAAG,OAYvD,CAAA;AA0CD;;;;GAIG;AACH,eAAO,MAAM,WAAW,GACtB,WAAW,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,KAChC,aAgDF,CAAA"}
|