@design-ai/cli 4.56.0 → 4.57.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/.claude-plugin/plugin.json +109 -25
  2. package/CHANGELOG.md +36 -0
  3. package/README.ko.md +9 -26
  4. package/README.md +10 -23
  5. package/cli/bin/design-ai.mjs +1 -0
  6. package/cli/commands/help.mjs +7 -4
  7. package/cli/commands/index.mjs +292 -0
  8. package/cli/commands/learn-help.mjs +149 -0
  9. package/cli/commands/learn-print-profile.mjs +373 -0
  10. package/cli/commands/learn-print-restore.mjs +349 -0
  11. package/cli/commands/learn-print-signals.mjs +453 -0
  12. package/cli/commands/learn.mjs +60 -1281
  13. package/cli/commands/pack.mjs +7 -3
  14. package/cli/commands/prompt.mjs +7 -3
  15. package/cli/commands/search.mjs +94 -1
  16. package/cli/lib/dispatch.mjs +3 -0
  17. package/cli/lib/embedding-index.mjs +199 -0
  18. package/cli/lib/embedding-provider.mjs +121 -0
  19. package/cli/lib/embedding-rerank.mjs +52 -0
  20. package/cli/lib/learn-args.mjs +490 -0
  21. package/cli/lib/learn-backup.mjs +748 -0
  22. package/cli/lib/learn-curation.mjs +612 -0
  23. package/cli/lib/learn-eval.mjs +459 -0
  24. package/cli/lib/learn-profile.mjs +763 -0
  25. package/cli/lib/learn-select.mjs +223 -0
  26. package/cli/lib/learn-shared.mjs +158 -0
  27. package/cli/lib/learn-test-support.mjs +218 -0
  28. package/cli/lib/learn-usage.mjs +360 -0
  29. package/cli/lib/learn.mjs +83 -3694
  30. package/cli/lib/lexical.mjs +137 -0
  31. package/cli/lib/local-config.mjs +110 -0
  32. package/cli/lib/mcp-server.mjs +13 -3
  33. package/cli/lib/pack.mjs +31 -4
  34. package/cli/lib/prompt.mjs +42 -4
  35. package/cli/lib/recall.mjs +193 -0
  36. package/cli/lib/retrieval-index.mjs +0 -0
  37. package/cli/lib/search-ranked.mjs +170 -0
  38. package/cli/lib/search.mjs +11 -1
  39. package/cli/lib/signals-backlog-commands.mjs +673 -0
  40. package/cli/lib/signals-backlog.mjs +361 -0
  41. package/cli/lib/signals-eval.mjs +176 -0
  42. package/cli/lib/signals-readiness.mjs +247 -0
  43. package/cli/lib/signals-registry.mjs +377 -0
  44. package/cli/lib/signals-render.mjs +478 -0
  45. package/cli/lib/signals-shared.mjs +75 -0
  46. package/cli/lib/signals.mjs +16 -2337
  47. package/cli/lib/site-bundle-handoff-expected.mjs +173 -0
  48. package/cli/lib/site-bundle-handoff-runbook-action-summary.mjs +332 -0
  49. package/cli/lib/site-bundle-handoff-runbook-human-lines.mjs +167 -0
  50. package/cli/lib/site-bundle-handoff-runbook-maps.mjs +238 -0
  51. package/cli/lib/site-bundle-handoff-runbook-next-step.mjs +278 -0
  52. package/cli/lib/site-bundle-handoff-runbook.mjs +44 -931
  53. package/cli/lib/site-test-support.mjs +68 -0
  54. package/cli/lib/skill-proposals-apply-commands.mjs +135 -0
  55. package/cli/lib/skill-proposals-apply-contract.mjs +750 -0
  56. package/cli/lib/skill-proposals-apply-plan.mjs +118 -0
  57. package/cli/lib/skill-proposals-generate.mjs +298 -0
  58. package/cli/lib/skill-proposals-render.mjs +532 -0
  59. package/cli/lib/skill-proposals-review.mjs +262 -0
  60. package/cli/lib/skill-proposals.mjs +15 -2046
  61. package/cli/lib/workspace-args.mjs +83 -0
  62. package/cli/lib/workspace-git.mjs +169 -0
  63. package/cli/lib/workspace-learning.mjs +483 -0
  64. package/cli/lib/workspace-repo.mjs +139 -0
  65. package/cli/lib/workspace-report.mjs +283 -0
  66. package/cli/lib/workspace-test-support.mjs +99 -0
  67. package/cli/lib/workspace.mjs +30 -1056
  68. package/docs/AI-LEARNING-PHASE2.md +215 -0
  69. package/docs/DISTRIBUTION.ko.md +2 -2
  70. package/docs/DISTRIBUTION.md +2 -2
  71. package/docs/NEXT-SURFACE-DECISION.md +125 -0
  72. package/docs/PRODUCT-READINESS.md +3 -3
  73. package/docs/RELEASE-GATES.ko.md +35 -0
  74. package/docs/RELEASE-GATES.md +234 -0
  75. package/docs/ROADMAP.md +53 -8
  76. package/docs/external-status.md +6 -8
  77. package/docs/inspection-20260630.md +169 -0
  78. package/docs/integrations/design-ai-mcp-server.md +4 -4
  79. package/docs/reference/ant-design.md +413 -0
  80. package/docs/reference/awesome-design-md.md +439 -0
  81. package/docs/reference/mui.md +783 -0
  82. package/docs/reference/shadcn-ui.md +298 -0
  83. package/examples/component-accordion-actions.md +5 -5
  84. package/examples/component-accordion-details.md +5 -5
  85. package/examples/component-accordion-summary.md +5 -5
  86. package/examples/component-accordion.md +3 -3
  87. package/examples/component-affix.md +1 -1
  88. package/examples/component-alert-dialog.md +1 -1
  89. package/examples/component-alert-title.md +1 -1
  90. package/examples/component-alert.md +3 -3
  91. package/examples/component-anchor.md +1 -1
  92. package/examples/component-app-bar.md +1 -1
  93. package/examples/component-aspect-ratio.md +1 -1
  94. package/examples/component-auto-complete.md +2 -2
  95. package/examples/component-avatar-group.md +5 -5
  96. package/examples/component-avatar.md +3 -3
  97. package/examples/component-back-top.md +1 -1
  98. package/examples/component-backdrop.md +1 -1
  99. package/examples/component-badge.md +3 -3
  100. package/examples/component-border-beam.md +3 -3
  101. package/examples/component-bottom-navigation.md +1 -1
  102. package/examples/component-box.md +1 -1
  103. package/examples/component-breadcrumb.md +3 -3
  104. package/examples/component-button-base.md +3 -3
  105. package/examples/component-button-group.md +2 -2
  106. package/examples/component-button.md +3 -3
  107. package/examples/component-calendar.md +2 -2
  108. package/examples/component-card-actions.md +1 -1
  109. package/examples/component-card-content.md +1 -1
  110. package/examples/component-card-header.md +1 -1
  111. package/examples/component-card-media.md +1 -1
  112. package/examples/component-card.md +3 -3
  113. package/examples/component-carousel.md +2 -2
  114. package/examples/component-cascader.md +1 -1
  115. package/examples/component-chart.md +1 -1
  116. package/examples/component-checkbox.md +3 -3
  117. package/examples/component-click-away-listener.md +1 -1
  118. package/examples/component-code.md +1 -1
  119. package/examples/component-collapsible.md +1 -1
  120. package/examples/component-color-picker.md +1 -1
  121. package/examples/component-combobox.md +1 -1
  122. package/examples/component-command.md +1 -1
  123. package/examples/component-config-provider.md +3 -3
  124. package/examples/component-context-menu.md +1 -1
  125. package/examples/component-css-baseline.md +3 -3
  126. package/examples/component-date-picker.md +2 -2
  127. package/examples/component-descriptions.md +1 -1
  128. package/examples/component-dialog-actions.md +1 -1
  129. package/examples/component-dialog-content-text.md +1 -1
  130. package/examples/component-dialog-content.md +1 -1
  131. package/examples/component-dialog-title.md +1 -1
  132. package/examples/component-dialog.md +2 -2
  133. package/examples/component-divider.md +3 -3
  134. package/examples/component-drawer.md +3 -3
  135. package/examples/component-dropdown.md +3 -3
  136. package/examples/component-empty.md +2 -2
  137. package/examples/component-fade.md +1 -1
  138. package/examples/component-field.md +1 -1
  139. package/examples/component-filled-input.md +1 -1
  140. package/examples/component-flex.md +1 -1
  141. package/examples/component-float-button.md +2 -2
  142. package/examples/component-form-control-label.md +1 -1
  143. package/examples/component-form-control.md +1 -1
  144. package/examples/component-form-controls.md +1 -1
  145. package/examples/component-form-group.md +1 -1
  146. package/examples/component-form-helper-text.md +1 -1
  147. package/examples/component-form-label.md +1 -1
  148. package/examples/component-form.md +2 -2
  149. package/examples/component-grid.md +2 -2
  150. package/examples/component-grow.md +1 -1
  151. package/examples/component-hover-card.md +1 -1
  152. package/examples/component-icon-button.md +1 -1
  153. package/examples/component-icon.md +1 -1
  154. package/examples/component-image-list.md +1 -1
  155. package/examples/component-image.md +1 -1
  156. package/examples/component-input-adornment.md +1 -1
  157. package/examples/component-input-base.md +1 -1
  158. package/examples/component-input-number.md +1 -1
  159. package/examples/component-input-otp.md +2 -2
  160. package/examples/component-input.md +3 -3
  161. package/examples/component-item.md +1 -1
  162. package/examples/component-label.md +1 -1
  163. package/examples/component-layout.md +1 -1
  164. package/examples/component-link.md +1 -1
  165. package/examples/component-list-item-avatar.md +1 -1
  166. package/examples/component-list-item-button.md +1 -1
  167. package/examples/component-list-item-icon.md +1 -1
  168. package/examples/component-list-item-text.md +1 -1
  169. package/examples/component-list-item.md +1 -1
  170. package/examples/component-list-subheader.md +1 -1
  171. package/examples/component-list.md +2 -2
  172. package/examples/component-masonry.md +1 -1
  173. package/examples/component-mentions.md +1 -1
  174. package/examples/component-menu-item.md +1 -1
  175. package/examples/component-menu-list.md +1 -1
  176. package/examples/component-menu.md +1 -1
  177. package/examples/component-menubar.md +1 -1
  178. package/examples/component-message.md +1 -1
  179. package/examples/component-mobile-stepper.md +1 -1
  180. package/examples/component-modal.md +5 -5
  181. package/examples/component-navigation-menu.md +1 -1
  182. package/examples/component-notification.md +1 -1
  183. package/examples/component-outlined-input.md +1 -1
  184. package/examples/component-pagination.md +3 -3
  185. package/examples/component-paper.md +1 -1
  186. package/examples/component-popconfirm.md +1 -1
  187. package/examples/component-popover.md +3 -3
  188. package/examples/component-popper.md +1 -1
  189. package/examples/component-progress.md +2 -2
  190. package/examples/component-qr-code.md +1 -1
  191. package/examples/component-radio.md +3 -3
  192. package/examples/component-rate.md +2 -2
  193. package/examples/component-resizable.md +1 -1
  194. package/examples/component-result.md +1 -1
  195. package/examples/component-scroll-area.md +1 -1
  196. package/examples/component-segmented.md +3 -3
  197. package/examples/component-select.md +3 -3
  198. package/examples/component-separator.md +1 -1
  199. package/examples/component-sheet.md +1 -1
  200. package/examples/component-sidebar.md +1 -1
  201. package/examples/component-skeleton.md +3 -3
  202. package/examples/component-slide.md +1 -1
  203. package/examples/component-slider.md +3 -3
  204. package/examples/component-snackbar-content.md +1 -1
  205. package/examples/component-snackbar.md +1 -1
  206. package/examples/component-sonner.md +1 -1
  207. package/examples/component-space.md +1 -1
  208. package/examples/component-speed-dial-action.md +1 -1
  209. package/examples/component-speed-dial.md +1 -1
  210. package/examples/component-spin.md +2 -2
  211. package/examples/component-spinner.md +1 -1
  212. package/examples/component-splitter.md +2 -2
  213. package/examples/component-stack.md +1 -1
  214. package/examples/component-statistic.md +1 -1
  215. package/examples/component-step-button.md +4 -4
  216. package/examples/component-step-connector.md +4 -4
  217. package/examples/component-step-content.md +1 -1
  218. package/examples/component-step-icon.md +1 -1
  219. package/examples/component-step-label.md +1 -1
  220. package/examples/component-step.md +2 -2
  221. package/examples/component-steps.md +2 -2
  222. package/examples/component-swipeable-drawer.md +1 -1
  223. package/examples/component-switch.md +3 -3
  224. package/examples/component-tab-scroll-button.md +5 -5
  225. package/examples/component-tab.md +1 -1
  226. package/examples/component-table-body.md +1 -1
  227. package/examples/component-table-cell.md +1 -1
  228. package/examples/component-table-container.md +1 -1
  229. package/examples/component-table-footer.md +1 -1
  230. package/examples/component-table-head.md +1 -1
  231. package/examples/component-table-pagination.md +1 -1
  232. package/examples/component-table-row.md +1 -1
  233. package/examples/component-table-sort-label.md +1 -1
  234. package/examples/component-table.md +2 -2
  235. package/examples/component-tabs.md +3 -3
  236. package/examples/component-tag-badge.md +2 -2
  237. package/examples/component-tag.md +1 -1
  238. package/examples/component-textarea-autosize.md +1 -1
  239. package/examples/component-textarea.md +1 -1
  240. package/examples/component-time-picker.md +1 -1
  241. package/examples/component-timeline.md +1 -1
  242. package/examples/component-toast.md +4 -4
  243. package/examples/component-toggle-button.md +1 -1
  244. package/examples/component-toggle.md +1 -1
  245. package/examples/component-toolbar.md +1 -1
  246. package/examples/component-tooltip.md +3 -3
  247. package/examples/component-tour.md +1 -1
  248. package/examples/component-transfer.md +1 -1
  249. package/examples/component-tree-select.md +1 -1
  250. package/examples/component-tree.md +1 -1
  251. package/examples/component-typography.md +2 -2
  252. package/examples/component-upload.md +1 -1
  253. package/examples/component-watermark.md +1 -1
  254. package/examples/component-zoom.md +1 -1
  255. package/knowledge/COVERAGE.md +4 -3
  256. package/knowledge/components/INDEX.md +202 -202
  257. package/knowledge/patterns/brand-references.md +72 -72
  258. package/package.json +1 -1
  259. package/tools/audit/local-ci.py +16 -1
  260. package/tools/audit/package-smoke.py +611 -9
  261. package/tools/audit/registry-smoke.py +534 -0
  262. package/tools/audit/release-metadata.py +47 -1
  263. package/tools/audit/smoke_assertions.py +915 -13
  264. package/tools/migrations/refs-links-to-reference-pages.py +179 -0
