@adia-ai/adia-ui-forge 0.8.62 → 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.
Files changed (143) hide show
  1. package/.claude-plugin/plugin.json +2 -2
  2. package/.codex-plugin/plugin.json +3 -3
  3. package/CHANGELOG.md +317 -275
  4. package/README.md +54 -18
  5. package/__init__.py +8 -8
  6. package/agents/a2ui-maintenance-agent.corpus.json +7 -7
  7. package/agents/a2ui-maintenance-agent.md +6 -6
  8. package/agents/a2ui-planner-agent.md +11 -11
  9. package/agents/demo-audit-agent.corpus.json +4 -4
  10. package/agents/demo-audit-agent.md +8 -9
  11. package/agents/framework-checker.md +10 -11
  12. package/agents/framework-planner-agent.md +9 -10
  13. package/agents/gen-ui-review-agent.corpus.json +4 -4
  14. package/agents/gen-ui-review-agent.md +8 -8
  15. package/agents/package-release-agent.corpus.json +4 -4
  16. package/agents/package-release-agent.md +9 -10
  17. package/agents/primitive-authoring-agent.corpus.json +1 -1
  18. package/agents/primitive-authoring-agent.md +5 -5
  19. package/agents/routing-corpus.json +46 -46
  20. package/codex.interface.json +1 -1
  21. package/commands/gen-ui-review.md +1 -1
  22. package/commands/package-release.md +2 -2
  23. package/package.json +1 -1
  24. package/plugin.yaml +2 -2
  25. package/prompts/gen-ui-review.md +1 -1
  26. package/prompts/package-release.md +2 -2
  27. package/references/contracts/a2ui-mcp-surface.md +7 -7
  28. package/references/contracts/migration-guide-format.md +6 -7
  29. package/references/shared/content-trust.md +3 -5
  30. package/skills/a2ui-maintenance/SKILL.md +13 -16
  31. package/skills/a2ui-maintenance/evals/evals.json +2 -2
  32. package/skills/a2ui-maintenance/evals/routing-corpus.json +1 -1
  33. package/skills/a2ui-maintenance/references/anti-patterns.md +10 -10
  34. package/skills/a2ui-maintenance/references/chunk-authoring.md +11 -12
  35. package/skills/a2ui-maintenance/references/corpus-discipline.md +13 -14
  36. package/skills/a2ui-maintenance/references/data-model-reactivity.md +22 -25
  37. package/skills/a2ui-maintenance/references/eval-diagnostics.md +21 -21
  38. package/skills/a2ui-maintenance/references/format-extension-decisions.md +12 -13
  39. package/skills/a2ui-maintenance/references/leverage-rules.md +6 -6
  40. package/skills/a2ui-maintenance/references/mcp-pipeline-ops.md +9 -10
  41. package/skills/a2ui-maintenance/references/mcp-tool-reference.md +11 -12
  42. package/skills/a2ui-maintenance/references/pipeline-overview.md +33 -38
  43. package/skills/a2ui-maintenance/references/semantic-fail-lifting.md +13 -14
  44. package/skills/a2ui-maintenance/references/strategy-engines.md +14 -16
  45. package/skills/a2ui-maintenance/references/surface-lifecycle.md +10 -11
  46. package/skills/a2ui-maintenance/references/zettel-calibration.md +14 -16
  47. package/skills/component-md-authoring/SKILL.md +22 -22
  48. package/skills/component-md-authoring/agents/openai.yaml +1 -1
  49. package/skills/cross-harness-authoring-standards/SKILL.md +19 -21
  50. package/skills/cross-harness-authoring-standards/agents/openai.yaml +1 -1
  51. package/skills/cross-harness-compatibility-standards/SKILL.md +35 -34
  52. package/skills/cross-harness-compatibility-standards/agents/openai.yaml +1 -1
  53. package/skills/demo-audit/SKILL.md +38 -38
  54. package/skills/demo-audit/evals/routing-corpus.json +1 -1
  55. package/skills/demo-audit/references/admin-shell-anatomy.md +21 -25
  56. package/skills/demo-audit/references/app-shell-pitfalls.md +11 -13
  57. package/skills/demo-audit/references/auto-fix-allowlist.md +3 -3
  58. package/skills/demo-audit/references/card-anatomy-sweep.md +10 -11
  59. package/skills/demo-audit/references/chat-shell-anatomy.md +25 -26
  60. package/skills/demo-audit/references/editor-shell-anatomy.md +25 -28
  61. package/skills/demo-audit/references/html-attr-sweep.md +12 -13
  62. package/skills/demo-audit/references/mode7-status-battery.md +4 -4
  63. package/skills/demo-audit/references/native-leak-annotations.md +8 -8
  64. package/skills/demo-audit/references/output-contract-worked-example.md +8 -8
  65. package/skills/demo-audit/references/probe-discipline-and-escalation.md +2 -2
  66. package/skills/demo-audit/references/visual-probe-triage.md +21 -23
  67. package/skills/gen-ui-review/SKILL.md +28 -28
  68. package/skills/gen-ui-review/agents/openai.yaml +1 -1
  69. package/skills/gen-ui-review/evals/evals.json +1 -1
  70. package/skills/gen-ui-review/evals/routing-corpus.json +1 -1
  71. package/skills/gen-ui-review/references/corpus-html-patterns.md +28 -29
  72. package/skills/gen-ui-review/references/exit-gate-mechanics.md +5 -5
  73. package/skills/gen-ui-review/references/lookup-maintenance.md +2 -2
  74. package/skills/gen-ui-review/references/loop-protocol.md +25 -25
  75. package/skills/gen-ui-review/references/rubric-cosmetic.md +10 -10
  76. package/skills/gen-ui-review/references/rubric-decompose.md +15 -16
  77. package/skills/gen-ui-review/references/rubric-score.md +23 -24
  78. package/skills/gen-ui-review/references/scorecard-worked-examples.md +12 -12
  79. package/skills/gen-ui-review/references/scores.schema.json +2 -2
  80. package/skills/llm-client-maintenance/SKILL.md +12 -12
  81. package/skills/llm-client-maintenance/evals/routing-corpus.json +1 -1
  82. package/skills/llm-client-maintenance/references/adapter-contract.md +27 -27
  83. package/skills/llm-client-maintenance/references/add-a-provider.md +25 -25
  84. package/skills/llm-client-maintenance/references/bridge-facade.md +31 -31
  85. package/skills/llm-client-maintenance/references/browser-proxy-boundary.md +17 -17
  86. package/skills/llm-client-maintenance/references/model-registry.md +14 -14
  87. package/skills/llm-client-maintenance/references/streaming-sse.md +21 -21
  88. package/skills/package-release/SKILL.md +21 -23
  89. package/skills/package-release/evals/evals.json +2 -2
  90. package/skills/package-release/evals/routing-corpus.json +2 -2
  91. package/skills/package-release/references/authorization-model.md +6 -8
  92. package/skills/package-release/references/changelog-discipline.md +25 -27
  93. package/skills/package-release/references/cut-procedure.md +129 -136
  94. package/skills/package-release/references/gates-catalog.md +42 -43
  95. package/skills/package-release/references/independent-package-release.md +14 -15
  96. package/skills/package-release/references/invariants-detail.md +9 -9
  97. package/skills/package-release/references/mechanization.md +11 -12
  98. package/skills/package-release/references/migration-guide-authoring.md +20 -20
  99. package/skills/package-release/references/notes-authoring.md +20 -20
  100. package/skills/package-release/references/recovery-paths.md +28 -28
  101. package/skills/primitive-authoring/SKILL.md +19 -19
  102. package/skills/primitive-authoring/agents/openai.yaml +1 -1
  103. package/skills/primitive-authoring/evals/evals.json +2 -2
  104. package/skills/primitive-authoring/evals/routing-corpus.json +2 -2
  105. package/skills/primitive-authoring/references/INDEX.md +22 -22
  106. package/skills/primitive-authoring/references/anti-patterns.md +76 -77
  107. package/skills/primitive-authoring/references/api-contract.md +63 -65
  108. package/skills/primitive-authoring/references/authoring-cycle.md +47 -50
  109. package/skills/primitive-authoring/references/canonical-pattern-index.md +118 -118
  110. package/skills/primitive-authoring/references/code-style.md +50 -52
  111. package/skills/primitive-authoring/references/common-gotchas.md +23 -23
  112. package/skills/primitive-authoring/references/composite-demo-protocol.md +42 -45
  113. package/skills/primitive-authoring/references/css-patterns.md +97 -97
  114. package/skills/primitive-authoring/references/for-attribute-event-contract.md +12 -12
  115. package/skills/primitive-authoring/references/form-control-sizing.md +16 -18
  116. package/skills/primitive-authoring/references/lifecycle-patterns.md +42 -42
  117. package/skills/primitive-authoring/references/llm-bridge.md +21 -21
  118. package/skills/primitive-authoring/references/module-promotion.md +51 -51
  119. package/skills/primitive-authoring/references/primitive-audit.md +16 -16
  120. package/skills/primitive-authoring/references/shell-patterns.md +81 -81
  121. package/skills/primitive-authoring/references/svg-authoring.md +62 -66
  122. package/skills/primitive-authoring/references/token-contract.md +45 -49
  123. package/skills/primitive-authoring/references/trait-pages.md +8 -8
  124. package/skills/primitive-authoring/references/worked-example.md +39 -39
  125. package/skills/primitive-authoring/references/yaml-contract.md +139 -143
  126. package/skills/site-deployment/SKILL.md +25 -26
  127. package/skills/site-deployment/agents/openai.yaml +1 -1
  128. package/skills/site-deployment/evals/routing-corpus.json +1 -1
  129. package/skills/site-deployment/references/deploy-playbooks.md +51 -53
  130. package/skills/site-docs-authoring/SKILL.md +14 -14
  131. package/skills/site-docs-authoring/agents/openai.yaml +1 -1
  132. package/skills/site-docs-authoring/evals/evals.json +1 -1
  133. package/skills/site-docs-authoring/evals/routing-corpus.json +1 -1
  134. package/skills/site-docs-authoring/intent.md +18 -18
  135. package/skills/ssr-compatibility/SKILL.md +24 -25
  136. package/skills/ssr-compatibility/agents/openai.yaml +1 -1
  137. package/skills/ssr-compatibility/evals/evals.json +1 -1
  138. package/skills/ssr-compatibility/evals/routing-corpus.json +1 -1
  139. package/skills/ssr-compatibility/references/consumer-workarounds.md +22 -23
  140. package/skills/ssr-compatibility/references/failure-shapes.md +84 -91
  141. package/skills/ssr-compatibility/references/guard-patterns.md +54 -58
  142. package/skills/ssr-compatibility/references/status-ledger.md +17 -17
  143. package/skills/ssr-compatibility/references/test-without-linkedom.md +26 -27
