Skip to content

fix(failover): keep Tailscale errors terse - #622

Merged
Kyzcreig merged 1 commit into
mainfrom
fix/tailscale-two-word-errors
Aug 20, 2026
Merged

Kyzcreig merged 1 commit into
mainfrom
fix/tailscale-two-word-errors

Conversation

@Kyzcreig

Copy link
Copy Markdown
Collaborator

Summary

Follow-up to #621: enforce Ace's final UX requirement that human-facing Tailscale outage errors are the two-word causal label Tailscale down.

  • Status buffer: ⚠️ Tailscale down
  • Terminal failure: Tailscale down
  • Manual /model rejection: Tailscale down
  • Detailed route count, routes, session, evidence, and remediation remain in diagnostics only.

Verification

  • 36 focused tests passed
  • Ruff passed on all changed files
  • git diff --check passed

@Kyzcreig
Kyzcreig enabled auto-merge August 20, 2026 04:21
@Kyzcreig
Kyzcreig added this pull request to the merge queue Aug 20, 2026
Merged via the queue into main with commit 738c5bb Aug 20, 2026
44 checks passed
@Kyzcreig
Kyzcreig deleted the fix/tailscale-two-word-errors branch August 20, 2026 04:34
@Kyzcreig
Kyzcreig restored the fix/tailscale-two-word-errors branch September 21, 2026 10:31
Kyzcreig added a commit that referenced this pull request Sep 25, 2026
Kyzcreig added a commit that referenced this pull request Sep 25, 2026
…621)"

This reverts commit 7a4455f, stacked on the clean #622 revert (6c344e3).

Hand-resolved (audit t_712c13f2, DROP):
- agent/chat_completion_helpers.py, agent/conversation_loop.py: drop the
  Tailscale preflight blocks (HEAD carried only cosmetic later edits to them);
  inline _POOLED_PROVIDERS = frozenset({claude-apr, claude-bpr}) since #913
  imported _TAILSCALE_RELAY_PROVIDERS from the deleted module.
- tests/agent/test_error_classifier.py: drop tailscale_down from the enum
  list, keep the later pool_stalled member.

Verified: test-gate pytest tests/agent/test_error_classifier.py
tests/agent/test_fallback_reason_surfacing.py tests/agent/test_fallback_reason_threading.py
-> 166 passed; tests/hermes_cli/test_user_providers_model_switch.py
tests/run_agent/test_primary_runtime_restore.py -> 63 passed, 2 failed
(same 2 node ids fail on clean origin/main 59102f4: inherited).
Kyzcreig added a commit that referenced this pull request Sep 25, 2026
Kyzcreig added a commit that referenced this pull request Sep 25, 2026
…621)"

This reverts commit 7a4455f, stacked on the clean #622 revert (6c344e3).

Hand-resolved (audit t_712c13f2, DROP):
- agent/chat_completion_helpers.py, agent/conversation_loop.py: drop the
  Tailscale preflight blocks (HEAD carried only cosmetic later edits to them);
  inline _POOLED_PROVIDERS = frozenset({claude-apr, claude-bpr}) since #913
  imported _TAILSCALE_RELAY_PROVIDERS from the deleted module.
- tests/agent/test_error_classifier.py: drop tailscale_down from the enum
  list, keep the later pool_stalled member.

Verified: test-gate pytest tests/agent/test_error_classifier.py
tests/agent/test_fallback_reason_surfacing.py tests/agent/test_fallback_reason_threading.py
-> 166 passed; tests/hermes_cli/test_user_providers_model_switch.py
tests/run_agent/test_primary_runtime_restore.py -> 63 passed, 2 failed
(same 2 node ids fail on clean origin/main 59102f4: inherited).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant