issue create, issue comment, mr comment, mr create, issue show and mr show declared their output inline or as a map, so the web type-asserted data["number"].(float64) and nothing tied what a command emits to what a client reads.
output.go names them: Created, MRCreated, IssueShow, MRShow, and the ReviewOut, CheckOut and CommitOut rows inside. The web decodes into them through dispatchIntoStdin and runControlInto. The JSON on the wire is unchanged, so the iOS client and scripts see nothing new; they gain a type to import.
Left as Ref: the other 33 inline type out struct declarations belong to commands no other surface decodes (admin, keys, tokens, wiki, releases) and stay local until a consumer needs them.
Stacked on !210; depends on !209's runComment.
Ref #126
retargeted from partial-writes to main: !210 merged
2026-09-04 01:17 UTC