fix(state): keep the sqlite close finalizer infallible (#201 follow-up) - #208
Conversation
acquireRelease release finalizers cannot carry an error channel, so the runtime package's declaration build failed on every job. A close failure on the success path now dies (still visible) instead of failing.
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Summary
#201 changed the sqlite connection's release step to return a fallible
sqliteEffecton the success path, butEffect.acquireReleasefinalizers are infallible by contract —@agent-bundle/runtime's declaration build fails with two TS2345 errors insrc/state/sqlite.ts(848/858), which turns every CI job red atpnpm build(see run 33558334062). The success-path close now surfaces failures as a defect viaEffect.orDie(still visible, per #201's intent) while the failing path keeps swallowing so the original failure stays the cause.Test plan
pnpm --filter @agent-bundle/runtime build(dts generation) greenpnpm build,pnpm typecheck,pnpm lintgreenpackages/rsc-runtime/testsunit pool green (15 files)