LegalPresence — Litigation Workbench · Product Specification
Product Specification

The Litigation Workbench

A grounded litigation platform on Twenty CRM: every AI answer stands on the full case substrate — documents, ontology markups, the knowledge graph, and the house rules — and passes an internal Gate-Counsel before anyone reads it.

Built on Twenty CRM Substrate RAG · GraphQL · RDF · Rules Two engines Reasoning · Gate-Counsel Posture grounded, advisory, auditable
§ 01

Executive Summary

LegalPresence began as a monitor of official court postings that extracts and structures legal information. It has since grown a working litigation reasoning console: a set of role-specific AI seats (lead counsel, opposing counsel, the presiding justice, the client advisor) that answer questions grounded in the live case record, then run every answer through a verification gate before it is shown.

The Workbench turns that console into a complete product. It keeps the discipline that makes the current system trustworthy — nothing is asserted that the record does not support, and nothing reaches a human un-reviewed — and wraps it in the full litigation lifecycle: intake, docket watch, evidence collection, timeline and deadline management, collaborative analysis, and client reporting, all as native objects and views inside Twenty CRM.

What already exists shipping today

The differentiators below are not aspirational — most are running in production and simply need to be productized. This spec is explicit about the state of each so the roadmap is honest.

4
Substrates fused per answer — documents, markups, graph, rules
7
Role-specific AI personas, each in a matched register
3
Independent gate controls: Perturbation, Gate-Counsel QA, authenticity
13
House rules + 6 litigation objectives the reasoner applies

Key differentiators

DifferentiatorWhat it meansState
Multi-substrate groundingEvery question is answered against semantic document retrieval plus the CRM's reviewed fact-assertions, the RDF knowledge graph, and the encoded house rules — not a single vector store.Live
AI Reasoning EngineStructured, multi-step reasoning under explicit litigation objectives: element mapping, counterfactuals, argument scoring, outcome simulation.Evolve
AI Internal Gate-CounselAn adversarial second set of eyes that runs before any output is shown — grounding verification, overconfidence and privilege checks, rule enforcement.Evolve
Flag, never suppressThe gate annotates and scores; it never silently rewrites. Humans see the answer and its verdict.Live
Native to Twenty CRMEvidence, parties, motions, hearings and analyses are first-class CRM objects with views, permissions and audit — not a bolted-on silo.Evolve
Privilege-aware by constructionConsulting-vs-testifying expert posture, work-product tagging, and privilege flags travel with every artifact.Build
The thesis
An answer is only as good as what it stands on and what checks it. The Workbench's moat is not the model — it is the substrate beneath every answer and the gate in front of it.
§ 02

Personas & User Journeys

PersonaGoalPrimary surfacesWhat the AI does for them
Lead AttorneyWin the motion; avoid unforced errorsReasoning console, motion drafts, timelineElement-by-element analysis, argument scoring, adversarial stress-test before filing
Associate / ParalegalBuild the record; keep it cleanEvidence browser, markups, deadlinesExtract fact-assertions, flag contradictions, draft cite-checked summaries
Litigation SupportIngest & authenticate evidenceIntake, OCR, chain-of-custodyEncrypt→store→hash-stamp, auto-tag parties, surface duplicates and gaps
Client / GCUnderstand exposure, cost, timelineClient portal, plain-language briefingsJargon-free status, outcome ranges, next steps — gated for over-promising
Reviewing PartnerSign off with confidenceGate verdicts, audit trailGate-Counsel report: what's supported, what's overstated, what's unverified

Core workflow — question to gated answer

Journey · a lead attorney asks a strategic question
flowchart LR
  A[Attorney asks
from a seat] --> B[Assemble substrate
docs · markups · graph · rules] B --> C[Reasoning Engine
element map · counterfactuals] C --> D{Gate-Counsel} D -->|grounding · perturbation| E[Verdict + score] D -->|privilege / overconfidence| E D -->|rule compliance| E E --> F[Answer shown
with citations + flags] F --> G[Attorney accepts,
edits, or overrides] G --> H[Saved to CRM
as aiAnalysis + audit]

Second journey — evidence intake to insight

Journey · litigation support onboards a new document set
flowchart LR
  A[Drop docs /
docket pull] --> B[OCR + encrypt] B --> C[Store ciphertext in R2
DEK in SecureVault] C --> D[Hash-stamp +
evidenceItem in Twenty] D --> E[Ontology extraction
fact-assertions + RDF] E --> F[Human review
APPROVE / REJECT] F --> G[Enters the substrate
every seat can now cite it]
§ 03

