Repository navigation
itos 8.0.0
itos 8.0.0
Cut by CI from the 240 commits since v7.5.0: 11 feats, 2 fixes and 7 breaking changes, where a breaking change makes a major release, a feat a minor one and a fix a patch. Every change: v7.5.0...v8.0.0
What changed
CI
- Cut v8.0.0 by removing the pre-release marker (
da7d98f)
Documentation
- Add p1-prepush-new-ref-base (
480411e) - Add p1-prepush-refuses-tag-moves (
af4ee4a) - Add p1-shim-push-named-refs (
e1d9dc7) - Close bug-105 (
a02a70c) - Move the testing tiers to v8.x, first after v8.0.0 (
0177697) - Add T-158 (
5c5ac6c) - Close slice-131 (
a1ebcc5)
Features
- Push named tags and branches with itos push --tag and --ref (
e716a0b)
Tests
- Add the steps of itos push --tag and --ref (
f6a7435) - Kill the surviving mutants of itos push and its --tag and --ref (
01a6028)
Documentation
- Edit p1-lint-leading-blank-hash-line (
19cc075) - Edit p1-draft-checks-before-minting (
dd22f4c) - Close slice-129 (
8f285f6) - Add p1-github-registry-pilot (
a573b56) - Edit p1-typed-items (
89c175d) - Close slice-130 (
b36fee3) - Add p2-pilot-mise (
8afe2b1) - Promote p1-push-tag-and-ref to slice-131 (
754cd49) - Specify slice-131, itos push --tag and --ref (
f4a7fdb) - Take slice-131 (
e66cf90)
Fixes
- Warn of answered questions naming a missing item, and rename promoted ideas in questions (
798276a)
Documentation
- Edit p1-guard-follows-cd (
dbd6cdc) - Edit p3-commit-long-text-footer (
636512a) - Add p1-steps-config-sets-nested (
db36b3e) - Add bug-105 (
928e17f) - Drop p1-promote-renames-asks (
cd5d8c6) - Specify bug-105, stale question links warn and promote renames them (
9304f5a) - Take bug-105 (
c66ca1c)
Features
- Refuse ledger layouts, questions and config values itos cannot use (
8d366ff)
Tests
- Add the steps slice-130's scenarios set up with (
4830dc4) - Kill the mutants slice-130's changed functions left alive (
3fbcd4e)
Documentation
- Put the nightly's changed sites and the stable push sample in v8's testing tiers (
911322d) - Add p2-stateful-pbt-registry (
38d0e9e) - Add p3-tla-id-counter (
5058848) - Add p3-evaluate-pstack (
705a6a5) - Edit p1-testing-tiers-guide (
eabd22b) - Ask q-61 (
0e2373f) - Add p2-adopt-go-template-itos (
113e7d6) - Drop 4 items (
26124ab) - Edit p1-wip-red-first (
1d16a64) - Answer q-61 (
3ba748f) - Record q-61 as decision 50, superseding ADR-0047 (
09bcb3a) - Edit p3-commit-long-text-footer (
e7f90b0) - Add p1-work-merge (
94438b5) - Add p1-typed-items (
297a6fd) - Edit p1-work-merge (
d8507e6) - Promote p1-ledger-layout-checks to slice-130 (
4c74635) - Drop p1-load-refuses-unusable-values, p1-asks-check, p1-ledger-id-default (
b8bbd04) - Specify slice-130, ledger layouts, questions and config values refused alike (
1e1dbed) - Take slice-130 (
2bd715c) - Fix slice-130's Givens to set up what they assert (
f30383d) - Extend the trace-each-Given lesson with slices 129 and 130 (
f6d8ab0) - Edit p1-wip-red-first (
41a44a8) - Point six questions at the items they were promoted to (
68a7fcb) - Add p1-promote-renames-asks (
dec1b9e)
Features
- Refuse in config check the values no tool can use (
b2adb2d)
Tests
- Add the steps slice 129's scenarios need (
7bf024d)
Documentation
- Add p1-shim-pathspec-sweeps (
52b91b7) - Add p1-help-cases-regenerate (
e08392d) - Add p1-corpus-dev-binary-version (
450c2e8) - Close slice-128 (
792e669) - Settle the v8 plan's staging line, ledger.id and Changes hook (
d7212ef) - Keep the local all-sites run in briefs until the nightly judges them (
9ff6285) - Promote p1-shell-not-empty to slice-129 (
c611035) - Drop 4 items (
1c3cf9c) - Specify slice-129, config check refuses values no tool can use (
ce312ed) - Take slice-129 (
bc79197) - Add p1-load-refuses-unusable-values (
460b4e7)
Features
- Refuse skipped hooks, sweeping stages and force-pushes (
96133c4)
Tests
- Add the steps of slice 128's shim and pre-push scenarios (
c843c55)
Documentation
- Edit p1-lint-leading-blank-hash-line (
cd0b95b) - Add p2-user-feedback-targets (
ca14ff4) - Promote p1-shim-refuses-hook-skipping to slice-128 (
9643618) - Specify slice-128, the gates refuse what skips them (
65d2779) - Close T-157 (
cc7db66) - Close bug-104 (
2dc07ba) - Answer q-59 (
72c61b6) - Ask q-60 (
1ae8437) - Add p1-nightly-judges-changed-sites (
38750b5) - Edit p1-testing-tiers-guide (
f9b6ba0) - Close slice-127 (
7282dd5) - Answer q-60 (
2a603cb) - Record q-59 and q-60 as decisions 48 and 49 (
77556cc) - Edit p1-decision-record-hook-lock (
b4a97d9) - Take slice-128 (
f8c2ef7)
Features
- Judge the item's own commits at work done (
f5e578a)
Tests
- Add the steps of slice 127's work done scenarios (
5047e0a)
CI
- Hold AGENTS.md to 11000 bytes (
23098ff)
Documentation
- Add T-157 (
39fb319) - Take T-157 (
32d5d62) - Cut AGENTS.md to what holds only in this repository (
9990ef7) - Promote p1-work-done-passes-own-closes to slice-127 (
1ad8877) - Specify slice-127, work done judges the item's own commits (
4911b36) - Take slice-127 (
92c3ef4)
Fixes
- Run itos init as the version the config pins (
7166fa0)
Tests
- Kill the four upgrade.go mutants that survive slice-126's range (
bde8303) - Hold binaryCommand to a run with no command and to git-shim's second word (
cc784a4)
Documentation
- Edit p1-push-proof-stable-site (
690c420) - Promote p1-upgrade-cli-survivors to T-156 (
6e322d4) - Write T-156's ledger entry (
271f681) - Take T-156 (
16f272f) - Close T-153 (
5c614f5) - Close T-154 (
3318b6c) - Close T-155 (
460137a) - Close T-156 (
d83d4cc) - Close slice-126 (
e15a8a9) - Add bug-104 (
d78516e) - Drop p1-init-agent-rules-runs-pin (
4d7ae5e) - Specify bug-104, init runs the pinned version (
871b151) - Give q-58 the user's final answer, a one-time harvest (
1674fb5) - Add p1-decision-answer-amends (
568d2d7) - Record q-58 as decision 47 (
15c3d2e) - Add p1-decision-record-hook-lock (
4a026f1) - Add p2-harvest-gitattributes (
5a9d183) - Add p2-harvest-pinned-actions (
17a82a2) - Add p2-harvest-engineering-rules (
a42cd73) - Add p2-harvest-lint (
c0c1174) - Ask q-59 (
e9a3833) - Take bug-104 (
4f0d7ab)
Features
- Hand itos upgrade to the newer release it moves to (
04ba2a9)
Refactoring
- Give launch.Main's exit code only when it hands the run on (
58d462f)
Tests
- Let the conformance runner take its native git with --git (
3537d34) - Expect the stealth rules file's OS path in TestRefreshedRules (
62965b8)
CI
- Hand the conformance runner its native git from previous-release (
fcec781)
Documentation
- Close slice-124 (
8719140) - Queue slice-124 (
876b4fc) - Close slice-125 (
07e85ad) - Queue slice-125 (
613611d) - Add T-153 (
f5c5863) - Take T-153 (
e60e7b4) - Promote p1-upgrade-refreshes-agent-block to slice-126 (
0aa45ba) - Specify slice-126, upgrade handed to the newer release (
33b33b4) - Take slice-126 (
f585700) - Add p1-init-agent-rules-runs-pin (
e412304) - Add p1-draft-checks-before-minting (
27e27f0) - Add p1-ci-run-help-proof-check (
921f97a) - Edit p1-ci-watch-failed-step (
55fea0c) - Put p1-init-agent-rules-runs-pin in the v8 plan (
af586ea) - Edit p1-work-done-passes-own-closes (
52ee944) - Ask q-58 (
ec31237) - Add p1-draft-decision-id (
9319bb2) - Add p1-upgrade-already-refreshes-block (
1c8dcef) - Answer q-58 (
c713abc) - Add T-154 (
fc7399d) - Edit p1-work-done-passes-own-closes (
3ee8f3f) - Add p1-check-paths-missing-path (
24a8a73) - Edit p1-check-paths-missing-path (
553c4cc) - Write T-154's Windows path with single backslashes (
76d94e2) - Take T-154 (
75d1ce5) - Add T-155 (
e32a4d2) - Take T-155 (
3efd508) - Add p1-upgrade-cli-survivors (
7756449)
Features
- Let a commit outside except_types reword a feature's description (
71418aa)
Tests
- Add the steps that change a feature's description, name or Background (
45a1721)
Documentation
- Add p1-push-proof-local-cost (
e1cb2e6) - Promote p1-moves-feature-description to slice-125 (
2cc7694) - Specify slice-125, a feature's description reworded outside feat and fix (
a52ed12) - Queue slice-125 (
1719165) - Take slice-125 (
ffbaef9) - Say a feature's description may be reworded outside feat and fix (
aa12dce)
Features
- Name itos init --agent-rules in status when the agent block is stale (
ec42242)
Documentation
- Close T-152 (
7a2e376) - Queue T-152 (
351c10b) - Add p1-corpus-runner-load-deadline (
50fa802) - Close slice-122 (
05ce942) - Queue slice-122 (
eecf563) - Promote p1-stale-agent-block-reported to slice-124 (
5133a57) - Specify slice-124, status naming a stale agent block (
cdef3a0) - Queue slice-124 (
9c368ca) - Take slice-124 (
c336aef)
Features
- Give an item in progress back to todo with itos work give-back (
1793851)
CI
- Judge only the changed lines in the push proof, with itos-cc v0.12.0 (
4a0cdb6)
Documentation
- Close slice-120 (
5386d3b) - Queue slice-120 (
e68fdf1) - Add the testing tiers to the v8 plan (
6fc17d1) - Edit p1-testing-tiers-guide (
bc9bf8b) - Edit p1-ci-e2e-workflow (
e2a7e17) - Brief the scenarios of both commands when a rule moves between them (
989524e) - Close slice-107 (
7cd47ed) - Queue slice-107 (
1fb01c1) - Promote p1-proof-changed-lines-any-test to T-152 (
3be6d55) - Specify T-152, the push proof over changed lines (
f411351) - Queue T-152 (
9d9803d) - Take T-152 (
b63f9a3) - Say the push proof judges the lines a push changes (
fe1503f) - Promote p1-work-give-back to slice-122 (
d480449) - Specify slice-122, giving an item in progress back to todo (
76dcf6b) - Queue slice-122 (
8e72ddf) - Take slice-122 (
d11886f)
Features
- Refuse the nightly step that runs the done tasks' checks (
59a483f)
Documentation
- Edit p1-upgrade-refreshes-agent-block (
bd93cd1) - Add p1-stale-agent-block-reported (
d5bad4a) - Edit p1-shim-refuses-hook-skipping (
d845417) - Drop p1-agent-rules-as-checks (
916dfe8) - Add p1-init-recommends-branch-protection (
0437bb5) - Add p3-evaluate-cupcake (
134b262) - Edit p1-trim-agents-md (
d28c27b) - Edit p1-proof-changed-lines-any-test (
1ba1f89) - Name the upgrade handoff and the merged refusals in the v8 plan (
98f70f8) - Resume slice-107 (
67d622c) - Queue slice-107 (
5d09b94) - Take slice-107 (
a5a4f6d)
Features
- Write a two-line block for agents in place of the commit policy (
5a1bb17)
Refactoring
- Move the module path to github.com/donvargax/itos/v8 (
1a2fb36)
Tests
- Add the step for a block an older itos wrote (
9262055) - Cover init's writes and the rules offer's every outcome (
c2309dd)
CI
Documentation
- Point this repository's notes at the guide's procedures (
f9a3425) - Add p1-guide-brief-handoff (
7c96ec4) - Add p1-corpus-stdout-lacks (
bc63038) - Close slice-119 (
dedacef) - Queue slice-119 (
53661c6) - Edit p1-drop-compat-code (
5cd7608) - Drop p1-v8-deprecation-sweep (
3f31b6c) - Drop p1-push-fits-foreground, p1-guide-brief-handoff (
010bead) - Plan v8, the lean agent context (
3965e1a) - Edit p1-notes-placement (
e7475b9) - Edit p1-agents-md-reduced (
433ce5a) - Add p1-work-give-back (
d75016c) - Add p1-moves-feature-description (
ca0d11e) - Edit p1-push-tag-and-ref (
901df6a) - Bundle three consumer reports into the v8 plan (
70d42da) - Add T-151 (
2725a8a) - Queue T-151 (
3617142) - Take T-151 (
8f9ad26) - Name the /v8 module path in ARCHITECTURE (
abfca91) - Add p1-module-move-commit (
778ce30) - Close T-151 (
84ac3c9) - Queue T-151 (
d0877a2) - Promote p1-agents-md-reduced to slice-120 (
ea5ec03) - Specify slice-120, the two-line agent rules block (
adcac61) - Add p1-upgrade-refreshes-agent-block (
de405ac) - Add p1-trim-agents-md (
62efb92) - Name the two-line block and its follow-ups in the v8 plan (
09cc54b) - Queue slice-120 (
77ebd10) - Take slice-120 (
b1044d6) - Write this repository's agent block as its itos now does (
7bca2b3) - Say what the agent block holds now in the readme and the map (
c62428d)
Upgrading
Commit these changes as your project's rules ask (the install script and the pin are build
commits, or whatever type your rules give itos.yaml and tools/bin/).
-
What the commits ask.
- Breaking, 5a1bb17
feat: write a two-line block for agents in place of the commit policy:AGENTS.md's itos block is two lines; itos guide commit prints the commit policy
- Breaking, 59a483f
feat: refuse the nightly step that runs the done tasks' checks:config check and ci refuse the nightly step { tasks: done }, which v8 removed
- Breaking, 04ba2a9
feat: hand itos upgrade to the newer release it moves to:itos upgrade by an older itos now fetches and runs the target release's own upgrade
- Breaking, 96133c4
feat: refuse skipped hooks, sweeping stages and force-pushes:itos refuses --no-verify, commit -a, git add -A via the shim and force-pushes
- Breaking, b2adb2d
feat: refuse in config check the values no tool can use:itos config check now exits 1 on values it accepted that no tool can use
- Breaking, 8d366ff
feat: refuse ledger layouts, questions and config values itos cannot use:every command refuses a config number .nan or .inf, an empty shell, a timeout of 0
- Breaking, e716a0b
feat: push named tags and branches with itos push --tag and --ref:a plain itos push no longer follows push.followTags: it pushes no tag; use --tag
EachUpgrading:footer since v7.5.0 (itos commit footers Upgrading v7.5.0 v8.0.0): - 5a1bb17
feat: write a two-line block for agents in place of the commit policy:Run itos init --agent-rules for the two-line block; trim your own text it repeats
- 59a483f
feat: refuse the nightly step that runs the done tasks' checks:Remove { tasks: done } from ci.nightly.steps; write each check to keep as a run: step
- 04ba2a9
feat: hand itos upgrade to the newer release it moves to:upgrade runs the target release's own steps; the itos on the PATH need not be current
- 7166fa0
fix: run itos init as the version the config pins:init in a pinned repo now runs the pinned itos; re-run init after upgrade for its block
- 96133c4
feat: refuse skipped hooks, sweeping stages and force-pushes:Scripts passing --no-verify, -a or git add -A through the shim: name paths, let hooks run
- b2adb2d
feat: refuse in config check the values no tool can use:Change each value itos config check now refuses (exit 1) as the problem's fix says
- 8d366ff
feat: refuse ledger layouts, questions and config values itos cannot use:run itos config check; fix each value, ledger layout or question it refuses
- e716a0b
feat: push named tags and branches with itos push --tag and --ref:Push release tags with itos push --tag ; a plain push no longer publishes tags
- Breaking, 5a1bb17
-
What it changes on purpose. The old scenarios and conformance cases the range's
Changes:footers name,
which a fix changes because they held the bug (T-071):- 5a1bb17
feat: write a two-line block for agents in place of the commit policy: @ID-INIT-26 - 5a1bb17
feat: write a two-line block for agents in place of the commit policy: @ID-INIT-29 - 5a1bb17
feat: write a two-line block for agents in place of the commit policy: @ID-INIT-30 - 5a1bb17
feat: write a two-line block for agents in place of the commit policy: @ID-INIT-32 - 5a1bb17
feat: write a two-line block for agents in place of the commit policy: @ID-INIT-34 - 5a1bb17
feat: write a two-line block for agents in place of the commit policy: @ID-INIT-36 - 5a1bb17
feat: write a two-line block for agents in place of the commit policy: init.yaml: with --agent-rules init writes the config's rules - 5a1bb17
feat: write a two-line block for agents in place of the commit policy: init.yaml: under --stealth, --agent-rules writes the rules in the git folder - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: @ID-NIGHTLY-01 - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: @ID-NIGHTLY-02 - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: @ID-NIGHTLY-03 - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: @ID-NIGHTLY-04 - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: ci-run.yaml: the nightly's tasks step runs the done tasks' checks - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: ci-run.yaml: a done task's failing check fails the nightly - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: config.yaml: a nightly step runs the done tasks' checks - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: config.yaml: a nightly tasks step takes only done - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: config.yaml: a tasks step belongs to the nightly - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: plans.yaml: the nightly's tasks step plans every check of the done tasks - 59a483f
feat: refuse the nightly step that runs the done tasks' checks: plans.yaml: with cost static, only their static checks - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-01 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-02 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-03 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-04 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-05 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-06 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-08 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-09 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-10 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-12 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-13 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-14 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-15 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-16 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-17 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-18 - 04ba2a9
feat: hand itos upgrade to the newer release it moves to: @ID-UPGRADECMD-19 - 96133c4
feat: refuse skipped hooks, sweeping stages and force-pushes: hooks.yaml: pre-push runs the whole command for a remote commit the clone lacks - 8d366ff
feat: refuse ledger layouts, questions and config values itos cannot use: @ID-CONFIG-45 @ID-CONFIG-49 @ID-CONFIG-50
- 5a1bb17
-
The config. Since v7.5.0 (
tools/bin/schema-contract, T-070):ci.nightly.steps[].tasks: values widened: any string is now accepted, not only ["done"]ci.steps[].tasks: values widened: any string is now accepted, not only ["done"]
-
Move the install script to 8.0.0. A project on the install script
(tools/bin/install-itos, v2.0.0's Upgrading, step 1) changes itsversion=line and each
platform's hash, from this release'schecksums.txt; the whole script, for a project that has
none yet:#!/bin/sh # tools/bin/install-itos: the pinned itos, into .tools/bin/ set -eu version=8.0.0 cd "$(git rev-parse --show-toplevel)" case "$(uname -s)-$(uname -m)" in Linux-x86_64) platform=linux-amd64 sum=35d99114a5deb2b011e95bec9ba10ee675de63a08eb85500a63eb47879df0b83 ;; Linux-aarch64 | Linux-arm64) platform=linux-arm64 sum=a3458573ebdd7009d51f79e8368c857d662dfeba36446d791c14cbad8ddc8521 ;; Darwin-x86_64) platform=darwin-amd64 sum=e15c2be8f0e8f0b62065fc5d1932d198ba34ea426532b746532cc6cbbc19b5f1 ;; Darwin-arm64) platform=darwin-arm64 sum=625ec307d73be79b520fe945a9f653fdd7cc43df0c2a1b9afe3e2ef7ef2c658b ;; MINGW*-x86_64 | MSYS*-x86_64) platform=windows-amd64 sum=a35bff883fd0b1fb65a7bf5d25e334742bb2231a05150322058e8e221c7f03cf ;; *) echo "install-itos: no itos archive for $(uname -s)-$(uname -m)" >&2 && exit 1 ;; esac case "$platform" in windows-*) archive="itos-$version-$platform.zip" bin=.tools/bin/itos.exe ;; *) archive="itos-$version-$platform.tar.gz" bin=.tools/bin/itos ;; esac # What was installed, so a call with nothing to do runs nothing. pin=".tools/bin/itos.pin" if [ -x "$bin" ] && [ "$(cat "$pin" 2>/dev/null)" = "$version $sum" ]; then exit 0; fi tmp=$(mktemp -d) trap 'rm -rf "$tmp"' EXIT curl -fsSL -o "$tmp/$archive" "https://github.com/donvargax/itos/releases/download/v$version/$archive" if command -v sha256sum >/dev/null; then check="sha256sum -c -"; else check="shasum -a 256 -c -"; fi (cd "$tmp" && echo "$sum $archive" | $check) mkdir -p .tools/bin case "$archive" in *.zip) unzip -o -q "$tmp/$archive" itos.exe -d .tools/bin ;; *) tar -xzf "$tmp/$archive" -C .tools/bin itos ;; esac echo "$version $sum" > "$pin" echo "install-itos: itos $version in $bin"
-
Or move the pin to 8.0.0. A repository that pins a release in
itos.yaml
(v2.1.0's Upgrading, step 2) changes its two lines;pin.checksumsis the SHA-256 of this
release'schecksums.txtitself, one hash for every platform:pin: version: 8.0.0 checksums: f127de8a96e9ee1614eab1f19bc86b23ae141b6dd33a357d81560d7381eb0b35
A CI step that installs itos by
go installmoves to
go install github.com/donvargax/itos/v8/cmd/itos@v8.0.0. -
Point the schema line at v8.0.0's. If
itos.yaml's first line names a release's
itos.schema.json, make it
# yaml-language-server: $schema=https://github.com/donvargax/itos/releases/download/v8.0.0/itos.schema.json. -
Check:
tools/bin/itos version(oritos versionin the repository, with a pin)
printsitos 8.0.0,tools/bin/itos version --checkexits 0 (widen a cap in
requiresthat 8.0.0 is past), andtools/bin/itos config checkpasses. To report a
problem itos causes, open an issue on donvargax/itos with the labelconsumer-report
(https://github.com/donvargax/itos/issues/new?template=consumer-report.yml).
The archives are attested by the workflow that built them:
gh attestation verify <archive> -R donvargax/itos checks one, and
sha256sum --ignore-missing -c checksums.txt checks the ones downloaded beside it.