What problem does it solve?
Config Connector direct controllers need verified, lossless bidirectional mapping between Kubernetes Resource Model (KRM) types and GCP proto or OpenAPI types, and manually writing round-trip fuzzers for each resource is error-prone and inconsistent.
Core Features & Use Cases
- Guided Fuzzer Creation: Step-by-step instructions for creating
<kind>_fuzzer.go files with correct naming conventions, init() registration via fuzztesting.RegisterKRMFuzzer, and field categorization using SpecField, StatusField, and Unimplemented_* helpers.
- No-Proto Resource Support: Covers OpenAPI/Discovery API-based resources using
RegisterKRMFuzzer_NoProto and the generate-mapper tool for automatic mapper generation.
- Centralized Verification: Explains how to register packages in
register.go and run focused fuzz tests via FOCUS=<Kind> go test ./pkg/fuzztesting/fuzztests/ -run TestFocusedMappers.
- Use Case: When adding a new direct controller resource like
KMSKeyHandle, follow the skill to implement missing ToProto status mappers, create the fuzzer file, categorize proto fields, and validate lossless round-trips in the central fuzz suite.
Quick Start
Ask the agent to create a round-trip KRM fuzzer for a specific Config Connector direct resource, such as ComputeFirewall, following the create-fuzzer skill.