{
  "schema_version": "0.1.0",
  "record_type": "industry_value_research",
  "industry_id": "law_firms",
  "industry_name": "Law firms",
  "as_of": "2026-09-05",
  "jurisdiction": "United States research pilot; state/practice-area requirements still need an authorized firm-specific review.",
  "status": "research_only_not_admitted",
  "source_frame": "Action Model system-map industry slug law_firms; taxonomy reference only, not client demand or implementation proof.",
  "scope_note": "Law firms are the N1 research pilot. HALO is not classified as a law firm by this record. No client/matter data was accessed. Current software means verified marketed capability, not measured installed-base prevalence.",
  "summary": "Begin with supervised intake, approved-template assembly and evidence-preserving document review. Compare against the firm's existing software before replacing it. Neither exposure estimates nor a repository's features establish cash savings.",
  "automation_research": {
    "finding": "An occupational task inventory identifies legal-assistant document preparation, records organization and research. A preregistered 2024 study found errors in the legal AI research tools it tested despite retrieval grounding. This supports decomposing tasks and measuring supervised assistance; it does not supply a law-firm-wide automation rate or a current vendor-performance ranking.",
    "source_ids": [
      "onet",
      "legal-ai-study"
    ],
    "forecast_percent": null,
    "forecast_note": "No independently verified percentage is used. The inaccessible Clio report was not treated as evidence, and task exposure is not realized automation."
  },
  "software": [
    {
      "name": "MyCase",
      "capability": "Vendor currently advertises intake, case management, document automation, time/billing and client communication features.",
      "evidence_scope": "vendor_advertised_not_installation_or_outcome_proof",
      "source_ids": [
        "mycase"
      ],
      "price": null,
      "price_note": "No verified billing-basis quote or client invoice; do not count the subscription as cancellable."
    },
    {
      "name": "Actionstep",
      "capability": "Vendor currently advertises matter/workflow management, intake/conflict checking, document automation, billing and client portal features.",
      "evidence_scope": "vendor_advertised_not_installation_or_outcome_proof",
      "source_ids": [
        "actionstep"
      ],
      "price": null,
      "price_note": "Firm-specific quote and actually avoidable spend unknown."
    },
    {
      "name": "LegalServer",
      "capability": "Current case-management product explicitly targets civil legal aid, public defenders and government law offices.",
      "evidence_scope": "negative_control_different_buyer",
      "source_ids": [
        "legalserver"
      ],
      "price": null,
      "price_note": "Do not treat a public-interest legal product as a like-for-like incumbent for a private commercial firm."
    }
  ],
  "modules": [
    {
      "repository": "jhpyle/docassemble",
      "capability": "Guided interviews and template-based PDF/RTF/DOCX document assembly.",
      "source_revision": "1b6678384bc953afeef5c8e2fcde0f5e1c238b6e",
      "existing_foundry_ref": "intelligence/agency/value-matrix.json:agency entry for jhpyle/docassemble",
      "reuse_shape": "Version-pinned sidecar with firm-approved interviews/templates; not an autonomous legal adviser.",
      "rights_state": "GitHub metadata reports MIT; route/dependency/attribution review still required",
      "source_ids": [
        "docassemble",
        "repo-docassemble"
      ],
      "limits": "Firm-specific rules, template correctness, privilege, tenancy, retention and integrations unproved."
    },
    {
      "repository": "Open-Source-Legal/OpenContracts",
      "capability": "Document annotation, structured extraction and citation-linked review, as described in upstream README.",
      "source_revision": "2cd5230d90cd666e9536103801fdcb118149fba7",
      "existing_foundry_ref": "intelligence/agency/value-matrix.json:Open-Source-Legal/OpenContracts",
      "reuse_shape": "Read-oriented evidence extraction/review sidecar; source document and reviewer authority retained.",
      "rights_state": "GitHub metadata reports MIT; full route review pending",
      "source_ids": [
        "repo-opencontracts"
      ],
      "limits": "README features are not measured extraction accuracy; do not convert extracted claims into legal conclusions."
    },
    {
      "repository": "documenso/documenso",
      "capability": "Self-hostable electronic-signature workflow, described by its upstream project.",
      "source_revision": "2cac63a000e22422bdea449f68b8025e709aa73a",
      "existing_foundry_ref": "intelligence/agency/value-matrix.json:documenso/documenso",
      "reuse_shape": "Approved signing sidecar/API only after rights, identity and document-class review.",
      "rights_state": "GitHub metadata reports AGPL-3.0; obligations and commercial route unresolved",
      "source_ids": [
        "repo-documenso"
      ],
      "limits": "Feature existence does not establish validity for every document, court process or jurisdiction; no signature was sent."
    },
    {
      "repository": "activepieces/activepieces",
      "capability": "Typed reusable connector pieces and workflow execution.",
      "source_revision": "af374df8ae23f973376650f9b83642e2e7985bf3",
      "existing_foundry_ref": "intelligence/agency/value-matrix.json:activepieces/activepieces",
      "reuse_shape": "Allowlisted draft/notification workflow with human-approved external writes.",
      "rights_state": "README separates community MIT and commercially licensed enterprise features; edition/route review required",
      "source_ids": [
        "repo-activepieces"
      ],
      "limits": "Connector availability does not prove client consent, reliable retries, idempotency or matter-level permissions."
    },
    {
      "repository": "teableio/teable",
      "capability": "PostgreSQL-backed tables, forms, permissions and API advertised upstream.",
      "source_revision": "5ef2238883cad7c3980084de9a9031135fb9734f",
      "existing_foundry_ref": "intelligence/agency/value-matrix.json:teableio/teable",
      "reuse_shape": "Evidence-bound review/read model; not replacement authority for matter, trust or financial ledgers.",
      "rights_state": "GitHub SPDX NOASSERTION; edition and route unresolved",
      "source_ids": [
        "repo-teable"
      ],
      "limits": "Generic table behavior does not implement legal conflict rules, trust accounting or system-of-record migration."
    }
  ],
  "processes": [
    {
      "id": "intake",
      "process": "Client intake and missing-information chase",
      "automation_boundary": "Collect and normalize supplied fields; flag missing facts and possible matches; never accept a conflict or engagement automatically.",
      "evidence_state": "capability_supported_value_hypothesis",
      "source_ids": [
        "mycase",
        "actionstep",
        "docassemble"
      ],
      "current_software": [
        "MyCase",
        "Actionstep"
      ],
      "github_modules": [
        "jhpyle/docassemble",
        "activepieces/activepieces"
      ],
      "baseline_required": "Matched incumbent workflow volume, quality, human time including review/rework, actual spend and operator cost.",
      "metric": "Human minutes per complete, accepted intake including review and chase",
      "falsifier": "Reject if a known conflict/identity ambiguity is suppressed or completed intake takes no less total human time.",
      "human_authority": "Firm-designated intake reviewer; lawyer owns conflict/engagement decision.",
      "value": {
        "formula_ref": "observed-value-v0.1",
        "currency": "USD",
        "annual_net_cash": null,
        "annual_capacity_hours": null,
        "status": "unmeasured"
      }
    },
    {
      "id": "assembly",
      "process": "Approved-template document assembly",
      "automation_boundary": "Populate approved templates from validated interview answers and return a draft plus field provenance.",
      "evidence_state": "capability_supported_value_hypothesis",
      "source_ids": [
        "onet",
        "docassemble",
        "mycase"
      ],
      "current_software": [
        "MyCase",
        "Actionstep"
      ],
      "github_modules": [
        "jhpyle/docassemble"
      ],
      "baseline_required": "Matched incumbent workflow volume, quality, human time including review/rework, actual spend and operator cost.",
      "metric": "Human minutes per correct, reviewed document; critical field errors",
      "falsifier": "Reject if version/party/amount/date errors survive review or review effort erases assembly savings.",
      "human_authority": "Qualified professional approves template/rules and final legal document.",
      "value": {
        "formula_ref": "observed-value-v0.1",
        "currency": "USD",
        "annual_net_cash": null,
        "annual_capacity_hours": null,
        "status": "unmeasured"
      }
    },
    {
      "id": "evidence_review",
      "process": "Document extraction and source-linked review",
      "automation_boundary": "Extract candidate facts with document/version/page references; reviewers accept/reject each finding.",
      "evidence_state": "capability_supported_value_hypothesis",
      "source_ids": [
        "onet",
        "legal-ai-study",
        "repo-opencontracts"
      ],
      "current_software": [
        "Actionstep",
        "MyCase"
      ],
      "github_modules": [
        "Open-Source-Legal/OpenContracts"
      ],
      "baseline_required": "Matched incumbent workflow volume, quality, human time including review/rework, actual spend and operator cost.",
      "metric": "Correct accepted findings per reviewer hour, with unsupported findings counted",
      "falsifier": "Reject if a finding lacks its supporting source or cross-matter retrieval exposes restricted material.",
      "human_authority": "Matter owner controls access and interpretation; extracted text is not legal advice.",
      "value": {
        "formula_ref": "observed-value-v0.1",
        "currency": "USD",
        "annual_net_cash": null,
        "annual_capacity_hours": null,
        "status": "unmeasured"
      }
    },
    {
      "id": "signing",
      "process": "Approved-document signing coordination",
      "automation_boundary": "Prepare a signing envelope only from approved immutable content; require explicit release authority.",
      "evidence_state": "capability_supported_value_hypothesis",
      "source_ids": [
        "mycase",
        "repo-documenso"
      ],
      "current_software": [
        "MyCase"
      ],
      "github_modules": [
        "documenso/documenso"
      ],
      "baseline_required": "Matched incumbent workflow volume, quality, human time including review/rework, actual spend and operator cost.",
      "metric": "Human coordination minutes per correctly completed signing workflow",
      "falsifier": "Reject if signer/document identity changes undetected or benefit depends on bypassing approval.",
      "human_authority": "Authorized firm sign-off; no automatic filing or signing.",
      "value": {
        "formula_ref": "observed-value-v0.1",
        "currency": "USD",
        "annual_net_cash": null,
        "annual_capacity_hours": null,
        "status": "unmeasured"
      }
    },
    {
      "id": "followup",
      "process": "Client updates and administrative follow-up",
      "automation_boundary": "Draft status updates from current records; route for review and send only when authorized.",
      "evidence_state": "capability_supported_value_hypothesis",
      "source_ids": [
        "mycase",
        "actionstep",
        "repo-activepieces"
      ],
      "current_software": [
        "MyCase",
        "Actionstep"
      ],
      "github_modules": [
        "activepieces/activepieces"
      ],
      "baseline_required": "Matched incumbent workflow volume, quality, human time including review/rework, actual spend and operator cost.",
      "metric": "Net human minutes per accurate approved update, including exception/retry review",
      "falsifier": "Reject if stale status is sent as current, recipients cross matter boundaries or retries duplicate an action.",
      "human_authority": "Firm communication owner retains recipient/content/send control.",
      "value": {
        "formula_ref": "observed-value-v0.1",
        "currency": "USD",
        "annual_net_cash": null,
        "annual_capacity_hours": null,
        "status": "unmeasured"
      }
    },
    {
      "id": "billing_review",
      "process": "Time/billing exception review",
      "automation_boundary": "Surface missing time descriptions, inconsistent identifiers or rejected line items in a read model; keep financial authority upstream.",
      "evidence_state": "capability_supported_value_hypothesis",
      "source_ids": [
        "mycase",
        "actionstep",
        "repo-teable"
      ],
      "current_software": [
        "MyCase",
        "Actionstep"
      ],
      "github_modules": [
        "teableio/teable"
      ],
      "baseline_required": "Matched incumbent workflow volume, quality, human time including review/rework, actual spend and operator cost.",
      "metric": "Review minutes per resolved exception; correction rate; actually recovered contribution margin",
      "falsifier": "Reject if trust/billing state is overwritten or saved billable hours are counted both as cash and new revenue.",
      "human_authority": "Billing/accounting owner; no trust-ledger or invoice replacement authorized.",
      "value": {
        "formula_ref": "observed-value-v0.1",
        "currency": "USD",
        "annual_net_cash": null,
        "annual_capacity_hours": null,
        "status": "unmeasured"
      }
    }
  ],
  "sources": [
    {
      "id": "onet",
      "url": "https://www.onetonline.org/link/summary/23-2011.00",
      "title": "Paralegals and Legal Assistants — updated 2026",
      "publisher": "O*NET OnLine",
      "kind": "government_task_inventory",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Observed task inventory, not an automation forecast or firm baseline."
    },
    {
      "id": "legal-ai-study",
      "url": "https://arxiv.org/abs/2405.20362",
      "title": "Hallucination-Free? Assessing the Reliability of Leading AI Legal Research Tools",
      "publisher": "Magesh et al.",
      "kind": "primary_research",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Submitted 30 May 2024; the tested historical systems are not a current-market ranking. Supports verification/quality gates, not a savings percentage."
    },
    {
      "id": "mycase",
      "url": "https://www.mycase.com/",
      "title": "8am MyCase legal practice management",
      "publisher": "MyCase",
      "kind": "vendor",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Capabilities observed on live vendor page; no firm adoption or performance measurement."
    },
    {
      "id": "actionstep",
      "url": "https://www.actionstep.com/",
      "title": "Law firm management software",
      "publisher": "Actionstep",
      "kind": "vendor",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Capabilities observed on live vendor page; not a migration or savings proof."
    },
    {
      "id": "legalserver",
      "url": "https://www.legalserver.org/",
      "title": "Case management for civil legal aid and public defenders",
      "publisher": "LegalServer",
      "kind": "vendor",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Vendor explicitly distinguishes its buyer from for-profit law firms."
    },
    {
      "id": "docassemble",
      "url": "https://docassemble.org/",
      "title": "Guided interviews and document assembly",
      "publisher": "docassemble",
      "kind": "official_project_docs",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Deterministic assembly capability is not evidence that a generated legal document is correct."
    },
    {
      "id": "repo-docassemble",
      "url": "https://github.com/jhpyle/docassemble/blob/1b6678384bc953afeef5c8e2fcde0f5e1c238b6e/README.md",
      "title": "jhpyle/docassemble pinned README",
      "publisher": "jhpyle/docassemble",
      "kind": "official_repository",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Commit identity verified using GitHub API; README review is not executable module qualification."
    },
    {
      "id": "repo-opencontracts",
      "url": "https://github.com/Open-Source-Legal/OpenContracts/blob/2cd5230d90cd666e9536103801fdcb118149fba7/README.md",
      "title": "Open-Source-Legal/OpenContracts pinned README",
      "publisher": "Open-Source-Legal/OpenContracts",
      "kind": "official_repository",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Commit identity verified using GitHub API; README review is not executable module qualification."
    },
    {
      "id": "repo-documenso",
      "url": "https://github.com/documenso/documenso/blob/2cac63a000e22422bdea449f68b8025e709aa73a/README.md",
      "title": "documenso/documenso pinned README",
      "publisher": "documenso/documenso",
      "kind": "official_repository",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Commit identity verified using GitHub API; README review is not executable module qualification."
    },
    {
      "id": "repo-activepieces",
      "url": "https://github.com/activepieces/activepieces/blob/af374df8ae23f973376650f9b83642e2e7985bf3/README.md",
      "title": "activepieces/activepieces pinned README",
      "publisher": "activepieces/activepieces",
      "kind": "official_repository",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Commit identity verified using GitHub API; README review is not executable module qualification."
    },
    {
      "id": "repo-teable",
      "url": "https://github.com/teableio/teable/blob/5ef2238883cad7c3980084de9a9031135fb9734f/README.md",
      "title": "teableio/teable pinned README",
      "publisher": "teableio/teable",
      "kind": "official_repository",
      "accessed_at": "2026-09-05",
      "retrieval_status": 200,
      "note": "Commit identity verified using GitHub API; README review is not executable module qualification."
    }
  ],
  "value_model_ref": "../economics/observed-value-model.json",
  "observed_business_value": {
    "currency": "USD",
    "annual_net_cash": null,
    "annual_capacity_hours": null,
    "eligible_businesses": null,
    "societal_value": null,
    "status": "unmeasured",
    "reason": "No firm baseline, invoices, achieved automation rate, review/rework time, operating cost, displacement proof or eligible-population measurement. Null is not zero."
  },
  "pilot": {
    "design": "Within one authorized firm, compare matched routine work under the incumbent workflow and supervised candidate workflow. Start with synthetic/redacted fixtures; pre-register which documents/actions are in scope before using live data.",
    "record": [
      "units processed",
      "baseline human minutes",
      "assisted human minutes including review and rework",
      "critical errors and denied-access cases",
      "actual cancelled spend",
      "recurring operating cost",
      "implementation and rollback cost"
    ],
    "reject_if": [
      "Human time including review/rework is not lower than the matched baseline.",
      "Any privileged record crosses an unauthorized boundary or an unapproved external action occurs.",
      "The result depends on treating draft/closed status as accepted legal work.",
      "Measured first-year net cash is not positive for a cash-savings offer; capacity gains alone are not cash."
    ]
  },
  "limitations": [
    "This is not legal advice, product admission or an industry-wide value forecast.",
    "Current software adoption prevalence and current subscription prices were not verified; named offerings are not assumed to be installed.",
    "No claim that a generic repository replaces the whole legal practice stack.",
    "Rights, security, accessible UI, restoration and integration behavior remain product-owner gates."
  ],
  "blocked_sources": [
    {
      "url": "https://www.clio.com/resources/legal-trends/2024-report/",
      "status": 403,
      "note": "Not used as evidence"
    },
    {
      "url": "https://www.clio.com/pricing/",
      "status": 403,
      "note": "No price inferred"
    },
    {
      "url": "https://www.americanbar.org/groups/professional_responsibility/publications/ethics_opinions/formal_opinion_512/",
      "status": 403,
      "note": "No current regulatory assertion derived from inaccessible content"
    }
  ]
}
