Files
music_library/backlog/archive/tasks/ml-182.6 - Wave-6-Chat-component-streaming-tests-send_update-3-blocker.md
T
2026-05-23 07:18:25 +01:00

1.5 KiB

id, title, status, assignee, created_date, updated_date, labels, dependencies, modified_files, parent_task_id, priority, ordinal
id title status assignee created_date updated_date labels dependencies modified_files parent_task_id priority ordinal
ML-182.6 Wave 6: Chat component streaming tests (send_update/3 blocker) To Do
2026-05-14 22:15 2026-05-23 06:16
testing
refactoring
test/music_library_web/components/chat_test.exs
ML-182 medium 16000

Description

Decision: Keep send_update/3 (Accepted Blocker)

After reviewing the implementation plan against the project's testing conventions, the decision is to keep send_update/3 rather than rewrite the three streaming state-transition tests as SSE pipeline integration tests.

Rationale

The testing skill at .agents/skills/testing/SKILL.md already documents send_update/3 in the "Known Blockers for Full PhoenixTest Migration" table with the workaround: "Keep send_update for these tests." This is the project's documented convention — send_update/3 is an accepted escape hatch for unit-level LiveComponent streaming-state testing.

The proposed SSE integration approach would work technically but carries disproportionate cost (4-6h estimated) for three tests, introduces async timing fragility, requires new DOM selectors in the template, and masks the unit-level coverage of update/2 clause logic behind a full-pipeline integration test.

Action

Import send_update/3 explicitly in chat_test.exs, keep the three streaming state-transition tests as-is, and close this task. No other changes needed.