Overview
Where: the first item in the sidebar (#/). It is also where you land
after signing in, once setup is complete.
public/guide/overview.pngThe Overview answers one question: what did the crew do, and what needs me? Every number on it comes from your own workspace. Where there is no data, it says so rather than showing a plausible-looking placeholder.
What you see
Maturity (top right)
- If you have never run a gap analysis: a Run an audit to score it link.
- Otherwise: the tier badge (bronze, silver or gold) and score from your most recent completed gap analysis, a three-part bar (verified, credited, potential; see Maturity) and, once you have more than one run, a small trend line.
- A ▲ / ▼ N pts change appears only when the previous run was for the same Application. Two Applications are scored separately and are never compared with each other.
Finish setting up
While any step of Get set up is incomplete, a banner shows how many steps are done, with Resume setup and Dismiss. Dismissing hides it for the browser session only.
Needs your attention
A queue of cards, most urgent first: red, then amber, then green. Each card names a thing that is stuck, waiting or broken, and links to where you fix it.
| Card | Colour | What puts it there | Where it links |
|---|---|---|---|
| No runner is enrolled / no runner is checking in | Red, blocked | You have connected a service, but no runner is enrolled, or none has checked in recently. It sits on top because nothing that needs a run (analyses, proposals, fixes, gap analyses) can make progress until it’s fixed. You can still triage findings and review open PRs. | Runners |
| The latest proposal for a service failed | Red, failed | The newest proposal for that service ended in an error. A proposal the constitution denied lands here too: the card says which rule refused it. | The failed run |
| The latest analysis for a service failed | Red, failed | The newest analysis for that service ended in an error (for example, no LLM key, or the repo couldn’t be cloned). | The failed run |
| app is degraded (or similar) in the cluster | Red, failed | ArgoCD reports the app as unhealthy or out of sync. Only if the optional ArgoCD observer is on. | Applications |
| Fixes waiting on your approval | Amber, waiting | A Signals finding has a fix proposed and is waiting on you. | Signals |
| Findings not yet triaged | Amber, waiting | A Signals finding is still detected. | Signals |
| A pull request is ready for your review | Green, ready | An agent opened a PR that is not merged or closed yet. | The proposal |
| The latest analysis for this service is ready to promote | Green, ready | The newest analysis for a service finished and hasn’t been turned into a proposal. | The analysis |
Red means something is broken or refused; fix it first. Amber means a decision is waiting on you. Green means work is done and ready for you to review. At most three cards of each kind are shown.
How a card clears
There is no dismiss button. A card clears when the thing it describes is dealt with in the world:
| Card | It clears when… |
|---|---|
| Runner not checking in | A runner checks in again. |
| A failed proposal or analysis | A newer proposal (or analysis) runs for the same service. Fixing the cause and re-running is what clears it. |
| A degraded app | ArgoCD reports it healthy and synced. |
| Findings not yet triaged | You triage or dismiss them in Signals. |
| Fixes waiting on your approval | You merge the fix’s pull request (the finding moves to shipping), or dismiss the finding in Signals. |
| A pull request is ready | The PR is merged or closed on GitHub, for a PR on a GitHub platform repo connected through the TruStacks GitHub App (see below). |
| An analysis is ready to promote | You promote it, or a newer analysis runs for that service. |
An old PR you don’t want? Close it on GitHub; you don’t have to merge it. TruStacks checks open PRs about once a minute, and a PR closed without merging counts as dealt with, the same as a merged one. Its card is gone within about a minute.
This check reaches PRs on a GitHub platform repo connected through the TruStacks GitHub App, whose service still belongs to an Application. A PR anywhere else is never re-checked, so its card stays until the service has a newer proposal.
An empty queue reads Nothing is waiting on you. That is a statement about the queue, not a clean bill of health for your systems.
Policy in force
Below the queue: how often your rules refused a proposal over the recent window (shown in days on the card). For each rule that fired you see the rule id, how many times it fired, across how many proposals, its most recent message and which Applications it hit.
Two empty states are worded carefully, and the distinction matters:
- No proposal reached a policy decision in the last N days. Nothing was judged. This says nothing about whether your rules are being met.
- N proposals checked, none refused. Things were judged and passed. A rule that never fires is either perfectly observed or a poor fit for your stack, and it is worth knowing which.
What it means and why it exists
TruStacks is a governance product, so its home screen is about decisions: which of your standards actually bite, and which actions are waiting on a human. It deliberately does not show vanity counts (“12 analyses run”) or health percentages for systems it has not observed.
What to do here
- Work the attention queue from the top. A red No runner is checking in card means no new analysis, proposal or fix can run until you fix the runner; you can still triage findings and review open PRs meanwhile.
- When a PR is ready, open it, review it in your Git provider and merge it, or close it if you don’t want it. On a GitHub App-connected platform repo, for a service that still belongs to an Application, either clears the card within about a minute. TruStacks never merges for you.
- Read Policy in force weekly. A rule that denies often may point at a real gap in what the agents emit, or in what your stack declares.
How it connects
- Maturity header → Maturity and Gap analyses
- Attention cards → Runners, Applications and proposals, Signals
- Policy in force → Rules
Beta limits
- Only the denial-count card of the planned “policy in force” section is built. Cards for constitution status (did the signed bundle load), rules by origin and pack provenance are not built yet.
- The Run an audit to score it link opens the Compliance screen. To actually run a gap analysis, go to Gap analyses.
- Deploy-health cards appear only if you enabled the runner’s optional
ArgoCD observer (
observer.enabled=true; off by default). Without it, TruStacks cannot see your cluster and shows nothing rather than guessing.