blun-king-cli 9.1.154 → 9.1.156

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/LIESMICH.txt CHANGED
@@ -149,6 +149,10 @@ Ab BLUN King 9.1.147 schützt die Mikroverdichtung die neuesten zwölf Nachricht
149
149
 
150
150
  Ab BLUN King 9.1.148 werden auch im neuesten gemischten Telegram-Paket die ausdrücklich mit addressed=false markierten Kanalabschnitte verkleinert. Adressierte Abschnitte, Medien, Rohverlauf und Exporte bleiben unverändert. In Fredriks vermessenem Verlauf sinken elf nicht adressierte Abschnitte von 22.691 auf 2.750 Zeichen; das spart 19.941 Zeichen beziehungsweise rund 4.986 geschätzte Token pro wiederholter Anfrage.
151
151
 
152
+ Ab BLUN King 9.1.156 wiederholen gespeicherte Verweise auf Nutzernachrichten außerhalb der neuesten 20 Nachrichten ihre Vorschau mit Anfang und Ende nicht mehr bei jeder Modellanfrage. Wiederherstellungsmarkierung, Größenangaben, lesbarer Dateipfad, die neuesten 20 Nachrichten, Medien, Rohverlauf, vollständig gespeicherte Datei und Exporte bleiben unverändert. In Fredriks stabil vermessenem Schnappschuss werden fünf historische Verweise verkleinert und die Modellprojektion sinkt von 99.143 auf 96.001 Zeichen. Das spart weitere 3.142 Zeichen beziehungsweise rund 786 geschätzte Eingabetoken pro gleich aufgebauter Anfrage.
153
+
154
+ Ab BLUN King 9.1.155 werden gespeicherte Verweise auf Nutzernachrichten wiederhergestellt, bevor Textprojektionen den Hash der ursprünglichen Nachricht verändern können. Bestehende Auslagerungen bleiben dadurch wirksam, statt unbemerkt auf die projizierte vollständige Nachricht zurückzufallen. Rohverlauf, wiederlesbare Dateiverweise, die neuesten 20 Nachrichten, Medien und Exporte bleiben unverändert. In Fredriks stabil vermessenem Schnappschuss sinkt die Modellprojektion von 105.810 auf 99.143 Zeichen. Das spart weitere 6.667 Zeichen beziehungsweise rund 1.667 geschätzte Eingabetoken pro gleich aufgebauter Anfrage.
155
+
152
156
  Ab BLUN King 9.1.154 werden adressierte Telegram-Kanalabschnitte außerhalb der neuesten 20 Nachrichten auf eine 500 statt 1.000 Zeichen lange Vorschau mit Anfang und Ende begrenzt. Vollständige Kanalmetadaten, Anfang und Ende des Nachrichteninhalts, die neuesten 20 Nachrichten, Anhänge, Rohverlauf und Exporte bleiben unverändert. In Fredriks stabil vermessenem Schnappschuss werden sieben zusätzliche historische adressierte Abschnitte verkleinert. Das spart 3.500 Zeichen beziehungsweise rund 875 geschätzte Token pro wiederholter Anfrage.
153
157
 
154
158
  Ab BLUN King 9.1.153 bewahrt die Projektion historischer Telegram-Kontexte die vollständigen Kanalmetadaten und den schließenden Kanal-Tag. Gekürzt wird ausschließlich der Nachrichteninhalt. Selbst bei realen, 161 Zeichen langen Telegram-Metadaten bleibt die Struktur innerhalb des 250-Zeichen-Budgets gültig. Die Projektion ist idempotent, nachfolgende adressierte Kanäle bleiben unverändert, und ein Kanalumschlag, der bereits ohne Inhalt das Budget überschreitet, wird unverändert durchgereicht.
package/README.md CHANGED
@@ -157,6 +157,10 @@ Ab BLUN King 9.1.147 schützt die Mikroverdichtung die neuesten zwölf Nachricht
157
157
 
158
158
  Ab BLUN King 9.1.148 werden auch im neuesten gemischten Telegram-Paket die ausdrücklich mit addressed=false markierten Kanalabschnitte verkleinert. Adressierte Abschnitte, Medien, Rohverlauf und Exporte bleiben unverändert. In Fredriks vermessenem Verlauf sinken elf nicht adressierte Abschnitte von 22.691 auf 2.750 Zeichen; das spart 19.941 Zeichen beziehungsweise rund 4.986 geschätzte Token pro wiederholter Anfrage.
159
159
 
160
+ Ab BLUN King 9.1.156 wiederholen gespeicherte Verweise auf Nutzernachrichten außerhalb der neuesten 20 Nachrichten ihre Vorschau mit Anfang und Ende nicht mehr bei jeder Modellanfrage. Wiederherstellungsmarkierung, Größenangaben, lesbarer Dateipfad, die neuesten 20 Nachrichten, Medien, Rohverlauf, vollständig gespeicherte Datei und Exporte bleiben unverändert. In Fredriks stabil vermessenem Schnappschuss werden fünf historische Verweise verkleinert und die Modellprojektion sinkt von 99.143 auf 96.001 Zeichen. Das spart weitere 3.142 Zeichen beziehungsweise rund 786 geschätzte Eingabetoken pro gleich aufgebauter Anfrage.
161
+
162
+ Ab BLUN King 9.1.155 werden gespeicherte Verweise auf Nutzernachrichten wiederhergestellt, bevor Textprojektionen den Hash der ursprünglichen Nachricht verändern können. Bestehende Auslagerungen bleiben dadurch wirksam, statt unbemerkt auf die projizierte vollständige Nachricht zurückzufallen. Rohverlauf, wiederlesbare Dateiverweise, die neuesten 20 Nachrichten, Medien und Exporte bleiben unverändert. In Fredriks stabil vermessenem Schnappschuss sinkt die Modellprojektion von 105.810 auf 99.143 Zeichen. Das spart weitere 6.667 Zeichen beziehungsweise rund 1.667 geschätzte Eingabetoken pro gleich aufgebauter Anfrage.
163
+
160
164
  Ab BLUN King 9.1.154 werden adressierte Telegram-Kanalabschnitte außerhalb der neuesten 20 Nachrichten auf eine 500 statt 1.000 Zeichen lange Vorschau mit Anfang und Ende begrenzt. Vollständige Kanalmetadaten, Anfang und Ende des Nachrichteninhalts, die neuesten 20 Nachrichten, Anhänge, Rohverlauf und Exporte bleiben unverändert. In Fredriks stabil vermessenem Schnappschuss werden sieben zusätzliche historische adressierte Abschnitte verkleinert. Das spart 3.500 Zeichen beziehungsweise rund 875 geschätzte Token pro wiederholter Anfrage.
161
165
 
162
166
  Ab BLUN King 9.1.153 bewahrt die Projektion historischer Telegram-Kontexte die vollständigen Kanalmetadaten und den schließenden Kanal-Tag. Gekürzt wird ausschließlich der Nachrichteninhalt. Selbst bei realen, 161 Zeichen langen Telegram-Metadaten bleibt die Struktur innerhalb des 250-Zeichen-Budgets gültig. Die Projektion ist idempotent, nachfolgende adressierte Kanäle bleiben unverändert, und ein Kanalumschlag, der bereits ohne Inhalt das Budget überschreitet, wird unverändert durchgereicht.
@@ -45,6 +45,39 @@ function createUserMessagePreview(text) {
45
45
  ].join('\n');
46
46
  }
47
47
 
