Skip to content

Integrate shared/ui into UpdateDialog form + pages/home audit (PRD-018 SC-2 batch 3/3) #84

@fedorovvvv

Description

@fedorovvvv

Sub-issue of #81. Batch 3/3 — closes the long tail of the shared/ui follow-up integration deferred from #68.

Refs: PRD-018 SC-2 · RFC-016 · EVID-022 · closing EvidencePack EVID-023.

Closed by PR #85 (commit f8de23c for this batch).

What landed

pages/home/ui/HomePage.svelte (commit f8de23c):

  • Inline .error-bar block (custom div + embedded .retry button) → <Alert variant="danger" title="CLI error"> containing <Button variant="ghost" size="sm">.
  • Border-radius zeroed via class override to keep the full-width banner look at the top of the layout.

UpdateDialog.svelte form body — left as-is. The dialog body is informational (version comparison + manual update steps), not a form. The original AC item "compose body via Field + Input" was based on the parent issue's wording but does not apply: there are no inputs to compose. The version comparison block is custom layout that doesn't map to a primitive. Decision documented in PR description and EVID-023 §Interpretation.

Acceptance criteria

  • grep -RIn '<style>' template/src/widgets/version-footer/ui/UpdateDialog.svelte template/src/pages/home shows only layout/motion styles. Verified post-merge: 2 style blocks remain (UpdateDialog version-comparison layout, HomePage layout), zero atom selectors.
  • No new ad-hoc reimplementation of an atom that already exists in @/shared/ui.
  • npm run check passes (0 errors, 0 warnings, 1039 files).
  • Visual smoke in Chrome on / — 0 console errors, dual-theme parity (verified). UpdateDialog opens via the version-footer Update button; .error-bar flow not exercised in this session (requires triggering globalError by killing the forgeplan CLI), but the rendering is type-safe and the Alert + Button primitives are showcased on /playground.
  • Form labels programmatically associated — N/A. UpdateDialog has no form inputs in this batch (Field + Input not applied — see "What landed" above). When form inputs are added later (separate effort), Field will handle label wiring.
  • Bundle delta inside PRD-018 NFR-002 budget. PR-internal net diff in HomePage: −6 LOC (27 removed, 21 added). Cumulative pre-Create and promote components #68 baseline not re-measured.
  • After this batch merges: parent Integrate shared/ui primitives into widgets/pages (follow-up to #68) #81 acceptance criterion "EvidencePack updates PRD-018 SC-2 from 'deferred' → 'pass'" is actioned. EVID-023 created, structured fields filled (verdict=supports, congruence_level=3 CL3, evidence_type=measurement), linked --informs--> PRD-018 + RFC-016, activated. forgeplan score PRD-018 → R_eff = 1.00 (Adequate).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions