Skip to content

Commit 7a135e8

Browse files
committed
chore(changeset): patch @objectstack/spec — the refusal string ships
Measured, not assumed: `packages/spec/package.json` `files[]` publishes both `dist` and `src/**/*.zod.ts`, and after a build the new citation appears in four published bundles (`dist/index.js`, `dist/index.mjs`, `dist/browser/index.js`, `dist/browser/index.mjs`) with the old spelling at zero. Published bytes move, so `skip-changeset` does not apply. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012GKcPZbMoGq7WPzKLfRBTU
1 parent 79081f0 commit 7a135e8

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
"@objectstack/spec": patch
3+
---
4+
5+
fix(spec): the one-app-per-package refusal cites the record it means, `ADR-0019 (app-as-consumer-unit) D3`
6+
7+
`ADR-0019` names **two** records in this repository — `0019-app-as-consumer-unit` (D3 = a `type: 'app'` package defines at most one app) and `0019-approval-as-flow-node` (D3 = deprecating `ApprovalProcessSchema`). Both have a D3, and `stack.zod.ts` cited the bare number for both, so an author following the refusal's own citation was as likely to reach the wrong decision record as the right one.
8+
9+
The three citations of the app-cap rule now name the record:
10+
11+
- the `STACK_SINGLE_APP_VIOLATION` message — the only one an app author ever sees;
12+
- the `validateSingleApp` docblock;
13+
- the `StackSingleAppViolationError` docblock.
14+
15+
Only the message tail changed: `An 'app' package must define at most one app, but found N (…)` is untouched, so any consumer matching on that prefix is unaffected. The rule, the refusal's condition and `defineStack`'s behaviour are unchanged.
16+
17+
The approvals-side citations are deliberately left bare — repo-wide ADR-number disambiguation is tracked separately.

0 commit comments

Comments
 (0)