This release includes 4 breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
ReleasePort's take
Light signalAgent-fox v3.6.5 fixes a dry-run property test false positive where substring node IDs incorrectly matched (e.g., 's:1' matching inside 's:10'). The release also includes refactoring to consolidate dispatcher methods and clean up dead code.
Why it matters: Update to v3.6.5 if substring node ID false matches affect your dry-run property tests. Otherwise, routine maintenance—schedule with your normal upgrade cycle.
Summary
AI summaryFixed a dry‑run property test false positive when substring node IDs matched.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Bugfix | Medium |
Fix dry-run property test false positive on substring node ID match (`s:1` matching inside `s:10`) Fix dry-run property test false positive on substring node ID match (`s:1` matching inside `s:10`) Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
Fix `test_serial.py` import after `SerialRunner` removal from engine exports Fix `test_serial.py` import after `SerialRunner` removal from engine exports Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Refactor | Medium |
Consolidate `SinkDispatcher`'s 5 duck-typed dispatch methods into a single `_dispatch_optional` helper Consolidate `SinkDispatcher`'s 5 duck-typed dispatch methods into a single `_dispatch_optional` helper Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Refactor | Medium |
Split `persist_review_findings` into focused helpers for better readability Split `persist_review_findings` into focused helpers for better readability Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Refactor | Medium |
Remove 4 dead methods from `engine/engine.py` Remove 4 dead methods from `engine/engine.py` Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Refactor | Medium |
Consolidate orphaned exception classes (`TriageError`, `InvalidTransitionError`) under `AgentFoxError` base Consolidate orphaned exception classes (`TriageError`, `InvalidTransitionError`) under `AgentFoxError` base Source: llm_adapter@2026-05-21 Confidence: low |
— |
Full changelog
Changes
Refactoring
- Remove 4 dead methods from
engine/engine.py - Consolidate
SinkDispatcher's 5 duck-typed dispatch methods into a single_dispatch_optionalhelper - Consolidate orphaned exception classes (
TriageError,InvalidTransitionError) underAgentFoxErrorbase - Split
persist_review_findingsinto focused helpers for better readability
Bug Fixes
- Fix dry-run property test false positive on substring node ID match (
s:1matching insides:10) - Fix
test_serial.pyimport afterSerialRunnerremoval from engine exports
Full Changelog: https://github.com/agent-fox-dev/agent-fox/compare/v3.6.4...v3.6.5
Breaking Changes
- Removed dead methods from `engine/engine.py`
- Consolidated `SinkDispatcher` duck‑typed dispatch methods into `_dispatch_optional` helper
- Renamed orphaned exception classes `TriageError`, `InvalidTransitionError` to inherit from `AgentFoxError`
- Split `persist_review_findings` into focused helpers
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Agent-fox
All releases →Related context
Related tools
Beta — feedback welcome: [email protected]