Functional Requirements

3.1 Docket & court-posting monitoring evolve

  • Poll official sources (NYSCEF and equivalents) on a schedule; diff against the last snapshot; open a timelineEvent for every new filing.
  • Classify each posting (order, motion, affirmation, notice) and route to the right matter by index number.
  • Alert owners on filings that touch a tracked deadline or the enjoined subject-matter.

3.2 Evidence collection & ontology markups live

  • Ingest pipeline: OCR → encrypt → object store (ciphertext) → data-encryption key in the vault → content hash-stamp → evidenceItem in Twenty.
  • Ontology extraction produces factAssertion rows — the machine-readable markup layer over each document (who / what / when / affected party / source doc).
  • Every assertion carries a reviewStatus (HUMAN_VERIFIED, COUNSEL_APPROVED) and a confidence; only reviewed assertions are treated as settled in reasoning.

3.3 Knowledge-graph management live

Parties, legal persons, correspondents, property units, and artifacts live as an RDF graph (parsed from the ontology + per-matter instance TTL). Relationships — counselFor, ownerOf, plaintiffIn, authoredBy, custodianOf — are queryable and visualized. The graph is both a browsing surface and a reasoning input.

3.4 AI Reasoning Engine evolve

A structured reasoning layer that operates under the six litigation objectives and thirteen house rules, not free-form. Capabilities:

Element mapping

Burden decomposition

Break a motion into its statutory elements; map each to supporting and contradicting record items with a per-element strength read.

Tree-of-thought

Parallel theories

Generate competing case theories, score each against the objectives, and synthesize from the strongest while grafting the best of the rest.

Counterfactual

What-if & as-of

Re-reason as of a prior date, or under an assumed fact, to test how fragile a conclusion is to the contested premises.

Argument scoring

Adversarial weighing

For each argument, rate admissibility, burden fit, and the strongest rebuttal the opponent can mount.

Outcome simulation

Ranges, not verdicts

Produce best / modal / adverse outcome bands with the evidentiary conditions that move between them.

Objective-tied

Reasons under rules

Every chain is checked against the encoded objectives and rules — the engine explains which rule drove which move.

3.5 AI Internal Gate-Counsel evolve

An adversarial reviewer that runs on every answer before a human sees it. It annotates and scores — it does not silently rewrite. Three independent controls plus a single honest verdict:

ControlQuestion it asksMechanismState
Perturbation verificationIs each factual claim grounded and stable under perturbation?Decompose the answer into atomic claims; re-ask K perturbed ways; grade grounding + reproduction; quarantine the unstable.Live
Counsel-QADoes anything overstate, mis-cite, or conflate distinct questions?A hostile single-pass review keyed to the case context; flags unsupported / overstated / bad-citation / conflation.Live
AuthenticityDo the citations resolve to real record rows?Linkify against the citation index; flag references with no backing document.Live
Privilege guardWould this waive privilege or expose work product?Consulting-expert posture check; work-product tagging; no written positions on flagged topics.Build
Ethics / candorAny duty-of-candor or Rule-3.3 risk?Rule-driven checks against a jurisdiction ethics ruleset.Build

3.6 Calendar, deadlines & lifecycle live

  • Return dates, answer dates, and CPLR-computed deadlines as CRM caseDeadlines with path-ICS export and reminders.
  • Procedural clock · dependency DAG — HARD_BLOCKS propagates risk; Next 3 actions with Assign owner (responsibleRole).
  • Stage tracking across the full lifecycle: pre-litigation → pleadings → motion practice → discovery → hearing → resolution → appeal.
  • Deadline changes propagate: an adjournment moves the dependent dates and notifies owners.

3.7 Collaboration & client portal build

  • Shared matter workspace with role-scoped visibility; internal work product never leaks to the client view.
  • Client portal: plain-language status, gated for over-promising, with a documented approval step before anything is sent.
  • Every mail-out goes through an admin-approval gate and a faithful audit log.

