fix: preserve TextMentionTermination sources in config#7837
fix: preserve TextMentionTermination sources in config#7837maxpetrusenkoagent wants to merge 1 commit into
Conversation
|
@maxpetrusenkoagent please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
Contributor License AgreementContribution License AgreementThis Contribution License Agreement (“Agreement”) is agreed to by the party signing below (“You”),
|
Review-Fix Sweep — No Actionable BlockersHermes agent ran an automated review-fix lane on this PR. Verifier state:
Code diff review:
Conclusion: No code-level blockers found. The PR is ready for maintainer review pending CLA signing. |
Review-fix sweep: no actionable blockersI fetched the latest PR head and rechecked comments, inline review comments, reviews, checks, and recent workflow runs. Findings:
No code-level blocker was found in this sweep. Remaining state is process-side: the PR is still draft and requires maintainer review/workflow approval. |
|
@microsoft-github-policy-service agree |
Summary
TextMentionTerminationsourceswhen dumping/loading component configs.sourcesoptional and omitted when unset.Why
Issue #7487 asks for a mission-keeper style goal-integrity node. A practical building block already exists: a read-only integrity agent can emit a drift marker, and
TextMentionTerminationcan restrict that marker to the mission keeper source.Before this fix, saving/loading the termination condition dropped
sources, so any participant could trigger the marker after config round-trip.Addresses #7487.
Verification
.venv-agentchat/bin/python -m pytest packages/autogen-agentchat/tests/test_termination_condition.py::test_text_mention_termination_serializes_sources -qfailed becauseconfig.config.get("sources")wasNone..venv-agentchat/bin/python -m pytest packages/autogen-agentchat/tests/test_termination_condition.py::test_text_mention_termination_serializes_sources -qpassed..venv-agentchat/bin/python -m pytest packages/autogen-agentchat/tests/test_termination_condition.py -qpassed, 14 tests..venv-agentchat/bin/python -m ruff check packages/autogen-agentchat/src/autogen_agentchat/conditions/_terminations.py packages/autogen-agentchat/tests/test_termination_condition.pypassed..venv-agentchat/bin/python -m ruff format --check packages/autogen-agentchat/src/autogen_agentchat/conditions/_terminations.py packages/autogen-agentchat/tests/test_termination_condition.pypassed..venv-agentchat/bin/pyright --pythonpath .venv-agentchat/bin/python packages/autogen-agentchat/src/autogen_agentchat/conditions/_terminations.py packages/autogen-agentchat/tests/test_termination_condition.pypassed..venv-agentchat/bin/python -m build --wheel packages/autogen-agentchatpassed.Note: local disk was too constrained for a full workspace
uv runsync; verification used a minimal package-scoped venv withautogen-coreandautogen-agentchatinstalled editable.