@@ -1,22 +1,22 @@
1
- # `changelog-discipline.md` Keep-a-Changelog mechanics + F-N1 enrichment
1
+ # `changelog-discipline.md`, Keep-a-Changelog mechanics + F-N1 enrichment
2
2
 
3
3
  `<plugin-root>` below is `$CLAUDE_PLUGIN_ROOT` in Claude Code; the plugin's installed directory
4
4
  in Codex.
5
5
 
6
6
  > Load whenever a cut touches CHANGELOGs (always for author-from-scratch; for a
7
7
  > handoff only if F-N1 warns). The monorepo uses Keep-a-Changelog per package;
8
- > the cut **promotes** `## [Unreleased]` into `## [vX.Y.Z] YYYY-MM-DD`.
8
+ > the cut **promotes** `## [Unreleased]` into `## [vX.Y.Z], YYYY-MM-DD`.
9
9
 
10
10
  ## §The 4 entry shapes
11
11
 
12
12
  | # | Shape | When |
13
13
  | --- | --- | --- |
14
- | 1 | Substantive promoted | package has `[Unreleased]` content; cut renames the heading |
15
- | 2 | Substantive authored | package changed but has no `[Unreleased]` block (e.g. corpus regen); cut writes a fresh block |
14
+ | 1 | Substantive, promoted | package has `[Unreleased]` content; cut renames the heading |
15
+ | 2 | Substantive, authored | package changed but has no `[Unreleased]` block (e.g. corpus regen); cut writes a fresh block |
16
16
  | 3 | Stub | no source change; cut inserts the lockstep stub |
