Skip to content

CI: gateway-protocol event coverage check for mobile clients #100198

Description

@steipete

Problem

The gateway protocol evolves in packages/gateway-protocol, but nothing checks that the mobile clients keep up. A new server event type ships and iOS/Android silently ignore it — the drift is invisible until a user-facing feature misbehaves.

Proposal

A CI-runnable check that derives the event/method inventory from the protocol schema and compares it against what each mobile client actually handles (the event dispatch in the iOS gateway transport and the Android GatewaySession/ChatController). Output: per-client list of unhandled event types, with an explicit allowlist for intentionally ignored ones so the check stays quiet until real drift appears.

Impact

Protocol/client drift becomes a red check at PR time instead of a field bug report; the allowlist doubles as documentation of what each client intentionally ignores.

Metadata

Metadata

Assignees

Labels

P2Normal backlog priority with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.enhancementNew feature or requestimpact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.maintainerMaintainer-authored PRmaturity:stableIssue affects a taxonomy feature currently scored M4/M5.

Type

No type

Fields

Priority

None yet

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions