Cybersecurity-Projects/PROJECTS/advanced
CarterPerez-dev 21f54390df feat(monitor/frontend): audio chime infrastructure (load/unlock/play, phase 6 wires the trigger)
Per spec §10.5 — three pure functions sitting on top of the existing
useAudioStore (so React surfaces can subscribe to .unlocked if a
"click anywhere to enable audio" toast is needed later):

  loadChime(file)              fetch / decode arraybuffer into AudioBuffer
  unlockOnFirstGesture()       attach one-shot pointerdown listener that
                               resumes a suspended AudioContext, sets
                               unlocked=true. Idempotent across re-mounts
                               via module-level listenerAttached guard
                               (StrictMode double-mount safe).
  playChime() → boolean        returns false if the audio context isn't
                               ready / buffer not loaded / not unlocked,
                               so callers can fall back to a toast.

Phase 6 calls playChime() on alert match; Phase 5 only wires the
unlockOnFirstGesture() call into the dashboard lifecycle (Task 24)
so the audio is ready when Phase 6 lands.
2026-05-03 09:41:22 -04:00
..
ai-threat-detection Merge pull request #190 from CarterPerez-dev/dependabot/uv/PROJECTS/advanced/ai-threat-detection/backend/python-dotenv-1.2.2 2026-04-26 23:53:53 -04:00
api-rate-limiter chore(deps): bump python-multipart 2026-04-17 22:49:17 +00:00
bug-bounty-platform Merge remote-tracking branch 'origin/main' into chore/haskell-reverse-proxy-finish 2026-04-28 17:57:03 -04:00
encrypted-p2p-chat chore(deps): bump vite in /PROJECTS/advanced/encrypted-p2p-chat/frontend 2026-04-29 07:15:53 +00:00
haskell-reverse-proxy fix: extract Aenebris.Net.IP to dedupe SockAddr rendering (Finding 10) 2026-04-29 02:19:56 -04:00
honeypot-network Update README.md 2026-04-19 13:27:28 -04:00
monitor-the-situation-dashboard feat(monitor/frontend): audio chime infrastructure (load/unlock/play, phase 6 wires the trigger) 2026-05-03 09:41:22 -04:00