17
17
  | 4 | Enrichment | entry exists but lacks the path keyword F-N1 wants |
18
18
 
19
- ## §Promotion `[Unreleased]` → `[vX.Y.Z] YYYY-MM-DD`
19
+ ## §Promotion, `[Unreleased]` → `[vX.Y.Z], YYYY-MM-DD`
20
20
 
21
21
  The heading swap is all that happens; content under it stays:
22
22
 
@@ -25,22 +25,22 @@ node "<plugin-root>/skills/package-release/scripts/promote-unreleased.mjs" \
25
25
  --version 0.X.Y --date YYYY-MM-DD --packages web-components,web-modules,a2ui/corpus
26
26
  ```
27
27
 
28
- (Package args take both name and path form `a2ui-corpus` and `a2ui/corpus` both resolve, via `package-paths.mjs`. The special target `root` is the repo-root CHANGELOG.md; release-pack adds it automatically whenever that file's `[Unreleased]` carries content, so it never needs listing in `--substantive-packages`.)
28
+ (Package args take both name and path form, `a2ui-corpus` and `a2ui/corpus` both resolve, via `package-paths.mjs`. The special target `root` is the repo-root CHANGELOG.md; release-pack adds it automatically whenever that file's `[Unreleased]` carries content, so it never needs listing in `--substantive-packages`.)
29
29
 
30
30
  Non-clean cases:
31
31
 
32
- 1. **The `[vX.Y.Z]` block already exists as a stub** (peer cut early, then kept working) replace the stub with the merged `[Unreleased]` content.
33
- 2. **No `[Unreleased]` but the package DID change** author a fresh block (§Authoring).
34
- 3. **`[Unreleased]` content is stale/speculative** triage with the operator before promoting.
32
+ 1. **The `[vX.Y.Z]` block already exists as a stub** (peer cut early, then kept working), replace the stub with the merged `[Unreleased]` content.
33
+ 2. **No `[Unreleased]` but the package DID change**, author a fresh block (§Authoring).
34
+ 3. **`[Unreleased]` content is stale/speculative**, triage with the operator before promoting.
35
35
 
36
- **`[Unreleased]` hygiene:** it is the accumulation buffer between cuts after a cut it should be empty; a duplicate of the just-promoted entry is a grep hazard. **Cut cadence:** accumulate; cut when 2–3 packages have meaningful changes, or immediately for a live shipping bug a lockstep cut carries coordination cost even mechanized.
36
+ **`[Unreleased]` hygiene:** it is the accumulation buffer between cuts, after a cut it should be empty; a duplicate of the just-promoted entry is a grep hazard. **Cut cadence:** accumulate; cut when 2–3 packages have meaningful changes, or immediately for a live shipping bug, a lockstep cut carries coordination cost even mechanized.
37
37
 
38
- ## §Authoring fresh `[vX.Y.Z]` from scratch
38
+ ## §Authoring, fresh `[vX.Y.Z]` from scratch
39
39
 
40
40
  Write above the latest version heading:
41
41
 
42
42
  ```markdown
