base red: subsession_trust_inherit fails over on a sign-in failure, as #27924 made the rule

LA
6d ago
+7-3

Summary

Base red on feat: acpmux::subsession_trust_inherit a_full_access_chat_lends_its_folder_trust_to_sub_sessions_under_it fails at subsession_trust_inherit.rs:307 (left: "fake-full-fo", right: "fake-claims"): the failover case never fails over.

Culprit. #27924 (a1fc2c2e5ec, "recover turns after limits and gateway outages"). It made a usage limit stay on the current account and wait for its reset; only a sign-in failure fails over to the fallback profile. #27924 moved its own failover fixtures to a sign-in failure (FAKE_AUTH_FAIL, FAKE_CLAUDE_AUTH_FAIL), but this test still triggers failover with the stand-in's limit: prompt, a usage limit. Bisect on Linux; each run compiled its commit:

commitjobresult
38f2772e (#27924's parent)169c6d2apass
a1fc2c2e5ec (#27924)edb316c8FAIL at :307
feat 9e3b7aca99b7691fFAIL at :307

Fix (test only; the #27924 rule stands). The stand-in's limit: answers a sign-in failure ("Not logged in") under FAKE_AUTH_FAIL=1, as its slow-limit already does. The failover profile fake-full-fo sets FAKE_AUTH_FAIL=1. Without the variable, limit: is a usage limit as before, so every other test that uses it is unchanged.

Testing

runrefresult
green: the testhead fc658f4fLinux 8cae9c69, 53158fbf, 41a6dcd2: pass
every test named *limit* (166, the other limit: users unchanged)headLinux eb5f9d3b: 166 pass

Observed / Not run

Observed: the runs above. Not run: macOS (no platform code).

Changelog

none


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.


Summary by cubic

Fixes the subsession_trust_inherit failover test, which broke after #27924 made usage limits wait for a reset on the same account instead of failing over.

  • Makes the limit: stand-in response return a sign-in failure when FAKE_AUTH_FAIL=1, so the test's failover profile triggers a real failover.
  • Only that profile sets FAKE_AUTH_FAIL; all other tests using limit: still exercise the usage-limit path unchanged.