Christian Klotz
8823891f3d
feat(agent): simplify session storage composition
2026-08-02 00:08:18 +03:00
Christian Klotz
1a7e1faa1f
fix(agent): synchronize array-backed entry indexes eagerly
2026-08-01 23:50:57 +03:00
Christian Klotz
6e48c10f5b
Merge pull request #7448 from earendil-works/feat/agent-branch-queries-v2
...
feat(agent): add bounded branch entry queries
2026-08-01 22:14:17 +03:00
Christian Klotz
4ecd1bbe67
test(agent): derive timeout output size from truncation limit
2026-08-01 21:30:35 +03:00
Christian Klotz
081d7fbfca
fix(agent): harden bounded branch queries
2026-08-01 21:26:55 +03:00
Christian Klotz
9b75872017
feat(agent): add bounded branch queries
2026-08-01 21:26:55 +03:00
Armin Ronacher
a1403af8ec
fix(agent): make timeout output test deterministic
2026-08-01 14:06:00 +02:00
Christian Klotz
e92bf60a58
fix(agent): make SQLite branch caching scalable
2026-08-01 10:08:56 +03:00
Christian Klotz
c2adb4d1da
fix(agent): use SQLite trigger for rollback test
2026-08-01 02:52:21 +03:00
Christian Klotz
57583617ef
fix(agent): make SQLite session operations linear
2026-08-01 02:11:22 +03:00
Christian Klotz
53422a241a
feat(agent): add storage-owned session readers
2026-08-01 01:24:59 +03:00
Christian Klotz
a0bb4a489b
Merge pull request #7400 from earendil-works/refactor/sqlite-session-connection-cleanup
...
Remove obsolete SQLite session connection internals
2026-07-31 23:00:50 +03:00
Christian Klotz
62f3c61b68
feat(agent): add per-session store queues
2026-07-31 22:56:26 +03:00
Christian Klotz
9f4dfdddbf
fix(agent): remove obsolete SQLite session internals
2026-07-31 22:55:49 +03:00
Christian Klotz
9c3b271be0
fix(agent): make session search query-only
2026-07-31 18:31:04 +03:00
Christian Klotz
15f719489b
fix(agent): scope JSONL entry IDs by path
2026-07-31 17:59:16 +03:00
Christian Klotz
2b765ef529
fix(agent): restore forward session cursor reads
...
Document complete session store and search composition for scanning and canonical SQLite search.
2026-07-31 17:17:41 +03:00
Christian Klotz
4e81b79615
fix(agent): restrict session construction to repositories
2026-07-31 16:56:51 +03:00
Christian Klotz
f90b8595db
fix(agent): update harness lifecycle tests
2026-07-31 16:20:59 +03:00
Christian Klotz
11679808c7
Merge remote-tracking branch 'origin/main' into refactor/session-store-file-names
...
* origin/main: (25 commits)
fix(tui): prevent phantom alt-screen selections
feat(tui): add draggable transient scrollbars
fix(coding-agent): avoid auth read lock contention
fix(ai): route Fireworks Kimi K3 through OpenAI compatibility
docs(client): document Bun Unix transport support
feat(client): add Unix socket transport
fix: forward autocompleteMaxVisible to custom editors (#7369 )
fix(ai): scope Codex sockets to accounts
docs(client): note promise helper removal
refactor(client): retain ES2022 compatibility
refactor(client): simplify lifecycle architecture
refactor(client): tighten lifecycle state modeling
feat(client): add runtime-neutral session client
fix(coding-agent): decouple auth lock error tests
fix: custom-compaction through provider via new model runtime complete (#7325 )
fix(ai): preserve Anthropic initial stream block content (#7358 )
fix(coding-agent): update vulnerable brace-expansion
fix(ai): keep signed empty text/thinking blocks in google history (#7362 )
feat(tui): add stacked alt-screen flashes (#7361 )
fix(coding-agent): reload credentials before reads
...
2026-07-31 16:20:00 +03:00
Christian Klotz
2132f8f75f
fix(agent): clarify session persistence ownership
2026-07-31 16:16:42 +03:00
Christian Klotz
7e121c67cf
refactor(client): tighten lifecycle state modeling
2026-07-31 12:19:19 +03:00
Christian Klotz
33bc0a7b83
feat(client): add runtime-neutral session client
...
Split harness shutdown initiation from settlement so callbacks can request shutdown without deadlocking active work.
2026-07-31 12:19:19 +03:00
Christian Klotz
8eda7d5020
fix(agent): type composed session stores explicitly
2026-07-31 10:37:12 +03:00
Christian Klotz
a1bb7e4483
fix(agent): expose session stores through factories
2026-07-31 10:28:59 +03:00
Christian Klotz
2700511e45
fix(agent): refine session repository API
2026-07-31 09:48:24 +03:00
Christian Klotz
9b50b046d3
Merge pull request #7163 from cristinaponcela/feat/search
...
feat: search index sqlite
2026-07-31 09:15:12 +03:00
Cristina Poncela Cubeiro
aa784e5eed
refactor, cleanup and conditionals for fts5
2026-07-31 05:51:24 +02:00
Cristina Poncela Cubeiro
fb0f0f7cd5
rename: vars
2026-07-31 05:19:23 +02:00
Christian Klotz
9cde1725d7
fix(agent): preserve waitForIdle semantics
2026-07-30 22:22:47 +03:00
Christian Klotz
bc031ae457
fix(agent): await mutations during harness shutdown
2026-07-30 22:07:37 +03:00
Christian Klotz
82c4859839
feat(agent): add harness shutdown lifecycle
2026-07-30 21:29:30 +03:00
Cristina Poncela Cubeiro
83a7f755cc
refactor and cleanup
2026-07-30 16:35:29 +02:00
Cristina Poncela Cubeiro
5e48d41ecd
refactor: repo facade
2026-07-30 14:07:58 +02:00
Cristina Poncela Cubeiro
6a9591ae78
refactor: repo owns session and storage separately
2026-07-29 16:33:20 +02:00
Cristina Poncela Cubeiro
3627c01179
fix: do not require index
2026-07-29 10:22:51 +02:00
Cristina Poncela Cubeiro
d5c37c65bf
refactor: composable Storage vs Search
2026-07-29 09:50:36 +02:00
Cristina Poncela Cubeiro
c2bd0eda7f
fix: default sqlite search backend to fts5
2026-07-27 21:32:48 +02:00
Cristina Poncela Cubeiro
3c2b71b570
refactor: search index swappable
2026-07-27 17:52:13 +02:00
Cristina Poncela Cubeiro
0ee1ec0030
rename: may not be index
2026-07-27 16:12:43 +02:00
Cristina Poncela Cubeiro
b92e5e8614
feat: search index factory
2026-07-27 10:02:25 +02:00
Cristina Poncela Cubeiro
0f5a6e422b
feat: search index sqlite
2026-07-27 09:47:22 +02:00
Thomas Mustier
241431c69b
fix(agent,ai): don't cache write compaction or branch summaries ( #6618 )
...
avoid cache writes for compaction and branch summaries
Co-authored-by: Armin Ronacher <armin.ronacher@active-4.com>
2026-07-23 23:03:23 +02:00
Mario Zechner
e32c1491b5
feat(agent): align harness execution tools
2026-07-22 15:36:06 +02:00
Mario Zechner
2d0b2294cd
feat(agent): merge main into agent-harness-tools
2026-07-22 11:56:35 +02:00
Mario Zechner
b9e5c5d941
fix(agent): restore streamFn extension compatibility
...
Keep streamFn required for typed callers while preserving the legacy runtime fallback for extensions that omit it.\n\nfixes #6915
2026-07-21 18:37:07 +02:00
David Brailovsky
ceac988635
Merge remote-tracking branch 'origin/main' into fix/issue-6647-retry-summary-requests-2
2026-07-21 17:15:54 +02:00
Mario Zechner
37eb243d26
feat(agent): add AgentHarness execution tools
2026-07-21 17:03:28 +02:00
David Brailovsky
162179af5a
add branch/compact retries to agent-harness
2026-07-21 12:11:39 +00:00
Cristina Poncela Cubeiro
9e7582aa03
feat: sqlite session storage ( #6594 )
...
This PR:
- Adds retainedTail to compaction entries in the new agent harness so we don't have to walk up the tree for the 2000 tokens before compaction,
- Changes getPathToRoot to getPathToRootOrCompaction to only load until last compaction, as unnecessary to access all nodes where it is called,
- Adds a SQLite storage backend, in a separate packages/session-backend-sqlite, with a migration system and schemas as per on-site discussions: sessions to match session header messages (except for metadata, which I couldn't understand what it's used for or where it gets written, so I omitted it), session_entries for shared entry types as columns plus payload as a json for what remains, session_sequences to represent the append-only, serialized nature of the jsonl files, branch_entries to attribute nodes to branches (relationship one-to-many), and session_materialized with the session info (see /session in TUI) to act as a "cache" or quick-access for costs, message count, token info, labels, session name, and model-thinking-level config (e.g. for fast resume).
- This is compatible with the new agent harness Session abstraction.
2026-07-21 11:36:31 +02:00