← All projects

Frontline / Live web demo

A maintenance report should never invent a repair.

A planned replacement is not a completed repair. An unreadable label is not a known specification. Frontline turns field evidence into a report while keeping those distinctions visible.

Python · FastHTML · HTMX · SQLite FTS5 · Groq

THE INPUT

Field notes, in their own words.

“Pi 4 gateway offline. Reseated the power cable; back online. Supply label is unreadable. Check the supply on the next visit.”

The source records a cable adjustment and a recovery. It does not establish that the power supply was replaced—or even what its rating is.

Self-authored example illustrating the report structure.

FRONTLINEExample report

Gateway inspection

COMPLETED

Reseated the power cable.

OBSERVED

Gateway back online.

UNKNOWN

Power supply rating.

Every claim has a source. Missing facts stay missing.

THE WORKFLOW

From evidence to a reviewable report.

  1. Collect the evidence. Add written notes, recordings, and equipment photos to a workspace.
  2. Find applicable guidance. Match manufacturer references to the equipment model and revision. Keep that guidance separate from recorded work.
  3. Draft with sources. Preserve unknowns and disagreements, attach source references, and separate completed actions from proposals.
  4. Review the result. Inspect the evidence beside the report and keep reviewer notes separate from generated findings.

ENGINEERING DECISIONS

The source matters as much as the sentence.

Evidence that stays put

A report keeps an immutable source snapshot. Later edits to the workspace do not silently change what an earlier report was based on.

Retrieval with boundaries

SQLite FTS5 and BM25 provide a small lexical index. Model, revision, and access checks decide which references are eligible before they reach the model.

Quality beyond valid JSON

Structural checks catch malformed fields and invalid source references. Separate trace review looks for invented work, unsupported quantities, and claims the cited passage does not support.

A demo that can be operated

Visitor workspaces are isolated, uploads and requests are bounded, and saved work survives process restarts. The public demo runs on alwaysdata with Groq inference.

EVALUATION

Make the failures inspectable.

The development corpus contains 20 synthetic cases. Reviewing paired outputs exposed errors such as moving proposed work into the completed-work section. Revised instructions improved assistant-reviewed passes from 12/20 to 18/20 on those same development examples.

Those are provisional assistant judgments on a small development set, not human-calibrated accuracy or a customer outcome. The source repository retains the comparisons and remaining failures.

Try a report with its sources attached.

Open the demo and choose an example, or bring your own notes.

Open Frontline ↗