Skip to content

(CODUX-227) Elevate task cards and action menus - #3076

Merged
numnx merged 2 commits into
feature/CODUX-227-production-grade-tasks-page-redesign-1from
task/feature-codux-22-t02-codex-22452321-mrjve1cm
Jul 14, 2026
Merged

(CODUX-227) Elevate task cards and action menus#3076
numnx merged 2 commits into
feature/CODUX-227-production-grade-tasks-page-redesign-1from
task/feature-codux-22-t02-codex-22452321-mrjve1cm

Conversation

@numnx

@numnx numnx commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator

🧩 Task: Elevate task cards and action menus

Automated task PR opened by Code UX for T02.

📋 Summary

Sprint: Sprint 227 · Production-grade Tasks page redesign · Task: T02

Deliver a production-grade Tasks board with a polished responsive workspace, tidy information-dense cards, dependency rows limited to task identifier and current status, accessible tokenized card action menus, synchronized documentation, and executable dashboard and browser acceptance coverage without changing task data contracts or adding dependencies.

🤖 Model & Provider

Provider Codex CLI
Model gpt-5.6-sol

⏱️ Timing

Started 2026-07-13 23:45:13 UTC
Finished 2026-07-14 00:01:42 UTC
Duration 16m 29s

📊 Token Usage

Metric Value
Input tokens 406,264
Cached input tokens 9,482,496
Output tokens 37,864
Total tokens 9,926,624
Invocations 1
Tool calls 80
Active time 15m 50s

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

✅ 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
Elevate the task-card system while keeping cards tidy: simplify visible dependency entries, introduce a persistent accessible action-menu trigger, and preserve all execution, QA, CI, runtime, optimistic, and destructive-action semantics.

## Scope
- `dashboard/src/v2/components/tasks/KanbanTaskCard.tsx`: `KanbanTaskCard`
- Create `dashboard/src/v2/components/tasks/TaskCardActionMenu.tsx` for grouped task actions
- `dashboard/src/v2/components/tasks/DependencyStatusIndicators.tsx`: dependency status normalization and visible list rendering
- `dashboard/src/v2/components/tasks/kanban-task-card.css`: card, menu-trigger, metadata, hover, focus, coarse-pointer, and reduced-motion styling
- Verify and consume `TaskCardViewModel`, `TaskCardActionDescriptor`, and `DependencyIndicator` from `dashboard/src/v2/lib/tasks/task-card-view-model.ts` without inventing a parallel contract
- Reuse `dashboard/src/v2/components/ui/DropdownMenu.tsx` without changing its shared API unless a demonstrated accessibility defect requires a separately tested correction
- `dashboard/src/v2/components/tasks/__tests__/DependencyStatusIndicators.test.tsx`
- `dashboard/src/v2/components/tasks/__tests__/KanbanTaskCard.integration.test.tsx`
- `tests/dashboard/v2/task-row-qa-review.test.tsx`
- `tests/dashboard/accessibility/dashboard-quality-regressions.test.tsx`

## Implementation Requirements
1. Refine card spacing and hierarchy so task identity, title, status, priority, agent, QA, CI, self-reflection, runtime, PR, duration, and optimistic state remain quickly scannable without losing long-content wrapping or stable metadata slots.
2. Simplify each visible dependency list entry to exactly the dependency task identifier and normalized current status; remove visible titles and redundant `Blocking` or `Clear` pills while retaining list semantics, blocker counts, unknown/QA-failed distinctions, and complete accessible context.
3. Replace the always-expanded footer action rail with one persistent, target-labelled task action-menu trigger and a grouped `TaskCardActionMenu` that presents execution/navigation actions, Edit, and destructive Delete using the existing portal-backed `DropdownMenu` primitive.
4. Keep safe external links, target-specific accessible names, disabled reasons, pending `aria-busy` state, and inert unavailable actions. Optimistic cards must suppress duplicate mutations while still allowing users to discover why actions are unavailable.
5. Preserve delete confirmation and focus recovery, prevent menu interactions from starting card drag behavior, and support click, Enter, Space, ArrowUp, ArrowDown, Home, End, Escape, outside dismissal, and trigger focus restoration.
6. Apply existing interaction tokens for hover, press, menu entrance, and item reveal; coarse-pointer and keyboard users must always find the trigger, and reduced-motion mode must retain every state and focus affordance without movement.
7. Update focused and dashboard regression tests for the compact dependency rows, menu grouping, link actions, unavailable reasons, optimistic state, keyboard traversal, cancellation focus, long content, and reduced-motion behavior.

## Constraints
- Preserve the upstream `buildTaskBoardViewModel` producer and the downstream `TaskBoardColumns` consumer; do not change backend task, sprint, runtime, CI, QA, or realtime contracts.
- Do not remove telemetry, accessible status summaries, confirmation safeguards, safe-URL handling, pointer-drag guidance, or disabled-action explanations merely to reduce visual density.
- Do not add dependencies, implement a second generic menu primitive, rely on hover to reveal the trigger, or use color and animation as the only status signals.
- Keep the component memoization boundary valid and avoid rerenders caused by menu-local state leaking into shared board state.

## Verification
- Run `pnpm exec vitest run dashboard/src/v2/components/tasks/__tests__/DependencyStatusIndicators.test.tsx dashboard/src/v2/components/tasks/__tests__/KanbanTaskCard.integration.test.tsx tests/dashboard/v2/task-row-qa-review.test.tsx tests/dashboard/accessibility/dashboard-quality-regressions.test.tsx`.
- Run `pnpm run typecheck:dashboard`.
- Confirm dependency entries visibly contain only identifier and status, all actions remain keyboard discoverable, disabled and optimistic actions cannot activate, Escape/cancel restores focus, and reduced motion removes movement without removing state.
🌿 Branch Info

Base: feature/CODUX-227-production-grade-tasks-page-redesign-1
Head: task/feature-codux-22-t02-codex-22452321-mrjve1cm


🤖 Generated by Code UX

@numnx
numnx merged commit 199e911 into feature/CODUX-227-production-grade-tasks-page-redesign-1 Jul 14, 2026
20 checks passed
@numnx
numnx deleted the task/feature-codux-22-t02-codex-22452321-mrjve1cm branch July 14, 2026 00:14
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