feat(active-memory): add timeout circuit breaker to skip recall after consecutive failures (#74054) (#74158)

This commit is contained in:
Logan Ye
2026-04-29 19:18:43 +08:00
committed by GitHub
parent d9c4fcf67d
commit 89cd2b6362
3 changed files with 251 additions and 0 deletions

View File

@@ -66,6 +66,8 @@
"persistTranscripts": { "type": "boolean" },
"transcriptDir": { "type": "string" },
"cacheTtlMs": { "type": "integer", "minimum": 1000, "maximum": 120000 },
"circuitBreakerMaxTimeouts": { "type": "integer", "minimum": 1, "maximum": 20 },
"circuitBreakerCooldownMs": { "type": "integer", "minimum": 5000, "maximum": 600000 },
"qmd": {
"type": "object",
"additionalProperties": false,
@@ -142,6 +144,14 @@
"label": "Enable Logging",
"help": "Emit active memory timing and result logs."
},
"circuitBreakerMaxTimeouts": {
"label": "Circuit Breaker Max Timeouts",
"help": "Skip recall after this many consecutive timeouts for the same agent/model. Resets on a successful recall or after the cooldown expires. Default: 3."
},
"circuitBreakerCooldownMs": {
"label": "Circuit Breaker Cooldown (ms)",
"help": "How long to skip recall after the circuit breaker trips, in milliseconds. Default: 60000 (1 minute)."
},
"persistTranscripts": {
"label": "Persist Transcripts",
"help": "Keep blocking memory sub-agent session transcripts on disk in a separate plugin-owned directory."