Skip to content

fix(web): migrate feature colors and status mappings to semantic tokens #4175

Description

@jeanduplessis

Problem

Feature code maintains parallel palettes using raw Tailwind families, local OKLCH, hardcoded black/white, alpha surfaces, and incorrect domain mappings such as emerald, amber, zinc, or purple outside VS Code.

Remediation action

Replace feature-local colors with canonical surface, foreground, link, syntax, diff, and status-domain tokens.

Representative scope

  • apps/web/src/components/shared/Banner.tsx:13
  • apps/web/src/components/organizations/UpgradeTrialDialog.tsx:115
  • apps/web/src/components/subscriptions/SubscriptionStatusBadge.tsx:4
  • apps/web/src/components/cloud-agent-next/SessionsList.tsx:53
  • apps/web/src/components/deployments/BuildLogViewer.tsx:64
  • apps/web/src/components/security-agent/SeverityBadge.tsx:13
  • apps/web/src/app/(app)/claw/components/InstanceTab.tsx:21
  • apps/web/src/components/gastown/BeadBoard.tsx:44
  • apps/web/src/app/(app)/wasteland/by-id/[wastelandId]/wanted/WantedBoardClient.tsx:42
  • apps/web/src/app/admin/components/OrganizationTableBody.tsx:32

Acceptance criteria

  • Product surfaces use six-role surface ladder and semantic foreground/border utilities.
  • Cloud, VS Code, CLI, Slack, Agent Manager, success, warning, and destructive states follow fixed domain mappings.
  • Terminal/code/diff surfaces use dedicated tokens.
  • Inline links use text-link; primary yellow is not used as body/link text.
  • No component-local OKLCH, raw black/white surface, emerald, amber, zinc, sky, or decorative status color remains in audited scope.
  • Status remains understandable through text or icon cues, not color alone.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1Should fix before soft launchenhancementNew feature or request

    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