The row
- Ask does status still say approved
- Stamp alice, fingerprint abc123
- Why the field never moved
Topic · approvals current
Gist
Approvals current is whether a required approval still matches the authored shall. Proof runs proof audit --check approvals_current. A Slack "approved" on an old fingerprint is not that hop. Jama still authors.
proof audit --check approvals_current
Keep GitHub if it already owns the PR thread. Keep Jama if it already holds the shall. Neither one pins an approval to the current fingerprint in this repo.
01 · The approve-then-edit pattern
You can write shall A, get a review, edit A to A′, and keep status: approved if the hop never ran.
The check reads the active approval policy. Requirements that policy covers need a valid approval bound to the current authored fingerprint, not to a historical lifecycle field. If the shall changed after the stamp, the stored fingerprint is stale and the hop fails. Default is ERROR. There is no silent waiver. Whitespace still flips the fingerprint. That is the policy, not a bug.
The write is a different command. proof review req SYS-REQ-501 is the brief. It does not move status. See
requirement review.
A human records a fresh stamp with proof approve SYS-REQ-501 --role system_owner --comment "re-approved". GitHub still owns the PR comment thread. See
pull request review.
The silent case is an edit after approval with the old status left in place. The hop names the id and the stale fingerprint. Re-review, then approve again. Do not copy the old comment onto the new text. Do not delete the review block to hide the fail.
proof audit --check approvals_current --verbose
proof review req SYS-REQ-501
proof approve SYS-REQ-501 --role system_owner \
--comment "re-approved after description tightening"
Re-read the shall before you stamp. A comment that described A is not a comment on A′. Agents do not reuse a stale approval record after a semantic change.
02 · The exhibit
The shall was edited after Alice approved it. Click the tabs.
The row
This hop
No approvals_current JSON. The shall moved. The fingerprint did not.
No stampThe row
Keep the shall. Keep Alice. That is not this hop.
Keep the recordProof
Same SYS-REQ-501. A Slack current, or this hop. Click the tabs.
| Surface | What they do | What Proof does | What we lose |
|---|---|---|---|
| GitHub PR approval | A human clicks Approve on a diff. | Fail when a required shall’s fingerprint is stale. | We do not own the comment thread. See pull request review. |
proof review req |
The brief on one id: traces, witnesses, impact. | The review of approval fingerprints on VERIFY. | The brief does not move status. See requirement review. |
proof approve |
The write. Role, comment, new fingerprint. | The hop that fails the old fingerprint. | This hop does not write the stamp. Whitespace still flips it. |
| Jama | The authoring programme. Reviews if you put them there. | Fail a stale fingerprint in this repo. | Not Jama's V&V. Jama still authors. We have not run a frozen Jama pack. |
The teaching graph is still one shall next to its fingerprint. Run the check. Read the id. Re-read the shall, then approve again. Do not copy the old comment onto new text.
proof workflow check --stage spec --verbose
proof audit --check approvals_current --verbose
proof review req SYS-REQ-501
proof approve SYS-REQ-501 --role system_owner \
--comment "re-approved after description tightening"
The brief hop stays on requirement review. The PR hop stays on pull request review. Jama still authors. Proof vs Jama.
03 · The honest loss
A green approvals_current is current fingerprints on eligible rows. It is not a proof of the Go. Jama still authors.
If the policy covers no requirements, the hop can pass without reviewing a shall. That pass is empty, not reviewed. The hop does not write the approval. It does not call a model. It does not prove the Go. Whitespace still flips the fingerprint. There is no silent waiver. We have not scored this graph against a frozen Jama pack or GitHub’s review UI. The loss is named, not scored.
The brief hop stays on requirement review. The engagement stays on software correctness audit. Jama still authors.
04 · Nearby questions
What is approvals current? Same question. Same URL.
Is this a GitHub PR approval? No. GitHub still owns the comment thread. See pull request review.
Is this requirement review? No. That command is the brief. It does not move status. See requirement review.
Does a missing approval fail? Yes, when the active policy covers that requirement. Default is ERROR.
Can I waive a stale fingerprint silently? No. If the edit was whitespace, the fingerprint still flips.
Is Proof a Jama alternative for the shall? No. Jama still authors. Proof vs Jama.