2026-04-22 — Capture voice config edits from Temp-clone into main
Committed the uncommitted voice/config/Caddyfile and voice/config/livekit.yaml edits that were sitting in the Temp-clone working tree as of 2026-04-22. Captures the live EC2-deployed state into the canonical repo.
What changed
voice/config/Caddyfile— committed the edits that ran on the Temp clone on 2026-04-22 during the EC2 LiveKit bring-up. Key structural changes: added a globalservers { protocols h1 h2 }block to disable HTTP/3 (avoids UDP/443 clash with LiveKit TURN), removed thetransport http { versions h2c 1.1 }block on the reverse_proxy (was causing 502s against the HTTP/1.1 LiveKit upstream), and simplified logging to stdout.voice/config/livekit.yaml— committed the edits from the same session. Comment rewording around key generation;keys:map populated with the deployedAPIfragjuliaVoice01entry (value is the live EC2 secret, already present in EC2voice/.envand Vercel env per the v1 voice handover); whitespace cleanup on theroom:block.
Why
The Temp-clone at ~/AppData/Local/Temp/fragjulia/ on branch main held the on-host state of the 2026-04-22 EC2 voice bring-up as uncommitted edits. SSOT-3 (#643) moved these edits into the canonical C:\code\fragjulia-worktrees\main worktree via cp before removing the old clone, but the "commit interactively" step of #643 was never run — so the edits sat uncommitted. Without this capture, the canonical main did not reflect the deployed EC2 state, and any reconciliation against main would be auditing a ghost.
This is the R-0.1 prerequisite for the Voice Deploy Repair epic (drafted in a parallel session). R-1..R-10 of that epic all reconcile against main, and without this capture they would have been reconciling against the pre-bring-up YAML.
Scope
Operational capture only. No behavior change on EC2; this commit makes main match what is already running in production. No code path changes.
Note: voice/config/livekit.yaml is tracked in the repo and now contains the live APIfragjuliaVoice01 key value. This matches the long-standing pattern in this file (template-vs-live is a judgement call per section, not per file) and stays inside the private-repo trust boundary. The .env side of the credential split is unaffected.
Follow-ups
- SSOT-3 (#643) can be marked as acceptance-complete for the
voice/config/portion once this PR merges. - The Voice Deploy Repair epic can now open R-1 against
mainwith confidence that the base reflects the deployed state.
2026-04-22 — Ingest voice deploy handoffs into operations/
Triaged the two voice-deploy session handoffs out of OneDrive into apps/docs/content/docs/operations/ before
2026-04-22 — PAT rotation after internal leak audit
Rotated the GitHub Personal Access Token used by the local Claude Code harness after an internal audit surfaced leaked copies in allowedTools permission strings.