A machine should not wait for a person to hear it failing.

A skilled operator can often hear when a machine begins to chatter. But human attention is intermittent, and most monitoring prototypes stop at detection: they raise an alert, draw a chart, and leave the physical loop open.

CutHush closes that loopa nd then proves whether the response worked.

The proof in 90 seconds

CutHush turns a laptop and phone into a visible hardware-in-the-loop test cell.

The phone acts as an explicitly labeled BENCH MACHINE NODE and emits a deterministic rotating-machine audio proxy into the room. The laptop listens through its real microphone, measures a fresh acoustic baseline, detects persistent narrowband instability, sends a bounded mitigation command over WebSocket, and measures the sound again.

phone speaker → air → laptop microphone → spectral decision → WebSocket command → phone response

Press Run same-seed proof and the identical seeded incident runs twice:

Governor OFF measure unmitigated exposure. Governor ON detect persistence, command mitigation, and verify the response.

The result appears side by side as Same incident. Different outcome.

What makes CutHush different

Most acoustic-monitoring demos end at “we detected something.” CutHush makes detection the beginning of the story.

A run becomes RECOVERED only after the measured 2.4 kHz target band drops by at least 6 dB for eight consecutive frames. A command is not success. An acknowledgement is not success. If CutHush cannot prove sustained recovery, it ends UNRESOLVED.

Every completed Judge Mode run produces a persisted, exportable Run Capsule. Its payload is SHA-256 verified in the browser and chained to the previous proof.

How it works

Pair the laptop operator and phone node with one room code. Grant microphone access; CutHush displays the actual browser-granted sample rate and processing settings. Calibrate a three-second local acoustic baseline. Analyze a 4096-point FFT around the instability target and neighbouring bands. Require the candidate to exceed both baseline and prominence thresholds in at least four of six frames. Send one fresh, role-authorized mitigation command; stale and duplicate commands are rejected. Wait for the node acknowledgement and measure the post-command spectrum. Return RECOVERED only after sustained measured reduction.

If controller heartbeats disappear for more than 1.2 seconds, the phone independently ramps its audio to zero and enters SAFE_HOLD.

Built with

React, TypeScript, and Vite Web Audio API and Canvas spectrum visualization FastAPI and Pydantic WebSockets SQLite proof storage deterministic Mulberry32 replay Docker and Render GitHub Actions

Innovation

A closed loop, not another alert dashboard. Sensing, decision, actuation, acknowledgement, and verification form one observable sequence. Counterfactual proof. Governor OFF and ON receive the same deterministic incident seed. Truth built into the interface. LIVE_MIC, REPLAY_FIXTURE, and BENCH MACHINE NODE are never blurred together. Visible failure states. UNRESOLVED and SAFE_HOLD replace fabricated confidence. An understandable physical demo. Two ordinary browsers create a loop judges can grasp in seconds.

Challenges we ran into

Mobile browsers require a physical touch before Web Audio can start. A real two-device loop also exposed practical problems that a single-screen mockup avoids: phone-reachable LAN URLs, controller liveness, duplicate roles, stale commands, reconnect limits, and what the actuator should do when the laptop disappears.

The hardest product decision was the verdict boundary. We deliberately placed green downstream of measurement: the response must create a sustained reduction, or the result remains unresolved.

Accomplishments that we're proud of

A real speaker-to-air-to-microphone command loop using ordinary devices A deterministic same-seed counterfactual judge demo Automatic mitigation with acknowledgement-linked verification A 1.2-second independent node fail-safe Tamper-evident, shareable proof capsules A complete Docker deployment with time-boxed CI 14 backend tests plus a clean TypeScript/Vite production build

What we learned

The most persuasive control demo is not the detector alone. It is a bounded sequence from sensing through actuation to post-action verification. Clear labels for live, simulated, and unvalidated behavior make the prototype more credible, not less.

CutHush's runtime verdict is intentionally not generated by an AI model. Explicit spectral thresholds make the reason for every action inspectable. AI-assisted research and Codex were used to challenge the framing, inspect adjacent approaches, recover interrupted work, diagnose a cross-event-loop WebSocket test deadlock, harden lifecycle behavior, and package the verified release.

What's next

The next step is to replace the bench audio proxy with isolated industrial sensors and an advisory-only PLC integration, then validate thresholds across machine types and operating regimes before granting any production authority.

Truth boundary

The phone is a deterministic BENCH MACHINE NODE, not a CNC machine. The laptop microphone and WebSocket command path are real. Replay remains labeled REPLAY_FIXTURE. CutHush demonstrates the control architecture; it does not claim field validation or industrial safety certification.

How to evaluate / Additional information

For the fastest judge path:

  1. Open https://cuthush.onrender.com in desktop Chrome.
  2. Choose Run the same-seed judge proof (REPLAY_FIXTURE).
  3. Click Run same-seed proof.
  4. Watch calibration, Governor OFF, the identical Governor ON incident, 4-of-6 persistence, mitigation acknowledgement, and the measured RECOVERED or UNRESOLVED verdict.
  5. Open the Run Capsule and confirm the browser reports SHA-256 VERIFIED.

For the physical loop, open the operator view on a laptop and the paired BENCH MACHINE NODE on a phone on the same network. Grant microphone access, keep the phone at moderate volume, inject instability, and let CutHush command and verify the response.

Evaluation truth boundary: the phone is a deterministic bench proxy, not a CNC machine; replay is always labeled; and success is never prefilled. The fastest reliable experience is Judge Mode, while LIVE_MIC demonstrates the real speaker-to-air-to-microphone loop.

Built With

Share this project:

Updates

Submission history