Topic · obligation profile evidence complete

Obligation profile evidence complete

Gist

Obligation profile evidence complete is whether a class that proof.yaml maps to an evidence profile still has a passing result manifest on the requirement or a child that carries the class. A colon triple is not that floor. Proof runs proof audit --check obligation_profile_evidence_complete. Jama still authors.

proof audit --check obligation_profile_evidence_complete

Keep the suite if it already fails a broken fixture. Keep Jama if it already holds the shalls. Neither one asks whether the race profile still produced a passing result file.

01 · The silent triple

A colon annotation is not a sanitizer run.

Obligation evidence complete asks whether the class has a triple-form test. This hop asks whether the profile that proof.yaml bound to that class still has a passing result.

The check is obligation_profile_evidence_complete. It is language-agnostic. A profile can be ASan for C, a Go race run, a JS property-test adapter, or a project fixture. Proof only validates the common manifest shape and the join to the requirement. It does not run the analyzer.

Walk every STK, SYS, SW, INT requirement that still carries an obligation class. If project.evidence_profiles maps that class in required_for, the hop looks for a passing result on the requirement or on a child that still carries the class. A suppressed class is skipped. An empty evidence_profiles map is a silent pass: no evidence profiles configured. Severity of the hop itself is warning, not error.

proof audit --check obligation_profile_evidence_complete
# SYS-REQ-040 obligation_checklist: concurrent
# proof.yaml maps concurrent -> profile go-race
# command: race  result: proof/evidence/go-race.yaml
# test still has // SYS-REQ-040:concurrent:race
# result file missing
# warn: SYS-REQ-040 obligation concurrent profile go-race:
#       missing passing profile evidence on the requirement
#       or an obligation-carrying child
# silent triple: the annotation exists. the profile result does not

obligation_evidence_complete only asks whether the required evidence kinds exist as triples. This hop asks whether the mapped profile still produced a passing result. A covering SYS-REQ stays on obligation_completeness. A listed class with no accept stays on obligation_baseline. A listed class with no signal stays on obligation_enforcement_backed.

Inspect with proof evidence profiles. Run the configured project.commands.tests.<id> command that writes the listed result file. A fuzz profile with command: fuzz uses the opt-in project.commands.fuzz lane. Then proof evidence validate. proof evidence explain SYS-REQ-040 names which profiles apply, which command should produce them, and whether the current result is missing, failing, or passing. If the result failed because it found a real product issue, keep the requirement truthful: mark verification failing or accepted_risk, or set an explicit known-issue release disposition. Do not hide a failing profile with an unrelated suppress.

project:
  evidence_profiles:
    go-race:
      evidence_type: race
      command: race
      result: proof/evidence/go-race.yaml
      required_for: [concurrent]
  commands:
    tests:
      race: go test -race ./...

02 · The exhibit

Same SYS-REQ-040 / concurrent. Silent triple, or this hop.

One system requirement. One catalog class. The triple is in the test. The race result file is missing. Click the tabs.

The row

  • Ask does SYS-REQ-040 still carry concurrent
  • Stamp the shall is in Jama. the test has :concurrent:race. the result file is missing
  • Why a colon triple never asks whether the race profile still produced a passing result
Triple present

This hop

Nobody asked whether go-race still has a passing manifest. A colon annotation is not a sanitizer run. The finding kind is this hop.

Profile unread

The row

Keep the Jama shall. Keep the colon triple. That is not this hop.

Keep the record

Proof

  • Ask does concurrent still have a passing go-race result
  • Out SYS-REQ-040 concurrent profile go-race: missing passing profile evidence
Silent triple counted

Same SYS-REQ-040 / concurrent. Silent triple, or this hop. Click the tabs.

