Commit graph

10 commits

Author SHA1 Message Date
Mario Zechner
5507d76ee8 feat(agent,ai): add narrow subpath exports so clients skip the barrel
A barrel forces Node to evaluate its whole graph: importing reduceLaneSnapshot
(1 file, 6 KB) through pi-agent-core's index evaluated 106 files, and mini's
server loaded 112 files to enumerate JSONL headers. Types are free, so this only
ever affected value imports.

pi-ai gains ./utils/* alongside the existing ./providers/* and ./api/*
wildcards. pi-agent-core gains ./harness/context, ./harness/env/nodejs,
./harness/runtime/reducer and ./harness/session, and ./session/testing becomes
./harness/session/testing so every export mirrors its source path. The barrel
and ./node keep their batteries-included semantics.

The session layer takes uuidv7 from @earendil-works/pi-ai/utils/uuid rather than
the pi-ai barrel, which is what let ./harness/session drop from 42 files to 19.
Two imports there were written `import { type Usage } from` - not a type-only
statement, so it emitted a runtime import of the barrel.

scripts/check-entry-graphs.mjs walks each declared entry's value-import graph and
enforces per-entry budgets and forbidden paths, so a stray `export *` cannot
silently undo this. It caught the two `import { type ... }` regressions above.

Measured with mini: server 112 files and 98 MB to 28 files and 69 MB, presentation
204 files and 125 MB to 99 files and 110 MB. The worker still loads the provider
graph, correctly.
2026-08-26 22:02:31 +02:00
Cristina Poncela Cubeiro
94108a1ac6 feat(sqlite): databasePath, sessionId for sharding 2026-08-24 15:40:18 +02:00
Cristina Poncela Cubeiro
bf7acdcc18 test(sqlite): finalize repo and storage conformance 2026-08-18 16:32:25 +02:00
Armin Ronacher
3fbfcf48ff feat(agent): thread invocation context through harness APIs 2026-08-17 19:56:21 +02:00
Mario Zechner
c179395b1e feat(agent): add bound values and lists 2026-08-17 16:47:18 +02:00
Cristina Poncela Cubeiro
011c78f710 feat(sqlite): triggers for no duplicate ids across tables 2026-08-16 22:32:07 +02:00
Vegard Stikbakke
b863f1cff6 fix: revert SQLite conformance CI isolation 2026-08-14 11:16:49 +02:00
Vegard Stikbakke
f7a00fe43b fix: isolate incomplete SQLite conformance job 2026-08-14 11:12:20 +02:00
Vegard Stikbakke
a2dd8ab2a7 fix: skip incomplete SQLite conformance cases 2026-08-14 11:09:48 +02:00
Vegard Stikbakke
75bb6a0fcd feat(agent): add SQLite storage conformance coverage 2026-08-14 10:50:23 +02:00