Skip to content

Trim CONTRIBUTING.md to a stub; move dev gotchas into CLAUDE.md - #618

Merged
kcarnold merged 3 commits into
mainfrom
claude/contributing-pr-template-review-ss53nc
Aug 20, 2026
Merged

kcarnold merged 3 commits into
mainfrom
claude/contributing-pr-template-review-ss53nc

Conversation

@kcarnold

@kcarnold kcarnold commented Aug 19, 2026 •

Copy link
Copy Markdown
Contributor

CONTRIBUTING.md goes from 259 lines to 15, and the note worth keeping moves into the file that gets auto-loaded.

Why

The old guide described conventions the repo doesn't follow and a stack it no longer has. Nothing linked to it, so the stale parts had no counterweight:

  • Wrong stack. It routed backend reviews to "someone who works with Python/FastAPI." grep -rn fastapi returns nothing repo-wide; backend/ is TypeScript/Hono, and root pyproject.toml says the remaining Python supports scripts/ analysis tooling only.
  • Wrong branch convention. It mandated feat/, fix/, test/, chore/. Recent merges are claude/*, ux/*, mindmap-main, plus dependabot.
  • Wrong commit convention. It mandated type: description. Actual subjects are plain imperative sentences; the only reliable type: prefixes come from dependabot.

A first pass replaced it with a ~50-line pointer index, but that still restated root CLAUDE.md — same two-app orientation, same Issues/backlog note. Roughly half was duplication, and the half that wasn't sat in a file nothing auto-loads.

What changed

frontend/CLAUDE.md documented Playwright as "Run with npx playwright test" and said nothing about baselines. The CI-only regeneration note is now attached to that line, where it's in front of you at the moment it matters.

CONTRIBUTING.md is a 15-line stub: what the repo is, where conventions actually live (CLAUDE.md, the per-directory files, docs/), and the PR norms. It exists to fill GitHub's Contribute UI, so it points rather than repeats.

Two files changed, +16/−246.

Testing

  • Verified every relative link resolves against the working tree.
  • Verified each claim against source: the Hono/single-container description against backend/README.md and the root Dockerfile; the baseline flow against VISUAL_REGRESSION.md and .github/workflows/frontend-tests.yml.
  • Docs-only; no code paths affected. CI green.

Follow-up, not in this PR

Root README.md points at frontend/README.md, which doesn't exist (the frontend has CLAUDE.md and TESTING.md). The stub routes around it rather than reproducing the dead link. Happy to fix it here or separately.

Related

#619 adds the missing PR-time typecheck for experiment/ and removes the Husky pre-push hook. An earlier revision of this PR documented that hook in root CLAUDE.md; that line has been dropped, since #619 deletes the hook it described. The two PRs are independent and can merge in either order.

claude added 2 commits August 19, 2026 19:11
The old guide described conventions the repo doesn't follow and a stack it
no longer has:

- It routed backend reviews to "someone who works with Python/FastAPI".
  There is no FastAPI here; backend/ is TypeScript/Hono.
- It mandated feat//fix//chore/ branches and `type:` commit subjects. Actual
  branches are claude/*, ux/*, mindmap-main; actual subjects are plain
  imperative sentences.

Nothing linked to the file, so the stale conventions had no counterweight —
anyone who did read it got bad information.

Replaced with a short index pointing at the docs that are maintained
because they sit next to their code (backend/README.md, frontend/CLAUDE.md,
frontend/TESTING.md, VISUAL_REGRESSION.md, docs/). Keeps the two
genuinely non-obvious gotchas: CI-only Playwright baselines, and the
pre-push hook that typechecks experiment/ on main pushes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EVaiHqHvxameg9j8JPRWBC
The pointer index still restated root CLAUDE.md: same two-app orientation,
same Issues/backlog note. Half of it was duplication, and the half that
wasn't sat in a file nothing auto-loads.

So put each note where it fires:

- frontend/CLAUDE.md said "Run with `npx playwright test`" and nothing about
  baselines. Added the CI-only regeneration note right there.
- The pre-push hook was documented in no CLAUDE.md at all; noted in the root
  Workflow section.

CONTRIBUTING.md drops to a 15-line stub: what the repo is, where conventions
actually live, and the PR norms. It exists for GitHub's Contribute UI, so it
points rather than repeats.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EVaiHqHvxameg9j8JPRWBC
@kcarnold kcarnold changed the title Replace CONTRIBUTING.md with a pointer index Trim CONTRIBUTING.md to a stub; move dev gotchas into CLAUDE.md Aug 19, 2026
The hook is being removed in favor of a CI typecheck for experiment/, so
documenting it here would land a note about a hook that no longer exists.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EVaiHqHvxameg9j8JPRWBC
@kcarnold
kcarnold merged commit a3f7e02 into main Aug 20, 2026
9 checks passed
@kcarnold
kcarnold deleted the claude/contributing-pr-template-review-ss53nc branch August 20, 2026 18:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants