Firm lane
Document organization for the firm
Kind: A model's output inside a law firm's workspace, through the platform's gateway.
Availability
Owner-gatedWaits on the platform's owner to connect the model provider for law-firm workspaces; until then every model door answers 503.
- Door
/admin/matter/[id] · /vault · /api/classify-document · /api/extract · /api/statement-import- Unlocks with
- A law firm's workspace, with the matter's plan or the firm's membership.
Every status follows one rule from this deployment's own configuration: a capability is marked shipped only when everything it needs is in place.
What it does
Labels uploads, extracts their fields into the matter's record, reads an uploaded trust, drafts observations and turns bank statements into ledger rows, for the firm's staff to check.
Keep in mind
Work product for the firm's own attorney to decide: the firm's tool, under the firm's own attorney, and never advice from EstateDraft.
Limits
- A file is read only after it passes the upload quarantine.
- Runs only on Claude Opus through the platform's gateway, after its cost is reserved against the monthly spending ceilings; the self-help service has no door to it.
What it refuses
| Answer | HTTP | Meaning |
|---|---|---|
consumer-ai-retired | 410 | On the self-help service this door answers 410 before any model call or write; it serves a law firm's workspace. |
forbidden | 403 | The session is not the firm's staff for this matter; the door reads nothing further. |
mfa-required | — | A staff session needs its second factor before any staff door opens: 401 to verify it, 403 to set one up. |
| — | 422 | The file failed a check and was not read: 413 when it is too large; 422 when it is empty, its type does not match its contents, or it carries active content, a damaged structure or encryption. |
no-key | 503 | When the model provider is not connected, the gateway refuses before any network call. |
surface-disabled | 503 | An operator switched this engine off; it refuses until it is switched back on. |
spend-ceiling | 429 | The month's model spending ceiling is reached: the call is refused, never run unmetered. |
spend-meter-unavailable | 503 | The spend meter could not be reached: the call is refused, never run unmetered. |
- Answer
consumer-ai-retired- HTTP
- 410
- Meaning
- On the self-help service this door answers 410 before any model call or write; it serves a law firm's workspace.
- Answer
forbidden- HTTP
- 403
- Meaning
- The session is not the firm's staff for this matter; the door reads nothing further.
- Answer
mfa-required- HTTP
- —
- Meaning
- A staff session needs its second factor before any staff door opens: 401 to verify it, 403 to set one up.
- Answer
- —
- HTTP
- 422
- Meaning
- The file failed a check and was not read: 413 when it is too large; 422 when it is empty, its type does not match its contents, or it carries active content, a damaged structure or encryption.
- Answer
no-key- HTTP
- 503
- Meaning
- When the model provider is not connected, the gateway refuses before any network call.
- Answer
surface-disabled- HTTP
- 503
- Meaning
- An operator switched this engine off; it refuses until it is switched back on.
- Answer
spend-ceiling- HTTP
- 429
- Meaning
- The month's model spending ceiling is reached: the call is refused, never run unmetered.
- Answer
spend-meter-unavailable- HTTP
- 503
- Meaning
- The spend meter could not be reached: the call is refused, never run unmetered.
What can leave EstateDraft
Each action that can reach outside EstateDraft is declared in one registry with the channel it uses; the outbox refuses an action that is not declared.
- Processed by the model provider; nothing is sent onward
ai.model-run
Evidence
src/lib/classify-document.test.tssrc/lib/vault-intel/vault.test.tssrc/lib/statement-import.test.tssrc/lib/upload-quarantine.test.tssrc/lib/extraction/index.tssrc/lib/vault-intel/extract.ts
Reviewed: