Context
features/agent-text-streams-quic.md:
- Kind
1201 example (lines 209-218): "v": 1, "status": "thinking", "text": "Thinking", "extra": {}
- Kind
1202 example (lines 222-247): includes "sequence": 0,
Defect
For kind 1201, only status gets prose treatment ("It SHOULD carry a ["status", status] tag"); v, text, and extra appear solely in the JSON example with no stated meaning, required/optional status, type, or bound. This is inconsistent with kind 1202's structurally analogous open-metadata field details, which does get a defining sentence ("details is optional, bounded metadata for UI/debugging..."). For kind 1202, sequence likewise appears only in the example and is never mentioned again anywhere in the document — unlike event_type, status, and details, which all get at least one normative or descriptive sentence.
Failure scenario
Two independent implementations both claim conformance while interpreting sequence differently — one treats it as monotonic per operation_id, another as monotonic per run_id or turn_id — producing visibly different orderings of durable operation rows across clients with no way to detect the divergence as non-conformant, since the spec never states what sequence counts, its starting value, or whether receivers should validate/use it. Similarly, extra in kind 1201 has no defined shape or handling rule, unlike its 1202 sibling details.
Suggested fix
Add a defining sentence for v, text, extra (kind 1201) and sequence (kind 1202), covering type, optionality, and (for sequence) its counting scope.
Context
features/agent-text-streams-quic.md:1201example (lines 209-218):"v": 1, "status": "thinking", "text": "Thinking", "extra": {}1202example (lines 222-247): includes"sequence": 0,Defect
For kind
1201, onlystatusgets prose treatment ("It SHOULD carry a["status", status]tag");v,text, andextraappear solely in the JSON example with no stated meaning, required/optional status, type, or bound. This is inconsistent with kind1202's structurally analogous open-metadata fielddetails, which does get a defining sentence ("detailsis optional, bounded metadata for UI/debugging..."). For kind1202,sequencelikewise appears only in the example and is never mentioned again anywhere in the document — unlikeevent_type,status, anddetails, which all get at least one normative or descriptive sentence.Failure scenario
Two independent implementations both claim conformance while interpreting
sequencedifferently — one treats it as monotonic peroperation_id, another as monotonic perrun_idorturn_id— producing visibly different orderings of durable operation rows across clients with no way to detect the divergence as non-conformant, since the spec never states whatsequencecounts, its starting value, or whether receivers should validate/use it. Similarly,extrain kind 1201 has no defined shape or handling rule, unlike its 1202 siblingdetails.Suggested fix
Add a defining sentence for
v,text,extra(kind 1201) andsequence(kind 1202), covering type, optionality, and (forsequence) its counting scope.