Skip to content

The signature, provenance and zone tools' comments are shorter, with their reasons kept - #242

Merged
DevomB merged 1 commit into
mainfrom
comments-signature-tools
Oct 7, 2026
Merged

DevomB merged 1 commit into
mainfrom
comments-signature-tools

Conversation

@DevomB

@DevomB DevomB commented Oct 7, 2026

Copy link
Copy Markdown
Owner

The second part of the cleanup-held redo (#241 has the first). These are comments only, in tools/kryptik, tools/provenance-inventory.sh, tools/verify-signatures.sh and three tests: tools/tests/boot-success.sh, update-manifest-snapshot.sh and verify-signatures.sh.

How it was done. Cleanup-held's change was merged onto main. A changed region was kept only when every line on both sides is a comment or blank; a trailing comment counts only when the code before it is the same. Everything else went back to main: code, the user-facing messages and --help line ranges the held cut also rewrote, test labels, and every conflict. Then each kept cut was read by hand. Stripping comments from main's version and this one gives the same code in all six files; bash -n passes.

Changed from the held cut, to keep a reason it dropped:

  • tools/kryptik: why there is no transfer, clipboard or mount command (from zone 0 they would bypass the chrome's approval); that --ask passes the passphrase never as an argument; and that a Wi-Fi passphrase always goes on stdin.
  • tools/provenance-inventory.sh: why || true follows find and du (common.sh's ERR trap would abort); and why publisher-named classes are passed through (otherwise they would read as unverified).
  • tools/verify-signatures.sh:
    • The network-fetched GNU keyring vouches only for whoever it names until checked out of band.
    • A pinned key must be one its project publishes on its own origin.
    • Which CPython releases the python key signs.
    • netfilter's page naming its current key.
    • anchored_import's return codes, 1 and 2, which callers use.
    • The list of kernel.org-signed projects.

Taken where the held cut corrects a comment: the stale-note rule in verify-signatures.sh now says what the code does (a note for a source outside the manifest is not flagged), and the test's summary says nosig is unsigned, which its assertion checks.

Dropped:

  • tools/key-provenance.tsv: its header says what each confirmation route (korg, wkd, savannah, github) establishes and where it stops. The held summary loses those distinctions, and merged onto main's text it would say the rest twice.
  • tools/tests/provenance-inventory.sh: its only change conflicted.
  • Two blank lines.

Proof: CI (shellcheck, syntax, the fixture suites, and the Source manifest job that runs verify-signatures.sh). Nothing the image does changes.

…their reasons kept: cleanup-held's cut of tools/kryptik, tools/provenance-inventory.sh, tools/verify-signatures.sh and three of their tests, redone on main by hand, comments only

Only comment regions are taken from 65a6fbb; its message, help-range and test-label changes are left out. Where the cut dropped a reason, a shorter one is kept: kryptik has no transfer, clipboard or mount command because from zone 0 those would bypass the chrome, --ask passes the passphrase never as an argument, a Wi-Fi passphrase goes on stdin; the inventory's || true and its passthrough of publisher-named classes; the GNU keyring vouches only for whoever it names until checked out of band, a pinned key is one its project publishes on its own origin, which CPython releases the python key signs, netfilter's confirmation of its current key, anchored_import's return codes and kernel.org's signed projects. tools/key-provenance.tsv is left as it is: its header says what each confirmation route establishes and where it stops, which a summary loses.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant