New use cases land inside an owning slice

vertical-slice-arch-001

Intent

In a slice-oriented repo, one request or workflow should have a visible owning slice instead of being spread across horizontal shared layers.

Applicability

Applies when the repo already shows a vertical-slice or feature-first structure.

What to inspect

Changed handlers, endpoints, validators, request models, and where they live.

Pass criteria

Feature-specific request handling, validation, and orchestration code live together inside one owning slice.

Fail criteria

The diff implements a new use case mainly by adding feature logic to shared controllers, services, or repositories.

Do not flag

Thin framework registration and shared infrastructure.

Confidence guidance

HIGH when the repo is clearly slice-oriented and the new feature still lands in horizontal layers. MEDIUM when slice intent is implied. LOW when the repo is consistently layer-based.

Remediation

Move the newly added use-case-specific code under the owning slice, leaving thin framework registration and genuine shared infrastructure in place.

Pass example

features/users/register/

Fail example

controllers/users/
services/users/
repositories/users/

Sources

  • Vertical Slice Architecture — Jimmy Bogard, 2018 article