Skip to main content

How Vesanor Works

This page explains the core concepts behind Vesanor. Read this before diving into the technical docs — it gives you the mental model that makes everything else click.


The product loop

The primary Vesanor workflow is:

  1. Capture runtime behavior through replay()
  2. Review the workspace draft in Governance Studio
  3. Approve the current runtime artifact
  4. Enforce by environment at runtime
  5. Operate with Runs and References

That is the main product story. You do not need to hand-author local YAML packs to use it.


Fingerprints

Every test result gets a fingerprint — an 8-character hash that uniquely identifies the outcome. Same input + same output = same fingerprint.

Why this matters:

  • Regression detection — if a fingerprint changes, the model's behavior changed
  • Deduplication — identical failures across runs produce the same fingerprint, so you count unique issues instead of total noise
  • Trend tracking — the dashboard shows fingerprint history so you can see when issues appear and disappear

Fingerprints are computed on redacted data (after SecurityGate removes any secrets), so they're safe to display and compare.


The capture-review-approve-enforce loop

This is the current Studio-first workflow:

1. Capture

Run your agent through replay() with an API key so Vesanor can build the current governance view for that workspace.

2. Review

Open Governance Studio and review:

  • the workspace draft
  • open judgments
  • impact preview
  • approval preview

3. Approve

Approve the workspace so Vesanor freezes the current runtime artifact for that environment.

4. Enforce

After approval, replay() applies environment-based runtime behavior from the approved artifact.

5. Operate

Use the operational surfaces to inspect what changed:

  • Runs
  • References / baselines
  • conformance and drift findings

Baselines and drift detection

A baseline (reference) is your known-good standard. It's built automatically from successful runs.

The lifecycle

CANDIDATE → ACTIVE → STALE → RETIRED
  1. CANDIDATE — a new configuration starts collecting runs. After 7 successful runs with the same configuration in a 10-day window, it auto-promotes.
  2. ACTIVE — the trusted reference. Every new run is compared against it. Regressions are flagged and can block merges.
  3. STALE — drift detected (the model's behavior shifted since the baseline was established). Comparisons become advisory.
  4. RETIRED — superseded by a newer baseline.

Baseline key

Each unique combination of six fields produces a distinct baseline:

FieldWhat changes it
Contract hashYou update your contracts
ProviderYou switch from OpenAI to Anthropic
Model IDYou upgrade from gpt-4o-mini to gpt-4o
Runner versionVesanor ships an update
Environment hashYour environment changes
Normalization profileYou change response normalization settings

Change any of these and a new CANDIDATE starts. The old baseline stays in its current state.


Failure classification

When a contract fails, Vesanor classifies why:

ClassificationWhat happened
tool_not_invokedModel returned text instead of calling a tool
wrong_toolModel called a different tool than expected
schema_violationArguments don't match the expected schema
malformed_argumentsTool arguments aren't valid JSON
path_not_foundAn assertion path doesn't exist in the response
unexpected_errorProvider returned an error

Each failure also gets a fingerprint. If the same failure recurs across runs, the fingerprint stays the same — making it easy to track recurring vs. new issues.


Runtime workflow governance with replay()

replay() catches violations at runtime before the tool executes.

The enforcement pipeline runs on every LLM call:

  1. Narrow — remove tools the model shouldn't see in the current workflow phase
  2. Pre-check — enforce session limits (cost, call count, loops)
  3. Validate — check invariants, preconditions, forbidden tools, phase transitions
  4. Gate — block or strip illegal tool calls from the response
  5. Finalize — update session state, advance phase, record evidence

Protection levels

LevelWhat it doesWhen to use
MonitorObserves and captures, no blockingInitial rollout, building confidence
ProtectEnforces contracts locally, blocks violationsProduction agents without server dependency
GovernAdds durable server-backed state and stronger evidence on wrapped pathsShared sessions, approvals, stricter operational controls

For the primary public path, start with zero-config governance and Governance Studio.


Provider abstraction

Vesanor normalizes provider differences so the runtime model stays consistent across supported providers.


The dashboard

The primary browser entry is Governance Studio. /dashboard redirects to /dashboard/studio, where you review workspaces, judgments, impact previews, approvals, and conformance findings.

The rest of the dashboard at app.vesanor.com provides secondary operational surfaces:

SurfaceWhat it shows
Governance StudioWorkspace list, Atlas/Control/Focus workbench, judgments, impact preview, approval, conformance
ContractsStructured contract state already present in the tenant model
GuardValidation coverage — how many tool calls are being checked and what's failing
ChangesSemantic diffs — what changed across contracts, runs, and baselines
ReferencesBaseline lifecycle — trust posture, promotion status, drift alerts
RunsFull run history with filtering, search, and drilldown

Next steps

Now that you understand the concepts: