Topic · Software problem report

What is a software problem report, and how do I keep the class closed in CI?

Gist

A software problem report is usually a ticket. Proof files a DEFECT after the fix and fails proof problem-report validate unless the whole class is closed, not one call site.

proof problem-report validate

Keep Jira if you need a live tracker. Keep a KnownIssue while the bug is still in the tree. Proof will not pretend a status field is class-closure. Jama still authors.

01 · The ticket is not the class

Closing the issue is not proving the failure mode cannot recur.

A reporter files steps. A developer patches one site. The sibling sites stay quiet. The ticket goes Done. The class is still open.

The live tracker for an unfixed failure is a KnownIssue. The recurrence question lives on why the same bugs come back after the fix. The crash the suite never asked for lives on a crash the whole suite missed. This page is the record you write after the product fix has landed: origin, root-cause flags, attached shall, regression net, sibling-site disposition.

The command is deterministic. It does not call a model. It does not file the Jira ticket. It refuses a closed stamp the graph cannot back up.

proof problem-report new --title "limit overflow on empty batch" --surface runtime_code --source-type incident --introduced-in unknown
proof problem-report validate
proof audit --check problem_reports_reviewed

The first command scaffolds proof/problem-reports/DEFECT-*.yaml. The second refuses class-closure without hardening. The third is the default-on audit check. Printing Done on the ticket after a one-site patch is how the class came back.

02 · The exhibit

Same overflow. A Done ticket, or this record.

The ticket still has the steps. SYS-REQ-010 never gained the obligation. Click the tabs.

Jira / bug report

  • Opened empty batch overflows limit.go
  • Status Done after the one-site patch
Ticket closed

This class

No shall. No obligation. No sibling-site walk. The next empty batch is still legal.

No class-closure

Jira / bug report

Still the ticket. Still a Done field.

Keep the tracker

Proof

  • Ask is the whole class closed
  • Out hardening_missing until SYS-REQ-010 + regression + siblings
Validate is not a proof of the Go

Same overflow. A Done ticket, or this record. Click the tabs.

What the record lists What Proof actually does What a green cell is not
Origin introduced_in is a commit, inception, or honest unknown Not a fake bisect. Empty origin is rejected.
Live unfixed bug Stop. File a KnownIssue. Do not open a DEFECT to park it Not Jira. Not a status field.
Class-closure covered_by_requirement needs shalls, evidence, reviewer, and a resolving hardening: block Not “we patched the one site.”
Root-cause flags missing_requirement, missing_test_partition, missing_mcdc_variable Not MC/DC on the function. Keep MC/DC for Go.
CI problem_reports_reviewed fails a closed stamp the graph cannot back up Not a signed V&V certificate. Jama still authors.

After the product fix has landed:

proof problem-report triage DEFECT-014
proof problem-report validate
proof known-issue list --defect-class regression

Triage fills owner and next action while status is still transitional. Validate is the honesty gate. The KnownIssue list is the live tracker you close once the DEFECT is honest. Do not invent a DEFECT whose only job is to point at an open KI.

We have not run Jira, a NASA SPR template, and Proof on the same frozen corpus, and we have not scored this record as a proof of the Go. The loss is named, not scored.

03 · The honest loss

A green validate is not a software problem report in the NASA SPR sense.

The command refuses a false class-closure. Proof will not pretend that YAML is a signed board pack.

Jira still owns the ticket, the workflow, and the Done field. A NASA SPR still wants a board template Proof does not print. A KnownIssue still tracks the live unfixed failure. Proof stores class-closure evidence in the repo and fails CI when the hardening block is missing. It does not independently prove the shalls are the right shalls. It does not execute the regression for you unless you bound one.

Proof is not Jira. It is not Bugzilla. It is not a Facebook “report a problem” form. Jama still authors the shall. VectorCAST or LDRA still win at a qualified C toolchain.

The recurrence question still lives on why the same bugs come back after the fix. The crash the suite never asked for still lives on a crash the whole suite missed.

04 · Nearby questions

What people type next.

How do I write a bug report? Atlassian and the how-to blogs still win that template. This page is class-closure after the fix. proof problem-report validate.

Is Proof an alternative to Jira? No. Keep the ticket. Proof stores the DEFECT in the repo. Jama still authors.

What if the bug is still unfixed? Do not open a DEFECT. File a KnownIssue. proof known-issue new.

What is a software problem report in NASA terms? An SPR is a board artifact. Proof does not print that pack. The record here is class-closure evidence that re-runs in CI.

Why do the same bugs come back after the fix? That H1 lives on why the same bugs come back after the fix.

How do I find the crash the suite missed? That H1 lives on a crash the whole suite missed.