3.8 Research & adversary intelligence live

  • Ranked precedents. Candidate authorities are surfaced against the matter's posture and ranked by relevance and interest.
  • Verified vs candidate, on every row. Each authority is badged Verified · on file (a real opinion held in the register) or Candidate · verify (model-surfaced, unconfirmed). An unverified citation never passes as usable authority.
  • Adversary profiles. Opposing-party litigation history and prior-matter patterns — for strategy, settlement posture, and vexatious-litigant analysis.
  • Charted in the case graph. Every imported precedent is emitted as a PrecedentCase node carrying citation, court, holding and the issue it bears on, linked to the matters it was imported for; the Obsidian export renders it as a navigable graph with node labels on hover.
  • Suggested element support. Where a precedent's posture maps to a statutory element on the record (vacatur / fraud → CPLR §5015(a)(3); spoliation → CPLR §3126), the graph carries a suggested precedent→element edge, flagged for counsel confirmation rather than asserted as settled.
§ 03P

Paper Workbench — shipped product surface

The live Litigation Workbench is the paper-command seat for a CRM draft (aiAnalysis). CRM is source of truth; Word/Google Docs is a handoff via clean DOCX — not a second SoT. Studio path: /studio/workbench?id=<draft> (counsel-gated on crm.legalpresence.com). This public page is the product specification only — no case data.

Partner jobs on the page live

Dual view

Work product · Filing preview

Edit with SIGNOFF / NOTE / PIN markup in Work product. Filing preview strips internals for a filing-shaped read without changing CRM until counsel promotes clean text.

Gate

FILE / NO-FILE

R6 citations + open SIGNOFF markers + gate banners. Mechanical blockers fail loud. Counsel still decides; AI never auto-files.

Citations

R6 · Next/Prev · inspect

Register + CourtListener authority check. Good-law demotion of unconfirmed cites. Does not invent authorities or save on scan.

Package

Recipe · court pack

Package recipe runs Gate, shows a pre-file checklist, exports filing-clean DOCX. Court pack seal is hard-blocked on dirty gates (break-glass only).

Word bridge

DOCX export / import

Filing-clean DOCX out; re-import as a new CRM version. Companion page at /studio/word-bridge. Office.js add-in is later; this loop is supported today.

Read aloud

Southern default · pause

🔊 Read / ⏸ Pause / ⏹ Stop via /studio/tts (ElevenLabs). Default voice Wyatt — Southern / rustic (Texan-leaning). Speakify expands CPLR/NYSCEF for speech. Selection-only mode; ⌘/Ctrl-Shift-R.

Markup discipline

  • Structured tags only: [[LP:NOTE]], [[LP:PIN evidence=… page=…]], [[LP:SIGNOFF role=…]], approval stamps. Markdown ** is not used for comments — it breaks emphasis and filing-clean.
  • Fact pins link a sentence to an evidence id + page for the evidence rail.
  • Every Save that changes the body snapshots a CRM version first.

What is deliberately not on this public URL

The interactive Workbench editor, Command home, and Discover run under counsel auth on crm.legalpresence.com. legalpresence.com/studio/workbench-spec is intentionally un-gated and carries no matter record.

Product line
We own Clock + Gate on Command. We own paper + package on Workbench. Discover (precedent rank) is Advanced research — not this marketing Research interview.
§ 04

Technical Architecture

4.1 The substrate assembler

Each question triggers a fail-safe assembler that fuses four stores into one context. Any single store can be slow or down and the answer still returns — the section is simply skipped and labelled.

Per-question context assembly · every source is independently guarded
flowchart TB
  Q[Question + persona seat] --> ASM[Substrate assembler]
  subgraph S[Four grounded stores]
    D[Documents
semantic RAG over corpus] M[CRM markups
fact-assertions via GraphQL] G[Knowledge graph
RDF nodes + relations] R[Rules engine
objectives + house rules] end ASM --> D & M & G & R D & M & G & R --> CTX[Fused context
+ governance dump] CTX --> LLM[Reasoning Engine] LLM --> GATE[Gate-Counsel] GATE --> OUT[Answer + citations + verdict]
Fail-safe pattern
Every store is wrapped so a failure degrades to a labelled "temporarily unavailable" section rather than an empty or misleading answer. The assembler never raises; the reasoning layer never sees a silent gap.

4.2 Reasoning Engine & Gate-Counsel

Pipeline · generation, then independent verification
flowchart LR
  CTX[Fused context] --> GEN[Generate answer
thinking-budget managed] GEN --> CLM[Decompose into
atomic claims] CLM --> P1[Perturb ×K] --> SC[Grounding +
stability score] GEN --> QA[Counsel-QA
hostile pass] GEN --> AUTH[Authenticity
citation resolve] SC & QA & AUTH --> V[Single honest verdict
clean · flagged · unreviewed] V --> UI[Rendered with
badges + links]