@@ -162,8 +162,8 @@ When motion disabled: spinner is static. Provide a text label or different non-a
162
162
 
163
163
  ## References
164
164
 
165
- - Ant Design: [`refs/ant-design/components/spin/`](../refs/ant-design/components/spin/) — `Spin`. Standard spinner with `tip`, `delay`, `wrapperClassName`.
166
- - MUI: [`CircularProgress`](../refs/mui/packages/mui-material/src/CircularProgress/) (Material's equivalent). Same role.
165
+ - Ant Design: [`refs/ant-design/components/spin/`](../docs/reference/ant-design.md#spin) — `Spin`. Standard spinner with `tip`, `delay`, `wrapperClassName`.
166
+ - MUI: [`CircularProgress`](../docs/reference/mui.md#circular-progress) (Material's equivalent). Same role.
167
167
  - shadcn-ui: no built-in. Use Lucide's `Loader2` icon with CSS spin.
168
168
 
169
169
  ## Cross-reference
@@ -193,7 +193,7 @@ For longer waits, Korean: "잠시만 기다려 주세요...".
193
193
 
194
194
  ## References
195
195
 
196
- - MUI: [`CircularProgress`](../refs/mui/packages/mui-material/src/CircularProgress) (indeterminate variant)
196
+ - MUI: [`CircularProgress`](../docs/reference/mui.md#circular-progress) (indeterminate variant)
197
197
  - Patterns: standard SVG spinner
198
198
 
199
199
  ## Cross-reference
@@ -200,9 +200,9 @@ function CodeEditor() {
200
200
 
201
201
  ## References
202
202
 
203
- - Ant Design: [`refs/ant-design/components/splitter/`](../refs/ant-design/components/splitter/) — `Splitter` + `Splitter.Panel`. Modern Ant addition.
203
+ - Ant Design: [`refs/ant-design/components/splitter/`](../docs/reference/ant-design.md#splitter) — `Splitter` + `Splitter.Panel`. Modern Ant addition.
204
204
  - MUI: no built-in. Use `react-resizable-panels` or `allotment`.
205
- - shadcn-ui: [`resizable.tsx`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/resizable.tsx) — wraps `react-resizable-panels`. Cleanest impl.
205
+ - shadcn-ui: [`resizable.tsx`](../docs/reference/shadcn-ui.md#resizable) — wraps `react-resizable-panels`. Cleanest impl.
206
206
 
207
207
  ## Cross-reference
208
208
 
@@ -119,7 +119,7 @@ Layout primitive — no interactive states.
119
119
 
120
120
  ## References
121
121
 
122
- - MUI: [`Stack`](../refs/mui/packages/mui-material/src/Stack/)
122
+ - MUI: [`Stack`](../docs/reference/mui.md#stack)
123
123
 
124
124
  ## Cross-reference
125
125
 
@@ -265,7 +265,7 @@ For libraries: `react-sparklines`, `recharts` mini variant, or hand-roll an SVG.
265
265
 
266
266
  ## References
267
267
 
268
- - Ant Design: [`refs/ant-design/components/statistic/`](../refs/ant-design/components/statistic/) — `Statistic` + `Statistic.Countdown` (auto-counting). Solid baseline.
268
+ - Ant Design: [`refs/ant-design/components/statistic/`](../docs/reference/ant-design.md#statistic) — `Statistic` + `Statistic.Countdown` (auto-counting). Solid baseline.
269
269
  - MUI: no dedicated component — compose `<Card><CardContent><Typography variant="overline">label</Typography>...`.
270
270
  - shadcn-ui: no built-in. Compose from `Card` + Tailwind.
271
271
 
@@ -144,10 +144,10 @@ Inherits button-like props from MUI `ButtonBase`. In MUI, `disabled` is controll
144
144
 
145
145
  ## References
146
146
 
147
- - MUI direct source: [`refs/mui/packages/mui-material/src/StepButton/StepButton.d.ts`](../refs/mui/packages/mui-material/src/StepButton/StepButton.d.ts)
148
- - MUI implementation: [`refs/mui/packages/mui-material/src/StepButton/StepButton.js`](../refs/mui/packages/mui-material/src/StepButton/StepButton.js)
149
- - MUI stepper docs/examples: [`refs/mui/docs/data/material/components/steppers/`](../refs/mui/docs/data/material/components/steppers/)
150
- - Ant Design parent pattern: [`refs/ant-design/components/steps/`](../refs/ant-design/components/steps/)
147
+ - MUI direct source: [`refs/mui/packages/mui-material/src/StepButton/StepButton.d.ts`](../docs/reference/mui.md#step-button)
148
+ - MUI implementation: [`refs/mui/packages/mui-material/src/StepButton/StepButton.js`](../docs/reference/mui.md#step-button)
149
+ - MUI stepper docs/examples: [`refs/mui/docs/data/material/components/steppers/`](../docs/reference/mui.md)
150
+ - Ant Design parent pattern: [`refs/ant-design/components/steps/`](../docs/reference/ant-design.md#steps)
151
151
  - Accessibility baseline: [`knowledge/a11y/keyboard-and-focus.md`](../knowledge/a11y/keyboard-and-focus.md)
152
152
 
153
153
  ## Cross-reference
@@ -144,10 +144,10 @@ function CheckoutConnector(props: StepConnectorProps) {
144
144
 
145
145
  ## References
146
146
 
147
- - MUI direct source: [`refs/mui/packages/mui-material/src/StepConnector/StepConnector.d.ts`](../refs/mui/packages/mui-material/src/StepConnector/StepConnector.d.ts)
148
- - MUI implementation: [`refs/mui/packages/mui-material/src/StepConnector/StepConnector.js`](../refs/mui/packages/mui-material/src/StepConnector/StepConnector.js)
149
- - MUI stepper docs/examples: [`refs/mui/docs/data/material/components/steppers/`](../refs/mui/docs/data/material/components/steppers/)
150
- - Ant Design parent pattern: [`refs/ant-design/components/steps/`](../refs/ant-design/components/steps/)
147
+ - MUI direct source: [`refs/mui/packages/mui-material/src/StepConnector/StepConnector.d.ts`](../docs/reference/mui.md#step-connector)
148
+ - MUI implementation: [`refs/mui/packages/mui-material/src/StepConnector/StepConnector.js`](../docs/reference/mui.md#step-connector)
149
+ - MUI stepper docs/examples: [`refs/mui/docs/data/material/components/steppers/`](../docs/reference/mui.md)
150
+ - Ant Design parent pattern: [`refs/ant-design/components/steps/`](../docs/reference/ant-design.md#steps)
151
151
  - Accessibility baseline: [`knowledge/a11y/keyboard-and-focus.md`](../knowledge/a11y/keyboard-and-focus.md)
152
152
 
153
153
  ## Cross-reference
@@ -111,7 +111,7 @@ function VerticalOnboarding() {
111
111
 
112
112
  ## References
113
113
 
114
- - MUI: [`StepContent`](../refs/mui/packages/mui-material/src/StepContent/)
114
+ - MUI: [`StepContent`](../docs/reference/mui.md#step-content)
115
115
 
116
116
  ## Cross-reference
117
117
 
@@ -106,7 +106,7 @@ function CartStepper({ activeStep }) {
106
106
 
107
107
  ## References
108
108
 
109
- - MUI: [`StepIcon`](../refs/mui/packages/mui-material/src/StepIcon/)
109
+ - MUI: [`StepIcon`](../docs/reference/mui.md#step-icon)
110
110
 
111
111
  ## Cross-reference
112
112
 
@@ -91,7 +91,7 @@ Inherited from parent `Step`:
91
91
 
92
92
  ## References
93
93
 
94
- - MUI: [`StepLabel`](../refs/mui/packages/mui-material/src/StepLabel/)
94
+ - MUI: [`StepLabel`](../docs/reference/mui.md#step-label)
95
95
 
96
96
  ## Cross-reference
97
97
 
@@ -76,8 +76,8 @@ This is handled by the parent `Steps` component, not Step itself.
76
76
 
77
77
  ## References
78
78
 
79
- - MUI: [`Step`](../refs/mui/packages/mui-material/src/Step)
80
- - Ant: [`Steps`](../refs/ant-design/components/steps) (parent)
79
+ - MUI: [`Step`](../docs/reference/mui.md#step)
80
+ - Ant: [`Steps`](../docs/reference/ant-design.md#steps) (parent)
81
81
 
82
82
  ## Cross-reference
83
83
 
@@ -247,8 +247,8 @@ For `n > 5` steps on mobile, **always switch to compact or text-only**.
247
247
 
248
248
  ## References
249
249
 
250
- - Ant Design: [`refs/ant-design/components/steps/`](../refs/ant-design/components/steps/) — `Steps`, `Steps.Item`. Status, direction, size, progress dot variant. Most exhaustive.
251
- - MUI: [`refs/mui/packages/mui-material/src/Stepper/`](../refs/mui/packages/mui-material/src/Stepper/) — `Stepper`, `Step`, `StepLabel`, `StepContent`. Vertical with collapsible content per step is unique.
250
+ - Ant Design: [`refs/ant-design/components/steps/`](../docs/reference/ant-design.md#steps) — `Steps`, `Steps.Item`. Status, direction, size, progress dot variant. Most exhaustive.
251
+ - MUI: [`refs/mui/packages/mui-material/src/Stepper/`](../docs/reference/mui.md#stepper) — `Stepper`, `Step`, `StepLabel`, `StepContent`. Vertical with collapsible content per step is unique.
252
252
  - shadcn-ui: no built-in — compose from primitives. The `progress` and custom layout get you 80% there.
253
253
 
254
254
  API choices made:
@@ -139,7 +139,7 @@ function MobileApp() {
139
139
 
140
140
  ## References
141
141
 
142
- - MUI: [`SwipeableDrawer`](../refs/mui/packages/mui-material/src/SwipeableDrawer)
142
+ - MUI: [`SwipeableDrawer`](../docs/reference/mui.md#swipeable-drawer)
143
143
  - iOS native drawer pattern; Material 3 standard drawer
144
144
 
145
145
  ## Cross-reference
@@ -89,9 +89,9 @@ Touch target ≥ 44pt regardless via padding.
89
89
 
90
90
  ## References
91
91
 
92
- - Ant: [`Switch`](../refs/ant-design/components/switch)
93
- - MUI: [`Switch`](../refs/mui/packages/mui-material/src/Switch)
94
- - shadcn-ui: [`switch`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/switch.tsx)
92
+ - Ant: [`Switch`](../docs/reference/ant-design.md#switch)
93
+ - MUI: [`Switch`](../docs/reference/mui.md#switch)
94
+ - shadcn-ui: [`switch`](../docs/reference/shadcn-ui.md#switch)
95
95
 
96
96
  ## Cross-reference
97
97
 
@@ -166,11 +166,11 @@ function ScrollableTabsHeader({ tabs, value, onValueChange }: Props) {
166
166
 
167
167
  ## References
168
168
 
169
- - MUI direct source: [`refs/mui/packages/mui-material/src/TabScrollButton/TabScrollButton.d.ts`](../refs/mui/packages/mui-material/src/TabScrollButton/TabScrollButton.d.ts)
170
- - MUI implementation: [`refs/mui/packages/mui-material/src/TabScrollButton/TabScrollButton.js`](../refs/mui/packages/mui-material/src/TabScrollButton/TabScrollButton.js)
171
- - MUI tabs source: [`refs/mui/packages/mui-material/src/Tabs/`](../refs/mui/packages/mui-material/src/Tabs/)
172
- - Ant Design parent pattern: [`refs/ant-design/components/tabs/`](../refs/ant-design/components/tabs/)
173
- - shadcn-ui parent pattern: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/tabs.tsx`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/tabs.tsx)
169
+ - MUI direct source: [`refs/mui/packages/mui-material/src/TabScrollButton/TabScrollButton.d.ts`](../docs/reference/mui.md#tab-scroll-button)
170
+ - MUI implementation: [`refs/mui/packages/mui-material/src/TabScrollButton/TabScrollButton.js`](../docs/reference/mui.md#tab-scroll-button)
171
+ - MUI tabs source: [`refs/mui/packages/mui-material/src/Tabs/`](../docs/reference/mui.md#tabs)
172
+ - Ant Design parent pattern: [`refs/ant-design/components/tabs/`](../docs/reference/ant-design.md#tabs)
173
+ - shadcn-ui parent pattern: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/tabs.tsx`](../docs/reference/shadcn-ui.md#tabs)
174
174
  - Accessibility baseline: [`knowledge/a11y/keyboard-and-focus.md`](../knowledge/a11y/keyboard-and-focus.md)
175
175
 
176
176
  ## Cross-reference
@@ -111,7 +111,7 @@ function AccountTabs() {
111
111
 
112
112
  ## References
113
113
 
114
- - MUI: [`Tab`](../refs/mui/packages/mui-material/src/Tab/) + [`Tabs`](../refs/mui/packages/mui-material/src/Tabs/)
114
+ - MUI: [`Tab`](../docs/reference/mui.md#tab) + [`Tabs`](../docs/reference/mui.md#tabs)
115
115
 
116
116
  ## Cross-reference
117
117
 
@@ -72,7 +72,7 @@ Renders `<tbody>` — semantic role for table body comes for free. No additional
72
72
 
73
73
  ## References
74
74
 
75
- - MUI: [`TableBody`](../refs/mui/packages/mui-material/src/TableBody/)
75
+ - MUI: [`TableBody`](../docs/reference/mui.md#table-body)
76
76
 
77
77
  ## Cross-reference
78
78
 
@@ -108,7 +108,7 @@
108
108
 
109
109
  ## References
110
110
 
111
- - MUI: [`TableCell`](../refs/mui/packages/mui-material/src/TableCell/)
111
+ - MUI: [`TableCell`](../docs/reference/mui.md#table-cell)
112
112
 
113
113
  ## Cross-reference
114
114
 
@@ -67,7 +67,7 @@
67
67
 
68
68
  ## References
69
69
 
70
- - MUI: [`TableContainer`](../refs/mui/packages/mui-material/src/TableContainer/)
70
+ - MUI: [`TableContainer`](../docs/reference/mui.md#table-container)
71
71
 
72
72
  ## Cross-reference
73
73
 
@@ -64,7 +64,7 @@
64
64
 
65
65
  ## References
66
66
 
67
- - MUI: [`TableFooter`](../refs/mui/packages/mui-material/src/TableFooter/)
67
+ - MUI: [`TableFooter`](../docs/reference/mui.md#table-footer)
68
68
 
69
69
  ## Cross-reference
70
70
 
@@ -69,7 +69,7 @@
69
69
 
70
70
  ## References
71
71
 
72
- - MUI: [`TableHead`](../refs/mui/packages/mui-material/src/TableHead/)
72
+ - MUI: [`TableHead`](../docs/reference/mui.md#table-head)
73
73
 
74
74
  ## Cross-reference
75
75
 
@@ -128,7 +128,7 @@ function EmployeesTable() {
128
128
 
129
129
  ## References
130
130
 
131
- - MUI: [`TablePagination`](../refs/mui/packages/mui-material/src/TablePagination/)
131
+ - MUI: [`TablePagination`](../docs/reference/mui.md#table-pagination)
132
132
 
133
133
  ## Cross-reference
134
134
 
@@ -103,7 +103,7 @@
103
103
 
104
104
  ## References
105
105
 
106
- - MUI: [`TableRow`](../refs/mui/packages/mui-material/src/TableRow/)
106
+ - MUI: [`TableRow`](../docs/reference/mui.md#table-row)
107
107
 
108
108
  ## Cross-reference
109
109
 
@@ -101,7 +101,7 @@ function SortableHeader({ orderBy, order, onSort }) {
101
101
 
102
102
  ## References
103
103
 
104
- - MUI: [`TableSortLabel`](../refs/mui/packages/mui-material/src/TableSortLabel/)
104
+ - MUI: [`TableSortLabel`](../docs/reference/mui.md#table-sort-label)
105
105
 
106
106
  ## Cross-reference
107
107
 
@@ -186,9 +186,9 @@ Pick #1 for product UIs, #2 for power-user data tools.
186
186
 
187
187
  ## References
188
188
 
189
- - Ant Design: [`refs/ant-design/components/table/`](../refs/ant-design/components/table/) — most exhaustive: tree data, expandable rows, virtual scroll, drag-drop column reorder, fixed headers/columns. Heavy but production-grade.
189
+ - Ant Design: [`refs/ant-design/components/table/`](../docs/reference/ant-design.md#table) — most exhaustive: tree data, expandable rows, virtual scroll, drag-drop column reorder, fixed headers/columns. Heavy but production-grade.
190
190
  - MUI: `<Table>` (basic) and `<DataGrid>` (heavy, paid for some features). DataGrid has best DX for filtering/sorting but is a large dep.
191
- - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/table.tsx`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/table.tsx) — primitives only (`<Table>`, `<TableHeader>`, etc.). Pair with TanStack Table for behavior. **Recommended modern pattern.**
191
+ - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/table.tsx`](../docs/reference/shadcn-ui.md#table) — primitives only (`<Table>`, `<TableHeader>`, etc.). Pair with TanStack Table for behavior. **Recommended modern pattern.**
192
192
 
193
193
  API choices made:
194
194
  - **TanStack Table as the engine** — headless, framework-agnostic, free, mature. Don't reinvent.
@@ -168,9 +168,9 @@ Critical contract — get this exactly right:
168
168
 
169
169
  ## References
170
170
 
171
- - Ant Design: [`refs/ant-design/components/tabs/`](../refs/ant-design/components/tabs/) — `Tabs`, `Tabs.TabPane`, supports `card`/`line`/`editable-card` variants. Most variants out of the box.
172
- - MUI: [`refs/mui/packages/mui-material/src/Tabs/`](../refs/mui/packages/mui-material/src/Tabs/) — `Tabs` + `Tab` + `TabPanel` (separately). MUI has good `scrollable` props.
173
- - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/tabs.tsx`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/tabs.tsx) — Radix Tabs primitive. Cleanest a11y. **Default for new projects.**
171
+ - Ant Design: [`refs/ant-design/components/tabs/`](../docs/reference/ant-design.md#tabs) — `Tabs`, `Tabs.TabPane`, supports `card`/`line`/`editable-card` variants. Most variants out of the box.
172
+ - MUI: [`refs/mui/packages/mui-material/src/Tabs/`](../docs/reference/mui.md#tabs) — `Tabs` + `Tab` + `TabPanel` (separately). MUI has good `scrollable` props.
173
+ - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/tabs.tsx`](../docs/reference/shadcn-ui.md#tabs) — Radix Tabs primitive. Cleanest a11y. **Default for new projects.**
174
174
 
175
175
  API choices made:
176
176
  - **Composition with `Tabs.Trigger` / `Tabs.Content`** matching value strings — Radix pattern, lowest surface area.
@@ -291,9 +291,9 @@ Use `offset` to fine-tune (badges often need -4px / -4px to overlap nicely).
291
291
 
292
292
  ## References
293
293
 
294
- - Ant Design: [`refs/ant-design/components/tag/`](../refs/ant-design/components/tag/) (Tag) + [`refs/ant-design/components/badge/`](../refs/ant-design/components/badge/) (Badge). Both well-developed; Tag has `Tag.CheckableTag` for filter-style.
294
+ - Ant Design: [`refs/ant-design/components/tag/`](../docs/reference/ant-design.md#tag) (Tag) + [`refs/ant-design/components/badge/`](../docs/reference/ant-design.md#badge) (Badge). Both well-developed; Tag has `Tag.CheckableTag` for filter-style.
295
295
  - MUI: `Chip` (closest to Tag) + `Badge`. MUI Chip has `clickable`, `deletable`, `avatar` slot — most flexible.
296
- - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/badge.tsx`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/badge.tsx) — minimal Tag-equivalent. shadcn doesn't have a separate Tag/Badge distinction; user composes.
296
+ - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/badge.tsx`](../docs/reference/shadcn-ui.md#badge) — minimal Tag-equivalent. shadcn doesn't have a separate Tag/Badge distinction; user composes.
297
297
 
298
298
  API choices made:
299
299
  - **Tag and Badge as separate components**: matches Ant + MUI; clearer than a single "Pill" with a `mode` flag.
@@ -94,7 +94,7 @@
94
94
 
95
95
  ## References
96
96
 
97
- - Ant: [`Tag`](../refs/ant-design/components/tag)
97
+ - Ant: [`Tag`](../docs/reference/ant-design.md#tag)
98
98
 
99
99
  ## Cross-reference
100
100
 
@@ -105,7 +105,7 @@ function ChatInput() {
105
105
 
106
106
  ## References
107
107
 
108
- - MUI: [`TextareaAutosize`](../refs/mui/packages/mui-material/src/TextareaAutosize)
108
+ - MUI: [`TextareaAutosize`](../docs/reference/mui.md#textarea-autosize)
109
109
  - CSS `field-sizing` property (Working Draft)
110
110
 
111
111
  ## Cross-reference
@@ -163,7 +163,7 @@ Critical for Hangul input — composition events span multiple keystrokes.
163
163
  ## References
164
164
 
165
165
  - HTML5 `<textarea>`
166
- - shadcn-ui: [`textarea`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/textarea.tsx)
166
+ - shadcn-ui: [`textarea`](../docs/reference/shadcn-ui.md#textarea)
167
167
  - MUI: TextareaAutosize
168
168
 
169
169
  ## Cross-reference
@@ -195,7 +195,7 @@ function AppointmentBooking() {
195
195
 
196
196
  ## References
197
197
 
198
- - Ant: [`TimePicker`](../refs/ant-design/components/time-picker)
198
+ - Ant: [`TimePicker`](../docs/reference/ant-design.md#time-picker)
199
199
  - MUI: `TimePicker` (in @mui/x-date-pickers)
200
200
  - HTML5: `<input type="time">` (limited but accessible default)
201
201
 
@@ -160,7 +160,7 @@ Status terms:
160
160
 
161
161
  ## References
162
162
 
163
- - Ant Design: [`refs/ant-design/components/timeline/`](../refs/ant-design/components/timeline/) — `Timeline` with modes, custom icons, color overrides.
163
+ - Ant Design: [`refs/ant-design/components/timeline/`](../docs/reference/ant-design.md#timeline) — `Timeline` with modes, custom icons, color overrides.
164
164
  - MUI: `@mui/lab` `Timeline` (separate package) — alternate mode well-supported.
165
165
  - shadcn-ui: no built-in. Compose from primitives.
166
166
 
@@ -206,10 +206,10 @@ upload().then(
206
206
  ## References
207
207
 
208
208
  - Ant Design:
209
- - [`refs/ant-design/components/message/`](../refs/ant-design/components/message/) — single-line transient messages (closest to "toast").
210
- - [`refs/ant-design/components/notification/`](../refs/ant-design/components/notification/) — multi-line, with title and description (closest to this spec's full toast). Ant separates these by line count — most other systems combine.
211
- - MUI: [`refs/mui/packages/mui-material/src/Snackbar/Snackbar.tsx`](../refs/mui/packages/mui-material/src/Snackbar/) — composition-style React component. The least ergonomic of the three for the imperative pattern; pair with `useSnackbar` hook from notistack or build a custom queue.
212
- - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/sonner.tsx`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/sonner.tsx) — wraps `sonner` library. Sonner is the modern de-facto standard; its API (this spec mirrors it) is the cleanest of the three.
209
+ - [`refs/ant-design/components/message/`](../docs/reference/ant-design.md#message) — single-line transient messages (closest to "toast").
210
+ - [`refs/ant-design/components/notification/`](../docs/reference/ant-design.md#notification) — multi-line, with title and description (closest to this spec's full toast). Ant separates these by line count — most other systems combine.
211
+ - MUI: [`refs/mui/packages/mui-material/src/Snackbar/Snackbar.tsx`](../docs/reference/mui.md#snackbar) — composition-style React component. The least ergonomic of the three for the imperative pattern; pair with `useSnackbar` hook from notistack or build a custom queue.
212
+ - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/sonner.tsx`](../docs/reference/shadcn-ui.md#sonner) — wraps `sonner` library. Sonner is the modern de-facto standard; its API (this spec mirrors it) is the cleanest of the three.
213
213
 
214
214
  API choices made:
215
215
  - **Imperative API as primary** (`toast.success(...)`) — matches user mental model. Composition (`<Toast>` JSX) is rejected — toasts come from any code path, not from render.
@@ -120,7 +120,7 @@ function TextStyleToolbar({ formats, onChange }) {
120
120
 
121
121
  ## References
122
122
 
123
- - MUI: [`ToggleButton`](../refs/mui/packages/mui-material/src/ToggleButton/) + [`ToggleButtonGroup`](../refs/mui/packages/mui-material/src/ToggleButtonGroup/)
123
+ - MUI: [`ToggleButton`](../docs/reference/mui.md#toggle-button) + [`ToggleButtonGroup`](../docs/reference/mui.md#toggle-button-group)
124
124
 
125
125
  ## Cross-reference
126
126
 
@@ -210,7 +210,7 @@ Pretendard for label / Korean text in `aria-label`.
210
210
 
211
211
  ## References
212
212
 
213
- - shadcn-ui: [`toggle`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/toggle.tsx), [`toggle-group`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/toggle-group.tsx) (Radix)
213
+ - shadcn-ui: [`toggle`](../docs/reference/shadcn-ui.md#toggle), [`toggle-group`](../docs/reference/shadcn-ui.md#toggle-group) (Radix)
214
214
  - WAI-ARIA: [Toggle button](https://www.w3.org/WAI/ARIA/apg/patterns/button/) + [Radio group](https://www.w3.org/WAI/ARIA/apg/patterns/radio/)
215
215
 
216
216
  ## Cross-reference
@@ -94,7 +94,7 @@ Stateless. Children carry their own states.
94
94
 
95
95
  ## References
96
96
 
97
- - MUI: [`Toolbar`](../refs/mui/packages/mui-material/src/Toolbar)
97
+ - MUI: [`Toolbar`](../docs/reference/mui.md#toolbar)
98
98
  - WAI-ARIA: [Toolbar pattern](https://www.w3.org/WAI/ARIA/apg/patterns/toolbar/)
99
99
 
100
100
  ## Cross-reference
@@ -168,9 +168,9 @@ The native `title` attribute does NOT meet a11y requirements:
168
168
 
169
169
  ## References
170
170
 
171
- - Ant Design: [`refs/ant-design/components/tooltip/`](../refs/ant-design/components/tooltip/) — `Tooltip` with rich placement options (12 directions). `mouseEnterDelay` / `mouseLeaveDelay` props.
172
- - MUI: [`refs/mui/packages/mui-material/src/Tooltip/`](../refs/mui/packages/mui-material/src/Tooltip/) — `Tooltip` with `placement`, `enterDelay`, `leaveDelay`, `arrow`. Solid implementation.
173
- - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/tooltip.tsx`](../refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/tooltip.tsx) — Radix Tooltip primitive. **Default — best a11y of the three.**
171
+ - Ant Design: [`refs/ant-design/components/tooltip/`](../docs/reference/ant-design.md#tooltip) — `Tooltip` with rich placement options (12 directions). `mouseEnterDelay` / `mouseLeaveDelay` props.
172
+ - MUI: [`refs/mui/packages/mui-material/src/Tooltip/`](../docs/reference/mui.md#tooltip) — `Tooltip` with `placement`, `enterDelay`, `leaveDelay`, `arrow`. Solid implementation.
173
+ - shadcn-ui: [`refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/tooltip.tsx`](../docs/reference/shadcn-ui.md#tooltip) — Radix Tooltip primitive. **Default — best a11y of the three.**
174
174
 
175
175
  ## Cross-reference
176
176
 
@@ -165,7 +165,7 @@ If selector doesn't match (e.g., conditional UI not rendered), skip the step or
165
165
 
166
166
  ## References
167
167
 
168
- - Ant Design: [`refs/ant-design/components/tour/`](../refs/ant-design/components/tour/) — `Tour` with steps, target refs, custom rendering. Modern Ant addition.
168
+ - Ant Design: [`refs/ant-design/components/tour/`](../docs/reference/ant-design.md#tour) — `Tour` with steps, target refs, custom rendering. Modern Ant addition.
169
169
  - MUI: no built-in. Use libraries like `react-joyride` or `intro.js`.
170
170
  - shadcn-ui: no built-in. Compose with Popover + custom backdrop.
171
171
 
@@ -146,7 +146,7 @@ Or a simpler "tap to toggle" pattern:
146
146
 
147
147
  ## References
148
148
 
149
- - Ant Design: [`refs/ant-design/components/transfer/`](../refs/ant-design/components/transfer/) — `Transfer`. Most exhaustive; supports tree-like (`Transfer.TableTransfer`).
149
+ - Ant Design: [`refs/ant-design/components/transfer/`](../docs/reference/ant-design.md#transfer) — `Transfer`. Most exhaustive; supports tree-like (`Transfer.TableTransfer`).
150
150
  - MUI / shadcn-ui: no built-in.
151
151
 
152
152
  ## Cross-reference
@@ -191,7 +191,7 @@ function DepartmentSelect() {
191
191
 
192
192
  ## References
193
193
 
194
- - Ant: [`TreeSelect`](../refs/ant-design/components/tree-select)
194
+ - Ant: [`TreeSelect`](../docs/reference/ant-design.md#tree-select)
195
195
  - WAI-ARIA: [Tree pattern](https://www.w3.org/WAI/ARIA/apg/patterns/treeview/)
196
196
 
197
197
  ## Cross-reference
@@ -281,7 +281,7 @@ Announce on movement:
281
281
 
282
282
  ## References
283
283
 
284
- - Ant Design: [`refs/ant-design/components/tree/`](../refs/ant-design/components/tree/) — `Tree` with `Tree.DirectoryTree` for file-style. Most exhaustive (drag-drop, async, search, virtual). Heavy.
284
+ - Ant Design: [`refs/ant-design/components/tree/`](../docs/reference/ant-design.md#tree) — `Tree` with `Tree.DirectoryTree` for file-style. Most exhaustive (drag-drop, async, search, virtual). Heavy.
285
285
  - MUI: `@mui/x-tree-view` (separate package) — `RichTreeView` (declarative), `SimpleTreeView` (composition). Excellent a11y.
286
286
  - shadcn-ui: no built-in. Compose from primitives + headless library (react-arborist or @aria-tree).
287
287
 
@@ -202,8 +202,8 @@ For **Ant Design / MUI projects**: Typography is canonical; use it.
202
202
 
203
203
  ## References
204
204
 
205
- - Ant Design: [`refs/ant-design/components/typography/`](../refs/ant-design/components/typography/) — `Typography`, `Typography.Title`, `Typography.Text`, `Typography.Paragraph`. Most exhaustive: copyable, ellipsis with tooltip, editable.
206
- - MUI: [`refs/mui/packages/mui-material/src/Typography/`](../refs/mui/packages/mui-material/src/Typography/) — `Typography` with variants matching Material 3 (display, headline, title, body, label).
205
+ - Ant Design: [`refs/ant-design/components/typography/`](../docs/reference/ant-design.md#typography) — `Typography`, `Typography.Title`, `Typography.Text`, `Typography.Paragraph`. Most exhaustive: copyable, ellipsis with tooltip, editable.
206
+ - MUI: [`refs/mui/packages/mui-material/src/Typography/`](../docs/reference/mui.md#typography) — `Typography` with variants matching Material 3 (display, headline, title, body, label).
207
207
  - shadcn-ui: no Typography component. Apply utility classes directly.
208
208
 
209
209
  ## Cross-reference
@@ -278,7 +278,7 @@ Profile photo replacement. Click opens picker; uploaded file replaces avatar.
278
278
 
279
279
  ## References
280
280
 
281
- - Ant Design: [`refs/ant-design/components/upload/`](../refs/ant-design/components/upload/) — `Upload` with `Upload.Dragger` (drop zone), file list, multiple modes. Most exhaustive.
281
+ - Ant Design: [`refs/ant-design/components/upload/`](../docs/reference/ant-design.md#upload) — `Upload` with `Upload.Dragger` (drop zone), file list, multiple modes. Most exhaustive.
282
282
  - MUI: no dedicated component. Compose `<input type="file">` with custom button.
283
283
  - shadcn-ui: no built-in. Compose with file input + drop-zone library (e.g., `react-dropzone`).
284
284
 
@@ -208,7 +208,7 @@ Watermark with the **viewer's name + date** discourages internal screenshot-leak
208
208
 
209
209
  ## References
210
210
 
211
- - Ant Design: [`refs/ant-design/components/watermark/`](../refs/ant-design/components/watermark/) — `Watermark`. Modern Ant addition with comprehensive options.
211
+ - Ant Design: [`refs/ant-design/components/watermark/`](../docs/reference/ant-design.md#watermark) — `Watermark`. Modern Ant addition with comprehensive options.
212
212
  - MUI / shadcn-ui: no built-in. Compose with CSS or canvas.
213
213
 
214
214
  ## Cross-reference
@@ -83,7 +83,7 @@ When NOT to use:
83
83
 
84
84
  ## References
85
85
 
86
- - MUI: [`Zoom`](../refs/mui/packages/mui-material/src/Zoom)
86
+ - MUI: [`Zoom`](../docs/reference/mui.md#zoom)
87
87
  - Material Design: motion easing
88
88
 
89
89
  ## Cross-reference
@@ -1,7 +1,7 @@
1
1
  <!-- generated by tools/audit/check-coverage.py — do not hand-edit -->
2
2
  ---
3
3
  title: Design-AI coverage report
4
- generated_at: 2026-05-29
4
+ generated_at: 2026-07-03
5
5
  ---
6
6
 
7
7
  # Coverage report
@@ -15,7 +15,7 @@ generated_at: 2026-05-29
15
15
  | Knowledge files | 92 | 77 hand-written + 15 generated |
16
16
  | Skills (PLAYBOOK + SKILL) | 20 | 20 with verification phase |
17
17
  | Worked examples | 221 | |
18
- | Extractors | 11 | |
18
+ | Extractors | 12 | |
19
19
  | Canonical components | 200 | indexed across Ant / MUI / shadcn |
20
20
  | Components with worked spec | 181 | **90.5% spec coverage** (16 via parent/alias specs) |
21
21
 
@@ -49,7 +49,7 @@ generated_at: 2026-05-29
49
49
 
50
50
  | File | Lines | Type | Title |
51
51
  | --- | --- | --- | --- |
52
- | [knowledge/COVERAGE.md](../knowledge/COVERAGE.md) | 740 | generated | Coverage report |
52
+ | [knowledge/COVERAGE.md](../knowledge/COVERAGE.md) | 741 | generated | Coverage report |
53
53
  | [knowledge/PRINCIPLES.md](../knowledge/PRINCIPLES.md) | 108 | hand-written | Design-AI principles |
54
54
 
55
55
  #### a11y
@@ -729,6 +729,7 @@ Specs that don't match the canonical index and are not used as coverage aliases:
729
729
  - `tools/extractors/component_spec_scaffold.py`
730
730
  - `tools/extractors/component_spec_scaffold_v2.py`
731
731
  - `tools/extractors/mui_palette.py`
732
+ - `tools/extractors/reference_pages.py`
732
733
  - `tools/extractors/shadcn_registry.py`
733
734
  - `tools/extractors/ui_ux_pro_max.py`
734
735
  - `tools/extractors/ui_ux_pro_max_extras.py`