Plan Collection Categories & Topic Cleanup
Problem
The plans page has 55 separate topics displayed as a flat grid with no filtering. Related work is fragmented — e.g., app-code-audit, app-audit-fixes, and code-quality-fixes are three separate topic cards despite being the same effort. The CategoryFilter component is wired up but never renders because no plan has a category value. Meanwhile, docs/plans/ still exists despite being orphaned after migration.
Solution
- Add a
categoryfield to all plan files with one of 6 values - Merge ~8 fragmented topic pairs into single topics
- Delete the orphaned
docs/plans/directory
Categories
Six categories, used as filter buttons on the plans page:
| Slug | Display Name | Description |
|---|---|---|
code-quality | Code Quality | Code audits, CSS cleanup, codebase cleanup |
live-window | Live Window | Live window core, weather, sky layers, idle behaviors |
chat | Chat | Chat identity, moderation, admin tools, websocket |
styling | Styling | Colors, responsive design, syntax highlighting, cards |
layout | Layout & Navigation | Sidebar, info panel, command palette, pagination, footer, homepage |
content-seo | Content & SEO | Meta tags, link metadata, markdown plugins, URL nesting, content audits |
Topic Merges
| Plans to merge | New topic slug |
|---|---|
app-audit-fixes + code-quality-fixes → into app-code-audit | app-code-audit |
mobile-styles-fix → into mobile-styles-audit | mobile-styles |
live-window-class-refactor → into live-window-refactor | live-window-refactor |
public-playground → into live-window-playground | live-window-playground |
signed-client-identity → into clientid-identity | client-identity |
meta-card-image → into meta-seo | meta-seo |
home-styling → into home-page-redesign | home-page-redesign |
subheader-color → into color-standardization | color-standardization |
Category Assignments
code-quality
api-code-auditapp-code-audit(absorbsapp-audit-fixes,code-quality-fixes)css-auditcodebase-cleanupremove-apply
live-window
live-window-refactor(absorbslive-window-class-refactor)live-window-playground(absorbspublic-playground)live-window-test-pagelive-window-readability-auditidle-blindsweather-code-auditweather-id-systemweather-visual-fixesweather-api-proxysky-gradientstars-layersun-moon-layers
chat
client-identity(absorbsclientid-identity,signed-client-identity)chat-auto-page-contextadmin-help-commandadmin-moderation-toolsidle-websocket-disconnect
styling
color-standardization(absorbssubheader-color)neon-cursorcard-componentsyntax-highlightingresponsive-tailwindmobile-styles(absorbsmobile-styles-audit,mobile-styles-fix)
layout
sidebar-redesigninfo-panelcommand-palette-enhancementscollection-paginationsite-footerhome-page-redesign(absorbshome-styling)spotify-player
content-seo
meta-seo(absorbsmeta-card-image)link-metadatapost-url-nestingmarkdown-pluginsversion-postplans-collectionplan-categoriesdead-link-detectionimage-audit
Cleanup
- Delete
docs/plans/directory (orphaned after migration toapp/src/content/plans/) - Remove
docs/plansentries from.markdownlintignoreand.prettierignore
What Stays the Same
- PlanGrid + PlanCard components (topic cards with design/implementation links)
- Flat grid layout with filter buttons at top
- Topic-based “related plans” on detail pages
- Pagination