docs: onboarding Part 8 — change recipes and the subsystem rewrite guide - #25
Conversation
The recipes name the file pairs that must change together (setting, column, state, gate check, endpoint). The rewrite section maps each subsystem to its contract, what pins it, and whether it's freely replaceable — with Postgres+db/sql called out as the one load-bearing layer — plus the five-step rewrite protocol (contract, decision record, rewrite behind the seam, exit-gate bar, additive schema). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ASAVj4XgJCH3UcHkZZaYzM
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughAdds a new "Part 8 — changing the code" section to docs/onboarding.md, covering recipes for common changes (config, migrations, state transitions, eligibility checks, endpoints) and guidance for rewriting whole subsystems, including a decision-record and test-gate protocol. ChangesOnboarding Documentation Update
Estimated code review effort: 1 (Trivial) | ~5 minutes Related PRs: None identified. Suggested labels: documentation Suggested reviewers: None identified. PoemA rabbit sat with quill in paw, ✨ 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 |
Carries the Part 8 addition to
docs/onboarding.mdthat was pushed to theclaude/docs-deferralsbranch after PR #24 had already merged (so #24's diff never included it — its updated description got ahead of reality). One commit, cherry-picked onto current main. Docs only.Part 8 — changing the code (from one-line tweaks to full rewrites):
config.py+.env.example, and the boto3/os.environ trap), column/table (models.py+001_schema_evolution.sql+ RLS, and why CI can't catch a missing ALTER), state/transition (states.pyis the single source of truth), eligibility check (blocking vs deferrable + the adversarial-test convention), endpoint (routes + schemas + auth + the tenant-vs-admin session choice).db/sql/called out in bold as the one load-bearing layer you don't casually replace. Plus the five-step rewrite protocol: read the contract/adversarial tests, decision record first, rewrite behind the seam with the DB as safety net,just test-exit-gateas the non-negotiable acceptance bar, additive schema changes.🤖 Generated with Claude Code
https://claude.ai/code/session_01ASAVj4XgJCH3UcHkZZaYzM
Generated by Claude Code
Summary by CodeRabbit