6 Commits
Author SHA1 Message Date
Randy Marsden dcf881f1e8 fix: close leaked state.db read-only connections in session discoverability/recovery
Three sites used `with sqlite3.connect(f"file:...?mode=ro", uri=True) as conn:`,
which only scopes the transaction — sqlite3.Connection's context manager never
calls close(). Same recurring bug class as #1421/#1494/#2233/#3904. On a
long-lived server each poll leaked a state.db (+ -wal/-shm) fd until the
process hit macOS's 256 soft FD limit and writes started failing.

Wrap all three in contextlib.closing(), matching the pattern already used
elsewhere in these files.
2026-08-07 21:34:34 +00:00
d6e5dc302d Release Batch D: terminal resource-leak fix + fsync atomic writers (#5835, #5843) (#5848)
Phase 2 backend reliability/data-integrity batch. Each byte-verified vs PR head,
Codex SAFE, 20 own + 355 regression tests pass, disjoint files.

- #5835 (ai-ag2026): stop leaking fd + reader thread + shell on client/shell exit (#4633 family)
- #5843 (ai-ag2026): fsync atomic JSON writers (oauth/passkeys/discoverability) + thread-safe temp

Co-authored-by: t <a@b>
Co-authored-by: ai-ag2026 <ai-ag2026@users.noreply.github.com>
2026-07-09 10:54:06 -07:00
nesquena-hermes 007ba46c3f Merge PR #3048
# Conflicts:
#	CHANGELOG.md
2026-05-28 17:47:33 +00:00
ai-ag2026 f879fd6bc3 fix: add dry-run discoverability safe repair 2026-05-28 08:19:49 +02:00
ai-ag2026 bd8fd22d81 fix: show lineage representative in discoverability audit 2026-05-28 08:13:35 +02:00
ai-ag2026 0af58f2b82 feat: add session discoverability audit 2026-05-28 00:51:32 +02:00