There was an error while loading. Please reload this page.
docs: require contrast applicability decisions
docs: define card contrast audit rules
docs: define card contrast applicability
docs: refine component contrast rubric
Clarify rendered contrast verification
Clarify button loading and contrast rubric
Template rubric 1.3 — stop scoring slug length The 16-character page slug ceiling added in 1.1 was the wrong call, for two reasons the same vibe test already supplied. The name axis is inert. Ablating name entirely changed 0 of 36 battery results, and a full rename of all 51 page templates left 35 of 36 rankings identical. A ceiling that pushes contributors to rename buys essentially nothing on natural-language retrieval. And every slug past the line belongs to a family. All seven are dashboard-* or documentation-*, where the shared prefix groups the family in template --list. That legibility is worth more than the substring reach a long slug forfeits. Renaming is also a genuine breaking change: astryx template resolves by exact match on the directory name, there is no alias, deprecation or redirect mechanism anywhere, and the codemod system cannot cover it — a copied page.tsx holds no reference to its own slug, and upgrade selects transforms by @astryxdesign/core version while templates ship in the CLI. The rubric should not push anyone toward that for a signal that does not move. §5c no longer scores length, so a long slug can earn the naming point. Length survives as guidance under Naming a Template. Point values, category maxima and the 100-point total are unchanged. Co-authored-by: Cursor <cursoragent@cursor.com>
Use American spelling in the description lens table Co-authored-by: Cursor <cursoragent@cursor.com>
Template rubric 1.2 — describe templates by structure, not by their sample data Review feedback on the description convention: the differentiator was leaning on content-type nouns, and data is interchangeable. Swap customers for invoices and it is the same template, so the data cannot be what distinguishes one from another — and a fixture-led description locks the template to the sample it ships with. Someone building an invoice or a job record needs detail-page exactly and matched none of its order vocabulary. Writing the description now asks for four structural lenses — layout, container, data shape, behavior — with domain nouns demoted to interchangeable examples, and adds the sibling comparison as the most discriminating sentence usually available. Worked example carries all three versions of detail-page, including the noun-led wrong turn, since that is the easy mistake to make. Also documents that -able adjectives and verb forms never match each other under the stemmer: resizable never answers a query for resize. Minor bump rather than patch because §5b now caps a description at 2 when sample-data nouns are doing the separating, which can change a score. Point values, category maxima and the 100-point total are unchanged. Measured over the same 36-query battery: structure-led descriptions scored 32/36 top-1 against 23/36 noun-led. Co-authored-by: Cursor <cursoragent@cursor.com>
Template rubric 1.1 — score the naming and description conventions Doc Metadata (10) now splits into fields present and accurate (6), description convention (3), and naming convention (1). Previously all 10 graded field presence and naming was an explicit non-scored soft signal, so a template could score 10/10 on a three-word description like "Data table with actions" — the single worst thing you can do for retrieval. The weighting follows what each is measured to be worth. A 36-query field ablation found `description` the only metadata field whose removal degrades retrieval (top-1 15->9, top-3 25->18), while the name axis decided 0 of 36 queries and removing auto-extracted keywords or category actually improved precision. Also adds to Naming a Template: the 16-character page-slug ceiling (build only substring-matches a name when the shorter side covers >=50% of the longer, so a 16-char slug needs an 8-letter query word), and the four-slot description shape with the five rules the scorer forces. Category set, category maxima and the 100-point total are unchanged, so existing ledger rows stay schema-valid. Doc Metadata subscores are not comparable across 1 and 1.1; per-row rubricVersion is left alone so existing audits keep their v1 provenance. Source: internal/vibe-tests/template-naming-test/PLAN.md Co-authored-by: Cursor <cursoragent@cursor.com>
scores: Carousel C (85.9), rubric 1.13
vibe-test: scores 2026-08-27
scores: Carousel D (69.2), rubric 1.13
Audit v1.13: apply one AA target-size rule to all pointers
Audit v1.12: A10 carries the full WCAG 2.5.8, not just 24x24
scores: Card C (79.2), rubric 1.8
vibe-test: scores 2026-08-26
scores: Button C (78.3), rubric 1.11.1
scores: Button C (73.9), rubric 1.11.1
Audit v1.11.2: isolate screenshot experiment arms
Audit v1.11.1: decide screenshot obligation from coverage
Audit v1.11: require screenshot sensor receipts
Home: reorganize into six sections with progressive disclosure Home listed 40 links across 7 sections while leaving 19 pages unlinked, so it was neither short nor complete. The hub pages that carry each cluster already exist (Component Lifecycle, Vibe Tests, Night Watch Overview, Research Archive); Home now points at them instead of duplicating their contents. - Home: 15 top-level links in Start here / Architecture / Building a component / Quality / Operations / Also. Nothing removed from the wiki — every demoted page is one click deeper behind a hub that lists it. - Add _Sidebar.md so the same navigation renders on every page. - Re-home the four pages Home was the only link to: Blog Review Rubric and Testing Example Apps from Contributing, Hardening Audit Guide from Component Lifecycle. Zero orphans after the change. - Fix the Contributing with AI Assistants link in Release Process, broken by a line wrap inside the [[...]].
Architecture: add usage examples to system cards
Architecture: prefer testable behavior hooks over wrapper components
Architecture: publish component cheat sheet and refresh references
scores: TransferList — drop stale regression note (76→78.6 was an improvement)
scores: TransferList C (78.6), rubric 1.8
vibe-test: scores 2026-08-25