What problem does it solve? When a feature's boundaries cross deploy units, teams need a single executable OpenAPI contract that both sides build against — without duplicating schemas, forking operationId namespaces, or silently breaking consumers. This Skill reconciles that contract as a consequence of the manifest, keeping one source of truth per boundary for the life of the project. ## Core Features & Use Cases - Contract reconciliation, not invention: Collects the cross-deploy boundaries and implied operations from building-blocks.yaml, then fills in read shapes (consumer-driven) and write shapes (producer-driven) into one OpenAPI YAML per boundary. - Re-entrant extension: Scans existing *.openapi.yaml files first and extends the matching boundary's contract additively instead of generating a duplicate, classifying every change as additive vs breaking. - Canonical naming and error contracts: Names every components/schemas entry from the ubiquitous language, always models the 422 ValidationError shape, and delegates non-obvious decisions to ADRs via write-adr. - Use Case: After running the model movement on a feature whose read-model crosses into another deploy unit, invoke this Skill to produce or extend architetture/api/<feature>.openapi.yaml with stable operationIds both sides' contract tests verify against. ## Quick Start Reconcile the OpenAPI contract for the cross-deploy boundaries declared in my building-blocks.yaml manifest, extending any existing contract for the same boundary.