new-site/api
justin 09e21a6c97 refactor(pricing): single source of truth for the service catalog
Previously two hand-maintained price lists (API COMPLIANCE_SERVICES + site
SERVICE_META) drifted apart -- that is how the healthcare +$200 raise charged
$399 while displaying $599. Eliminate the drift class entirely:

- Move the catalog to api/src/service-catalog.ts (the authority; checkout
  charges from it). compliance-orders.ts imports it.
- scripts/gen-service-catalog.mjs generates site/src/lib/service-catalog.generated.ts
  from the API source. intake_manifest.ts re-exports SERVICE_META from it, so all
  ~60 site pages keep working unchanged.
- deploy.sh regenerates + drift-checks before building (site build context is
  ./site only and cannot read ../api, so generation happens host-side).
- scripts/check-service-catalog-drift.mjs fails the build if the generated file
  ever diverges from the API (verified: passes aligned, fails on mismatch).

To change a price now, edit ONE file: api/src/service-catalog.ts.
2026-06-07 19:11:34 -05:00
..
migrations esign: make signing copy fully generic - remove all ink references from website/API 2026-06-07 05:06:26 -05:00
src refactor(pricing): single source of truth for the service catalog 2026-06-07 19:11:34 -05:00
test esign: make signing copy fully generic - remove all ink references from website/API 2026-06-07 05:06:26 -05:00
Dockerfile Initial commit — Performance West telecom compliance platform 2026-04-27 06:54:22 -05:00
package-lock.json Initial commit — Performance West telecom compliance platform 2026-04-27 06:54:22 -05:00
package.json Initial commit — Performance West telecom compliance platform 2026-04-27 06:54:22 -05:00
start-dev.sh Initial commit — Performance West telecom compliance platform 2026-04-27 06:54:22 -05:00
tsconfig.json Initial commit — Performance West telecom compliance platform 2026-04-27 06:54:22 -05:00