3.1 KiB
3.1 KiB
id, title, status, wave, depends_on, plan, spec
| id | title | status | wave | depends_on | plan | spec | |
|---|---|---|---|---|---|---|---|
| 04-manual-editor-migration | Existing manual editor migration | done | 2 |
|
plan.md | ../../specs/ui/requirements/settings-manual-save.md |
Task 04: Existing Manual Editor Migration
Acceptance
- Existing route-level Save controls register with the shared action and duplicate header/card/footer Save buttons are removed.
- Multi-card repository and nested profile forms keep independent dirty/error state while one Save covers all route contributors.
- SSH login-shell selection joins the executor-profile draft and no longer invokes profile persistence before the shared Save.
- New-resource routes and dialog/sheet Create, Save, and destructive actions retain their explicit local actions; only automation edit mode registers with the floating action.
Verification
cd apps && pnpm --filter @kandev/web test -- --run components/settings app/settings/agents app/settings/executors app/settings/workspace
cd apps/web && pnpm run typecheck
Files Likely Touched
apps/web/components/settings/settings-page-template.tsxapps/web/components/settings/unsaved-indicator.tsxapps/web/components/settings/editors-settings.tsxapps/web/components/settings/notifications-settings.tsxapps/web/components/settings/prompts-settings.tsxapps/web/components/settings/secrets-settings.tsxapps/web/app/settings/workspace/workspace-edit-client.tsxapps/web/app/settings/workspace/workspace-repositories-client.tsxapps/web/components/settings/repository-card.tsxapps/web/app/settings/agents/[agentId]/page.tsxapps/web/app/settings/agents/[agentId]/agent-setup-parts.tsxapps/web/app/settings/agents/[agentId]/profile-mcp-config-card.tsxapps/web/components/settings/agent-profile-page.tsxapps/web/components/settings/profile-edit/profile-edit-page-chrome.tsxapps/web/app/settings/executor/[id]/page.tsxapps/web/app/settings/executors/[profileId]/page.tsxapps/web/components/settings/ssh-agent-readiness-card.tsxapps/web/app/settings/executor/[id]/profile/[profileId]/page.tsxapps/web/components/automations/automation-editor.tsx
Dependencies
Task 01.
Inputs
- Spec: settings-wide coverage and overlay exceptions.
- Existing
SettingsPageTemplate,UnsavedSaveButton, repository dirty helpers, and profile save helpers.
Output Contract
Report migrated routes and intentional overlay exceptions, tests run, selector changes for E2E, files touched, blockers, and update task/plan status.
Result
- Migrated workspace, repository, agent/profile, executor/profile, MCP policy, editor, notification, and automation edit forms to route contributors.
- Folded SSH login-shell and automation trigger edits into their owning drafts; trigger writes now begin only after Save and partial retries do not recreate completed triggers.
- Retained explicit Create actions for new agents, profiles, executors, and automations, plus overlay-local and destructive commands.
- Verified with 113 focused settings and automation tests, web typecheck, and scoped ESLint.