osborn 0.9.46 → 0.9.47
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/dist/claude-llm.js +13 -0
- package/package.json +1 -1
package/dist/claude-llm.js
CHANGED
|
@@ -211,6 +211,19 @@ export class ClaudeLLM extends llm.LLM {
|
|
|
211
211
|
mcpServers: this.#mcpServers,
|
|
212
212
|
voiceMode: opts.voiceMode || 'realtime',
|
|
213
213
|
skipTTSQueue: opts.skipTTSQueue || false,
|
|
214
|
+
// CRITICAL: the PreCompact / PostCompact hooks call
|
|
215
|
+
// `this.#opts.onCompactionEvent?.(...)` to invoke the bridge to the
|
|
216
|
+
// frontend (chat-bubble + banner). Without including the callback in
|
|
217
|
+
// this whitelisted literal, callers can pass it correctly via opts but
|
|
218
|
+
// it's silently dropped during construction → hooks invoke undefined →
|
|
219
|
+
// no chat bubble appears. This was the real reason the compaction UI
|
|
220
|
+
// never showed up in 0.9.44–0.9.46 despite the wiring at every caller
|
|
221
|
+
// looking right. Confirmed 2026-05-28 by reading the live dist on Fly
|
|
222
|
+
// and seeing PreCompact/PostCompact emoji logs + the SDK iterator
|
|
223
|
+
// marker [COMPACT-SDK-ITER] firing while [COMPACT-AGENT-RX] never did.
|
|
224
|
+
// `onPermissionRequest` is handled separately via its own private field
|
|
225
|
+
// and does NOT need to be in this literal.
|
|
226
|
+
onCompactionEvent: opts.onCompactionEvent,
|
|
214
227
|
};
|
|
215
228
|
this.#eventEmitter = opts.eventEmitter || new EventEmitter();
|
|
216
229
|
console.log('🟠 ClaudeLLM initialized (Research Mode)');
|