A six-goal planning sprint that was paused mid-flight and re-scoped around a single deliverable: a working "Hacking Law Firm" demo. Scope tripled, a cross-squad cast was pulled in, and the forms + citations + confidence backbone landed on the final day.
Sprint 5 began as a six-goal planning sprint. On the 22 May standup it was paused and re-scoped around one deliverable — a working "Hacking Law Firm" demo. Linear scope ballooned ~91 → 227 pts (23 → 79 issues) as the squad pulled in engineers from AI Capabilities, LegalOS and Legal Eng to land the demo centrepiece: forms in the Lawrence canvas, with inline citations and confidence-based filling.
The cycle closed at ~83 pts landed (26 of 79 issues), with another 36 pts in review. The citations + confidence-in-forms backbone landed on the final day across both the ai-platform (LLM wiring) and platform-v3 (FormEditor) stacks. The demo itself, forms-in-canvas, the forms-processing service and thread search carry into Sprint 6. Despite the nominal scope tripling, landed delivery sits inside the team's sustainable 70–100 pt band.
The defining event of the sprint. On 22 May the goals doc gained a top section — "Sprint 5 has been paused to focus the team on demo readiness for Friday, 29 May 2026" — splitting work into demo Must-Haves and Nice-to-Haves and pushing the original Goals 1–6 below the fold. Three goals scoped as plans / spikes (Threads, Intake, parts of Citations) were escalated to shipping code, and a brand-new Matter dashboard workstream appeared.
| Original Sprint 5 plan (pre-22 May) | What the demo pivot turned it into | |
|---|---|---|
| G1 Forms — immigration demo, flattened-PDF pipeline, front-end forms UI | → | Forms = the centrepiece. Forms into the Lawrence canvas; agentic filling; per-field UI |
| G2 Granular Citations — standalone impl + 150-char preview | → | Folded into citations in form explanation fields; standalone granular work continued as a SPEC + calibration spike |
| G3 Threads M1 — back-end + front-end tech plans only | → | Escalated to shipping cross-thread search |
| G4 Create & Edit polish — bug fixes from test pass | → | Edit-DSL (format / set_block / list_op) deployed; batched-edit UX in progress |
| G5 Intake forms — high-level tech plan only | → | Escalated to a demo-ready intake flow (Titan/Salesforce deep-dive, Tally-form → matter PDF) |
| G6 Legal Eng — Legal Data Strategy tech plan + demo support | → | Continued strongly: legislation remapping, CourtListener/OpenLaws partnerships, 10x hackathon cases |
| (not in original plan) | + | NEW: Matter dashboard M1 — demo addition (Sedona/Aliyyah scope → Dom build → Jaime) |
| (not in original plan) | + | NEW: confidence-based fill rules — 100% → no review; <60% → prompt review; <20% → blank; 0% → draft client email |
Pointed work only (195 of the 227-pt scope is pointed). Landed = deployed + merged. The big In-Progress block is the demo tail carrying into Sprint 6. A further 27 unpointed polish issues (LEX-421 → LEX-456) sit in Todo and aren't shown here.
Burndown note: Linear's completed-scope snapshot reads ~45 pts because it predates the final-day deploy wave (citations + confidence landed 13:14–14:58 on 27 May). The status-level count (~83 pts) is current. LEX-433/LEX-434 landed on trunk via Graphite merge queue today but their tickets still read In Review — ticket hygiene lagging the merge.
Two-week cycle. Paused & re-scoped for the demo on May 22; cycle closed May 27. The Hacking Law Firm demo runs Fri May 29 — two days past cycle close — and carries into Sprint 6.
The 6 goals as committed at sprint start, with status reflecting where they landed by close. The demo pivot escalated several from plans to shipping — see the expanded cast for who delivered.
Agent fill stack landed; the canvas UI and forms-processing service carry into Sprint 6.
Citations stopped being a standalone goal and became a forms feature for the demo.
The pivot pushed Threads M1 from plans-only to actual cross-thread search build.
The Sprint-4 edit-DSL follow-up shipped; long-edit progress UX continues.
Scoped as a tech plan; the pivot pulled it into a demo-ready intake flow.
Legal Data Strategy plus the legislation + partnership work that feeds the demo.
Sprint 5 reached well beyond the core squad. Found via a full-author git sweep across platform-v3, agents, ai-platform, content-retrieval and ingestion — not just the configured roster.
| Contributor | Squad | What they drove |
|---|---|---|
| Adolfo Tamayo | LEX (TL) | fill_form tool + forms:// VFS adapter, agent edit path for filled forms, form-editing skill, edit-DSL commands, CaseData schema endpoint, jurisdictions resolver |
| Peter Zachares | LEX | forms-processing service (large stacked build), cross-thread / exact-string thread search, DRAFT-note canvas review |
| Pratik Borde | LEX | AgentBar / LawrencePanel architecture, docked + floating sidebar, thread tabs |
| Martin Hartt | AI Capabilities | Citations + confidence: passage highlighting (AICAP-153), per-field citations + confidence in FormEditor, form-fill citation/confidence LLM wiring, email-citation threadId |
| Gareth Wyn Molyneux | pulled in | Confidence scoring + rules, granular-citations SPEC + calibration v0, agentic form-detection pipeline spike |
| George Gebbett | LegalOS | Intake: Tally-form → matter PDF; thread search backend — threadMessageQuery over a new typesense search-service |
| Jaime van Oers | pulled in | Matter dashboard / overview card, matter pill, MatterContentLayout, Lawrence panel animation polish (untracked under LEX) |
| Dominic West | pulled in | Matter-view + pinned-Lawrence-panel polish (LEX-404/405/406/407/420), form-fill SidebarDocumentCard |
| Wills Bithrey | LegalOS + LEX | Forms into the Lawrence canvas, streaming in-editor edit ghosts, SidePanel / AgentBar animation |
| Harry Green | Legal Eng | Legal Data Strategy, legislation source remapping + parallel search, CourtListener/OpenLaws partnerships, PDF radio-button fix, demo prep |
| Emtenan Suleiman | Legal Eng | 10x hackathon cases, QA audits, demo case content (evictions / disrepair) |
| Alex Salas-Wardman | pulled in | Matter homepage (LEX-408, Deployed) — Linear-tracked; no commits matched under his name, likely paired |
The demo (Fri 29 May) and its open branches roll into Sprint 6, alongside the original Sprint 5 plan the pivot deferred.
Heavy polish load — much of it the unpointed demo backlog targeting demo surfaces.
| Area | What | PR |
|---|---|---|
| Forms | fill_form self-heals workflow status when it succeeds without progress events | #10484 |
| Forms | Catalogue no longer truncated by caller pageSize; stop duplicating case_data_schema | #10538 |
| Citations | PDF citation highlight tolerates whitespace; note-viewer matches across inline marks | #10344/#10540 |
| PDF forms | PyMuPDF boolean on_state for radio buttons without an "On" value | #531 |
| Intake | Tally endpoint payload limit increase | #10355 |
| Retrieval | chunk_text O(n²) hang bounded on long paragraphs | #661 |
Dominated by the demo tail — forms-in-canvas, forms-processing service, thread-search build, confidence calibration, and the polish backlog — plus the original Sprint 5 plan resuming (Threads M1 / Intake tech-plans, granular-citations follow-through).