docs: quality upgrade plan to 9.5+ (Bun, DAG, security, CI) - #24
docs: quality upgrade plan to 9.5+ (Bun, DAG, security, CI)#24KitsuneKode wants to merge 28 commits into
Conversation
Phased plan covering Bun workspace/CI gates, credential encryption, JWT expiry, webhook payload forwarding, DAG hardening, multi-worker Redis shutdown/DLQ, and test coverage exit criteria.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Replace placeholder credentials in plan and .env.example so the new secretlint CI job does not fail on documentation examples.
Add CREDENTIALS_ENCRYPTION_KEY and related auth env vars to turbo globalEnv so eslint turbo/no-undeclared-env-vars stops failing CI. Require the encryption key in backend/worker config validation, and derive cookie Max-Age from JWT_EXPIRES_IN so token and cookie lifetimes stay in sync.
Reject plaintext credentials unless ALLOW_PLAINTEXT_CREDENTIALS is set, send execution failures to the DLQ before ACK, and standardize auth/ webhook/credential error responses as JSON. Redact PII from worker node logs and keep the web auth client compatible with JSON error bodies.
Convert remaining workflow/execution/credential responses to JSON, share getApiErrorMessage across web clients, and document this branch's Web Crypto envelope as canonical vs PR #23. Key resolution now accepts hex/base64/hashed secrets for production-ready key provisioning.
|
Caution Review failedAn error occurred during the review process. Please try again later. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
Implements the quality upgrade plan to raise Architecture, Security, Reliability, Tests, DevEx/CI, and Code Quality toward ≥ 9.5, using Bun-first practices and production-grade DAG/queue patterns.
Plan:
docs/superpowers/plans/2026-07-10-quality-upgrade-to-9.5.mdCompleted (all plan tasks)
Phase 0 — Quality gates
@buzz8n/testsworkspace +bun testpreloadcheck-typesfor Turbo CI.env.example+ README Environment sectiontest+secretlintPhase 1 — Security
userIdPhase 2 — Reliability / DAG
Phase 3 — Bun practices
console.log; CONTRIBUTING Bun practicesPhase 4 — Tests / docs
Phase 5 — Polish
Follow-up fixes (post-review)
turbo.jsonglobalEnv(CI lint)CREDENTIALS_ENCRYPTION_KEYin backend/worker config validationMax-AgewithJWT_EXPIRES_INALLOW_PLAINTEXT_CREDENTIALS=truegetApiErrorMessagefor web clients (useAuth,useWorkflow, CredentialModal)docs/CREDENTIAL_ENCRYPTION.md) — this PR’s Web Crypto envelope wins over PR feat: Phase 0 hardening — security, queue, CI, and frontend usability #23’s node:crypto formatVerification (local)
Out of scope (as planned)
Bun.serveBun.sqlXCLAIMreclaimNote vs PR #23
Do not merge both encryption formats. Prefer this PR. Cherry-pick OpenAPI/metrics/deploy/Playwright from #23 if still needed — skip
credentials-crypto.ts.