Litigation Flow + Deadline Guardian
Big-law quality. Solo-law price.
The Sciolto-flavored solo-litigator copilot's *first* slice — the load-bearing one. Solos don't sink from bad strategy; they sink from missed deadlines and untracked phase transitions. This module ships the phase stepper (intake → pleadings → discovery → motions → trial-prep → trial → post-trial → closed), the per-phase task templates, the court-rule library, and the killer view: the Deadline dashboard.
Later slices ship the Evidence Analyzer (Document / ReviewCoding / PrivilegeLog with AI-augmented review) and the Case Theory + Auto-drafting engine. This slice is deliberately deterministic — nothing hallucinates at scan time, ever.
The three views
Deadline dashboard — every open deadline across every case, sorted by urgency. Four counter cards (Overdue / Imminent / Warn / Fresh), then the table. Overdue = past due_at. Imminent = ≤ 3 days. Warn = ≤ 14 days. Fresh = > 14 days. *One screen, every deadline.* That's the pitch.
Cases — active caseload with phase pill + case metadata. Click a row to open the drawer: current phase, task checklist, deadlines inline, and an *Advance to \<next phase\>* button in the footer.
Court rules — the library the calculator dispatches on. FRCP 12(a) answer, FRCP 26 disclosures, FRAP 4(a) notice of appeal, and typical local-rule motion timing. *Install standard rules* is idempotent.
The phase stepper
intake → pleadings → discovery → motions → trial_prep → trial → post_trial → closed
advance_case_phase refuses backward transitions (that path is reserved for reopening, which happens through a different tool). Each phase has a task template that generate_phase_tasks unpacks into concrete CaseTask records:
| Phase | Template highlights | |---|---| | intake | Conflict check, engagement letter, fact-gathering interview, initial research, preservation letter | | pleadings | Draft complaint/answer, file, serve, calendar answer deadline (FRCP 12(a) — 21 days) | | discovery | Initial disclosures (FRCP 26(a)(1)), interrogatories, RFPs, depositions, expert disclosures (FRCP 26(a)(2)(D) — 90 days before trial), discovery close | | motions | Draft dispositive motion, file + serve, calendar opposition (14d) + reply (7d), hearing | | trial_prep | Trial brief, witness list, exhibit list, motions in limine, jury instructions, voir dire outline | | trial | Opening → direct → cross → closing → verdict | | post_trial | Fees motion, notice of appeal (FRAP 4(a) — 30 days), judgment enforcement | | closed | Client closing letter, archive matter |
The template list is the "what a mid-level associate would put on the checklist" version — comprehensive enough that a solo starting from scratch has a real system, small enough to fit on one screen per phase. Attorneys add case-specific tasks on top.
The deadline calculator
due_at = anchor_date + rule.days_forward
A CourtRule references a source (FRCP 12(a)(1)(A)), an anchor event (service_of_summons), and a signed days-forward offset. Negative offsets go backward from anchor (expert disclosures are 90 days *before* trial). Optional business_days skips Sat/Sun; federal holidays are not modeled — attorney reviews the calendar.
FRCP-12A-ANSWER service_of_summons +21
FRCP-26F-CONFERENCE scheduling_conference -21
FRCP-26A1-DISCLOSURES rule_26f_conference +14
FRCP-26A2-EXPERTS trial_date -90
FRCP-56A-MSJ trial_date -90
LOCAL-MOTION-RESPONSE motion_filed +14
LOCAL-MOTION-REPLY opposition_filed +7
FRAP-4A-NOTICE-APPEAL judgment_entered +30
The library is small on purpose: enough for a solo attorney's first federal case, plus placeholders for the state-specific rules they'll add themselves. Bar associations publish 100+ patterns per jurisdiction — the module is designed for one-rule-at-a-time expansion, not exhaustive coverage.
The urgency band
Same three-band shape as the radiology 60-min clock, the STAT-order SLA, and the safety-dashboard signals. One consistent language across every clock in the system:
| Band | Rule | |---|---| | overdue | due_at < now | | imminent | due_at ≤ now + 3 days | | warn | due_at ≤ now + 14 days | | fresh | due_at > now + 14 days | | completed | completed_at IS NOT NULL |
What's wired
| Entity | Purpose | |---|---| | LitigationCase | The case itself — caption, court, opposing counsel, phase, status | | CaseTask | Per-phase task with optional due_at + is_deadline flag | | Deadline | Case-scoped deadline with optional rule + anchor for computed dates | | CourtRule | Rule library dispatched by create_deadline |
Tools (13): list_cases, open_case, advance_case_phase, close_case, list_case_tasks, generate_phase_tasks, complete_case_task, list_deadlines, create_deadline, complete_deadline, deadline_dashboard, list_court_rules, seed_standard_court_rules.
What's NOT in this slice
Deliberately out of scope for slice H:
- Evidence & Discovery Analyzer — Document, ReviewCoding, PrivilegeLog, ProductionSet. Slice I.
- Case Theory + Auto-drafting — LLM-generated complaints, motions, deposition outlines. Slice J. Highest AI surface, most human-in-the-loop demand.
- Training layer annotations — every AI-suggested action ships with a "here's why" note. Horizontal capability across slices I + J, not a separate slice.
- State-specific rule libraries — the standard set ships as federal-basics only. Each state gets added on demand.
And out of scope for the vertical entirely (bar rules):
- Persona D (pro se) — the underlying Sciolto plan flagged UPL exposure; this vertical ships for attorneys only. The audit-log-as-DB thesis lands especially hard here: *"what did I know and when did I know it"* is *the* deposition-prep question and *the* malpractice-defense question, and git-canonical solves both by construction.