latticesql 4.1.0 → 4.2.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 +31 -0
- package/dist/cli.js +1899 -135
- package/dist/index.cjs +1948 -153
- package/dist/index.d.cts +360 -1
- package/dist/index.d.ts +360 -1
- package/dist/index.js +1908 -127
- package/docs/api-reference.md +60 -4
- package/docs/architecture.md +24 -0
- package/docs/assistant.md +23 -0
- package/docs/examples/dashboard.html +284 -0
- package/docs/importing.md +118 -0
- package/docs/retrieval.md +31 -0
- package/package.json +7 -3
package/README.md
CHANGED
|
@@ -24,6 +24,37 @@ Every AI agent session starts cold — no memory of what happened yesterday, wha
|
|
|
24
24
|
|
|
25
25
|
Lattice has no opinions about your schema, your agents, or your file format. You define the tables. You control the rendering. Lattice runs the sync loop.
|
|
26
26
|
|
|
27
|
+
**New in 4.2 (additive — every 4.1 caller runs unchanged):** **import structured
|
|
28
|
+
data by dropping a file into the assistant.** The **structured-source importer**
|
|
29
|
+
turns a JSON or `.xlsx` source into a schema (entities / dimensions / junctions)
|
|
30
|
+
and materializes it: Excel sheets become records (header + data-region detection),
|
|
31
|
+
per-slice tabs become read-only **views** (no duplicated rows), an **as-of date**
|
|
32
|
+
is detected (contents → name → Excel preamble → Claude fallback, or per-row from a
|
|
33
|
+
date column) so re-importing a newer period keeps a **point-in-time snapshot**
|
|
34
|
+
beside the prior one, and a re-upload is fingerprinted + matched to existing tables
|
|
35
|
+
(new snapshot, not duplicate tables). It's reachable only by dropping a file in the
|
|
36
|
+
assistant rail: a confident match + detected date imports silently; otherwise an
|
|
37
|
+
**inline confirm card** proposes the schema, date, and mode before anything is
|
|
38
|
+
written (applied via `POST /api/import/apply`). New exports: `inferSchema`,
|
|
39
|
+
`inferFieldType`, `normalizeName`, `sourceRecords`, `materializeImport`,
|
|
40
|
+
`detectAsOf`, `detectAsOfCandidates`, `detectAsOfColumns`, `parseCellDate`,
|
|
41
|
+
`matchSchemaToExisting`, `renameEntities`, `excelToRecords`,
|
|
42
|
+
`dedupeAndDetectViews` (+ types). See **[docs/importing.md](docs/importing.md)**.
|
|
43
|
+
4.2 also tightens correctness and the read/egress posture: **retrieval bounding**
|
|
44
|
+
(`/api/history` clamps its `limit`; semantic search clamps `topK` before the
|
|
45
|
+
candidate fan-out; the no-index embedding scan takes an opt-in `maxScanChunks`
|
|
46
|
+
that fails loudly with `EmbeddingScanTooLargeError` rather than silently truncate
|
|
47
|
+
— off by default), an **import file-size cap enforced on BOTH the upload and the
|
|
48
|
+
apply-time read** (50 MB), a **genuinely failable retrieval-quality gate**
|
|
49
|
+
(cross-topic golden corpus + a generated sub-perfect committed baseline +
|
|
50
|
+
`npm run eval:gate` in CI; the benchmark now asserts a real pgvector index before
|
|
51
|
+
timing the vector phase; an advisory `npm run slo:gate`), **per-recipient scoping
|
|
52
|
+
of realtime delete events** (a deleted row's pk/existence is no longer fanned out
|
|
53
|
+
to members who couldn't read it), **symmetric many-to-many junction rendering**
|
|
54
|
+
(both sides show the remote entity), and a **Windows credential-store fix** (the
|
|
55
|
+
cross-process lock now retries transient `EPERM`/`EACCES`). All opt-in; absent the
|
|
56
|
+
opt-in, behavior is byte-identical to 4.1.
|
|
57
|
+
|
|
27
58
|
**New in 4.1 (additive — every 4.0 caller runs unchanged):** a measurable,
|
|
28
59
|
production-grade **retrieval & data substrate**. Retrieval gets _measurable_:
|
|
29
60
|
`evaluateRetrieval` reports the standard IR metrics (Precision@k / Recall@k / MRR /
|