@vantageos/mosaic 0.3.0 → 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.
- package/CHANGELOG.md +30 -0
- package/package.json +231 -230
package/CHANGELOG.md
CHANGED
|
@@ -28,6 +28,36 @@ Versioning follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
28
28
|
|
|
29
29
|
---
|
|
30
30
|
|
|
31
|
+
## [0.3.1] — 2026-06-13 — hotfix: workspace:* leak in published 0.3.0 manifest (Path B — root-cause fix)
|
|
32
|
+
|
|
33
|
+
### Fixed
|
|
34
|
+
- **External npm install of `@vantageos/mosaic@0.3.0` was broken**: the published manifest carried `"@vantageos/mosaic-tokens": "workspace:*"` as a runtime dependency. The `workspace:*` protocol is a bun/pnpm/yarn monorepo specifier that the npm registry cannot resolve to a real version, so any external `npm install @vantageos/mosaic` failed with `ETARGET No matching version found for @vantageos/mosaic-tokens@workspace:*`. Gamma flag via Pi msg `jn77k1v2414far8z5b7abxgjqn88jq9b`. Task `k1769bhq5f7z56yyfs143jsw5588k7j6` (mission `k57b6d1bzc318pc4gqmhe4tapx88jqbd`).
|
|
35
|
+
|
|
36
|
+
### Path B — root-cause fix (Gamma defect-owner recommendation, msg `jn7fjf62mnzrwfhe2p9vfwymxn88ks67`)
|
|
37
|
+
|
|
38
|
+
The first iteration of this PR rewrote `packages/mosaic/package.json` source from `workspace:*` → `^0.2.0`, but this approach:
|
|
39
|
+
- broke CI (`ERR_PNPM_OUTDATED_LOCKFILE` — pnpm frozen-lockfile no longer matched the manifest), AND
|
|
40
|
+
- severed the monorepo workspace link (sibling `mosaic-tokens` would resolve from npm, not the local package), AND
|
|
41
|
+
- re-leaks on every future release unless the spec is permanently pinned (which breaks dev linking).
|
|
42
|
+
|
|
43
|
+
Path B keeps the source `workspace:*` reference (lockfile stays valid → CI green) and **rewrites at publish-time only**:
|
|
44
|
+
|
|
45
|
+
- **NEW** `packages/mosaic/scripts/rewrite-workspace-deps.mjs` — Node stdlib-only script. Walks `dependencies` / `peerDependencies` / `devDependencies` / `optionalDependencies`; for every `workspace:*` (or `workspace:^` / `workspace:~`) ref, reads the sibling package's `package.json` `version` field from `packages/<bare-name>/package.json` and rewrites the spec to `^<version>`. Mutates `packages/mosaic/package.json` in place for the duration of the publish step.
|
|
46
|
+
- **MODIFIED** `prepublishOnly` script now runs the rewrite FIRST: `node scripts/rewrite-workspace-deps.mjs && pnpm run build && pnpm run test && pnpm run size-limit && node scripts/check-eta-gate.js`.
|
|
47
|
+
- **NEW** `postpublish` script reverts the mutation via `git checkout HEAD -- package.json`, leaving the source repo in its workspace-linked state for monorepo dev.
|
|
48
|
+
|
|
49
|
+
This preserves monorepo dev (`workspace:*` resolves to the local sibling) AND ships a registry-resolvable manifest (`^<version>` in the published tarball). The rewrite happens during `npm publish` (which invokes `prepublishOnly` automatically), and the postpublish revert ensures no source drift.
|
|
50
|
+
|
|
51
|
+
### Verify post-publish
|
|
52
|
+
- `npm view @vantageos/mosaic@0.3.1 dependencies` — `@vantageos/mosaic-tokens` shows `^0.2.0`, no `workspace:*` anywhere.
|
|
53
|
+
- Clean install: `mkdir /tmp/smoke && cd /tmp/smoke && npm init -y && npm install @vantageos/mosaic@0.3.1` — exits 0, pulls `@vantageos/mosaic-tokens@0.2.0` from registry.
|
|
54
|
+
- `git diff HEAD -- packages/mosaic/package.json` post-publish — clean (postpublish reverted).
|
|
55
|
+
|
|
56
|
+
### F-list track
|
|
57
|
+
- Tracked in F-list `k173e0bwvfpmngwrrtcqh3zzj988fnaq` priority MAX. The rewrite script is fleet-wide reusable for any other `@vantageos/*` monorepo package that publishes via `npm publish` (vs `pnpm publish` which auto-rewrites).
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
31
61
|
## [0.3.0] — GA — 2026-06-13
|
|
32
62
|
|
|
33
63
|
### Added
|
package/package.json
CHANGED
|
@@ -1,231 +1,232 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
}
|
|
2
|
+
"name": "@vantageos/mosaic",
|
|
3
|
+
"version": "0.3.1",
|
|
4
|
+
"description": "Fleet-wide MCP UI design system — 6-category taxonomy, Zod-validated, registry-gated, streaming-ready, cross-runtime (React 19 + Preact 10).",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.cjs",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"import": "./dist/index.js",
|
|
13
|
+
"require": "./dist/index.cjs"
|
|
14
|
+
},
|
|
15
|
+
"./progress": {
|
|
16
|
+
"types": "./dist/progress.d.ts",
|
|
17
|
+
"import": "./dist/progress.js",
|
|
18
|
+
"require": "./dist/progress.cjs"
|
|
19
|
+
},
|
|
20
|
+
"./input": {
|
|
21
|
+
"types": "./dist/input.d.ts",
|
|
22
|
+
"import": "./dist/input.js",
|
|
23
|
+
"require": "./dist/input.cjs"
|
|
24
|
+
},
|
|
25
|
+
"./display": {
|
|
26
|
+
"types": "./dist/display.d.ts",
|
|
27
|
+
"import": "./dist/display.js",
|
|
28
|
+
"require": "./dist/display.cjs"
|
|
29
|
+
},
|
|
30
|
+
"./artifacts": {
|
|
31
|
+
"types": "./dist/artifacts.d.ts",
|
|
32
|
+
"import": "./dist/artifacts.js",
|
|
33
|
+
"require": "./dist/artifacts.cjs"
|
|
34
|
+
},
|
|
35
|
+
"./confirmation": {
|
|
36
|
+
"types": "./dist/confirmation.d.ts",
|
|
37
|
+
"import": "./dist/confirmation.js",
|
|
38
|
+
"require": "./dist/confirmation.cjs"
|
|
39
|
+
},
|
|
40
|
+
"./media": {
|
|
41
|
+
"types": "./dist/media.d.ts",
|
|
42
|
+
"import": "./dist/media.js",
|
|
43
|
+
"require": "./dist/media.cjs"
|
|
44
|
+
},
|
|
45
|
+
"./forms": {
|
|
46
|
+
"types": "./dist/forms.d.ts",
|
|
47
|
+
"import": "./dist/forms.js",
|
|
48
|
+
"require": "./dist/forms.cjs"
|
|
49
|
+
},
|
|
50
|
+
"./react": {
|
|
51
|
+
"types": "./dist/react/index.d.ts",
|
|
52
|
+
"import": "./dist/react/index.js",
|
|
53
|
+
"require": "./dist/react/index.cjs"
|
|
54
|
+
},
|
|
55
|
+
"./react/progress": {
|
|
56
|
+
"types": "./dist/react/progress.d.ts",
|
|
57
|
+
"import": "./dist/react/progress.js",
|
|
58
|
+
"require": "./dist/react/progress.cjs"
|
|
59
|
+
},
|
|
60
|
+
"./react/input": {
|
|
61
|
+
"types": "./dist/react/input.d.ts",
|
|
62
|
+
"import": "./dist/react/input.js",
|
|
63
|
+
"require": "./dist/react/input.cjs"
|
|
64
|
+
},
|
|
65
|
+
"./react/display": {
|
|
66
|
+
"types": "./dist/react/display.d.ts",
|
|
67
|
+
"import": "./dist/react/display.js",
|
|
68
|
+
"require": "./dist/react/display.cjs"
|
|
69
|
+
},
|
|
70
|
+
"./react/artifacts": {
|
|
71
|
+
"types": "./dist/react/artifacts.d.ts",
|
|
72
|
+
"import": "./dist/react/artifacts.js",
|
|
73
|
+
"require": "./dist/react/artifacts.cjs"
|
|
74
|
+
},
|
|
75
|
+
"./react/confirmation": {
|
|
76
|
+
"types": "./dist/react/confirmation.d.ts",
|
|
77
|
+
"import": "./dist/react/confirmation.js",
|
|
78
|
+
"require": "./dist/react/confirmation.cjs"
|
|
79
|
+
},
|
|
80
|
+
"./react/media": {
|
|
81
|
+
"types": "./dist/react/media.d.ts",
|
|
82
|
+
"import": "./dist/react/media.js",
|
|
83
|
+
"require": "./dist/react/media.cjs"
|
|
84
|
+
},
|
|
85
|
+
"./react/forms": {
|
|
86
|
+
"types": "./dist/react/forms.d.ts",
|
|
87
|
+
"import": "./dist/react/forms.js",
|
|
88
|
+
"require": "./dist/react/forms.cjs"
|
|
89
|
+
},
|
|
90
|
+
"./preact": {
|
|
91
|
+
"types": "./dist/preact/index.d.ts",
|
|
92
|
+
"import": "./dist/preact/index.js"
|
|
93
|
+
},
|
|
94
|
+
"./preact/progress": {
|
|
95
|
+
"types": "./dist/preact/progress.d.ts",
|
|
96
|
+
"import": "./dist/preact/progress.js"
|
|
97
|
+
},
|
|
98
|
+
"./preact/input": {
|
|
99
|
+
"types": "./dist/preact/input.d.ts",
|
|
100
|
+
"import": "./dist/preact/input.js"
|
|
101
|
+
},
|
|
102
|
+
"./preact/display": {
|
|
103
|
+
"types": "./dist/preact/display.d.ts",
|
|
104
|
+
"import": "./dist/preact/display.js"
|
|
105
|
+
},
|
|
106
|
+
"./preact/artifacts": {
|
|
107
|
+
"types": "./dist/preact/artifacts.d.ts",
|
|
108
|
+
"import": "./dist/preact/artifacts.js"
|
|
109
|
+
},
|
|
110
|
+
"./preact/confirmation": {
|
|
111
|
+
"types": "./dist/preact/confirmation.d.ts",
|
|
112
|
+
"import": "./dist/preact/confirmation.js"
|
|
113
|
+
},
|
|
114
|
+
"./preact/media": {
|
|
115
|
+
"types": "./dist/preact/media.d.ts",
|
|
116
|
+
"import": "./dist/preact/media.js"
|
|
117
|
+
},
|
|
118
|
+
"./preact/forms": {
|
|
119
|
+
"types": "./dist/preact/forms.d.ts",
|
|
120
|
+
"import": "./dist/preact/forms.js"
|
|
121
|
+
},
|
|
122
|
+
"./tokens": {
|
|
123
|
+
"types": "./dist/tokens.d.ts",
|
|
124
|
+
"import": "./dist/tokens.js",
|
|
125
|
+
"require": "./dist/tokens.cjs"
|
|
126
|
+
},
|
|
127
|
+
"./server": {
|
|
128
|
+
"types": "./dist/server.d.ts",
|
|
129
|
+
"import": "./dist/server.js",
|
|
130
|
+
"require": "./dist/server.cjs"
|
|
131
|
+
},
|
|
132
|
+
"./registry.yaml": "./registry.yaml"
|
|
133
|
+
},
|
|
134
|
+
"files": [
|
|
135
|
+
"dist",
|
|
136
|
+
"registry.yaml",
|
|
137
|
+
"README.md",
|
|
138
|
+
"CHANGELOG.md"
|
|
139
|
+
],
|
|
140
|
+
"sideEffects": false,
|
|
141
|
+
"scripts": {
|
|
142
|
+
"prebuild": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
|
|
143
|
+
"build": "NODE_OPTIONS=--max-old-space-size=8192 tsup",
|
|
144
|
+
"dev": "tsup --watch",
|
|
145
|
+
"test": "vitest run",
|
|
146
|
+
"lint": "biome check --error-on-warnings src",
|
|
147
|
+
"size-limit": "size-limit",
|
|
148
|
+
"build-storybook": "storybook build -o storybook-static",
|
|
149
|
+
"prepublishOnly": "node scripts/rewrite-workspace-deps.mjs && pnpm run build && pnpm run test && pnpm run size-limit && node scripts/check-eta-gate.js",
|
|
150
|
+
"postpublish": "git checkout HEAD -- package.json && echo '[postpublish] reverted package.json — workspace:* refs restored for monorepo dev'"
|
|
151
|
+
},
|
|
152
|
+
"peerDependencies": {
|
|
153
|
+
"@hookform/resolvers": "^3.10.0",
|
|
154
|
+
"@mcp-ui/client": "7.1.1",
|
|
155
|
+
"preact": "^10.25.0",
|
|
156
|
+
"react": "^19.1.0",
|
|
157
|
+
"react-dom": "^19.1.0",
|
|
158
|
+
"react-hook-form": "^7.54.0",
|
|
159
|
+
"react-i18next": "15.5.2",
|
|
160
|
+
"rxjs": "^7.8.0"
|
|
161
|
+
},
|
|
162
|
+
"peerDependenciesMeta": {
|
|
163
|
+
"@hookform/resolvers": {
|
|
164
|
+
"optional": true
|
|
165
|
+
},
|
|
166
|
+
"@mcp-ui/client": {
|
|
167
|
+
"optional": true
|
|
168
|
+
},
|
|
169
|
+
"preact": {
|
|
170
|
+
"optional": true
|
|
171
|
+
},
|
|
172
|
+
"react": {
|
|
173
|
+
"optional": true
|
|
174
|
+
},
|
|
175
|
+
"react-dom": {
|
|
176
|
+
"optional": true
|
|
177
|
+
},
|
|
178
|
+
"react-hook-form": {
|
|
179
|
+
"optional": true
|
|
180
|
+
},
|
|
181
|
+
"react-i18next": {
|
|
182
|
+
"optional": true
|
|
183
|
+
},
|
|
184
|
+
"rxjs": {
|
|
185
|
+
"optional": true
|
|
186
|
+
}
|
|
187
|
+
},
|
|
188
|
+
"dependencies": {
|
|
189
|
+
"@lit-labs/react": "1.0.6",
|
|
190
|
+
"@mcp-ui/server": "6.1.0",
|
|
191
|
+
"@tanstack/react-virtual": "3.13.6",
|
|
192
|
+
"@vantageos/mosaic-tokens": "^0.2.0",
|
|
193
|
+
"dompurify": "3.2.4",
|
|
194
|
+
"marked": "15.0.7",
|
|
195
|
+
"zod": "3.25.28"
|
|
196
|
+
},
|
|
197
|
+
"devDependencies": {
|
|
198
|
+
"@axe-core/playwright": "4.10.1",
|
|
199
|
+
"@babel/parser": "7.29.7",
|
|
200
|
+
"@babel/traverse": "7.29.7",
|
|
201
|
+
"@biomejs/biome": "1.9.4",
|
|
202
|
+
"@hookform/resolvers": "^3.10.0",
|
|
203
|
+
"@playwright/test": "1.50.1",
|
|
204
|
+
"@size-limit/preset-small-lib": "11.2.0",
|
|
205
|
+
"@storybook/builder-vite": "8.6.18",
|
|
206
|
+
"@storybook/react": "8.6.18",
|
|
207
|
+
"@storybook/react-vite": "8.6.18",
|
|
208
|
+
"@storybook/test-runner": "0.21.0",
|
|
209
|
+
"@tailwindcss/vite": "4.1.8",
|
|
210
|
+
"@testing-library/react": "16.3.0",
|
|
211
|
+
"@testing-library/user-event": "14.6.1",
|
|
212
|
+
"@types/babel__traverse": "7.28.0",
|
|
213
|
+
"@types/dompurify": "3.0.5",
|
|
214
|
+
"@types/react": "19.1.0",
|
|
215
|
+
"@types/react-dom": "19.1.0",
|
|
216
|
+
"@vitejs/plugin-react": "4.3.4",
|
|
217
|
+
"@vitest/coverage-v8": "3.2.2",
|
|
218
|
+
"jsdom": "26.0.0",
|
|
219
|
+
"preact": "10.27.1",
|
|
220
|
+
"react": "19.1.0",
|
|
221
|
+
"react-dom": "19.1.0",
|
|
222
|
+
"react-hook-form": "^7.54.0",
|
|
223
|
+
"size-limit": "11.2.0",
|
|
224
|
+
"storybook": "8.6.18",
|
|
225
|
+
"tailwindcss": "4.1.8",
|
|
226
|
+
"tsup": "8.4.0",
|
|
227
|
+
"typescript": "5.8.3",
|
|
228
|
+
"vite": "6.3.5",
|
|
229
|
+
"vite-plugin-singlefile": "2.1.0",
|
|
230
|
+
"vitest": "3.2.2"
|
|
231
|
+
}
|
|
232
|
+
}
|