Surface What they do What Proof does What we lose
Jama cell A shall, and a note if you type it. A warning the audit can name next to the missing profile result. Not Jama's V&V. Jama still authors. We have not run a frozen Jama pack.
obligation_evidence_complete Whether required evidence kinds exist as colon triples. Whether the mapped profile still has a passing result file. Not the triple hop. See obligation evidence complete.
obligation_enforcement_backed Whether a listed class has a signal or any evidence. Whether that class's mapped profile still passed. Not whether a signal fired. Not the silent-no-op hop. See obligation enforcement backed.
obligation_completeness Whether each listed class has a covering SYS-REQ. Whether that SYS-REQ still has a passing profile result. Not whether a child covers it. Not the covering-child hop. See obligation completeness.
obligation_baseline Whether a tag-matched class was listed, suppressed, or delegated. Whether a mapped profile still passed. Not whether the class was listed. Not the silent-omission hop. See obligation baseline.
obligation_suppression_reviewer Whether an error-severity suppress still carries reviewed_by. Whether an unsuppressed mapped class still has a passing profile. Not the silent unsigned skip. See obligation suppression reviewer.

The teaching graph is still one concurrent class whose colon triple is present and whose race result file is missing. Write the result. Do not treat a Jama note as this hop. Do not treat a colon triple as a sanitizer run.

proof audit --check obligation_profile_evidence_complete --verbose
proof evidence profiles
proof evidence explain SYS-REQ-040
proof evidence validate

The triple hop stays on obligation evidence complete. The silent-no-op hop stays on obligation enforcement backed. The covering-child hop stays on obligation completeness. The silent-omission hop stays on obligation baseline. The silent-drop hop stays on obligation decomposition complete. The silent-pointer hop stays on obligation delegation resolves. The silent-placeholder hop stays on obligation suppression rationale. The silent unsigned skip stays on obligation suppression reviewer. Jama still authors. Proof vs Jama.

03 · The honest loss

Proof names a missing profile result. It does not run the command, and it does not prove the Go.

A quiet proof audit --check obligation_profile_evidence_complete can still mean nobody configured a profile. Jama still authors.

The hop does not write a result file. It does not run project.commands.tests for you. No configured profiles is a silent pass. Severity of the hop is warning, not fail. A failing result is accepted when verification is already failing or accepted_risk, or when release disposition is ship_with_known_issue or not_in_scope. A suppressed class is skipped. A profile with an empty requirements list applies to every requirement that carries the class. A scoped list that names a requirement with none of the required_for classes is a misconfiguration, not a pass. --skip-level L0 skips the hop. Opt-out is skip, never pass. The hop does not prove the Go. We have not scored this floor against a frozen Jama pack. The loss is named, not scored.

The child-file hop stays on requirements decomposition. The engagement stays on software correctness audit. Jama still authors.

04 · Nearby questions

What people type next.

What is obligation profile evidence complete? Same question. Same URL.

Is this obligation evidence complete? No. That hop is whether required evidence kinds exist as colon triples. This hop is whether a mapped profile still has a passing result file. See obligation evidence complete.

Is this obligation enforcement backed? No. That hop is whether a listed class has a signal or any evidence. This hop is the profile result. See obligation enforcement backed.

Is this obligation completeness? No. That hop is whether each listed class has a covering SYS-REQ. See obligation completeness.

Is this obligation baseline? No. That hop is whether a tag-matched class was listed, suppressed, or delegated. See obligation baseline.

Is this obligation decomposition complete? No. That hop is whether a listed class flowed to a satisfying child. See obligation decomposition complete.

Is this obligation delegation resolves? No. That hop is whether a named owner still carries the class. See obligation delegation resolves.

Is this obligation suppression rationale? No. That hop is whether the reason is still a sentence. See obligation suppression rationale.

Is this obligation suppression reviewer? No. That hop is whether an error-severity suppress still carries reviewed_by. A suppress skips this hop. See obligation suppression reviewer.

Does a green hop prove the sanitizer ran today? No. The hop reads the result file that is already on disk. It does not run the command. Stale files stay passing until you refresh them.

Is Proof a Jama alternative for the shall? No. Jama still authors. Proof vs Jama.