@adia-ai/adia-ui-forge 0.1.2 → 0.8.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 (196) hide show
  1. package/.claude-plugin/plugin.json +3 -6
  2. package/CHANGELOG.md +27 -26
  3. package/README.md +35 -40
  4. package/agents/a2ui-engineer.md +26 -0
  5. package/agents/component-author.md +29 -0
  6. package/agents/framework-verifier.md +26 -0
  7. package/agents/release-engineer.md +25 -0
  8. package/agents/routing-corpus.json +318 -0
  9. package/bin/demo-postwrite-pattern-gate +94 -0
  10. package/bin/forge-lint +17 -2
  11. package/bin/sidecar-prewrite-guard +104 -0
  12. package/commands/deploy.md +9 -0
  13. package/commands/dogfood.md +10 -0
  14. package/commands/gen-review.md +9 -0
  15. package/commands/release.md +10 -0
  16. package/hooks/hooks.json +15 -0
  17. package/package.json +3 -5
  18. package/references/contracts/a2ui-mcp-surface.md +35 -0
  19. package/references/contracts/migration-guide-format.md +34 -0
  20. package/references/shared/content-trust.md +19 -74
  21. package/skills/adia-a2ui/SKILL.md +99 -0
  22. package/skills/{adia-ui-a2ui → adia-a2ui}/evals/routing-corpus.json +10 -10
  23. package/skills/adia-a2ui/references/anti-patterns.md +27 -0
  24. package/skills/adia-a2ui/references/chunk-authoring.md +71 -0
  25. package/skills/adia-a2ui/references/corpus-discipline.md +68 -0
  26. package/skills/adia-a2ui/references/eval-diagnostics.md +86 -0
  27. package/skills/adia-a2ui/references/format-extension-decisions.md +66 -0
  28. package/skills/adia-a2ui/references/leverage-rules.md +52 -0
  29. package/skills/adia-a2ui/references/mcp-pipeline-ops.md +83 -0
  30. package/skills/adia-a2ui/references/mcp-tool-reference.md +59 -0
  31. package/skills/adia-a2ui/references/pipeline-overview.md +115 -0
  32. package/skills/adia-a2ui/references/semantic-fail-lifting.md +74 -0
  33. package/skills/adia-a2ui/references/strategy-engines.md +109 -0
  34. package/skills/adia-a2ui/references/zettel-calibration.md +104 -0
  35. package/skills/adia-author/SKILL.md +112 -0
  36. package/skills/adia-author/evals/routing-corpus.json +222 -0
  37. package/skills/{adia-ui-authoring → adia-author}/references/anti-patterns.md +33 -4
  38. package/skills/{adia-ui-authoring → adia-author}/references/authoring-cycle.md +9 -11
  39. package/skills/adia-author/references/canonical-pattern-index.md +243 -0
  40. package/skills/{adia-ui-authoring → adia-author}/references/code-style.md +19 -21
  41. package/skills/adia-author/references/common-gotchas.md +129 -0
  42. package/skills/adia-author/references/composite-demo-protocol.md +271 -0
  43. package/skills/{adia-ui-authoring → adia-author}/references/css-patterns.md +19 -6
  44. package/skills/{adia-ui-authoring → adia-author}/references/lifecycle-patterns.md +1 -0
  45. package/skills/{adia-ui-authoring → adia-author}/references/llm-bridge.md +3 -5
  46. package/skills/{adia-ui-authoring → adia-author}/references/module-promotion.md +22 -40
  47. package/skills/{adia-ui-authoring → adia-author}/references/primitive-audit.md +2 -4
  48. package/skills/{adia-ui-authoring → adia-author}/references/shell-patterns.md +12 -18
  49. package/skills/{adia-ui-authoring → adia-author}/references/token-contract.md +5 -7
  50. package/skills/{adia-ui-authoring → adia-author}/references/worked-example.md +3 -3
  51. package/skills/{adia-ui-authoring → adia-author}/references/yaml-contract.md +3 -3
  52. package/skills/{adia-ui-authoring → adia-author}/scripts/build-canonical-pattern-index.mjs +3 -3
  53. package/skills/adia-deploy/SKILL.md +128 -0
  54. package/skills/adia-deploy/references/deploy-playbooks.md +276 -0
  55. package/skills/adia-dogfood/SKILL.md +124 -0
  56. package/skills/adia-dogfood/references/admin-shell-anatomy.md +77 -0
  57. package/skills/adia-dogfood/references/app-shell-pitfalls.md +66 -0
  58. package/skills/adia-dogfood/references/card-anatomy-sweep.md +66 -0
  59. package/skills/adia-dogfood/references/html-attr-sweep.md +63 -0
  60. package/skills/adia-dogfood/references/native-leak-annotations.md +73 -0
  61. package/skills/adia-dogfood/references/visual-probe-triage.md +80 -0
  62. package/skills/{adia-ui-dogfood → adia-dogfood}/scripts/analyze.mjs +30 -14
  63. package/skills/adia-gen-review/SKILL.md +127 -0
  64. package/skills/adia-gen-review/references/corpus-html-patterns.md +279 -0
  65. package/skills/adia-gen-review/references/loop-protocol.md +216 -0
  66. package/skills/adia-gen-review/references/rubric-cosmetic.md +100 -0
  67. package/skills/adia-gen-review/references/rubric-decompose.md +101 -0
  68. package/skills/adia-gen-review/references/rubric-score.md +214 -0
  69. package/skills/{adia-ui-gen-review → adia-gen-review}/references/scores.schema.json +2 -2
  70. package/skills/{adia-ui-gen-review → adia-gen-review}/scripts/gen-review-coverage-audit.mjs +4 -4
  71. package/skills/{adia-ui-gen-review → adia-gen-review}/scripts/gen-review-decompose.mjs +10 -6
  72. package/skills/{adia-ui-gen-review → adia-gen-review}/scripts/gen-review-status.mjs +5 -5
  73. package/skills/{adia-ui-gen-review → adia-gen-review}/scripts/validate-cycle-scores.mjs +5 -5
  74. package/skills/adia-llm-internals/SKILL.md +77 -0
  75. package/skills/{adia-ui-llm → adia-llm-internals}/references/adapter-contract.md +4 -2
  76. package/skills/{adia-ui-llm → adia-llm-internals}/references/add-a-provider.md +4 -5
  77. package/skills/{adia-ui-llm → adia-llm-internals}/references/bridge-facade.md +10 -3
  78. package/skills/{adia-ui-llm → adia-llm-internals}/references/browser-proxy-boundary.md +1 -1
  79. package/skills/{adia-ui-llm → adia-llm-internals}/references/model-registry.md +5 -3
  80. package/skills/{adia-ui-llm → adia-llm-internals}/references/streaming-sse.md +2 -2
  81. package/skills/adia-release/SKILL.md +72 -0
  82. package/skills/adia-release/references/changelog-discipline.md +119 -0
  83. package/skills/adia-release/references/cut-procedure.md +247 -0
  84. package/skills/adia-release/references/gates-catalog.md +222 -0
  85. package/skills/adia-release/references/independent-package-release.md +52 -0
  86. package/skills/adia-release/references/migration-guide-authoring.md +86 -0
  87. package/skills/adia-release/references/notes-authoring.md +90 -0
  88. package/skills/adia-release/references/recovery-paths.md +106 -0
  89. package/skills/{adia-ui-release → adia-release}/scripts/bump.mjs +27 -2
  90. package/skills/{adia-ui-release → adia-release}/scripts/dispatch-publish.mjs +72 -6
  91. package/skills/{adia-ui-release → adia-release}/scripts/insert-stub.mjs +6 -4
  92. package/skills/adia-release/scripts/package-paths.mjs +50 -0
  93. package/skills/{adia-ui-release → adia-release}/scripts/promote-unreleased.mjs +4 -3
  94. package/skills/{adia-ui-release → adia-release}/scripts/release-pack.mjs +48 -27
  95. package/skills/{adia-ui-release → adia-release}/scripts/tag-lockstep.mjs +15 -3
  96. package/skills/adia-site-docs/SKILL.md +68 -0
  97. package/skills/adia-site-docs/evals/audit-report.md +30 -0
  98. package/skills/adia-site-docs/evals/routing-corpus.json +176 -0
  99. package/skills/adia-site-docs/intent.md +72 -0
  100. package/bin/lib/audit-axes.mjs +0 -555
  101. package/bin/lib/dry-run-irreversible.mjs +0 -236
  102. package/bin/lib/run-skill-evals.mjs +0 -487
  103. package/bin/lib/teach-router.mjs +0 -250
  104. package/commands/adia-forge-a2ui.md +0 -10
  105. package/commands/adia-forge-author.md +0 -10
  106. package/commands/adia-forge-dogfood.md +0 -8
  107. package/commands/adia-forge-llm.md +0 -8
  108. package/commands/adia-forge-orient.md +0 -10
  109. package/commands/adia-forge-release.md +0 -8
  110. package/commands/adia-forge-review.md +0 -10
  111. package/references/shared/pev-rationale.md +0 -64
  112. package/references/shared/skill-conventions.md +0 -133
  113. package/skills/adia-ui-a2ui/CHANGELOG.md +0 -32
  114. package/skills/adia-ui-a2ui/SKILL.md +0 -243
  115. package/skills/adia-ui-a2ui/evals/adversarial-corpus.json +0 -75
  116. package/skills/adia-ui-a2ui/evals/teach-routing-cases.json +0 -100
  117. package/skills/adia-ui-a2ui/references/anti-patterns.md +0 -24
  118. package/skills/adia-ui-a2ui/references/chunk-authoring.md +0 -88
  119. package/skills/adia-ui-a2ui/references/corpus-discipline.md +0 -56
  120. package/skills/adia-ui-a2ui/references/eval-diagnostics.md +0 -127
  121. package/skills/adia-ui-a2ui/references/fragment-graph.md +0 -91
  122. package/skills/adia-ui-a2ui/references/mcp-pipeline-ops.md +0 -106
  123. package/skills/adia-ui-a2ui/references/mcp-tool-reference.md +0 -398
  124. package/skills/adia-ui-a2ui/references/pipeline-overview.md +0 -175
  125. package/skills/adia-ui-a2ui/references/semantic-fail-lifting.md +0 -120
  126. package/skills/adia-ui-a2ui/references/strategy-engines.md +0 -111
  127. package/skills/adia-ui-a2ui/references/teach-protocol.md +0 -220
  128. package/skills/adia-ui-a2ui/references/zettel-calibration.md +0 -93
  129. package/skills/adia-ui-a2ui/scripts/audit-a2ui-roster.mjs +0 -96
  130. package/skills/adia-ui-a2ui/scripts/teach-route.mjs +0 -157
  131. package/skills/adia-ui-a2ui/skill.json +0 -38
  132. package/skills/adia-ui-authoring/CHANGELOG.md +0 -32
  133. package/skills/adia-ui-authoring/SKILL.md +0 -256
  134. package/skills/adia-ui-authoring/assets/case-studies/admin-shell-decomposition.md +0 -101
  135. package/skills/adia-ui-authoring/assets/case-studies/maxtokens-32768-discovery.md +0 -109
  136. package/skills/adia-ui-authoring/assets/case-studies/theme-panel-promotion.md +0 -113
  137. package/skills/adia-ui-authoring/evals/adversarial-design-plan-gates.json +0 -138
  138. package/skills/adia-ui-authoring/evals/routing-corpus.json +0 -245
  139. package/skills/adia-ui-authoring/references/canonical-pattern-index.md +0 -179
  140. package/skills/adia-ui-authoring/references/common-gotchas.md +0 -93
  141. package/skills/adia-ui-authoring/references/composite-demo-protocol.md +0 -1084
  142. package/skills/adia-ui-authoring/references/teach-protocol.md +0 -428
  143. package/skills/adia-ui-authoring/scripts/audit-authoring-roster.mjs +0 -148
  144. package/skills/adia-ui-authoring/skill.json +0 -45
  145. package/skills/adia-ui-dogfood/CHANGELOG.md +0 -17
  146. package/skills/adia-ui-dogfood/README.md +0 -62
  147. package/skills/adia-ui-dogfood/SKILL.md +0 -866
  148. package/skills/adia-ui-dogfood/skill.json +0 -40
  149. package/skills/adia-ui-forge/SKILL.md +0 -88
  150. package/skills/adia-ui-forge/evals/routing-corpus.json +0 -30
  151. package/skills/adia-ui-gen-review/CHANGELOG.md +0 -108
  152. package/skills/adia-ui-gen-review/SKILL.md +0 -266
  153. package/skills/adia-ui-gen-review/references/loop-protocol.md +0 -712
  154. package/skills/adia-ui-gen-review/references/rubric-cosmetic.md +0 -144
  155. package/skills/adia-ui-gen-review/references/rubric-decompose.md +0 -117
  156. package/skills/adia-ui-gen-review/references/rubric-score.md +0 -249
  157. package/skills/adia-ui-gen-review/references/teach-protocol.md +0 -214
  158. package/skills/adia-ui-gen-review/skill.json +0 -22
  159. package/skills/adia-ui-llm/CHANGELOG.md +0 -25
  160. package/skills/adia-ui-llm/SKILL.md +0 -165
  161. package/skills/adia-ui-llm/evals/adversarial-corpus.json +0 -75
  162. package/skills/adia-ui-llm/evals/routing-corpus.json +0 -30
  163. package/skills/adia-ui-llm/evals/teach-routing-cases.json +0 -73
  164. package/skills/adia-ui-llm/references/teach-protocol.md +0 -78
  165. package/skills/adia-ui-llm/scripts/audit-llm-roster.mjs +0 -93
  166. package/skills/adia-ui-llm/scripts/teach-route.mjs +0 -119
  167. package/skills/adia-ui-llm/skill.json +0 -33
  168. package/skills/adia-ui-release/CHANGELOG.md +0 -23
  169. package/skills/adia-ui-release/SKILL.md +0 -295
  170. package/skills/adia-ui-release/assets/case-studies/2026-05-20-batch-push-v0.6.14-v0.6.15.md +0 -144
  171. package/skills/adia-ui-release/assets/case-studies/2026-05-20-corpus-drift-remediation-v0.6.15.md +0 -155
  172. package/skills/adia-ui-release/assets/case-studies/2026-05-20-version-skip-correction-v0.6.12.md +0 -114
  173. package/skills/adia-ui-release/assets/case-studies/2026-05-21-author-from-scratch-v0.6.18.md +0 -139
  174. package/skills/adia-ui-release/assets/case-studies/2026-05-21-feedback37-retraction-v0.6.21.md +0 -124
  175. package/skills/adia-ui-release/assets/case-studies/2026-05-21-fn1-enrichment-pass-v0.6.19.md +0 -125
  176. package/skills/adia-ui-release/assets/case-studies/2026-05-21-stale-test-detection-v0.6.20.md +0 -142
  177. package/skills/adia-ui-release/assets/case-studies/2026-05-23-freshness-gate-recovery-v0.6.32.md +0 -97
  178. package/skills/adia-ui-release/assets/case-studies/2026-05-26-catalog-drift-recurring-v0.6.40.md +0 -147
  179. package/skills/adia-ui-release/assets/templates/stub-changelog.template.md +0 -22
  180. package/skills/adia-ui-release/evals/evals.json +0 -164
  181. package/skills/adia-ui-release/references/changelog-discipline.md +0 -250
  182. package/skills/adia-ui-release/references/cycle-happy-path.md +0 -520
  183. package/skills/adia-ui-release/references/exe-deploy.md +0 -149
  184. package/skills/adia-ui-release/references/gates-catalog.md +0 -778
  185. package/skills/adia-ui-release/references/ledger-discipline.md +0 -232
  186. package/skills/adia-ui-release/references/migration-guide-authoring.md +0 -174
  187. package/skills/adia-ui-release/references/multi-agent-baseline.md +0 -207
  188. package/skills/adia-ui-release/references/notes-authoring.md +0 -212
  189. package/skills/adia-ui-release/references/recovery-paths.md +0 -215
  190. package/skills/adia-ui-release/references/rollup-notes.md +0 -208
  191. package/skills/adia-ui-release/references/teach-protocol.md +0 -468
  192. package/skills/adia-ui-release/scripts/audit-gate-roster.mjs +0 -196
  193. package/skills/adia-ui-release/scripts/make-ledger.mjs +0 -179
  194. package/skills/adia-ui-release/skill.json +0 -75
  195. /package/skills/{adia-ui-authoring → adia-author}/references/api-contract.md +0 -0
  196. /package/skills/{adia-ui-release → adia-release}/scripts/assert-monorepo-root.mjs +0 -0