43
- ## [0.X.Y] YYYY-MM-DD
43
+ ## [0.X.Y], YYYY-MM-DD
44
44
 
45
45
  ### Changed
46
46
  - **<headline>.** <what changed>. <why, with file paths>. Closes <ticket>.
@@ -52,7 +52,7 @@ Write above the latest version heading:
52
52
 
53
53
  The `### Note` cross-reference is standard when the package is a generated-artifact follow-on (a2ui-corpus regen after web-components yaml changes).
54
54
 
55
- ## §Detecting source-changing packages classify by the diff, not the block
55
+ ## §Detecting source-changing packages, classify by the diff, not the block
56
56
 
57
57
  A package's entry shape follows its **source diff against the prior tag**, not whether `[Unreleased]` has content. Run before the bump:
58
58
 
@@ -65,12 +65,12 @@ done
65
65
  ```
66
66
 
67
67
  - `count == 0` → ride-along; stub it.
68
- - `count > 0` and `[Unreleased]` empty → **coverage gap, not a ride-along** author an entry from the commit subjects now; stubbing it papers over the gap and F-N1 hard-fails at tag time, costing a new-commit-and-re-tag iteration (§F-N1 diff-coverage enrichment, below).
68
+ - `count > 0` and `[Unreleased]` empty → **coverage gap, not a ride-along**, author an entry from the commit subjects now; stubbing it papers over the gap and F-N1 hard-fails at tag time, costing a new-commit-and-re-tag iteration (§F-N1 diff-coverage enrichment, below).
69
69
  - `count > 0` and `[Unreleased]` populated → promote normally.
70
70
 
71
71
  Why this recurs: cross-package sweeps leave 1–3 incidental touches (a docstring path, a comment, a README export list) in packages that *look* like ride-alongs; the author files the entry under the arc's main package only. The enumeration is mechanical and caught three consecutive cuts where `_No pending changes._` stubs hid real source touches.
72
72
 
73
- ## §Stubs ride-along lockstep
73
+ ## §Stubs, ride-along lockstep
74
74
 
75
75
  ```bash
