feat(frontend): add optional UI sound mute toggle (#487) #1027

Merged
PlasticDigits merged 3 commits from feat/487-sound-mute-toggle into main 2026-07-14 11:08:37 +00:00
PlasticDigits commented 2026-07-14 10:55:57 +00:00 (Migrated from gitlab.com)

Summary

  • Add client-local UI SFX mute (cl8y-dex-sounds-enabled, default ON) gated inside sounds.ts play() for press/hover/success/error.
  • Shell SoundEffectsToggle next to theme (desktop header + mobile More); mute click is silent, unmute plays one confirmation press.
  • Unit tests, QA §10.3 mute/unmute cases, docs/invariants, and skills/AGENTS_FRONTEND_SOUND_MUTE.md for agents.

Closes #487

Test plan

  • vitest for soundPreferences, sounds mute gate, SoundEffectsToggle
  • Manual: desktop Sound → Muted; localStorage = 0; interactions stay silent after reload
  • Manual: mobile More sheet Sound off/on stays synced
  • Manual: theme toggle still works with sound control present (dark + light)
  • Screenshots attached on issue #487
  • CI test-frontend green on MR
## Summary - Add client-local UI SFX mute (`cl8y-dex-sounds-enabled`, default ON) gated inside `sounds.ts` `play()` for press/hover/success/error. - Shell `SoundEffectsToggle` next to theme (desktop header + mobile More); mute click is silent, unmute plays one confirmation press. - Unit tests, QA §10.3 mute/unmute cases, docs/invariants, and `skills/AGENTS_FRONTEND_SOUND_MUTE.md` for agents. Closes #487 ## Test plan - [x] `vitest` for `soundPreferences`, `sounds` mute gate, `SoundEffectsToggle` - [x] Manual: desktop Sound → Muted; `localStorage` = `0`; interactions stay silent after reload - [x] Manual: mobile More sheet Sound off/on stays synced - [x] Manual: theme toggle still works with sound control present (dark + light) - [x] Screenshots attached on issue #487 - [ ] CI `test-frontend` green on MR
PlasticDigits commented 2026-07-14 10:56:21 +00:00 (Migrated from gitlab.com)

mentioned in issue #487

mentioned in issue #487
PlasticDigits commented 2026-07-14 10:58:50 +00:00 (Migrated from gitlab.com)

added 1 commit

  • 8491a798 - feat(frontend): use compact icons for theme and sound toggles (#487)

Compare with previous version

added 1 commit <ul><li>8491a798 - feat(frontend): use compact icons for theme and sound toggles (#487)</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/309/diffs?diff_id=1902251885&start_sha=6097243b51a06e8e4995f09a78084fb893275014)
PlasticDigits commented 2026-07-14 11:04:05 +00:00 (Migrated from gitlab.com)

added 1 commit

  • 481355d5 - fix(frontend): move env ribbon to footer and tighten header (#487)

Compare with previous version

added 1 commit <ul><li>481355d5 - fix(frontend): move env ribbon to footer and tighten header (#487)</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/309/diffs?diff_id=1902263284&start_sha=8491a798a9dcdae72e0383b1fa44441a50cd81c3)
PlasticDigits (Migrated from gitlab.com) merged commit d226b04bee into main 2026-07-14 11:08:38 +00:00
PlasticDigits commented 2026-07-14 11:08:39 +00:00 (Migrated from gitlab.com)

mentioned in commit d226b04bee

mentioned in commit d226b04beeac76783c8cf3ef0892d6497aab3e84
Sign in to join this conversation.
No reviewers
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
code/cl8y-dex-terraclassic!1027
No description provided.