diff --git a/stacks/voices-seat/compose.yaml b/stacks/voices-seat/compose.yaml
index f3d1715..3173f70 100644
--- a/stacks/voices-seat/compose.yaml
+++ b/stacks/voices-seat/compose.yaml
@@ -48,6 +48,19 @@
# MEASURED RESIDENCY: 10,740 MiB, against a requested 0.11 x 94.97 GiB = 10,700 MiB — a 40 MiB
# miss on a box where the util fraction has been wrong by 8-10 GB in BOTH directions. Pinning
# --kv-cache-memory in bytes is what makes the fraction predictive; do not remove it.
+# ⚠⚠ CALLERS MUST SEND `chat_template_kwargs: {"enable_thinking": false}` OR EVERY VOICE
+# PREFIXES AN EMPTY `` BLOCK TO ITS OUTPUT. Measured live 2026-09-21 on
+# lv-mccarthy, and it is a property of the Qwen3-4B-Instruct CHAT TEMPLATE rather than of any
+# adapter -- so it applies to lv-yarros, lv-bronte and lv-hemingway too, and has done since
+# this seat went up on 2026-09-16:
+#
+# default -> '\n\n\n\nThere were no horses in the road...'
+# enable_thinking=false -> 'The sun was hot on the dry riverbed and the stones were red...'
+#
+# The r49 gate harness passes it (gen_beats_chat_yarros.py sets enable_thinking when the
+# template supports it), which is why no gate number is affected -- but a caller that does NOT
+# pass it gets 17 junk characters at the head of every passage, and a word-count or an
+# in-band check run over that string is measuring the tags as prose. Check Skaldsong.
name: voices-seat
services: