Inspiration

A town wants to turn an old shop into housing. Before committing money, its environmental consultant needs to understand the property's history. Missing information can leave important investigation questions unanswered and make redevelopment costs and timing harder to plan.

Today, that work means searching records, finding people to interview, making calls, comparing notes, and following up when an answer is incomplete. SiteWitness brings those steps together around one question: what do we actually know, and what evidence is still missing?

What it does

SiteWitness is a case workspace for collecting and reviewing site-history testimony through CALL-E.

The fictional demonstration begins with source records, supplied contacts, and zero calls. A directory lists Sparkle Cleaners from 1987 through 1994, while the owner believes it was only a drop-off shop. Neither establishes whether cleaning happened onsite.

The two-call workflow shows how the next action depends on the evidence:

  • First call — Morgan Lee: Morgan reports firsthand knowledge only for 1992–1993. The reviewer checks the actual quotations and retains those two years. The other six years remain open.
  • Second call — Carol Chen: Carol states that she operated the shop from 1987 through 1994 and describes firsthand operations. Her actual date quotation can support the missing years after human review.
  • Review and decision: SiteWitness separates complete year coverage from the final decision. The reviewer checks the claims, completes outstanding work, and decides whether the specific historical-use question is resolved.

Each call requires a supplied number, recorded permission, and approval of its exact brief. The next brief includes the remaining years and questions. Contacts come from supplied records or respondent referrals; SiteWitness does not invent phone numbers or automatically dial the next person.

How it was built

The workspace uses React, TypeScript, Vinext, and Vite. Cloudflare D1-compatible SQLite storage persists cases, contact permissions, call attempts, quotations, review history, and follow-up tasks; the project also includes Drizzle schemas and migrations.

The server calls CALL-E's Calls API to submit an approved interview and retrieve status, transcript turns, and structured results. CALL-E conducts the conversation. SiteWitness organizes the evidence and follow-up. A human reviewer decides what the testimony supports.

A no-call rehearsal mode supports testing without an API key. Fresh investigations preserve previous demonstrations in history.

Challenges

The hardest part was keeping the meaning of an answer intact. A referral's expected dates are not established knowledge. A year mentioned as unknown should not count as evidence. Even a quotation match does not prove that a whole claim is a sound interpretation.

Another challenge was reliability: delayed analysis, page refreshes, repeated launch clicks, and repeated demonstrations must not create duplicate calls or mix evidence between cases. Saved attempts, explicit review, recovery controls, and regression tests address those cases.

Accomplishments

The demo connects incomplete testimony to a specific next interview, then makes the added evidence reviewable against the recorded words. It keeps call completion, evidence processing, year coverage, and the human decision separate.

The current implementation passes 69 automated tests, including the two-call completion flow, exact quotation checks, year-range parsing, case isolation, and duplicate-call protection. These tests use synthetic data and mocked calls; the submitted recording demonstrates the real CALL-E integration.

What was learned

A useful call does not always produce a complete answer. It may reveal a narrower question and identify the next source to pursue. Making that progress visible is as important as collecting the answer itself.

What's next

The next step is a supervised pilot with environmental consultants to measure time spent coordinating interviews, reviewing testimony, and pursuing missing information. Production work would add authentication, team permissions, retention controls, and reporting integrations.

SiteWitness is a demonstration MVP using fictional properties and witness roles. It collects factual testimony for professional review; it does not certify environmental safety or replace an environmental assessment.

Built With

Share this project:

Updates

Submission history