baldart 4.78.1 → 4.78.2

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 CHANGED
@@ -5,6 +5,17 @@ All notable changes to BALDART will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [4.78.2] - 2026-06-29
9
+
10
+ **The "visual-verify every `ui-expert` intervention" hard rule was investigated and deliberately NOT built.** The ask sounded obvious — wire an invariant `UI_VISUAL_UNVERIFIED` forcing a visual check after every `ui-expert` implementation. Three adversarial reviewers (distinct lenses) refuted the diagnosis: (1) standalone skills already verify — `/ui-design` has its generator/evaluator Playwright loop, `/ds-new` + `/ds-edit` delegate to `ui-expert`'s own BLOCKING pre-work + `ds-gate` + the coherence report, `/ds-render` feeds `/e2e-review` Phase 4b; (2) the invariant would be redundant with the existing `DS_*` coherence codes + the `coverage-gap` finding, and would fire **constantly** on every Storybook-less project — the gate-with-no-exit structural false-positive the framework explicitly avoids — plus risk the assertion-fitting the verifier trio forbids; (3) the real driver the obvious diagnosis missed: **visual verification is deliberately deferred to where a ground-truth exists** (a composed route / a mockup) — an inert scaffolded primitive has nothing to be judged against, so verifying it *now* judges the void. The single useful residue (a deterministic `PostToolUse` hook would beat prose if one ever wanted to harden `/new`'s own prose-driven Phase 2.6) was logged, not built. So this release ships only the **zero-cost, non-regressive nudge**: a documentation pointer making explicit *where* route-level fidelity lives.
11
+
12
+ **PATCH** — doc-only pointers; no new capability, no agent, no invariant, **no `baldart.config.yml` key**. The nudge is a pointer to the existing `/e2e-review` Phase 4, never a blocking obligation; skipped/irrelevant where no render surface exists.
13
+
14
+ ### Changed
15
+
16
+ - **`/ds-render`** (`framework/.claude/skills/ds-render/SKILL.md`) — added a "Where route-level fidelity lives" note: the harness verifies a primitive in isolation (quality only, no ground-truth); the full fidelity check happens downstream via `/e2e-review` Phase 4 when the primitive is composed into a real route. A pointer, never a blocking obligation.
17
+ - **`/ui-design`** (`framework/.claude/skills/ui-design/SKILL.md`) — added a "Downstream visual verification" note after Step H: the design is verified visually at the mockup stage (Step D evaluator); the fidelity of the *implemented* result is verified downstream via `/e2e-review` Phase 4 (auto-run by `/new`, or manual `/e2e-review CARD-ID` outside the pipeline).
18
+
8
19
  ## [4.78.1] - 2026-06-29
9
20
 
10
21
  **`/ds-new` + `/ds-edit` now close the closed-loop (the `DS_MIRROR_STALE` nudge).** The mirror advisory — check #6 of the Post-Intervention Coherence Check, which nudges `/design-sync publish` when the in-repo registry has moved ahead of its Claude Design satellite — was cited by **every** UI-touching surface (`code-reviewer`, `ui-design`, `/design-review`, `/new` implement, `/prd` ui-design-phase, the `ds-drift` backstop) **except the two skills whose whole job is to create/modify a canonical element**: `/ds-new` and `/ds-edit`. So creating a primitive with `/ds-new` on a satellite-bound project never reminded the user to publish it — the one event that most directly makes the mirror stale was the one that skipped the nudge. This release adds the citation to both skills' step-8 coherence report.
package/VERSION CHANGED
@@ -1 +1 @@
1
- 4.78.1
1
+ 4.78.2
@@ -71,6 +71,14 @@ Baseline `medium`. Honor an inline `effort=<level>` override.
71
71
  mechanism is the `mockup_source.level: "harness-render"` marker (see
72
72
  `e2e-review/SKILL.md` Phase 2 cascade) which Phase 4 skips and Phase 4b takes.
73
73
 
74
+ > **Where route-level fidelity lives (nudge, not a gate).** This harness verifies a
75
+ > primitive **in isolation** (quality only — it has no mockup ground-truth). The full
76
+ > visual-**fidelity** check happens **downstream**, when the primitive is composed into
77
+ > a real route: that is `/e2e-review` Phase 4 (auto-run by `/new`, or invoke
78
+ > `/e2e-review CARD-ID` manually if you implement outside `/new`). Verifying an inert
79
+ > primitive against a mockup here would be premature — it has nothing to be judged
80
+ > against yet. So this is a pointer, never a blocking obligation.
81
+
74
82
  ## Hard prohibitions
75
83
  - NEVER feed a harness PNG to a fidelity diff (Phase 4) — quality (4b/4c) only.
76
84
  - NEVER build a framework-native preview-route or an auto-provider-shim — Storybook
@@ -246,6 +246,14 @@ prevent**: catching a duplicate primitive at the mockup stage costs minutes,
246
246
  catching it after implementation costs a refactor. The weekly `ds-drift`
247
247
  routine is a safety net, not a substitute for this check.
248
248
 
249
+ **Downstream visual verification (nudge, not a gate).** The chosen design is
250
+ verified visually **at the mockup stage** here (Step D evaluator). The fidelity
251
+ of the *implemented* result against this design is verified **downstream**, when
252
+ the design lands in a live route: that is `/e2e-review` Phase 4 — auto-run by
253
+ `/new`, or invoke `/e2e-review CARD-ID` manually if you implement this design
254
+ outside the `/new` pipeline. This is where route-level fidelity lives; it is a
255
+ pointer, never a blocking obligation on this skill.
256
+
249
257
  ---
250
258
 
251
259
  ## Design Principles (quick reference)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "baldart",
3
- "version": "4.78.1",
3
+ "version": "4.78.2",
4
4
  "description": "Claude Agent Framework - Reusable framework for coordinating AI agents and humans in software projects",
5
5
  "bin": {
6
6
  "baldart": "./bin/baldart.js"