# Changelog

## Score

- CAI 40 → 43 (+3.1)
- Rubric changed (rubric-2026.08.17 → rubric-2026.08.18) — scores are not directly comparable.

## Lenses

- Code Health 66 → 65 (-1.8)
- Architecture 100 → 100 (-0.1)
- Maturity 52 → 58 (+6.5)
- Readiness 37 → 43 (+5.5)
- Security 31 → 30 (-0.8)
- Domain Modelling 100 → 100 (+0.0)
- Accessibility 42 → 54 (+11.9)

## Resolved (512)

- 10_sse_reconnect.test_sse_reconnection (cognitive 62) (cookbook/05_agent_os/client/10_sse_reconnect.py)
- 10_sse_reconnect.test_sse_reconnection (cyclomatic 31) (cookbook/05_agent_os/client/10_sse_reconnect.py)
- 11_team_sse_reconnect.test_team_sse_reconnection (cognitive 62) (cookbook/05_agent_os/client/11_team_sse_reconnect.py)
- 11_team_sse_reconnect.test_team_sse_reconnection (cyclomatic 31) (cookbook/05_agent_os/client/11_team_sse_reconnect.py)
- 12_continue_run_sse_reconnect.test_continue_run_sse_reconnection (cognitive 51) (cookbook/05_agent_os/client/12_continue_run_sse_reconnect.py)
- 12_continue_run_sse_reconnect.test_continue_run_sse_reconnection (cyclomatic 33) (cookbook/05_agent_os/client/12_continue_run_sse_reconnect.py)
- 13_workflow_sse_reconnect.test_workflow_sse_reconnection (cognitive 63) (cookbook/05_agent_os/client/13_workflow_sse_reconnect.py)
- 13_workflow_sse_reconnect.test_workflow_sse_reconnection (cyclomatic 32) (cookbook/05_agent_os/client/13_workflow_sse_reconnect.py)
- DecisionLogStore.asearch (cyclomatic 20) (libs/agno/agno/learn/stores/decision_log.py)
- DecisionLogStore.search (cognitive 34) (libs/agno/agno/learn/stores/decision_log.py)
- DecisionLogStore.search (cyclomatic 20) (libs/agno/agno/learn/stores/decision_log.py)
- Duplicated block (10 lines × 2) (cookbook/05_agent_os/client/12_continue_run_sse_reconnect.py)
- Duplicated block (10 lines × 2) (libs/agno/agno/os/routers/components/components.py)
- Duplicated block (10 lines × 2) (libs/agno/agno/os/routers/teams/router.py)
- Duplicated block (10–11 lines × 2) (cookbook/04_workflows/08_human_in_the_loop/dual_level_hitl/05_output_review_and_tool_confirmation.py)
- Duplicated block (10–11 lines × 2) (libs/agno/agno/agents/claude/agent.py)
- Duplicated block (10–11 lines × 2) (libs/agno/agno/db/clickhouse/utils.py)
- Duplicated block (10–11 lines × 2) (libs/agno/agno/db/postgres/async_postgres.py)
- Duplicated block (10–11 lines × 2) (libs/agno/agno/db/postgres/postgres.py)
- Duplicated block (10–11 lines × 2) (libs/agno/agno/db/sqlite/async_sqlite.py)
- …and 492 more

## New (677)

