Add an internal-only field
Goal: add a column to an existing entity that the city uses internally (a query, a
Expose a new field (end-to-end)
Goal: add a field — here videoUrl on an event — that is accepted on create/update
Add a query or filter
Goal: query existing data in a way the platform doesn't — here, list active events by
Add a database migration
Goal: understand the building block every data-model change relies on — the city's own
Override a read use case
Goal: change the behaviour of one read — here, list events 12 per page sorted by newest
Override a write use case
Goal: add city-specific behaviour to a write — here, reject creating an event whose
Add a new use case
Goal: add a capability the platform doesn't have — here, export the current events
Override an endpoint
Goal: change how one HTTP endpoint behaves at the web layer — here, hide the internal
Add a new endpoint
Goal: add an endpoint the platform doesn't have — here, bulk import events via
Change endpoint access
Goal: change who may call an existing endpoint — here, restrict creating events to
Replace a store adapter
Goal: change how an aggregate is persisted or read — here, publish every created event
Add a new entity
Goal: add a whole new aggregate the platform doesn't have — here Beaches under leisure
Disable caching for a use case
Goal: make one cached use case stop using the cache — here, always serve
Tune the cache
Goal: change caching through configuration — enable it, change the default TTL, and
Override a config property
Goal: change platform runtime configuration — the Stripe currency, the JPA schema check, the