# Contributing Internal development only. PRs reviewed by @directors. ## Code Standards - **Language:** TypeScript (Node.js) per ADR-001 - **Commands:** kebab-case (`/sign-up`, not `/signup`) - **Events:** `on` handler pattern - **DB:** snake_case table names, plural - **Commits:** [Conventional Commits](https://www.conventionalcommits.org/) (`feat:`, `fix:`, `chore:`, `docs:`) - **Env vars:** Required vars documented in `.env.example`. Never commit `.env`. ## PR Process 1. Branch from `main`. Name: `feat/`, `fix/`, `chore/` prefix. 2. Lint + tests pass before push. 3. PR description links to any related issue. 4. At least 1 approval from @directors required. 5. Squash-merge to `main`. ## Reporting Issues Open GitHub issue with: - Steps to reproduce - Expected vs actual behavior - Bot logs (redact tokens) - Discord command and response if relevant ## Architecture Reference See [arc42 docs](/docs/01_introduction_and_goals.md) for full architecture context.