Repository navigation
Conversation
|
Independent review: the two replacement asset bindings and generated records are sound. I fetched assets Blocking finding: Bind the hosted check to this reviewed predecessor commit instead: |
|
Security source re-review PASS for exact The earlier PR-controlled local-action finding is closed: CI now invokes the immutable reviewed predecessor The current |
|
|
Security source review PASS for exact Source findings are closed:
I independently checked the current GitHub REST schema: a required-workflow selector supports Before the one admin write, the already-authorized administrator must:
No merge or manual qualification is cleared until that transition evidence and all ordinary required checks are terminal. This is an exact external-authority precondition, not a request to broaden the current credential or weaken enforcement. |



Upstream replaced both PHP 8.3 archives used by the bound Ubuntu 24.04/26.04 setup profiles. The old asset IDs return 404 before dependent repository tests start. This repair selects the replacements by exact asset ID, size and SHA-256, and rebuilds their complete archive, normalization and alternatives records.
The source change updates only the two existing profiles. The installer, TLS trust, redirects, regular-file derivation, configuration, extraction bounds and tool selections retain their existing rules. Retired asset identities are rejected before normalization. Shared contract CI pins the reviewed setup predecessor
5c1ddbff59bcfad8a686a72a9b09804b359c382a. Its action role and exact workflow bytes are explicitly recorded; candidate PR action changes do not execute through a local action reference.c60a4af4c7806c8c123268305b35ba1f7250a8356b195997bd0860359b101784d4959f02ae28e3936ad2ae3bcaca25aff8c2eca38ae11ab53a72a76a3711a7abUbuntu 24.04 retains 3,636 raw members and derives 3,215 regular files plus 373 directories. Ubuntu 26.04 adds 20 members for bundled
libtalloc2andlibwbclient0, including two directories and two library links; its 4,006 raw members derive 3,531 regular files plus 393 directories. Every link treatment is regenerated from the held archive. All nine managed alternatives resolve to the same archive member paths; only their metadata binding changes.Validation completed:
The initial hosted run successfully installed the replacement PHP, then refused the unbound local-action workflow change. That initial run remains failed; the exact-source successor corrects the finding.
This PR starts #400's repair. The two original manual qualifiers now change only their six setup/control source literals, retaining the existing main-only/attempt-1 admission, prerequisites, probes, evidence and cleanup. Their exact future workflow identities are bound in the policy runtime. Hosted qualification, the administrator transition below, downstream immutable pin updates and successful affected callers still need completion before that issue closes. Existing failed runs remain failed; no installed qualification is inferred from offline archive inspection.
The final source head is
d8826b083063be5f1724c8a1ad3aa88bb757b981(treef7b5bec9dca6b4c9262141b71c45706324a1c51b). Setup source is the immutable predecessor5c1ddbff59bcfad8a686a72a9b09804b359c382a; the enforcer workflow pins policy runtime2f6445df3c10ed10599001ff7bee6ecc25bac2f4. All four PHP implementation modules and all generated records remain byte-equal to the independently reviewed repair.The final 380-test source/policy/qualification group passes. Running the full successor enforcer over the 17 actual Git-captured workflow/helper inputs accepts them (input manifest SHA-256
c841f71ce335fa5a9171d5bebc6116eaa20b525cc9630188eca72334d8192df4). The old d477 enforcer refuses those same inputs. Both a foreign setup pin and substitution of a local action remain refused. These are local source controls; fresh hosted accepted/refused events remain required.The required organization workflow currently selects main and thus the old d477 runtime, which cannot admit its own successor bytes. Current credentials lack
admin:org. The proposed administrator action preserves rule 26628397, its Active enforcement, no bypass actors, every existing condition and all other rules. Replace only its sole workflow selector with:{ "repository_id": 575230056, "path": ".github/workflows/native-policy.yml", "sha": "d8826b083063be5f1724c8a1ad3aa88bb757b981" }This uses the ruleset's documented immutable workflow SHA field, replacing the moving
ref. The selected workflow bytes have SHA-2569c285c0e00605e0a8be85e1f601c96234616ade9d4b855ba8a273a359150f360and execute only the earlier pinned runtime. No organization write, enforcement reduction, bypass, credential scope expansion, merge or manual qualification has occurred. After independent source/transition review and actual admin selection, verify fresh accepted/refused policy events and merge through the protected path with every required check passing.