binky-control/AutonomyPolicy.md

111 lines
4.3 KiB
Markdown
Raw Permalink Normal View History

# Autonomy Policy
> Status: draft v0.1 — 2026-07-16. Governs what agents may do without the
> founder. In force once ratified. The operating rule: **"ask Bernd" is never
> the default.**
## The rule
> If the founder is unavailable, the system must either continue safely,
> prepare the next decision, or explicitly defer with evidence. It must not
> silently idle.
Valid states: `proceeding` | `prepared for review` | `deferred by policy`.
Invalid state: `waiting because unsure`. Uncertainty triggers research,
comparison, preparation, or risk classification — not paralysis.
## Autonomy lanes
| Lane | Name | Agent may | Human needed? |
| --- | --- | --- | --- |
| **Green** | Safe autonomous | Research, summarize, classify, draft, organize, test, prepare | No |
| **Blue** | Reversible execution | Internal docs, backlog updates, local scripts, reports, local commits | No, but logged |
| **Yellow** | Deferred approval | Prepare external emails, invoices, offers, releases, payments | Yes, async via decision queue |
| **Orange** | Time-window approval | Customer/legal/accounting/banking actions needing business hours | Yes, on office-hour days |
| **Red** | Human-only | Signing, strategic commitments, bank changes, sensitive legal/HR/security | Always |
Optimization target: maximize Green+Blue throughput, queue Yellow, batch
Orange into office-hour days, protect Red from automation.
## Default policies
- **Research:** if uncertain, collect evidence and produce a comparison. Ask
only if ambiguity changes risk or external commitment.
- **Documentation:** agents may create/improve internal markdown freely; must
preserve provenance and mark assumptions.
- **Residuals (finished workplans):** before marking a workplan `finished`,
hand off actionable leftovers as **live work records** (intake with
`origin: residual` + `origin_ref: <WP-id>`, or a next workplan / decision /
engagement). Green/Blue residual capture is normal autonomous work. Do not
park residuals only in prose or `SCOPE.md`. Fleet canon:
`work-record-types_v0.1.md` § Residuals.
- **Email:** draft freely; send only pre-approved low-risk routine categories.
Pricing, commitments, complaints, contracts, legal → decision queue.
- **Spending:** recommend freely; never spend outside approved recurring
budgets or explicit thresholds.
- **Product:** refine specs, use cases, architecture, backlog freely; strategic
direction is never final without founder approval.
- **Code:** branches, tests, prototypes, docs, local commits freely; no
production deploys without policy-approved checks.
## Approval packages
When an agent hits a lane boundary it prepares a complete decision package,
not a bare question:
```yaml
decision: ""
recommended_action: ""
reason: ""
evidence: []
risk_level: yellow
reversibility: low | medium | high
deadline: ""
attention_cost: "15 min"
fallback_if_no_approval: ""
options: [approve, reject, revise, defer]
```
## Founder attention budget
```yaml
daily_attention_budget:
available_minutes: 90 # typical of the 13 h window
max_decisions_per_day: 7
max_deep_topics_per_day: 1
interaction_style: [concise briefs, approve/reject options, evidence links]
```
## Founder availability is first-class state
```yaml
founder_availability:
state: available | evening_window | unavailable | office_hour_day
allowed_escalation_when_unavailable:
- critical security incident
- payment failure
- legal deadline
```
On return from absence, agents produce a **Return Brief**: what changed, what
progressed, what waits, what went stale, what risks increased, recommended
decisions for today.
## Initial autonomy thresholds
| Area | Autonomous? | Limit |
| --- | ---: | --- |
| Internal docs | Yes | Preserve previous versions |
| Research | Yes | Cite/store sources |
| Backlog refinement | Yes | Propose, don't delete major items |
| Code prototypes | Yes | Branch only, no production deploy |
| Customer emails | Draft only | Send after approval |
| Social/publishing | Draft only | Publish after approval |
| Payments | No | Prepare only |
| Contracts | No | Analyze/draft only |
| Security changes | Mostly no | Prepare/test only |
| Cloud infra | Limited | Non-production only |
Raise autonomy per area only after the system proves reliable there, by
explicit founder decision recorded in `DecisionQueue.md`.