@specship/specship-linux-arm64 0.28.0 → 0.29.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 (50) hide show
  1. package/lib/dist/bin/specship.js +37 -0
  2. package/lib/dist/bin/specship.js.map +1 -1
  3. package/lib/dist/commands/specship/spec.md +7 -1
  4. package/lib/dist/design-md/check.d.ts +51 -0
  5. package/lib/dist/design-md/check.d.ts.map +1 -0
  6. package/lib/dist/design-md/check.js +335 -0
  7. package/lib/dist/design-md/check.js.map +1 -0
  8. package/lib/dist/design-md/css.d.ts +40 -0
  9. package/lib/dist/design-md/css.d.ts.map +1 -0
  10. package/lib/dist/design-md/css.js +224 -0
  11. package/lib/dist/design-md/css.js.map +1 -0
  12. package/lib/dist/design-md/extract.d.ts +84 -0
  13. package/lib/dist/design-md/extract.d.ts.map +1 -0
  14. package/lib/dist/design-md/extract.js +595 -0
  15. package/lib/dist/design-md/extract.js.map +1 -0
  16. package/lib/dist/design-md/maintain.d.ts +45 -0
  17. package/lib/dist/design-md/maintain.d.ts.map +1 -0
  18. package/lib/dist/design-md/maintain.js +127 -0
  19. package/lib/dist/design-md/maintain.js.map +1 -0
  20. package/lib/dist/design-md/render.d.ts +28 -0
  21. package/lib/dist/design-md/render.d.ts.map +1 -0
  22. package/lib/dist/design-md/render.js +178 -0
  23. package/lib/dist/design-md/render.js.map +1 -0
  24. package/lib/dist/design-md/upkeep.d.ts +48 -0
  25. package/lib/dist/design-md/upkeep.d.ts.map +1 -0
  26. package/lib/dist/design-md/upkeep.js +169 -0
  27. package/lib/dist/design-md/upkeep.js.map +1 -0
  28. package/lib/dist/design-md/verify.d.ts +65 -0
  29. package/lib/dist/design-md/verify.d.ts.map +1 -0
  30. package/lib/dist/design-md/verify.js +311 -0
  31. package/lib/dist/design-md/verify.js.map +1 -0
  32. package/lib/dist/installer/gemini-commands.d.ts.map +1 -1
  33. package/lib/dist/installer/gemini-commands.js +7 -0
  34. package/lib/dist/installer/gemini-commands.js.map +1 -1
  35. package/lib/dist/installer/targets/claude.d.ts +1 -1
  36. package/lib/dist/installer/targets/claude.d.ts.map +1 -1
  37. package/lib/dist/installer/targets/claude.js +7 -2
  38. package/lib/dist/installer/targets/claude.js.map +1 -1
  39. package/lib/dist/skills/design-md/SKILL.md +172 -0
  40. package/lib/dist/skills/design-md/references/authored-sections.md +90 -0
  41. package/lib/dist/skills/design-md/references/sources.md +71 -0
  42. package/lib/dist/spec-quality/postcheck.d.ts +7 -1
  43. package/lib/dist/spec-quality/postcheck.d.ts.map +1 -1
  44. package/lib/dist/spec-quality/postcheck.js +31 -0
  45. package/lib/dist/spec-quality/postcheck.js.map +1 -1
  46. package/lib/dist/workflows/defaults/claude-design-implement.yaml +34 -5
  47. package/lib/dist/workflows/defaults/spec-implement.yaml +16 -0
  48. package/lib/node_modules/.package-lock.json +1 -1
  49. package/lib/package.json +1 -1
  50. package/package.json +1 -1
@@ -53,7 +53,9 @@ systemPromptAppend: |
53
53
 
54
54
  The fidelity principle: never paraphrase or summarise design content
55
55
  when capturing it. The snapshot HTML and tokens.css are the
