@adia-ai/adia-ui-factory 0.8.63 → 0.8.64

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "adia-ui-kit-factory",
3
- "version": "0.8.63",
3
+ "version": "0.8.64",
4
4
  "description": "Author and verify apps built ON the adia-ui (@adia-ai) light-DOM web-component framework \u2014 orient, scaffold, compose, wire, verify, and migrate across SPA and SSR rendering modes. Wires the a2ui MCP for catalog retrieval, UI generation, and validation.",
5
5
  "author": {
6
6
  "name": "Kim",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "adia-ui-kit-factory",
3
- "version": "0.8.63",
3
+ "version": "0.8.64",
4
4
  "description": "Author and verify apps built ON the adia-ui (@adia-ai) light-DOM web-component framework — orient, scaffold, compose, wire, verify, and migrate across SPA and SSR rendering modes. Wires the a2ui MCP for catalog retrieval, UI generation, and validation.",
5
5
  "author": {
6
6
  "name": "Kim",
package/.mcp.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "mcpServers": {
3
3
  "adia-gen-ui": {
4
4
  "command": "npx",
5
- "args": ["-y", "@adia-ai/mcp@0.8.63", "gen-ui"]
5
+ "args": ["-y", "@adia-ai/mcp@0.8.64", "gen-ui"]
6
6
  }
7
7
  }
8
8
  }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # Changelog — adia-ui-kit-factory
2
2
 
3
+ ## [0.8.64] — 2026-09-13
4
+
5
+ ### Changed
6
+
7
+ - chore: allowlist 7 verified real script/prose G8 names, per-plugin `.release-gate-g8-allow.json` (ticket 10036) (#4407)
8
+ - chore: de-reference the phantom `component-token-audit` citations in theme-audit's description and body (ticket 10036) (#4409)
9
+
10
+ ### Docs
11
+
12
+ - docs: host-wiring gains an A2UI-rendering-hosts paragraph, stating an `<a2ui-root>`-embedding host needs no manual per-component JS/CSS import for LLM-composed content, and must not add one (adr-0115, lld-0037, ticket 10041) (local ticket 10041)
13
+ - docs: clarify tools/delegate_tool.py is a path inside the external Hermes Agent install, not this repo (#4411)
14
+
15
+ ### Maintenance
16
+ - **`.claude-plugin/plugin.json` version bump**: moves in lockstep with package.json (the `/plugin update` cache key).
17
+ - **`.codex-plugin/` touched in this release window** (1 file(s), e.g. `.codex-plugin/plugin.json`): carried by the entries above.
18
+ - **`skills/` touched in this release window** (4 file(s), e.g. `host-wiring/SKILL.md`): carried by the entries above.
19
+
3
20
  ## [0.8.63] — 2026-09-12
4
21
 
5
22
  ### Changed
package/README.md CHANGED
@@ -163,7 +163,7 @@ attributes vs. the shipped component contracts), and `adia-theme-audit.mjs`
163
163
 
164
164
  ## MCP
165
165
 
166
- `adia-gen-ui` server pinned: `@adia-ai/mcp@0.8.63` (tool SoT:
166
+ `adia-gen-ui` server pinned: `@adia-ai/mcp@0.8.64` (tool SoT:
167
167
  `packages/gen-ui/mcp/TOOLS.md` — the `gen-ui` section; stability rule in
168
168
  `references/contracts/`; pin lives in `.mcp.json` — `check:plugin-count-claims`
169
169
  guards this README copy against it). The server is `adia-mcp gen-ui`,
@@ -237,7 +237,8 @@ Pi has no native MCP support at all, so a Pi session without the third-party
237
237
  no automatic wiring. `__init__.py` registers the portable `ui-architect`
238
238
  skill (ADR-0091) alongside every other skill, **and** a generated
239
239
  `/ui-architect` command — verified against the installed Hermes Agent's
240
- real `PluginContext.register_command` + `dispatch_tool` and
240
+ real `PluginContext.register_command` + `dispatch_tool` and, inside that
241
+ same external Hermes Agent install (not a path in this repo),
241
242
  `tools/delegate_tool.py`'s `delegate_task(goal, context, role, …)` (not
242
243
  assumed from documentation): each of planning, composition, and QA runs
243
244
  as its own isolated `delegate_task` child (`role="leaf"`), gated by the
package/__init__.py CHANGED
@@ -313,7 +313,7 @@ def register(ctx):
313
313
  ctx.register_skill(
314
314
  name="theme-audit",
315
315
  path=Path(os.path.join(_HERE, "skills", "theme-audit", "SKILL.md")),
316
- description="Classifies a consumer app's theme.css against what the adia-ui framework already ships restated defaults, re-derived tokens, dead selectors, and hand-built component work. Runs `adia-theme-audit` against a theme file + app root; audits and reports, never rewrites. Use when a theme.css is suspected of restating the kit, after bumping `@adia-ai/web-components`, or before a `find-unused` sweep. NOT for rendering/grading a surface (surface-qa); NOT for picking a token going forward (token-selection); NOT for JS/markup an upgrade left unused (find-unused the CSS-side sibling); NOT for the framework's OWN token layer in packages/web-components (forge's component-token-audit).",
316
+ description="Classifies a consumer app's theme.css against what the adia-ui framework already ships, restated defaults, re-derived tokens, dead selectors, and hand-built component work. Runs `adia-theme-audit` against a theme file + app root; audits and reports, never rewrites. Use when a theme.css is suspected of restating the kit, after bumping `@adia-ai/web-components`, or before a `find-unused` sweep. NOT for rendering/grading a surface (surface-qa); NOT for picking a token going forward (token-selection); NOT for JS/markup an upgrade left unused (find-unused, the CSS-side sibling); NOT for the framework's OWN token layer in packages/web-components (a capability this skill's own body also references, not yet a shipped skill in either plugin, ticket 10036).",
317
317
  )
318
318
  ctx.register_skill(
319
319
  name="token-selection",
package/hermes-mcp.yaml CHANGED
@@ -6,5 +6,5 @@ mcp_servers:
6
6
  command: "npx"
7
7
  args:
8
8
  - "-y"
9
- - "@adia-ai/mcp@0.8.63"
9
+ - "@adia-ai/mcp@0.8.64"
10
10
  - "gen-ui"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adia-ai/adia-ui-factory",
3
- "version": "0.8.63",
3
+ "version": "0.8.64",
4
4
  "description": "Author and verify apps built ON the adia-ui (@adia-ai) light-DOM web-component framework — orient, scaffold, compose, wire, verify, and migrate across SPA and SSR rendering modes. Wires the a2ui MCP for catalog retrieval, UI generation, and validation.",
5
5
  "keywords": [
6
6
  "adia-ui",
package/plugin.yaml CHANGED
@@ -1,4 +1,4 @@
1
1
  name: "adia-ui-kit-factory"
2
- version: "0.8.63"
2
+ version: "0.8.64"
3
3
  description: "Author and verify apps built ON the adia-ui (@adia-ai) light-DOM web-component framework — orient, scaffold, compose, wire, verify, and migrate across SPA and SSR rendering modes. Wires the a2ui MCP for catalog retrieval, UI generation, and validation."
4
4
  manifest_version: 1
@@ -61,6 +61,16 @@ or the toggle dies (gh#296). Full detail, exact paths, and the fail-loud probe:
61
61
  [`references/mode-wiring-detail.md`](references/mode-wiring-detail.md)
62
62
  §Icons + the module barrels.
63
63
 
64
+ ## A2UI-rendering hosts: no manual per-component import
65
+
66
+ A host embedding `<a2ui-root>` (directly, or via `<canvas-ui>`) for
67
+ LLM-composed content needs no per-component JS/CSS import for that
68
+ content: `ensure()` already loads on demand what a payload actually
69
+ names. Importing the full component barrel to "be safe" defeats that,
70
+ never adds it (adr-0115, lld-0037, ticket 10041). Full detail:
71
+ [`references/mode-wiring-detail.md`](references/mode-wiring-detail.md)
72
+ §A2UI-rendering hosts.
73
+
64
74
  ## CDN / HTML-first, SPA, SSR, hybrid — build order per mode
65
75
 
66
76
  Each mode has its own build order and gotchas — load exactly one bundle for
@@ -99,7 +109,8 @@ Gates: registration / route-owner / CSS-links / state — pass | fail,
99
109
 
100
110
  - [`references/mode-wiring-detail.md`](references/mode-wiring-detail.md) —
101
111
  load when actually wiring a host: icon-loader + shell-barrel gotchas
102
- (gh#287, gh#296), CDN/HTML-first, SPA, SSR, and hybrid full procedure.
112
+ (gh#287, gh#296), A2UI-rendering hosts (adr-0115, ticket 10041),
113
+ CDN/HTML-first, SPA, SSR, and hybrid full procedure.
103
114
  - [`references/spa-architecture.md`](../../references/spa-architecture.md) —
104
115
  load before writing or editing an SPA host: host document, cascade +
105
116
  registration invariants, surface container, router snippets.
@@ -25,6 +25,27 @@ Two host-wiring details the shared contract doesn't cover — each fails
25
25
  `@adia-ai/web-modules/shell/admin-shell.css` (the three-segment
26
26
  `/shell/admin-shell/admin-shell.css` is blocked by the exports map, gh#296).
27
27
 
28
+ ## A2UI-rendering hosts (LLM-composed content, never a manual per-component import)
29
+
30
+ A host embedding `<a2ui-root>` (directly, or wrapped by `<canvas-ui>`) to
31
+ render LLM-composed A2UI content needs no per-component JS/CSS import for
32
+ anything that content itself renders, and per adr-0115 must not add one:
33
+ `<a2ui-root>` already awaits `asset-loader.js`'s `ensure()` for a
34
+ message's own component types before applying it, so the tag currently
35
+ being composed loads on demand, and only that tag, whatever the payload
36
+ turns out to contain. Importing the full component barrel
37
+ (`@adia-ai/web-components`'s `components/index.js`, or the package-level
38
+ barrel) ahead of this to "be safe" defeats that mechanism for every tag it
39
+ covers instead of adding safety: the tags load anyway; the host just pays
40
+ for the whole catalog on every canvas regardless of what it actually uses
41
+ (lld-0037, ticket 10041: the fix for the exact shape gen-ui's own
42
+ playground carried before this record). This rule is scoped to the
43
+ surface whose composition is decided at generation time; a host's own
44
+ fixed chrome (its shell, toolbar, or any always-present component the host
45
+ itself authors directly) is unaffected and keeps whatever import shape it
46
+ already uses, the two are wired the same way they always were, side by
47
+ side in the same entry file.
48
+
28
49
  ## CDN / HTML-first consumption (no bundler)
29
50
 
30
51
  For CodePen, marketing pages, static HTML, or a prompt-to-app / Figma-Make
@@ -2,15 +2,16 @@
2
2
  name: theme-audit
3
3
  description: >-
4
4
  Classifies a consumer app's theme.css against what the adia-ui
5
- framework already ships restated defaults, re-derived tokens, dead
5
+ framework already ships, restated defaults, re-derived tokens, dead
6
6
  selectors, and hand-built component work. Runs `adia-theme-audit`
7
7
  against a theme file + app root; audits and reports, never rewrites.
8
8
  Use when a theme.css is suspected of restating the kit, after bumping
9
9
  `@adia-ai/web-components`, or before a `find-unused` sweep. NOT for
10
10
  rendering/grading a surface (surface-qa); NOT for picking a token going
11
11
  forward (token-selection); NOT for JS/markup an upgrade left unused
12
- (find-unused the CSS-side sibling); NOT for the framework's OWN token
13
- layer in packages/web-components (forge's component-token-audit).
12
+ (find-unused, the CSS-side sibling); NOT for the framework's OWN token
13
+ layer in packages/web-components (a capability this skill's own body also
14
+ references, not yet a shipped skill in either plugin, ticket 10036).
14
15
  disable-model-invocation: false
15
16
  user-invocable: true
16
17
  ---
@@ -113,10 +114,10 @@ never ran is not a class that found nothing.
113
114
  retired enum values). This skill is the CSS-side sibling of that same
114
115
  "what's inert" question — reach for `find-unused` first on a fresh
115
116
  upgrade, then this skill on the theme file specifically.
116
- - **forge's `component-token-audit`** runs framework-side, against
117
- `packages/web-components`'s own token layer in this monorepo. This skill
118
- never touches framework source; it always targets a consumer app's own
119
- theme file.
117
+ - **A framework-side, `packages/web-components`-token-layer audit** is a
118
+ distinct, not-yet-shipped capability (ticket 10036) in this monorepo. This
119
+ skill never touches framework source; it always targets a consumer app's
120
+ own theme file.
120
121
 
121
122
  ## The one hard rule
122
123
 
@@ -1,3 +1,3 @@
1
1
  interface:
2
2
  display_name: "Theme Audit"
3
- short_description: "Classifies a consumer app's theme.css against what the adia-ui framework already ships restated defaults, re-derived tokens, dead selectors, and hand-built component work."
3
+ short_description: "Classifies a consumer app's theme.css against what the adia-ui framework already ships, restated defaults, re-derived tokens, dead selectors, and hand-built component work."