@@ -1,179 +0,0 @@
1
- #!/usr/bin/env node
2
- // make-ledger.mjs — author .brain/audit-history/YYYY-MM-DD-release-vX.Y.Z.json
3
- // from git state + cycle-specific notes.
4
- //
5
- // Reads:
6
- // - the current git HEAD (release_commit + tag_commit if same)
7
- // - the 10 tags for the given version (collected from `git tag`)
8
- // - the recent gate-run output (passed via --verification-file or
9
- // --verification-json or computed best-effort from `npm run check:lockstep`)
10
- //
11
- // Writes:
12
- // - .brain/audit-history/YYYY-MM-DD-release-vX.Y.Z.json
13
- //
14
- // Usage:
15
- // node make-ledger.mjs --version 0.6.22 --date 2026-05-22 \
16
- // --summary "9-package lockstep PATCH cut. Substantive: ..." \
17
- // --kind release-cut
18
- // node make-ledger.mjs --version 0.6.22 --date 2026-05-22 --kind batch-push \
19
- // --versions 0.6.21,0.6.22 --summary "..."
20
- //
21
- // Optional flags:
22
- // --tag-commit <sha> (default: HEAD)
23
- // --release-commit <sha> (default: tag-commit)
24
- // --scope <key=value,...> shorthand for the .scope.{key} block
25
- // --note "<text>" append to .notes array; repeatable
26
- // --interactive prompt for missing required fields
27
- // --dry print to stdout without writing
28
- //
29
- // Phase 3 of the adia-ui-release skill. Mechanizes the per-cycle ledger
30
- // authoring used at Step 11 of cycle-happy-path.
31
-
32
- import fs from 'node:fs';
33
- import path from 'node:path';
34
- import { execSync } from 'node:child_process';
35
- import process from 'node:process';
36
- import { assertMonorepoRoot } from './assert-monorepo-root.mjs';
37
-
38
- function parseArgs(argv) {
39
- const args = {
40
- version: null,
41
- date: null,
42
- kind: 'release-cut',
43
- summary: null,
44
- versions: null,
45
- tagCommit: null,
46
- releaseCommit: null,
47
- scope: {},
48
- notes: [],
49
- dry: false,
50
- repo: process.cwd(),
51
- repoSlug: '<org>/<repo>',
52
- };
53
- for (let i = 0; i < argv.length; i++) {
54
- const k = argv[i];
55
- if (k === '--version') args.version = argv[++i];
56
- else if (k === '--date') args.date = argv[++i];
57
- else if (k === '--kind') args.kind = argv[++i];
58
- else if (k === '--summary') args.summary = argv[++i];
59
- else if (k === '--versions') args.versions = argv[++i].split(',');
60
- else if (k === '--tag-commit') args.tagCommit = argv[++i];
61
- else if (k === '--release-commit') args.releaseCommit = argv[++i];
62
- else if (k === '--scope') {
63
- const pairs = argv[++i].split(',');
64
- for (const p of pairs) {
65
- const [key, ...val] = p.split('=');
66
- args.scope[key] = val.join('=');
67
- }
68
- } else if (k === '--note') args.notes.push(argv[++i]);
69
- else if (k === '--dry') args.dry = true;
70
- else if (k === '--repo') args.repo = argv[++i];
71
- else if (k === '--repo-slug') args.repoSlug = argv[++i];
72
- else if (k === '-h' || k === '--help') {
73
- console.log('Usage: node make-ledger.mjs --version X.Y.Z --date YYYY-MM-DD --summary "..." [--kind release-cut|batch-push|p1-hotfix] [--repo-slug <org>/<repo>] [--tag-commit <sha>] [--release-commit <sha>] [--scope key=val,...] [--note "..."] [--dry]');
74
- process.exit(0);
75
- }
76
- }
77
- if (!args.version || !args.date || !args.summary) {
78
- console.error('error: --version, --date, --summary all required');
79
- process.exit(2);
80
- }
81
- // Fail-fast guard: refuse to run git against a non-monorepo directory.
82
- assertMonorepoRoot(args.repo);
83
- if (!args.tagCommit) {
84
- args.tagCommit = execSync(`git -C "${args.repo}" rev-parse HEAD`).toString().trim();
85
- }
86
- if (!args.releaseCommit) args.releaseCommit = args.tagCommit;
87
- return args;
88
- }
89
-
90
- function collectTags(repo, version) {
91
- const out = execSync(`git -C "${repo}" tag --list 'v${version}' '*-v${version}'`).toString().trim();
92
- return out.split('\n').filter(Boolean).sort();
93
- }
94
-
95
- function buildLedger(args) {
96
- const isBatch = args.kind === 'batch-push';
97
- const allTags = isBatch && args.versions
98
- ? args.versions.flatMap((v) => collectTags(args.repo, v))
99
- : collectTags(args.repo, args.version);
100
-
101
- const ledger = {
102
- kind: args.kind,
103
- audit_id: `${args.date}-${args.kind}-v${args.version}`,
104
- repo: args.repoSlug,
105
- released_at: args.date,
106
- version: args.version,
107
- release_type: 'PATCH',
108
- summary: args.summary,
109
- };
110
-
111
- if (Object.keys(args.scope).length > 0) ledger.scope = args.scope;
112
- if (isBatch && args.versions) {
113
- ledger.versions = args.versions;
114
- ledger.tag_commits = {};
115
- for (const v of args.versions) {
116
- const tag = `v${v}`;
117
- try {
118
- ledger.tag_commits[tag] = execSync(`git -C "${args.repo}" rev-parse ${tag}`).toString().trim();
119
- } catch {
120
- ledger.tag_commits[tag] = '<missing — tag not found>';
121
- }
122
- }
123
- } else {
124
- ledger.release_commit = args.releaseCommit;
125
- ledger.tag_commit = args.tagCommit;
126
- }
127
-
128
- ledger.tags = allTags;
129
- ledger.verification = {
130
- note: 'TODO: paste gate-by-gate summary here. See ledger-discipline.md § canonical schema.',
131
- };
132
- ledger.publish_workflows = {
133
- dispatched: '9/9 via gh workflow run --ref <pkg>-vX.Y.Z',
134
- conclusions: '9/9 success',
135
- };
136
- ledger.notes = args.notes.length > 0 ? args.notes : ['TODO: at least one note per cycle.'];
137
-
138
- return ledger;
139
- }
140
-
141
- function writeOrPrint(ledger, args) {
142
- const filename = `${ledger.audit_id}.json`;
143
- const target = path.join(args.repo, '.brain', 'audit-history', filename);
144
- const content = JSON.stringify(ledger, null, 2) + '\n';
145
-
146
- if (args.dry) {
147
- console.log(`[dry] would write to: ${target}`);
148
- console.log('---');
149
- console.log(content);
150
- return;
151
- }
152
-
153
- fs.mkdirSync(path.dirname(target), { recursive: true });
154
- if (fs.existsSync(target)) {
155
- console.error(`error: ${target} already exists. Use --dry to preview or remove it manually.`);
156
- process.exit(1);
157
- }
158
- fs.writeFileSync(target, content);
159
- console.log(`[make-ledger] wrote ${target}`);
160
- console.log(`\n[next] verify the ledger:`);
161
- console.log(` cat ${target} | jq .`);
162
- console.log(`\n[next] commit + push:`);
163
- console.log(` git add ${target}`);
164
- console.log(` git commit -m "chore(audit-history): v${ledger.version} release ledger"`);
165
- console.log(` git push origin main`);
166
- }
167
-
168
- function main() {
169
- const args = parseArgs(process.argv.slice(2));
170
- const ledger = buildLedger(args);
171
- writeOrPrint(ledger, args);
172
- }
173
-
174
- try {
175
- main();
176
- } catch (e) {
177
- console.error(`error: ${e.message}`);
178
- process.exit(1);
179
- }
@@ -1,75 +0,0 @@
1
- {
2
- "name": "adia-ui-release",
3
- "version": "0.1.0",
4
- "description": "Release engineer for an @adia-ai-style lockstep monorepo. Cuts, tags, publishes, deploys, authors release notes + audit-history ledgers — AND authors the MIGRATION GUIDE when a cut breaks an API (the producer side of migrations, folded in from the former adia-ui-migration skill). Use whenever the user wants to CUT A RELEASE / SHIP A VERSION / PUBLISH PACKAGES / BATCH-PUSH ACCUMULATED RELEASES / RECOVER FROM A VERSION-SKIP / WRITE RELEASE NOTES / PROMOTE [UNRELEASED] CHANGELOG / AUTHOR A MIGRATION GUIDE FOR A BREAKING CUT. Triggers on \"cut vX.Y.Z\", \"initiate a release\", \"publish the npm packages\", \"tag this commit and push the release\", \"batch push\", \"F-N1 warned\", \"GitHub release notes\", \"promote unreleased\", \"version skip recovery\", \"verify pre-flight gates\", \"the cycle just shipped — write up what happened\", \"author a migration guide / write the migration recipe for this breaking change\". VERIFICATION is load-bearing: every cut verifies against reality (npm registry + production endpoint + GH release), not self-checks. Carries the portable release DISCIPLINE with the @adia-ai monorepo's 9-package lockstep + demo-site deploy as the clearly-labeled worked example. Does NOT trigger for: the CONSUMER side of migration (sweeping a downstream app — the separate consumer/app-author plugin), long-running VM ops (provision/restart/key rotation), authoring new code, or generation-pipeline work.",
5
- "status": "stable",
6
- "authors": [
7
- "kim.granlund"
8
- ],
9
- "tags": [
10
- "adia-ui",
11
- "release",
12
- "publish",
13
- "lockstep",
14
- "release-notes",
15
- "migration-guide",
16
- "producer-side"
17
- ],
18
- "environment": {
19
- "portable": false,
20
- "requires": [
21
- "an @adia-ai-style lockstep monorepo: @adia-ai/* packages under packages/* that version + publish together, with per-package CHANGELOG.md, a release trip-wire, and a publish-workflow per package"
22
- ],
23
- "rationale": "The skill mutates a real monorepo (commits, tags, lockfiles) and triggers real package publishes; the gate roster, deploy target, and ledger paths are substrate-bound. The DISCIPLINE generalizes to any @adia-ai-style lockstep monorepo, but the worked example (9-package lockstep, ui-kit.exe.xyz deploy) is the @adia-ai monorepo specifically."
24
- },
25
- "files": [
26
- "SKILL.md",
27
- "skill.json",
28
- "CHANGELOG.md",
29
- "references/cycle-happy-path.md",
30
- "references/multi-agent-baseline.md",
31
- "references/gates-catalog.md",
32
- "references/recovery-paths.md",
33
- "references/changelog-discipline.md",
34
- "references/notes-authoring.md",
35
- "references/rollup-notes.md",
36
- "references/exe-deploy.md",
37
- "references/ledger-discipline.md",
38
- "references/migration-guide-authoring.md",
39
- "references/teach-protocol.md",
40
- "scripts/bump.mjs",
41
- "scripts/promote-unreleased.mjs",
42
- "scripts/insert-stub.mjs",
43
- "scripts/tag-lockstep.mjs",
44
- "scripts/dispatch-publish.mjs",
45
- "scripts/make-ledger.mjs",
46
- "scripts/release-pack.mjs",
47
- "scripts/audit-gate-roster.mjs",
48
- "assets/templates/stub-changelog.template.md",
49
- "assets/case-studies/2026-05-20-version-skip-correction-v0.6.12.md",
50
- "assets/case-studies/2026-05-20-batch-push-v0.6.14-v0.6.15.md",
51
- "assets/case-studies/2026-05-20-corpus-drift-remediation-v0.6.15.md",
52
- "assets/case-studies/2026-05-21-author-from-scratch-v0.6.18.md",
53
- "assets/case-studies/2026-05-21-fn1-enrichment-pass-v0.6.19.md",
54
- "assets/case-studies/2026-05-21-stale-test-detection-v0.6.20.md",
55
- "assets/case-studies/2026-05-21-feedback37-retraction-v0.6.21.md",
56
- "assets/case-studies/2026-05-23-freshness-gate-recovery-v0.6.32.md",
57
- "assets/case-studies/2026-05-26-catalog-drift-recurring-v0.6.40.md",
58
- "evals/evals.json"
59
- ],
60
- "peer_skills": [
61
- "adia-ui-authoring",
62
- "adia-ui-a2ui",
63
- "adia-ui-dogfood",
64
- "ops-postmortem"
65
- ],
66
- "absorbs": [
67
- "adia-ui-migration — DONE: producer side folded in as references/migration-guide-authoring.md + mode 11 (§MigrationGuideAuthoring). The consumer side stays in the separate consumer/app-author plugin.",
68
- "release-publish / release-notes / verification-sweep — DONE in the source skill: consolidated into modes 1/3/4 (cut), 5/9 (notes), 6 (verify)."
69
- ],
70
- "references": [
71
- "adia-ui-a2ui — corpus-freshness checks route there for remediation (verify:corpus / embeddings drift)",
72
- "adia-ui-dogfood — the static-HTML probes (native-primitive-leak, shell-composition) whose findings fold into release notes",
73
- "ops-postmortem — incident genre during post-publish recovery (mode 7)"
74
- ]
75
- }