About

The commercial problem

For a commercial HVAC contractor, a callback is not just another trip. ACCA describes callback cost as technician labor, office and administrative overhead, and revenue lost when that time could have gone to another paid job. It also points to customer frustration, technician burnout, and reputational damage as additional consequences.

ACCA: The true cost of callbacks

ServiceTitan connects a disciplined debrief with confirming required steps, helping the office verify completion, improving consistency, and reducing needless callbacks. It also notes that calling dispatch or management after every job can tie up the phone and consume substantial staff time as a contractor grows.

ServiceTitan: Debrief process

FieldClose targets an adjacent workflow gap: the after-service customer confirmation that may still be missing after the technical work and technician debrief are complete. It does not prevent technical rework or replace quality assurance. It gives the office one bounded way to ask an authorized customer contact whether the equipment appears to be operating, whether an issue remains, and whether a return visit is requested before a human closes the case.

FieldClose has no practitioner interview sample or measured customer baseline, and it has not demonstrated a reduction in callback rate, labor cost, or closeout time. These industry sources motivate the adjacent problem; they do not validate FieldClose's impact. Those outcomes remain future measures.

What FieldClose does

FieldClose turns one completed work order into one human-approved CALL-E follow-up. An owner or operator reviews the authorized contact, exact AI disclosure, permitted service reference, approved questions, calling window, and authority boundaries. The approval is bound to the current case version and one server-created attempt.

CALL-E results are normalized into operational fields without erasing uncertainty. FieldClose keeps provider status separate from business meaning, routes exceptions to a human, and never lets the agent diagnose equipment, quote or negotiate price, approve work, promise arrival times, authorize payment, or close an external work order. The operator records the final bounded disposition, and every transition remains inspectable in an append-only audit trail.

The practical core is six mechanisms working together:

  1. Exact-brief review before execution.
  2. Human approval bound to one attempt.
  3. Stable idempotency and duplicate-creation protection.
  4. Conservative, uncertainty-preserving result normalization.
  5. Explicit escalation and human business authority.
  6. A fake-only public evaluator experience with no phone-call capability.

The public judge deployment is safe to explore at https://fieldclose.dramaforge.icu/. It uses fictional data, reserved example numbers, a deterministic fake provider, and durable database constraints that keep demo workspaces fake-only and live-disabled.

One separately authorized CALL-E attempt was completed during development. It reached the intended participant, but the retained structured result classified a forwarding announcement as terminal non-connection and left the three HVAC answers as not asked. FieldClose preserved the machine artifact, routed the case to human follow-up, and retained a dated operator correction rather than rewriting the result. The private redacted evidence also records one attempt, one provider creation, one human disposition, and no duplicate creation. We do not publish the private number, transcript, recording, provider identifier, or credentials.

How we built it

FieldClose uses Next.js 16, TypeScript, PostgreSQL, Drizzle ORM, Better Auth, and the official CALL-E server SDK. The browser can request an operation but cannot assert approval validity, provider state, live permission, calling-window compliance, or idempotency. Those decisions are recalculated server-side. The public deployment is separated from protected staging and is built without CALL-E credentials.

Challenges

The hardest problem was not placing a call; it was preserving authority and evidence around a real-world side effect. We designed for concurrent clicks, ambiguous provider creation, terminal polling, do-not-call handling, role-scoped workspaces, exact approval digests, and the possibility that a provider result can disagree with human observation.

Accomplishments

  • A complete case-to-human-disposition workflow with durable audit evidence.
  • A judge-accessible fake-only deployment that cannot place a phone call.
  • One authorized, redacted CALL-E integration run with a documented discrepancy and operator correction.
  • Stable attempt idempotency, concurrent duplicate protection, and ambiguous-creation reconciliation.
  • A reviewer-ready upstream contribution with green repository validation.

What we learned

Reliable voice automation depends on the control plane around the model: exact authorization, bounded scope, durable state, conservative interpretation, and a human who retains the final business decision. A completed provider task is evidence, not permission to close a job.

Known limitations

The current practitioner interview sample is zero, so we make no quantified claims about saved time, reduced cost, contractor adoption, or customer impact. The public experience is simulated. FieldClose does not yet integrate with an external field-service system, and the live evidence is intentionally private and redacted.

What's next

After the submission, the next step is consented practitioner research with HVAC office staff, followed by a narrow field-service-system integration and measured closeout-quality guardrails. Live calling will remain opt-in, workspace-scoped, and human-approved.

Links

Built With

Share this project:

Updates

Submission history