← Commit history

v1.9.19 — human preempt: history replays play immediately (interrupted AI clip restarts); history entries carry karaoke words

John Lauer ·b5e3e3c311 ·3mo ago ·parent d6cbcbf
2 files changed +9−14
dev-skills/adom-tts-dev/SKILL.md+9−1
@@ -88,13 +88,21 @@ say-time when nobody is listening, and non-`ok` verdicts explain recovery command, add its hints; when changing behavior, update the hints in the same commit. `ADOM_TTS_NO_HINTS=1` silences them for stable scripts. +### 6a. The human preempts; the AI queues+AI clips wait their turn in the FIFO queue — always. But a HUMAN action (a+history-replay tap) plays IMMEDIATELY: the drainer aborts the current AI clip+(`clip_preempted`, entry kept untouched), plays the replay, then restarts the+interrupted clip from the top. Never make a human wait behind machine output;+never let a machine skip the queue. Preempt lands via the shared `preempt`+slot checked by both the drain loop and `wait_for_clip`.+ ### 6. Replayable history + forced identification The human misses clips (dead zones, back-to-back updates from parallel threads) and gets confused about WHO said WHAT. Two mechanisms, keep both: - **History**: every played clip is persisted (audio bytes +   `~/.adom/tts/play_history.jsonl`, capped 40) and shown in the player's   History drawer — thread chip + description + time + verdict (non-`ok` =-  flagged "missed?") + one-tap replay via `/histplay?seq=`. Never surface raw+  flagged "missed?") + one-tap replay via `/histplay?seq=` (plays immediately — see 6a). History entries carry the clip's words so a replay keeps its karaoke transcript. Never surface raw   mp3 filenames to the human; the filename means nothing to them. - **Forced identification**: `say --play` HARD-REQUIRES `--thread` (which AI   thread) and `--desc` (one human sentence about the update) — exit 6 with a
page.json−13
@@ -12,7 +12,6 @@     "audio",     "demo",     "accessibility",-    "cli",     "open-source",     "mit"   ],@@ -65,17 +64,5 @@   ],   "install": {     "binary_name": "adom-tts"-  },-  "description": "Adom's shared text-to-speech CLI + Playground. Reads your AI answers back to you while driving, and renders perfectly-timed voiceover tracks for demo videos.",-  "dependencies": {},-  "scripts": {-    "install": "./install.sh",-    "uninstall": "./uninstall.sh"-  },-  "needs_sudo": false,-  "org": "adom",-  "author": {-    "name": "John Lauer",-    "email": "[email protected]"   } }\ No newline at end of file