Schema: categories, tags and model-tag associations #16

Open
opened 2026-10-10 22:18:28 +00:00 by keith · 1 comment
Owner

Metadata vocabulary backing search and filtering.

Scope

  • Categories with unique names
  • Tags with unique names
  • Many-to-many association between models and tags
  • Category assignment on models

Acceptance criteria

  • A model carries many tags; a tag applies to many models
  • Duplicate tag and category names rejected
  • Removing a tag clears associations without deleting models

Blocked by: #14

Metadata vocabulary backing search and filtering. ## Scope - Categories with unique names - Tags with unique names - Many-to-many association between models and tags - Category assignment on models ## Acceptance criteria - [ ] A model carries many tags; a tag applies to many models - [ ] Duplicate tag and category names rejected - [ ] Removing a tag clears associations without deleting models --- Blocked by: #14
keith added this to the M2 - Data Model & Migrations milestone 2026-10-10 22:18:28 +00:00
keith added the priority:mediumarea:dbtype:feature labels 2026-10-10 22:18:28 +00:00
Author
Owner

Acceptance reconciliation at c1ef2ee: keeping open. Tags/join table exist. Model category assignment is absent; nullable-parent unique index does not guarantee unique root category names. This is a source/test review, not a newly executed crash or restore experiment. Fresh Windows suite: 291 tests, 1801 assertions, 22 skips; lint passes. PostgreSQL fixture success does not waive these feature criteria.

Acceptance reconciliation at c1ef2ee: keeping open. Tags/join table exist. Model category assignment is absent; nullable-parent unique index does not guarantee unique root category names. This is a source/test review, not a newly executed crash or restore experiment. Fresh Windows suite: 291 tests, 1801 assertions, 22 skips; lint passes. PostgreSQL fixture success does not waive these feature criteria.
Sign in to join this conversation.