33 lines
1.7 KiB
Markdown
33 lines
1.7 KiB
Markdown
# Rules
|
|
|
|
> **Populated by phase 1 — not yet written.**
|
|
> Until then the rules live where they always have: [root CLAUDE.md](../../CLAUDE.md),
|
|
> [client/CLAUDE.md](../../client/CLAUDE.md) (161 K), [server/CLAUDE.md](../../server/CLAUDE.md) (75 K),
|
|
> [server/CONVENTIONS.md](../../server/CONVENTIONS.md), [client/messages/STYLE.md](../../client/messages/STYLE.md),
|
|
> and the [frontend-designer skill](../../.claude/skills/frontend-designer/SKILL.md).
|
|
|
|
What must never be broken, and nothing else.
|
|
|
|
**The tiering rule this section exists to enforce:** a `CLAUDE.md` keeps only non-negotiables and
|
|
pointers — roughly 200 lines. Everything explanatory becomes a reference file here, read on demand.
|
|
Loading a rule should not cost 40k tokens.
|
|
|
|
## Planned contents
|
|
|
|
| File | Covers |
|
|
| --- | --- |
|
|
| `documentation.md` | The anti-drift convention — `Last verified:` stamps, where a fact belongs, what a doc may claim |
|
|
| `shared/naming.md` · `shared/git-and-gates.md` · `shared/code-quality.md` | Cross-project: the `Baya*` / `balinyaar-client` split, branch and commit rules, per-project check gates, no dead code |
|
|
| `client/` (8 files) | structure · theme · components · forms · i18n · services · auth · testing |
|
|
| `server/` (5 files) | structure · cqrs · persistence · identity · conventions |
|
|
|
|
Subdirectories are created by phase 1 along with their first file.
|
|
|
|
## Known conflicts to settle first
|
|
|
|
- **C-11** — the frontend-designer skill and `client/CLAUDE.md` both claim the design language, with no
|
|
stated precedence.
|
|
- **C-12** — the skill stopped at manual-testing iteration 1; the code went on to iteration 2.
|
|
|
|
Both are logged in [_plan/open-contradictions.md](../_plan/open-contradictions.md).
|