Maintain Yuzu's protobuf wire contracts, code generation, and gateway proto mirrors. Use when editing `.proto` files, `proto/gen_proto.py`, `proto/meson.build`, `proto/buf.yaml`, or any file under `gateway/priv/proto`.
Installation
Installer avec Codex ou Claude Copiez ce prompt, collez-le dans Codex, Claude ou un autre assistant, puis laissez-le vérifier la page du skill et l'installer pour vous.
Maintain Yuzu's protobuf wire contracts, code generation, and gateway proto mirrors. Use when editing `.proto` files, `proto/gen_proto.py`, `proto/meson.build`, `proto/buf.yaml`, or any file under `gateway/priv/proto`.
Yuzu Proto
Own The Canonical Sources
Treat proto/yuzu/** as the canonical wire contract.
Treat gateway/priv/proto/** as gateway mirror files consumed by rebar3 and gpb from gateway/rebar.config.
Keep both gateway mirror layouts aligned: nested gateway/priv/proto/yuzu/** and flat gateway/priv/proto/*.proto.
Do not trust mirror files to already be current. They have drifted before.
Preserve Compatibility
Preserve field numbers.
Do not remove fields or change field types.
Add reserved declarations when retiring fields or names.
Treat buf breaking as the baseline contract check, not an optional extra.
Preserve Codegen Behavior
Update proto/meson.build if a canonical proto file is added, removed, or renamed.
Preserve proto/gen_proto.py header-flattening behavior unless all C++ include sites are being updated intentionally.
Rebuild both C++ and gateway consumers after changing a wire contract.
Sync And Validate
Edit the canonical proto first.
Propagate the same schema to every gateway mirror file before validating.
Run buf lint proto.
Run buf breaking proto --against '.git#subdir=proto,ref=origin/main' when repository history is available.
Rebuild the proto library and any affected gateway consumers.
Invoke Sibling Skills
Invoke $yuzu-meson if the proto target list or build graph changes.
Invoke $yuzu-build for compile and suite selection.