You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(stepper): report a failed public read as a typed row, not provider text
A failed public GitHub read used to place the provider's own message, truncated
to 180 characters, into the packet's read_error field. Steward answers then
quoted that text instead of naming what was unread: the group shows "Cache
miss" twice on 2026-09-13 and "invalid_arguments" on 2026-09-14, and the
manager evidence row (loopx-meta todo_386976ec9aae) records that each failure
must instead carry source id, typed reason, coverage effect and next action.
Replace the raw text with github_public_read_failure_row: a typed row carrying
schema_version, source_id, one of six reason codes classified from the
exception type (timeout, network unavailable, response rejected with the
provider status, result unreadable, tool unavailable, or a bounded fallback),
the coverage effect that the target is unread rather than inactive, the repair
next_action, and a digest of the provider message for log correlation. Both the
channel-probe and reply-monitor packets and both markdown renderers now carry
the typed row; the raw provider string no longer reaches a payload an answer
can quote. The dead _compact_error helper goes with it.
Scope note: this covers the public GitHub read path the row's evidence names.
The Lark im read that returned invalid_arguments is a different source and stays
open on the same row.
Evidence: value-connectors-github-public-probe-smoke ok with new assertions that
the row is typed, that the coverage effect says unread, and that "Cache miss"
cannot appear in the row; 69 issue-fix/value-connector/github capability tests
passed; ruff clean; py_compile clean; loopx canary premerge --from-git-diff
passed (the single red canary is the pre-existing maintainability-ratchet
finding for files this change does not touch).
Signed-off-by: huangruiteng <14976749+huangruiteng@users.noreply.github.com>
0 commit comments