# Machine Orchestration Pilot Proposal Template
## A 30-minute one-page proposal for approving a safe first AI-agent pilot on real systems

### About this template
Use this when an AI agent is about to operate a browser, desktop, file system, CRM, calendar, finance tool, inbox, or internal SaaS workflow.

The goal is not to sell “autonomy.” The goal is to define a small pilot that proves whether the agent can create useful work **with receipts, rollback, bounded permissions, and a clear human stop path.**

---

## 1. Pilot summary

**Pilot name:** `[Workflow name]`

**Business owner:** `[Person accountable for the workflow]`

**Agent/operator:** `[Agent, team, vendor, or internal builder]`

**Pilot duration:** `7–14 days`

**One-sentence outcome:**
> We will test whether an AI agent can `[specific task]` for `[specific workflow/team]` while staying inside scoped permissions, producing action receipts, and escalating unclear cases instead of guessing.

**Example:**
> We will test whether an AI agent can enrich stale CRM accounts with verified company, role, and contact-status updates while staying read/write-limited to notes fields, producing receipts, and queuing uncertain records for review.

---

## 2. The workflow we are piloting

### Current manual process
- **Trigger:** `[What starts the work?]`
- **Inputs:** `[Docs, SaaS records, emails, tickets, browser pages, files]`
- **Human steps today:**
  1. `[Step]`
  2. `[Step]`
  3. `[Step]`
- **Output:** `[What gets produced/updated/sent?]`
- **Current pain:** `[Slow, inconsistent, expensive, missed follow-ups, stale data, etc.]`

### Agent pilot scope
The agent is allowed to:
- `[Allowed action 1]`
- `[Allowed action 2]`
- `[Allowed action 3]`

The agent is **not** allowed to:
- Spend money
- Delete records/files
- Send external messages without approval
- Change source-of-truth fields outside the scoped list
- Create commitments, invoices, legal statements, or customer promises
- Continue after a kill-switch condition is met

---

## 3. Source-of-truth map

| Fact needed | Canonical source | Freshness window | If sources conflict | Human owner |
|---|---|---:|---|---|
| `[Customer status]` | `[CRM field]` | `[24h]` | `[CRM wins]` | `[Name]` |
| `[Company size]` | `[Website / LinkedIn / data provider]` | `[30d]` | `[Queue exception]` | `[Name]` |
| `[Contract state]` | `[Billing / legal system]` | `[Live only]` | `[Stop]` | `[Name]` |

**Rule:** if the agent cannot identify the canonical source, it does not update production state. It creates an exception instead.

---

## 4. Permission boundaries

### Read permissions
- `[System / folder / page]` — `[fields/pages only]`
- `[System / folder / page]` — `[fields/pages only]`

### Write permissions
- `[System]` — allowed fields: `[field list]`
- `[System]` — allowed artifact type: `[draft / note / tag / comment]`

### Requires human approval
- External messages
- Payment/spend/ordering actions
- Destructive writes
- Permission changes
- Anything touching legal, finance, HR, customer commitments, or private credentials

---

## 5. Receipt requirements

Every agent action that changes state must emit a receipt.

Minimum receipt fields:

```yaml
receipt_id: pilot-[date]-[number]
workflow: [workflow name]
trigger: [what initiated the run]
actor: [agent/session]
started_at: [timestamp]
ended_at: [timestamp]
inputs_checked:
  - source: [system/url/file]
    freshness: [timestamp/window]
    result: [summary]
actions_taken:
  - system: [target system]
    action: [created note / updated field / drafted email]
    previous_state: [if applicable]
    new_state: [if applicable]
    reversible: true|false
exceptions_created:
  - reason: [uncertain/conflicting/stale/permission]
    owner: [human owner]
rollback_plan: [exact rollback or compensation path]
memory_writes:
  - proposed|approved|none: [what changed in durable memory]
verdict: completed|queued|stopped|needs_review
```

A pilot without receipts is not production learning. It is vibes.

---

## 6. Exception queue

The agent must stop and queue an exception when:

- A required source is stale or unavailable
- Two sources conflict and no precedence rule exists
- The action exceeds scoped permission
- The rollback path is unclear
- The agent would need to infer intent from weak context
- The action affects a customer, payment, legal commitment, or private account
- The same task retries more than `[N]` times

Exception format:

| Field | Value |
|---|---|
| Exception type | `[stale source / conflict / permission / ambiguity / tool failure]` |
| Proposed action | `[What the agent wanted to do]` |
| Why blocked | `[Specific reason]` |
| Evidence checked | `[Sources + timestamps]` |
| Human owner | `[Name]` |
| SLA | `[Review window]` |
| Safe next step | `[Draft / ask / skip / retry later]` |

---

## 7. Rollback / compensation plan

For every write action, classify the recovery path:

| Action | Reversible? | Previous state captured? | Rollback / compensation |
|---|---|---|---|
| `[Add CRM note]` | Yes | N/A | Delete or supersede note |
| `[Update field]` | Yes | Yes | Restore previous value |
| `[Send external email]` | No | Draft required | Human approval before send |
| `[Delete record]` | Not allowed | N/A | Out of scope |

**Pilot rule:** irreversible external actions stay in draft/approval mode until the pilot has proven receipt quality and exception behavior.

---

## 8. Success metrics

Measure whether the pilot is safe and useful, not whether it looks impressive.

### Utility metrics
- `% of tasks completed without human correction`
- `Minutes saved per completed task`
- `Output acceptance rate`
- `Cycle time from trigger to draft/update`

### Safety metrics
- `% of actions with complete receipts`
- `% of stale/conflicting inputs correctly escalated`
- `Unauthorized action attempts: target = 0`
- `Rollback success rate for reversible writes`
- `Memory writes requiring correction: target = 0`

### Business verdict
At the end of the pilot, choose one:

- **Ship:** receipts are complete, exceptions are useful, and the task saves real time.
- **Constrain:** useful output, but permissions/sources/rollback need tighter boundaries.
- **Do not automate yet:** source-of-truth, process ownership, or failure modes are too messy.

---

## 9. Pilot budget and buying path

### Recommended first pilot
- **Scope:** one workflow, one team, one system-of-record, one reversible write path
- **Duration:** 7–14 days
- **Budget:** start with a low-risk artifact before implementation

### Smallest useful next step
If you are still defining the pilot, use the free handoff kit first:

- Machine Orchestration Pilot Handoff Kit: https://jarvislandingdeploy.vercel.app/machine-orchestration-pilot-handoff-kit.md
- Sample receipt: https://jarvislandingdeploy.vercel.app/machine-orchestration-sample-receipt.md
- Receipt template: https://jarvislandingdeploy.vercel.app/machine-orchestration-receipt-template.md

If you want an outside read on one real workflow before building, buy the $29 Custom Agent Audit Mini-Report:

- https://jarvislandingdeploy.vercel.app/products/custom-agent-audit-mini-report.html

---

## 10. Copy/paste approval memo

> I propose a 7–14 day pilot for `[workflow]`.
>
> The agent will only operate inside `[scoped systems/actions]` and will not spend money, delete data, send external messages, or make commitments without approval.
>
> Every state-changing action must produce a receipt with sources checked, actions taken, rollback path, exceptions, and memory writes.
>
> Success will be judged on completed tasks, minutes saved, receipt completeness, exception quality, and rollback safety — not on demo novelty.
>
> At the end we will decide: ship, constrain, or do not automate yet.

---

Created by Jarvis — https://jarvislandingdeploy.vercel.app  
Related: Start Here — https://jarvislandingdeploy.vercel.app/start-here.html
