Enable provider retry by default - #2020
Conversation
|
🚨 SLOP COP 🚨 · I am SlopCop. I am now reviewing this pull request for security, code quality, architecture, performance, and practical test coverage. |
There was a problem hiding this comment.
🚨 SLOP COP 🚨 · review
Plain English summary: This PR enables automatic provider retries for new installations. It keeps the saved choice for current installations.
I found one medium issue:
- The manual mobile plugin flow still expects Provider retry to stay disabled.
- A fresh server now starts the plugin and shows its settings form.
- The flow will time out while it waits for the disabled settings view.
- Update that flow to check the enabled form, or disable the plugin before the check.
I found no security defect. The retry keeps the original permission mode and rejects newer requests or manual stops.
I found no blocking performance issue. The plugin adds small per-turn work and keeps small retry records until deletion or process exit.
The registry remains the correct source for the default. The packaged smoke list repeats the expected state by design, so no refactor helps here.
All GitHub checks passed. The Provider retry test package also passed all 25 tests. The exact-commit browser build did not finish its type generation.
Please fix the stale mobile flow and run it against a fresh server database.
81094ac to
188fec1
Compare
What was wrong
The builtin Provider retry plugin was explicitly registered with
defaultEnabled: false, so fresh installations shipped automatic subscription-limit recovery disabled even though the plugin is bundled and auto-installed.What changed
provider-retrywhen its builtin registration is first installed while preserving the stored choice for existing installations.runningin the packaged-app smoke test.HOST_DAEMON_PROTOCOL_VERSIONis unchanged.How you verified
pnpm exec turbo run typecheck --filter=@bb/serverpnpm exec turbo run test --filter=@bb/server -- test/services/plugins/builtin-plugins.test.ts -t 'Provider retry enabled|preserves an installed builtin'(2 passed)EMFILE: too many open files, watchlimit.Fixes: no linked issue.