Context
The 3b transport lane (part of #2216) ships the MCP Tasks surface: tools/call task augmentation → tasks/get → tasks/result, across stdio and HTTP, riding the daemon wire verbs (eval-task / task-get / task-result) into #2237's TaskStore.
Every layer is unit-tested (transport shapes, wire dispatch, permit/budget behavior, store admission/terminal contracts), but there is no end-to-end test that drives the full lifecycle through a live daemon socket on the HTTP surface: augment a real tools/call → poll tasks/get → block on tasks/result → assert the verbatim CallToolResult round-trips.
The unit tests can't see socket-round-trip wiring defects (envelope framing across the three verbs, _meta survival through the real dispatch path, the blocking budget interacting with a real daemon's response latency).
Shape of the fix
An integration test using the empty-fixture short-circuit (the eval completes in milliseconds and never touches the embedder/GPU), so the harness needs no GPU coordination:
- Boot a daemon on a temp socket with a minimal index.
- Start the HTTP listener against it.
tools/call cqs_eval with a task field + empty fixture → assert nested CreateTaskResult.
tasks/get until terminal → assert flat shape + pollInterval + related-task _meta.
tasks/result → assert the verbatim CallToolResult (and the error shape for a failing eval).
Deferred from the lane rather than blocking it on a daemon harness. Part of #2216.
Context
The 3b transport lane (part of #2216) ships the MCP Tasks surface:
tools/calltask augmentation →tasks/get→tasks/result, across stdio and HTTP, riding the daemon wire verbs (eval-task/task-get/task-result) into #2237's TaskStore.Every layer is unit-tested (transport shapes, wire dispatch, permit/budget behavior, store admission/terminal contracts), but there is no end-to-end test that drives the full lifecycle through a live daemon socket on the HTTP surface: augment a real
tools/call→ polltasks/get→ block ontasks/result→ assert the verbatimCallToolResultround-trips.The unit tests can't see socket-round-trip wiring defects (envelope framing across the three verbs,
_metasurvival through the real dispatch path, the blocking budget interacting with a real daemon's response latency).Shape of the fix
An integration test using the empty-fixture short-circuit (the eval completes in milliseconds and never touches the embedder/GPU), so the harness needs no GPU coordination:
tools/callcqs_eval with ataskfield + empty fixture → assert nestedCreateTaskResult.tasks/getuntil terminal → assert flat shape +pollInterval+ related-task_meta.tasks/result→ assert the verbatimCallToolResult(and the error shape for a failing eval).Deferred from the lane rather than blocking it on a daemon harness. Part of #2216.