Missing clauses
What this page is — the capability that audits a document against the clauses a careful reviewer expects in its family, and reports both what is absent and what is covered.
What it is for — so a first-pass review that would take an experienced lawyer twenty minutes takes anyone thirty seconds, and the obvious omissions never reach the counterparty.
The problem it solves — obvious omissions reach the counterparty because a thorough first-pass review takes time nobody has.
Route: /org/papers/documents/<document>/ai → Understand → Missing clauses ·
Permission: Use AI drafting/extraction/Q&A for documents. ·
Utility: papers_missing_clause · Cost: 450 credits estimated, 1,800 maximum.
1. What it is
Every document family carries a set of clauses a seasoned reviewer expects: an NDA needs a term and a return-of-materials clause; a services agreement needs a liability cap, indemnity and termination rights. Missing clauses checks the open document against that checklist and returns two lists — what is absent (or so thin it gives no real protection), and what is present and where.
Two properties are worth knowing before you trust the output:
- It judges substance, not headings. A protection buried in a differently-named section still counts as present. A section headed "Limitation of Liability" that caps nothing does not.
- It goes beyond the checklist. It also flags clauses that are not on the standard list but are conspicuously absent given this document's subject matter.
Compared with the capabilities it sits next to:
| Checks against | Best at | |
|---|---|---|
| Missing clauses | A generic checklist for the family | The omission any reviewer would catch — reliably, every time |
| Blind spots | Your organisation's own finalised corpus | The omission only your most experienced reviewer would catch |
| Compliance & policy check | Rules an administrator configured | Breaches of your written policy, not of good practice |
| Risk analysis | Nothing — it judges what is there | Whether the clauses you do have protect you |
Missing clauses and Risk analysis are the natural pair: the first tells you what is not there, the second tells you whether what is there is any good.
2. Why you would use it
The commercial cost of a missing liability cap is not the clause. It is the year of exposure nobody noticed because the draft looked complete — twelve sections, properly numbered, professionally formatted, and no cap anywhere in it.
- It makes review consistent. The checklist does not get tired at 6pm or skip a section because the last four documents from this supplier were fine.
- It is the cheapest possible quality gate. Run before a draft goes out, it prevents the round trip where the counterparty's lawyer points out the gap for you.
present[]is as useful asmissing[]. Being told where a protection lives — and that it exists at all under an unhelpful heading — is what turns a fifty-page document into something navigable.- It scales an expert. A reviewer who has never handled a lease gets the lease checklist applied to their first one.
The family drives which checklist applies. A services agreement filed as an NDA gets audited against NDA expectations and will look reassuringly complete. If the findings feel off, check the type before you doubt the result.
3. What you provide
A standard run needs nothing — the detector already knows the expected clauses for the document's family. One optional input exists for organisations that always require more.
| Input | Required | Where | Notes |
|---|---|---|---|
| Extra clause checklist | Optional | Advanced parameters, not the main flow | Org-specific clauses your legal team always requires. Audited in addition to the built-in checklist, never instead of it |
Standard run — leave the checklist empty. The built-in expectations for the family apply.
With extras — a semicolon-separated list, for example:
Anti-bribery / FCPA clause; ESG compliance representation; India data-localisation undertaking
If your organisation supplies the same extras on every run, that is a sign they belong in a policy set rather than being retyped.
4. What it reads automatically
| Read from the document | Used for |
|---|---|
| Document text — the full rendered body | The audit itself |
| Title & family | Selects the expected-clause checklist. The single most consequential input |
| Parties — everyone named | Whose exposure each gap creates |
| Key field values — filled schema fields | Amounts and dates, so the why can be specific about scale |
5. What you get back
Two arrays.
| Field | Type | Values | Means |
|---|---|---|---|
missing[] | array | — | Clauses absent, or present but too thin to protect you |
missing[].clause | string | — | Short name of the clause |
missing[].importance | enum | high, medium, low | How exposed its absence leaves the parties |
missing[].why | string | — | The concrete risk of its absence for this document — not a generic explanation of the clause |
present[] | array | — | Checklist clauses the document does cover |
present[].clause | string | — | Short name of the clause |
present[].clause_ref | string | empty if unclear | The heading where it is covered |
present means it exists, not that it is adequate. A liability cap set at one month's fees is
present. Whether that is acceptable is a question for Risk analysis.
6. Worked example
A reviewer runs Missing clauses on a supplier's services agreement before returning first comments.
Input: none — the built-in checklist for the services-agreement family is used.
The top entry of missing[]:
No limitation of liability importance:
highwhy: The agreement creates broad indemnities but never caps total liability, so either party's exposure is unlimited — a single dispute could exceed the entire contract value.
Note what makes that why useful: it is not "a liability cap limits your exposure". It reads this
document, sees the broad indemnities that are present, and explains why their combination with no
cap is the problem. That sentence goes into the comment to the counterparty almost unedited.
The same run returned nine entries in present[], including:
Confidentiality —
clause_ref: "11. Protection of Information"
which is exactly the case the substance rule exists for: nothing in the document is headed "Confidentiality", and the protection is there anyway.
7. Running it
- Open the document in Orbit Papers.
- Open the AI Assistant drawer, or go to the document's AI workspace.
- Choose Missing clauses under Understand.
- The missing / present breakdown appears in its own tab and is saved to the document.
The result belongs to the document, so the next reviewer sees this audit rather than paying 450 credits for the same one. Re-run after the counterparty returns a round — that is the moment the answer changes, and the moment a quietly deleted clause would otherwise go unnoticed.
Missing clauses is available for auto-run on submit, round or finalize from the document type's
AI Config tab. On on_round it is one of the highest-value automatic checks in the module: it
catches the clause that disappeared between versions. See
AI configuration.
8. The admin contract
| Must be true | Where | What happens if it is not |
|---|---|---|
| Your role holds Use AI drafting/extraction/Q&A for documents. | Role editor | The AI Assistant button does not appear |
The papers_missing_clause utility is active | Orbit AI Flow → utilities | "This utility is currently disabled" |
| The utility is enabled for your organisation | /org/ai-utilities | Absent from Understand, with no error |
papers.ai_monthly_credit_cap not yet reached | System Config | "monthly AI credit cap reached: n of n credits used this month" |
| The document's type reflects what it really is | Type designer | The wrong checklist is applied and the audit is quietly wrong — no error, just a reassuring result |
For a confidential document, auto-run is default-denied — a platform administrator must set
papers.ai_confidential_cloud to the literal allow, and the block appears only in the server log.
A manual press still works, and where a local model key is configured the run is forced on-prem and
audited on the timeline as ai_local_routed.
9. Don't confuse this with…
| Blind spots | Benchmarks your own finalised corpus. This uses a generic checklist |
| Compliance & policy check | Checks configured policy rules. This checks professional expectation |
| Cross-document consistency | Finds conflicts between documents. This looks inside one |
| Clause library | Where approved clause wording is stored. This tells you which are absent |
10. Troubleshooting
| Symptom | Cause |
|---|---|
| The document looks complete but I know it is not | The family is wrong, so the wrong checklist applied. Check the type first (§3) |
| A clause I can see is listed as missing | It is present but judged too thin to protect — read the why; that is the finding |
| A clause is listed as present but is useless | present means covered, not adequate. Run Risk analysis on it |
clause_ref is empty on a present clause | The protection is spread across the document with no single heading to cite |
| My org's required clauses are never checked | They are not on the generic checklist — supply them as an extra checklist (§3) |
| The capability is missing from Understand | Role lacks Use AI drafting/extraction/Q&A for documents., or the utility is off for the organisation (§8). The document type does not gate it — AI Config controls auto-run only |