@blockrun/franklin 3.15.25 → 3.15.26

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.
@@ -452,7 +452,18 @@ export function createProxy(options) {
452
452
  // Use the body with the correct fallback model for payment
453
453
  body = result.bodyUsed;
454
454
  usedFallback = result.fallbackUsed;
455
- if (usedFallback && !isTestFixtureModel(finalModel)) {
455
+ // Skip the success log when the request originated from a test
456
+ // fixture, even if the fallback ended on a real model. Verified
457
+ // on a real machine: 5 spurious "↺ Fallback successful: using
458
+ // deepseek/deepseek-chat" entries appeared in
459
+ // franklin-debug.log because the proxy timeout test uses
460
+ // `slow/model` (filtered) as the source but ends up on
461
+ // `deepseek/deepseek-chat` (not filtered). Check the
462
+ // failedModels array — any fixture in there means the call
463
+ // chain started in a test.
464
+ const fallbackTouchedFixture = result.failedModels.some(isTestFixtureModel) ||
465
+ isTestFixtureModel(finalModel);
466
+ if (usedFallback && !fallbackTouchedFixture) {
456
467
  logger.info(`[franklin] ↺ Fallback successful: using ${finalModel}`);
457
468
  }
458
469
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blockrun/franklin",
3
- "version": "3.15.25",
3
+ "version": "3.15.26",
4
4
  "description": "Franklin — The AI agent with a wallet. Spends USDC autonomously to get real work done. Pay per action, no subscriptions.",
5
5
  "type": "module",
6
6
  "exports": {