Atlas runs, coverage & freshness

A run generates or updates the docs for one source. Trigger a full run from a source; Atlas does the rest and publishes into the space.

The pipeline

A run moves through these stages:

  1. Acquire — clone or fetch the source at a pinned ref.
  2. Analyze — enumerate files, extract the surface inventory, chunk code with line ranges, embed chunks, and build the retrieval index.
  3. Plan pages — decide what pages to write, seeded by the surface inventory so must-cover items are guaranteed a home.
  4. Draft — write each page, grounded in the embedded chunks and cited to the source.
  5. Refine — multi-pass critique and expansion of the drafts.
  6. Validate — audit coverage (surface items mentioned vs. total), citations (file:line links that resolve), and diagram structure.
  7. Repair — regenerate any coverage gaps; loops until the must-cover threshold is met or the per-run budget is exhausted.
  8. Publish — write the finished pages into the space.

Full and delta runs

Every manually triggered run is a full run: it re-ingests the entire source from scratch.

When auto-update is on, Atlas instead runs a delta: it compares the current source to the last run's ref — for git, a commit diff via git diff; for Jira, issues updated since the last stored timestamp — and rebuilds only the affected pages. The rest stay intact. You can see the run kind (full or delta) in the run list.

[!NOTE] Triggering a run manually always starts a full run, even if the source isn't stale. Use this to force a complete regeneration.

The run queue

[!NOTE] Atlas runs one at a time by default — a single global queue — so generation never overwhelms the shared AI that also powers Ask and research.

Resilience

A transient failure on a single page does not fail the whole run — that page is either dropped to a coverage gap or its prior draft is kept. A run only fails if everything fails.

Coverage

Each run reports how much of the source's surface is documented. The report includes:

Metric Meaning
Coverage Fraction of all surface items mentioned somewhere in the docs.
Must-cover The critical subset: entry points, HTTP routes, CLI flags, environment variables, and data models. Atlas aims to keep this at 100%.
Citations Count of source-linked claims in the generated pages.
Diagrams Mermaid diagrams generated, with a count of those that passed structural validation.

Atlas writes deterministic reference pages that enumerate the surface with links — e.g. "Components & Exported Types", "API & Routes", "Entry Points, Flags & Environment" — alongside narrative topic pages.

[!TIP] Each source's root folder page is a coverage overview: run stats, coverage numbers, a surface inventory, and the full page list. Start there after a run finishes.

Run statistics

After a run finishes, the overview page and the run panel show:

Stat What it is
Files Number of files ingested from the source.
Surface Number of surface items found and tracked (the spine).
Chunks Code/text chunks embedded for retrieval.
Pages Wiki pages generated or updated.
Duration Wall-clock time for the full pipeline.
Model The chat and embed model names used.
Tokens Prompt, completion, and embed token counts.
Cost Estimated USD cost — only shown when the LLM connection has per-token pricing configured (0 for local/free endpoints).

Citations

Every significant claim links to its source:

Freshness & staleness

Atlas re-checks every source about every 15 minutes, whether or not the project auto-updates. The check is cheap — no full re-ingest:

If anything changed, the source is marked "Stale". A project with auto-update on then gives its stale sources a delta run on its cadence; unchanged sources are skipped entirely. A manual project stays marked stale until you run it.

When a source can't be reached

If the check fails outright — the repository was deleted or renamed, or the credential expired — the source is marked "Unreachable" and the card shows the exact error the check got back (repository not found, could not read Password for github.com, …).

Unreachable is shown ahead of Stale and ahead of the last run's status: a run that succeeded weeks ago says nothing about a source that has since disappeared. The project reads Unreachable on the Atlas home for as long as any of its sources are, and its source count says how many.

It clears itself on the next successful check — about 15 minutes after you fix the cause:

Via MCP

Agents can list projects, trigger runs, and poll status using three Atlas MCP tools:

Tool What it does
atlas_list_projects List the projects the caller can see (personal + org).
atlas_run Trigger a full run for a project (requires manage access). Returns one run ID per source.
atlas_run_status Read a run's current status, stage, coverage metrics, and run statistics.

See [[Agents & MCP]] for how to connect an agent to tela.

Related