feat: file-based audio testing + Hetzner build scripts

CLI modes:
- --send-tone <secs>: send 440Hz test tone (no mic needed)
- --record <file.raw>: save received audio to raw PCM file
- --help: usage info
- Combine: --send-tone 10 --record out.raw

Raw PCM format: 48kHz mono s16le
Play with: ffplay -f s16le -ar 48000 -ac 1 out.raw

Build scripts:
- scripts/build-linux.sh: Hetzner VPS build with auto-cleanup
- scripts/cleanup-builder.sh: kill stale builders

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Siavash Sameni
2026-03-27 16:11:59 +04:00
parent 85f472d824
commit 708fb268bc
3 changed files with 361 additions and 37 deletions

11
scripts/cleanup-builder.sh Executable file
View File

@@ -0,0 +1,11 @@
#!/usr/bin/env bash
set -euo pipefail
# Clean up any wzp-builder servers left running
echo "Looking for wzp-builder servers..."
hcloud server list -o noheader | grep wzp-builder | while read -r line; do
id=$(echo "$line" | awk '{print $1}')
name=$(echo "$line" | awk '{print $2}')
echo " Deleting $name (id=$id)..."
hcloud server delete "$id"
done
echo "Done."