@bike4mind/cli 0.2.31-fix-cli-ws-review-feedback.19589 → 0.2.31-fix-liveops-debug-truncation.19588

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.
@@ -3097,8 +3097,25 @@ IMPORTANT! Only when someone asks, remember that you are specifically the ${mode
3097
3097
  return;
3098
3098
  }
3099
3099
  } else {
3100
+ this.logger.info("[AnthropicBackend] Non-streaming request", {
3101
+ model,
3102
+ hasThinking: !!apiParams.thinking,
3103
+ thinkingBudget: apiParams.thinking?.budget_tokens,
3104
+ maxTokens: apiParams.max_tokens,
3105
+ temperature: apiParams.temperature,
3106
+ isThinkingEnabled: this.isThinkingEnabled
3107
+ });
3100
3108
  const response = await this._api.messages.create(apiParams, { signal: options.abortSignal });
3101
3109
  const streamedText = [];
3110
+ const contentTypes = "content" in response && Array.isArray(response.content) ? response.content.map((c) => c.type || (c.text ? "text" : "unknown")) : [];
3111
+ this.logger.info("[AnthropicBackend] Non-streaming response received", {
3112
+ model,
3113
+ stopReason: response.stop_reason,
3114
+ contentBlockCount: contentTypes.length,
3115
+ contentTypes: contentTypes.join(","),
3116
+ inputTokens: response.usage?.input_tokens,
3117
+ outputTokens: response.usage?.output_tokens
3118
+ });
3102
3119
  if ("content" in response && Array.isArray(response.content)) {
3103
3120
  if (this.isThinkingEnabled) {
3104
3121
  this.lastAssistantContent = response.content;
@@ -3107,12 +3124,21 @@ IMPORTANT! Only when someone asks, remember that you are specifically the ${mode
3107
3124
  const content = response.content[i];
3108
3125
  if ("text" in content) {
3109
3126
  streamedText.push(content.text);
3127
+ this.logger.debug("[AnthropicBackend] Text block extracted", {
3128
+ blockIndex: i,
3129
+ textLength: content.text.length
3130
+ });
3110
3131
  } else if ("type" in content) {
3111
3132
  if (content.type === "tool_use") {
3112
3133
  func[i] ||= {};
3113
3134
  func[i].name = content.name;
3114
3135
  func[i].id = content.id;
3115
3136
  func[i].parameters = JSON.stringify(content.input || {});
3137
+ } else if (content.type === "thinking") {
3138
+ this.logger.warn("[AnthropicBackend] Unexpected thinking block in response", {
3139
+ blockIndex: i,
3140
+ thinkingLength: content.thinking?.length || 0
3141
+ });
3116
3142
  }
3117
3143
  }
3118
3144
  }
@@ -4191,7 +4217,30 @@ ${modelIdentity}` : modelIdentity;
4191
4217
  translateChunk(model, chunk) {
4192
4218
  try {
4193
4219
  const response = chunk;
4220
+ const contentTypes = response.content.map((c) => c.type);
4221
+ const thinkingBlocks = response.content.filter((c) => c.type === "thinking");
4222
+ console.log(`[AnthropicBedrockBackend] Response received:`, {
4223
+ model,
4224
+ stopReason: response.stop_reason,
4225
+ contentBlockCount: response.content.length,
4226
+ contentTypes: contentTypes.join(","),
4227
+ hasThinkingBlocks: thinkingBlocks.length > 0,
4228
+ thinkingBlockCount: thinkingBlocks.length,
4229
+ inputTokens: response.usage?.input_tokens,
4230
+ outputTokens: response.usage?.output_tokens
4231
+ });
4232
+ if (thinkingBlocks.length > 0) {
4233
+ console.warn(`[AnthropicBedrockBackend] Unexpected thinking blocks in response`, {
4234
+ thinkingBlockCount: thinkingBlocks.length,
4235
+ thinkingLengths: thinkingBlocks.map((b) => b.thinking?.length || 0)
4236
+ });
4237
+ }
4194
4238
  const textContent = response.content.filter((item) => item.type === "text").map((item) => item.text || "").join("");
4239
+ console.log(`[AnthropicBedrockBackend] Text extracted:`, {
4240
+ textLength: textContent.length,
4241
+ textPreview: textContent.substring(0, 200),
4242
+ endsWithCloseBrace: textContent.trim().endsWith("}")
4243
+ });
4195
4244
  const toolUseBlocks = response.content.filter((item) => item.type === "tool_use");
4196
4245
  let choice;
4197
4246
  if (toolUseBlocks.length > 0) {
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  BadRequestError,
4
4
  secureParameters
5
- } from "./chunk-PV6PZFPC.js";
5
+ } from "./chunk-2VNZDV5G.js";
6
6
  import {
7
7
  CompletionApiUsageTransaction,
8
8
  GenericCreditDeductTransaction,
@@ -6,7 +6,7 @@ import {
6
6
  getSettingsByNames,
7
7
  obfuscateApiKey,
8
8
  secureParameters
9
- } from "./chunk-PV6PZFPC.js";
9
+ } from "./chunk-2VNZDV5G.js";
10
10
  import {
11
11
  ApiKeyType,
12
12
  MementoTier,
@@ -7,7 +7,7 @@ import {
7
7
  getSettingsMap,
8
8
  getSettingsValue,
9
9
  secureParameters
10
- } from "./chunk-PV6PZFPC.js";
10
+ } from "./chunk-2VNZDV5G.js";
11
11
  import {
12
12
  KnowledgeType,
13
13
  SupportedFabFileMimeTypes
@@ -3,7 +3,7 @@
3
3
  // package.json
4
4
  var package_default = {
5
5
  name: "@bike4mind/cli",
6
- version: "0.2.31-fix-cli-ws-review-feedback.19589+ddfe14a05",
6
+ version: "0.2.31-fix-liveops-debug-truncation.19588+0f8deb24d",
7
7
  type: "module",
8
8
  description: "Interactive CLI tool for Bike4Mind with ReAct agents",
9
9
  license: "UNLICENSED",
@@ -114,10 +114,10 @@ var package_default = {
114
114
  },
115
115
  devDependencies: {
116
116
  "@bike4mind/agents": "0.1.0",
117
- "@bike4mind/common": "2.52.1-fix-cli-ws-review-feedback.19589+ddfe14a05",
118
- "@bike4mind/mcp": "1.31.1-fix-cli-ws-review-feedback.19589+ddfe14a05",
119
- "@bike4mind/services": "2.50.1-fix-cli-ws-review-feedback.19589+ddfe14a05",
120
- "@bike4mind/utils": "2.7.1-fix-cli-ws-review-feedback.19589+ddfe14a05",
117
+ "@bike4mind/common": "2.52.1-fix-liveops-debug-truncation.19588+0f8deb24d",
118
+ "@bike4mind/mcp": "1.31.1-fix-liveops-debug-truncation.19588+0f8deb24d",
119
+ "@bike4mind/services": "2.50.1-fix-liveops-debug-truncation.19588+0f8deb24d",
120
+ "@bike4mind/utils": "2.7.1-fix-liveops-debug-truncation.19588+0f8deb24d",
121
121
  "@types/better-sqlite3": "^7.6.13",
122
122
  "@types/diff": "^5.0.9",
123
123
  "@types/jsonwebtoken": "^9.0.4",
@@ -138,7 +138,7 @@ var package_default = {
138
138
  optionalDependencies: {
139
139
  "@vscode/ripgrep": "^1.17.0"
140
140
  },
141
- gitHead: "ddfe14a053719e9c40186256e9302d05b5bcb0bd"
141
+ gitHead: "0f8deb24dc5533a9a70168218e1404c93df77f0a"
142
142
  };
143
143
 
144
144
  // src/utils/updateChecker.ts
@@ -3,7 +3,7 @@ import {
3
3
  fetchLatestVersion,
4
4
  forceCheckForUpdate,
5
5
  package_default
6
- } from "../chunk-YGJWTKUY.js";
6
+ } from "../chunk-RO6RODYS.js";
7
7
 
8
8
  // src/commands/doctorCommand.ts
9
9
  import { execSync } from "child_process";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  forceCheckForUpdate,
4
4
  package_default
5
- } from "../chunk-YGJWTKUY.js";
5
+ } from "../chunk-RO6RODYS.js";
6
6
 
7
7
  // src/commands/updateCommand.ts
8
8
  import { execSync } from "child_process";
@@ -2,8 +2,8 @@
2
2
  import {
3
3
  createFabFile,
4
4
  createFabFileSchema
5
- } from "./chunk-S6AUIWWB.js";
6
- import "./chunk-PV6PZFPC.js";
5
+ } from "./chunk-R3H2HVP3.js";
6
+ import "./chunk-2VNZDV5G.js";
7
7
  import "./chunk-PLA2VBQW.js";
8
8
  import "./chunk-PFBYGCOW.js";
9
9
  export {
package/dist/index.js CHANGED
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
  import "./chunk-GQGOWACU.js";
3
- import "./chunk-4P27WV34.js";
4
- import "./chunk-S6AUIWWB.js";
3
+ import "./chunk-EQTBH7XY.js";
4
+ import "./chunk-R3H2HVP3.js";
5
5
  import "./chunk-BPFEGDC7.js";
6
6
  import "./chunk-BDQBOLYG.js";
7
7
  import {
8
8
  getEffectiveApiKey,
9
9
  getOpenWeatherKey,
10
10
  getSerperKey
11
- } from "./chunk-DQHCE3TN.js";
11
+ } from "./chunk-PRIDVS62.js";
12
12
  import {
13
13
  ConfigStore,
14
14
  logger
@@ -16,7 +16,7 @@ import {
16
16
  import {
17
17
  checkForUpdate,
18
18
  package_default
19
- } from "./chunk-YGJWTKUY.js";
19
+ } from "./chunk-RO6RODYS.js";
20
20
  import {
21
21
  selectActiveBackgroundAgents,
22
22
  useCliStore
@@ -32,7 +32,7 @@ import {
32
32
  OpenAIBackend,
33
33
  OpenAIImageService,
34
34
  XAIImageService
35
- } from "./chunk-PV6PZFPC.js";
35
+ } from "./chunk-2VNZDV5G.js";
36
36
  import {
37
37
  AiEvents,
38
38
  ApiKeyEvents,
@@ -17361,7 +17361,6 @@ var WebSocketLlmBackend = class {
17361
17361
  settled = true;
17362
17362
  this.wsManager.offRequest(requestId);
17363
17363
  this.wsManager.offDisconnect(onDisconnect);
17364
- options.abortSignal?.removeEventListener("abort", abortHandler);
17365
17364
  action();
17366
17365
  };
17367
17366
  const settleResolve = () => settle(() => resolve3());
@@ -17371,16 +17370,19 @@ var WebSocketLlmBackend = class {
17371
17370
  settleReject(new Error("WebSocket connection lost during completion"));
17372
17371
  };
17373
17372
  this.wsManager.onDisconnect(onDisconnect);
17374
- const abortHandler = () => {
17375
- logger.debug("[WebSocketLlmBackend] Abort signal received");
17376
- settleResolve();
17377
- };
17378
17373
  if (options.abortSignal) {
17379
17374
  if (options.abortSignal.aborted) {
17380
17375
  settleResolve();
17381
17376
  return;
17382
17377
  }
17383
- options.abortSignal.addEventListener("abort", abortHandler, { once: true });
17378
+ options.abortSignal.addEventListener(
17379
+ "abort",
17380
+ () => {
17381
+ logger.debug("[WebSocketLlmBackend] Abort signal received");
17382
+ settleResolve();
17383
+ },
17384
+ { once: true }
17385
+ );
17384
17386
  }
17385
17387
  const updateUsage = (usage) => {
17386
17388
  if (usage) {
@@ -17718,35 +17720,27 @@ var WebSocketToolExecutor = class {
17718
17720
  const requestId = uuidv412();
17719
17721
  return new Promise((resolve3, reject) => {
17720
17722
  let settled = false;
17721
- let timeoutTimer;
17722
17723
  const settle = (action) => {
17723
17724
  if (settled) return;
17724
17725
  settled = true;
17725
- clearTimeout(timeoutTimer);
17726
17726
  this.wsManager.offRequest(requestId);
17727
17727
  this.wsManager.offDisconnect(onDisconnect);
17728
- abortSignal?.removeEventListener("abort", abortHandler);
17729
17728
  action();
17730
17729
  };
17731
17730
  const settleResolve = (result) => settle(() => resolve3(result));
17732
17731
  const settleReject = (err) => settle(() => reject(err));
17733
- const TOOL_TIMEOUT_MS = 5 * 60 * 1e3;
17734
- timeoutTimer = setTimeout(() => {
17735
- settleReject(new Error(`Tool execution timed out after ${TOOL_TIMEOUT_MS / 1e3}s`));
17736
- }, TOOL_TIMEOUT_MS);
17737
17732
  const onDisconnect = () => {
17738
17733
  settleReject(new Error("WebSocket connection lost during tool execution"));
17739
17734
  };
17740
17735
  this.wsManager.onDisconnect(onDisconnect);
17741
- const abortHandler = () => {
17742
- settleReject(new Error("Tool execution aborted"));
17743
- };
17744
17736
  if (abortSignal) {
17745
17737
  if (abortSignal.aborted) {
17746
17738
  settleReject(new Error("Tool execution aborted"));
17747
17739
  return;
17748
17740
  }
17749
- abortSignal.addEventListener("abort", abortHandler, { once: true });
17741
+ abortSignal.addEventListener("abort", () => settleReject(new Error("Tool execution aborted")), {
17742
+ once: true
17743
+ });
17750
17744
  }
17751
17745
  this.wsManager.onRequest(requestId, (message) => {
17752
17746
  if (message.action === "cli_tool_response") {
@@ -2,8 +2,8 @@
2
2
  import {
3
3
  findMostSimilarMemento,
4
4
  getRelevantMementos
5
- } from "./chunk-DQHCE3TN.js";
6
- import "./chunk-PV6PZFPC.js";
5
+ } from "./chunk-PRIDVS62.js";
6
+ import "./chunk-2VNZDV5G.js";
7
7
  import "./chunk-PLA2VBQW.js";
8
8
  import "./chunk-PFBYGCOW.js";
9
9
  export {
@@ -139,7 +139,7 @@ import {
139
139
  validateUrlForFetch,
140
140
  warmUpSettingsCache,
141
141
  withRetry
142
- } from "./chunk-PV6PZFPC.js";
142
+ } from "./chunk-2VNZDV5G.js";
143
143
  import {
144
144
  buildRateLimitLogEntry,
145
145
  isNearLimit,
@@ -2,8 +2,8 @@
2
2
  import {
3
3
  SubtractCreditsSchema,
4
4
  subtractCredits
5
- } from "./chunk-4P27WV34.js";
6
- import "./chunk-PV6PZFPC.js";
5
+ } from "./chunk-EQTBH7XY.js";
6
+ import "./chunk-2VNZDV5G.js";
7
7
  import "./chunk-PLA2VBQW.js";
8
8
  import "./chunk-PFBYGCOW.js";
9
9
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bike4mind/cli",
3
- "version": "0.2.31-fix-cli-ws-review-feedback.19589+ddfe14a05",
3
+ "version": "0.2.31-fix-liveops-debug-truncation.19588+0f8deb24d",
4
4
  "type": "module",
5
5
  "description": "Interactive CLI tool for Bike4Mind with ReAct agents",
6
6
  "license": "UNLICENSED",
@@ -111,10 +111,10 @@
111
111
  },
112
112
  "devDependencies": {
113
113
  "@bike4mind/agents": "0.1.0",
114
- "@bike4mind/common": "2.52.1-fix-cli-ws-review-feedback.19589+ddfe14a05",
115
- "@bike4mind/mcp": "1.31.1-fix-cli-ws-review-feedback.19589+ddfe14a05",
116
- "@bike4mind/services": "2.50.1-fix-cli-ws-review-feedback.19589+ddfe14a05",
117
- "@bike4mind/utils": "2.7.1-fix-cli-ws-review-feedback.19589+ddfe14a05",
114
+ "@bike4mind/common": "2.52.1-fix-liveops-debug-truncation.19588+0f8deb24d",
115
+ "@bike4mind/mcp": "1.31.1-fix-liveops-debug-truncation.19588+0f8deb24d",
116
+ "@bike4mind/services": "2.50.1-fix-liveops-debug-truncation.19588+0f8deb24d",
117
+ "@bike4mind/utils": "2.7.1-fix-liveops-debug-truncation.19588+0f8deb24d",
118
118
  "@types/better-sqlite3": "^7.6.13",
119
119
  "@types/diff": "^5.0.9",
120
120
  "@types/jsonwebtoken": "^9.0.4",
@@ -135,5 +135,5 @@
135
135
  "optionalDependencies": {
136
136
  "@vscode/ripgrep": "^1.17.0"
137
137
  },
138
- "gitHead": "ddfe14a053719e9c40186256e9302d05b5bcb0bd"
138
+ "gitHead": "0f8deb24dc5533a9a70168218e1404c93df77f0a"
139
139
  }