What problem does it solve? When building a use-case in a domain-driven architecture, developers often duplicate business rules inside the service layer or reach directly into another bounded context's internals, breaking invariants and coupling contexts. This Skill guides the implementation of a thin Application Service that orchestrates without owning rules. ## Core Features & Use Cases - Boundary-respecting orchestration: Mutations always go through the Aggregate root that owns the invariant; cross-context reads happen only through the consumer-owned port interface, never the other context's source or domain types. - Bounce detection: Flags any raw-field evaluation (e.g. attivo == true) inside the service as a domain decision that belongs in a root or port predicate. - Fake-port AC testing: Translates the user's natural-language tests_nl into acceptance tests run against a fake port, keeping the block green on its own while preserving the Aggregate's invariant tests. - Use Case: While building a 'confirm order' use-case, the worker calls the Order aggregate root to apply the state change and reads pricing from the Catalog context only via its port interface, then verifies behavior with a fake port before the worker-composer welds the real sides in D2. ## Quick Start Ask the worker to realize the application-service block for your feature, going through the aggregate root for mutations and the port for cross-context reads, with AC-tests against a fake port.