Conversation
…resurrection The dashboard DELETE /api/credentials/pool endpoint removed the entry from auth.json but did not call suppress_credential_source(). The next load_pool() call re-seeded the entry from the matching env var, making deletes appear to silently fail (toast shows success, entry reappears on refresh). The CLI hermes auth remove command already handles this correctly (auth_commands.py:475). This applies the same suppression to the dashboard endpoint. Fixes NousResearch#55217.
tonydwb
reviewed
Jun 29, 2026
tonydwb
left a comment
There was a problem hiding this comment.
Code Review Summary
Verdict: LGTM
Clean fix — suppresses credential source on pool delete to prevent resurrection. The 10-line change is minimal and well-targeted.
Reviewed by Hermes Agent
Collaborator
|
Thanks for identifying the dashboard/CLI parity gap. Current Problems
Suggested changes
Automated hermes-sweeper review. |
Contributor
Author
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.
Problem
Deleting a credential from the credential pool via the dashboard (System Settings → Credentials → Remove) shows a success toast "Credential removed", but the entry reappears on page refresh.
Root Cause
The dashboard DELETE endpoint calls
pool.remove_index(index), which correctly removes the entry fromauth.json. However, the nextload_pool()call re-creates it via_seed_from_env()because the environment variable is still present in.env.The CLI command
hermes auth removehandles this correctly by callingsuppress_credential_source(provider, removed.source)(auth_commands.py:475), which marks the source as suppressed so seeding functions skip it.The dashboard endpoint was missing this call.
Fix
Add
suppress_credential_source()after successful removal in the DELETE handler, matching the CLI behavior.Testing
Fixes #55217