Files
kandev/docs/plans/entity-reference-composer/task-12-message-reference-ui.md
T
José Almeida 7de788ceed feat: add cross-integration entity references (#1862)
* feat: add cross-integration entity references

* fix(web): anchor entity reference menu to composer

* fix: keep Kandev tasks under @ mentions

* fix: address entity reference review findings

* test(e2e): use option role for prompt menu

* test(e2e): update passthrough mention roles

* fix: preserve queued references and paginate Azure PRs
2026-07-23 09:03:56 +01:00

2.4 KiB

id, title, status, wave, depends_on, plan, spec
id title status wave depends_on plan spec
12-message-reference-ui Reference submission and sent rendering completed 4
08-message-reference-metadata
11-composer-reference-ui
plan.md ../../specs/ui/entity-reference-composer.md

Task 12: Reference Submission and Sent Rendering

Acceptance

  • Named composer submit payload carries references through direct send and queue add/update without stale metadata.
  • Sent and queued generated links render as clickable chips only when matched by typed metadata; ordinary Markdown stays unchanged.
  • Existing files/prompts/plan/task mentions, passthrough submission, attachments, comments, and queue behavior retain parity.

Verification

cd apps && pnpm --filter @kandev/web test -- hooks/use-message-handler.test.ts components/task/chat/use-chat-input-state.test.ts lib/api/domains/queue-api.test.ts components/task/chat/messages/chat-message.test.tsx components/task/chat/queued-ghost-message.test.tsx components/task/passthrough-chat-composer.test.ts
cd apps && pnpm --filter @kandev/web typecheck

Files likely touched

  • apps/web/components/task/chat/chat-input-container.tsx
  • apps/web/components/task/chat/use-chat-input-container.ts
  • apps/web/components/task/chat/use-chat-input-state.ts
  • apps/web/components/task/chat/chat-input-area.tsx
  • apps/web/hooks/use-message-handler.ts
  • apps/web/hooks/domains/session/use-queue.ts
  • apps/web/lib/api/domains/queue-api.ts
  • apps/web/lib/types/http.ts
  • apps/web/lib/state/slices/session/types.ts
  • apps/web/components/task/chat/messages/entity-reference-chip.tsx
  • apps/web/components/task/chat/messages/chat-message.tsx
  • apps/web/components/task/chat/queued-ghost-message.tsx
  • apps/web/components/task/passthrough-chat-composer.tsx
  • apps/web/hooks/use-message-handler.test.ts
  • apps/web/components/task/chat/use-chat-input-state.test.ts
  • apps/web/lib/api/domains/queue-api.test.ts
  • apps/web/components/task/chat/messages/chat-message.test.tsx
  • apps/web/components/task/chat/queued-ghost-message.test.tsx
  • apps/web/components/task/passthrough-chat-composer.test.ts

Dependencies

Tasks 08 and 11.

Inputs

Spec persistence/scenarios; backend metadata contract; existing prompt mention rendering and queue metadata shapes.

Output contract

Report payload migration/render matching/queue edit semantics, files changed, exact tests/typecheck, blockers, risks, and mark task/plan done.