tasks-lifecycle accepts completed status from its cancellable fixture
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 35/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- typescript
- Domain
- testing-qa
Research direction
Start with src/scenarios/server/tasks/lifecycle.test.ts and the tasks-lifecycle fixture contract in src/scenarios/server/tasks/lifecycle.ts, then run the focused npm test command. Verify that the declared sep-2663-tasks-get-status-cancelled check is emitted after terminal-state handling and that the deterministic fixture reports cancelled while the cancellation acknowledgement remains separate.
Written by the indexing model from the issue text.
Description
The tasks-lifecycle scenario requires its slow_compute fixture to settle to
cancelled when tasks/cancel arrives while it is running. The implementation
waits for a terminal status but records that status only in details. A server
that settles to completed therefore passes the cancellation check.
Minimal reproduction:
tasks/cancel -> {"resultType":"complete"}
tasks/get -> {"resultType":"complete","taskId":"lifecycle-cancel","status":"completed","result":{"content":[{"type":"text","text":"done"}]}}
npm test -- --run src/scenarios/server/tasks/lifecycle.test.ts
A regression test expecting
sep-2663-tasks-get-status-cancelled currently fails because the scenario never
emits that declared check:
AssertionError: expected undefined to match object
Test Files 1 failed (1)
Tests 1 failed | 1 passed (2)
The smallest fix is to emit the existing check after waitForTerminal and fail
it unless this deterministic fixture settles to cancelled. The cancellation
acknowledgement remains a separate check.
References:
- Fixture contract: https://github.com/modelcontextprotocol/conformance/blob/74edef34d674f563537be8c6587cebaa58e830ca/src/scenarios/server/tasks/lifecycle.ts#L64-L75
- Current diagnostic-only check: https://github.com/modelcontextprotocol/conformance/blob/74edef34d674f563537be8c6587cebaa58e830ca/src/scenarios/server/tasks/lifecycle.ts#L452-L477
- Declared traceability check: https://github.com/modelcontextprotocol/conformance/blob/74edef34d674f563537be8c6587cebaa58e830ca/src/seps/sep-2663.yaml#L53-L55
- Original review requiring deterministic cancellation: https://github.com/modelcontextprotocol/conformance/pull/262#discussion_r3270564690
- SEP-2663 cancelled response: https://github.com/modelcontextprotocol/ext-tasks/blob/0d0a6bd4c258b35caa3c810a1dd506cf105b1501/specification/2026-07-28/tasks.md#L326-L332
I have a small fix and regression test locally. I will wait for assignment,
help wanted, or explicit maintainer approval before opening a pull request.
AI assistance disclosure: GitHub Copilot CLI was used to inspect the public
specification and repository history, identify the missing conformance check,
prepare the reproducer, and draft this issue. I reviewed the evidence and can
explain the failure and proposed fix.
- Dominant language
- TypeScript
- Stars
- 127
- Forks
- 101
- Avg merge
- 4d 7h
- Merged PRs (30d)
- 6
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from modelcontextprotocol/conformance
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
modelcontextprotocol/conformance#315 · 1 comment ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
modelcontextprotocol/conformance#312 · 1 comment ·
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
-
Difficulty 4/5 3-5 days Newbie friendliness 40/100
-
Difficulty 3/5 1-2 days Newbie friendliness 65/100
All issues in modelcontextprotocol/conformance
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
mksglu/context-mode#1200 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
jaegertracing/jaeger-ui#4506 ·
-
area:desktop area:ui bug platform:macos
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
anthropics/claude-code#96687 ·
-
good first issue
Difficulty 1/5 Under an hour Newbie friendliness 95/100
AOSSIE-Org/DebateAI#582 · 2 comments ·