Development
Developer documentation stays in the repository it describes. Start here:
| Repository | Start at | Covers |
|---|---|---|
ba-api |
docs/readme.md |
GraphQL resolvers, pagination, testing and tips; RBAC; database; operations; unit tests |
ba-api authorisation library |
src/lib/auth-lib/README.md |
How a request is authorised: the CASL ability, the per-operation policies, field masking |
ba-client |
docs/intro.md |
UI (Material Design), GraphQL fragments and pagination, the contract builder |
ba-infrastructure |
README.md |
Tools, day-to-day Terragrunt use, bootstrapping a deployment, CI settings |
Local stack
Section titled “Local stack”There is no shared local development stack yet. Each repository’s README describes running it on its own. A tep-dev-environment --product ba stack is planned (refresh area env-01).
Rules shared by every BA repository
Section titled “Rules shared by every BA repository”- Conventional Commits, for commit messages and for pull request titles, with the Linear issue in the subject:
feat(compute): BAM-4 …,ci: … (BAM-4). Pull requests are squash-merged, so the PR title becomes the commit onmain. A commit check enforces the format onba-api. - Issues live in Linear, team BAM Dev. No GitHub issues. Branch names are
bam-<issue>-<slug>. - No secrets in a repository, including test fixtures. Test and seed accounts use
example.comaddresses. - Docs move with the code. A change that makes a page stale, here or in a repository’s
docs/, updates that page in the same pull request.