mirror of
https://github.com/gesellix/Bose-SoundTouch.git
synced 2026-08-19 09:06:14 +00:00
Adds a "Download diagnostic report" button on the Health tab that
produces an age-encrypted .age file the user can attach to a GitHub
issue without exposing sensitive data.
Archive contents (tar.gz, then age-encrypted with the maintainer's
SSH ed25519 public key):
- diagnostic.json structured health/device summary (no secrets)
- datastore/…/*.xml raw on-disk XML verbatim for diff vs HTTP
- http/service/… live service HTTP responses per account/device
- http/speaker/… live speaker API responses (port 8090)
- ssh/speaker/… CA bundles + logread (last 20 min, 127.0.0.1
filtered) + dmesg fetched via SSH
- system/ca.pem service CA cert
- system/resolv.conf host DNS resolver config
- settings.json service settings (OAuth secrets redacted)
- env.txt filtered process environment
- logs/service.txt in-memory service log buffer
Supporting tooling:
- scripts/setup-diagnostic-key.sh one-time SSH key-pair generation
- scripts/decrypt-diagnostic.go go run helper for maintainer decryption
- keys/public/diagnostic.pub committed public key (matches github.com/gesellix.keys)
- docs/DIAGNOSTIC-EXPORT.md maintainer setup + user workflow guide
- docs/concepts/ENCRYPTED-EXPORT.md research notes and architecture rationale
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
125 lines
2.0 KiB
Plaintext
125 lines
2.0 KiB
Plaintext
# Build artifacts
|
|
build/
|
|
dist/
|
|
*.exe
|
|
*.dll
|
|
*.so
|
|
*.dylib
|
|
|
|
# CLI binaries (should be in build/ directory)
|
|
#soundtouch-cli
|
|
#example-mdns
|
|
#example-upnp
|
|
|
|
# Root-level binary executables (exclude built binaries in root)
|
|
/soundtouch-backup
|
|
/soundtouch-cli
|
|
/soundtouch-service
|
|
/soundtouch-web
|
|
/dummy-speaker
|
|
/example-mdns
|
|
/example-upnp
|
|
/example-unified
|
|
/mdns-scanner
|
|
/websocket-demo
|
|
/main
|
|
/screenshots
|
|
|
|
# Environment configuration
|
|
.env
|
|
.env.local
|
|
.env.*.local
|
|
docker-compose.override.yml
|
|
|
|
# Test coverage reports
|
|
coverage.out
|
|
coverage*.out
|
|
coverage.html
|
|
*.prof
|
|
|
|
# Go workspace file
|
|
go.work
|
|
go.work.sum
|
|
|
|
# Dependency directories
|
|
vendor/
|
|
node_modules/
|
|
|
|
# IDE and editor files
|
|
.vscode/
|
|
.idea/
|
|
.claude/
|
|
.junie/
|
|
*.swp
|
|
*.swo
|
|
*~
|
|
|
|
# OS generated files
|
|
.DS_Store
|
|
.DS_Store?
|
|
._*
|
|
.Spotlight-V100
|
|
.Trashes
|
|
ehthumbs.db
|
|
Thumbs.db
|
|
|
|
# Android MITM setup — downloaded/generated artefacts, not committed
|
|
scripts/android/bose.apk
|
|
scripts/android/frida-server
|
|
scripts/android/frida-server.xz
|
|
scripts/android/frida/
|
|
scripts/android/frida-venv/
|
|
scripts/android/captures/
|
|
scripts/android/mitm/
|
|
|
|
# Temporary files
|
|
*.tmp
|
|
*.temp
|
|
*.log
|
|
*.pid
|
|
*.seed
|
|
*.pid.lock
|
|
.output.txt
|
|
|
|
# Runtime data
|
|
pids
|
|
*.pid
|
|
*.seed
|
|
*.pid.lock
|
|
|
|
# Optional npm cache directory
|
|
.npm
|
|
|
|
# Optional REPL history
|
|
.node_repl_history
|
|
|
|
# Output of 'npm pack'
|
|
*.tgz
|
|
|
|
# Yarn Integrity file
|
|
.yarn-integrity
|
|
|
|
# dotenv environment variables file (but keep .env.example)
|
|
!.env.example
|
|
|
|
# Stockholm frontend — generated by `make prepare-stockholm`, not committed
|
|
stockholm/
|
|
|
|
!pkg/service/stockholm/
|
|
|
|
# Stockholm source zip — large binary, place manually at stockholm_zip/stockholm.zip
|
|
stockholm_zip/*.zip
|
|
|
|
# Local working-tree notes — running pickup-here log (NEXT) + archive of
|
|
# resolved items (DONE). Both are session-local scratch, not project docs.
|
|
NEXT.md
|
|
DONE.md
|
|
|
|
# Plan/tracking note for the Health-tab debug-utility programme.
|
|
# Living document; commit history of the checks themselves is the
|
|
# source of truth for what shipped.
|
|
SERVICE-HEALTH.md
|
|
|
|
# Diagnostic encryption keys — private key stays local with the maintainer
|
|
keys/private/
|