tasks/get examples under "Task Execution Errors" use "resultType": "task"; prose and schema require "complete"
Nobody has claimed this yet.
Assessment
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Newbie friendliness
- 95/100
- Issue type
- Documentation
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- markdown, typescript
- Domain
- documentation
Research direction
The issue points to two specific lines in specification/2026-07-28/tasks.md and specification/draft/tasks.md where the examples incorrectly use "resultType": "task". The fix is to change them to "resultType": "complete" as shown in the diff. Verify the changes by checking the surrounding examples and the normative text. Run any documentation linting or validation scripts if present.
Written by the indexing model from the issue text.
Description
What's wrong
Two example responses in Task Execution Errors show a tasks/get result with "resultType": "task":
specification/2026-07-28/tasks.md:846, in "Example: Task with JSON-RPC execution error"specification/2026-07-28/tasks.md:870, in "Example: Tool call completed with tool error (isError: true)"
specification/draft/tasks.md has the same text at the same line numbers.
Both are tasks/get responses. The section says so (tasks.md:835: "The tasks/get response SHOULD include a statusMessage…"), and the text after the second example calls it "The tasks/get endpoint" (:889).
The normative text says the opposite:
tasks.md:338: "TheresultTypefield MUST be set to"complete"on this object as it is the standard result shape for thetasks/getrequest."tasks.md:102: "Servers MUST NOT setresultTypeto"task"on result types other thanCreateTaskResult."schema/2026-07-28/schema.ts:224andschema/draft/schema.ts:224:GetTaskResulthasresultType: "complete";.
The other tasks/get examples in the same file already use "complete" (:577, :610, :655, :733, :762).
Why it matters
Implementers copy examples. A client that switches on resultType and treats "task" as "this is a CreateTaskResult, start polling" would handle a terminal tasks/get response as a new task handle. A server built from these examples would break the MUST at :338.
Suggested fix (docs only)
--- a/specification/2026-07-28/tasks.md
+++ b/specification/2026-07-28/tasks.md
@@ -843,7 +843,7 @@
"jsonrpc": "2.0",
"id": 4,
"result": {
- "resultType": "task",
+ "resultType": "complete",
"taskId": "786512e2-9e0d-44bd-8f29-789f820fe840",
"status": "failed",
@@ -867,7 +867,7 @@
"jsonrpc": "2.0",
"id": 5,
"result": {
- "resultType": "task",
+ "resultType": "complete",
"taskId": "786512e2-9e0d-44bd-8f29-789f820fe840",
"status": "completed",
Apply the same two changes to specification/draft/tasks.md (same line numbers). Nothing normative changes.
- Dominant language
- TypeScript
- Stars
- 46
- Forks
- 9
- Avg merge
- 14d 1h
- Merged PRs (30d)
- 1
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/ext-tasks
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
modelcontextprotocol/ext-tasks#22 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
modelcontextprotocol/ext-tasks#20 · 2 comments ·
-
Stalled tasks Open
Difficulty 5/5 Over a week Newbie friendliness 35/100
modelcontextprotocol/ext-tasks#11 · 2 comments ·
All issues in modelcontextprotocol/ext-tasks
Similar issues
-
VerificationGate: ATTRIBUTION quote guard never matches a normal quotation (\b around the quote) Open
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
danielmiessler/LifeOS#2234 ·
-
T: Bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100
-
Mend: dependency security vulnerability untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 70/100