Skip to content

feat(onboarding): build medium-tier contract details once - #1557

Merged
gabrielseco merged 4 commits into
mainfrom
workbench/g-2026-10-14-jsf-v1-pol-nga-irl-swe-nld
Oct 15, 2026
Merged

gabrielseco merged 4 commits into
mainfrom
workbench/g-2026-10-14-jsf-v1-pol-nga-irl-swe-nld

Conversation

@gabrielseco

@gabrielseco gabrielseco commented Oct 14, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Contract details for Poland, Nigeria, Ireland, Sweden and the Netherlands (the medium tier), plus Australia, Mexico, South Africa, Malaysia and the Dominican Republic, now use the newer form engine that builds the form once, like the high-tier countries do since #1507.

Why

We're moving contract details onto the build-once path country by country. The first five are the medium tier in scripts/reports/embedded-integration-country-tiers.json. AUS and MEX are also medium; ZAF, MYS and DOM are low. All ten already have their example-app version bumps merged, so this is the second step of the rollout and can be reverted on its own.

What changed

Toggle details
  • src/flows/Onboarding/utils.ts: adds POL, NGA, IRL, SWE, NLD, ZAF, AUS, MYS, DOM, MEX to JSF_V1_CONTRACT_DETAILS_COUNTRIES. usesJsfV1ContractDetails now routes them to useContractDetailsSchema.
  • src/flows/Onboarding/tests/utils.test.ts: folds the usesJsfV1ContractDetails expectations into one parameterized case covering every country on the build-once path, including the ten new ones.
  • docs/USE_HEADLESS_FORM_ROLLOUT.md: records this batch against feat(onboarding): build medium-tier contract details once #1557. The table is reflowed by oxfmt, so the diff there is wider than the one-row change.

No public API change. The list is internal.

Example app pins on main:

Country Example pin Bump PR
POL 5 #1527
NGA 5 #1525
IRL 5 #1572
SWE 5 #1523
NLD 6 #1524
ZAF 5 #1563
AUS 6 #1562
MYS 5 #1561
DOM 6 #1560
MEX 8 #1558

Not compared against the latest backend schemas by hand; the schema canary report is the source for that.

Screenshots

N/A

Related Resources

Testing

Unit tests were not run locally; CI covers them.

🤖 Generated with Claude Code


Note

Medium Risk
Contract details form lifecycle and money handling differ between rebuild and buildOnce; ten countries switch paths without browser QA noted in the PR description.

Overview
Ten more onboarding countries now take the build-once contract details path (useContractDetailsSchema) instead of the legacy rebuild flow: medium tier POL, NGA, IRL, SWE, NLD plus AUS, MEX, ZAF, MYS, DOM.

The change is a single internal allowlist update in JSF_V1_CONTRACT_DETAILS_COUNTRIES in utils.ts, which drives usesJsfV1ContractDetails and getContractDetailsStrategy. Unit tests fold all build-once countries into one parameterized usesJsfV1ContractDetails case. The headless-form rollout doc records this batch as #1557 (table reflow is formatting only).

No public API changes; behaviour for countries still on the list (e.g. FRA, CAN) is unchanged.

Reviewed by Cursor Bugbot for commit 129f6b0. Bugbot is set up for automated code reviews on this repo. Configure here.

Moves POL, NGA, IRL, SWE and NLD onto the jsf v1 build-once path, like #1507 did for the high tier.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

📦 Bundle Size Report

Metric Current Previous Change Status
Total (gzip) 230.8 kB 230.76 kB +38 B (+0.0%) 🔴
Total (raw) 642.63 kB 642.57 kB +60 B (+0.0%) 🔴
CSS (gzip) 21.95 kB 21.95 kB 0 B (0%) 🟢
CSS (raw) 114.51 kB 114.51 kB 0 B (0%) 🟢

Size Limits

  • ✅ Total gzipped: 230.8 kB / 350 kB (65.9%)
  • ✅ Total raw: 642.63 kB / 850 kB (75.6%)
  • ✅ CSS gzipped: 21.95 kB / 25 kB (87.8%)

Largest Files (Top 5)

  1. index.esm-wIkXrqU6.js - 11.4 kB (0 B (0%))
  2. styles.css - 10.97 kB (0 B (0%))
  3. index.css - 10.97 kB (0 B (0%))
  4. internals-BOZceErx.js - 6.13 kB (0 B (0%))
  5. hooks-ThU7CDLI.js - 5.85 kB (0 B (0%))
View All Files (291 total)
File Size (gzip) Change
index.esm-wIkXrqU6.js 11.4 kB 0 B (0%)
styles.css 10.97 kB 0 B (0%)
index.css 10.97 kB 0 B (0%)
internals-BOZceErx.js 6.13 kB 0 B (0%)
hooks-ThU7CDLI.js 5.85 kB 0 B (0%)
sdk.gen-BRPiw4M1.js 5.58 kB 0 B (0%)
index.js 5.51 kB 0 B (0%)
flows/Onboarding/hooks.js 4.67 kB 0 B (0%)
utils-CUgvJHl4.js 4.07 kB 0 B (0%)
FieldSetField-D0HdSLTs.js 4.04 kB 0 B (0%)

✅ Bundle size check passed

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Deploy preview for remote-flows ready!

Project:remote-flows
Status: ✅  Deploy successful!
Preview URL:https://remote-flows-aaz8c4txo-remotecom.vercel.app
Latest Commit:129f6b0

Deployed with vercel-action

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Deploy preview for adp-cost-calculator ready!

Project:adp-cost-calculator
Status: ✅  Deploy successful!
Preview URL:https://adp-cost-calculator-b382k54m5-remotecom.vercel.app
Latest Commit:129f6b0

Deployed with vercel-action

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

📊 Coverage Report

⚠️ Coverage decreased

Metric Current Previous Change Status
Lines 89.58% 89.59% -0.02% 🔴
Statements 89.45% 89.47% -0.02% 🔴
Functions 88.48% 88.48% 0% ⚪
Branches 81.21% 81.24% -0.02% 🔴

Detailed Breakdown

Lines Coverage
  • Covered: 5396 / 6024
  • Coverage: 89.58%
  • Change: -0.02% (-1 lines)
Statements Coverage
  • Covered: 5461 / 6105
  • Coverage: 89.45%
  • Change: -0.02% (-1 statements)
Functions Coverage
  • Covered: 1428 / 1614
  • Coverage: 88.48%
  • Change: 0% (0 functions)
Branches Coverage
  • Covered: 3350 / 4125
  • Coverage: 81.21%
  • Change: -0.02% (-1 branches)

✅ Coverage check passed

@gabrielseco
gabrielseco marked this pull request as ready for review October 14, 2026 03:25
@gabrielseco
gabrielseco merged commit 69717fc into main Oct 15, 2026
15 checks passed
@gabrielseco
gabrielseco deleted the workbench/g-2026-10-14-jsf-v1-pol-nga-irl-swe-nld branch October 15, 2026 14:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants