Golden Maintenance Workflow

One work order, intake → close, agent-driven. No owner comms. Each numbered stage is also a measured section of the scoreboard. 2026-05-31.

Auto now — agent acts, no human Visible — agent surfaces, Andrew acts Flag — escalate to UI

The path

  1. Intakeauto
    WO lands from AppFolio. Agent summarizes, classifies trade + urgency, texts Jose the summary + suggested vendor.
    Measures: classification correct · summary faithful · suggested vendor accepted.
  2. Triage with Joseauto
    Parse Jose's reply. Two forks run automatically: yes → proceed, or different vendor → swap. Anything else → flag.
    Measures: reply parsed correctly · right fork chosen · false-auto rate (acted when it should've flagged).
  3. Dispatch handoffauto
    Send WO + tenant's phone to the vendor: "schedule directly with the tenant." Tell the tenant: "sent to {vendor}, expect a call from {vendor phone}." Agent steps out — vendor & tenant coordinate directly.
    Measures: both messages sent · correct vendor/tenant numbers · no wrong-person leak.
  4. Follow-up loopvisible
    Nightly cron sweeps open issues (work-day aware — skips weekends). 2 work-days after dispatch the issue surfaces in the web UI: agent checks AppFolio status and drafts a tenant check-in. Andrew sends it. Re-surfaces 1–2 more times if the tenant goes quiet, then → flag.
    Why manual first: brand-new behavior the agent has never run. Start visible — agent computes the queue + drafts, Andrew approves/sends. Approve-rate is the eval that graduates this stage to auto.
    Measures: right issues surfaced at right time · draft approve-rate · no premature/late nudges.
  5. Completionauto
    AppFolio status = done → agent marks Closed / Ready to bill. Tenant confirms fixed (still pending in AppFolio) → same. Not fixed, or no response after the nudges → flag.
    Measures: correct close decision · no premature close · ready-to-bill accuracy.
  6. Memoryauto
    Observation + belief update on every fork (vendor choice, tenant behavior, property quirks). Logged to the issue.
    Measures: right facts captured · beliefs reused on next WO.

Boundaries

Off the happy path → flag in the UI. Ambiguous Jose reply, stray tenant/vendor inbound, vendor gone silent, low-confidence anything. Flag + log; Andrew handles it.
Out of scope (next version): owner communication. If Jose says "contact owner," the agent acks and flags — Andrew handles owner comms manually for now.

Automation order

Race stages 1, 2, 3, 5, 6 to auto as fast as possible. Keep stage 4 (follow-up) visible until its approve-rate earns graduation. That's the "get Andrew out of the loop" plan, applied per-stage.