Repository navigation
fix: the seven hex.audit advisories, and seven image justifications the scan retired - #131
Merged
Merged
Conversation
…0.1, protobuf 0.17.1) for the seven advisories mix hex.audit reports Signed-off-by: Ayla Croft <aylacroft@proton.me>
…ts (pcre2 rebuilt; openssl CVE-2026-84782 fixed in the shipped build) Signed-off-by: Ayla Croft <aylacroft@proton.me>
… does; Hex 2.5.3 turned the licence check red on every branch Signed-off-by: Ayla Croft <aylacroft@proton.me>
…o see it (a 50 ms backoff against a 50 ms poll) Signed-off-by: Ayla Croft <aylacroft@proton.me>
… transient task writes after start returns Signed-off-by: Ayla Croft <aylacroft@proton.me>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Five things turn
main's checks red as of 2026-10-19 without any change to the tree. This puts them right, and nothing else.gate: seven advisories inmix hex.audit~> 0.19.0Fixed versions are from each advisory's OSV record. protobuf and hex_core reach the tree only through
sbom, which is dev and test only and ships in no artifact; bandit and decimal ship.mix.exsis unchanged: every new version is inside its existing requirement.THIRD_PARTY_LICENSES.mdis regenerated (versions only; no licence changed), andmix versions.gen --checkpasses unchanged.headless-image: seven justifications for findings the scan no longer reportsmix trinity.image.findingsfails on a justification whose finding the scan no longer reports, which is what it did (run 39257269071, grype database built 2026-10-19T06:39Z). Read from that run'sgrype.json:10.40-7.el9_8; the rows were for10.40-6.el9, and the scan reports none of the three against the new build. The file's own rule applies: upgrading the package retires the row.1:3.5.8-2.el9_8, and the finding is gone from the scan. Red Hat's security data for the CVE namesopenssl-1:3.5.8-2.el9_8as the fixed release (RHSA-2026:77396), so the image already carries the fix.The CVE-2026-75804 row stays; the scan still reports it. The RA-5 row in
docs/regulated/control-mapping.mdsaid "the image's scan fails today" for OTP findings that 28.5.0.7 fixed in slice 130; it now states the rule instead of a status.gate: Hex is pinned to the archive the image pinsThe first run of this pull request failed at
trinity.third_party_licenses --checkwith "THIRD_PARTY_LICENSES.md does not match the bill of materials", which a clean local checkout of the same head does not reproduce. The cause is in the runner: setup-beam'smix local.hex --forceinstalled Hex 2.5.3 (released 2026-10-14), and the bill names the running Hex, while the tree records 2.5.1.main's lastgaterun was 2026-10-08, before Hex 2.5.2 and 2.5.3, so every branch would now fail the same way.The image already installs Hex 2.5.1 from
https://builds.hex.pm/installs/1.20.0/hex-2.5.1-otp-28.ez, checked against the SHA-512 Hex publishes ininstalls/hex.csv(ci/ironbank/hardening_manifest.yaml). Thegateandpostgresjobs and the OTP canary's flip job now do the same (install-hex: false, then that archive,sha512sum -c). A Hex move becomes a deliberate pin change instead of a red gate.postgres: an MCP client test that could not see the state it waited forTrinity.MCP.ClientTestAC6 kills the stdio server and polls for:down. The client is:downonly for its reconnect backoff, 50 ms in the suite, and the poll interval is also 50 ms, so a quick reconnect passed through unseen and every later poll read:ready("waited for [:down, :connecting], last seen ... status: :ready"). A 1 ms backoff reproduces it three times in three; this test now sets a 1 s backoff, so:downlasts twenty polls. The assertions are unchanged. Passed five times in five locally after the change.gate(pull_request run): a boot test that read the boot receipt before it was writtenTrinity.SecretsBootNodeTestAC4's child script readTrinity.Receipts.boot_receipt()straight afterApplication.ensure_all_started/1. The receipt is written byTrinity.Effects.Boot, a transient task the application starts, so start can return first; on run 39312232506 it did, and the script raisedBadMapError ... nil. The push run of the same head passed. The script now polls for the receipt, asTrinityWeb.Auth.BootRefusalNodeTest's already does for the same reason, andtest/test_helper.exswaits on the same task. Not reproduced locally (five isolated boots found the receipt present at once); the mechanism is the task's own start,use Task, restart: :transient.Evidence
mix hex.audit: "No retired or security advisory packages found".mix gate: every step green; the suite was 1309/1310, the one failureTrinity.SandboxTest"more work reports more reductions" with{:timeout, 1000}onreturn 1+1at load average 15.6, the 1 s budget already filed. Run alone: 13 of 13 pass.headless-imageis read on this PR's own run.