@underactive/pi-topping 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  We garnish our pies. It seemed rude not to extend Pi the same courtesy. This is a [Pi](https://github.com/earendil-works/pi-coding-agent) extension that adds some quality of life improvements to Pi's UX, while looking good in the process:
4
4
 
5
- **User Prompt** — high-vis bordered prompt box with configurable border color and style, pi icon toggle, timestamp, and provider/model label.
5
+ **User Prompt** — high-vis bordered prompt box with configurable border color and style, pi icon toggle, timestamp, and provider/model label. Prompts submitted while Pi is working (steer / `Alt+Enter` follow-up) are left undecorated so Pi's native `Steering:` / `Follow-up:` queue rows still render.
6
6
 
7
7
  ![Example of pi-topping's decorated user prompt](https://raw.githubusercontent.com/underactive/pi-topping/main/media/demo_user_prompt.png)
8
8
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@underactive/pi-topping",
3
- "version": "0.5.0",
3
+ "version": "0.5.1",
4
4
  "description": "A Pi extension that adds quality of life improvements to Pi's UX: a high-vis user prompt, a shimmering working loader with token activity meter and elapsed timer, and an end-of-turn completion marker",
5
5
  "keywords": ["pi-package", "pi-extension"],
6
6
  "license": "MIT",
package/src/session.ts CHANGED
@@ -154,10 +154,7 @@ export class SessionManager {
154
154
  borderStyle: this.#settings.decorations.borderStyle,
155
155
  },
156
156
  },
157
- {
158
- triggerTurn: true,
159
- ...(event.streamingBehavior ? { deliverAs: event.streamingBehavior } : {}),
160
- },
157
+ { triggerTurn: true },
161
158
  );
162
159
  return { action: "handled" };
163
160
  }
@@ -303,8 +300,19 @@ export class SessionManager {
303
300
  return !!ctx.hasUI && ctx.mode !== "print";
304
301
  }
305
302
 
303
+ /**
304
+ * Mid-stream inputs (steer/follow-up) must pass through untouched: re-sending them via
305
+ * sendMessage(deliverAs) bypasses Pi's queue state, so the "Steering:"/"Follow-up:" rows
306
+ * below the editor never render (issue #2).
307
+ */
306
308
  private shouldDecorate(event: InputEvent): boolean {
307
- return event.source !== "extension" && !!event.text.trim() && !event.images?.length && !/^[\/!?:]/.test(event.text);
309
+ return (
310
+ !event.streamingBehavior &&
311
+ event.source !== "extension" &&
312
+ !!event.text.trim() &&
313
+ !event.images?.length &&
314
+ !/^[\/!?:]/.test(event.text)
315
+ );
308
316
  }
309
317
 
310
318
  /**