Add "Explicit Contract Surface" semantic anchor#357
Conversation
Co-authored-by: rdmueller <1856308+rdmueller@users.noreply.github.com> Agent-Logs-Url: https://github.com/LLM-Coding/Semantic-Anchors/sessions/957cb909-df1b-4853-9fb2-cefb052e0443
Analysis of Proposed AnchorsEvaluated against the quality criteria: Precise, Rich, Consistent, Attributable. Summary
Detailed Analysis#354 P.A.R.A. Method —
|
|
Thanks for this proposal! The described practice — exposing only DTOs at boundaries, never domain entities, with explicit mapping — is genuinely valuable and well-articulated. Recommendation: don't merge as a semantic anchor. The core issue is that "Explicit Contract Surface" is not an established term in the software engineering literature. Here's how it compares to our quality criteria:
This is a design practice described using existing anchors, not a new semantic anchor itself. The same behavior is activated by prompting:
That prompt uses three established anchors (Clean Architecture, ACL, DTO) and achieves the same result. We'd love to see this as a blog post or a pattern description in the workflow documentation! It's a well-articulated practice — it just doesn't meet the bar for a standalone semantic anchor. |
|
This concept has been incorporated into #364 (Semantic Contracts) as the "Layer Boundaries" contract:
The practice is valuable — it just works better as a team convention (Semantic Contract) that users can select and download, rather than as a standalone anchor in the catalog. This way teams can customize it for their project and the contract references the established anchors that back it up. |
Adds the proposed Explicit Contract Surface anchor — the practice of exposing only well-defined DTOs/contracts at layer boundaries, never domain entities, with explicit mapping at every seam.
Changes
docs/anchors/explicit-contract-surface.adoc— English anchor covering: explicit API contracts, no domain entity leakage, explicit mapping, Anti-Corruption Layer, contract versioning, and dependency inversion at boundaries. Related to Clean Architecture, Hexagonal Architecture, DDD, SOLID DIP/ISP; proponents: Evans, Martin, Fowler.docs/anchors/explicit-contract-surface.de.adoc— German translation following the bilingual convention.website/public/data/anchors.json— Entry inserted alphabetically (betweenevent-driven-architectureandfagan-inspection) with full metadata.skill/semantic-anchor-translator/references/catalog.md— Entry added to the Software Architecture section for agent discoverability.Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.