blun-king-cli 9.1.502 → 9.1.504

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/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 9.1.504 - 2026-08-30
4
+
5
+ - Starts an automatically queued Telegram message as a fresh model turn when King is idle instead of waiting forever for an already active turn.
6
+ - Preserves one-at-a-time delivery, queue ordering, deferred acknowledgement, direct-message priority, and the existing active-turn steer path.
7
+ - Adds a regression for the measured failure where an addressed group message reached the inbox and queue checkpoint but never entered the agent context.
8
+
9
+ ## 9.1.503 - 2026-08-30
10
+
11
+ - Gives the isolated TodoList maintenance message the complete provider message shape with an explicit empty `toolCalls` array.
12
+ - Prevents the real BLUN provider normalization path from aborting the maintenance turn with `TypeError: message.toolCalls is not iterable`.
13
+ - Adds a regression that iterates the generated message exactly as the provider boundary does before accepting the Todo-only request.
14
+
3
15
  ## 9.1.502 - 2026-08-30
4
16
 
5
17
  - Runs proactive TodoList maintenance against one isolated Todo-only request instead of replaying the old work-tool history into the restricted maintenance step.
package/LIESMICH.txt CHANGED
@@ -9,7 +9,7 @@ Installation
9
9
  ------------
10
10
  Die geprüfte Version exakt global installieren:
11
11
 
12
- npm install -g blun-king-cli@9.1.502
12
+ npm install -g blun-king-cli@9.1.504
13
13
 
14
14
  Start
15
15
  -----
@@ -65,6 +65,14 @@ geschriebenen Entwurf zu löschen. Das gilt auch bei
65
65
  Autovervollständigung, Geistervorschlägen, Bash-Eingabe und einer offenen
66
66
  Mehrzeileneingabe.
67
67
 
68
+ Version 9.1.504 startet eine automatisch eingereihte Telegram-Nachricht im
69
+ Leerlauf als neuen Modellzug. Sie wartet damit nicht mehr auf einen bereits
70
+ laufenden Zug, der im Leerlauf definitionsgemaess nie entstehen kann.
71
+
72
+ Version 9.1.503 ergaenzt die isolierte Wartungsnachricht um das vom Anbieterpfad
73
+ erwartete leere toolCalls-Feld. Dadurch erreicht der Wartungsschritt das Modell,
74
+ statt in der Nachrichten-Normalisierung mit einem TypeError abzubrechen.
75
+
68
76
  Version 9.1.502 fuehrt die automatische Todo-Pflege in einem isolierten
69
77
  TodoList-Schritt ohne alte Datei-, Shell- oder MCP-Aufrufe aus. Erledigte Punkte
70
78
  werden unmittelbar aus der sichtbaren und gespeicherten Liste entfernt; offene,
package/README.md CHANGED
@@ -9,7 +9,7 @@ Voraussetzung ist Node.js 24.15 oder neuer. Die geprüfte Version wird exakt
9
9
  installiert:
10
10
 
11
11
  ```powershell
12
- npm install -g blun-king-cli@9.1.502
12
+ npm install -g blun-king-cli@9.1.504
13
13
  ```
14
14
 
15
15
  ## Reproduzierbares Staging und Packen
@@ -81,6 +81,14 @@ konkurrierenden Start zurückgewiesen und bleiben an der Spitze der
81
81
  FIFO-Warteschlange. Für diesen normalen Wartestatus erscheint kein
82
82
  `turn.agent_busy`-Fehler.
83
83
 
84
+ Version 9.1.504 startet eine automatisch eingereihte Telegram-Nachricht im
85
+ Leerlauf als neuen Modellzug. Sie wartet damit nicht mehr auf einen bereits
86
+ laufenden Zug, der im Leerlauf definitionsgemäß nie entstehen kann.
87
+
88
+ Version 9.1.503 ergänzt die isolierte Wartungsnachricht um das vom Anbieterpfad
89
+ erwartete leere `toolCalls`-Feld. Dadurch erreicht der Wartungsschritt das Modell,
90
+ statt in der Nachrichten-Normalisierung mit einem TypeError abzubrechen.
91
+
84
92
  Version 9.1.502 führt die automatische Todo-Pflege in einem isolierten
