REPOSITORY EXPLORER
The product spans 4 repos
crossreview understands the dependency edges between them. A change in one is reviewed against the code in the others.
shared-contracts
DTO source of truth
CustomerDTO, OrderDTO, BillingDTO
customer-api
producer
GET /v1/customers/:id → CustomerDTO
shared-contracts
billing-service
consumer
reads CustomerDTO.email for invoices
shared-contracts
frontend-app
consumer
renders CustomerDTO.fullName + email
customer-api
THE COUPLING crossreview EXPLOITS
CustomerDTO in shared-contracts is the load-bearing contract. Its email field is read by billing-service; its fullName is rendered by frontend-app. Rename either and the diff looks clean — but two other repos break. That is exactly the class of bug crossreview is built to catch.