56
- zero-loss reference layer; the spec captures contract only (behaviour,
56
+ zero-loss reference layer, and design.md states every value from them
57
+ verbatim in a fixed layout (written by `specship design extract`, never
58
+ transcribed by hand); the spec captures contract only (behaviour,
57
59
  accessibility, responsive, interaction states, data shape).
58
60
 
59
61
  There are two import shapes — exactly one source input is non-empty:
@@ -73,6 +75,7 @@ nodes:
73
75
  allowed_tools:
74
76
  - Read
75
77
  - Write
78
+ - Edit
76
79
  - Bash
77
80
  - mcp__specship__specship_explore
78
81
  - mcp__specship__specship_search
@@ -160,7 +163,29 @@ nodes:
160
163
 
161
164
  ── BOTH BRANCHES ──
162
165
 
163
- 4. Extract CSS custom properties + literal token-like values
166
+ 4. Write the pixel-exact design reference (DESIGNMD-DOC). The values
167
+ come from the extractor, never from you:
168
+
169
+ specship design extract specs/$INPUT.SLUG/snapshot.html \
170
+ --out specs/$INPUT.SLUG/design.md --title "$INPUT.FILE_LABEL"
171
+
172
+ (If design.md already exists from an earlier import, use
173
+ `--update specs/$INPUT.SLUG/design.md` instead of `--out`.)
174
+ If the generated block reports a "Missing linked stylesheet",
175
+ copy that file next to the snapshot and re-run with `--update`.
176
+ Then fill design.md's authored sections — Screens & layout,
177
+ Components & states, Interactions & motion, Responsive behaviour,
178
+ Assets — following the design-md skill
179
+ (~/.claude/skills/design-md/SKILL.md and its
180
+ references/authored-sections.md): every value copied verbatim
181
+ from the generated block with its selector, every styled state
182
+ listed, no approximate wording. Run
183
+
184
+ specship design check specs/$INPUT.SLUG/design.md
185
+
186
+ and fix findings until it passes.
187
+
188
+ 5. Extract CSS custom properties + literal token-like values
164
189
  (colors, spacing, font sizes, radii, transitions) from the
165
190
  snapshot to `specs/$INPUT.SLUG/tokens.css`. Use
166
191
  `specship_explore` first to find the project's existing token
@@ -175,6 +200,7 @@ nodes:
175
200
  - Any visible interaction or state cues in the CSS (`:hover`,
176
201
  `:focus`, `:disabled`, `[aria-*]` selectors) the spec
177
202
  author should be aware of.
203
+ - Whether `specship design check` passes on design.md.
178
204
  - For Branch A: note that source.md carries the verbatim decision
179
205
  record — the draft step should mine it for stated behaviour.
180
206
 
@@ -196,6 +222,7 @@ nodes:
196
222
  - specs/$INPUT.SLUG/snapshot.html (visual + structural source)
197
223
  - specs/$INPUT.SLUG/tokens.css (design tokens)
198
224
  - specs/$INPUT.SLUG/source.md (audit record)
225
+ - specs/$INPUT.SLUG/design.md (pixel-exact design reference)
199
226
 
200
227
  Spec scope: $INPUT.FILE_LABEL component(s).
201
228
  Optional inputs: owner=$INPUT.OWNER priority=$INPUT.PRIORITY
@@ -236,6 +263,7 @@ nodes:
236
263
  source: specs/<SLUG>/source.md
237
264
  snapshot: specs/<SLUG>/snapshot.html
238
265
  tokens: specs/<SLUG>/tokens.css
266
+ design: specs/<SLUG>/design.md
239
267
  ---
240
268
  ```
241
269
 
@@ -322,14 +350,15 @@ nodes:
322
350
  1. The path of the spec file: `specs/$INPUT.SLUG.md`.
323
351
  2. The full list of REQ IDs the spec defines, one per line.
324
352
  3. The reference files the implementation phase should read:
353
+ - specs/$INPUT.SLUG/design.md (read first: every value verbatim)
325
354
  - specs/$INPUT.SLUG/snapshot.html
326
355
  - specs/$INPUT.SLUG/tokens.css
327
356
  - specs/$INPUT.SLUG/source.md
328
357
  4. The exact next command:
329
358
  /specship:spec implement <first REQ ID>
330
- 5. A one-line reminder that the implementation step should
331
- load the snapshot for visual fidelity — the spec covers
332
- contract only.
359
+ 5. A one-line reminder that the implementation step builds the UI
360
+ from design.md (values verbatim) — the spec covers contract
361
+ only.
333
362
 
334
363
  Keep the message ≤200 words. The user is about to switch from
335
364
  this workflow to the implement workflow; this is the bridge.
@@ -18,6 +18,22 @@ systemPromptAppend: |
18
18
  `path:Symbol` bullet under the requirement's `implementations:` block in
19
19
  its spec file — links in the spec file survive any reindex.
20
20
 
21
+ Design-backed specs (REQ-DESIGNMD-006): if the spec file's frontmatter
22
+ carries a `design:` key, read that design.md before ANY UI edit and build
23
+ from it — every color, size, spacing, radius, shadow, font and duration
24
+ verbatim from its Generated reference, every state under Components &
25
+ states, every breakpoint under Responsive behaviour. Never round or
26
+ substitute a "close" value; reuse a project token only when its value is
27
+ exactly equal. Anything design.md doesn't state is a question, not a guess.
28
+ Keep it current (REQ-DESIGNMD-007): when your change alters the UI — a new
29
+ or changed component, state, layout, token or copy — update that design.md
30
+ in the same change: revise the authored sections that describe what moved,
31
+ add a dated Change log line naming $INPUT.SPEC_ID, and when the design
32
+ source itself changed run `specship design extract <sources> --update
33
+ <design.md>`. Then run `specship design check <design.md>`. The postcheck
34
+ fails a UI change whose design.md has no new Change log entry, and fails a
35
+ design.md that no longer passes the check.
36
+
21
37
  JIRA-backed specs (REQ-JIRAPUB-004): if the spec file's frontmatter
22
38
  carries a `jira_issue:` key, EVERY git commit message you write for this
23
39
  work MUST be prefixed with that key ("PROJ-123: ..."), so JIRA's
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@specship/specship",
3
- "version": "0.28.0",
3
+ "version": "0.29.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@specship/specship",
3
- "version": "0.28.0",
3
+ "version": "0.29.0",
4
4
  "description": "Supercharge Claude Code with semantic code intelligence. 94% fewer tool calls • 77% faster exploration • 100% local.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@specship/specship-linux-arm64",
3
- "version": "0.28.0",
3
+ "version": "0.29.0",
4
4
  "description": "SpecShip platform bundle for linux-arm64 (runs on your installed Node.js >= 22.5 < 25)",
5
5
  "os": [
6
6
  "linux"