## Context
Implement this MVP work package under M5 - Metadata Management, following the managed-storage decision in #1.
## Acceptance criteria
- [ ] Provide tag CRUD and many-to-many assignment with normalized unique names.
- [ ] Remove associations without deleting models; support multiple tags per model.
- [ ] Test duplicate names, escaping, CSRF and referential integrity.
Blocked by: #16, #29
keith
added this to the M5 - Metadata Management milestone 2026-10-10 22:22:38 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Context
Implement this MVP work package under M5 - Metadata Management, following the managed-storage decision in #1.
Acceptance criteria
Blocked by: #16, #29