You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Fix latest session selection by start time
* chore: bump version to 0.38.1
Co-authored-by: Ona <no-reply@ona.com>
---------
Co-authored-by: Siddhant Khare <Siddhantkhare2694@gmail.com>
Co-authored-by: Ona <no-reply@ona.com>
Copy file name to clipboardExpand all lines: ADRs/0002-ndjson-file-storage-no-database.md
+1-2Lines changed: 1 addition & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,6 +28,5 @@ The default trace directory is `.agent-traces/` relative to the working director
28
28
-**Zero dependencies** — NDJSON is readable with `cat`, `grep`, `jq`, or any JSON parser in any language.
29
29
-**Append-safe** — file appends are atomic at the OS level for writes smaller than the filesystem block size (~4KB). A single NDJSON line is always well under this limit.
30
30
-**No locking required** — Claude Code fires hooks sequentially, so concurrent writes from the same session are not expected.
31
-
-**No indexing** — session listing is O(n) directory iteration. Prefix matching for session IDs is O(n) over sessions. Acceptable for tens to hundreds of sessions.
32
-
-**Session listing is sorted by directory name** (reverse-alphabetical), not by `started_at` timestamp. UUID hex strings are not time-ordered, so the "latest" session is determined by sort order, not creation time. This is a known simplification.
31
+
-**No indexing** — session listing is O(n) directory iteration. Loaded metadata is sorted newest-first by `started_at`, with descending session ID as a deterministic tie-breaker. Prefix matching for session IDs remains O(n) over sessions. Acceptable for tens to hundreds of sessions.
33
32
-**No compaction or rotation** — traces grow indefinitely. Cleanup is manual.
0 commit comments