Special Issues - department-of-veterans-affairs/caseflow GitHub Wiki

Issue is an overloaded keyword ❗ Not to be confused with: ❗

  • Decision Issues - decisions on contentions for a case
  • Request Issues - the contentions on consideration for a case
  • GitHub Issues - our ticketing system

AKA Special Contentions

History

Special Issues were implemented initially for use in Caseflow Dispatch, specifically to handle special routing rules for legacy cases with specific implementations. Some cases would have to go to specific regional offices, specific departments, etc. When selected these Special Issues affect how Caseflow Dispatch flows and what instructions must be followed to dispatch the case.

Other Special Issues do not affect dispatch routing, and are there only for reporting purposes.

In 2018 we decided to test allowing Judges & Attorneys to select Special Issues in Caseflow Queue, and created a second, distinct impelementation of Special Issues as a SpecialIssuesList object to test this. The two implementations (special issues on LegacyAppeal and SpecialIssueLists) do not interact. This was originally enabled for both Legacy & AMA, but later special issues was disabled for AMA such that no special issues can be selected for AMA appeals.

In 2020 we extended the available special issues with four more reporting-only special issues, and an explicit No Special Issues option. All cases going forward would need at least one Special Issue selected. At this point we enabled the Queue Special Issues for AMA with only the four new options.

Current Usage

See https://github.com/department-of-veterans-affairs/dsva-vacols/issues/126#issuecomment-703949279

Caseflow Queue

Caseflow Dispatch

Implementation(s)

Legacy Appeals

Special Issues List

React

Research Dives

Capturing here with the goal of eventually breaking info into better layout, but at least having it in the wiki

Dispatch Special Issues Investivation https://hackmd.io/gr_QQwnsSM2pkk1Kc5O5xg?view

Dispatch Special Issues Investivation

Refs

Dispatch & Special Issues Investigation #14433

Problem

WTF special issues? Dispatch? aaaaa

Investigation

Q1: How do cases get to "ready for dispatch", for both AMA and Legacy cases

A: Legacy: The case has an unassigned Dispatch::Task type object. AMA do not go through Dispatch

Log

starting point: Dispatch ui: two possiblities - "cases ready for dispatch" is displayed on load, and "Establish claim" button to start one

pursuing the text - starts in client/app/containers/CaseWorker/HeaderMessage.jsx which displays it based on availableTasks & tasksRemaining pulled into client/app/containers/CaseWorker/CasejkWorkerIndex.jsx props pulled straight through... props loaded in app/views/dispatch/establish_claims/index.html.erb via tasks.any_assignable_to?(current_user) unsurprisingly, that lives in app/models/dispatch/task.rb

important: Dispatch::Task is not a Task, it's its own thing it does not appear in Task Trees

Q1b: Where do Dispatch::Tasks come from?

A: Nightly job queries VACOLS for cases in a couple states, and creates the EstablishClaim for an appeal

Log

Dispatch::Tasks live in app/models/dispatch/task.rb and this object serves as the superclass for the EstablishClaim object, which lives app/models/establish_claim.rb. Dispatch::Tasks also have a ClaimEstablishment object.

Dispatch::Task is largely concerned with managing the process in Caseflow, agnositc of the third party we're interfacing with.

EstablishClaim is more specifically concerned with interacting with VBMS (and BGS?)

Dispatch::Tasks belong to a LegacyAppeals, it looks like in the form of an EstablishClaim - when are these created?

CreateEstablishClaimTasksJob find/creates EstablishClaims for Legacy Appeals based on the queries: AppealRepository.amc_full_grants - Full Grants AppealRepository.remands_ready_for_claims_establishment - Partial Grants

Full Grants: app/repositories/appeal_repository.rb:amc_full_grants calls VACOLS::Case.amc_full_grants Query VACOLS for VBMS cases in HIS status (BVA action completed) with allowed issue(s) and no remanded issue(s) since the param date

Partial Grants: app/repositories/appeal_repository.rb:remands_ready_for_claims_establishment calls VACOLS::CASE.remands_ready_for_claims_establishment Query VACOLS for VBMS cases in Remand statue, sitting in location 97.

QTangent 1: Who uses Caseflow Dispatch

which user are we interrogating? those with role "Manage Claim Establishment", "Establish Claim" (either)

A: anyone with some roles - back to the Q

QTangent 2: Whats a ClaimEstablishment?

Theory: represents the result of establishing the claim in VBMS?

Q2: Does Dispatch understand that the SpecialIssuesList object exists

A: No

Q3: How does Dispatch interact with LegacyAppeals on-object SpecialIssues

A: Special Issues, as defined by LegacyAppeal, can be updated on the associated LegacyAppeal

Log

You can hit put dispatch/establish-claim/update-appeal with a list of updated special issues in the params. this invokes app/controllers/dispatch/establish_claims_controller.rb:update_appeal which passes the params that pass special_issues_params, which permits LegacyAppeal::SPECIAL_ISSUES.keys to be passed to an update call on the associated LegacyAppeal.

Q4: How does the SpecialIssues information leave caseflow, for AMA and for Legacy

A: AMA does not