4.3 Thinking-budget management

Lesson learned — encoded as policy
On large fused contexts, an extended-thinking model can spend its entire token budget reasoning and emit zero answer text — a silent truncation. Policy: short, speakable completions run with extended thinking disabled (the reasoning is structured elsewhere), deep multi-step reasoning gets an explicit, generous budget, and both retry once on an empty or incomplete return.

4.4 Twenty CRM data model

The Workbench is expressed as custom objects so it inherits Twenty's views, permissions, relations and audit. Content differs per matter; the schema is identical across all.

ObjectKey fieldsPurposeState
mattername, court, matterNumber, judge, status, stageThe case; root of every relationLive
evidenceItemname, ocrText, nyscefDocNumber, hash, r2Key, privilegeFlagA stored, authenticated documentLive
factAssertionfactText, factDate, affectedParty, reviewStatus, confidence, sourceDocument, contradictsThe ontology markup layerLive
caseTheorythesis, objectiveRef, strength, rulesAppliedA scored theory of the caseEvolve
motionsequence, relief, returnDate, standard, elements[]A motion and its elementsLive
aiAnalysisquestion, actor, answer, verdict, perturbationScore, citations[]A gated AI output with its auditLive
timelineEventdate, kind, matterRef, deadlineType, sourceFilings, hearings, computed deadlinesEvolve
Entity relationships
erDiagram
  matter ||--o{ evidenceItem : holds
  matter ||--o{ motion : has
  matter ||--o{ caseTheory : advances
  matter ||--o{ timelineEvent : schedules
  evidenceItem ||--o{ factAssertion : yields
  factAssertion }o--o{ caseTheory : supports
  motion ||--o{ aiAnalysis : reviewed_by
  caseTheory ||--o{ aiAnalysis : scored_by

4.5 Citation linker & perturbation — near-term improvements

ItemBeforeAfterState
Statute referencesPattern defined but never applied — statutes unlinkedStatutes linked/annotated as citationsFixed
Party names in proseOnly NYSCEF doc-numbers resolved → many answers cited nothingParty/person names from the graph linked to their record, tag-guarded so links never nestFixed
Perturbation re-asksVerifier's re-asks starved by extended thinking → empty → spurious quarantineVerifier calls run thinking-disabled → real perturbations, honest scoresFixed
Prose document mentionsDescriptive names ("the Berry affidavit") don't resolve to a rowFuzzy name→evidence resolution against the citation indexNext

4.6 Self-hosting & security

  • Ciphertext at rest in object storage; data-encryption keys isolated in a dedicated vault; documents never stored in plaintext.
  • Per-workspace isolation in Twenty; the AI substrate is scoped to the active matter and never imports another matter's facts.
  • All model keys are vault-sourced and injected at runtime; services fail loud on a missing secret rather than degrading silently.
§ 05

Design Concepts & UX

The interface is timeline-centric and evidence-first. The spine of every matter is its chronology; everything else — a document, an assertion, an AI analysis — hangs off a point in time and is one click from its source.

Home

Matter cockpit

Next deadlines, open gate flags, recent filings, and the readiness scorecard — what needs a human, surfaced before the detail.

Workbench

Paper command

Dual view, Gate, Citations, Package recipe, Word bridge, Southern read-aloud with pause — CRM SoT for every draft version.

Chronology

Timeline canvas

Filings, hearings and computed deadlines on one axis; click any node to open the evidence, the markup, or the analysis tied to it.

Evidence

Document + markup browser

The document beside its extracted fact-assertions, each with review status and confidence; contradictions highlighted inline.

Graph

Party & artifact map

Interactive knowledge graph — filter by relationship, trace a chain from a party to the document that binds them.

Console

Grounded AI seat

Ask from a role; the answer arrives with inline citations, a confidence read, and the gate verdict attached — never a bare wall of text.

Review

Gate-Counsel report

Per-claim grounding, overstatement flags, and unresolved citations — with accept / edit / override, each logged.

How users experience the AI
Confidence is shown, not hidden. Every answer carries its verdict badge (clean · flagged · unreviewed), quarantined claims are marked in place, and the human always has accept / edit / override — with the override reason captured for the audit trail.
§ 06

Non-Functional Requirements

DimensionRequirement
Privilege protectionWork-product and consulting-expert material is tagged and withheld from client-facing views and un-gated outputs by default; conversion to disclosable state is an explicit, logged action.
AuditabilityEvery AI output persists with its question, context digest, verdict, and citations; every human override records who, when, and why.
ExplainabilityEach answer traces to its grounding — which document, which assertion, which rule — and each gate flag states its basis.
ReliabilitySubstrate assembly is fail-safe per-source; generation retries on empty/incomplete; a store outage degrades gracefully with a visible label.
PerformanceRetrieval is bounded and cached; gated answers target a predictable latency envelope; the ungated fast path is available for low-latency/voice use.
Security & complianceEncryption at rest, vault-isolated keys, per-workspace tenancy, fail-loud on missing secrets, and no silent fallbacks.
§ 07

Roadmap & Implementation

PhaseThemeShips
MVPGrounded console, productizedSubstrate assembler, 7 personas, 3-control gate, evidence pipeline, citation + perturbation fixes — hardened and packaged as a Twenty extension
Waves 0–4Paper Workbench · partner spineShipped: Next 3 + owners, Matter Gate, dependency DAG + path-ICS, Workbench dual view, R6 Citations, Package recipe, DOCX Word bridge, Southern read-aloud (pause/stop), Discover advanced research
Phase 2Reasoning Engine + Gate-CounselElement mapping, tree-of-thought theories, outcome simulation; privilege & ethics gate controls; per-claim review UI
Phase 3Lifecycle & collaborationDocket monitor, deadline engine, timeline canvas, client portal with approval gate
Phase 4Scale & multi-jurisdictionJurisdiction rulesets, multi-matter analytics, firm-level dashboards
Indicative sequencing
gantt
  dateFormat YYYY-MM-DD
  axisFormat %b
  section MVP
  Harden substrate + gate      :a1, 2026-07-20, 40d
  Package Twenty extension     :a2, after a1, 30d
  section Phase 2
  Reasoning Engine             :b1, after a1, 55d
  Gate-Counsel (privilege/ethics):b2, after a2, 45d
  Per-claim review UI          :b3, after b1, 30d
  section Phase 3
  Docket + deadline engine     :c1, after b2, 45d
  Timeline canvas + portal     :c2, after b3, 50d
Prioritization call
The perturbation fix and the citation linker ship in the MVP, not later — they are what make the gate's verdict trustworthy, and a gate you can't trust is worse than none.
§ 08

Risks, Dependencies & Success Metrics

Risks & mitigations

RiskImpactMitigation
Model overconfidence reaching a humanHighGate-Counsel runs pre-display; flag-never-suppress; verdict badge always shown
Privilege waiver via an AI outputHighPrivilege guard control; work-product tagging; no written positions on flagged topics
Substrate drift across mattersMedPer-workspace scoping; assembler never imports another matter's facts
Thinking-budget truncationMedPolicy-level budget management + retry; monitored as a reliability metric
Citation resolves to nothingMedAuthenticity control flags unresolved cites; fuzzy name resolution on the roadmap

Success metrics

MetricDefinitionTarget
Grounded-answer rateAnswers where every claim resolves to a record item> 95%
Gate catch rateOverstatements/mis-cites caught before display, on a seeded set> 90%
Citation resolutionReferenced documents/parties that link to a real row> 90%
Empty/truncated answersGated answers returning incomplete text< 0.5%
Deadline miss rateTracked deadlines missed without an alert0
Attorney acceptanceAI outputs accepted or lightly edited vs discarded> 70%
Dependencies
Twenty CRM (custom objects + GraphQL), the object store + vault for evidence, the ontology/RDF toolchain, and a frontier model with a controllable thinking budget. All are in place today; the work is productization and hardening, not greenfield invention.

Product screenshots

The Studio, across the workflow. Illustrative data from a sample matter (Harborview Condominium Assn. v. Calloway). Click any screen to enlarge.

Governance — LegalPresence
Governance
Command · Case Chat — LegalPresence
Command · Case Chat
Discover — LegalPresence
Discover
Litigation Workbench — LegalPresence
Litigation Workbench
Word Bridge — LegalPresence
Word Bridge
Tasks — LegalPresence
Tasks
Strategy Map — LegalPresence
Strategy Map
Witnesses — LegalPresence
Witnesses
Damages — LegalPresence
Damages
Generate — LegalPresence
Generate
Enlarged screenshot