A pull's state is now one type, model::pull::State, from fetch to output. Stack rows, chain::state_of and the JSON rows carry it, and JSON writes an unknown state as null instead of "?". ? appears only in human tables.
A knot answers some queries for a missing repo with an empty 204, not a named error. The tags, branches, collaborators and compare readers now read that as RepoNotFound and exit 5, instead of failing to parse an empty body.
🤖 Generated with Claude Code