aboutsummaryrefslogtreecommitdiffstats
path: root/docs/superpowers/plans/2026-10-23-companion.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/superpowers/plans/2026-10-23-companion.md')
-rw-r--r--docs/superpowers/plans/2026-10-23-companion.md5
1 files changed, 4 insertions, 1 deletions
diff --git a/docs/superpowers/plans/2026-10-23-companion.md b/docs/superpowers/plans/2026-10-23-companion.md
index 371e9fa..3543b88 100644
--- a/docs/superpowers/plans/2026-10-23-companion.md
+++ b/docs/superpowers/plans/2026-10-23-companion.md
@@ -281,6 +281,9 @@ for (let i = 0; i < ladder.length; i++) {
assert.strictEqual(state(all), ladder[i][0], "everything from " + ladder[i][0] + " down");
}
+// Shoved has a frame of its own: knocked off balance, glaring at the balloon.
+assert.deepStrictEqual(M.pick(calm({ shoved: true })), { state: "shoved", frame: "shoved" });
+
// Idle levels and their frames.
assert.deepStrictEqual(M.pick(calm({ idle: 1 })), { state: "bored", frame: "sleepy" });
assert.deepStrictEqual(M.pick(calm({ idle: 2 })), { state: "yawn", frame: "yawn" });
@@ -396,7 +399,7 @@ function pick(s) {
if (since < T.destruct) return st("destruct", "base");
if (since < T.destruct + T.scorched) return st("scorched", "scorched");
if (s.dodging) return st("dodge", "base");
- if (s.shoved) return st("shoved", "mad");
+ if (s.shoved) return st("shoved", "shoved");
if (s.recording) return st("listen", "listen");
if (s.busy) return st("think", "think");
if (s.now - s.repliedAt < T.waveHold) return st("wave", "wave");