Files
ai-agent-book/chapter9/hermes-self-evolution/review_task_3.md
T
liqiang b119135836
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
ai-agent-book 精选快照(<2MB 代码与文档,来自 github.com/bojieli/ai-agent-book)
2026-08-20 13:12:50 +00:00

25 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Third independent review: persistence boundary
The second correction still overclaims multimodal support. Inspection of the
actual persistence boundary found:
- `hermes_state.py` types `api_content` as `Optional[str]` and writes non-string
values as `None` (around lines 56325750 and 60786106);
- `run_agent.py` discards non-string `_row_api_content` during flush (around
lines 21042110);
- `agent/turn_context.py` exposes string-only sidecar helpers.
Thus a list sidecar is replayed within the in-memory loop but disappears after
persistence/resume, invalidating the claimed durable byte stability. Make the
smallest compatible correction: fail closed for non-string content and do not
attach the model status on unsupported multimodal/list messages. Do not widen
the database schema or persistence contract in this experiment.
Update tests to assert list, empty, mapping, and numeric values are rejected by
the same production helper, and that string sidecars remain stable across
three requests. Remove any multimodal-support claim from code comments and the
report. Run the focused tests, the existing replay/cache regression set,
compilation, and `git diff --check`; update the report with exact results.
Do not edit the book, commit, push, or claim downstream task improvement.