@reqvire-org/ads 0.2.9 → 0.3.1

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 (48) hide show
  1. package/README.md +2 -2
  2. package/dist/bootstrap-ds/ADS.md +19 -8
  3. package/dist/bootstrap-ds/README.md +13 -11
  4. package/dist/bootstrap-ds/design-system/index.ts +1 -1
  5. package/dist/bootstrap-ds/design-system/patterns/token-preview/Scenario.tsx +4 -0
  6. package/dist/bootstrap-ds/design-system/patterns/token-preview/TokenPreview.tsx +31 -0
  7. package/dist/bootstrap-ds/design-system/patterns/token-preview/fixture.ts +8 -0
  8. package/dist/bootstrap-ds/design-system/tokens/Foundation.fixture.ts +44 -43
  9. package/dist/bootstrap-ds/design-system/tokens/Foundation.scenario.tsx +3 -13
  10. package/dist/bootstrap-ds/ds.config.json +10 -0
  11. package/dist/check.mjs +2 -9
  12. package/dist/init.mjs +22 -5
  13. package/dist/mcp/apps.mjs +2 -2
  14. package/dist/mcp/context.mjs +1 -1
  15. package/dist/mcp/preview-widget.bundle.js +40 -38
  16. package/dist/mcp/project-widget.bundle.js +42 -38
  17. package/dist/mcp/prompts.mjs +1 -1
  18. package/dist/mcp/server.mjs +5 -5
  19. package/dist/preview-resources.mjs +1 -1
  20. package/dist/scenarios.mjs +16 -5
  21. package/dist/skills/README.md +1 -1
  22. package/dist/skills/ads-assimilate/SKILL.md +28 -12
  23. package/dist/skills/ads-assimilate/references/cli.md +2 -2
  24. package/dist/skills/ads-break-ui/SKILL.md +28 -12
  25. package/dist/skills/ads-break-ui/references/verification.md +4 -0
  26. package/dist/skills/ads-designer/SKILL.md +30 -14
  27. package/dist/skills/ads-designer/assets/bootstrap-ds/ADS.md +19 -8
  28. package/dist/skills/ads-designer/assets/bootstrap-ds/README.md +13 -11
  29. package/dist/skills/ads-designer/assets/bootstrap-ds/design-system/index.ts +1 -1
  30. package/dist/skills/ads-designer/assets/bootstrap-ds/design-system/patterns/token-preview/Scenario.tsx +4 -0
  31. package/dist/skills/ads-designer/assets/bootstrap-ds/design-system/patterns/token-preview/TokenPreview.tsx +31 -0
  32. package/dist/skills/ads-designer/assets/bootstrap-ds/design-system/patterns/token-preview/fixture.ts +8 -0
  33. package/dist/skills/ads-designer/assets/bootstrap-ds/design-system/tokens/Foundation.fixture.ts +44 -43
  34. package/dist/skills/ads-designer/assets/bootstrap-ds/design-system/tokens/Foundation.scenario.tsx +3 -13
  35. package/dist/skills/ads-designer/assets/bootstrap-ds/ds.config.json +10 -0
  36. package/dist/skills/ads-designer/references/cli.md +2 -2
  37. package/dist/skills/ads-import/SKILL.md +28 -12
  38. package/dist/skills/ads-import/references/cli.md +2 -2
  39. package/dist/skills/ads-motion/SKILL.md +28 -12
  40. package/dist/token-policy.mjs +12 -0
  41. package/dist/token-samples.mjs +8 -0
  42. package/dist/units.mjs +34 -10
  43. package/docs/ADS.md +23 -9
  44. package/docs/ARCHITECTURE.md +12 -0
  45. package/docs/CHANGELOG.md +16 -1
  46. package/docs/GUIDE.md +16 -13
  47. package/docs/MCP.md +44 -2
  48. package/package.json +5 -5
package/docs/MCP.md CHANGED
@@ -43,7 +43,7 @@ Switching entries overlays a centered loading spinner, then reveals the new
43
43
  scenario inside the existing App. Loading and diagnostic overlays do not move the
44
44
  preview. Token presentation comes from project-owned scenarios, fixtures and
45
45
  public review patterns, using the project's real foundation CSS and extracted
46
- styles. The tool contains no token sample templates or named token ordering.
46
+ styles. The App runtime contains no token sample templates or named token ordering.
47
47
  The generic definition inspector remains available without a scenario build.
48
48
 
49
49
  There are no required browser-page files in the project. Colocated scenarios and
@@ -200,6 +200,15 @@ remain separate owners. `tokens` is one foundation unit covering token definitio
200
200
  themes and token scenarios/fixtures, whose coverage spans shared source files.
201
201
  Preview IDs remain separate: several token previews belong to `tokens`.
202
202
 
203
+ The `tokens` manifest also returns `companionFiles` with the configured foundation
204
+ entry path. When creating or deleting a canonical token foundation file, include
205
+ its required import change in the same `tokens` patch. For example, add
206
+ `tokens/fonts.css` and its first import in `styles.css` together; remove both
207
+ together when removing that font stylesheet. This companion may only change
208
+ imports for canonical files created/deleted in that patch. Preserve other imports
209
+ and comments, retain the foundation entry, and follow the required import order.
210
+ Both files pass the same candidate checks before either is written.
211
+
203
212
  The same discovery covers the rest of the project ADS:
204
213
 
205
214
  | Unit | Scope |
@@ -259,7 +268,11 @@ so coverage is checked against a complete candidate. New units use a new
259
268
  `components/`, `patterns/` or `composition/` owner ID following the same colocation
260
269
  convention. A patch cannot include a peer unit, capture existing peers beneath
261
270
  a new directory owner, or change unrelated public-entry statements. Shared
262
- public-entry changes are limited to re-exports from the selected unit.
271
+ public-entry changes are limited to re-exports from the selected unit. Alongside
272
+ its real re-export, a patch can remove an obsolete `export {};` placeholder;
273
+ it cannot add one or change unrelated statements. Init generates no empty-export
274
+ placeholder. Report unsupported coupled changes rather than bypassing a rejected
275
+ mutation with direct source writes.
263
276
 
264
277
  Set `dryRun` to `false` to apply. ADS reconstructs complete candidate files locally
265
278
  and validates a temporary project copy with core guards and registered Oxlint
@@ -688,3 +701,32 @@ verify tools, explicit resources, an App entry tool and its UI handshake,
688
701
  Refresh/theme behavior, notifications, prompts, then native Skills separately.
689
702
  Record the client build and negotiated protocol; HTML delivery or ordinary
690
703
  instruction reads alone do not establish Apps/Skills activation.
704
+
705
+ ### Token sample verification
706
+
707
+ Token scenarios declare `samples: fixture.samples` and render a project-owned public
708
+ review pattern with that `samples` input. Each fixture record has `{ token, property,
709
+ probe }`; the tool discovers the resulting token names. Plain token lists and empty
710
+ covers do not satisfy review coverage. The same bindings travel in the compiled
711
+ resource manifest or self-contained App seed.
712
+
713
+ The renderer identifies its styled sample elements through `data-ads-token` and
714
+ `data-ads-property`. After mounting and font loading, the App uses the browser's CSS
715
+ engine to validate each declared binding and project-supplied probe, then checks
716
+ that changing the token changes the sample's computed property. It restores token
717
+ values synchronously. Failures remain visible and are emitted through App logging
718
+ when the host supports it; a failed sample is not reported as ready.
719
+
720
+ Source checks establish structural coverage. Browser verification happens when the
721
+ App actually renders, for the active scenario and theme. It is not a pre-write
722
+ browser test in the mutation server and does not establish every interaction or
723
+ pixel-level visual quality. Hosts without Apps retain static diagnostics and the
724
+ showcase URL; they cannot claim rendered verification from a source check alone.
725
+ For browser automation, wait for the selected App's ready/error state. The
726
+ showcase's live notification stream makes `networkidle` unsuitable. Tall previews
727
+ scroll inside the App document; verify their last sample remains reachable.
728
+
729
+ Existing projects migrate their token fixtures from name lists to explicit sample
730
+ records, pass those records into their public renderer, and add the sample markers.
731
+ Rebuild previews with the updated compiler so the contract is included in resources.
732
+ Tool updates do not overwrite existing project-owned scenarios or renderers.
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@reqvire-org/ads",
3
- "version": "0.2.9",
3
+ "version": "0.3.1",
4
4
  "type": "module",
5
5
  "description": "A design system your agent can see and shape. Your components. Your look. Your code.",
6
6
  "repository": {
7
7
  "type": "git",
8
- "url": "git+https://github.com/reqvire-org/design-system.git"
8
+ "url": "git+https://github.com/reqvire-org/ads.git"
9
9
  },
10
- "homepage": "https://github.com/reqvire-org/design-system#readme",
10
+ "homepage": "https://github.com/reqvire-org/ads#readme",
11
11
  "bugs": {
12
- "url": "https://github.com/reqvire-org/design-system/issues"
12
+ "url": "https://github.com/reqvire-org/ads/issues"
13
13
  },
14
14
  "keywords": [
15
15
  "design-system",
@@ -35,7 +35,7 @@
35
35
  "sync:skill-starter": "node scripts/sync-skill-starter.mjs",
36
36
  "check:skill-starter": "node scripts/sync-skill-starter.mjs --check",
37
37
  "lint": "npm run lint:tool",
38
- "lint:tool": "npm run check:skill-starter && oxlint --deny-warnings src showcase-client mcp-explorer tests/*.test.mjs scripts/build-ads-tool.mjs scripts/pack-ads-tool.mjs",
38
+ "lint:tool": "npm run check:skill-starter && oxlint --deny-warnings src preview-client showcase-client mcp-explorer tests/*.test.mjs scripts/build-ads-tool.mjs scripts/pack-ads-tool.mjs",
39
39
  "lint:project": "npm run lint:ds && npm run lint:style && npm run check:skill-starter",
40
40
  "lint:ds": "node dist/cli.mjs lint-config && node dist/cli.mjs check && oxlint --deny-warnings --config .ds/oxlintrc.json src design-system",
41
41
  "lint:style": "biome lint --config-path=biome.css.json .",