Skip to content
This repository is currently being migrated. It's locked while the migration is in progress.

feat(26-8923): Add React form application — generated by Optimus#44342

Draft
tarratsco wants to merge 19 commits into
mainfrom
optimus/26-8923-fe-20260423T205816Z-a12d
Draft

feat(26-8923): Add React form application — generated by Optimus#44342
tarratsco wants to merge 19 commits into
mainfrom
optimus/26-8923-fe-20260423T205816Z-a12d

Conversation

@tarratsco
Copy link
Copy Markdown
Contributor

⚠️ AI-Generated PR — This pull request was automatically generated by Optimus. All code requires human review and testing before merging.

Are you removing, renaming or moving a folder in this PR?

  • No, I'm not changing any folders

⚠️ TeamSites ⚠️

  • No

Summary

Adds a new vets-website React form application for VA Form 26-8923 — IRRRL Worksheet (Interest Rate Reduction Refinancing Loan), located at src/applications/benefits/26-8923/.

This application provides a structured, multi-chapter form experience for lenders and Veterans completing the IRRRL Worksheet, supporting the VA home loan refinancing process. Key details:

  • Root URL: /housing-assistance/home-loans/irrrl-worksheet
  • Entry point: app-entry.jsx wired via manifest.json with entryName: irrrl-worksheet-26-8923
  • Chapters (5 total):
    • loanIdentification — Loan identification fields to associate the worksheet with a specific VA loan
    • sectionI — Rendered via SectionIPage.jsx; captures existing loan data (original loan terms, balance, interest rate)
    • sectionII — Rendered via SectionIIPage.jsx; captures proposed refinance loan terms
    • sectionIII — Rendered via SectionIIIPage.jsx; captures fee recoupment and net tangible benefit calculations
    • lenderCertification — Lender certification and signature fields
  • Computed line display: ComputedLineDisplay.jsx renders auto-calculated worksheet line items (e.g., monthly payment comparisons, recoupment period) using logic from utils/irrrlCalculations.js, which houses IRRRL-specific financial calculation helpers
  • VADS components used: Form process steps, schema-driven form fields, confirmation page pattern, breadcrumbs enabled via manifest template
  • Styling: sass/26-8923.scss imports VADS CSS library form-process module, platform schemaform and confirmation styles, and adds custom .irrrl-computed-line flexbox layout for computed worksheet line display
  • Save-in-progress / prefill: Configured via platform form config in config/form.js using the standard react-jsonschema-form / platform/forms-system foundation
  • No feature flipper is used; vagovprod: false in the manifest until the form is production-ready
  • Team: Optimus / Aquia

Files

  • src/applications/benefits/26-8923/manifest.json
  • src/applications/benefits/26-8923/sass/26-8923.scss
  • src/applications/benefits/26-8923/app-entry.jsx
  • src/applications/benefits/26-8923/reducers/index.js
  • src/applications/benefits/26-8923/routes.js
  • src/applications/benefits/26-8923/containers/App.jsx
  • src/applications/benefits/26-8923/containers/IntroductionPage.jsx
  • src/applications/benefits/26-8923/containers/ConfirmationPage.jsx
  • src/applications/benefits/26-8923/utils/irrrlCalculations.js
  • src/applications/benefits/26-8923/components/ComputedLineDisplay.jsx
  • src/applications/benefits/26-8923/components/SectionIPage.jsx
  • src/applications/benefits/26-8923/components/SectionIIPage.jsx
  • src/applications/benefits/26-8923/components/SectionIIIPage.jsx
  • src/applications/benefits/26-8923/config/chapters/loanIdentification.js
  • src/applications/benefits/26-8923/config/chapters/sectionI.js
  • src/applications/benefits/26-8923/config/chapters/sectionII.js
  • src/applications/benefits/26-8923/config/chapters/sectionIII.js
  • src/applications/benefits/26-8923/config/chapters/lenderCertification.js
  • src/applications/benefits/26-8923/config/form.js

Related issue(s)

  • department-of-veterans-affairs/va.gov-team#0000

Testing done

  • Code generated by Optimus AI — engineer must verify locally before merging.

Acceptance criteria

  • Unit tests added for form config and page components
  • Unit tests added for irrrlCalculations.js financial calculation utilities
  • ComputedLineDisplay.jsx renders correct computed values for representative inputs
  • No PII/credentials/internal URLs hardcoded
  • Linting warnings addressed
  • Accessibility testing performed
  • Browser console contains no warnings or errors

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.

1 participant