Skip to content

ump_spec.models.evidence

module ump-spec

Evidence cards (spec §17, §19 /evidence-card) and acceptance reports (§14).

class

class EvidenceCard(ArtifactDoc)

Fields

NameTypeDefaultDescription
subject_idstrArtifact the card summarises.
subject_kindstr | NoneNone
client_idstr | NoneNone
titlestr
summarystrPlain-words summary; every number in it appears in headline.
headlinelist[ShownNumber]list()
trust_levelint2
audit_levelLiteral[1, 2, 3, 4]2
lineagelist[str]list()Upstream artifact ids.
gate_resultslist[GateResult]list()
fallbackslist[FallbackEntry]list()
noteslist[Note]list()
session_idstr | NoneNoneOnboarding session that produced the card. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
dataset_refstr | NoneNoneDataset the card is about. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
checklistlist[Any] | NoneNoneOnboarding checklist items. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
contract_summarydict[str, Any] | NoneNoneContract terms in brief. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
first_modeldict[str, Any] | NoneNoneRecommended first model and why. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
first_testslist[Any] | NoneNoneRanked first tests. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
materialitydict[str, Any] | NoneNoneMateriality tier with reasons, inputs and proposed thresholds (G-MAT-01). Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
materiality_tierstr | NoneNoneMateriality tier. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
maturitydict[str, Any] | NoneNoneSpec §25.5 maturity at the time of the card. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
sidedict[str, Any] | NoneNoneEngine side-run summary. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
resultdict[str, Any] | NoneNoneEngine result summary. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
model_idstr | NoneNoneModel the card is about. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
anchordict[str, Any] | NoneNoneMEI anchor summary (experiments mei_anchor.py). Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
assumptionslist[Any] | NoneNoneAssumed values, each labelled. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
attach_onlybool | NoneNoneTrue when the evidence is attach-only (R6, Tier C). Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
sentlist[Any] | NoneNoneTest results sent to the anchor. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).
skippedlist[Any] | NoneNoneTest results skipped, with reasons. Written by onboarding (wizard.py, plan.py), governance, planner and experiments (mei_anchor.py).

Source: packages/ump-spec/src/ump_spec/models/evidence.py, line 16

class

class AcceptanceMetric(StrictModel)

Fields

NameTypeDefaultDescription
namestr
valuefloat | None
thresholdProposed
comparatorLiteral['lt', 'le', 'gt', 'ge', 'abs_le']'le'
passedbool | NoneNone
Methods and properties (1)

evaluate method

def evaluate(self) -> AcceptanceMetric

Source: packages/ump-spec/src/ump_spec/models/evidence.py, line 100

class

class AcceptanceLayer(StrictModel)

Fields

NameTypeDefaultDescription
nameLiteral['computation', 'identification', 'decisions']
statusLiteral['untested', 'passed', 'failed']'untested'
metricslist[AcceptanceMetric]list()
detailstr''
Methods and properties (1)

evaluate method

def evaluate(self) -> AcceptanceLayer

Source: packages/ump-spec/src/ump_spec/models/evidence.py, line 117

class

class ControlOutcome(StrictModel)

Fields

NameTypeDefaultDescription
enginestr
model_idstr | NoneNone
expectedLiteral['pass', 'fail']
observedLiteral['pass', 'fail', 'untested']'untested'
Methods and properties (1)

as_expected property

as_expected: bool

Source: packages/ump-spec/src/ump_spec/models/evidence.py, line 132

class

class AcceptanceReport(ArtifactDoc)

Fields

NameTypeDefaultDescription
model_idstr | NoneNone
capability_idstr | NoneNone
enginestr
familystr'media_mix'
preregistrationdict[str, Any]dict()
layerslist[AcceptanceLayer]list()
null_batterydict[str, Any]dict()
negative_controlControlOutcome | NoneNone
positive_controlControlOutcome | NoneNone
roleLiteral['candidate', 'negative_control', 'positive_control']'candidate'
statusLiteral['untested', 'passed', 'failed']'untested'
bar_brokenboolFalseTrue if the bar passes MTM or fails the positive control.
noteslist[Note]list()
threshold_set_versionstr | NoneNone§14: the threshold-set version the bar was tested against, e.g. thresholds/0.1.0.
regrade_bydate | NoneNone§14: re-run due by this date after a mark binds or changes (90 days, proposed).
detailsdict[str, Any] | NoneNonePer-layer detail of the acceptance run. Written by models (acceptance.py) and Newton’s seed.
engine_adapterstr | NoneNoneAdapter that ran the battery. Written by models (acceptance.py) and Newton’s seed.
stubbool | NoneNoneTrue when a stub engine produced the report. Written by models (acceptance.py) and Newton’s seed.
seed_tagstr | NoneNoneSeed label (Newton seed data). Written by models (acceptance.py) and Newton’s seed.
Methods and properties (1)

evaluate method

def evaluate(self) -> AcceptanceReport

Status: failed if any layer failed; passed if all three passed; else untested. Untested is usable with reduced trust; failed is excluded (G-ACC-01).

A candidate passes only against a working bar (spec §14: the suite MUST include the MTM negative control). If the control was not run, did not fail, or the bar is broken, a three-layer pass is held at untested with a note; the layer results are kept.

Source: packages/ump-spec/src/ump_spec/models/evidence.py, line 143

class

class AgentEvalReport(ArtifactDoc)

§17 agent evaluation harness run (G-NEW-03 release gate) for one agent version.

evaluate() sets each measure’s passed and the overall status: failed if any measured value misses its (proposed) mark, passed only when all six measures were run and pass, untested otherwise. G-NEW-03 reads this report: anything but passed holds the version (AGENT_VERSION_HELD).

Fields

NameTypeDefaultDescription
agentstrAgent principal, e.g. agent:newton-actor.
agent_versionstr
playbook_versionstr | NoneNone
tool_server_versionstr | NoneNone
golden_setdict[str, Any]dict(){id, n_questions, held_out_share}; held-out third never shared.
measureslist[AcceptanceMetric]_harness_measures()
statusLiteral['untested', 'passed', 'failed']'untested'
previous_passing_versionstr | NoneNoneVersion that stays live if this one is held.
run_idslist[str]list()
noteslist[Note]list()
Methods and properties (1)

evaluate method

def evaluate(self) -> AgentEvalReport

Source: packages/ump-spec/src/ump_spec/models/evidence.py, line 235

NameTypeValueDescription
HARNESS_MEASUREStuple[str, ...]('exact_answer_accuracy', 'citation_validity', 'citation_precision', 'honest_...The six §17 harness measures (injection resistance split into write/run successes and exfiltrations).