Compromise draft
What this page is — the capability that takes two deadlocked positions on a clause and drafts a single ready-to-insert clause that credibly splits the difference.
What it is for — so a negotiation stuck bouncing the same redline back and forth gets a concrete proposal to put on the table, instead of another round of restating.
The problem it solves — a clause deadlocked between two positions burns round after round of restating while the deal waits.
Route: the Drafting AI drawer → Compromise drafter ·
Permission: Use AI drafting/extraction/Q&A for documents. ·
Utility: papers_compromise_drafter · Cost: 450 credits estimated, 1,800 maximum.
1. What it is
Compromise drafter acts as a neutral mediator. Give it your position and theirs, and it returns one complete clause plus the reasoning for why it should close.
Two behaviours distinguish it from a naive midpoint:
- It favours creative trades over splitting the number. Net-30 against Net-60 does not come back as Net-45. It comes back as Net-45 with a 2% early-payment discount — a trade where each side gains something the other did not have to give up much to offer.
- It respects a playbook absolutely. Give it your pre-approved fallback positions and it never concedes past your weakest listed fallback. Without one, it splits the difference on the raw positions, with no idea where your limits are.
Compromise drafter requires both positions to be typed in. Its executor refuses without them, so the interface asks first rather than offering a Run button that could only fail. The other two are Redline grade, which needs the specific redline, and Regional annexures, which asks for jurisdictions only when the document names none.
It is also the only capability here that runs with no document open at all — the positions you type are what matter.
| Does | |
|---|---|
| Compromise draft | Drafts bridging wording for one deadlocked clause |
| Negotiation summary | Lists every open point and recommends a move on each |
2. Why you would use it
A deadlock is expensive in a way that is easy to underestimate: each round is days of calendar time, and the clause in dispute is usually worth less than the delay.
- It breaks the restating loop. Both sides have said their position three times. What is missing is a third option, and neither side wants to be the one to move first. A neutral draft is a way to propose without conceding.
- The playbook makes it safe to delegate. With fallbacks configured, a commercial lead can generate a compromise without legal review of the limits, because the limits are already encoded. That is the real unlock.
rationaleis the sales pitch. Two to four sentences on what each side gives and gets — which is what you actually send, not the clause alone.- It works before the deadlock, too. Running it on a point you expect to be contested gives you the fallback position ready before the first round.
3. What you provide
| Input | Required | Notes |
|---|---|---|
| Party A position | Required | Your side's stance on the clause — as specific as you can make it |
| Party B position | Required | The counterparty's stance, the position you are deadlocked against |
| Clause topic | Optional | A short label for what is in dispute. Anchors the draft |
| Fallback positions | Optional | Your pre-approved playbook, strongest preference first, one per line |
Party A position — "Payment due Net-30 from invoice date; 1.5%/month late fee." or "Liability capped at 12 months of fees paid."
Party B position — "Payment Net-60; no late fee." or "Liability capped at 3 months of fees."
Clause topic — Payment terms, Limitation of liability.
Fallback positions, one per line, strongest first:
Net-30, no discount
Net-45 with 2% early-pay discount
Net-45 firm (walk-away)
The playbook is a hard floor, not a hint — the draft will not concede past the weakest line you list. So the last line should be the position you would genuinely walk away from, not a comfortable one. If you list nothing, the draft splits the raw positions with no knowledge of your limits, and you must review it against them yourself.
4. What it reads automatically
This depends entirely on whether a document is open.
| Situation | What is added |
|---|---|
| A document is open | The document's text and party names as context, and the document type's redline playbook is offered as your fallback positions |
| No document open | Nothing. It works purely from the positions and playbook you type |
The middle column of the first row is worth knowing: if your document type already carries a redline playbook, you do not need to retype your fallbacks — see the clause library.
5. What you get back
| Field | Type | Means |
|---|---|---|
proposed_clause | HTML fragment | One complete, ready-to-insert clause. Paragraphs, lists and bold only — clean enough to paste |
rationale | string, 2–4 sentences | What each side gives and gets, and why this is likely to close |
based_on[] | string[] | What grounded the proposal — e.g. "party A position", "fallback position #2". Only lists inputs it actually used |
based_on[] is the field to read first. If your fallback playbook does not appear in it, the draft
was not constrained by your limits — either because you supplied none, or because the compromise
landed inside your strongest position anyway.
6. Worked example
A negotiation is deadlocked on payment terms: your side wants Net-30 with a late fee, theirs wants Net-60 with none.
Inputs:
- Party A position: "Payment due Net-30 from invoice date; 1.5%/month late fee."
- Party B position: "Payment Net-60; no late fee."
- Clause topic: Payment terms
- Fallback positions: the three lines in §3.
Result:
proposed_clause: "Payment shall be due Net-45 from the invoice date. A 2% discount applies where the Client pays within 15 days. Undisputed amounts unpaid after Net-45 accrue interest at 1% per month."
rationale: "Party A gives 15 days on timing but keeps a late-fee deterrent; Party B gets longer standard terms and a real incentive to pay early. The early-pay discount often nets faster cash than Net-30 alone, so both sides can sign."
based_on:
["party A position", "party B position", "fallback position #2"]
What makes this a good result. It did not return Net-45 and stop. It kept a late fee (your
deterrent, at a reduced 1%), gave them the longer standard term, and added an early-pay discount
that neither side had proposed — which, as the rationale points out, may collect cash faster than
Net-30 did. And based_on names fallback #2, so you can see it landed on a position you had already
approved.
7. Running it
- Open the Drafting AI drawer — on any document, or with none open.
- Choose Compromise drafter.
- Type each side's position, and optionally the clause topic and your fallback playbook.
- Run. The proposed clause and rationale appear.
- Review, edit, and paste the clause into your document when you are happy with it.
Never present the draft to the counterparty as settled, and never paste it into a shared document before your own side has approved it. With a playbook it stays inside your limits; without one it splits the raw positions and knows nothing about them.
Nothing is applied to any document. Step 5 is a human paste, deliberately.
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 Drafting AI drawer does not appear |
The papers_compromise_drafter utility is active | Orbit AI Flow → utilities | "This utility is currently disabled" |
| The utility is enabled for your organisation | /org/ai-utilities | Absent from the drafting drawer, 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" |
| A redline playbook is configured on the type | Clause library | Fallbacks are not offered automatically and must be typed each time — the difference between a safe delegated tool and one needing review every use |
For a confidential document, auto-run is default-denied — a platform administrator must set
papers.ai_confidential_cloud to the literal allow. A manual press still works, and where a local
model key is configured the run is forced on-prem and audited as ai_local_routed. Compromise
drafter is in any case not an auto-run capability: it cannot run without typed positions.
9. Don't confuse this with…
| Negotiation summary | Recommends a move on every open point. This drafts the wording for one |
| Shadow redline | Internal-only analysis of their round. This produces text meant to be shared |
| Clause library | Your approved standing wording. This produces a bespoke bridge |
| Redline grade | Judges their edit against the playbook. This proposes new wording |
10. Troubleshooting
| Symptom | Cause |
|---|---|
| There is no Run button | Both positions are required — it will not run bare (§1) |
| The draft conceded past our limit | No fallback playbook was supplied, so it split the raw positions (§3) |
based_on[] does not mention my fallbacks | They were not used — either not supplied, or the result landed inside your strongest position |
| The result is a bare midpoint | The positions were too vague to trade against. Be specific: numbers, carve-outs, conditions |
| The clause will not paste cleanly | It is an HTML fragment limited to paragraphs, lists and bold. Paste into the body, not a plain-text field |
| The document did not change | It never does. Pasting is a human step (§7) |
| Fallbacks were not pre-filled from the type | No redline playbook is configured on that document type (§8) |