Nit picking design on the issue view page #112

Closed
opened 2026-09-05 04:16:58 +00:00 by crueber · 3 comments
Owner

image

Make the "milestone" match "assignees"

and the "none" match the other "none"s

![image](/attachments/c3e2df83-be17-468d-bdae-8671d8110fe8) Make the "milestone" match "assignees" and the "none" match the other "none"s
Author
Owner

Fixed by PR #118 (branch fix/issue-112): milestone sidebar section now matches assignees exactly (same block, label typography, flex-wrap value wrapper) and all three none fallbacks share span.muted.text-xs. Verified: 252/252 node unit tests green; real-browser CDP check of empty + populated sidebar in dark + light, zero JS errors (pageErrors []); A/B against pristine origin/main confirms the bug on base and the fix on the branch (remaining 404 probe noise + repo-summary toast reproduce identically on base - pre-existing, out of scope). #118

Fixed by PR #118 (branch fix/issue-112): milestone sidebar section now matches assignees exactly (same block, label typography, flex-wrap value wrapper) and all three none fallbacks share span.muted.text-xs. Verified: 252/252 node unit tests green; real-browser CDP check of empty + populated sidebar in dark + light, zero JS errors (pageErrors []); A/B against pristine origin/main confirms the bug on base and the fix on the branch (remaining 404 probe noise + repo-summary toast reproduce identically on base - pre-existing, out of scope). https://git.packden.us/crueber/walhub/pulls/118
Author
Owner

REVIEW PR #118 (fix/issue-112 @66c968f) — sidebar section consistency

Diff: 1 file, +5/-1, web/src/pages/Issue.jsx only. No imports touched.

Checks (all pass):

  • Milestone block (Issue.jsx:343-350) now mirrors assignees block (:335-342) exactly: same grid gap-1 p-3 wrapper, same text-xs font-medium uppercase text-zinc-500 dark:text-zinc-400 label, same flex flex-wrap gap-1 inner, same plain value.
  • All three none fallbacks share muted text-xs: labels :330, assignees :338, milestone :346.
  • No behavior change: ?? none -> Show/fallback is render-equivalent for the real milestone shape (null|string); Show additionally treats '' as none, which is strictly more honest. No handlers/state touched.
  • No new deps (Law 1 ok); no tasks/background work (Law 7 N/A); no new capability or seam touched (Law 8 ok); no doc decision needed, pure consistency fix (Law 12 ok).
  • Dark+light intact: label and divide-zinc classes untouched; muted class shared with sibling sections.

Verify (scratch worktree /tmp/pr118, main worktree untouched read-only):

  • node --test web/test/unit/*.test.js: 252 pass / 0 fail. (Note: fresh worktree initially showed 2 failures — data-guard + reaction-cache failing on missing solid-js because the worktree has no node_modules; environmental, resolved by symlinking the main worktree's node_modules read-only, then full green.)
  • vite build: success (109 modules transformed, dist emitted).
  • No browser drive per review instructions; change is static class markup. BEFORE screenshot reviewed: all three sections showed none; fix gives milestone the same muted treatment as labels/assignees.

No fixes pushed — none needed. MERGE RECOMMENDATION: ready to merge.

REVIEW PR #118 (fix/issue-112 @66c968f) — sidebar section consistency Diff: 1 file, +5/-1, web/src/pages/Issue.jsx only. No imports touched. Checks (all pass): - Milestone block (Issue.jsx:343-350) now mirrors assignees block (:335-342) exactly: same grid gap-1 p-3 wrapper, same text-xs font-medium uppercase text-zinc-500 dark:text-zinc-400 label, same flex flex-wrap gap-1 inner, same plain <span> value. - All three none fallbacks share muted text-xs: labels :330, assignees :338, milestone :346. - No behavior change: ?? none -> Show/fallback is render-equivalent for the real milestone shape (null|string); Show additionally treats '' as none, which is strictly more honest. No handlers/state touched. - No new deps (Law 1 ok); no tasks/background work (Law 7 N/A); no new capability or seam touched (Law 8 ok); no doc decision needed, pure consistency fix (Law 12 ok). - Dark+light intact: label and divide-zinc classes untouched; muted class shared with sibling sections. Verify (scratch worktree /tmp/pr118, main worktree untouched read-only): - node --test web/test/unit/*.test.js: 252 pass / 0 fail. (Note: fresh worktree initially showed 2 failures — data-guard + reaction-cache failing on missing solid-js because the worktree has no node_modules; environmental, resolved by symlinking the main worktree's node_modules read-only, then full green.) - vite build: success (109 modules transformed, dist emitted). - No browser drive per review instructions; change is static class markup. BEFORE screenshot reviewed: all three sections showed none; fix gives milestone the same muted treatment as labels/assignees. No fixes pushed — none needed. MERGE RECOMMENDATION: ready to merge.
Author
Owner

Fixed by PR #118 (review clean; 252/252 node tests), merged. Closing.

Fixed by PR #118 (review clean; 252/252 node tests), merged. Closing.
crueber added this to the v1 milestone 2026-09-10 22:20:45 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
crueber/walhub#112
No description provided.