Repository navigation
fix(governance): audit must fail on non-default branch scope drift #1200
Description
Owner-boundary defect from a live ScopeWeave canary
This is an organization-control-plane issue, not a request for a ScopeWeave leaf workaround.
Exact consumer evidence
On ContextualWisdomLab/scopeweave#523:
- protected live base:
develop@2c328875e00e86537df3e965170be80532571cad; - exact contributor head:
fix/server-tests-exact-head-522@2304fb64bfeccadf588db52e5d9b4bd2051af3dc; - a normal contents write to that non-default contributor branch was rejected with HTTP 409:
Changes must be made through a pull request, naming the central required workflows (Close Empty PR, Required Noema/OpenCode review, merge scheduler, SAST, Security Scan, Strix, etc.); - two distinct attempts to create a child repair branch from the exact contributor head/base ref were rejected with HTTP 422
Reference update failed, and fresh branch searches proved neither requested ref was created.
This prevents the repository-owned writer from putting a verified CI-gate repair through a fresh normal PR branch.
Independently verified central audit gap
scripts/ci/audit_central_required_workflows.py correctly requires ~DEFAULT_BRANCH to be present in the ruleset ref_name.include, but it does not reject additional ref include patterns. Therefore a ruleset that contains ~DEFAULT_BRANCH plus ~ALL, a branch glob, or another unintended non-default target can pass the audit even though central pull-request/required-workflow rules are over-scoped.
This audit gap is independently actionable even if the live ruleset ultimately proves correctly scoped. The ScopeWeave write denial is a canary that makes live scope verification urgent; it is not by itself proof that ruleset 18156473 is the only possible cause.
Required repair-first investigation
- Refetch live inherited organization ruleset
18156473and its exactconditions.ref_namethrough the existing central owner authority. Do not infer scope from remembered policy or the audit script. - Reproduce the audit defect with a deterministic RED fixture where
ref_name.includecontains~DEFAULT_BRANCHplus an unintended extra branch target. Current audit behavior should be shown to pass before the repair. - Make the smallest central causal repair so the audit asserts the intended exact include/exclude semantics, not merely membership of
~DEFAULT_BRANCH. - If live ruleset scope has drifted, repair it through normal reviewed organization governance without weakening any default-branch required workflows, review count, last-push approval, thread resolution, deletion, or non-fast-forward protection.
- If live ruleset scope is already exact, keep the strengthened audit and investigate the next owner boundary: GitHub App/ref-creation permission or another repository/ruleset policy causing the 409/422 behavior. Do not change the organization ruleset merely to make the canary green.
Acceptance evidence
- focused RED -> GREEN audit tests covering exact default-only scope and an extra-scope negative fixture;
- full central test suite and exact-head required checks;
- fresh protected-main ruleset audit bound to the live ruleset payload;
- a fresh ScopeWeave canary showing a non-default proposal branch can be created and changed through a normal PR flow while
developremains fully protected; - no bypass, direct protected-branch write, force update, reduced approval requirement, or required-workflow deletion.
The ContextualWisdomLab/.github dedicated writer remains the source/settings owner for this repair. ScopeWeave should only regenerate exact-head evidence after the owner fix integrates.
Activity
seonghobae commentedon Aug 21, 2026
GRC exact consumer canary
The GRC repository reproduced the owner-boundary failure while attempting only normal PR work:
9c1923e8e6f6145d0f789a97db4dd15f94f2adf3. A locally verified review-fix commit7e04e73was rejected when pushed to the existing feature branch with GH013:Changes must be made through a pull request, followed by the seven central required workflows being unsatisfied.6280a17was rejected on its existing PR branch with the same required-workflow violations.18156473was re-read from GRC on 2026-08-21: active,conditions.ref_name.include=["~ALL"], empty exclude, two approving reviews, latest-push approval, thread resolution, deletion, non-fast-forward, and seven central required workflows from.github@main.The local fixes remain unpushed; no bypass, direct protected write, force update, or ruleset weakening was used. This is an additional exact consumer showing that the current all-ref workflow enforcement prevents both updating an existing feature PR and creating a fresh normal repair PR until the central owner-boundary repair is integrated.
seonghobae commentedon Aug 21, 2026
Ruleset owner-boundary detail
The live GRC ruleset payload also has
workflows.parameters.do_not_enforce_on_create=false. Withref_name.include=["~ALL"], this explains why a genuinely new repair branch is rejected before it can obtain the required workflow statuses. The rejection is not only the existing-branch PR-only rule.The exact normal-governance candidate is therefore to preserve all required workflows and review/deletion/non-fast-forward protections while changing only the create-transition behavior to allow a new proposal branch to be created; subsequent PR updates and merges must remain governed. The audit should pin this field and test the create-transition contract. No live ruleset mutation was attempted.
seonghobae commentedon Aug 21, 2026
DiskSage exact consumer canary
DiskSage independently reproduced the same create/update-transition governance failure while attempting a test-first repair on an existing PR branch.
ContextualWisdomLab/disksagemain:5f7c7ae38adafd1f3b3640016a8333767c89d78afeat/provider-sync-dynamic-goals108bba0e4737b09b1c09f6c3b5a86a43be22223esrc-tauri/tests/provider_evidence_retention.rs, exact blob2804378ce5a455b0193333a2f0260a5b73dab08cThe source defect is independently verified in current #213 source: provider-evidence retention sorts records by
(confirmed_at_ms, record_id)and prunes the oldest after a successful immutable evidence write without protecting the just-written path. If the host clock moves backward, the newly written attestation can therefore be deleted immediately whilewrite_immutable_sync_evidencereturns success and a now-missing path.A RED regression was prepared to seed 128 records at timestamps 100..227, write a new record at timestamp 1, and require the returned path to remain present/readable while total retention remains 128. An ordinary Contents API update of that exact existing PR branch was rejected with HTTP 409:
Changes must be made through a pull request.followed by unsatisfied central required workflows (
Close Empty PR, Required Noema/OpenCode review, merge scheduler, SAST, Security Scan, Strix, etc.). No mutation occurred; no lower-level/ref bypass was attempted.This is a second product family showing the live ruleset prevents the normal test-first repair path on an already-open proposal branch, not just fresh branch creation. Central acceptance should therefore cover both: (1) creation of a non-default proposal branch and (2) subsequent normal commits to that branch while default-branch required workflows/review/deletion/non-fast-forward protections remain intact. Once the central owner repair integrates, DiskSage will retry the same RED regression on the unchanged/revalidated #213 lane and regenerate exact-head evidence.
seonghobae commentedon Aug 21, 2026
Canonical owner repair is now on #1176 at exact head
b628e88871ecc845a46989bde48b15292a41690e.Test-first evidence:
~ALLfalse acceptance and missing create-transition validation;["~DEFAULT_BRANCH"]with empty excludes;~ALL, extra targets, globs, strings, and exclusions fail;workflows.parameters.do_not_enforce_on_createmust betrue;The live organization ruleset and ScopeWeave canary remain acceptance work after reviewed integration; no consumer source or protected branch was changed.
seonghobae commentedon Aug 21, 2026
Fresh ScopeWeave update-transition canary
The previously blocked existing non-default branch update path is now passing for ScopeWeave without bypass or ruleset weakening.
Fresh evidence:
develop@2c328875e00e86537df3e965170be80532571cad;ContextualWisdomLab/scopeweave#523remains onfix/server-tests-exact-head-522;2304fb64bfeccadf588db52e5d9b4bd2051af3dc;95a15bc7413867fef1535ef4bcea4eab2478460c;.github/workflows/dependency-review.ymlto exact-head checkout + runtime SHA attestation + independently resolved live base + fail-closed unavailable comparison evidence;This narrows #1200 acceptance: the historical existing-branch update failure is no longer reproducible on this ScopeWeave lane. Fresh new proposal-branch creation remains untested from the ScopeWeave writer because creating a disposable/competing branch solely as a canary would violate its current single-writer/no-temporary-writer operating contract.
Owner-side acceptance is therefore still: integrate/review the canonical
.github#1176repair, refetch the live ruleset payload, prove the create-transition contract through the central owner authority, then let ScopeWeave regenerate exact-head checks on its unchanged/revalidated head. Current ScopeWeave runs for95a15bc7413867fef1535ef4bcea4eab2478460care queued and remain non-passing until they actually execute.seonghobae commentedon Aug 21, 2026
Current owner-path exact-head failures on #1176
Fresh evidence on canonical owner PR #1176 exact head
f0bef61ba0898ae118d0262ffd6fbf4b8bf4a256shows the governance repair itself is now blocked by two deterministic owner-repository failures; these are not ScopeWeave-local and should be repaired on the existing #1176 lane rather than by consumer retries.Strix Changed Path Quality CI run
32505883021, job96845819375checked out the exact head and passed the full Python suite (1302 passed, 16 subtests) beforescripts/ci/test_strix_quick_gate.shfailed two scheduler contract checks. The first failing boundary is.github/workflows/pr-review-merge-scheduler.yml: the test expects manualrepository_dispatchqueue scans to be isolated per run (github.event_name == 'repository_dispatch' && github.run_id) and expects the narrower cancellation expressioncancel-in-progress: ${{ github.event_name == 'pull_request_target' || github.event_name == 'pull_request_review' || github.event_name == 'repository_dispatch' }}. The current merged-in scheduler instead groups generic repository dispatches by repository and also cancels workflow-run-without-PR scans. Treat the quick-gate failures as RED; reconcile current scheduler semantics with the contract at the owning central branch, preserving targeted/org-sweep concurrency behavior, then require the same exact-head quick gate + full suite GREEN.Python Security run
32505882872, job96850547285failedpip-auditon exact merge result5bc553ec4e98266e5e1d5fb070fb8a0a14a2fb0d:requirements-pip-audit-ci-hashes.txtpinspip==26.1.2, flagged asPYSEC-2026-3721, fixed inpip>=26.2. All other audited requirement sets shown in the log were clean. Smallest remedy is to regenerate the pip-audit CI lock/hash set with a non-vulnerable compatible pip release (>=26.2), preserving--require-hashes, then require installation and fullpip-auditGREEN on the updated exact head.Do not merge #1176 or treat predecessor evidence as current acceptance until both failures are root-cause repaired and all exact-head required checks plus qualifying independent reviews are terminal-passing. Once integrated, the consumer acceptance remains: re-read ruleset
18156473, prove normal non-default ScopeWeave branch creation/update without bypass, then regenerate ScopeWeave #523 exact-head checks.seonghobae commentedon Aug 21, 2026
Fresh owner-path narrowing on #1176
Current canonical owner PR #1176 is now at exact contributor head
6bf0447388c08f699f9550e4ed4f71c84fb4c723. Fresh exact-head workflow evidence materially narrows the remaining owner repair: Strix Changed Path Quality CI is now terminal success (32516562031), as are OSV, commercial-readiness quality, artifact/SBOM quality, mention-router quality, Secret Scan, SAST, Security Scan, Scorecard, SBOM generation, and CodeQL. Python Security remains terminal failure at run32516562095on this exact head.The previously established first failing causal boundary remains owner-side
requirements-pip-audit-ci-hashes.txt: the prior exact failure pinned vulnerablepip==26.1.2(PYSEC-2026-3721, fixed inpip>=26.2). Treat the current Python Security failure as continuing RED evidence unless a fresh current-head log disproves that cause. The smallest repair remains to regenerate that dedicated pip-audit CI lock/hash set with a compatible non-vulnerable pip release while preserving--require-hashes, then require install + full pip-audit GREEN and refetch every exact-head gate/review on #1176. Do not alter consumer repositories or weaken the ruleset to make the check pass.This comment only advances the existing owner control path; ScopeWeave source ownership remains with its dedicated writer.
seonghobae commentedon Aug 22, 2026
DiskSage stacked-PR required-workflow canary
A fresh DiskSage stack shows the complementary failure mode of the current all-ref central workflow/ruleset contract: a non-default-base PR can have source changes but never receive the centrally injected Security Scan/SAST runs that the parent receives when targeting
main.Exact consumer evidence:
main:5f7c7ae38adafd1f3b3640016a8333767c89d78a;ContextualWisdomLab/disksage#213: basemain, exact head0584bcc600e037d564a4ff254b6e8570361d9218; exact pull-request runs include Test32531994023SUCCESS, Release32531994176SUCCESS, Security Scan32531993877SUCCESS, and SAST Semgrep32531994078SUCCESS;ContextualWisdomLab/disksage#247: basefeat/provider-sync-dynamic-goals@0584bcc600e037d564a4ff254b6e8570361d9218, exact head61058e6fb4596c5c0b4916a54595a4e573e9d3ed; it changes 18 files / +674 -54 and its exact pull-request runs contain only Test32560957112SUCCESS and Release32560957027SUCCESS. Security Scan and SAST are absent, not pending or skipped;hourly-product-loop.yml,release.yml, andtest.yml. The Security Scan/SAST workflow IDs are therefore centrally injected owner-controlled evidence, not a missing DiskSage workflow file.This means an inherited ruleset scoped to
~ALLcan require central workflows on proposal refs while a stacked PR targeting a non-default branch does not produce at least Security Scan/SAST statuses. That creates an unsatisfiable normal stack lane: the consumer cannot correctly add a local substitute without duplicating/bypassing the central contract.Acceptance test for the central owner repair should therefore include a real stacked PR canary: source-changing child PR -> non-default parent branch must receive the same applicable central required workflow identities on the child exact head, or the ruleset must explicitly avoid requiring identities that the central trigger cannot emit for that ref/PR shape. Preserve default-branch protection, review requirements, last-push approval, thread resolution, deletion/non-fast-forward protection, and do not weaken Security/SAST themselves.
DiskSage did not add a leaf Security/SAST workflow or mutate central source/settings; dependency latency blocks only this stacked lane.
seonghobae commentedon Aug 22, 2026
Fresh ScopeWeave owner-path retry: canonical repair PR #1176 is still open, but its live identity has moved again. Current connector state is head
5b2a2163eead22ffe0a65708cd4136e51afe291a, base field4c33442021d63b09f35a874c5e7a779dd46ef8f2, andmergeable=false; the PR body still describes predecessor head/base values. All currently associated repository-native runs on5b2a2163...are terminal success (including central SAST/Security/CodeQL/SBOM/quality lanes), but mergeability/current formal review remain the first live integration boundary. Please keep the existing #1176 lane repair-first: refetch live main and the intervening delta, reconcile the same branch non-destructively if the semantic #1200 fix is still intact, regenerate exact-current-head evidence, then obtain the required independent current-head verdict and integrate normally. After protected integration, the acceptance canary remains unchanged: refetch ruleset 18156473, require exact default-branch-only ref scope plusdo_not_enforce_on_create=true, then prove a fresh non-default ScopeWeave proposal branch can be created and subsequently updated without bypass while protecteddevelopretains the full required-workflow/review/deletion/non-fast-forward gate. Do not weaken or duplicate the central ruleset.seonghobae commentedon Aug 23, 2026
Canonical owner branch reconciled to current protected main
PR #1176 is now exact head
49f6988795262194e4eda8b3ea7319b7b39c4e77against protected base885f2cd251999f21cf562cab3e2d9cc3cc3ec737via a non-forced two-parent merge. The resulting PR is mergeable and changes exactly two owner paths:scripts/ci/audit_central_required_workflows.pytests/test_central_required_workflow_ruleset_audit.pyThe retained contract requires
ref_name.include == ["~DEFAULT_BRANCH"], empty excludes, andworkflows.parameters.do_not_enforce_on_create == true;~ALL, extra/glob targets, string scope, exclusions, and a blocked create transition remain deterministic failures. All currently materialized exact-head security/SBOM/CodeQL checks are terminal success and unresolved review threads are zero. A fresh exact-head formal OpenCode review/coverage run has been requested. Keep #1200 open through protected-main integration, live ruleset18156473revalidation, and a fresh create-then-update proposal-branch canary.seonghobae commentedon Aug 24, 2026
Central owner PR #1176 is now synchronized non-destructively to protected
main@bdd8d72e731d47879819b436670b74da0053b3edat exact head2f16ea928fa24f386775f6bcc82ed0baed1fd2f7. The merge-result delta is limited to the ruleset audit source and its regression suite. Focused create-transition/ruleset audit: 20 passed; full central suite: 1,402 passed, 1 skipped, 16 subtests. Hosted exact-head workflows are queued and therefore non-passing. This does not close #1200: acceptance still requires reviewed protected-main integration, live ruleset18156473payload revalidation, and a fresh ScopeWeave proposal-branch create/update canary without bypass.seonghobae commentedon Aug 24, 2026
Fresh owner-boundary evidence from the ScopeWeave delivery lane confirms that #1176 is currently blocked by a protected-main Strix routing defect, not by its governance patch.
Exact evidence:
.github#1176exact head55a6a796d453ca4718859889fbbd4b416c20ebf1, live basemain@613a33e0cb1c6db9790fae99f6253445712ac37a;32720645174, job97411134879fetched the trusted protected source and exact target head correctly;nvidia_nim/nvidia/nemotron-3-super-120b-a12breturned HTTP 429 repeatedly;nvidia_nim/nvidia/llama-3.3-nemotron-super-49b-v1.5produced zero-vulnerability model output but the provider chain still continued/fail-closed;openai-direct/gpt-5.6-lunawas given the OpenAI fallback key while inheritingLLM_API_BASE=https://integrate.api.nvidia.com/v1, so NVIDIA returned404 page not found.The same self-hosting boundary is independently reproduced by
.github#1299exact headb92648e1df52a9213f46dcbe88e9fc448f6d54a7, pull_request_target run32719334448, job97407200513: its PR-head workflow is materialized only for smoke validation, while the trusted protected-main Strix implementation that actually executes still routes the direct-OpenAI fallback through the NVIDIA base and fails 404. Therefore rerunning #1176 before the protected-main Strix repair integrates would only reproduce the same deterministic failure.The current bounded owner candidate
.github#1295is open/mergeable at exact headcdf15180c37c3bbcb1e5fe2c48ece5ce006a6606. Its gate-script repair makes explicitopenai_direct/*/openai-direct/*models resolve to no custom API base, preserving NIM/Vertex/GitHub Models routing and fail-closed semantics; its exact-head PR workflows are terminal-success, includingStrix Changed Path Quality CIrun32723442486. #1299 contains additional workflow/base-file plumbing, but its own PRT failure is predecessor trusted-main behavior, not evidence that the PR-head implementation can authorize itself.Please keep this in the existing central owner lane: canonicalize the smallest root-cause repair (preserving any unique useful regression/validation from the overlapping candidate), land it through normal reviewed protected-main governance, then regenerate #1176 evidence without changing its governance source. Acceptance for this dependency is a fresh downstream Strix run that proves (1) the exact #1176 contributor SHA was actually scanned, (2) direct OpenAI fallback uses the OpenAI platform endpoint rather than the NVIDIA base, (3) provider/outage states still fail closed, and (4) no predecessor or self-smoke success is transferred as downstream authorization. No ScopeWeave-local workaround or gate weakening is appropriate.
seonghobae commentedon Aug 25, 2026
Fresh live ruleset regression from Orgmetra canary — review semantics weakened
A fresh supported read of inherited organization ruleset 18156473 —
CWL Central required workflowsfromContextualWisdomLab/Orgmetranow shows an exact effective-policy regression that belongs to this existing central owner boundary:enforcement: activeconditions.ref_name.include = ["~DEFAULT_BRANCH"],exclude = []required_approving_review_count: 1dismiss_stale_reviews_on_push: truerequire_last_push_approval: falserequired_review_thread_resolution: truerequire_extra_approval_for_unattributed_changes: trueOrganizationAdminremainsbypass_mode: always;current_user_can_bypass: alwaysupdated_at: 2026-08-25T15:02:57.831-07:00This conflicts with the intended central governance repeatedly documented in this owner issue family: do not reduce the approval requirement and do not weaken last-push approval while repairing ruleset scope/audit behavior. Orgmetra-local code/workflows cannot correctly repair an inherited organization ruleset.
RED acceptance: central ruleset/audit policy must fail if the live default-branch ruleset drifts below the intended independent-review count or disables required post-last-push approval semantics. A ruleset with exact default-only scope is not sufficient if its PR review parameters are weakened.
Smallest owner repair: restore the intended organization-level review parameters on ruleset 18156473 through the existing reviewed governance/settings owner path, and strengthen the central audit so it validates the exact required approval count and last-push-approval boolean in addition to exact ref scope. Preserve stale-review dismissal, conversation resolution, all central required workflows, deletion/non-fast-forward protection; do not use admin bypass.
Required GREEN proof: fresh API read of ruleset 18156473 showing the intended review count and last-push requirement, focused RED→GREEN audit regressions for count/last-push drift, full central exact-head checks, then unchanged downstream canaries. This comment advances the existing owner path only; no
.githubsource/ref/workflow/PR state or organization settings were mutated from the Orgmetra loop.seonghobae commentedon Aug 26, 2026
DiskSage Strix required-workflow consumer canary — provider chain is currently non-executable
This is a read-only consumer handoff from
ContextualWisdomLab/disksage; no.githubsource/settings mutation is requested from the DiskSage writer.Exact affected consumer
ContextualWisdomLab/disksage#264main@79067c1160ddedf7fc962cbf8067ce7e83c4564a5e7b33de8df7f7ce0c011837c2a9139ae7a16a75ContextualWisdomLab/.github/.github/workflows/strix.yml@60a34005e59efe2b622897e3c7b06882bdf63aee3295249970498194496006failureFirst failing boundary / causal evidence
nvidia_nim/nvidia/nemotron-3-super-120b-a12brepeatedly fails with HTTP 429Too Many Requests.nvidia_nim/nvidia/llama-3.3-nemotron-super-49b-v1.5is no longer executable: NVIDIA returns HTTP 410Goneand states the model reached end of life at 2026-08-26T09:00:00Z.openai-direct/gpt-5.4reaches OpenAI but fails HTTP 400 because Strix uses function tools withreasoning_effortthrough/v1/chat/completions; the provider says this combination is unsupported and requires/v1/responsesorreasoning_effort='none'.STRIX_PROVIDER_UNAVAILABLE; no authoritative vulnerability report exists. IntermediateVulnerabilities 0output is therefore not clean security evidence.This proves the blocker is the central Strix provider/model contract, not DiskSage #264's release-verifier source. The same consumer head's repository-owned Test/Release/Security/SAST are terminal-success.
Smallest owner-side remedy candidates
reasoning_effortto a supported value for the current Chat Completions path.Acceptance test
Re-run the inherited Strix required workflow against unchanged DiskSage #264 head
5e7b33de8df7f7ce0c011837c2a9139ae7a16a75and require: exact target SHA attribution; terminalSUCCESS; a structured authoritative Strix report; noSTRIX_PROVIDER_UNAVAILABLE; no retired-model 410; no gpt-5.4 function-tools/reasoning-effort 400; and no weakening/removal of the Strix gate. If provider capacity is still exhausted, the check must remain non-passing.seonghobae commentedon Aug 27, 2026
Fresh live review-control drift on ruleset 18156473
A current ScopeWeave consumer refetch of the inherited organization ruleset shows the create/scope repair is live, but two default-branch review protections have drifted below the canonical owner contract.
Exact live payload observed from
ContextualWisdomLab/scopeweave:18156473, active, organization source;ref_name.include=["~DEFAULT_BRANCH"],exclude=[];do_not_enforce_on_create=true;required_approving_review_count=1;require_last_push_approval=false;dismiss_stale_reviews_on_push=trueandrequired_review_thread_resolution=trueremain enabled.This disagrees with the canonical audit at current owner PR
ContextualWisdomLab/.github#1176@36d4fecd42d692f752afd2c4a8dee86dcefe92c3, wherescripts/ci/audit_central_required_workflows.pyexplicitly requires exactly two approvals and last-push approval=true while preserving stale-review dismissal and thread resolution.This is not a ScopeWeave-local defect and should not be worked around in consumers. Treat the live ruleset payload itself as RED owner evidence: refetch through organization authority, determine whether the settings drift is an incomplete/out-of-band application of the #1176 contract, and restore only the intended review protections through normal central governance if the live payload is authoritative. Preserve the now-correct default-only ref scope,
do_not_enforce_on_create=true, all seven required workflows, deletion and non-fast-forward controls. GREEN should include the central audit against the actual post-change live payload and a fresh consumer refetch proving the ruleset matches the reviewed contract before ScopeWeave relies on it for protected integration.seonghobae commentedon Aug 28, 2026
Fresh live ruleset + proposal-branch acceptance (2026-08-28 KST)
The create-transition part of this owner defect is now operationally repaired.
18156473is active with exactref_name.include=["~DEFAULT_BRANCH"],exclude=[];do_not_enforce_on_create=true;feat/static-onboardingat 2026-08-28 12:48:05 KST;69eff955bc16295a6d82b72174b25d8ec94345c1at 2026-08-28 17:55:50 KST, and the live branch ref and PR head both resolve to that SHA.This is read-only consumer acceptance; no ScopeWeave source/ref was mutated by the central writer.
Keep #1200 open because the same live ruleset still contradicts the canonical protected-default-branch review contract in .github#1176:
required_approving_review_count=1andrequire_last_push_approval=false, while the executable audit requires exactly 2 approvals and last-push approval. Scope/create-transition is green; review-strength convergence remains non-passing.seonghobae commentedon Aug 29, 2026
Fresh repository-level overlap in default-branch review controls (2026-08-30 KST)
A supported live read of the active repository ruleset 17921150 on
ContextualWisdomLab/.githubexposes an additional owner boundary that must be included in #1200 convergence:enforcement=active;ref_name.include=["~DEFAULT_BRANCH"],exclude=[];required_approving_review_count=0;require_last_push_approval=false;updated_at=2026-08-18T00:45:50.341-07:00.This repository-level rule overlaps the inherited organization rule already recorded here (
1approval / last-pushfalse) and is weaker than the reviewed executable contract (2approvals / last-pushtrue). Effective protection must be evaluated across both layers; validating only organization ruleset 18156473 is insufficient.Keep the now-green default-only scope/create transition intact. The smallest owner repair is to converge the effective default-branch review semantics through normal settings governance and extend the audit/acceptance evidence to enumerate every active applicable ruleset. No bypass, reduced workflow set, or consumer-local workaround is acceptable.
seonghobae commentedon Aug 30, 2026
Canonical owner PR advanced with repository-ruleset audit
PR #1176 now points at exact head
2a9d115813b814af2aaaa0763b175f2d65b72f79on protectedmain@6c8ee24046d743b3981c566c6e29f99f09137f6a. The ref advanced non-force; commit tree8a2cde46a36af04076b510fbe2688f893c0b45d0and both parents were independently verified.Fresh root-cause confirmation: the protected-main audit covered the inherited organization/stacked rulesets but did not fetch the
.githubrepository ruleset17921150. The live local ruleset remains active/default-only yet requires 0 approvals and no last-push approval, so this layered weakening was invisible to the central audit.The smallest owner-boundary repair is now on #1176:
17921150;TDD evidence:
Repository-wide deterministic coverage is still non-passing at 99% because
scripts/ci/pingora_edge_policy.py:274has one unmeasured statement/branch owned by active #1398. Current-head hosted evidence is still regenerating and no qualifying exact-head formal approval exists, so #1176 was not merged and this issue remains open.No live ruleset mutation, bypass, force update, protected-branch write, consumer-source change, or gate reduction was used.
seonghobae commentedon Aug 30, 2026
Review-driven audit hardening at exact head
4ae3c618Fresh review exposed three additional false-negative paths in the canonical #1176 audit, all reproduced before repair:
allowed_merge_methods=[merge,squash,rebase]passed despite the documented merge/squash-only policy;Exact current source now rejects all three. RED produced 3 focused failures; GREEN is 35 focused tests with 241/241 auditor statements and 130/130 branches, plus 1,887 full-suite passes, 1 skip, and 17 passing subtests. The branch advanced non-force to
4ae3c6184ae96b588e98ac1e66820a63bdc9ca24; treef03e6bacfc0269059d5ea33c0bd5de40898b8030and parent2a9d1158were revalidated.The live repository ruleset was re-read immediately before this note and still reports approvals
0, last-push approvalfalse, rebase enabled, andOrganizationAdmin/alwaysbypass. No setting was mutated. Hosted exact-head checks are regenerating, repository-wide coverage remains non-passing only at the #1398-owned Pingora line, and exact-head approval is absent, so #1176 was not merged and #1200 remains open.seonghobae commentedon Aug 30, 2026
Inherited bypass gap closed in source at
d2224010The first post-write sweep re-read organization ruleset
18156473through ScopeWeave and found the sameOrganizationAdmin/alwaysbypass actor that the organization auditor did not reject. A deterministic RED fixture confirmed the false-negative. #1176 now audits bypass actors on both organization and repository rulesets and advanced non-force to exact headd2224010a7eafa5ff23682521e10cbf09f94b5b1; tree4818cb8fad10065d95968adcaaab367c7f655d13and parent4ae3c618match the independently built objects.Final local evidence is 36 focused tests, 243/243 auditor statements, 132/132 branches, and 1,888 full-suite passes plus 17 passing subtests. Repository-wide coverage remains explicitly non-passing only at #1398-owned
pingora_edge_policy.py:274. The live rulesets were not mutated, exact-head hosted evidence is still regenerating, and no exact-head approval exists; #1200 therefore remains open.seonghobae commentedon Aug 30, 2026
Owner PR #1176 advanced by non-force fast-forward to exact head
0b0a45b34aa135f10db82d2a81d685f2d5f64980(treee53c3cd497e3c1718d91fb0767023e1f1a6142ae). A fresh review exposed that omittedbypass_actorsevidence was accepted as an empty list. RED fixtures reproduced the fail-open behavior for both inherited organization and repository rulesets; the narrow repair now accepts only explicitbypass_actors: [], so missing, malformed, or non-empty evidence fails closed. Focused ruleset audit: 38 passed with 243/243 statements and 132/132 branches; full central suite: 1,890 passed, 1 skipped, 17 subtests. Current threads are resolved. Hosted exact-head checks and independent formal review remain required; live ruleset approval/latest-push/bypass contradictions remain non-passing, so #1200 stays open.seonghobae commentedon Oct 10, 2026
GRC develop merge-policy scope observation — October 10, 2026
Consumer: ContextualWisdomLab/governance-risk-compliance#76, target develop@529cf321f134e26c0cd379ee53c06ab5297363b6, now published head faa716323f3ba6efe9c53010f8a0bdd047a4cfa0. Project AGENTS forbids bypass of protection/checks/independent review. The solo maintainer requests normal merge, independent Noema/OpenCode auto review, not a fictitious second human.
Fresh parent GraphQL confirms zero repository branchProtectionRules; default branch develop. Independent readonly audit at2026-10-10T14:07Z observed develop protection404, effective branch rules[], repository/inherited rulesets[]. Parent REST refetch at14:19Z was rate-limited403, not a reconfirmation of inherited absence. No settings changed. Empty protection is not permission to merge an unverified candidate.
Please return canonical applicable enforcement and the owned repair path for this exact develop target, reconciled with solo-maintainer issue772 and independent App/deterministic evidence. Preserve product/security/current-head checks, stale-review/thread resolution and branch-integrity controls. Do not impose impossible fictional-human requirements or count skipped/model-only evidence as pass. GRC source lane will not alter global settings.
Predecessor Product/CodeQuality jobs113305262705/113305250621 had no runner or steps due to billing lock. Independent source repair158tests/100%coverage passed on S1; current docstring-only delta also158passed/100% and approved with executable AST equality. This is not qualifying App approval or remote CI. Central GRC producer2602 still Draft and isolated runner admission ops326 pending.
Requested receipt: policy custodian, consumer accepted/denied/pending scope, reviewed settings/source revision, exact required evidence consumers, and live effective develop enforcement readback. No admin/force merge, self-approval or fabricated status requested.