Skip to content

Qualification

Nexus

Qualification

How Nexus argues itself into or out of contacting an account, and what the decision record contains.

/docs/nexus/qualification08 / 20

Qualification is the decision at the centre of the system: should this company be contacted, now, and on what grounds. Nexus does not answer it with a threshold on a score. It argues the case, argues against it, and commits to whatever survives.

What qualification decides#

Each run produces one decision record, and that record answers four things at once.

  • Whether — the disposition: qualified, held or rejected.
  • When — a contact-by date derived from the estimated window length, not from a queue position.
  • How much — the tier, which allocates effort.
  • On what grounds — the evidence records the verdict rests on, and the argument that got there.

The fourth is the one that makes the other three reviewable. A verdict you cannot inspect is a number you have to trust; a verdict with its argument attached is a claim you can disagree with specifically.

The deliberation#

Before committing, the engine runs an adversarial pass over its own proposal. This is not a second model rating the first one’s output — it is a structured attempt to break the case, using the same evidence store, and it changes the verdict often enough to be worth the cost.

Deliberation3 turnsqualified

Qualify Northwind Freight for outreach this week?

  1. ProposeQualifier

    Two families fired inside one quarter: a first Head of Operations role and a second depot now listed as operational. That satisfies ownership and load.

  2. ChallengeAdversary

    The depot page is undated, so the operational date is inferred rather than stated. If the depot opened in Q1, the two signals are not inside one window and the stack collapses.

  3. ReviseArbiter

    Planning consent is dated May, which bounds the opening to after that. The stack holds, but the expansion record drops from strong to moderate and confidence comes down accordingly.

VerdictQualified — B tier, contact within 14 days
76%
  1. ProposeA qualifier states the case from the evidence.
  2. ChallengeAn adversary attacks the weakest link in it.
  3. ReviseThe case is rewritten, or dropped.

Read the challenge turn first. It is where you find out what the system nearly got wrong, and it is usually a better guide to whether you can trust the verdict than the confidence number is.

The three moves#

MoveRoleConstraint
ProposeStates the strongest case for acting, from the evidence available.May only cite records already in the store. It cannot go and find support for a conclusion it prefers.
ChallengeAttacks the proposal: the weakest record, the missing date, the alternative reading.Must attack a specific record or inference. A general objection is not a challenge and is discarded.
ReviseReconciles the two and commits, or declines to.Must state what changed. If nothing changed, the challenge is recorded as unsuccessful and the proposal stands as written.

Dispositions#

DispositionMeansWhat happens next
QualifiedThe case survived the challenge and a window is open.Assigned a tier and a contact-by date; enters campaign selection.
HeldThe case is plausible but something is missing or blocking.A revisit date is set, with the condition that would change the answer written down.
RejectedThe challenge succeeded, or an exclusion applies.Moves to D tier with the reason attached; the reason is a candidate ICP constraint.

Held is the most useful of the three and the one most systems lack. It records a specific unmet condition — “no evidence anyone owns dispatch”, “incumbent contract, renewal unknown” — so that when the missing evidence arrives, the account is re-opened automatically rather than re-discovered by luck.

Confidence thresholds and autonomy#

Confidence is how much the engine trusts its own verdict after the challenge. It is used for exactly one thing: deciding whether a human has to look before anything is sent.

BandDefault behaviourChange it when
Below 60Held. Never sent, regardless of settings.Never. This floor is not configurable.
60–79Drafted and queued for human approval.You have reviewed enough drafts in this band to trust them.
80 and aboveSent without approval, once the autonomy threshold is enabled.Start with autonomy off entirely for the first two weeks.
Set in Settings → Arvyn Intelligence. A-tier accounts always require approval.

Reading a decision record#

Every decision is retrievable by locator, in the console and over the API. The record is immutable: a re-qualification produces a new record that supersedes it, so the reasoning behind a message you sent last month is still exactly what it was when you sent it.

GET /v1/decisions/DEC-4417
{
  "id": "DEC-4417",
  "account_id": "ACC-19022",
  "disposition": "qualified",
  "tier": "B",
  "confidence": 76,
  "contact_by": "2026-08-07",
  "window": { "state": "open", "estimated_close": "2026-10-22" },
  "evidence": ["EV-2291", "EV-2308", "EV-2317"],
  "deliberation": {
    "turns": 3,
    "challenge_succeeded": true,
    "changed": ["EV-2308 strength: strong -> moderate", "confidence: 84 -> 76"]
  },
  "supersedes": "DEC-4102",
  "created_at": "2026-07-24T06:02:11Z"
}

The changed array is the audit trail of the argument. If you ever want to know whether the adversarial pass is earning its cost in your workspace, that field across a few hundred decisions is the answer.

Next: scoring — what the numbers in that record are made of.