- AsyncMongoDb.get_trace_stats (cyclomatic 16) (libs/agno/agno/db/mongo/async_mongo.py)
- AsyncPostgresDb.get_span_stats (cognitive 28) (libs/agno/agno/db/postgres/async_postgres.py)
- AsyncPostgresDb.get_span_stats (cyclomatic 22) (libs/agno/agno/db/postgres/async_postgres.py)
- AsyncSqliteDb.get_span_stats (cognitive 26) (libs/agno/agno/db/sqlite/async_sqlite.py)
- AsyncSqliteDb.get_span_stats (cyclomatic 21) (libs/agno/agno/db/sqlite/async_sqlite.py)
- Build action pinned to a mutable branch
- Change coupling: markdown_reader.py ↔ text_reader.py (libs/agno/agno/knowledge/reader/markdown_reader.py)
- ClickhouseDb.get_trace_stats (cognitive 16) (libs/agno/agno/db/clickhouse/clickhouse.py)
- Critical CVE: [GHSA redacted] (cookbook/91_tools/mcp/mcp_toolbox_demo/uv.lock)
- Critical CVE: [GHSA redacted] (cookbook/00_quickstart/requirements.txt)
- DbFileSystem.__init__ (cognitive 19) (libs/agno/agno/fs/db.py)
- DbFileSystem.append (cognitive 19) (libs/agno/agno/fs/db.py)
- DecisionLogStore._filter_decisions (cognitive 30) (libs/agno/agno/learn/stores/decision_log.py)
- DecisionLogStore._filter_decisions (cyclomatic 16) (libs/agno/agno/learn/stores/decision_log.py)
- Duplicated block (10 lines × 2) (libs/agno/agno/agent/_tools.py)
- Duplicated block (10 lines × 2) (libs/agno/agno/agents/claude/agent.py)
- Duplicated block (10 lines × 2) (libs/agno/agno/db/clickhouse/utils.py)
- Duplicated block (10 lines × 2) (libs/agno/agno/db/dynamo/dynamo.py)
- Duplicated block (10 lines × 2) (libs/agno/agno/db/firestore/firestore.py)
- Duplicated block (10 lines × 2) (libs/agno/agno/db/postgres/async_postgres.py)
- …and 657 more

## Changes since last survey

- 42 commits — 23 feature/other, 19 fixes

## By area

- libs/agno — 27 commits
- cookbook/13_filesystem — 2 commits
- cookbook/91_tools — 2 commits
- cookbook/environments — 2 commits
- .github/workflows — 1 commit
- cookbook/00_quickstart — 1 commit
- cookbook/03_teams — 1 commit
- cookbook/05_agent_os — 1 commit
- cookbook/07_knowledge — 1 commit
- cookbook/10_reasoning — 1 commit
- cookbook/90_models — 1 commit
- cookbook/filesystem — 1 commit
- cookbook/levels_of_agentic_software — 1 commit

## Notable commits

- fix: [fix] Cache Pydantic version lookup during tool wrapping (#9210)
- fix: [fix] Preserve nested team history in TeamSession.get_messages (#8968)
- fix: cookbook: fix learning-zone casualties, add _00_quickstart, rewrite the runner (#9076)
- fix: fix: Expose FileTools directory parameter (#9078)
- fix: fix: FileSystem tools carry no instructions; the developer composes them (#9172)
- fix: fix: Support string paths in CSVReader (#8822)
- fix: fix: Update Moonshot for kimi k3 Add Moonshot thinking controls and examples (#9057)
- fix: fix: accept null path args in skill script/reference tools (#9096)
- fix: fix: add explicit encoding="utf-8" to text-mode open() calls (#7984)
- fix: fix: add extraction_tool_call_limit to prevent infinite loops in learning stores (#9077)
- fix: fix: add team_id filter to get_team_history for nested team support (#8956)
- fix: fix: eliminate SQL injection in ClickHouse delete_by_metadata (#7883)
- fix: fix: errors when invoking tools with empty or missing arguments (#6303)
- fix: fix: map Scavio Google search params to v2 (gl/hl/start) (#9021)
- fix: fix: preserve explicit team member IDs (#9011)
- fix: fix: replace retired qwen/qwen3-32b with openai/gpt-oss-20b on Groq (#9055)
- fix: fix: resolve team member agents created via AgentOS UI/components API (#9072)
- fix: fix: serialize nested executor requirements (#9162)
- fix: fix: support stream_sub_agent_events in all context providers (#9098)
- change: [feat] Add Marengo video embeddings to TwelveLabsTools (#8973)
- …and 22 more
