Integrity manifest
Generated by tools/make-manifest.py. Do not edit by hand.
| Set digest (SHA-256) | d5a29d2128df8212b7b574da7a53bfdfff2ad5d4a71143ce7910e492bfeb3325 |
| Files covered | 62 |
| Total size | 355.2 KiB |
| Scheme | silent-failure-catalog/manifest/v1 |
The set digest is SHA-256 over the domain-separation string, then one
<path>\0<sha256>\n record per file, in ascending path order. Recompute it from
any checkout with python tools/make-manifest.py --check.
What this proves, and what it does not
Proves: the bytes you hold match the bytes recorded here. It detects a truncated download, a partial checkout, or an edit that was not regenerated into this file.
Does not prove: authorship, or that the content was ever correct. A manifest ships beside the content it describes, so anyone who changes the content can regenerate it. It anchors a citation; it does not attest authorship.
Files not covered
INTEGRITY.md and manifest.sha256 cannot describe themselves — a file whose hash
appears inside itself is unsatisfiable. They are excluded, and that exclusion is
listed here rather than left implicit.
Directories excluded as non-content: .git, .mypy_cache, .pytest_cache, .ruff_cache, __pycache__.
Archival note
- Archived at Zenodo: DOI 10.5281/zenodo.23051638 (concept 10.5281/zenodo.23051637), version 0.1.0, 2026-09-30.
- Canonical pin for citations: immutable release tag
v0.1.0(see README); verify you hold the exact bytes withpython tools/make-manifest.py --check. Do not cite a raw commit hash — the tag is the stable reference. - This catalog is the verifier-side challenge reference for FG-TIDA themes #6 / #7 and use-cases PR #23.
Per-file digests
| SHA-256 | Path |
|---|---|
3cc5351518b8af86165bd2c184a1cba7bb44fc1e892a09ce57656f787ff5f60c |
.gitattributes |
4ac0cdb082b4fa6134f342503289eec6fb53e3e7d37489fe14f7761b48d4d6f4 |
.githooks/pre-commit |
85097430249598cbf13ad960b1de0905195c67de501014131485d63dd82e39d7 |
.github/ISSUE_TEMPLATE/config.yml |
b7a6c2418a2ec27e8a6e9914bb886cbe8a995aa90e2caac14fd8ef5a66e2edc2 |
.github/ISSUE_TEMPLATE/false-positive.yml |
72a69403a8f40d4a9649eb862dff4e6719f222b83077b1219eb9dba030b2f40b |
.github/ISSUE_TEMPLATE/new-failure-mode.yml |
3ce0070fba59ca902b21e72233be68d9773ec5243392cf5b14df1c6df627a820 |
.github/PULL_REQUEST_TEMPLATE.md |
8e323aad46d32078d57dfcadca571887ace7099461b5e78d68cc86d37436f339 |
.github/workflows/gates.yml |
f1ab3d12ff12f018fcdd5d68bb952c2f39f4bf02e8236b2bd357977ecd785279 |
.github/workflows/zenodo-deposit.yml |
5530fceaccd8349a86c669916d613a5165e4fb519e92f3ac99f12fd9725950fe |
.gitignore |
81849639160019a213feb406dab3d31a4369becfb5ea6962c84780d1f2084667 |
.zenodo.json |
de8c36edf2dfc30e7ddacee1f885c22a2414a224f0889870404bc8c3296defec |
AGENTS.md |
40a0154341784280382fec016331183b54e2694030a1570ff291c71f4d3cefe7 |
CHANGELOG.md |
07efe7dd9437b75ed220f30d7c745ab9dc510bcf3f9c51b37ed92e11dc8887d9 |
CITATION.cff |
82d403885783e8599c8e93f5630536760c052dedd35f4adc38f789c50eefd841 |
CODE_OF_CONDUCT.md |
5104b231b43761f5e2eca0c26ffdf7438ca62a880623357f120b389bf00c28b2 |
CONTRIBUTING.md |
b7931d5533af31e8be2ddca97c6aad20c06f176b548532ffe6500d6857f85a67 |
LICENSE |
e4e71933da06fe2dab14a7a6e8d6c3949b8cff3f48bd777556f561eff78d873f |
LICENSE-CONTENT |
7ab9c95f0aa291b9564da4e6d7754cbcb47ebc1b99f64103ee9da6d3860a7d31 |
README.md |
3434f0322b0c91f936d8c8d8db5238adefd594841871e36ca088742ba1f065b7 |
REVIEW.md |
4665bffd7c6f2a47d3f916230cea522f46286f7c7f94fbe73ca35fb45d34bbbe |
SECURITY.md |
8cad18e91354c39f04eb11c228ca75e1a5186845f7762b9c9df79e9767518c61 |
SUPPORT.md |
a5c24d863ce789ef82d0367fe9f02ed0a84d7ff295257a5a4a3b4272b09782ce |
_config.yml |
18a1898173fb8b7b4ddb07960ad4f267b241695ca5ca49b09e6efbbc83d63185 |
docs/building-this-catalog.md |
cad5807b2737525542fae214d41150745d1a36be200e28f8af3298fbb450d6fe |
docs/question-map.md |
5e7cf72ff410bcfd2532662ffcf37b8a778410311a3b72caa962a3c1a1d3c75b |
docs/start-here.md |
65f27754390f37eabc0d5f7c6736e5847956b22821cc953447171b62d6bcf471 |
docs/take-the-challenge.md |
eea478166323cdcd179f3926c0d8d4f1f8e69be9de9bd98865d999be2f929b5e |
docs/taxonomy.md |
9304d6d2dc5fc9e97d8b8ddf9c32f68aa59793c947c2fb5ff6580ad48c08172e |
docs/where-to-find-us.md |
822840cf55159c175da50c9f7de1cee0a7b96204cb444d7dede8583915716b01 |
examples/S5-Qregister/README.md |
f700846ee226dd8462aabaacce09a6ec46120235c2ca53ab37bad9b222713e04 |
examples/S5-Qregister/fixture_spec.json |
fc41220233026f5f2fc3a638a3e03485bf60b56291f312b8203f4ebfc43898ae |
examples/S5-Qregister/simulation.py |
067e975bf1eae2e83713863c75b6b310e3fe6d7e3377abe32ba1ca61dac57a65 |
examples/T08-S5Q2/README.md |
3d2c3ec792ae0477fe2bfd260d33d7ed7ba00fc5a0c07dbdbd6909dc07efb3c5 |
examples/T08-S5Q2/fixture_spec.json |
af3fa963d49a0e1da06d9b9c8be0322a3941ddf635d12097d03a940695af6d36 |
examples/T08-S5Q2/simulation.py |
30a2c02291b28ff27c8b2b638bd476aa2193c3606136a37a345909644bc0edd3 |
failures/README.md |
19c0dafc1f83aa1cd272458e614ecef800cec9833b69f8566ade59bee1dea3ec |
failures/SF-001-zero-items-pass.md |
c80fa40d282c649182ba4d91b1ff4db23a0dc6f291b79a4bf8c375e76158a0aa |
failures/SF-002-early-return-as-skip.md |
22fee9678cd80af1a85e7879c00275856165a4740f15b520f71256d10b7234dd |
failures/SF-003-swallowed-exception.md |
79279dd9ff31bf0a213ee606bd673d0d907f6f9d104bb996c219fbb3743ada66 |
failures/SF-004-sentinel-value.md |
1cfc452fc86541c19cb66f56a7df9f7370060fbe0af195f7137ef800e2ae7013 |
failures/SF-005-neutral-marker-not-counted.md |
a90a5dddd3780e4c353e173550a3f0380e73ec52757087d3c497f3ca2b988a4a |
failures/SF-006-undeclared-not-checked.md |
bc542c106e7305fa939e0f0eb55f533b6cef51485efe13a311b5963e378b06cd |
failures/SF-007-empty-value-is-silent.md |
cad80bbe1fbdd1ee18c56cdbbfba879850dee54767847fb65d0b0c74926c4cb8 |
failures/SF-008-loading-artifact-as-evidence.md |
12efac77b648685346c44822db98e3cf7df3611f6f7a659ac513e7e0a07e5457 |
failures/SF-009-exposure-counted-as-usage.md |
ae19d9372e0735a3cf20d9fdd02281ef0015e2e3867fe540a7333d1957d341fc |
failures/SF-010-local-green-not-remote-green.md |
3661c312ee8454c1c5d1050dd00cc1cae7a24f74a214b966f63b206cab19cc02 |
failures/SF-011-always-green-oracle.md |
dc37cb3e6d7d80e12e697053d2380c790fcbbc22287118a0b9922fb193ab8c14 |
failures/SF-012-misattributed-failure.md |
93cd7fde87530025b94cb1011927a6d1de954ac7275dc3232fed7964e41f8ce0 |
failures/SF-013-stale-copy-contaminates-check.md |
a44ec614f0fd48f245deb07f4413871ed9625b8e5782d6b83da0a216703314f5 |
failures/SF-014-zombie-process-looks-alive.md |
85883241b70069735cca904c996166c4f07958a36d3eae7f249549bd1f59b89d |
failures/TEMPLATE.md |
449e9313fe8897d6a739e53070e4a0405ee21bf4aba32c9bb3e99c6f04dcfe45 |
index.md |
c2df83b7333324460919f973f0b3d8ac53009340f58ffa6cfc08ed99add575ce |
llms.txt |
95c7aa76f4f174167aece1dcfe3ab44badf7b859f1c977c856349acd5fa15786 |
tools/check-catalog.py |
5aaefc51009059a30b40f1734c1f91010420eb1504dbb42f30c6818fe927d787 |
tools/gate-lint.py |
1b11bb7ee77065c3c0e0fff43ce9168c7a4016d033d7d5a57617bc7a26a82ce5 |
tools/make-manifest.py |
8c8493c8cf19a39d1dedfe2b22040b0cb7edc9fc406956e308ede1149db8396e |
tools/samples/bad/counter_unused.py |
de0bf68a9b785288be9021a2ea8ee3caac8259d34c670070bdbbab4ca00ff5e8 |
tools/samples/bad/no_exit.py |
ae5a330bc43138d01577ec57a288fbcec645988d9c7805c8ca2ee73df2d13fbb |
tools/samples/bad/swallow.py |
e10b234506e1680434bb242db34ec23da76ccdd76b0d3a4648aa44bb1ea1bbed |
tools/samples/bad/unchecked_empty.py |
b8c24bca3fc37f4e000ab1f81b8ab466224cf5b150fcca6194c3c3a6e29247ba |
tools/samples/bad/zero_items.py |
dd842218a37842dbed879ca832bbc0b7bc7fea277d75fe031772afd6d71f5bab |
tools/samples/good/strict_gate.py |
25be15e64cb41af41d891cd36d8a5bd99c2d0e05c31851a7727b8047f84f7a08 |
tools/verify_release_consistency.py |