EDORA Learn — Pipelines
Prosecutorial Screening & Petition Decisions (Gateway to Court)
Pipeline 02D
Transparency note: small monthly filing cohorts and policy memos that alter filing thresholds can create series breaks. We pool when n is small and annotate definition or policy changes in metadata.
Overview
After intake, many jurisdictions route eligible referrals to a prosecutor for screening. Decision points include legal sufficiency, charge selection, diversion or decline, and—when filed—petition content and initial scheduling. This node documents the observable elements of that review and how they shape downstream case mix, timelines, and equity indicators.
What We Track
Legal Sufficiency
- Verify completeness of police/referral reports (incident narrative, attachments)
- Confirm available evidence (witness statements, video, lab, photos)
- Check statute mapping (elements met, lesser-included, defenses)
Diversion/Decline vs. File
- Apply criteria for diversion offers or declines (policy memo, eligibility grid)
- Log reasons when declining to file (insufficient evidence, interests of justice)
- Record offer/acceptance status and time-to-offer (days from receipt)
Charge Selection
- Identify most serious offense and included counts
- Track amendments between referral and filing (up/down-charge)
- Harmonize to common offense taxonomy for cross-site comparability
Timeliness & Notice
- Measure days from referral receipt to decision and to filing (if filed)
- Confirm notice to youth/caregiver (method, date sent, language access)
- Ensure counsel pathways communicated before substantive steps
Equity & Overrides
- Compute rate ratios (file vs. decline/divert) by race/ethnicity and geography
- Document overrides to screening guidance or diversion eligibility (with rationale)
Simple Flow
- Referral packet received by prosecutor; verify completeness
- Check reports, evidence attachments, and statute mapping
- Start timeliness clock (receipt → decision)
- Screening for legal sufficiency and diversion eligibility
- Apply policy criteria; note any mandatory exclusions
- Record preliminary charge options for audit trail
- Decision: offer diversion / decline to file / file petition with selected charges
- If diversion or decline, log reasons and notice sent
- If filing, finalize charge selection and petition details
- Notice & scheduling for initial hearing; ensure counsel pathways are clear
- Record notice modality (mail/SMS/portal), date, and language support
- Set hearing; confirm counsel appointed/present
- Handoff to court operations; update case management and audit trail
- Transmit packet to court CMS; sync filing metadata
- Preserve decision logs and override notes for equity review
Fields
Field | Type | Required | Codeset | Description |
---|---|---|---|---|
pipeline_place_id | uuid | ✅ | — | Unique identifier for this pipeline place row. |
pipeline_stage_id | enum | ✅ | stages.yml#stage_key(8)
| One of the 8 canonical stages. |
pipeline_place_key | enum | ✅ | pipeline_places.yml#place_key(45)
| Canonical key for this place (maps to route/slug). |
youth_id | string | ✅ | — | Salted/hashed or state UID. No plaintext PII. |
staff_id | string | — | Staff primary actor for this place, if applicable. | |
occurred_datetime | datetime | ✅ | — | Timestamp when the screening decision was recorded. |
jurisdiction_code | string | ✅ | — | County/parish/circuit or standardized local code. |
location_site_id | string | — | Office identifier for the prosecuting authority. | |
actor_role_code | enum | roles.yml#actor_role(7)
| Role primarily responsible for this place. | |
legal_case_id | string | — | Docket/case identifier if petition filed or case already opened. | |
source_system | string | ✅ | — | Origin system name. |
source_file | string | — | Source batch/file id if flatfile. | |
extract_run_id | string | — | ETL run id for lineage. | |
series_break_flag | boolean | — | Comparability break applies to this row. | |
series_break_reason | enum | series_breaks.yml#reason(4)
| Reason for break when flagged. | |
referral_received_datetime | datetime | ✅ | — | Timestamp prosecutor’s office received the packet. :contentReference[oaicite:0]{index=0} |
packet_completeness_code | enum | legal_sufficiency.yml#packet_completeness(3)
| Packet completeness per checklist (complete, missing_elements, critical_missing). :contentReference[oaicite:1]{index=1} | |
evidence_summary_code | enum | legal_sufficiency.yml#evidence_summary⚠️ using legal_sufficiency.yml#packet_completeness(3)
| Evidence availability snapshot (witnesses, video, lab, photos). :contentReference[oaicite:2]{index=2} | |
statute_mapping_code | enum | legal_sufficiency.yml#statute_mapping⚠️ using legal_sufficiency.yml#packet_completeness(3)
| Elements met / lesser-included / apparent defenses. :contentReference[oaicite:3]{index=3} | |
screening_decision_code | enum | ✅ | prosecutorial_decisions.yml#decision(3)
| divert_offer, decline_to_file, file_petition. :contentReference[oaicite:4]{index=4} |
decline_reason_code | enum | decline_reasons.yml#reason(4)
| Reason for decline (insufficient_evidence, interests_of_justice, de_minimis, wrong_venue). :contentReference[oaicite:5]{index=5} | |
diversion_offer_sent_datetime | datetime | — | Timestamp diversion offer communicated (if screening_decision_code = divert_offer). :contentReference[oaicite:6]{index=6} | |
diversion_offer_status_code | enum | diversion_offer_statuses.yml#status(4)
| offered, accepted, declined, expired. :contentReference[oaicite:7]{index=7} | |
charge_selection_code | enum | offense_taxonomy.yml#charge_class(6)
| Most-serious-offense class per common taxonomy. :contentReference[oaicite:8]{index=8} | |
charge_change_code | enum | charge_change.yml#change(3)
| Upcharge, downcharge, or none between referral and filing. :contentReference[oaicite:9]{index=9} | |
petition_filed_datetime | datetime | — | If filed, timestamp petition finalized for court. :contentReference[oaicite:10]{index=10} | |
notice_method_code | enum | notice_methods.yml#method(6)
| Notice modality to youth/caregiver (mail, sms, portal, in_person). :contentReference[oaicite:11]{index=11} | |
notice_sent_datetime | datetime | — | Timestamp notice sent. :contentReference[oaicite:12]{index=12} | |
language_access_flag | boolean | — | Language support documented for notices/communications. :contentReference[oaicite:13]{index=13} | |
counsel_pathway_flag | boolean | — | Counsel pathway communicated before substantive steps. :contentReference[oaicite:14]{index=14} | |
override_flag | boolean | — | Discretion used contrary to guidance (e.g., filed despite eligibility for diversion). :contentReference[oaicite:15]{index=15} | |
override_reason_code | enum | overrides.yml#reason(4)
| Reason for override documented in audit trail. :contentReference[oaicite:16]{index=16} | |
Download CSVwhat_we_track.csv |
Data & Methods
Metrics use referral-based denominators for screening rates and petition-based denominators for filing patterns. Timeliness is measured as days referral→decision and referral→filing. Charge selection is summarized by most serious offense taxonomy to support cross-site comparability. When policy memos or statutory thresholds change, we mark series breaks. Small-n suppression follows Suppression & Small-n. For upstream context and consistent offense coding, see Arrest → Referral → Petition → Adjudication and cross-site conventions in Cross-Jurisdiction Comparability.