-
Notifications
You must be signed in to change notification settings - Fork 19
By Docket Date Case Distribution
In designing the automatic case distribution, there were a number of policy objectives that the team sought to realize.
- Priority cases should be distributed quickly.
- Docket order should be respected. An appeal that has an earlier docket date should be distributed before one with a later docket date. A certain amount of allowance is made on the legacy docket, where some appeals are tied to judges.
Before distributing:
- Priority appeals that are ready for distribution will be mixed together into a single batch and sorted by oldest first.
- Non priority appeals that are ready for distribution will be mixed together into a single batch and sorted by oldest first.
- The FeatureToggle
:acd_distribute_by_docket_date
must be enabled/true. This allows the Proportions algorithm to be overwritten with the Docket Date Distribution algorithm which orders appeals by docket date regardless of docket type.
When a judge requests the distribution, we distribute cases according to the following steps:
- Distribute priority appeals from all dockets
- Then distribute non-priority appeals from all dockets, if the batch size has not been met.
In an effort to get priority cases to judges without waiting for them to request cases, every Monday morning, a PushPriorityAppealsToJudgesJob is run to push ready priority cases to judges that can receive them. Judges can receive this push if they have an active judge team in Caseflow and they have not been removed from the job. DVCs are in charge of keeping this list of judges up to date and can add and remove judges from this job from the Team Management page.
Priority Push will distribute priority appeals from all dockets down to the limit. All docket types are treated equally. Docket order is respected.
In Caseflow, there are various ways to modify a Case Distribution, including the ability to exclude certain users from a distribution itself. These two exclusions are the Named Judge Affinity Inclusion Lever and the Case Distribution Ineligible Judges List
Named Judge Affinity Inclusion Levers | Description | Default Seed Value |
---|---|---|
exclude_appeals_from_affinity |
Used to track whether a judge (team) should have their affinity appeals distributed to any available judge team even if the set amount of time has not elapsed. | False |
-
The Named Judge Affinity Inclusion Levers are toggles to indicate specific judges who should be excluded from distribution of affinitized appeals, so that those appeals don't have to wait for the affinity days to elapse before being made available for distribution to any available judge if the affinitized judge has known unavailability.
-
These levers live outside of the Admin UI and can be found within the Caseflow Team Management page. Any user with access to the Caseflow Team Management page can designate an individual judge as eligible or ineligible to receive affinitized appeals.
-
When the box is checked, the judge will not receive cases with which there is an existing affinity relationship. Any appeal with an affinity relationship to that judge will immediately be released for distribution to any judge once the appeal is ready to distribute. Appeals that are tied (e.g., legacy hearing) are unaffected by this value.
To learn more about Named Judge Affinity Inclusion, including files where these changes live, visit Case-Distribution-Admin-UI#active-levers
There is an IneligibleJudgesJob that runs every week prior to the push_priority_to_judges_job. The IneligibleJudgesJob is a job that queries all ineligible judges in caseflow and vacols and inserts them into a cache we call "case_distribution_ineligible_judges". Anyone on this list will have all their cases relayed to genpop distribution, meaning anyone can receive their cases regardless of affinity or who the case was tied to.
Ineligibility within VACOLS and Caseflow:
- A user is marked as Inactive in VACOLS when STAFF.SACTIVE has a value of "I"
- A user is not a Judge or Acting Judge in VACOLS when STAFF.SVLJ does not have a value of "J" or "A"
- A user is not active in the Caseflow users table when users.status is not equal to "active"
To learn more on Ineligible Judges List, including files where these changes live, visit Cases-Tied-to-Judges-No-Longer-with-the-Board-or-Otherwise-Ineligible
Here is a list of the consolidated levers (current 9/13/2022)
- As of Q1 2024 (03/01/2024), these levers and more can now be found within the Case Distribution Admin UI, a new a centralized location to be able to view values and descriptions of the levers used in the case-distribution algorithm. In addition to this, Administrative users of the Case Distro Algorithm Control team are able to replace existing values for the case-distribution variables.
Lever | Description | Value |
---|---|---|
alternative_batch_size |
If the judge does not have their own team, for example if they are a DVC, they receive a set number of cases known as an alternative batch size | 15 |
batch_size_per_attorney |
When a judge requests a distribution of cases, they will receive a certain number of cases (batch size) in their queue. It is a multiple of the number of attorneys on the judge's team (3 x the number of attorneys) | 3 |
direct_docket_time_goal |
Direct review timeliness goal | 365 |
request_more_cases_minimum |
When requesting more cases VLJs must have less than or equal to this value of cases remaining | 8 |
- Home
- Acronyms and Glossary
- Caseflow products
- Caseflow Intake
- Caseflow Queue
- Appeals Consumer
- Caseflow Reader
- Caseflow eFolder
- Caseflow Hearings
- Caseflow Certification
- Caseflow APIs
- Appeal Status API
- Caseflow Dispatch
-
CSUM Roles
- System Admin
- VHA Team Management
- Active Record Queries Resource
- External Integrations
- Caseflow Demo
- Caseflow ProdTest
- Background
- Stuck Jobs
- VA Notify
-
Caseflow-Team
- Tier 4
- Bat Team
- Technical Documentation
- Backend Code Patterns
- Backend Working Group
- FACOLS, VACOLS DB Schema
- Asyncable Models
- External Data: where and why
- Data Fetching Scripts
- Caseflow Data Model and Dictionary
- User Access Permissions
- Controller Schemas
- Constants
- Frontend Best Practices
- Accessibility
- How-To
- Debugging Tips
- Adding a Feature Flag with FeatureToggle
- Editing AMA issues
- Editing a decision review
- Fixing task trees
- Investigating and diagnosing issues
- Data and Metric Request Workflow
- Exporting and Importing Appeals
- Explain page for Appeals
- Record associations and Foreign Keys
- Upgrading Ruby
- Stuck Appeals
- Testing Action Mailer Messages Locally
- Re-running Seed Files
- Rake Generator for Legacy Appeals
- Manually running Scheduled Jobs
- System Admin UI
- Caseflow Makefile
- Upgrading Postgresql from v11.7 to v14.8 Locally
- VACOLS VM Trigger Fix M1
- Using SlackService to Send a Job Alert
- Technical Talks