Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include New Citizenship Status Value #3428

Merged
merged 7 commits into from
Jan 31, 2025

Conversation

elipe17
Copy link

@elipe17 elipe17 commented Jan 15, 2025

Summary of Changes

How to Test

List the steps to test the PR
These steps are generic, please adjust as necessary.

cd tdrs-frontend && docker-compose up
cd tdrs-backend && docker-compose up
  1. Open http://localhost:3000/ and sign in.
  2. Modify the value of CITIZENSHIP_STATUS in a Active file to be a 3
  3. Assert the value doesn't generate a parser error

Deliverables

More details on how deliverables herein are assessed included here.

Deliverable 1: Accepted Features

Checklist of ACs:

  • Each TANF Active and Closed file T2, T3, and T5 allows 3 as a valid input for Citizenship/Immigration Status.
  • Testing Checklist has been run and all tests pass
  • README is updated, if necessary

Deliverable 2: Tested Code

  • Are all areas of code introduced in this PR meaningfully tested?
    • If this PR introduces backend code changes, are they meaningfully tested?
    • If this PR introduces frontend code changes, are they meaningfully tested?
  • Are code coverage minimums met?
    • Frontend coverage: [insert coverage %] (see CodeCov Report comment in PR)
    • Backend coverage: [insert coverage %] (see CodeCov Report comment in PR)

Deliverable 3: Properly Styled Code

  • Are backend code style checks passing on CircleCI?
  • Are frontend code style checks passing on CircleCI?
  • Are code maintainability principles being followed?

Deliverable 4: Accessible

  • Does this PR complete the epic?
  • Are links included to any other gov-approved PRs associated with epic?
  • Does PR include documentation for Raft's a11y review?
  • Did automated and manual testing with iamjolly and ttran-hub using Accessibility Insights reveal any errors introduced in this PR?

Deliverable 5: Deployed

  • Was the code successfully deployed via automated CircleCI process to development on Cloud.gov?

Deliverable 6: Documented

  • Does this PR provide background for why coding decisions were made?
  • If this PR introduces backend code, is that code easy to understand and sufficiently documented, both inline and overall?
  • If this PR introduces frontend code, is that code easy to understand and sufficiently documented, both inline and overall?
  • If this PR introduces dependencies, are their licenses documented?
  • Can reviewer explain and take ownership of these elements presented in this code review?

Deliverable 7: Secure

  • Does the OWASP Scan pass on CircleCI?
  • Do manual code review and manual testing detect any new security issues?
  • If new issues detected, is investigation and/or remediation plan documented?

Deliverable 8: User Research

Research product(s) clearly articulate(s):

  • the purpose of the research
  • methods used to conduct the research
  • who participated in the research
  • what was tested and how
  • impact of research on TDP
  • (if applicable) final design mockups produced for TDP development

@elipe17 elipe17 added backend dev raft review This issue is ready for raft review labels Jan 15, 2025
@elipe17 elipe17 self-assigned this Jan 15, 2025
Copy link

codecov bot commented Jan 15, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 91.43%. Comparing base (099b230) to head (e67e58a).
Report is 12 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff            @@
##           develop    #3428   +/-   ##
========================================
  Coverage    91.43%   91.43%           
========================================
  Files          300      300           
  Lines         8647     8647           
  Branches       640      640           
========================================
  Hits          7906     7906           
  Misses         621      621           
  Partials       120      120           
Flag Coverage Δ
dev-backend 91.29% <ø> (ø)
dev-frontend 92.44% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
...-backend/tdpservice/parsers/schema_defs/tanf/t2.py 100.00% <ø> (ø)
...-backend/tdpservice/parsers/schema_defs/tanf/t3.py 100.00% <ø> (ø)
...-backend/tdpservice/parsers/schema_defs/tanf/t5.py 100.00% <ø> (ø)

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d275470...e67e58a. Read the comment docs.

@elipe17 elipe17 added the Deploy with CircleCI-qasp Deploy to https://tdp-frontend-qasp.app.cloud.gov through CircleCI label Jan 18, 2025
@elipe17 elipe17 removed the Deploy with CircleCI-qasp Deploy to https://tdp-frontend-qasp.app.cloud.gov through CircleCI label Jan 21, 2025
Copy link

@raftmsohani raftmsohani left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@elipe17 elipe17 requested a review from jtimpe January 21, 2025 16:28
@elipe17 elipe17 added QASP Review and removed raft review This issue is ready for raft review labels Jan 22, 2025
@elipe17 elipe17 requested a review from ADPennington January 23, 2025 15:27
@ADPennington ADPennington added the Deploy with CircleCI-qasp Deploy to https://tdp-frontend-qasp.app.cloud.gov through CircleCI label Jan 23, 2025
@@ -364,7 +364,7 @@
required=False,
validators=[
category3.orValidators([
category3.isBetween(0, 2, inclusive=True),
category3.isBetween(0, 3, inclusive=True),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@elipe17 @klinkoberstar this change works as expected, but i am also noticing that 0 is allowed and seems inconsistent with the coding instructions for item 25 (see screenshot here)

Copy link
Collaborator

@ADPennington ADPennington left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@elipe17 these changes look good to me. screenshots of before and after below.

S= staging (before)
Q = qasp (after)

please note my comment in the code re: item 25 for closed case files, which is also evident in the error message for closed case data files (staging) below. cc: @klinkoberstar

closed
Screenshot 2025-01-30 130407

Active
Screenshot 2025-01-30 123104

@ADPennington ADPennington removed QASP Review Deploy with CircleCI-qasp Deploy to https://tdp-frontend-qasp.app.cloud.gov through CircleCI labels Jan 30, 2025
@ADPennington
Copy link
Collaborator

ADPennington commented Jan 30, 2025

added discussion label to PR re: my comment above, mostly for dev to decide if this fix should be made here or a separate ticket. this is otherwise ready to merge @lhuxraft

@@ -415,7 +415,7 @@
startIndex=57,
endIndex=58,
required=False,
validators=[category2.isOneOf([0, 1, 2, 9])],
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ADPennington We also treat 0 as a valid value for Item 42 in the T2 file as a Cat 2 check. I'm not sure if this is intentional or an oversight. Is there any reason why would have wanted to give STTs the flexibility to submit blank/0 in this field rather than 9 ?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch. I believe it was a relic of an earlier version of the updated coding instructions. I believe it was before we tested whether 0 would cause problems in FTANF. We can test it again to be sure and spin up a new ticket to remove it. 0 should only be possible if the field is "optional" for certain types of reported individuals.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is helpful! I'll make a note to investigate and work on a follow up ticket!

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just want to confirm that this can merge then, or does zero need to be removed from possible values?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yep @elipe17 -- let's proceed with merging. 🚀 cc: @klinkoberstar @lhuxraft

@lhuxraft
Copy link
Collaborator

added discussion label to PR re: my comment above, mostly for dev to decide if this fix should be made here or a separate ticket. this is otherwise ready to merge @lhuxraft

Flagged for dev to take a look at - we can also discuss at standup tomorrow if needed 🙂

@elipe17 elipe17 merged commit 90e2823 into develop Jan 31, 2025
19 checks passed
@elipe17 elipe17 deleted the 3386-citizenship-status-new-value branch January 31, 2025 15:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update Citizenship/Immigration Status Acceptable Values (TANF only)
7 participants