A: Legacy affects the behavior in Caseflow (whether an extra step is required), but does not appear to affect the EndProduct itself

Log

Leave for where:

  • VACOLS
  • VBMS
VBMS

No. Some Special Issues cause routing to be handled distinctly, but no info goes out

VACOLS

Q5: Does Dispatch handle all Legacy appeals, or just a subset?

A: I don't think we can answer this.

Q6: Do dispatch users see the Special Issues page in production on AMA?

A: No AMA in Dispatch

Q7: Does Judge Checkout update VACOLS or LegacyAppeals with the Special Issues?

Question Storage

Helpful Additional Information

  • Why does Dispatch offer all Special Issues on AMA appeals?
  • When can we expect that a legacy case is "Done" in Caseflow, in the happy path?
Slack Convo Summary from call with Paul, Jed, John https://dsva.slack.com/archives/CQCUMFA0H/p1594919170092700

Kat Tipton Jul 16th at 1:06 PM threading notes from the call

Kat Tipton 3 months ago Caseflow Dispatch is not used by the board. its used by AMO

Kat Tipton 3 months ago AMA is dispatched through Caseflow Queue+IDT

Kat Tipton 3 months ago Legacy dispatch (by the board) is done in VACOLS still

Kat Tipton 3 months ago AMO is not integrated with the board. they have their people and do things their way

Kat Tipton 3 months ago some overlap in people, but historically that do their own thing

Kat Tipton 3 months ago Paul doesn't think Dispatch is making that decision at all. The board coding should have been done by the judges

Kat Tipton 3 months ago Paul believes the Special Issues as used by the board and the special issues as used by AMO may have overlap, but probably aren't teh same

Ann-Marie Raposo 3 months ago wow I need to get better at doing this

Ann-Marie Raposo 3 months ago thank you!

Hunter Schallhorn - OOO 10/1 - 10/16:hear_no_evil: 3 months ago Was this call with THE Paul Saindon?

Kat Tipton 3 months ago AND JED

Kat Tipton 3 months ago AND JOHN

Hunter Schallhorn - OOO 10/1 - 10/16:hear_no_evil: 3 months ago AND JED?!

Kat Tipton 3 months ago I was more than a little intimidated

Hunter Schallhorn - OOO 10/1 - 10/16:hear_no_evil: 3 months ago what a crew

Kat Tipton 3 months ago all attending agreed that is was frustratingly hard to deal with repeat terms at the board ("everyone will tell you exactly what a thing is, but what it is is different for each person")

Queue Special Issues Investigation https://hackmd.io/BiwHywxcTeePht2N6NMFOQ?view # Queue Special Issues Investigation :male-detective:

Refs

Questions to answer

  1. Confirm with board that Queue Special Issues should affect Caseflow Dispatch (Ask Dustin? Dig into original implementing tickets, design, prs)
  2. Sanity check Kat's findings that these are fully disconnected
    • There does not appear to be any relationship between the SpecialIssueList object and the SpecialIssues that persist directly on LegacyAppeals
  3. Get a sense of the scale of the impact of the disconnect

Approximated relationship of Queue/Dispatch Special Issues

+-----------------------------------------+                          +--------------------------------------------+
|                                         |                          |                                            |
|      Queue App                          |                          |            Dispatch App                    |
|                                         |                          |                                            |
|                                         |                          |                                            |
+--------+--------------------------------+                          +------+-------------------------------------+
         |                                                                  |
         |                                                         Saves to |
         |                                                         and reads|           Legacy Appeal
         |                                                         from     |   +----------------------------------+
         |                                                                  |   |                                  |
         |                                                                  +-------->Special Issues               |
         |                 Special Issue list                                   |                                  |
         |    Saves to       +-----------+                      +-------------->+                                  |
         |    and reads      |           |                      |               |                                  |
         |    from           |           |     Belongs to       |               |                                  |
         |                   |           |     one of           |               +----------------------------------+
         +------------------>+           +----------------------+                        AMA Appeal
                             |           |                      |               +----------------------------------+
                             |           |                      |               |                                  |
                             |           |                      |               |                                  |
                             +-----------+                      +-------------->+                                  |
                                                                                |                                  |
                                                                                |                                  |
                                                                                +----------------------------------+

Info from Dustin (supervisory atty at the board)

Queue Special Issues

Attys & Judges

  • Special Issues are a subset of issues that are less frequently handled by the board
    • SIs identified by attorneys are for identifying a subset of issues that are assigned to speciality teams because they are less common
    • is this actually happening in Queue??
  • Overlaps with but are not directly coordinated with Dispatch SIs
  • When we remand/grant it has to go back to the originating org
  • Attorneys are more saavy when identifying Special Issues and could be better suited for marking SIs
    • however this could potentially be outside of their scope of work
  • Judge is for a check/second set of eyes
  • What purpose is SI in Queue serving for attys & judges?

Dispatch Special Issues

  • Dispatch users just select them based on VBMS info
  • SI issues are first entered by Intake into VACOLS??
  • SIs are on appeals and means that cases go outside of the line of business and are redirected to certain orgs that aren't part of process (e.g. National Cemetary admin)
  • SIs have to go through another different post-Dispatch process so they need to be identified
    • What is this process?
  • Special issues identified by BVA Dispatch Users??

