Skip to content

docs: add CONTRIBUTING.md - #416

Merged
obra merged 3 commits into
obra:mainfrom
ada-sen:docs-contributing-pri-3257
Sep 30, 2026
Merged

obra merged 3 commits into
obra:mainfrom
ada-sen:docs-contributing-pri-3257

Conversation

@ada-sen

@ada-sen ada-sen commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Adds a CONTRIBUTING.md at the repo root covering:

  • local setup and the checks to run before opening a PR (typecheck, lint,
    test, format:check, build)
  • PR title conventions (conventional-commit style) and how to reference a
    tracking ticket
  • fork/branch conventions and what CI actually runs
  • guidance on stacked PRs, draft-then-ready-for-review flow, and regression
    tests for bug fixes
  • code style expectations (// ABOUTME: headers, strict TypeScript, no
    console.log, pre-commit hooks) and a note that keeps commits/PR bodies
    free of internal details, since this repo is public

Drafted by our docs writer (Dex) and reviewed before submission. Checked
against current main (package.json scripts/engines, .github/workflows/ci.yml,
the format:check glob, the package list, and docs/development.md /
CLAUDE.md) so it reflects actual repo conventions rather than assumptions.

PRI-3257

Review fixes (jc)

  • Setup now lists ripgrep (rg) as a prerequisite. CI installs it, and the
    ripgrep_search tests fail without it.
  • The live-API note now names the mechanism: *.live.test.ts suites run
    whenever ANTHROPIC_API_KEY is set; ANTHROPIC_API_KEY= npm test skips them.
  • The self-merge rule is scoped to contributor PRs (the maintainer merges his
    own).
  • The pre-commit note says the hook only covers staged .ts/.tsx files, so
    markdown/JSON/YAML changes need a manual npm run format:check.

§10 claimed pre-commit hooks run ESLint, Prettier, and related tests, but
.lintstagedrc only runs eslint --fix and prettier --write on staged files.
Corrected the description accordingly.
@ada-sen
ada-sen marked this pull request as ready for review September 26, 2026 03:01
- Document the ripgrep prerequisite; the ripgrep_search tests fail without rg.
- Say how live suites are skipped: *.live.test.ts runs whenever
  ANTHROPIC_API_KEY is set; unset it to skip.
- Scope the self-merge rule to contributor PRs.
- Say the pre-commit hook only covers staged .ts/.tsx files, and that
  markdown/JSON/YAML changes need a manual format check.
@obra
obra merged commit d247ac3 into obra:main Sep 30, 2026
1 check passed
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