Warddocs
Concepts

The decision envelope

Every POST /decide answer has the same top-level fields. Branch on decision; read result for the details of each capability.

Field Type Meaning
id string Decision id (dec_…). Use it for feedback, evidence and Ask
object "decision"
model string The release that answered, e.g. ward-1.4.6
components object Version of each part that ran (screening, statement_matrix, …)
type string The decision type
created integer Unix time
decision APPROVE | STEP_UP | DECLINE What to do
score number | null The capability's score (0–1)
score_kind string | null What the score is: calibrated, heuristic, name_similarity, kya, … See Scores
band string low / medium / high for statement, credit and merchant
signals string[] Codes of what fired, e.g. STM_PASS_THROUGH, EMAIL_DISPOSABLE
typologies string[] Typology ids the signals point to (fraud and AML catalogs)
needs object[] Fields not sent that would sharpen the answer, each with why
coverage object How much of the input Ward could read (sufficient, limited, insufficient)
subject object | null The customer's profile when subject_ref is known
session_id string | null Echo
result object The capability's full native answer
client_model object Your account's trained model, advisory (see Feedback)
policy_matches object[] Your own policies the case touches (cited, never applied)
review_sample boolean Marked for random review (selection-bias control)
context object The session meter: window_tokens, used_tokens, remaining_tokens, used_pct, balance_usd
latency_ms, timing number, object Total time and inference time

Reading result

Each capability page documents its result. Fields common to several:

  • checks: which lists ran and their status (checked, not_checked, failed). "No hits" with not_checked is not clear.
  • notes: assumptions Ward made (date order, currency, a column it guessed).
  • signals inside result: full objects with code, weight, detail and the rows they cite; the envelope's signals is the list of codes.

Stability

Field names are stable within a major version. New fields can appear at any time; ignore what you do not know. Pin model to a release to keep thresholds and weights fixed (see Models).