Info from Anya (eng who worked on initial implementation)

  • the original idea was to have attys & judges be the ones selecting SIs
  • the intention was to implement the routing and deprecate Dispatch completely
  • SIs in dispatch only comm w/ Leg appeals (we know this)
  • the thinking was that for AMA appeals, they would do that as part of atty & judge checkout
    • for Legacy appeals would still be the dispatch user
    • at some point - the idea came up that what if we have the attys & judges select SIs for Leg appeals as well
  • for AMA appeals, SI list is being populated
  • for Leg apps, SI list AND SIs on LegApp table
  • the work started with org issue, creating the SI list
    • the goal was to do something with them and automate them (not fully understanding this)
  • Lot of ppl (Mark Benjamin, LP, Anya) left at the same time who were working on the implementation
  • Need to find EP routing (might be on the FE somewhere), then request is made to the backend to create the EP
  • BVA Dispatch works with AMAs & Legacy Appeals
    • Goal is to bring in Caseflow Dispatch logic into Queue for BVA Dispatch users???
    • within the BVA Dispatch process
  • Code that could prove useful in implementation of Special Issues routing logic

Chat with LP (product mgr at time of initial implementation)

  • Q: What is your understanding of the user processes for all the dispatch processes?
    • A:
  • Q: Which user types are utilizing Dispatch (i.e. Intake, BVA Dispatch etc.)?
    • A: Veteran Benefits Center, Appeals Resource Center
  • Q: What purpose was adding SIs in Queue meant to serve for attys & judges?
    • A: allow attys/judges to select SIs
  • Q: Was informed by Dustin that SIs have to go through another different post-Dispatch process, do you know what process he is referring to?
    • A: the routing
  • Q: What did we plan to pull out of dispatch to integrate into queue when we deprecated it?
    • A: the phases are listed in the Epic
      • create EPs for Legacy cases
        • we are doing this already for AMA in Caseflow
        • Legacy process is currently done through Dispatch
      • implement additional routing changes that Appeals Resource Center wanted to make (what are these exactly?)
      • could we put tasks in our non-comp Queues (VHA etc.) so they could work legacy tasks as well
      • Missing Decisions Report is generated in Dispatch for Legacy appeals if the BVA Dispatch user outcoded the appeal but didn't upload the decision docs
  • For legapps, certain are only adjuticatable by certain ROs
  • Dispatch was launched so that ROs could update appeals and benefits info

National Work Queue

  • When AMA was passed, VBA was using the National Work Queue (NWQ)
    • way for VBMS to automate routing for finalizing benefits after a decision was made
    • if we put an EP for a specific location, the NWQ should route that EP to the specific VBA office that can finish/finalize/update the benefits for the AMA appeals
      • for AMA cases, the EP can be put in the NWQ location
      • for legacy, Caseflow Dispatch has all of that routing
      • VBA/VBMS told Caseflow that NWQ would NOT route legapps
  • Motivation behind deprecating Dispatch is that it's old, terrible for Batteam
    • wherever we can automate routing for legaps, why not!?
  • We removed the AMA SIs page
    • Remove special issues page for AMA appeals #8616 -- "because the VBMS National Work Queue (NWQ) will be able to recognize special issues attributes that already exist in VBMS and route EPs correctly."
    • Now that we have a AMA SIs page, what if the list of SIs selected for an appeal is different from those in VBMS for the appeal?
  • When Dispatch was originally designed, SIs was just for routing

IDT work flow

  • Attorney looks at Queue, maybe uses Reader, then opens up IDT to draft decision & sign in Word doc format
    • They then come out of IDT and go back to Queue to complete the drafting process
  • Looks something like this: Queue -> get task in IDT -> do task in Queue -> pass task off
  • BVA dispatch users look at what a judge signs and do QC checks via IDT
    • IDT was built for these folks before Queue existed
    • these 2 products were then combined into the BVA Dispatch users workflow when Queue was created
    • there is a folder of IDT screenshots that exists somewhere

Kat thoughts:

  • LP considered it intentional that the Attorney/Judge selections did not affect Caseflow Dispatch
    • there were some plans to compare who was more accurate, and advocate to the board to do it with attys?
  • 'Dispatching' to various specific places wasn't supposed to be necesary for AMA

Questions coming out of this for Ann-Marie

  • Q: What does the board want SIs to do, i.e. are they actionable, informational, or a mixture of both?
    • A: There are some issues that have special routing rules, I will need to touch base with John & Mike to inquire which ones those are.
  • Q: For the new 4 SIs are any of them actionable or just informational
    • A: Just informational (for congressional reporting), none have any actionable tasks or routing rules associated with them.
  • Q: Do attys & judges know what should be happening/what clicking SIs does?
    • A: She will need to inquire on this one.
  • Q: Does the board still think Caseflow Dispatch users should have the authority to select these SIs
    • A: Will confirm

Other questions

Does IDT allow users to select special issues?

  • where does it get SIs from
  • Chandra may have info on IDT
⚠️ **GitHub.com Fallback** ⚠️