name: kcc-direct-identity-implementer description: Implement the IdentityV2 and ExternalIdentifier interfaces for a direct KCC resource. Use this when implementing IdentityV2 and refs.Ref for a resource.
KCC Direct Identity Implementer
This skill guides the implementation of the IdentityV2 and ExternalIdentifier interfaces for direct KCC resources, ensuring they follow the canonical gcpurls.Template pattern.
Inputs
resource_kind: The KCC Kind (e.g.,VertexAIExampleStore).template: The GCP URL template (e.g.,projects/{project}/locations/{location}/exampleStores/{example_store}).api_version: The KCC API version.
Workflow
Implement Identity: Create
apis/<service>/<api_version>/<resource_lower>_identity.go.- Use
identity.IdentityV2. - Use
gcpurls.Templatefor URL parsing. - Implement
ExternalIdentifier(). - Implement
ParentString() stringto return the GCP parent URI (e.g.,projects/{project}orprojects/{project}/locations/{location}).
- Use
Parent & Hierarchy Support:
- Ensure the
Specstruct has aProjectRef(andLocationif applicable). - Hierarchical Branching: If the GCP resource supports multiple hierarchies (e.g., Global and Regional), implement logic in
String()andFromExternal()to handle both. Use the presence of thelocationfield in the Spec to determine which pattern to use.
- Ensure the
Journaling
Append any template mapping complexities (e.g., multi-parent or multi-hierarchy resources) to .gemini/journals/<service>.md using the format described in the kcc-agentic-journaler skill.