fix-html-open-live-status-colors

Differentiate open and live tasks in HTML mirror

Metadata

Statusopen
Agent identity02e879681e52e0a384106169be043416c4d946e850ab26b2269c57681b52a6e7
Created2026-08-06T13:42:40.516637039+00:00

Description

The public WorksGood live mirror currently renders both Open and InProgress tasks as yellow variants. This violates the established terminal/TUI palette: a live/in-progress task is yellow; an ordinary open task is neutral foreground (white on dark theme, dark neutral on light theme).

Root cause is src/html_assets/style.css: --status-in-progress is correctly yellow, but --status-open is also yellow/brown in the root, OS-light, and explicit-light palettes. Change open to the theme foreground (for example var(--fg)) in every palette while preserving in-progress yellow. Update stale comments that describe open as yellow. Ensure task-link and badge selectors both consume the corrected variables and selection/upstream/downstream overlays still intentionally override status colors.

The live deployment has an explicit temporary operational hotfix: /home/bot/wg/.wg/html-publish.toml currently uses rsync flags -avz --delete --exclude=style.css, and the deployed style.css has open=var(--fg). This keeps five-minute feed refreshes from reverting the user-visible repair. Once the source fix is installed, the operator must remove that exclude and republish; do not institutionalize the override.

Bootstrap constraint: work only in the assigned worktree. Do not run the broad 177-target suite. Use exact HTML/CSS tests or cargo test --lib filters only. Never share another worker target.

Validation

  • Dark theme: InProgress resolves yellow and Open resolves neutral white/foreground with strong visual distinction.
  • OS light and explicit light: InProgress remains accessible yellow/ochre and Open resolves neutral dark foreground.
  • Generated HTML retains distinct data-status values and both graph task links and list badges use the variables correctly.
  • Paused, selected, upstream/downstream, chat, and agency modifiers retain their intentional precedence.
  • A focused regression test fails if open becomes yellow again or aliases in-progress.
  • Installed candidate renders a local fixture correctly without running the full integration suite.

Depends on

Required by

Log