pigeongov 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +258 -0
- package/LICENSE +21 -0
- package/PRIVACY.md +38 -0
- package/README.md +234 -0
- package/agents.json +72 -0
- package/dist/bin/pigeongov.d.ts +2 -0
- package/dist/bin/pigeongov.js +4 -0
- package/dist/bin/pigeongov.js.map +1 -0
- package/dist/src/advisory/decision-support/contribution-optimizer.d.ts +36 -0
- package/dist/src/advisory/decision-support/contribution-optimizer.js +88 -0
- package/dist/src/advisory/decision-support/contribution-optimizer.js.map +1 -0
- package/dist/src/advisory/decision-support/deduction-optimizer.d.ts +31 -0
- package/dist/src/advisory/decision-support/deduction-optimizer.js +96 -0
- package/dist/src/advisory/decision-support/deduction-optimizer.js.map +1 -0
- package/dist/src/advisory/life-events/events.d.ts +4 -0
- package/dist/src/advisory/life-events/events.js +156 -0
- package/dist/src/advisory/life-events/events.js.map +1 -0
- package/dist/src/advisory/life-events/planner.d.ts +19 -0
- package/dist/src/advisory/life-events/planner.js +72 -0
- package/dist/src/advisory/life-events/planner.js.map +1 -0
- package/dist/src/advisory/screener/engine.d.ts +4 -0
- package/dist/src/advisory/screener/engine.js +368 -0
- package/dist/src/advisory/screener/engine.js.map +1 -0
- package/dist/src/advisory/screener/intake.d.ts +68 -0
- package/dist/src/advisory/screener/intake.js +93 -0
- package/dist/src/advisory/screener/intake.js.map +1 -0
- package/dist/src/analytics/stats.d.ts +18 -0
- package/dist/src/analytics/stats.js +158 -0
- package/dist/src/analytics/stats.js.map +1 -0
- package/dist/src/api/handlers/deadlines.d.ts +2 -0
- package/dist/src/api/handlers/deadlines.js +7 -0
- package/dist/src/api/handlers/deadlines.js.map +1 -0
- package/dist/src/api/handlers/openapi.d.ts +2 -0
- package/dist/src/api/handlers/openapi.js +7 -0
- package/dist/src/api/handlers/openapi.js.map +1 -0
- package/dist/src/api/handlers/workflows.d.ts +5 -0
- package/dist/src/api/handlers/workflows.js +73 -0
- package/dist/src/api/handlers/workflows.js.map +1 -0
- package/dist/src/api/index.d.ts +20 -0
- package/dist/src/api/index.js +70 -0
- package/dist/src/api/index.js.map +1 -0
- package/dist/src/api/openapi.d.ts +5 -0
- package/dist/src/api/openapi.js +384 -0
- package/dist/src/api/openapi.js.map +1 -0
- package/dist/src/api/router.d.ts +19 -0
- package/dist/src/api/router.js +57 -0
- package/dist/src/api/router.js.map +1 -0
- package/dist/src/cli/commands/completions.d.ts +2 -0
- package/dist/src/cli/commands/completions.js +396 -0
- package/dist/src/cli/commands/completions.js.map +1 -0
- package/dist/src/cli/commands/deadlines.d.ts +2 -0
- package/dist/src/cli/commands/deadlines.js +47 -0
- package/dist/src/cli/commands/deadlines.js.map +1 -0
- package/dist/src/cli/commands/doctor.d.ts +2 -0
- package/dist/src/cli/commands/doctor.js +50 -0
- package/dist/src/cli/commands/doctor.js.map +1 -0
- package/dist/src/cli/commands/drafts.d.ts +2 -0
- package/dist/src/cli/commands/drafts.js +75 -0
- package/dist/src/cli/commands/drafts.js.map +1 -0
- package/dist/src/cli/commands/extract.d.ts +2 -0
- package/dist/src/cli/commands/extract.js +17 -0
- package/dist/src/cli/commands/extract.js.map +1 -0
- package/dist/src/cli/commands/fees.d.ts +2 -0
- package/dist/src/cli/commands/fees.js +40 -0
- package/dist/src/cli/commands/fees.js.map +1 -0
- package/dist/src/cli/commands/fill.d.ts +25 -0
- package/dist/src/cli/commands/fill.js +354 -0
- package/dist/src/cli/commands/fill.js.map +1 -0
- package/dist/src/cli/commands/glossary.d.ts +2 -0
- package/dist/src/cli/commands/glossary.js +90 -0
- package/dist/src/cli/commands/glossary.js.map +1 -0
- package/dist/src/cli/commands/life-event.d.ts +2 -0
- package/dist/src/cli/commands/life-event.js +41 -0
- package/dist/src/cli/commands/life-event.js.map +1 -0
- package/dist/src/cli/commands/list.d.ts +2 -0
- package/dist/src/cli/commands/list.js +19 -0
- package/dist/src/cli/commands/list.js.map +1 -0
- package/dist/src/cli/commands/machine.d.ts +2 -0
- package/dist/src/cli/commands/machine.js +100 -0
- package/dist/src/cli/commands/machine.js.map +1 -0
- package/dist/src/cli/commands/merge.d.ts +2 -0
- package/dist/src/cli/commands/merge.js +24 -0
- package/dist/src/cli/commands/merge.js.map +1 -0
- package/dist/src/cli/commands/plugin.d.ts +2 -0
- package/dist/src/cli/commands/plugin.js +119 -0
- package/dist/src/cli/commands/plugin.js.map +1 -0
- package/dist/src/cli/commands/profile.d.ts +2 -0
- package/dist/src/cli/commands/profile.js +125 -0
- package/dist/src/cli/commands/profile.js.map +1 -0
- package/dist/src/cli/commands/review.d.ts +2 -0
- package/dist/src/cli/commands/review.js +25 -0
- package/dist/src/cli/commands/review.js.map +1 -0
- package/dist/src/cli/commands/scaffold.d.ts +2 -0
- package/dist/src/cli/commands/scaffold.js +304 -0
- package/dist/src/cli/commands/scaffold.js.map +1 -0
- package/dist/src/cli/commands/schemas.d.ts +2 -0
- package/dist/src/cli/commands/schemas.js +14 -0
- package/dist/src/cli/commands/schemas.js.map +1 -0
- package/dist/src/cli/commands/screen.d.ts +2 -0
- package/dist/src/cli/commands/screen.js +89 -0
- package/dist/src/cli/commands/screen.js.map +1 -0
- package/dist/src/cli/commands/serve.d.ts +2 -0
- package/dist/src/cli/commands/serve.js +46 -0
- package/dist/src/cli/commands/serve.js.map +1 -0
- package/dist/src/cli/commands/start.d.ts +2 -0
- package/dist/src/cli/commands/start.js +16 -0
- package/dist/src/cli/commands/start.js.map +1 -0
- package/dist/src/cli/commands/stats.d.ts +2 -0
- package/dist/src/cli/commands/stats.js +17 -0
- package/dist/src/cli/commands/stats.js.map +1 -0
- package/dist/src/cli/commands/testdata.d.ts +2 -0
- package/dist/src/cli/commands/testdata.js +60 -0
- package/dist/src/cli/commands/testdata.js.map +1 -0
- package/dist/src/cli/commands/tui.d.ts +2 -0
- package/dist/src/cli/commands/tui.js +26 -0
- package/dist/src/cli/commands/tui.js.map +1 -0
- package/dist/src/cli/commands/validate.d.ts +2 -0
- package/dist/src/cli/commands/validate.js +22 -0
- package/dist/src/cli/commands/validate.js.map +1 -0
- package/dist/src/cli/commands/vault.d.ts +2 -0
- package/dist/src/cli/commands/vault.js +73 -0
- package/dist/src/cli/commands/vault.js.map +1 -0
- package/dist/src/cli/commands/workflows.d.ts +2 -0
- package/dist/src/cli/commands/workflows.js +23 -0
- package/dist/src/cli/commands/workflows.js.map +1 -0
- package/dist/src/cli/display/review.d.ts +2 -0
- package/dist/src/cli/display/review.js +4 -0
- package/dist/src/cli/display/review.js.map +1 -0
- package/dist/src/cli/display/summary.d.ts +2 -0
- package/dist/src/cli/display/summary.js +19 -0
- package/dist/src/cli/display/summary.js.map +1 -0
- package/dist/src/cli/display/validation.d.ts +2 -0
- package/dist/src/cli/display/validation.js +16 -0
- package/dist/src/cli/display/validation.js.map +1 -0
- package/dist/src/cli/index.d.ts +1 -0
- package/dist/src/cli/index.js +83 -0
- package/dist/src/cli/index.js.map +1 -0
- package/dist/src/cli/output.d.ts +21 -0
- package/dist/src/cli/output.js +107 -0
- package/dist/src/cli/output.js.map +1 -0
- package/dist/src/cli/prompts/common.d.ts +21 -0
- package/dist/src/cli/prompts/common.js +53 -0
- package/dist/src/cli/prompts/common.js.map +1 -0
- package/dist/src/cli/prompts/credits.d.ts +3 -0
- package/dist/src/cli/prompts/credits.js +23 -0
- package/dist/src/cli/prompts/credits.js.map +1 -0
- package/dist/src/cli/prompts/deductions.d.ts +12 -0
- package/dist/src/cli/prompts/deductions.js +26 -0
- package/dist/src/cli/prompts/deductions.js.map +1 -0
- package/dist/src/cli/prompts/identity.d.ts +8 -0
- package/dist/src/cli/prompts/identity.js +36 -0
- package/dist/src/cli/prompts/identity.js.map +1 -0
- package/dist/src/cli/prompts/income.d.ts +15 -0
- package/dist/src/cli/prompts/income.js +61 -0
- package/dist/src/cli/prompts/income.js.map +1 -0
- package/dist/src/cli/prompts/workflow.d.ts +3 -0
- package/dist/src/cli/prompts/workflow.js +74 -0
- package/dist/src/cli/prompts/workflow.js.map +1 -0
- package/dist/src/cli/support.d.ts +53 -0
- package/dist/src/cli/support.js +80 -0
- package/dist/src/cli/support.js.map +1 -0
- package/dist/src/cli/tui.d.ts +22 -0
- package/dist/src/cli/tui.js +122 -0
- package/dist/src/cli/tui.js.map +1 -0
- package/dist/src/engine/audit-risk/scorer.d.ts +36 -0
- package/dist/src/engine/audit-risk/scorer.js +132 -0
- package/dist/src/engine/audit-risk/scorer.js.map +1 -0
- package/dist/src/engine/crypto/cost-basis.d.ts +19 -0
- package/dist/src/engine/crypto/cost-basis.js +115 -0
- package/dist/src/engine/crypto/cost-basis.js.map +1 -0
- package/dist/src/engine/crypto/transaction-parser.d.ts +36 -0
- package/dist/src/engine/crypto/transaction-parser.js +124 -0
- package/dist/src/engine/crypto/transaction-parser.js.map +1 -0
- package/dist/src/engine/crypto/wash-sale.d.ts +25 -0
- package/dist/src/engine/crypto/wash-sale.js +51 -0
- package/dist/src/engine/crypto/wash-sale.js.map +1 -0
- package/dist/src/engine/equity/espp.d.ts +41 -0
- package/dist/src/engine/equity/espp.js +90 -0
- package/dist/src/engine/equity/espp.js.map +1 -0
- package/dist/src/engine/equity/iso.d.ts +42 -0
- package/dist/src/engine/equity/iso.js +94 -0
- package/dist/src/engine/equity/iso.js.map +1 -0
- package/dist/src/engine/equity/nso.d.ts +35 -0
- package/dist/src/engine/equity/nso.js +63 -0
- package/dist/src/engine/equity/nso.js.map +1 -0
- package/dist/src/engine/equity/rsu.d.ts +33 -0
- package/dist/src/engine/equity/rsu.js +64 -0
- package/dist/src/engine/equity/rsu.js.map +1 -0
- package/dist/src/engine/field-mapper.d.ts +26 -0
- package/dist/src/engine/field-mapper.js +119 -0
- package/dist/src/engine/field-mapper.js.map +1 -0
- package/dist/src/engine/forms/core-1040.d.ts +2 -0
- package/dist/src/engine/forms/core-1040.js +124 -0
- package/dist/src/engine/forms/core-1040.js.map +1 -0
- package/dist/src/engine/forms/form-8949.d.ts +21 -0
- package/dist/src/engine/forms/form-8949.js +96 -0
- package/dist/src/engine/forms/form-8949.js.map +1 -0
- package/dist/src/engine/forms/index.d.ts +7 -0
- package/dist/src/engine/forms/index.js +6 -0
- package/dist/src/engine/forms/index.js.map +1 -0
- package/dist/src/engine/forms/schedule-b.d.ts +15 -0
- package/dist/src/engine/forms/schedule-b.js +78 -0
- package/dist/src/engine/forms/schedule-b.js.map +1 -0
- package/dist/src/engine/forms/schedule-d.d.ts +9 -0
- package/dist/src/engine/forms/schedule-d.js +86 -0
- package/dist/src/engine/forms/schedule-d.js.map +1 -0
- package/dist/src/engine/fpl.d.ts +70 -0
- package/dist/src/engine/fpl.js +127 -0
- package/dist/src/engine/fpl.js.map +1 -0
- package/dist/src/engine/gig/home-office.d.ts +34 -0
- package/dist/src/engine/gig/home-office.js +53 -0
- package/dist/src/engine/gig/home-office.js.map +1 -0
- package/dist/src/engine/gig/mileage.d.ts +30 -0
- package/dist/src/engine/gig/mileage.js +45 -0
- package/dist/src/engine/gig/mileage.js.map +1 -0
- package/dist/src/engine/gig/multi-1099.d.ts +19 -0
- package/dist/src/engine/gig/multi-1099.js +28 -0
- package/dist/src/engine/gig/multi-1099.js.map +1 -0
- package/dist/src/engine/multiyear/carryforward.d.ts +31 -0
- package/dist/src/engine/multiyear/carryforward.js +77 -0
- package/dist/src/engine/multiyear/carryforward.js.map +1 -0
- package/dist/src/engine/multiyear/compare.d.ts +25 -0
- package/dist/src/engine/multiyear/compare.js +94 -0
- package/dist/src/engine/multiyear/compare.js.map +1 -0
- package/dist/src/engine/multiyear/import.d.ts +23 -0
- package/dist/src/engine/multiyear/import.js +193 -0
- package/dist/src/engine/multiyear/import.js.map +1 -0
- package/dist/src/engine/optimizer/filing-status.d.ts +29 -0
- package/dist/src/engine/optimizer/filing-status.js +66 -0
- package/dist/src/engine/optimizer/filing-status.js.map +1 -0
- package/dist/src/engine/orchestrator.d.ts +14 -0
- package/dist/src/engine/orchestrator.js +135 -0
- package/dist/src/engine/orchestrator.js.map +1 -0
- package/dist/src/engine/scenarios/whatif.d.ts +34 -0
- package/dist/src/engine/scenarios/whatif.js +70 -0
- package/dist/src/engine/scenarios/whatif.js.map +1 -0
- package/dist/src/engine/state/ca/calculator.d.ts +3 -0
- package/dist/src/engine/state/ca/calculator.js +107 -0
- package/dist/src/engine/state/ca/calculator.js.map +1 -0
- package/dist/src/engine/state/common.d.ts +39 -0
- package/dist/src/engine/state/common.js +115 -0
- package/dist/src/engine/state/common.js.map +1 -0
- package/dist/src/engine/state/ga/calculator.d.ts +3 -0
- package/dist/src/engine/state/ga/calculator.js +82 -0
- package/dist/src/engine/state/ga/calculator.js.map +1 -0
- package/dist/src/engine/state/il/calculator.d.ts +3 -0
- package/dist/src/engine/state/il/calculator.js +49 -0
- package/dist/src/engine/state/il/calculator.js.map +1 -0
- package/dist/src/engine/state/mi/calculator.d.ts +3 -0
- package/dist/src/engine/state/mi/calculator.js +60 -0
- package/dist/src/engine/state/mi/calculator.js.map +1 -0
- package/dist/src/engine/state/nc/calculator.d.ts +3 -0
- package/dist/src/engine/state/nc/calculator.js +54 -0
- package/dist/src/engine/state/nc/calculator.js.map +1 -0
- package/dist/src/engine/state/nj/calculator.d.ts +3 -0
- package/dist/src/engine/state/nj/calculator.js +90 -0
- package/dist/src/engine/state/nj/calculator.js.map +1 -0
- package/dist/src/engine/state/ny/calculator.d.ts +3 -0
- package/dist/src/engine/state/ny/calculator.js +103 -0
- package/dist/src/engine/state/ny/calculator.js.map +1 -0
- package/dist/src/engine/state/oh/calculator.d.ts +3 -0
- package/dist/src/engine/state/oh/calculator.js +79 -0
- package/dist/src/engine/state/oh/calculator.js.map +1 -0
- package/dist/src/engine/state/pa/calculator.d.ts +3 -0
- package/dist/src/engine/state/pa/calculator.js +58 -0
- package/dist/src/engine/state/pa/calculator.js.map +1 -0
- package/dist/src/engine/state/registry.d.ts +9 -0
- package/dist/src/engine/state/registry.js +67 -0
- package/dist/src/engine/state/registry.js.map +1 -0
- package/dist/src/engine/state/types.d.ts +57 -0
- package/dist/src/engine/state/types.js +2 -0
- package/dist/src/engine/state/types.js.map +1 -0
- package/dist/src/engine/state/va/calculator.d.ts +3 -0
- package/dist/src/engine/state/va/calculator.js +76 -0
- package/dist/src/engine/state/va/calculator.js.map +1 -0
- package/dist/src/engine/suggestions/missed-deductions.d.ts +43 -0
- package/dist/src/engine/suggestions/missed-deductions.js +128 -0
- package/dist/src/engine/suggestions/missed-deductions.js.map +1 -0
- package/dist/src/engine/tax-calculator.d.ts +55 -0
- package/dist/src/engine/tax-calculator.js +156 -0
- package/dist/src/engine/tax-calculator.js.map +1 -0
- package/dist/src/engine/tax-constants-2025.d.ts +56 -0
- package/dist/src/engine/tax-constants-2025.js +138 -0
- package/dist/src/engine/tax-constants-2025.js.map +1 -0
- package/dist/src/engine/types.d.ts +77 -0
- package/dist/src/engine/types.js +2 -0
- package/dist/src/engine/types.js.map +1 -0
- package/dist/src/engine/va-math.d.ts +24 -0
- package/dist/src/engine/va-math.js +90 -0
- package/dist/src/engine/va-math.js.map +1 -0
- package/dist/src/engine/validator.d.ts +7 -0
- package/dist/src/engine/validator.js +108 -0
- package/dist/src/engine/validator.js.map +1 -0
- package/dist/src/glossary/entries/healthcare.d.ts +2 -0
- package/dist/src/glossary/entries/healthcare.js +78 -0
- package/dist/src/glossary/entries/healthcare.js.map +1 -0
- package/dist/src/glossary/entries/immigration.d.ts +2 -0
- package/dist/src/glossary/entries/immigration.js +112 -0
- package/dist/src/glossary/entries/immigration.js.map +1 -0
- package/dist/src/glossary/entries/tax.d.ts +2 -0
- package/dist/src/glossary/entries/tax.js +149 -0
- package/dist/src/glossary/entries/tax.js.map +1 -0
- package/dist/src/glossary/entries/unemployment.d.ts +2 -0
- package/dist/src/glossary/entries/unemployment.js +52 -0
- package/dist/src/glossary/entries/unemployment.js.map +1 -0
- package/dist/src/glossary/index.d.ts +19 -0
- package/dist/src/glossary/index.js +39 -0
- package/dist/src/glossary/index.js.map +1 -0
- package/dist/src/i18n/index.d.ts +21 -0
- package/dist/src/i18n/index.js +92 -0
- package/dist/src/i18n/index.js.map +1 -0
- package/dist/src/mcp/result.d.ts +3 -0
- package/dist/src/mcp/result.js +7 -0
- package/dist/src/mcp/result.js.map +1 -0
- package/dist/src/mcp/return-bundle.d.ts +19 -0
- package/dist/src/mcp/return-bundle.js +49 -0
- package/dist/src/mcp/return-bundle.js.map +1 -0
- package/dist/src/mcp/shared.d.ts +49102 -0
- package/dist/src/mcp/shared.js +354 -0
- package/dist/src/mcp/shared.js.map +1 -0
- package/dist/src/mcp/tools/build-packet.d.ts +7 -0
- package/dist/src/mcp/tools/build-packet.js +23 -0
- package/dist/src/mcp/tools/build-packet.js.map +1 -0
- package/dist/src/mcp/tools/calculate-tax.d.ts +40 -0
- package/dist/src/mcp/tools/calculate-tax.js +17 -0
- package/dist/src/mcp/tools/calculate-tax.js.map +1 -0
- package/dist/src/mcp/tools/deadlines.d.ts +7 -0
- package/dist/src/mcp/tools/deadlines.js +23 -0
- package/dist/src/mcp/tools/deadlines.js.map +1 -0
- package/dist/src/mcp/tools/describe-form.d.ts +14 -0
- package/dist/src/mcp/tools/describe-form.js +23 -0
- package/dist/src/mcp/tools/describe-form.js.map +1 -0
- package/dist/src/mcp/tools/describe-workflow.d.ts +6 -0
- package/dist/src/mcp/tools/describe-workflow.js +16 -0
- package/dist/src/mcp/tools/describe-workflow.js.map +1 -0
- package/dist/src/mcp/tools/explain-flag.d.ts +7 -0
- package/dist/src/mcp/tools/explain-flag.js +19 -0
- package/dist/src/mcp/tools/explain-flag.js.map +1 -0
- package/dist/src/mcp/tools/extract-document.d.ts +13 -0
- package/dist/src/mcp/tools/extract-document.js +20 -0
- package/dist/src/mcp/tools/extract-document.js.map +1 -0
- package/dist/src/mcp/tools/fees.d.ts +7 -0
- package/dist/src/mcp/tools/fees.js +24 -0
- package/dist/src/mcp/tools/fees.js.map +1 -0
- package/dist/src/mcp/tools/fill-form.d.ts +56 -0
- package/dist/src/mcp/tools/fill-form.js +47 -0
- package/dist/src/mcp/tools/fill-form.js.map +1 -0
- package/dist/src/mcp/tools/fill-workflow.d.ts +7 -0
- package/dist/src/mcp/tools/fill-workflow.js +24 -0
- package/dist/src/mcp/tools/fill-workflow.js.map +1 -0
- package/dist/src/mcp/tools/glossary.d.ts +8 -0
- package/dist/src/mcp/tools/glossary.js +54 -0
- package/dist/src/mcp/tools/glossary.js.map +1 -0
- package/dist/src/mcp/tools/list-forms.d.ts +6 -0
- package/dist/src/mcp/tools/list-forms.js +15 -0
- package/dist/src/mcp/tools/list-forms.js.map +1 -0
- package/dist/src/mcp/tools/list-workflows.d.ts +6 -0
- package/dist/src/mcp/tools/list-workflows.js +16 -0
- package/dist/src/mcp/tools/list-workflows.js.map +1 -0
- package/dist/src/mcp/tools/plan-life-event.d.ts +59 -0
- package/dist/src/mcp/tools/plan-life-event.js +41 -0
- package/dist/src/mcp/tools/plan-life-event.js.map +1 -0
- package/dist/src/mcp/tools/review-form.d.ts +40 -0
- package/dist/src/mcp/tools/review-form.js +26 -0
- package/dist/src/mcp/tools/review-form.js.map +1 -0
- package/dist/src/mcp/tools/review-workflow.d.ts +7 -0
- package/dist/src/mcp/tools/review-workflow.js +27 -0
- package/dist/src/mcp/tools/review-workflow.js.map +1 -0
- package/dist/src/mcp/tools/screen-eligibility.d.ts +53 -0
- package/dist/src/mcp/tools/screen-eligibility.js +44 -0
- package/dist/src/mcp/tools/screen-eligibility.js.map +1 -0
- package/dist/src/mcp/tools/start-workflow.d.ts +6 -0
- package/dist/src/mcp/tools/start-workflow.js +17 -0
- package/dist/src/mcp/tools/start-workflow.js.map +1 -0
- package/dist/src/mcp/tools/validate-form.d.ts +48 -0
- package/dist/src/mcp/tools/validate-form.js +30 -0
- package/dist/src/mcp/tools/validate-form.js.map +1 -0
- package/dist/src/mcp/tools/validate-workflow.d.ts +7 -0
- package/dist/src/mcp/tools/validate-workflow.js +24 -0
- package/dist/src/mcp/tools/validate-workflow.js.map +1 -0
- package/dist/src/pdf/batch.d.ts +8 -0
- package/dist/src/pdf/batch.js +15 -0
- package/dist/src/pdf/batch.js.map +1 -0
- package/dist/src/pdf/merge.d.ts +10 -0
- package/dist/src/pdf/merge.js +62 -0
- package/dist/src/pdf/merge.js.map +1 -0
- package/dist/src/pdf/ocr.d.ts +22 -0
- package/dist/src/pdf/ocr.js +52 -0
- package/dist/src/pdf/ocr.js.map +1 -0
- package/dist/src/pdf/reader.d.ts +2 -0
- package/dist/src/pdf/reader.js +354 -0
- package/dist/src/pdf/reader.js.map +1 -0
- package/dist/src/pdf/shared.d.ts +89 -0
- package/dist/src/pdf/shared.js +137 -0
- package/dist/src/pdf/shared.js.map +1 -0
- package/dist/src/pdf/writer.d.ts +7 -0
- package/dist/src/pdf/writer.js +311 -0
- package/dist/src/pdf/writer.js.map +1 -0
- package/dist/src/plugins/loader.d.ts +15 -0
- package/dist/src/plugins/loader.js +86 -0
- package/dist/src/plugins/loader.js.map +1 -0
- package/dist/src/plugins/sandbox.d.ts +14 -0
- package/dist/src/plugins/sandbox.js +88 -0
- package/dist/src/plugins/sandbox.js.map +1 -0
- package/dist/src/plugins/types.d.ts +17 -0
- package/dist/src/plugins/types.js +13 -0
- package/dist/src/plugins/types.js.map +1 -0
- package/dist/src/schemas/2025/f1040.d.ts +127 -0
- package/dist/src/schemas/2025/f1040.js +104 -0
- package/dist/src/schemas/2025/f1040.js.map +1 -0
- package/dist/src/schemas/2025/f1099-int.d.ts +53 -0
- package/dist/src/schemas/2025/f1099-int.js +51 -0
- package/dist/src/schemas/2025/f1099-int.js.map +1 -0
- package/dist/src/schemas/2025/f1099-nec.d.ts +47 -0
- package/dist/src/schemas/2025/f1099-nec.js +45 -0
- package/dist/src/schemas/2025/f1099-nec.js.map +1 -0
- package/dist/src/schemas/2025/form-8949.d.ts +46 -0
- package/dist/src/schemas/2025/form-8949.js +71 -0
- package/dist/src/schemas/2025/form-8949.js.map +1 -0
- package/dist/src/schemas/2025/index.d.ts +1004 -0
- package/dist/src/schemas/2025/index.js +60 -0
- package/dist/src/schemas/2025/index.js.map +1 -0
- package/dist/src/schemas/2025/schedule-1.d.ts +44 -0
- package/dist/src/schemas/2025/schedule-1.js +56 -0
- package/dist/src/schemas/2025/schedule-1.js.map +1 -0
- package/dist/src/schemas/2025/schedule-b.d.ts +32 -0
- package/dist/src/schemas/2025/schedule-b.js +53 -0
- package/dist/src/schemas/2025/schedule-b.js.map +1 -0
- package/dist/src/schemas/2025/schedule-c.d.ts +58 -0
- package/dist/src/schemas/2025/schedule-c.js +46 -0
- package/dist/src/schemas/2025/schedule-c.js.map +1 -0
- package/dist/src/schemas/2025/schedule-d.d.ts +36 -0
- package/dist/src/schemas/2025/schedule-d.js +52 -0
- package/dist/src/schemas/2025/schedule-d.js.map +1 -0
- package/dist/src/schemas/2025/shared.d.ts +98 -0
- package/dist/src/schemas/2025/shared.js +161 -0
- package/dist/src/schemas/2025/shared.js.map +1 -0
- package/dist/src/schemas/2025/w2.d.ts +57 -0
- package/dist/src/schemas/2025/w2.js +62 -0
- package/dist/src/schemas/2025/w2.js.map +1 -0
- package/dist/src/storage/drafts.d.ts +25 -0
- package/dist/src/storage/drafts.js +117 -0
- package/dist/src/storage/drafts.js.map +1 -0
- package/dist/src/storage/paths.d.ts +15 -0
- package/dist/src/storage/paths.js +33 -0
- package/dist/src/storage/paths.js.map +1 -0
- package/dist/src/storage/profile.d.ts +17 -0
- package/dist/src/storage/profile.js +59 -0
- package/dist/src/storage/profile.js.map +1 -0
- package/dist/src/storage/vault.d.ts +38 -0
- package/dist/src/storage/vault.js +187 -0
- package/dist/src/storage/vault.js.map +1 -0
- package/dist/src/testing/synthetic.d.ts +13 -0
- package/dist/src/testing/synthetic.js +164 -0
- package/dist/src/testing/synthetic.js.map +1 -0
- package/dist/src/types.d.ts +362 -0
- package/dist/src/types.js +2 -0
- package/dist/src/types.js.map +1 -0
- package/dist/src/workflows/deadlines.d.ts +13 -0
- package/dist/src/workflows/deadlines.js +88 -0
- package/dist/src/workflows/deadlines.js.map +1 -0
- package/dist/src/workflows/domains/benefits.d.ts +409 -0
- package/dist/src/workflows/domains/benefits.js +744 -0
- package/dist/src/workflows/domains/benefits.js.map +1 -0
- package/dist/src/workflows/domains/business.d.ts +65 -0
- package/dist/src/workflows/domains/business.js +76 -0
- package/dist/src/workflows/domains/business.js.map +1 -0
- package/dist/src/workflows/domains/education.d.ts +251 -0
- package/dist/src/workflows/domains/education.js +504 -0
- package/dist/src/workflows/domains/education.js.map +1 -0
- package/dist/src/workflows/domains/estate.d.ts +217 -0
- package/dist/src/workflows/domains/estate.js +407 -0
- package/dist/src/workflows/domains/estate.js.map +1 -0
- package/dist/src/workflows/domains/healthcare-ext.d.ts +88 -0
- package/dist/src/workflows/domains/healthcare-ext.js +150 -0
- package/dist/src/workflows/domains/healthcare-ext.js.map +1 -0
- package/dist/src/workflows/domains/healthcare.d.ts +92 -0
- package/dist/src/workflows/domains/healthcare.js +126 -0
- package/dist/src/workflows/domains/healthcare.js.map +1 -0
- package/dist/src/workflows/domains/identity-domain.d.ts +291 -0
- package/dist/src/workflows/domains/identity-domain.js +541 -0
- package/dist/src/workflows/domains/identity-domain.js.map +1 -0
- package/dist/src/workflows/domains/immigration-ext.d.ts +282 -0
- package/dist/src/workflows/domains/immigration-ext.js +590 -0
- package/dist/src/workflows/domains/immigration-ext.js.map +1 -0
- package/dist/src/workflows/domains/immigration.d.ts +121 -0
- package/dist/src/workflows/domains/immigration.js +152 -0
- package/dist/src/workflows/domains/immigration.js.map +1 -0
- package/dist/src/workflows/domains/legal.d.ts +235 -0
- package/dist/src/workflows/domains/legal.js +380 -0
- package/dist/src/workflows/domains/legal.js.map +1 -0
- package/dist/src/workflows/domains/permits.d.ts +65 -0
- package/dist/src/workflows/domains/permits.js +74 -0
- package/dist/src/workflows/domains/permits.js.map +1 -0
- package/dist/src/workflows/domains/retirement.d.ts +59 -0
- package/dist/src/workflows/domains/retirement.js +155 -0
- package/dist/src/workflows/domains/retirement.js.map +1 -0
- package/dist/src/workflows/domains/tax.d.ts +133 -0
- package/dist/src/workflows/domains/tax.js +187 -0
- package/dist/src/workflows/domains/tax.js.map +1 -0
- package/dist/src/workflows/domains/unemployment.d.ts +105 -0
- package/dist/src/workflows/domains/unemployment.js +122 -0
- package/dist/src/workflows/domains/unemployment.js.map +1 -0
- package/dist/src/workflows/domains/veterans.d.ts +189 -0
- package/dist/src/workflows/domains/veterans.js +380 -0
- package/dist/src/workflows/domains/veterans.js.map +1 -0
- package/dist/src/workflows/fees.d.ts +15 -0
- package/dist/src/workflows/fees.js +93 -0
- package/dist/src/workflows/fees.js.map +1 -0
- package/dist/src/workflows/helpers.d.ts +8 -0
- package/dist/src/workflows/helpers.js +66 -0
- package/dist/src/workflows/helpers.js.map +1 -0
- package/dist/src/workflows/io.d.ts +3 -0
- package/dist/src/workflows/io.js +38 -0
- package/dist/src/workflows/io.js.map +1 -0
- package/dist/src/workflows/registry.d.ts +51355 -0
- package/dist/src/workflows/registry.js +140 -0
- package/dist/src/workflows/registry.js.map +1 -0
- package/dist/src/workflows/schemas/benefits.d.ts +78 -0
- package/dist/src/workflows/schemas/benefits.js +91 -0
- package/dist/src/workflows/schemas/benefits.js.map +1 -0
- package/dist/src/workflows/schemas/common.d.ts +27 -0
- package/dist/src/workflows/schemas/common.js +28 -0
- package/dist/src/workflows/schemas/common.js.map +1 -0
- package/dist/src/workflows/schemas/education.d.ts +70 -0
- package/dist/src/workflows/schemas/education.js +85 -0
- package/dist/src/workflows/schemas/education.js.map +1 -0
- package/dist/src/workflows/schemas/estate.d.ts +64 -0
- package/dist/src/workflows/schemas/estate.js +85 -0
- package/dist/src/workflows/schemas/estate.js.map +1 -0
- package/dist/src/workflows/schemas/healthcare-ext.d.ts +15 -0
- package/dist/src/workflows/schemas/healthcare-ext.js +17 -0
- package/dist/src/workflows/schemas/healthcare-ext.js.map +1 -0
- package/dist/src/workflows/schemas/healthcare.d.ts +33 -0
- package/dist/src/workflows/schemas/healthcare.js +20 -0
- package/dist/src/workflows/schemas/healthcare.js.map +1 -0
- package/dist/src/workflows/schemas/identity-domain.d.ts +64 -0
- package/dist/src/workflows/schemas/identity-domain.js +87 -0
- package/dist/src/workflows/schemas/identity-domain.js.map +1 -0
- package/dist/src/workflows/schemas/immigration-ext.d.ts +63 -0
- package/dist/src/workflows/schemas/immigration-ext.js +58 -0
- package/dist/src/workflows/schemas/immigration-ext.js.map +1 -0
- package/dist/src/workflows/schemas/immigration.d.ts +48 -0
- package/dist/src/workflows/schemas/immigration.js +27 -0
- package/dist/src/workflows/schemas/immigration.js.map +1 -0
- package/dist/src/workflows/schemas/legal.d.ts +45 -0
- package/dist/src/workflows/schemas/legal.js +45 -0
- package/dist/src/workflows/schemas/legal.js.map +1 -0
- package/dist/src/workflows/schemas/planning.d.ts +23 -0
- package/dist/src/workflows/schemas/planning.js +15 -0
- package/dist/src/workflows/schemas/planning.js.map +1 -0
- package/dist/src/workflows/schemas/retirement.d.ts +14 -0
- package/dist/src/workflows/schemas/retirement.js +22 -0
- package/dist/src/workflows/schemas/retirement.js.map +1 -0
- package/dist/src/workflows/schemas/tax.d.ts +58 -0
- package/dist/src/workflows/schemas/tax.js +51 -0
- package/dist/src/workflows/schemas/tax.js.map +1 -0
- package/dist/src/workflows/schemas/unemployment.d.ts +33 -0
- package/dist/src/workflows/schemas/unemployment.js +19 -0
- package/dist/src/workflows/schemas/unemployment.js.map +1 -0
- package/dist/src/workflows/schemas/veterans.d.ts +47 -0
- package/dist/src/workflows/schemas/veterans.js +51 -0
- package/dist/src/workflows/schemas/veterans.js.map +1 -0
- package/dist/src/workflows/types.d.ts +9 -0
- package/dist/src/workflows/types.js +2 -0
- package/dist/src/workflows/types.js.map +1 -0
- package/dist/xmcp.config.d.ts +3 -0
- package/dist/xmcp.config.js +29 -0
- package/dist/xmcp.config.js.map +1 -0
- package/llms.txt +48 -0
- package/package.json +82 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface CombinedRatingStep {
|
|
2
|
+
rating: number;
|
|
3
|
+
remainder: number;
|
|
4
|
+
combined: number;
|
|
5
|
+
}
|
|
6
|
+
export interface CombinedRatingResult {
|
|
7
|
+
combinedPercent: number;
|
|
8
|
+
roundedRating: number;
|
|
9
|
+
bilateralFactor: boolean;
|
|
10
|
+
steps: CombinedRatingStep[];
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Calculate the VA combined disability rating.
|
|
14
|
+
*
|
|
15
|
+
* Ratings are sorted highest-first (VA procedure), then applied
|
|
16
|
+
* sequentially using the whole-person method. Each rating reduces
|
|
17
|
+
* the remaining "healthy" portion of the veteran.
|
|
18
|
+
*
|
|
19
|
+
* The math is straightforward but the implications are not:
|
|
20
|
+
* a veteran with ten 10% disabilities gets a combined rating of ~65%,
|
|
21
|
+
* not 100%. The system is designed so that approaching 100% requires
|
|
22
|
+
* increasingly severe individual disabilities.
|
|
23
|
+
*/
|
|
24
|
+
export declare function calculateCombinedRating(ratings: number[]): CombinedRatingResult;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// VA Combined Disability Rating Calculator
|
|
3
|
+
// ---------------------------------------------------------------------------
|
|
4
|
+
// The VA uses "whole person" theory for combining disability ratings.
|
|
5
|
+
// You don't add percentages — you apply each rating to the remaining
|
|
6
|
+
// "healthy" portion of the veteran.
|
|
7
|
+
//
|
|
8
|
+
// Formula: combined = 1 - ((1 - r1) × (1 - r2) × ...)
|
|
9
|
+
// Final rating rounds to nearest 10%.
|
|
10
|
+
//
|
|
11
|
+
// Example: 50% + 30% = 1 - (0.50 × 0.70) = 1 - 0.35 = 0.65 = 65% → 70%
|
|
12
|
+
//
|
|
13
|
+
// The bilateral factor: when disabilities affect both arms, both legs,
|
|
14
|
+
// or paired skeletal muscles, a 10% bonus is added to the combined value
|
|
15
|
+
// of those bilateral disabilities before combining with other ratings.
|
|
16
|
+
// We flag when this might apply but leave the determination to the user,
|
|
17
|
+
// since the bilateral factor requires medical classification data we
|
|
18
|
+
// don't have.
|
|
19
|
+
// ---------------------------------------------------------------------------
|
|
20
|
+
/**
|
|
21
|
+
* Round a combined rating to the nearest 10%.
|
|
22
|
+
* Per VA rules, 0.5 rounds up (so 65% → 70%, 64% → 60%).
|
|
23
|
+
*/
|
|
24
|
+
function roundToNearest10(value) {
|
|
25
|
+
return Math.round(value / 10) * 10;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Calculate the VA combined disability rating.
|
|
29
|
+
*
|
|
30
|
+
* Ratings are sorted highest-first (VA procedure), then applied
|
|
31
|
+
* sequentially using the whole-person method. Each rating reduces
|
|
32
|
+
* the remaining "healthy" portion of the veteran.
|
|
33
|
+
*
|
|
34
|
+
* The math is straightforward but the implications are not:
|
|
35
|
+
* a veteran with ten 10% disabilities gets a combined rating of ~65%,
|
|
36
|
+
* not 100%. The system is designed so that approaching 100% requires
|
|
37
|
+
* increasingly severe individual disabilities.
|
|
38
|
+
*/
|
|
39
|
+
export function calculateCombinedRating(ratings) {
|
|
40
|
+
if (ratings.length === 0) {
|
|
41
|
+
return {
|
|
42
|
+
combinedPercent: 0,
|
|
43
|
+
roundedRating: 0,
|
|
44
|
+
bilateralFactor: false,
|
|
45
|
+
steps: [],
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
// Validate and normalize ratings to decimals
|
|
49
|
+
const validRatings = ratings
|
|
50
|
+
.filter((r) => r > 0 && r <= 100)
|
|
51
|
+
.sort((a, b) => b - a); // highest first, per VA procedure
|
|
52
|
+
if (validRatings.length === 0) {
|
|
53
|
+
return {
|
|
54
|
+
combinedPercent: 0,
|
|
55
|
+
roundedRating: 0,
|
|
56
|
+
bilateralFactor: false,
|
|
57
|
+
steps: [],
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
const steps = [];
|
|
61
|
+
let remainder = 100; // start with 100% "healthy"
|
|
62
|
+
for (const rating of validRatings) {
|
|
63
|
+
const previousRemainder = remainder;
|
|
64
|
+
const disabilityValue = (rating / 100) * remainder;
|
|
65
|
+
remainder = remainder - disabilityValue;
|
|
66
|
+
const combined = 100 - remainder;
|
|
67
|
+
steps.push({
|
|
68
|
+
rating,
|
|
69
|
+
remainder: Number(previousRemainder.toFixed(2)),
|
|
70
|
+
combined: Number(combined.toFixed(2)),
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
const combinedPercent = Number((100 - remainder).toFixed(2));
|
|
74
|
+
const roundedRating = roundToNearest10(combinedPercent);
|
|
75
|
+
// Bilateral factor heuristic: flag if there are 2+ ratings that could
|
|
76
|
+
// plausibly be bilateral (we can't determine this definitively without
|
|
77
|
+
// medical classification, but multiple same-value ratings are a hint)
|
|
78
|
+
const ratingCounts = new Map();
|
|
79
|
+
for (const r of validRatings) {
|
|
80
|
+
ratingCounts.set(r, (ratingCounts.get(r) ?? 0) + 1);
|
|
81
|
+
}
|
|
82
|
+
const bilateralFactor = Array.from(ratingCounts.values()).some((count) => count >= 2);
|
|
83
|
+
return {
|
|
84
|
+
combinedPercent,
|
|
85
|
+
roundedRating,
|
|
86
|
+
bilateralFactor,
|
|
87
|
+
steps,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=va-math.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"va-math.js","sourceRoot":"","sources":["../../../src/engine/va-math.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,2CAA2C;AAC3C,8EAA8E;AAC9E,sEAAsE;AACtE,qEAAqE;AACrE,oCAAoC;AACpC,EAAE;AACF,sDAAsD;AACtD,sCAAsC;AACtC,EAAE;AACF,uEAAuE;AACvE,EAAE;AACF,uEAAuE;AACvE,yEAAyE;AACzE,uEAAuE;AACvE,yEAAyE;AACzE,qEAAqE;AACrE,cAAc;AACd,8EAA8E;AAe9E;;;GAGG;AACH,SAAS,gBAAgB,CAAC,KAAa;IACrC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAiB;IAEjB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,eAAe,EAAE,CAAC;YAClB,aAAa,EAAE,CAAC;YAChB,eAAe,EAAE,KAAK;YACtB,KAAK,EAAE,EAAE;SACV,CAAC;IACJ,CAAC;IAED,6CAA6C;IAC7C,MAAM,YAAY,GAAG,OAAO;SACzB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;SAChC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,kCAAkC;IAE5D,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,eAAe,EAAE,CAAC;YAClB,aAAa,EAAE,CAAC;YAChB,eAAe,EAAE,KAAK;YACtB,KAAK,EAAE,EAAE;SACV,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAyB,EAAE,CAAC;IACvC,IAAI,SAAS,GAAG,GAAG,CAAC,CAAC,4BAA4B;IAEjD,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;QAClC,MAAM,iBAAiB,GAAG,SAAS,CAAC;QACpC,MAAM,eAAe,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC;QACnD,SAAS,GAAG,SAAS,GAAG,eAAe,CAAC;QAExC,MAAM,QAAQ,GAAG,GAAG,GAAG,SAAS,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC;YACT,MAAM;YACN,SAAS,EAAE,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC/C,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACtC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,aAAa,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAExD,sEAAsE;IACtE,uEAAuE;IACvE,sEAAsE;IACtE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7B,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAC5D,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,CACtB,CAAC;IAEF,OAAO;QACL,eAAe;QACf,aAAa;QACb,eAAe;QACf,KAAK;KACN,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ValidationCheck, ValidationFlag } from "../types.js";
|
|
2
|
+
import type { ReturnBundle } from "./field-mapper.js";
|
|
3
|
+
export interface ValidationResult {
|
|
4
|
+
checks: ValidationCheck[];
|
|
5
|
+
flaggedFields: ValidationFlag[];
|
|
6
|
+
}
|
|
7
|
+
export declare function validateReturnBundle(bundle: ReturnBundle): ValidationResult;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
function roundCurrency(value) {
|
|
2
|
+
return Number(value.toFixed(2));
|
|
3
|
+
}
|
|
4
|
+
function nearlyEqual(left, right, epsilon = 0.01) {
|
|
5
|
+
return Math.abs((left ?? 0) - right) <= epsilon;
|
|
6
|
+
}
|
|
7
|
+
function createCheck(id, label, passed, field, expected, actual, severity = "error") {
|
|
8
|
+
const message = passed
|
|
9
|
+
? `${label} matches.`
|
|
10
|
+
: `${label} should be ${expected.toFixed(2)} but was ${(actual ?? 0).toFixed(2)}.`;
|
|
11
|
+
const result = {
|
|
12
|
+
check: {
|
|
13
|
+
id,
|
|
14
|
+
label,
|
|
15
|
+
passed,
|
|
16
|
+
severity,
|
|
17
|
+
message,
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
if (!passed) {
|
|
21
|
+
result.flag = {
|
|
22
|
+
field,
|
|
23
|
+
severity,
|
|
24
|
+
message,
|
|
25
|
+
source: "validator",
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
return result;
|
|
29
|
+
}
|
|
30
|
+
export function validateReturnBundle(bundle) {
|
|
31
|
+
const checks = [];
|
|
32
|
+
const flaggedFields = [];
|
|
33
|
+
const totalIncomeExpected = roundCurrency((bundle.form1040.lines.line1a ?? 0) +
|
|
34
|
+
(bundle.form1040.lines.line2b ?? 0) +
|
|
35
|
+
(bundle.form1040.lines.line3b ?? 0) +
|
|
36
|
+
(bundle.form1040.lines.line8 ?? 0));
|
|
37
|
+
const totalIncomeCheck = createCheck("income-total", "Form 1040 line 9 total income", nearlyEqual(bundle.form1040.lines.line9, totalIncomeExpected), "form1040.lines.line9", totalIncomeExpected, bundle.form1040.lines.line9);
|
|
38
|
+
checks.push(totalIncomeCheck.check);
|
|
39
|
+
if (totalIncomeCheck.flag)
|
|
40
|
+
flaggedFields.push(totalIncomeCheck.flag);
|
|
41
|
+
const agiExpected = roundCurrency((bundle.form1040.lines.line9 ?? 0) - (bundle.form1040.lines.line10 ?? 0));
|
|
42
|
+
const agiCheck = createCheck("agi", "Form 1040 line 11 adjusted gross income", nearlyEqual(bundle.form1040.lines.line11, agiExpected), "form1040.lines.line11", agiExpected, bundle.form1040.lines.line11);
|
|
43
|
+
checks.push(agiCheck.check);
|
|
44
|
+
if (agiCheck.flag)
|
|
45
|
+
flaggedFields.push(agiCheck.flag);
|
|
46
|
+
const deductionExpected = roundCurrency((bundle.form1040.lines.line12a ?? 0) + (bundle.form1040.lines.line12b ?? 0));
|
|
47
|
+
const deductionCheck = createCheck("deduction-total", "Form 1040 line 12z deduction", nearlyEqual(bundle.form1040.lines.line12z, deductionExpected), "form1040.lines.line12z", deductionExpected, bundle.form1040.lines.line12z);
|
|
48
|
+
checks.push(deductionCheck.check);
|
|
49
|
+
if (deductionCheck.flag)
|
|
50
|
+
flaggedFields.push(deductionCheck.flag);
|
|
51
|
+
const taxableIncomeExpected = roundCurrency(Math.max(0, (bundle.form1040.lines.line11 ?? 0) - (bundle.form1040.lines.line12z ?? 0)));
|
|
52
|
+
const taxableCheck = createCheck("taxable-income", "Form 1040 line 13 taxable income", nearlyEqual(bundle.form1040.lines.line13, taxableIncomeExpected), "form1040.lines.line13", taxableIncomeExpected, bundle.form1040.lines.line13);
|
|
53
|
+
checks.push(taxableCheck.check);
|
|
54
|
+
if (taxableCheck.flag)
|
|
55
|
+
flaggedFields.push(taxableCheck.flag);
|
|
56
|
+
const totalTaxExpected = roundCurrency(Math.max(0, (bundle.form1040.lines.line16 ?? 0) - (bundle.form1040.lines.line21 ?? 0)) +
|
|
57
|
+
(bundle.form1040.lines.line17 ?? 0));
|
|
58
|
+
const totalTaxCheck = createCheck("total-tax", "Form 1040 line 24 total tax", nearlyEqual(bundle.form1040.lines.line24, totalTaxExpected), "form1040.lines.line24", totalTaxExpected, bundle.form1040.lines.line24);
|
|
59
|
+
checks.push(totalTaxCheck.check);
|
|
60
|
+
if (totalTaxCheck.flag)
|
|
61
|
+
flaggedFields.push(totalTaxCheck.flag);
|
|
62
|
+
const paymentsExpected = roundCurrency((bundle.form1040.lines.line25a ?? 0) +
|
|
63
|
+
(bundle.form1040.lines.line25b ?? 0) +
|
|
64
|
+
(bundle.form1040.lines.line26 ?? 0) +
|
|
65
|
+
(bundle.form1040.lines.line27 ?? 0) +
|
|
66
|
+
(bundle.form1040.lines.line28 ?? 0) +
|
|
67
|
+
(bundle.form1040.lines.line31 ?? 0));
|
|
68
|
+
const paymentsCheck = createCheck("payments-total", "Form 1040 line 33 total payments", nearlyEqual(bundle.form1040.lines.line33, paymentsExpected), "form1040.lines.line33", paymentsExpected, bundle.form1040.lines.line33);
|
|
69
|
+
checks.push(paymentsCheck.check);
|
|
70
|
+
if (paymentsCheck.flag)
|
|
71
|
+
flaggedFields.push(paymentsCheck.flag);
|
|
72
|
+
const refundVsOwedPassed = (bundle.form1040.lines.line34 ?? 0) === 0 || (bundle.form1040.lines.line37 ?? 0) === 0;
|
|
73
|
+
const refundVsOwedMessage = refundVsOwedPassed
|
|
74
|
+
? "Refund and amount owed are mutually exclusive."
|
|
75
|
+
: "A return cannot show both a refund and an amount owed.";
|
|
76
|
+
checks.push({
|
|
77
|
+
id: "refund-exclusive",
|
|
78
|
+
label: "Refund and amount owed exclusivity",
|
|
79
|
+
passed: refundVsOwedPassed,
|
|
80
|
+
severity: "error",
|
|
81
|
+
message: refundVsOwedMessage,
|
|
82
|
+
});
|
|
83
|
+
if (!refundVsOwedPassed) {
|
|
84
|
+
flaggedFields.push({
|
|
85
|
+
field: "form1040.lines.line34",
|
|
86
|
+
severity: "error",
|
|
87
|
+
message: refundVsOwedMessage,
|
|
88
|
+
source: "validator",
|
|
89
|
+
});
|
|
90
|
+
flaggedFields.push({
|
|
91
|
+
field: "form1040.lines.line37",
|
|
92
|
+
severity: "error",
|
|
93
|
+
message: refundVsOwedMessage,
|
|
94
|
+
source: "validator",
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
if (bundle.scheduleC) {
|
|
98
|
+
const scheduleConsistency = createCheck("schedule-c-net", "Schedule C net profit consistency", nearlyEqual(bundle.schedule1.additionalIncome.line3BusinessIncomeOrLoss, bundle.scheduleC.netProfitOrLoss ?? 0), "schedule1.additionalIncome.line3BusinessIncomeOrLoss", bundle.scheduleC.netProfitOrLoss ?? 0, bundle.schedule1.additionalIncome.line3BusinessIncomeOrLoss, "warning");
|
|
99
|
+
checks.push(scheduleConsistency.check);
|
|
100
|
+
if (scheduleConsistency.flag)
|
|
101
|
+
flaggedFields.push(scheduleConsistency.flag);
|
|
102
|
+
}
|
|
103
|
+
return {
|
|
104
|
+
checks,
|
|
105
|
+
flaggedFields,
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../../../src/engine/validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
export const healthcareGlossaryEntries = [
|
|
2
|
+
{
|
|
3
|
+
term: "Health Insurance Marketplace",
|
|
4
|
+
abbreviation: "Marketplace",
|
|
5
|
+
domain: "healthcare",
|
|
6
|
+
definition: "The federal (HealthCare.gov) or state-run exchange where individuals and families can shop for, compare, and enroll in qualified health insurance plans, often with income-based subsidies.",
|
|
7
|
+
source: "CMS",
|
|
8
|
+
relatedTerms: ["premium", "subsidy", "open enrollment"],
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
term: "Premium",
|
|
12
|
+
domain: "healthcare",
|
|
13
|
+
definition: "The monthly amount you pay for your health insurance plan, regardless of whether you use any medical services. Subsidies can reduce this cost on Marketplace plans.",
|
|
14
|
+
relatedTerms: ["subsidy", "APTC"],
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
term: "Subsidy",
|
|
18
|
+
domain: "healthcare",
|
|
19
|
+
definition: "Financial assistance from the federal government that lowers your monthly premium and/or out-of-pocket costs on Marketplace plans. Eligibility is based on household income relative to the federal poverty level.",
|
|
20
|
+
relatedTerms: ["APTC", "cost-sharing reduction", "MAGI"],
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
term: "Advance Premium Tax Credit",
|
|
24
|
+
abbreviation: "APTC",
|
|
25
|
+
domain: "healthcare",
|
|
26
|
+
definition: "A tax credit paid directly to your insurer each month to lower your Marketplace premium. Based on estimated annual income; reconciled on your tax return via Form 8962.",
|
|
27
|
+
source: "IRS",
|
|
28
|
+
relatedTerms: ["premium", "subsidy", "MAGI"],
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
term: "Qualifying Life Event",
|
|
32
|
+
abbreviation: "QLE",
|
|
33
|
+
domain: "healthcare",
|
|
34
|
+
definition: "A significant change in circumstances — such as marriage, birth of a child, job loss, or moving — that qualifies you for a Special Enrollment Period outside of Open Enrollment.",
|
|
35
|
+
source: "CMS",
|
|
36
|
+
relatedTerms: ["special enrollment", "open enrollment"],
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
term: "Open Enrollment",
|
|
40
|
+
domain: "healthcare",
|
|
41
|
+
definition: "The annual window (typically November 1 through January 15) during which anyone can enroll in or change Marketplace health insurance plans without needing a qualifying life event.",
|
|
42
|
+
source: "CMS",
|
|
43
|
+
relatedTerms: ["QLE", "special enrollment", "Marketplace"],
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
term: "Special Enrollment Period",
|
|
47
|
+
abbreviation: "SEP",
|
|
48
|
+
domain: "healthcare",
|
|
49
|
+
definition: "A period outside Open Enrollment during which you can enroll in a Marketplace plan because you experienced a qualifying life event. Typically lasts 60 days from the event.",
|
|
50
|
+
source: "CMS",
|
|
51
|
+
relatedTerms: ["QLE", "open enrollment"],
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
term: "Modified Adjusted Gross Income",
|
|
55
|
+
abbreviation: "MAGI",
|
|
56
|
+
domain: "healthcare",
|
|
57
|
+
definition: "The income figure used to determine eligibility for Marketplace subsidies and Medicaid. It is your AGI plus untaxed foreign income, non-taxable Social Security benefits, and tax-exempt interest.",
|
|
58
|
+
source: "IRS",
|
|
59
|
+
relatedTerms: ["APTC", "subsidy", "AGI"],
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
term: "Essential Health Benefits",
|
|
63
|
+
abbreviation: "EHB",
|
|
64
|
+
domain: "healthcare",
|
|
65
|
+
definition: "The ten categories of services that all ACA-compliant plans must cover: ambulatory care, emergency services, hospitalization, maternity/newborn, mental health, prescription drugs, rehabilitative services, lab services, preventive care, and pediatric services.",
|
|
66
|
+
source: "CMS",
|
|
67
|
+
relatedTerms: ["Marketplace", "premium"],
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
term: "Cost-Sharing Reduction",
|
|
71
|
+
abbreviation: "CSR",
|
|
72
|
+
domain: "healthcare",
|
|
73
|
+
definition: "A discount that lowers your out-of-pocket costs (deductibles, copays, coinsurance) on Silver-tier Marketplace plans. Available to households earning 100-250% of the federal poverty level.",
|
|
74
|
+
source: "CMS",
|
|
75
|
+
relatedTerms: ["subsidy", "APTC", "premium"],
|
|
76
|
+
},
|
|
77
|
+
];
|
|
78
|
+
//# sourceMappingURL=healthcare.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"healthcare.js","sourceRoot":"","sources":["../../../../src/glossary/entries/healthcare.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,yBAAyB,GAAoB;IACxD;QACE,IAAI,EAAE,8BAA8B;QACpC,YAAY,EAAE,aAAa;QAC3B,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,6LAA6L;QAC/L,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,iBAAiB,CAAC;KACxD;IACD;QACE,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,qKAAqK;QACvK,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;KAClC;IACD;QACE,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,oNAAoN;QACtN,YAAY,EAAE,CAAC,MAAM,EAAE,wBAAwB,EAAE,MAAM,CAAC;KACzD;IACD;QACE,IAAI,EAAE,4BAA4B;QAClC,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,yKAAyK;QAC3K,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC;KAC7C;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,kLAAkL;QACpL,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,CAAC,oBAAoB,EAAE,iBAAiB,CAAC;KACxD;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,qLAAqL;QACvL,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,CAAC,KAAK,EAAE,oBAAoB,EAAE,aAAa,CAAC;KAC3D;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,6KAA6K;QAC/K,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC;KACzC;IACD;QACE,IAAI,EAAE,gCAAgC;QACtC,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,oMAAoM;QACtM,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC;KACzC;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,qQAAqQ;QACvQ,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC;KACzC;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,YAAY;QACpB,UAAU,EACR,6LAA6L;QAC/L,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC;KAC7C;CACF,CAAC"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
export const immigrationGlossaryEntries = [
|
|
2
|
+
{
|
|
3
|
+
term: "Petitioner",
|
|
4
|
+
domain: "immigration",
|
|
5
|
+
definition: "The U.S. citizen or lawful permanent resident who files an immigration petition on behalf of a foreign national family member or employee.",
|
|
6
|
+
source: "USCIS",
|
|
7
|
+
relatedTerms: ["beneficiary", "I-130"],
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
term: "Beneficiary",
|
|
11
|
+
domain: "immigration",
|
|
12
|
+
definition: "The foreign national for whom an immigration petition is filed. The beneficiary is the person who will receive the immigration benefit (e.g., a green card).",
|
|
13
|
+
source: "USCIS",
|
|
14
|
+
relatedTerms: ["petitioner", "adjustment of status"],
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
term: "Adjustment of Status",
|
|
18
|
+
abbreviation: "AOS",
|
|
19
|
+
domain: "immigration",
|
|
20
|
+
definition: "The process of applying for lawful permanent resident status (a green card) while physically present in the United States, using Form I-485.",
|
|
21
|
+
source: "USCIS",
|
|
22
|
+
relatedTerms: ["consular processing", "I-485", "green card"],
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
term: "Consular Processing",
|
|
26
|
+
domain: "immigration",
|
|
27
|
+
definition: "The process of obtaining an immigrant visa through a U.S. embassy or consulate abroad, as an alternative to adjustment of status within the U.S.",
|
|
28
|
+
source: "USCIS",
|
|
29
|
+
relatedTerms: ["adjustment of status", "visa bulletin"],
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
term: "I-130",
|
|
33
|
+
domain: "immigration",
|
|
34
|
+
definition: "Petition for Alien Relative — the form a U.S. citizen or LPR files to establish a qualifying family relationship with a foreign national, the first step in family-based immigration.",
|
|
35
|
+
source: "USCIS",
|
|
36
|
+
relatedTerms: ["petitioner", "beneficiary", "priority date"],
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
term: "I-485",
|
|
40
|
+
domain: "immigration",
|
|
41
|
+
definition: "Application to Register Permanent Residence or Adjust Status — the form used to apply for a green card from within the United States.",
|
|
42
|
+
source: "USCIS",
|
|
43
|
+
relatedTerms: ["adjustment of status", "I-130", "EAD"],
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
term: "Priority Date",
|
|
47
|
+
domain: "immigration",
|
|
48
|
+
definition: "The date that establishes your place in the immigration queue. For family-based cases, it is typically the date USCIS receives the I-130 petition. Your visa becomes available when the visa bulletin shows your priority date is current.",
|
|
49
|
+
source: "USCIS",
|
|
50
|
+
relatedTerms: ["visa bulletin", "I-130"],
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
term: "Visa Bulletin",
|
|
54
|
+
domain: "immigration",
|
|
55
|
+
definition: "A monthly publication by the Department of State showing which priority dates are currently eligible to file or be approved for immigrant visas in each preference category and country.",
|
|
56
|
+
source: "Department of State",
|
|
57
|
+
relatedTerms: ["priority date", "consular processing"],
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
term: "Affidavit of Support",
|
|
61
|
+
domain: "immigration",
|
|
62
|
+
definition: "Form I-864, a legally enforceable contract in which the petitioner/sponsor agrees to financially support the immigrant at 125% of the federal poverty level. Required for most family-based green card applications.",
|
|
63
|
+
source: "USCIS",
|
|
64
|
+
relatedTerms: ["petitioner", "I-485"],
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
term: "Biometrics",
|
|
68
|
+
domain: "immigration",
|
|
69
|
+
definition: "The process of collecting fingerprints, photographs, and a digital signature at a USCIS Application Support Center. Required for background checks as part of most immigration applications.",
|
|
70
|
+
source: "USCIS",
|
|
71
|
+
relatedTerms: ["I-485", "USCIS"],
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
term: "Employment Authorization Document",
|
|
75
|
+
abbreviation: "EAD",
|
|
76
|
+
domain: "immigration",
|
|
77
|
+
definition: "A card (Form I-766) that proves you are authorized to work in the United States. Often issued while an adjustment of status application is pending.",
|
|
78
|
+
source: "USCIS",
|
|
79
|
+
relatedTerms: ["adjustment of status", "advance parole", "I-485"],
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
term: "Advance Parole",
|
|
83
|
+
abbreviation: "AP",
|
|
84
|
+
domain: "immigration",
|
|
85
|
+
definition: "A travel document that allows a person with a pending adjustment of status to travel outside the U.S. and return without abandoning their application.",
|
|
86
|
+
source: "USCIS",
|
|
87
|
+
relatedTerms: ["EAD", "adjustment of status"],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
term: "Green Card",
|
|
91
|
+
domain: "immigration",
|
|
92
|
+
definition: "Common name for a Permanent Resident Card (Form I-551). It proves that the holder is authorized to live and work in the United States permanently.",
|
|
93
|
+
source: "USCIS",
|
|
94
|
+
relatedTerms: ["adjustment of status", "naturalization"],
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
term: "Naturalization",
|
|
98
|
+
domain: "immigration",
|
|
99
|
+
definition: "The process by which a lawful permanent resident becomes a U.S. citizen, typically requiring five years of continuous residence (three if married to a U.S. citizen), passing a civics and English test, and taking the Oath of Allegiance.",
|
|
100
|
+
source: "USCIS",
|
|
101
|
+
relatedTerms: ["green card", "USCIS"],
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
term: "U.S. Citizenship and Immigration Services",
|
|
105
|
+
abbreviation: "USCIS",
|
|
106
|
+
domain: "immigration",
|
|
107
|
+
definition: "The federal agency within the Department of Homeland Security that administers the immigration and naturalization system, processes petitions, and conducts interviews.",
|
|
108
|
+
source: "USCIS",
|
|
109
|
+
relatedTerms: ["I-130", "I-485", "naturalization"],
|
|
110
|
+
},
|
|
111
|
+
];
|
|
112
|
+
//# sourceMappingURL=immigration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"immigration.js","sourceRoot":"","sources":["../../../../src/glossary/entries/immigration.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
export const taxGlossaryEntries = [
|
|
2
|
+
{
|
|
3
|
+
term: "Adjusted Gross Income",
|
|
4
|
+
abbreviation: "AGI",
|
|
5
|
+
domain: "tax",
|
|
6
|
+
definition: "Your gross income minus specific above-the-line deductions such as student loan interest, IRA contributions, and self-employment tax. AGI is the starting point for calculating your taxable income.",
|
|
7
|
+
officialDefinition: "Gross income minus adjustments to income (IRS Publication 17).",
|
|
8
|
+
source: "IRS",
|
|
9
|
+
relatedTerms: ["gross income", "taxable income", "standard deduction"],
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
term: "Standard Deduction",
|
|
13
|
+
domain: "tax",
|
|
14
|
+
definition: "A fixed dollar amount that reduces the income on which you are taxed. The amount depends on your filing status, age, and whether you are blind. Most filers take the standard deduction rather than itemizing.",
|
|
15
|
+
source: "IRS",
|
|
16
|
+
relatedTerms: ["itemized deduction", "filing status", "taxable income"],
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
term: "Itemized Deduction",
|
|
20
|
+
domain: "tax",
|
|
21
|
+
definition: "Specific expenses you can list on Schedule A to reduce your taxable income, including mortgage interest, state/local taxes (SALT), charitable contributions, and medical expenses above a threshold. You choose whichever is greater: standard or itemized.",
|
|
22
|
+
source: "IRS",
|
|
23
|
+
relatedTerms: ["standard deduction", "Schedule C"],
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
term: "Filing Status",
|
|
27
|
+
domain: "tax",
|
|
28
|
+
definition: "A category that determines your tax bracket thresholds, standard deduction amount, and eligibility for certain credits. The five statuses are: Single, Married Filing Jointly, Married Filing Separately, Head of Household, and Qualifying Surviving Spouse.",
|
|
29
|
+
source: "IRS",
|
|
30
|
+
relatedTerms: ["standard deduction", "marginal rate"],
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
term: "W-2",
|
|
34
|
+
abbreviation: "W-2",
|
|
35
|
+
domain: "tax",
|
|
36
|
+
definition: "A form your employer sends you each January showing your total wages and the taxes withheld during the prior year. You need it to file your return accurately.",
|
|
37
|
+
source: "IRS",
|
|
38
|
+
relatedTerms: ["withholding", "wages", "1099"],
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
term: "1099",
|
|
42
|
+
abbreviation: "1099",
|
|
43
|
+
domain: "tax",
|
|
44
|
+
definition: "A family of forms reporting non-wage income: 1099-NEC for freelance/contractor income, 1099-INT for interest, 1099-DIV for dividends, 1099-B for brokerage proceeds, and others.",
|
|
45
|
+
source: "IRS",
|
|
46
|
+
relatedTerms: ["W-2", "self-employment tax", "Schedule C"],
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
term: "Schedule C",
|
|
50
|
+
domain: "tax",
|
|
51
|
+
definition: "The IRS form (attached to your 1040) used to report profit or loss from a sole proprietorship or single-member LLC. Your net Schedule C income is subject to both income tax and self-employment tax.",
|
|
52
|
+
source: "IRS",
|
|
53
|
+
relatedTerms: ["self-employment tax", "1099", "AGI"],
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
term: "Self-Employment Tax",
|
|
57
|
+
abbreviation: "SE tax",
|
|
58
|
+
domain: "tax",
|
|
59
|
+
definition: "The Social Security and Medicare taxes you pay on net self-employment income. The combined rate is 15.3% (12.4% SS + 2.9% Medicare). Half of the SE tax is deductible as an above-the-line adjustment.",
|
|
60
|
+
source: "IRS",
|
|
61
|
+
relatedTerms: ["Schedule C", "AGI", "estimated payments"],
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
term: "Earned Income Tax Credit",
|
|
65
|
+
abbreviation: "EITC",
|
|
66
|
+
domain: "tax",
|
|
67
|
+
definition: "A refundable tax credit for low-to-moderate income workers. The amount depends on income, filing status, and number of qualifying children. It can result in a refund even if you owe no tax.",
|
|
68
|
+
source: "IRS",
|
|
69
|
+
relatedTerms: ["child tax credit", "refund", "AGI"],
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
term: "Child Tax Credit",
|
|
73
|
+
abbreviation: "CTC",
|
|
74
|
+
domain: "tax",
|
|
75
|
+
definition: "A credit of up to $2,000 per qualifying child under age 17. Partially refundable (up to $1,700 as the Additional Child Tax Credit). Phases out at higher incomes.",
|
|
76
|
+
source: "IRS",
|
|
77
|
+
relatedTerms: ["EITC", "dependent", "refund"],
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
term: "Marginal Rate",
|
|
81
|
+
domain: "tax",
|
|
82
|
+
definition: "The tax rate applied to the last dollar of your taxable income. The U.S. uses a progressive system with brackets — each bracket's rate applies only to income within that bracket's range.",
|
|
83
|
+
source: "IRS",
|
|
84
|
+
relatedTerms: ["effective rate", "taxable income", "filing status"],
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
term: "Effective Rate",
|
|
88
|
+
domain: "tax",
|
|
89
|
+
definition: "Your total federal income tax divided by your total taxable income, expressed as a percentage. It is always lower than your marginal rate because lower brackets are taxed at lower rates.",
|
|
90
|
+
relatedTerms: ["marginal rate", "taxable income"],
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
term: "Taxable Income",
|
|
94
|
+
domain: "tax",
|
|
95
|
+
definition: "The portion of your income that is actually subject to federal income tax. Calculated as AGI minus your deduction (standard or itemized) and any qualified business income deduction.",
|
|
96
|
+
source: "IRS",
|
|
97
|
+
relatedTerms: ["AGI", "standard deduction", "itemized deduction"],
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
term: "Gross Income",
|
|
101
|
+
domain: "tax",
|
|
102
|
+
definition: "All income you receive in the form of money, goods, property, and services that is not exempt from tax. Includes wages, interest, dividends, business income, capital gains, and more.",
|
|
103
|
+
source: "IRS",
|
|
104
|
+
relatedTerms: ["AGI", "taxable income"],
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
term: "Exemption",
|
|
108
|
+
domain: "tax",
|
|
109
|
+
definition: "A historical concept (suspended 2018-2025 by TCJA) that reduced taxable income for the taxpayer, spouse, and dependents. The higher standard deduction and child tax credit replaced most of its benefit.",
|
|
110
|
+
source: "IRS",
|
|
111
|
+
relatedTerms: ["standard deduction", "child tax credit"],
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
term: "Withholding",
|
|
115
|
+
domain: "tax",
|
|
116
|
+
definition: "The portion of your paycheck your employer sends directly to the IRS on your behalf throughout the year. Reported on your W-2. If too little is withheld, you may owe at filing time.",
|
|
117
|
+
source: "IRS",
|
|
118
|
+
relatedTerms: ["W-2", "estimated payments", "refund"],
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
term: "Estimated Payments",
|
|
122
|
+
domain: "tax",
|
|
123
|
+
definition: "Quarterly tax payments made directly to the IRS (using Form 1040-ES) by people who have income not subject to withholding — typically freelancers, landlords, and investors. Due April 15, June 15, September 15, and January 15.",
|
|
124
|
+
source: "IRS",
|
|
125
|
+
relatedTerms: ["self-employment tax", "withholding"],
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
term: "Refund",
|
|
129
|
+
domain: "tax",
|
|
130
|
+
definition: "The amount the IRS returns to you when your total payments (withholding + estimated payments + refundable credits) exceed your tax liability. Direct deposit is the fastest way to receive it.",
|
|
131
|
+
source: "IRS",
|
|
132
|
+
relatedTerms: ["withholding", "EITC", "child tax credit"],
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
term: "Amended Return",
|
|
136
|
+
domain: "tax",
|
|
137
|
+
definition: "Form 1040-X, filed to correct errors or claim missed deductions/credits on a previously filed return. You generally have three years from the original filing date to amend.",
|
|
138
|
+
source: "IRS",
|
|
139
|
+
relatedTerms: ["extension", "refund"],
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
term: "Extension",
|
|
143
|
+
domain: "tax",
|
|
144
|
+
definition: "Form 4868 gives you an automatic six-month extension to file (until October 15), but it does not extend the time to pay. Interest and penalties accrue on unpaid balances from April 15.",
|
|
145
|
+
source: "IRS",
|
|
146
|
+
relatedTerms: ["amended return", "estimated payments"],
|
|
147
|
+
},
|
|
148
|
+
];
|
|
149
|
+
//# sourceMappingURL=tax.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tax.js","sourceRoot":"","sources":["../../../../src/glossary/entries/tax.ts"],"names":[],"mappings":"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"}
|