76
76
  node "<plugin-root>/skills/package-release/scripts/insert-stub.mjs" \
@@ -84,7 +84,7 @@ node "<plugin-root>/skills/package-release/scripts/insert-stub.mjs" \
84
84
  The inserted block:
85
85
 
86
86
  ```markdown
87
- ## [0.X.Y] YYYY-MM-DD
87
+ ## [0.X.Y], YYYY-MM-DD
88
88
 
89
89
  ### Maintenance
90
90
  - **Lockstep version bump only.** No source changes in this package; bumped to
@@ -93,34 +93,32 @@ The inserted block:
93
93
  <SUBSTANTIVE>. See `<XREF>` for details.
94
94
  ```
95
95
 
96
- - **Make the PATCH-cut asymmetry visible** when an entry mentions a dependency: version bumps to `X.Y.Z` while internal ranges hold at `^X.Y.0` spell it as `dependencies["@adia-ai/<x>"]: ^X.Y.0 (covers X.Y.Z)` so it doesn't read as a bug.
96
+ - **Make the PATCH-cut asymmetry visible** when an entry mentions a dependency: version bumps to `X.Y.Z` while internal ranges hold at `^X.Y.0`, spell it as `dependencies["@adia-ai/<x>"]: ^X.Y.0 (covers X.Y.Z)` so it doesn't read as a bug.
97
97
  - **Stale stubs are an F-N1 hazard.** A "no source changes" stub on a package that DID change earns a warn; the fix is authoring (§Authoring), not stubbing.
98
- - **The tool owns stub packages never hand-write their `[Unreleased]`.** `insert-stub.mjs` INSERTS a fresh dated block at the top; it does not promote or replace existing content. A hand-authored `[Unreleased]` stub in a `--stub-packages` target survives the insert as a second, orphaned block below it, and the orchestrator's loud guard then fails the whole run ("N packages still have non-empty [Unreleased]") the v0.8.10 cut lost a full cycle to exactly this across 6 packages. Ride-along packages get NO hand-written entry at cut time: leave them untouched and list them in `--stub-packages`. (A package that deserves hand-written content isn't a stub it belongs in `--substantive-packages`.)
98
+ - **The tool owns stub packages, never hand-write their `[Unreleased]`.** `insert-stub.mjs` INSERTS a fresh dated block at the top; it does not promote or replace existing content. A hand-authored `[Unreleased]` stub in a `--stub-packages` target survives the insert as a second, orphaned block below it, and the orchestrator's loud guard then fails the whole run ("N packages still have non-empty [Unreleased]"), the v0.8.10 cut lost a full cycle to exactly this across 6 packages. Ride-along packages get NO hand-written entry at cut time: leave them untouched and list them in `--stub-packages`. (A package that deserves hand-written content isn't a stub, it belongs in `--substantive-packages`.)
99
99
 
100
- ## §F-N1 diff-coverage mechanized at cut time (Step 4f)
100
+ ## §F-N1 diff-coverage, mechanized at cut time (Step 4f)
101
101
 
102
102
  F-N1 (`node scripts/release/check-release.mjs --all-pending`) cross-checks the git diff between consecutive package tags against the `[VERSION]` block: every touched directory should have its keyword mentioned.
103
103
 
