{"slug": "your-ports-are-lying-about-your-business", "title": "Your Ports Are Lying About Your Business", "summary": "A developer argues that hexagonal architecture ports are typically named after HTTP operations like createUser or updateUser rather than business concepts, undermining their purpose of isolating business logic from delivery mechanisms. The engineer contends this mismatch turns tests into database checks instead of business specifications and that AI coding agents will replicate the flawed convention at scale. The post also questions whether the port interface is worth keeping in the single-adapter case.", "body_md": "Your hexagonal architecture ports might still be speaking HTTP instead of business.\n\nIn hexagonal architecture, ports exist to isolate your business logic from how\n\nit's delivered. In practice, most of them are still named after HTTP operations\n\nlike `createUser` or `updateUser` — a habit inherited from years of REST-first\n\ndevelopment.\n\nThat mismatch isn't cosmetic. It turns your tests into database checks instead\n\nof real business specifications. And it's exactly the convention AI coding\n\nagents will pick up from your existing code and repeat at scale, for as long as\n\nthe repo lives.\n\nI wrote about why ports keep lying about your business, and what it takes to\n\nname them so a domain expert would recognize what they actually do.\n\n[Read the full article on the SQUER blog →](https://www.squer.io/blog/your-ports-are-lying-about-your-business)\n\nThe part people push back on most is the single-adapter case — if there's only\n\never going to be one adapter, is the port interface worth keeping? Curious\n\nwhether you'd skip it.", "url": "https://wpnews.pro/news/your-ports-are-lying-about-your-business", "canonical_source": "https://dev.to/chranditho/your-ports-are-lying-about-your-business-k5m", "published_at": "2026-09-22 20:52:13+00:00", "updated_at": "2026-09-22 21:22:49.582983+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools"], "entities": ["SQUER"], "alternates": {"html": "https://wpnews.pro/news/your-ports-are-lying-about-your-business", "markdown": "https://wpnews.pro/news/your-ports-are-lying-about-your-business.md", "text": "https://wpnews.pro/news/your-ports-are-lying-about-your-business.txt", "jsonld": "https://wpnews.pro/news/your-ports-are-lying-about-your-business.jsonld"}}