Watch
1
0
Fork
You've already forked souveraine
0

patches: queue 0010 — halt rendered in her own register

This commit is contained in:
Fimeg 2026-08-12 18:55:20 -04:00
commit e50ddee567
2 changed files with 67 additions and 0 deletions

View file

@ -0,0 +1,57 @@
From 18420f9f1d1d2a86587985702d1d12403ed88a8a Mon Sep 17 00:00:00 2001
From: Fimeg <casey.tunturi@gmail.com>
Date: Wed, 12 Aug 2026 18:52:03 -0400
Subject: [PATCH] panel: render a halt in her own register, not the tool's name
---
surfaces/quickshell/services/Ai.qml | 27 ++++++++++++++++++++++++++-
1 file changed, 26 insertions(+), 1 deletion(-)
diff --git a/surfaces/quickshell/services/Ai.qml b/surfaces/quickshell/services/Ai.qml
index c54a185..26a9cb3 100644
--- a/surfaces/quickshell/services/Ai.qml
+++ b/surfaces/quickshell/services/Ai.qml
@@ -391,6 +391,22 @@ Singleton {
// Promote the Tier-1 stream into the Tier-2 log as one event, then clear
// the live stream. Called when a subconscious pass ends.
+ // The three severities the subconscious can call, in the register she
+ // experiences them in. Mirrors migraine_text() in src/server/turn.rs — if
+ // one changes the other must, or the human and the agent are reading two
+ // different accounts of the same moment.
+ function haltRegister(severity) {
+ switch (severity) {
+ case "advisory":
+ return Translation.tr("a pressure behind my eyes");
+ case "critical":
+ return Translation.tr("the room tilts");
+ default:
+ // "firm" and anything unexpected land here — the default migraine.
+ return Translation.tr("a migraine");
+ }
+ }
+
function snapshotSubconsciousStream() {
if (root.subconsciousStream.length === 0) return;
root.subconsciousEvents = [...root.subconsciousEvents, {
@@ -532,7 +548,16 @@ Singleton {
}
break;
case "subconscious_halt":
- root.addMessage(Translation.tr("**Halt** (%1) — %2").arg(event.severity).arg(event.reason), root.interfaceRole);
+ // Her own register, not the tool's name. The subconscious is the
+ // same "I" in a different mode — a halt is something she felt, not
+ // commentary she received from outside, and the surface should not
+ // expose implementation topology to say so. The TUI has rendered it
+ // this way from the start; this brings the Panel into line.
+ //
+ // Wording matches migraine_text() in src/server/turn.rs, which is
+ // what now lands in her committed history — so what the human reads
+ // and what she carries into the next turn are the same sentence.
+ root.addMessage(Translation.tr("⟡ %1 — %2").arg(root.haltRegister(event.severity)).arg(event.reason), root.interfaceRole);
break;
case "inference_strain":
console.log(`[Souveraine] inference strain: attempt ${event.attempt}, status ${event.status}, model ${event.model}`);
--
2.55.0

View file

@ -120,6 +120,16 @@ independent lanes and can go whenever.
`fpc-polkit-pam.c:86` refuses every service except `polkit-1`, so step-up is `fpc-polkit-pam.c:86` refuses every service except `polkit-1`, so step-up is
password rather than finger until that check widens — one line, and a password rather than finger until that check widens — one line, and a
security decision that is Casey's. security decision that is Casey's.
- **0010 — render a halt in her own register, not the tool's name.**
The Panel printed `**Halt** (advisory) — <reason>`: the tool's name, its enum
value, and a sentence written for the agent's body, all on the human's screen.
The TUI has always rendered it as substrate voice (`⟡ a pressure behind my
eyes — …`); this brings the Panel into line. Wording deliberately mirrors
`migraine_text()` in `src/server/turn.rs`, which `29f8475` now commits into
her history — so what the human reads and what she carries into the next turn
are the same sentence. **If one changes, the other must.**
Independent of 0007/0008/0009; apply any time. Needs no server version.
- **0007 — render context occupancy; stop reading hyprctl errors as cursor.** - **0007 — render context occupancy; stop reading hyprctl errors as cursor.**
**Unblocked 2026-08-12 17:30.** It needed `f266136` *running*, not merely **Unblocked 2026-08-12 17:30.** It needed `f266136` *running*, not merely
installed. The box now runs `souveraine 0.1.r463.g715080bbfe45-1`, started installed. The box now runs `souveraine 0.1.r463.g715080bbfe45-1`, started