2.7 KiB
2.7 KiB
id, title, status, wave, depends_on, plan, spec
| id | title | status | wave | depends_on | plan | spec |
|---|---|---|---|---|---|---|
| 01-frontend-link-menu | GitLab MR contextual link action | done | 1 | plan.md | ../../specs/gitlab-integration/spec.md |
Task 01: GitLab MR Contextual Link Action
Acceptance
- An unlinked task renders no generic GitLab
Link MRaction in desktop or mobile task top bars, while linked MR status/dropdown behavior is unchanged. - A GitLab-configured workspace exposes
GitLab Merge Requestin the shared taskLinksubmenu on kanban cards, desktop sidebar rows, and the mobile task switcher; unconfigured workspaces omit it. - Selecting the action opens the existing
TaskMRLinkDialogfor the selected task and active workspace with that task's repositories.
Files Likely Touched
apps/web/components/gitlab/mr-topbar-button.tsxapps/web/components/gitlab/mr-topbar-button.test.tsapps/web/components/kanban-external-link-availability.tsapps/web/components/kanban-card-menu-items.tsxapps/web/components/kanban-card-menu-items.test.tsxapps/web/components/kanban-card.tsxapps/web/components/task/task-switcher-context-menu.tsxapps/web/components/task/task-switcher.tsxapps/web/components/task/task-switcher.test.tsxapps/web/components/task/task-session-sidebar-link-actions.tsapps/web/components/task/task-session-sidebar-task-linking.tsapps/web/components/task/task-session-sidebar-dialogs.tsxapps/web/components/task/mobile/session-task-switcher-sheet.tsx
Inputs
- Spec
Whatbullets and the three contextual-link/top-bar scenarios. - Plan
Frontend,Mobile design contract, andTestssections. - Existing GitHub menu callback plumbing and
TaskGitHubPRDialogwiring. - Existing
TaskMRLinkDialog,useGitLabAvailable, and linked-MR top-bar dropdown behavior.
Implementation Notes
- Follow
/tddand/mobile-parity; do not spawn subagents. - Add the failing menu-policy/unit coverage before production changes.
- Keep the action label provider-specific:
GitLab Merge Request. - Preserve
Link another merge requestinside the linked-MR top-bar dropdown. - Do not add backend endpoints, state slices, or a second GitLab link dialog.
- Update only this task file's status. Do not edit
plan.md.
Verification
cd apps && pnpm --filter @kandev/web test -- --run components/kanban-card-menu-items.test.tsx components/task/task-switcher.test.tsx components/gitlab/mr-topbar-button.test.ts
cd apps/web && pnpm run typecheck
Output Contract
Report the behavior implemented, files changed, RED/GREEN evidence, targeted
test and typecheck results, mobile parity observations, blockers, and residual
risks. Set this task to in_progress before code changes and done only after
acceptance and verification pass.