Repository navigation
docs: refresh docs and add shared Claude Code instructions - #115
Merged
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This branch was successfully deployed
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
Brings the repo's Markdown docs back in line with the current code, and adds shared Claude Code instructions so both maintainers' Claude sessions follow the same repo conventions. No application code or code comments change.
What changed
Docs
README.md: auth is described as database-backed session cookies (it said JWT), the tech stack lists current versions, the project tree includesbackend/docs/anddocs/, and a broken bullet is fixed.CONTRIBUTING.md: shorter setup and workflow sections, notes that the API-key check is skipped only indevelopment/test, documents the post-checkout hook that gives each worktree its own database, and saysdocs/syncs on every push tomainas well as at release.backend/docs/form-edit-lifecycle.md: availability write-through is described as scoped by track (it said by day, withavailability_{YYYYMMDD}keys), the track-status transition table now matchescan_set_track_status(declined → interestedis allowed), and the lunch backfill exception to forward-only write-through is documented.backend/docs/form-question-types-reference.md:Form.statusrules matchupdate_form(a form with responses can go back todraftbut stays history-preserving; an archived form must return todraftbefore publishing), lunch keys acceptshort_text/long_text, and the question type configs are a single table.backend/docs/track-status-rules.md: now the single home for the transition table that two other notes used to repeat.backend/docs/audit-log-conventions.md: addstrack_delete_pending,track_delete_cancelledandtrack_purged, and notes that a new action also needs aDESCRIBERSentry infrontend/lib/auditLog.tsx.backend/docs/anonymize-users.md: drops the step that setJWT_SECRET, which no longer exists.backend/docs/member-seeding.md: adds the--age-consentflag, usesuv run, and fixes a recipe whose--email-prefix membermatched no seeded accounts.CHANGELOG.md, a leftover from release-please that stopped at v1.2.1; CONTRIBUTING already said no changelog is kept.Claude Code instructions
CLAUDE.md(loaded in every session): project overview, how to run the apps, when and how to run tests, branch/commit/PR conventions, and code conventions, including keeping comments rare and trimming unnecessary comments in any file a PR touches.backend/CLAUDE.mdandfrontend/CLAUDE.md(loaded when working in that folder): layout, route conventions, auth and permissions, UI kit, and styling..claude/rules/(each loaded only when matching files are read):forms.md,audit-log.md,models-and-migrations.md,backend-tests.md,releases-and-docs.md..gitignoreno longer ignoresCLAUDE.md, and now ignoresCLAUDE.local.mdfor personal instructions.~/.claudefiles.Out of scope
frontend/lib/auditLog.tsxhas no labels or describers for the threetrack_*audit actions, so they render without a label in the audit log._write_through_reserved_fieldsinforms.pystill describes availability as scoped by day, and the comment abovebulk_update_fieldssays aquestion_typechange archives the field; the code does neither._unique_track_statusesinapp/schemas/form.pyis never called.Test plan
git check-ignoreconfirmsCLAUDE.mdand.claude/rules/are trackedManual
CLAUDE.mdloads, and that reading a file underbackend/app/core/form/loads the forms rule.