104
- **The coverage pass is mechanized run it BEFORE the release PR, never discover gaps after tagging:**
104
+ **The coverage pass is mechanized, run it BEFORE the release PR, never discover gaps after tagging:**
105
105
 
106
106
  ```bash
107
107
  node scripts/release/check-release.mjs --pending-version X.Y.Z --fix
108
108
  ```
109
109
 
110
- This is cut-procedure §Step 4f: the SAME matcher F-N1 uses at tag time (every roster package, the `changelogMentions` pattern set including the `.claude-plugin` leading-dot case), run against the working tree, auto-appending a verified `### Maintenance` bullet per uncovered directory. It re-checks its own output before writing the v0.8.5 cut hand-authored "enrichment" three times that read correctly but didn't contain the literal substrings the checker matches, costing 3 PRs and 3 tag rewrites. `release-pack.mjs` cut modes run this automatically.
110
+ This is cut-procedure §Step 4f: the SAME matcher F-N1 uses at tag time (every roster package, the `changelogMentions` pattern set including the `.claude-plugin` leading-dot case), run against the working tree, auto-appending a verified `### Maintenance` bullet per uncovered directory. It re-checks its own output before writing, the v0.8.5 cut hand-authored "enrichment" three times that read correctly but didn't contain the literal substrings the checker matches, costing 3 PRs and 3 tag rewrites. `release-pack.mjs` cut modes run this automatically.
111
111
 
112
- **Hand-enrichment (better prose than the auto-bullet):** add the path keyword inline where it makes the entry *more* accurate `` `table.yaml` `` → `` `components/table/table.yaml` `` never as a bolted-on parenthetical. Verify with `--pending-version` (no `--fix`) before committing; never assume prose satisfies the matcher.
112
+ **Hand-enrichment (better prose than the auto-bullet):** add the path keyword inline where it makes the entry *more* accurate, `` `table.yaml` `` → `` `components/table/table.yaml` ``, never as a bolted-on parenthetical. Verify with `--pending-version` (no `--fix`) before committing; never assume prose satisfies the matcher.
113
113
 
114
- **Recovery a warn AFTER tagging** (Step 4f skipped, or an interleaved merge added uncovered changes): the release commit is already merged via PR, so `--amend` is not possible
115
-
116
- 1. Run `--pending-version X.Y.Z --fix`; `git add` the CHANGELOGs; `git commit -m "fix(release): F-N1 enrichment — vX.Y.Z"`; push the branch → PR → CI → merge.
114
+ **Recovery, a warn AFTER tagging** (Step 4f skipped, or an interleaved merge added uncovered changes): the release commit is already merged via PR, so `--amend` is not possible, 1. Run `--pending-version X.Y.Z --fix`; `git add` the CHANGELOGs; `git commit -m "fix(release): F-N1 enrichment, vX.Y.Z"`; push the branch → PR → CI → merge.
117
115
  2. The SHA moved: `node "<plugin-root>/skills/package-release/scripts/tag-lockstep.mjs" --version X.Y.Z --delete`, then re-tag at `main`'s new post-merge HEAD.
118
- 3. Re-run F-N1; expect per-package clean (umbrella error stays, ignored). ONE recovery round if a second warn appears, the cause is upstream (find what keeps merging into the window), not another enrichment.
116
+ 3. Re-run F-N1; expect per-package clean (umbrella error stays, ignored). ONE recovery round, if a second warn appears, the cause is upstream (find what keeps merging into the window), not another enrichment.
119
117
 
120
118
  ## §Dating and anchors
121
119
 
122
120
  - Dates are `YYYY-MM-DD`, no timezone; use the runtime's authoritative current date. Don't retro-fix historical UTC-rollover inconsistencies.
123
- - GitHub anchor for `## [0.6.21] 2026-05-21` is `#0621--2026-05-21`: strip `[`,`]`,`.` from the version; em-dash+spaces → `--`; lowercase. `insert-stub.mjs` computes it.
121
+ - GitHub anchor for `## [0.6.21], 2026-05-21` is `#0621--2026-05-21`: strip `[`,`]`,`.` from the version; em-dash+spaces → `--`; lowercase. `insert-stub.mjs` computes it.
124
122
 
125
123
  ## §Categories + entry style
126
124