×rcrossreview
REVIEW DASHBOARD

Rename Customer fields for clarity (displayName->name, email->contactEmail)

Request changes

Renaming displayName and email on Customer introduces breaking API contract changes across multiple dependent sibling repositories (frontend-app, customer-api, and billing-service). Downstream services and UI components directly reference customer.displayName and customer.email. This PR must be rejected or updated with backward-compatible aliases.

1
Findings
100% confidence
3
Repos scanned
17 snippets used
3.5k
Tokens
520 out · ~₹0.30
1
Ralph iters
critic 1.00

Impacted repositories

frontend-appcustomer-apibilling-service

Findings

CRITICALapi-contract

Breaking change to Customer fields breaks frontend-app, customer-api, and billing-service

src/customer.ts:9frontend-app/src/CustomerCard.tsx

Renaming displayName to name and email to contactEmail on Customer breaks contract compatibility with consuming repos. frontend-app reads customer.displayName and customer.email in CustomerCard.tsx, customer-api constructs Customer using displayName and email in server.ts, and billing-service reads these fields when creating invoices in worker.ts.

<h2 className="customer-card__name">{customer.displayName}</h2> and <a href={`mailto:${customer.email}`}>{customer.email}</a> in frontend-app (CustomerCard.tsx:25-27).

Retain displayName and email (or deprecate them while adding optional new fields) to preserve backward compatibility, or coordinate a major version release alongside PRs updating all consumer services.