feat: model repo standards and detect prefix collisions
Implement RMGR-WP-0004 T01 (flavor, required files, anti-patterns from canon) and T08 (prefix ownership registry plus uniqueness scan). rmgr conform and rmgr prefix-uniqueness are detection only.
This commit is contained in:
parent
106d7d5b2b
commit
04145a59d9
8 changed files with 640 additions and 4 deletions
35
docs/repository-standards_v0.1.md
Normal file
35
docs/repository-standards_v0.1.md
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
# Repository standards v0.1
|
||||
|
||||
Repo Manager **implements** Custodian canon. It does not author a second
|
||||
definition. This note is an index.
|
||||
|
||||
| Concern | Canon |
|
||||
| --- | --- |
|
||||
| Categories and `.repo-classification.yaml` | `the-custodian/canon/standards/repo-classification-standard_v1.0.md` |
|
||||
| `prj-` layout, `GOAL.md`, anti-pattern both purpose docs | `the-custodian/canon/standards/project-repository-flavor_v0.1.md` |
|
||||
| One workplan prefix per repository | `the-custodian/canon/architecture/adr-007-workplan-identity-and-repo-worker-topology.md` |
|
||||
|
||||
## Flavor resolution
|
||||
|
||||
Precedence, then warn on disagreement (do not silently pick a winner for
|
||||
operators — the first match is used only to choose the required-file set):
|
||||
|
||||
1. `.repo-classification.yaml` `category`
|
||||
2. `GOAL.md` `repo_flavor`
|
||||
3. slug prefix `prj-`
|
||||
|
||||
`prj-` layout (`GOAL.md`, no `INTENT.md`) applies when the slug starts
|
||||
with `prj-` or `GOAL.md` declares `repo_flavor: project`. Not every
|
||||
`category: project` repo is a `prj-` repo.
|
||||
|
||||
## Commands
|
||||
|
||||
```bash
|
||||
rmgr conform --path .
|
||||
rmgr prefix-uniqueness --root ..
|
||||
```
|
||||
|
||||
`prefix-uniqueness` is detection only. It does not rename files.
|
||||
Registry: [`config/workplan-prefix-registry.yaml`](../config/workplan-prefix-registry.yaml).
|
||||
|
||||
Work: `RMGR-WP-0004-T01`, `RMGR-WP-0004-T08`.
|
||||
Loading…
Add table
Add a link
Reference in a new issue