Skip to content

fix(ui): resolve design-system contract discrepancies - #79

Merged
DamienBattistella merged 1 commit into
mainfrom
claude/design-system-discrepancies-eermb0
Jul 22, 2026
Merged

fix(ui): resolve design-system contract discrepancies#79
DamienBattistella merged 1 commit into
mainfrom
claude/design-system-discrepancies-eermb0

Conversation

@DamienBattistella

Copy link
Copy Markdown
Collaborator

Description

Audited the "Signal" design system implementation against its canonical spec (docs/design-system.md) and fixed three deviations from the color contract and component rules. The infrastructure (tokens, PrimeVue preset, motion catalogue, deletions in §7) was already fully in place — these are the residual template-level discrepancies.

# File Spec rule Before After
1 Settings.vue §1.2 — accent-blue is the only interactive color; green/amber/red are status only "Restart now" update button filled with a bespoke .pc-btn--success (status green) pc-btn--primary; dead .pc-btn--success CSS removed (also matches the identical button in AppLayout.vue)
2 Dashboard.vue §5.2 — the Presence "Live" chip is "success dot + M11 equalizer" rendered only the equalizer added the paired pc-dot pc-dot--success
3 ConnectionTile.vue §5.0.1 — .pc-panel--raised is the one card system tile re-implemented background/border-radius locally adopted .pc-panel--raised, dropped the duplicated declarations

Items considered and intentionally left unchanged (documented for reviewers): the --pc-surface-700/-200 hover backgrounds match how canonical components.css and spec §5.0.2 define secondary-button hover (no role alias exists for hover-surface); the DiscordSpecimen placeholder in --pc-blurple is spec-mandated (§5.0.4); always-available Reconnect is already provided by the topbar node popovers; the CUSTOM ID accent badge is consistent across Settings and Setup and is unspecified by §5.0.3.

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • Code refactoring

Related Issues

Closes #

Testing

  • Tested on Windows
  • Tested on macOS
  • Tested on Linux
  • All tests pass locally

npm run build succeeds, eslint is clean on the changed files, and all 154 unit tests pass. Changes are token-only and produce no visual regression.

Checklist

  • My code follows the project's code style
  • I have performed a self-review of my own code
  • My changes generate no new warnings or errors
  • New and existing unit tests pass locally with my changes

Additional Notes

Audit covered every page and shared component against the full spec (color contract §1.2, tokens §2, preset §3, motion §4, page blueprints §5, a11y §6, deletions §7). The vast majority of the "Signal" system was already implemented faithfully; only the three template-level items above deviated.

🤖 Generated with Claude Code

https://claude.ai/code/session_011AmgRn7jspXjSsLdCszX4C


Generated by Claude Code

Audited the "Signal" design system against its canonical spec
(docs/design-system.md) and fixed three deviations from the color
contract and component rules:

- Settings: the "Restart now" update button used a bespoke
  .pc-btn--success (status green) as its fill, violating §1.2 — blue
  (accent) is the only interactive color; green/amber/red are status
  only. Switched to pc-btn--primary and removed the dead variant CSS.
  This also matches the identical "Restart now" button in AppLayout.
- Dashboard: the "Live" presence chip rendered only the equalizer;
  §5.2 specifies the chip as "success dot + M11 equalizer". Added the
  paired success dot.
- ConnectionTile: the tile re-implemented raised-surface styling
  (background/border-radius) locally instead of using the canonical
  .pc-panel--raised class (§5.0.1, the one card system). Adopted the
  class and dropped the duplicated declarations.

No visual regression; build, lint, and all 154 unit tests pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011AmgRn7jspXjSsLdCszX4C
@DamienBattistella
DamienBattistella marked this pull request as ready for review July 22, 2026 22:17
@DamienBattistella
DamienBattistella merged commit c10371f into main Jul 22, 2026
9 checks passed
@DamienBattistella
DamienBattistella deleted the claude/design-system-discrepancies-eermb0 branch July 22, 2026 22:17
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 1.10.2 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants