fix(ci): stabilize shared test state after 21012#25957
Conversation
|
thank you! there's two prod bugfixes in here aren't just fixes to existing CI tests, and you haven't added any new regression testing for them. i'm going to merge this given that it will unblock CI, but could you make a follow-up PR adding two tests? one asserting handoff-in-protected-head rehydration populates _previous_summary, and the continuity test adds messages to an existing fixture so compression triggers at all, but it doesn't explicitly assert "summary in protected head causes _previous_summary to be populated." the fix for bg-review has no assertion that _summarize_background_review_actions actually receives the messages. |
…-ci-unblocker-after-21012 fix(ci): stabilize shared test state after 21012
What does this PR do?
Stabilizes the shared test failures that remained after #21012 landed on
main.The fixes are intentionally small and CI-focused:
hermes updatetests from developer-local lazy backend activation stateRelated Issue
Related to the CI gate for the hermes-lcm context-engine merge train, including stephenschoettler/hermes-lcm#133. This does not close that issue.
Type of Change
Changes Made
run_agent.py: capturereview_agent._session_messagesbefore closing and clearingreview_agent.agent/context_compressor.py: find persisted handoff summaries from the first non-system message through the compression window, not only from the computed compress-start boundary.tests/conftest.py: resetagent.auxiliary_clientunhealthy-provider state per test.tests/hermes_cli/test_update_autostash.py: no-op active lazy-backend refresh in update-autostash tests.tests/providers/test_plugin_discovery.py: update the provider registry assertion from 33 profiles to 34.tests/run_agent/test_compression_feasibility.py: mock auxiliary provider resolution and includecustom_providersin expected calls.tests/agent/test_context_compressor_summary_continuity.py: keep a regression shape that actually compresses new turns after a persisted handoff.How to Test
./scripts/run_tests.sh -n 0 tests/agent/test_auxiliary_client.py tests/agent/test_context_compressor.py tests/agent/test_context_compressor_summary_continuity.py tests/hermes_cli/test_update_autostash.py tests/run_agent/test_provider_parity.py tests/providers/test_plugin_discovery.py tests/run_agent/test_background_review.py tests/run_agent/test_compression_feasibility.py -q --tb=shortgit diff --check && python -m compileall -q agent/context_compressor.py run_agent.py tests/conftest.py tests/agent/test_context_compressor_summary_continuity.py tests/hermes_cli/test_update_autostash.py tests/providers/test_plugin_discovery.py tests/run_agent/test_compression_feasibility.pypython -m ruff check agent/context_compressor.py run_agent.py tests/conftest.py tests/agent/test_context_compressor_summary_continuity.py tests/hermes_cli/test_update_autostash.py tests/providers/test_plugin_discovery.py tests/run_agent/test_compression_feasibility.pyValidation Status
378 passed in 62.78s.git diff --checkpassed.python -m compileall -q ...passed for touched files.python -m ruff check ...passed for touched files.pytest tests/ -qis not claimed here. A broader local non-integration run on this branch still showed unrelated current-main failures outside this focused unblocker scope, so this PR keeps the validation claim narrow.Checklist
Code
fix(scope):,feat(scope):, etc.)pytest tests/ -qand all tests passscripts/run_tests.shDocumentation & Housekeeping
docs/, docstrings) — N/Acli-config.yaml.exampleif I added/changed config keys — N/ACONTRIBUTING.mdorAGENTS.mdif I changed architecture or workflows — N/AScreenshots / Logs
Focused validation output: