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

hotfix/APPEALS-9461 V4 #18949

Merged
merged 20 commits into from
Sep 13, 2023
Merged

hotfix/APPEALS-9461 V4 #18949

merged 20 commits into from
Sep 13, 2023

Conversation

AimanK
Copy link
Contributor

@AimanK AimanK commented Jul 6, 2023

Resolves APPEALS-9461

Description

Content is not properly encoded and causes assistive technology to convey incorrect information.

Acceptance Criteria

1 - (PREVIOUSLY SOLVED) On the Review Cases | Caseflow screen (Caseflow), sort instructions are read by assistive technology when reading the data. For example, “Case Details Sort by Case Details Link Patel Columbus (60003775) This is a paper case Column 2” is read for cell (2,2). This incorrectly conveys that a sort can be executed by activating the cell.
When an active link for a person is read by JAWS it indicates that it is sortable, still. (Screenshot attached)
image

2 - (SOLVED BY THIS PR) Throughout the product, tables are not read correctly by assistive technology—the first column is read as a blank column. For example, on the Claims Folder | Caseflow Reader screen (Caseflow -> Patel Columbus (60003775) -> View docs), the first column is read as a blank column.
(Screenshot attached.)
image

3 - (PREVIOUSLY SOLVED) PDFs exported from the product are not tagged. For example, on the Case Details | Caseflow screen (Caseflow -> Patel Columbus (60003775) -> View docs -> VA 21-526 Veterans Application for Compensation or Pension -> download pdf), the exported PDF is not tagged. Tags are required for interoperability with assistive technology.
Reader team input required.

4 - (SOLVED BY THIS PR) On the Draft Decision | Review Remand Reasons screen (Caseflow -> Victor R Rice (30255077) -> Select an action… ( ASSIGNED ON : 05/26/2006DAYS WAITING : 5866 option Ready for Dispatch focused, 2 of 2. 2 results available.) -> Continue (Blue Water) -> Continue), the names for check boxes are not read correctly by assistive technology. For example, when tab is used to move the focus to the Current findings check box, “1-DA” is read for the name.

5 - (PREVIOUSLY SOLVED) On the Scheduled Hearings screen (Switch product -> Caseflow Hearings), when tab is used to move the focus to the first component of a date, the entire date is not read in the order that is displayed. For example, when tab is used to move the focus to the From: field, “From: Date Time Edit 2022-05-17 Month From: edit spin box 05” is read—the year is read first, not last.

Testing Plan for Acceptance Criteria 2

  • Select a Caseflow Judge user
  • Navigate to Caseflow Queue
  • When navigating through Caseflow Queue by either tabbing or screen-reader table navigation controls, modern screen readers are now able to correctly read each cell of data's information to the user

Testing Plan for Acceptance Criteria 4

  1. Select a Caseflow Judge user (BVAABSHIRE)
  2. Navigate to Caseflow Queue
  3. Within Queue, select any appeal in a "Review" task state
  4. On that appeal, when given the dropdown select "Ready for Dispatch"
  5. Within that individual appeal's Queue flow, give any decision issue a remand, you will then be presented with the "Review Remand Reasons" Screen, this screen will highlight where the 508 change was added for the checkboxes to be read in a more accessible way by modern screen readers

User Facing Changes

  • Screenshots of UI changes added to PR & Original Issue
BEFORE AFTER

Code Documentation Updates

  • Add or update code comments at the top of the class, module, and/or component.

Storybook Story

For Frontend (Presentationa) Components

  • Add a Storybook file alongside the component file (e.g. create MyComponent.stories.js alongside MyComponent.jsx)
  • Give it a title that reflects the component's location within the overall Caseflow hierarchy
  • Write a separate story (within the same file) for each discrete variation of the component

Database Changes

Only for Schema Changes

  • Add typical timestamps (created_at, updated_at) for new tables
  • Update column comments; include a "PII" prefix to indicate definite or potential PII data content
  • Have your migration classes inherit from Caseflow::Migration, especially when adding indexes (use add_safe_index) (see Writing DB migrations)
  • Verify that migrate:rollback works as desired (change supported functions)
  • Perform query profiling (eyeball Rails log, check bullet and fasterer output)
  • Add appropriate indexes (especially for foreign keys, polymorphic columns, unique constraints, and Rails scopes)
  • Run make check-fks; add any missing foreign keys or add to config/initializers/immigrant.rb (see Record associations and Foreign Keys)
  • Add belongs_to for associations to enable the schema diagrams to be automatically updated
  • Post this PR in #appeals-schema with a summary
  • Document any non-obvious semantics or logic useful for interpreting database data at Caseflow Data Model and Dictionary

Integrations: Adding endpoints for external APIs

  • Check that Caseflow's external API code for the endpoint matches the code in the relevant integration repo
    • Request: Service name, method name, input field names
    • Response: Check expected data structure
  • Update Fakes
  • Integrations impacting functionality are tested in Caseflow UAT

Monitoring, Logging, Auditing, Error, and Exception Handling Checklist

Monitoring

  • Are performance metrics (e.g., response time, throughput) being tracked?
  • Are key application components monitored (e.g., database, cache, queues)?
  • Is there a system in place for setting up alerts based on performance thresholds?

Logging

  • Are logs being produced at appropriate log levels (debug, info, warn, error, fatal)?
  • Are logs structured (e.g., using log tags) for easier querying and analysis?
  • Are sensitive data (e.g., passwords, tokens) redacted or omitted from logs?
  • Is log retention and rotation configured correctly?
  • Are logs being forwarded to a centralized logging system if needed?

Auditing

  • Are user actions being logged for audit purposes?
  • Are changes to critical data being tracked ?
  • Are logs being securely stored and protected from tampering or exposing protected data?

Error Handling

  • Are errors being caught and handled gracefully?
  • Are appropriate error messages being displayed to users?
  • Are critical errors being reported to an error tracking system (e.g., Sentry, ELK)?
  • Are unhandled exceptions being caught at the application level ?

Exception Handling

  • Are custom exceptions defined and used where appropriate?
  • Is exception handling consistent throughout the codebase?
  • Are exceptions logged with relevant context and stack trace information?
  • Are exceptions being grouped and categorized for easier analysis and resolution?

@codeclimate
Copy link

codeclimate bot commented Jul 6, 2023

Code Climate has analyzed commit 15dd619 and detected 0 issues on this pull request.

View more on Code Climate.

@AimanK AimanK changed the title Add the correct 508 changes for 9461 hotfix/APPEALS-9461 V4 Jul 6, 2023
@raymond-hughes raymond-hughes merged commit 433f7ca into master Sep 13, 2023
13 of 14 checks passed
@ThorntonMatthew ThorntonMatthew deleted the hotfix/APPEALS-9461-V4 branch September 26, 2024 16:05
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