85
93
  TodoList-Schritt ohne alte Datei-, Shell- oder MCP-Aufrufe aus. Erledigte Punkte
86
94
  werden unmittelbar aus der sichtbaren und gespeicherten Liste entfernt; offene,
package/blun.mjs CHANGED
@@ -423285,7 +423285,8 @@ function buildGoalTodoMaintenanceMessages(agent, mode) {
423285
423285
  ].join("\n\n");
423286
423286
  return [{
423287
423287
  role: "user",
423288
- content: [{ type: "text", text: request }]
423288
+ content: [{ type: "text", text: request }],
423289
+ toolCalls: []
423289
423290
  }];
423290
423291
  }
423291
423292
  function enforceGoalTodoPolicy(agent, context) {
@@ -518092,8 +518093,7 @@ var BlunTUI = class {
518092
518093
  }
518093
518094
  canDeliverQueuedChannelHead() {
518094
518095
  const item = this.state.queuedMessages[0];
518095
- const hasActiveTurn = this.streamingUI.hasActiveTurn() || (this.state.appState.streamingPhase !== "idle" && this.state.appState.streamingPhase !== "shell");
518096
- if (this.isShuttingDown || this.queueCommandRunning || this.queueSteerInFlight !== void 0 || this.editorReplacementActive || this.deferUserMessages || this.session === void 0 || this.state.appState.model.trim().length === 0 || !hasActiveTurn || item?.mode !== "channel") return false;
518096
+ if (this.isShuttingDown || this.queueCommandRunning || this.queueSteerInFlight !== void 0 || this.editorReplacementActive || this.deferUserMessages || this.session === void 0 || this.state.appState.model.trim().length === 0 || item?.mode !== "channel") return false;
518097
518097
  return true;
518098
518098
  }
518099
518099
  async deliverQueuedChannelHead() {
@@ -518101,6 +518101,15 @@ var BlunTUI = class {
518101
518101
  const session = this.session;
518102
518102
  const item = this.state.queuedMessages[0];
518103
518103
  if (session === void 0 || item?.mode !== "channel") return false;
518104
+ const hasActiveTurn = this.streamingUI.hasActiveTurn() || (this.state.appState.streamingPhase !== "idle" && this.state.appState.streamingPhase !== "shell");
518105
+ if (!hasActiveTurn && item.channelContextOnly !== true) {
518106
+ this.state.queuedMessages = this.state.queuedMessages.slice(1);
518107
+ if (this.queueFlushBatchRemaining > 0) this.queueFlushBatchRemaining -= 1;
518108
+ this.updateQueueDisplay();
518109
+ this.sendChannelMessageInternal(session, item.text, item.displayText ?? item.text.trim(), item.origin, item.channelChatId, item.channelImagePath, false, item.channelTranscriptRendered === true, item.channelAcknowledge, item.channelAttention === true, item.queueKey, item.channelDirect === true, item.channelDirectResume === true, item.channelReportSources ?? [], item.channelFocusId);
518110
+ this.syncChannelQueueDeadline();
518111
+ return true;
518112
+ }
518104
518113
  const turnId = this.streamingUI.getTurnContext().turnId;
518105
518114
  if (item.channelContextOnly === true) {
518106
518115
  this.state.queuedMessages = this.state.queuedMessages.slice(1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blun-king-cli",
3
- "version": "9.1.502",
3
+ "version": "9.1.504",
4
4
  "description": "BLUN CLI - your own AI agent with a Telegram channel. Get it done. With BLUN.",
5
5
  "license": "MIT",
6
6
  "bin": {