new-site/site
justin 5546c58bf0 fix(intake): repair order wizard — checkout was fully broken on trucking/HC
Diagnosed via live browser E2E why campaign clicks (25 checkout-page-views,
36h) produced 0 conversions. Four bugs, all blocking checkout:

1. DOTIntakeStep: a missing `});` (DFWP hydration block, commit 9718ab9
   Jun 2) left the pw:step-shown listener unclosed -> 'missing ) after
   argument list' SYNTAX ERROR killed the whole DOT intake script. Effect:
   ?dot= prefill silently failed for ~3 weeks (exactly the campaign window),
   so every carrier had to re-type all their details.

2. ReviewStep: service slug read from `.pw-step[data-slug]` (first match),
   which on trucking/HC is the INTAKE step's slug ('dot-intake'/'npi-intake'),
   not the order. The cold-visitor order-create POST sent
   service_slug='dot-intake' -> API 501/400 -> 'Could not validate order',
   blocking checkout at the review step on EVERY multi-step vertical. Now
   reads `.pw-wizard[data-service]` (authoritative). Confirmed against prod:
   bad slug=400, correct slug=201.

3. Shared-bundle null derefs: every step's <script> is bundled onto every
   order page, so steps whose anchor element is absent threw at top level and
   could abort siblings:
     - ClassificationWizard: top-level renderQuestion(0) -> appendChild on
       null (errored on 47/67 order pages)
     - BDCDataStep: (querySelector as HTMLElement).getAttribute on null
     - STIRShakenStep / EarthStationStep: top-level addEventListener on null
     - ForeignQualStep: many top-level getElementById(...)! lookups
   Each now guarded to no-op when its step isn't present.

Verified by browser E2E: full flow dot-intake -> review -> payment ->
live Stripe Checkout session, and a 67-page scan now reports 0 JS errors
(was 47 pages erroring). Real human clicks are tracked via Umami; these
were pure functional breakages of the conversion path.
2026-06-23 13:08:41 -05:00
..
public Add Ontario alongside BC on CRTC page 2026-06-20 06:40:18 -05:00
src fix(intake): repair order wizard — checkout was fully broken on trucking/HC 2026-06-23 13:08:41 -05:00
tests analytics: filter email-scanner / headless traffic out of Umami stats 2026-06-18 02:02:34 -05:00
astro.config.mjs Initial commit — Performance West telecom compliance platform 2026-04-27 06:54:22 -05:00
Dockerfile Initial commit — Performance West telecom compliance platform 2026-04-27 06:54:22 -05:00
nginx.conf 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