fix(auth): apply newer hosted bootstrap session - #64612
Merged
Merged
Conversation
Collaborator
Author
|
Independent review caught a blocking seed-validation gap. Follow-up commit |
Gravezzz
pushed a commit
to Gravezzz/hermes-agent
that referenced
this pull request
Jul 21, 2026
* fix(auth): apply newer hosted bootstrap session * fix(auth): validate rebootstrap replacement seeds
randlee
pushed a commit
to randlee/hermes-agent
that referenced
this pull request
Aug 11, 2026
* fix(auth): apply newer hosted bootstrap session * fix(auth): validate rebootstrap replacement seeds
33hodl
pushed a commit
to 33hodl/hermes-agent
that referenced
this pull request
Aug 12, 2026
* fix(auth): apply newer hosted bootstrap session * fix(auth): validate rebootstrap replacement seeds
prmartinow
pushed a commit
to prmartinow/hermes-agent
that referenced
this pull request
Aug 26, 2026
* fix(auth): apply newer hosted bootstrap session * fix(auth): validate rebootstrap replacement seeds
melon-xf
added a commit
to melon-xf/hermes-agent
that referenced
this pull request
Sep 3, 2026
* fix(auth): apply newer hosted bootstrap session * fix(auth): validate rebootstrap replacement seeds
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves #64610.
Production evidence
[rebootstrap] no-op (not_terminal)because the local old tokens still looked healthy.invalid_grant: Refresh session has been revoked.The affected hosted instance recorded 74 uptime resets in the sampled four-day window.
Root cause
NAS issues the replacement before restart and revokes the prior session. The boot helper only accepted
HERMES_AUTH_JSON_REBOOTSTRAPafter the local entry had already been quarantined. A still-present access/refresh token therefore made the helper reject the new seed, even though NAS had already revoked that local session.Changes
obtained_atis strictly newer than the local session.reseeded_newerbreadcrumb for production verification.Verification
uv run --quiet --with pytest python -m pytest tests/tools/test_docker_rebootstrap_nous_session.py tests/hermes_cli/test_nous_session_validity.py tests/hermes_cli/test_auth_nous_provider.py -q— 100 passeduv run --quiet --with ruff==0.15.10 ruff check scripts/docker_rebootstrap_nous_session.py tests/tools/test_docker_rebootstrap_nous_session.py— cleanbash -n docker/stage2-hook.sh— cleanpython -m compileall -q scripts/docker_rebootstrap_nous_session.py tests/tools/test_docker_rebootstrap_nous_session.py— cleangit diff --check— cleanExpected production impact
After NAS pushes a newly minted hosted bootstrap session, the first boot applies it instead of retaining the revoked predecessor. The follow-up refresh should succeed and the self-heal restart chain should stop after one cycle.
Trace-point suggestions
obtained_atplus the rebootstrap decision (terminal,newer,stale,incomparable) in the boot breadcrumb.nous_session_validand NAS remint telemetry so profile-scoped auth failures are attributable without SSH inspection.Not in this PR