Skip to content

Diagnostics and context

Check the health of your setup and rebuild the project context snapshot.

Diagnostics is a status screen for the current directory. It tells you whether the local server is reachable, whether setup is complete, which provider is active, whether a project context snapshot exists, and when diagnostics last ran — all in one place. It also gives you a button to rebuild that snapshot when the repo has moved on. Reach for this screen when a review will not start, when results look stale, or when you just want to confirm everything is wired up. It assumes onboarding is done and the repository is trusted; until then the setup and provider rows will report what is still missing rather than show a clean bill of health. You open it from the settings hub.

Diagnostics screen

The screen is a single panel titled System Diagnostics with the subtitle Runtime health for this workspace. Its header carries a one-word overall state beside the Diagnostic Snapshot label: Checking while a refresh is in flight, Needs attention when the server or context is failing, Setup needed when provider, setup, or context prerequisites are missing, and Ready once things are in order.

The core of the screen is the diagnostic snapshot, a list of six rows:

RowWhat it reports
HealthThe local server connection: Checking... while it probes, Connected when reachable, or Error: with the message when it is not.
SetupWhether onboarding is complete: Ready when it is, Incomplete with the missing pieces listed, or Unavailable if the status could not be read.
ProviderThe active provider, with its model in parentheses when one is set, or Unavailable when no provider is configured.
ContextThe project context snapshot: Loading..., Ready, Missing, or Error: with the message, plus the generated timestamp when a snapshot exists.
BuildThe current web build mode (for example DEVELOPMENT or PRODUCTION).
RefreshedWhen the checks last ran, or Unavailable if they have not run this session.

The Setup row names what is still missing by field, drawn from a fixed set: secrets storage, provider, model, and trust. So an incomplete setup might read Incomplete (model, trust), which tells you exactly what to finish. Each of those is something you complete during onboarding or change later in settings.

Two actions sit below the list in a Diagnostics actions group. Refresh Diagnostics re-runs the checks and updates the Refreshed time; use it after you change a setting in another screen and want to confirm the result here. The second button rebuilds the project context and is covered next. If any check fails, the panel shows the error message in a callout at the bottom, surfacing the refresh, context, or server error in that order.

Refresh project context

Project context is a snapshot of your repository (its graph and summary) that Diffgazer builds so a review has structure to reason about beyond the raw diff. The Context row and the second button on this screen both reflect that snapshot's state, shown as Loading... while it is being fetched, Ready when a snapshot exists, Missing when there is none yet, or Error: with the message when it could not be loaded.

The button label follows that state. It reads Generate Context when no snapshot exists, Regenerate Context when one is already in place, and Regenerating... while the rebuild runs. The action is available when the Context row shows Ready or Missing, and it is held disabled while the row shows Loading... or Error:, or while either refresh is already running. Activating it rebuilds the snapshot from the current repository and sends a forced refresh to POST /api/review/context/refresh; when it succeeds, the snapshot status and its generated time update in place.

Regenerate context after the repository has changed in a way the snapshot would miss, such as pulling new commits, switching branches, or moving files around, so the next review reasons about the current state rather than an old picture. The review pipeline builds and uses this context as one of its phases; for where it fits in the run, see how it works.

Success:

Tip: If the Health row shows an error, the rest of the screen will not have much to report. The usual cause is that the diffgazer process in your terminal has stopped. Start it again, then use Refresh Diagnostics to re-check.

  • Settings — where Diagnostics opens from, and where you fix what it flags.
  • Onboarding — complete the provider, key, model, and trust that the Setup row checks.
  • How it works — where project context fits in the review pipeline.