Skip to content

[finding] REST pool survives GraphQL exhaustion (dispatch loop runs on REST); contract-review fuse needs a substitute reading on ccd hosts #11573

Description

@os-zhuang

Two platform facts measured during a maintainer-direct-dispatch round run from a NON-Routine host (a ccd cloud-repo session), candidates for references/platform-readings.md:

  1. GraphQL and REST rate pools are separate — a GraphQL-exhausted account can still run the whole dispatch loop on REST. Measured: gh issue create failed with "GraphQL: API rate limit already exceeded" while gh api rate_limit read core 4999/5000 remaining. Issue create, assign, label read-modify-write, and comments all completed via gh api repos/... REST forms. The operations that genuinely need GraphQL back: gh pr ready and gh pr merge --auto (draft flip and auto-merge are GraphQL mutations). Failure mode this closes: a seat reading one exhausted pool as "GitHub is down" and stranding a round that REST could finish.

  2. The contract-review downgrade fuse's reading (claude-code-remote get_session, no args → external_metadata.last_served_model) does not exist on ccd hosts — the ccd session-mgmt MCP's get_session/list_sessions both exclude the current session by contract. Usable substitute machine reading (declared on the card when used): grep the session's own transcript JSONL under ~/.claude/projects/<slug>/<session-id>.jsonl for the harness-recorded "model": field of the latest records — host-authored per request, not model self-description, so it measures the same thing the fuse wants. Boundary: valid only for the seat's own session (same limit as the fuse itself).

Origin: 2026-08-24 direct-dispatch round (invite-entry card; claim comment on that card records the substitute reading in use). Skills seat to judge: fold into platform-readings.md or close.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions