Files
kandev/docs/plans/cursor-subagent-metadata/task-03-frontend-confirm.md
T
2026-08-24 11:09:03 +00:00

2.6 KiB

id, title, status, wave, depends_on, plan, spec
id title status wave depends_on plan spec
03-frontend-confirm Confirm frontend renders the Cursor subagent metadata done 3
02-parse-correlate-cursor-task
plan.md ../../specs/agents/requirements/cursor-subagent-metadata.md

Task 03: Confirm frontend renders the Cursor subagent metadata

Verify no frontend change is needed, or make the minimal one if a gap is found. The SubagentTaskPayload TS type and the card/chip components already carry and render model, is_async (background chip), and prompt (body fallback).

Acceptance

  • With a populated Cursor SubagentTaskPayload, the subagent card shows the model chip, the background chip (when is_async), and the prompt in the expandable body (when no result_text and no children).
  • If any expected field is present in the payload but not rendered, a minimal targeted change is made and covered by a unit test; otherwise this task is a confirmation with no code change.

Verification

cd apps && pnpm install --frozen-lockfile && pnpm --filter @kandev/web test -- components/task/chat/messages/subagent-meta.test.ts (and cd apps/web && pnpm run typecheck if any .ts/.tsx file changed)

Files likely touched

  • (confirm only, likely none) apps/web/components/task/chat/types.ts, apps/web/components/task/chat/messages/subagent-meta.ts, apps/web/components/task/chat/messages/tool-subagent-message.tsx.
  • apps/web/components/task/chat/messages/subagent-meta.test.ts — only if a change is made.

Dependencies

Task 02 (the payload must actually be populated to verify).

Parallelism

parallel-safe with Task 04 (disjoint: frontend unit vs manual live run).

Inputs

  • Spec: "What", "Scenarios".
  • Plan: "Frontend".
  • Code refs: subagent-meta.ts:56,85; tool-subagent-message.tsx; types.ts SubagentTaskPayload.

Output contract

Summary (change vs confirm-only), files changed, tests run, blockers, risks; update this task's status and plan.md Wave 3 checkbox.

Results

  • Confirmed apps/web/components/task/chat/types.ts already includes the populated fields (prompt, model, agent_id, is_async).
  • Confirmed apps/web/components/task/chat/messages/subagent-meta.ts already renders the model chip and background chip, and apps/web/components/task/chat/messages/tool-subagent-message.tsx already renders the prompt fallback body.
  • No frontend code change was required.
  • cd apps && pnpm install --frozen-lockfile passed.
  • cd apps && pnpm --filter @kandev/web exec vitest run components/task/chat/messages/subagent-meta.test.ts components/task/chat/messages/tool-subagent-message.test.tsx passed 41 tests across 2 files.