feat(vault): Secret Managers UI — connections + canary secrets#264
Open
LiorFink00 wants to merge 1 commit into
Open
feat(vault): Secret Managers UI — connections + canary secrets#264LiorFink00 wants to merge 1 commit into
LiorFink00 wants to merge 1 commit into
Conversation
Adds the operator-facing UI for the vault feature, under a new "Secret Managers" sidebar section with two tabbed pages: - VaultConnections: list/add/edit/test/remove secret-manager connections. The add/edit modal renders each vault plugin's config_schema (masked secret fields, leave-blank-to-keep on edit), mirroring the Integrations config form. - CanarySecrets: table of planted canaries (template, manager, path, state, last read); a Plant modal (pick a configured connection + template + path, with the template's suggested paths as one-click fills); a Reads modal showing recorded access-log entries. - api client: vault + canary methods on httpApi; vault types; "vault" added to PluginKind so /manifests vault entries type-check. - .nav-tabs style for the horizontal page tabs. - vault.test.ts covers the new api methods (request shape + auth header). Built fresh against the public-thumper UI conventions rather than ported from the enterprise pages (which are entangled with the excluded cockpit subsystem). tsc + vite build clean; 22 vitest tests pass. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018DARDAxeg4NM8FKoyGMQZy
7 tasks
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.
What
The operator-facing UI for the vault feature (Task 7, epic #255) — a new Secret Managers sidebar section with two tabbed pages, wired to the API from #262/#263.
VaultConnections(/vault)List / add / edit / test / remove secret-manager connections. The add/edit modal renders each vault plugin's
config_schema— masked secret fields,leave-blank-to-keepon edit — mirroring the existing Integrations config form. A connection showsconfiguredonce its test passes.CanarySecrets(/vault/secrets)suggested_pathsrender as one-click fills; a fake value is generated server-side).GET /vault/secrets/{id}/access-logs).Approach
Built fresh against public-thumper UI conventions (the
Integrations.tsxconfig-form pattern,Topbar/Modal/TimeAgo, the existing badge/table classes) rather than ported from the enterprise pages — those are 850+ lines entangled with the excluded cockpit subsystem.Details
httpApivault + canary methods; vault types;"vault"added toPluginKindso/manifestsvault entries type-check (verifiedpublic_manifests()returns both plugins askind: "vault")..nav-tabsCSS for the horizontal page tabs.vault.test.tscovers the new API methods (request path/method/body + auth header).Testing
tsc -b && vite buildclean; 22 vitest tests pass (5 new). No Python changed.Stacked
Based on #263 → #262 → #261 → #260 → #259 → #257. Merge those first; this rebases to just the UI.
🤖 Generated with Claude Code