feat(FR-2183): add keypair self-service management feature spec#6019
feat(FR-2183): add keypair self-service management feature spec#6019
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has required the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
f7893c0 to
4860b5c
Compare
3ae1e6a to
f0d6dee
Compare
There was a problem hiding this comment.
Pull request overview
Adds a feature specification and implementation plan for self-service keypair management (issue/revoke/activate/deactivate + switch main access key) in Backend.AI WebUI, including phased rollout and supporting planning/context artifacts.
Changes:
- Added a detailed feature spec with acceptance criteria and backend API references.
- Added an implementation dev plan with a stacked-PR/wave strategy and risks.
- Added planning context files tracking tasks, progress, and findings.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
.specs/FR-2183-keypair-self-service/spec.md |
Functional spec + acceptance criteria for keypair self-service + API references |
.specs/FR-2183-keypair-self-service/dev-plan.md |
Proposed wave-by-wave implementation plan and risks |
.specs/FR-2183-keypair-self-service/.context/tasks.md |
Issue/task checklist snapshot for the planned PR stack |
.specs/FR-2183-keypair-self-service/.context/progress.md |
Current planning progress and next action |
.specs/FR-2183-keypair-self-service/.context/findings.md |
Decisions/discoveries captured during planning |
f0d6dee to
c5b404c
Compare
ccf9f6d to
8c54740
Compare
7b17ce1 to
f9229aa
Compare
- Add component split strategy (MyKeypairInfoModalLegacy + MyKeypairManagementModal) - Add @SInCE fallback behavior for <26.4.0 backends - Add Popconfirm for main key switching - Add empty state UI for both tabs - Add BAITable column settings button - Add state transition UX (toast messages after actions) - Fix filter fields consistency (add createdAt, lastUsed to acceptance criteria) - Clarify IS_ACTIVE sort exclusion from UI - Clarify CSV download content and issue button visibility - Update affected components table to reflect new structure - Reflect PR #10415 payload changes (KeyPairGQL in mutations)
f9229aa to
c9e7624
Compare

Resolves #5675(FR-2183)
Summary
MyKeypairInfoModal)Spec highlights
keypair_listqueryModal.confirm()for deactivation,BAIConfirmModalWithInputfor deletion/revocation