test(providers): align cogitate tests with new _build_llm/diagnostic tier
Three tests on main went stale against this branch's openhands.py
changes and were outside the branch's focused validation set:
- test_run_cogitate_invokes_restore / test_run_cogitate_error_before_
usage_baseline_omits_usage patch _build_llm with fakes whose
signatures predate the keyword-only num_retries parameter run_cogitate
now passes; give the fakes the matching keyword.
- test_tier_inventory_matches_capabilities hardcoded "sol" as always
present, which the new diagnostic tier (sol/reads/submit all False)
violates by design; derive expected tools from caps.sol and caps.reads
so the invariant holds for a sol-less tier.
No production behavior changed; only test doubles/expectations updated to
match the contract this branch already established.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>