fix: warn before slow CLI commands#22
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
sessions index,sessions data compact, andsessions data repair-orphanswhen stderr is interactiveWhy
Slow commands need immediate expectation-setting, but a live elapsed counter proved disproportionate for synchronous SQLite work: keeping it responsive required scheduler yields or a worker boundary. This PR intentionally removes that POC. The final UI is one line such as:
Live testing also exposed a separate correctness bug: one unusually large Codex session can exceed the 30-second writer lease inside a synchronous replacement transaction. The timer heartbeat cannot run during that transaction, so cleanup could report
writer-lease-lostafter canonical work committed. Replacement and replacement-failure recording now use the existing fenced leased-transaction primitive, which renews the unchanged exact owner under SQLite's write lock.Verification
pnpm check