48
+ function compactHistoricalPersistedUserMessageReferences(messages) {
49
+ if (!Array.isArray(messages) || messages.length === 0) return messages;
50
+
51
+ const recentStart = Math.max(0, messages.length - USER_MESSAGE_KEEP_RECENT_MESSAGES);
52
+ return messages.map((message, index) => {
53
+ if (
54
+ index >= recentStart
55
+ || message?.role !== 'user'
56
+ || message.origin?.kind !== 'user'
57
+ || !Array.isArray(message.content)
58
+ ) return message;
59
+
60
+ let changed = false;
61
+ const content = message.content.map((part) => {
62
+ if (
63
+ part?.type !== 'text'
64
+ || typeof part.text !== 'string'
65
+ || !part.text.startsWith(`${USER_MESSAGE_OFFLOAD_MARKER}\n`)
66
+ || !part.text.includes('\noutput_path: ')
67
+ ) return part;
68
+ const previewIndex = part.text.indexOf('\n[preview: head and tail]\n');
69
+ if (previewIndex < 0) return part;
70
+ changed = true;
71
+ return {
72
+ ...part,
73
+ text: part.text.slice(0, previewIndex).trimEnd(),
74
+ };
75
+ });
76
+
77
+ return changed ? { ...message, content } : message;
78
+ });
79
+ }
80
+
48
81
  module.exports = {
49
82
  HISTORICAL_USER_MESSAGE_MAX_CHARS,
50
83
  USER_MESSAGE_MAX_CHARS,
@@ -52,6 +85,7 @@ module.exports = {
52
85
  USER_MESSAGE_OFFLOAD_MARKER,
53
86
  USER_MESSAGE_PREVIEW_LINES,
54
87
  USER_MESSAGE_PREVIEW_LINE_CHARS,
88
+ compactHistoricalPersistedUserMessageReferences,
55
89
  createUserMessagePreview,
56
90
  shouldOffloadHistoricalUserMessage,
57
91
  shouldOffloadUserMessage,
package/blun.mjs CHANGED
@@ -78964,8 +78964,10 @@ var init_context$2 = __esmMin((() => {
78964
78964
  }
78965
78965
  project(messages, options) {
78966
78966
  const anomalies = [];
78967
- const historicalTelegramProjected = projectHistoricalUnaddressedTelegramMessages(messages);
78968
- const result = project(this.agent.assistantMessageOffload.compact(this.agent.userMessageOffload.compact(this.agent.microCompaction.compact(this.agent.toolResultBatchOffload.compact(dedupeRecurringCronWakeups(dedupeRepeatedInjections(compactBaselineSkillInjections(historicalTelegramProjected))))))), {
78967
+ const userOffloaded = this.agent.userMessageOffload.compact(messages);
78968
+ const historicalUserReferencesProjected = compactHistoricalPersistedUserMessageReferences(userOffloaded);
78969
+ const historicalTelegramProjected = projectHistoricalUnaddressedTelegramMessages(historicalUserReferencesProjected);
78970
+ const result = project(this.agent.assistantMessageOffload.compact(this.agent.microCompaction.compact(this.agent.toolResultBatchOffload.compact(dedupeRecurringCronWakeups(dedupeRepeatedInjections(compactBaselineSkillInjections(historicalTelegramProjected)))))), {
78969
78971
  ...options,
78970
78972
  onAnomaly: (anomaly) => {
78971
78973
  anomalies.push(anomaly);
@@ -260619,7 +260621,7 @@ function renderPersistedUserMessage(text, outputPath) {
260619
260621
  createUserMessagePreview(text)
260620
260622
  ].join("\n");
260621
260623
  }
260622
- var USER_MESSAGE_MAX_CHARS, USER_MESSAGE_OFFLOAD_MARKER, shouldOffloadUserMessage, shouldOffloadHistoricalUserMessage, createUserMessagePreview;
260624
+ var USER_MESSAGE_MAX_CHARS, USER_MESSAGE_OFFLOAD_MARKER, shouldOffloadUserMessage, shouldOffloadHistoricalUserMessage, createUserMessagePreview, compactHistoricalPersistedUserMessageReferences;
260623
260625
  var init_user_message_offload = __esmMin((() => {
260624
260626
  const policy = createRequire(import.meta.url)("./bin/user-message-offload-policy.cjs");
260625
260627
  USER_MESSAGE_MAX_CHARS = policy.USER_MESSAGE_MAX_CHARS;
@@ -260627,6 +260629,7 @@ var init_user_message_offload = __esmMin((() => {
260627
260629
  shouldOffloadUserMessage = policy.shouldOffloadUserMessage;
260628
260630
  shouldOffloadHistoricalUserMessage = policy.shouldOffloadHistoricalUserMessage;
260629
260631
  createUserMessagePreview = policy.createUserMessagePreview;
260632
+ compactHistoricalPersistedUserMessageReferences = policy.compactHistoricalPersistedUserMessageReferences;
260630
260633
  }));
260631
260634
  var UserMessageOffload = class {
260632
260635
  agent;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blun-king-cli",
3
- "version": "9.1.154",
3
+ "version": "9.1.156",
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": {