Skip to content

(CODUX-223) Build the Automation Credentials integration detail - #3060

Merged
numnx merged 2 commits into
feature/CODUX-223-complete-automation-credential-managementfrom
task/feature-codux-22-t06-codex-8c59d1d6-mrjr9b3i
Jul 13, 2026
Merged

(CODUX-223) Build the Automation Credentials integration detail#3060
numnx merged 2 commits into
feature/CODUX-223-complete-automation-credential-managementfrom
task/feature-codux-22-t06-codex-8c59d1d6-mrjr9b3i

Conversation

@numnx

@numnx numnx commented Jul 13, 2026

Copy link
Copy Markdown
Collaborator

🧩 Task: Build the Automation Credentials integration detail

Automated task PR opened by Code UX for T06.

📋 Summary

Sprint: Sprint 223 · Complete automation credential management · Task: T06

Deliver a production-ready, write-only Automation Credentials experience with automatic secure local key custody, fail-closed production behavior, first-class Settings management, policy-aware node-flow and custom-dashboard credential-ID bindings, complete security coverage, and synchronized documentation.

🤖 Model & Provider

Provider Codex CLI
Model gpt-5.6-sol

⏱️ Timing

Started 2026-07-13 21:49:32 UTC
Finished 2026-07-13 22:26:55 UTC
Duration 37m 24s

📊 Token Usage

Metric Value
Input tokens 1,073,635
Cached input tokens 24,560,128
Output tokens 61,178
Total tokens 25,694,941
Invocations 1
Tool calls 109
Active time 36m 44s

Included usage estimate (subscription/local login): $19.48

✅ QA Review

⏳ QA review runs after this PR is opened. Check the task card in the dashboard for the outcome once it lands.

📝 Full Task Prompt
## Objective
Replace the standalone expanded credential form with the first standard Settings integration entry and a production-grade project-aware management detail view.

## Scope
- Edit `dashboard/src/v2/hooks/use-settings-page-state.ts` at `IntegrationId` and `INTEGRATIONS`
- Edit `dashboard/src/v2/components/settings/panels/SettingsIntegrationsPanel.tsx`
- Refactor `dashboard/src/v2/components/settings/AutomationCredentialManager.tsx` and create focused components beside it as needed
- Edit `dashboard/src/v2/lib/automation-credential-api.ts`
- Extend `dashboard/src/v2/components/settings/__tests__/AutomationCredentialManager.test.tsx`, `dashboard/src/v2/lib/__tests__/automation-credential-api.test.ts`, and `tests/dashboard/v2/settings-integrations-panel.test.tsx`

## Implementation Requirements
1. Register `automation-credentials` as the first normal Integrations catalog entry and remove the always-expanded manager above the catalog; reuse existing card, Manage navigation, detail/back, responsive, and focus-management patterns.
2. Derive clear unavailable, ready/unconfigured, and configured states from credential health and project-visible metadata, with actionable setup guidance that never displays key material.
3. Build explicit create controls for name, kind, project/global scope, allowed projects, and capabilities; require deliberate capability selection rather than submitting a hidden `read` grant.
4. Support metadata rename, test, rotate/replace, monotonic access restriction, confirmed promotion, and revoke with typed inline success/error feedback, loading/disabled states, stale-version handling, and confirmation for destructive or scope-expanding actions.
5. Treat every secret input as write-only: never populate it from a response, clear it after every submission outcome and project change, remove it on component teardown, and keep it out of reusable credential metadata/browser stores.
6. Keep project-owned versus globally accessible credentials understandable, prevent management actions when the selected project lacks management authority, and render long names, capabilities, and allowlists responsively.
7. Provide semantic labels, keyboard-operable cards/dialogs/actions, visible focus, focus restoration after detail and confirmation flows, live status announcements, and deliberate empty/loading/error/unavailable states.
8. Add tests proving card placement, normal Manage navigation, health states, lifecycle actions, actionable validation errors, confirmation guards, secret-field clearing, keyboard operation, and focus restoration.

## Constraints
- Consume T01/T02 health and lifecycle contracts; do not introduce client-only protocol shapes or duplicate backend policy.
- Reuse existing Preact, Tailwind, icon, modal, notice, and Settings integration primitives without new dependencies.
- Do not expose key IDs as secrets, raw server errors, request bodies, or secret values in notices or rendered debug content.
- Preserve the rest of the integration catalog's ordering and behavior after inserting the new first entry.

## Verification
- Run `pnpm exec vitest run dashboard/src/v2/components/settings/__tests__/AutomationCredentialManager.test.tsx dashboard/src/v2/lib/__tests__/automation-credential-api.test.ts tests/dashboard/v2/settings-integrations-panel.test.tsx`.
- Run `pnpm run typecheck:dashboard`, `pnpm run test:dashboard`, and `pnpm run build`.
- At `http://localhost:4444`, verify keyboard-only navigation from the first credential card through create, rotate, test, restrict, revoke, back navigation, and unavailable-key guidance at desktop and narrow viewport widths.
🌿 Branch Info

Base: feature/CODUX-223-complete-automation-credential-management
Head: task/feature-codux-22-t06-codex-8c59d1d6-mrjr9b3i


🤖 Generated by Code UX

@numnx
numnx merged commit 60bbd2b into feature/CODUX-223-complete-automation-credential-management Jul 13, 2026
20 checks passed
@numnx
numnx deleted the task/feature-codux-22-t06-codex-8c59d1d6-mrjr9b3i branch July 13, 2026 23:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant