Every ticket as the root of its provenance graph — goal, patch, approval, runs and (as the ticket-class build lands) mandate, manifestations, guarantees, journey, artifacts and children. Rendered through the <<<TicketGraphList>>> tag.
Categories as a tagging system to group pages/threads
goal
Use the Categories table (already present, empty) as a tagging system: tag pages/threads with one or more categories and browse by category. Note a CategoryView tag already exists in invocators/tags. Design: category schema/link table, tagging UI, and a category-browse view.
Clarification: 'specifications' is a concrete example CATEGORY/tag for pages — pages get tagged with one or more categories (e.g. 'specifications') and are browsed/grouped by category. Categories act as the tag layer for pages (and later threads). [progress] Page_Categories link table + specifications category added; CategoryPages browse tag built and wired into ?page=pages. [progress] Tagging UI shipped: TagPageForm (DbSelect page + category) -> TagPageHandler inserts Page_Categories; browse by category live at ?page=pages. Remaining: extend categories to threads; category admin (create/rename). [note] Core shipped this session; remainder is optional enhancement.
patch
none
approval
unapproved
runs
no runs recorded
mandate (clauses)
not yet recorded — lands with the ticket-class build
manifestations
not yet recorded — lands with the ticket-class build
guarantees
not yet recorded — lands with the ticket-class build
journey (blunders & successes)
not yet recorded — lands with the ticket-class build
artifacts (forge)
not yet recorded — lands with the ticket-class build