You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
finding: #7022's ADR-approval queue bypass is live again — an ADR merged tonight with the gate failure and zero reviews, four days after #7022 was closed completed #8596
Filed by the domain:devx execution PM seat (#6023), observation only. Unassigned and unlabeled for triage. ⛔ No agent should self-serve any remedy here — the fix is a repository-settings action and is outside every agent's authority, exactly as #7022 said.
⚠️This is not a duplicate of #7022 and not a re-litigation of it. It is the same defect, measured again after that card was closed as completed, which is new information about the closure rather than about the defect.
Tonight's measurement
PR #8529 (docs(adr): anchor the default-active-org session hook to ADR-0093 D9, touching docs/adr/0093-tenancy-mode-and-membership-lifecycle.md):
#7022 recorded the identical mechanism on 2026-08-09 — gate red on the merge_group ref, no approval, queue merges anyway — and named the remedy: add ADR Merge Approval to the required-check set for main, in both branch protection and the merge-queue check set. It was closed completed at 2026-08-10T03:53:10Z.
Tonight's merge is only possible if that remedy is not in force. Two readings fit and this card does not choose between them, because choosing would require a settings read this seat cannot perform:
it was applied and has since been reverted or lost.
⚠️ Distinguishing them is the first useful step, and it is cheap for whoever can read repository settings.
Pattern detail, recorded as fact and not as an allegation:#7022's two bypassed PRs (#6942, #6962) were both merged by os-zhuang, and tonight's was enqueued by os-zhuang. That account is a shared identity that AI seats and the maintainer both use, so it does not identify who acted, and no inference about intent should be drawn from it. It is noted only because "same actor string across all three incidents" is a fact a settings investigation may find useful.
What this seat did and did not do
⛔ Did not enqueue it. This seat has never enqueued a docs/adr/** PR and declined twice on this very PR to cast the approving review it is mechanically able to cast — the ruling 「adr 只能由维护者自己确认,人工合并」 makes the approving act the maintainer's, so casting it would route around the control rather than satisfy it.
⛔ Did not dequeue or revert it. os-zhuang cannot be distinguished from the maintainer, and the standing rule for that ambiguity is to treat the actor as the maintainer, not revert, and report.
The limit of this evidence, stated rather than glossed
Like #7022, this seat cannot read branch protection to confirm the required-check configuration directly. The claim rests entirely on behaviour: gate failure, zero reviews, merged via the queue. ⛔ That is an unreachable reading, not a verified-clean one, and it should not be reported as a settings finding until someone with access confirms which of the two readings above is true.
⛔ Not proposing retroactive action on tonight's ADR.
Related: #7022 (the original, closed completed) · #6741 (the ruling) · #6785 (an earlier attempt to enforce it on the GitHub side) · #8012 (the arming half) · #8173 (the required-context name, blocked on org settings) · #8161 (self-approval makes the gate unsatisfiable when the maintainer authors). None of those is addressed here and none is closed by this card.
Filed by the
domain:devxexecution PM seat (#6023), observation only. Unassigned and unlabeled for triage. ⛔ No agent should self-serve any remedy here — the fix is a repository-settings action and is outside every agent's authority, exactly as #7022 said.completed, which is new information about the closure rather than about the defect.Tonight's measurement
PR #8529 (
docs(adr): anchor the default-active-org session hook to ADR-0093 D9, touchingdocs/adr/0093-tenancy-mode-and-membership-lifecycle.md):ADR maintainer approvalconclusionfailure— job94534521031, completed 2026-08-13T17:30:39Z8b7b5e7, unchanged through mergeget_reviews→[]), not merely no APPROVED reviewos-zhuangSo an ADR-touching PR went through the queue and landed with the governance gate red and no review on it at all.
Why this refutes #7022's closure
#7022 recorded the identical mechanism on 2026-08-09 — gate red on the
merge_groupref, no approval, queue merges anyway — and named the remedy: addADR Merge Approvalto the required-check set formain, in both branch protection and the merge-queue check set. It was closedcompletedat 2026-08-10T03:53:10Z.Tonight's merge is only possible if that remedy is not in force. Two readings fit and this card does not choose between them, because choosing would require a settings read this seat cannot perform:
ADR Merge Approvalis not in the merge queue's required-check set — two ADR changes landed on main today with the gate red and no maintainer approval #7022 was closed on the strength of the plan rather than a verified configuration; orPattern detail, recorded as fact and not as an allegation:#7022's two bypassed PRs (#6942, #6962) were both merged by
os-zhuang, and tonight's was enqueued byos-zhuang. That account is a shared identity that AI seats and the maintainer both use, so it does not identify who acted, and no inference about intent should be drawn from it. It is noted only because "same actor string across all three incidents" is a fact a settings investigation may find useful.What this seat did and did not do
docs/adr/**PR and declined twice on this very PR to cast the approving review it is mechanically able to cast — the ruling 「adr 只能由维护者自己确认,人工合并」 makes the approving act the maintainer's, so casting it would route around the control rather than satisfy it.os-zhuangcannot be distinguished from the maintainer, and the standing rule for that ambiguity is to treat the actor as the maintainer, not revert, and report.The limit of this evidence, stated rather than glossed
Like #7022, this seat cannot read branch protection to confirm the required-check configuration directly. The claim rests entirely on behaviour: gate
failure, zero reviews, merged via the queue. ⛔ That is an unreachable reading, not a verified-clean one, and it should not be reported as a settings finding until someone with access confirms which of the two readings above is true.Not claimed here
ADR-0081label survives in 37 more citations across three unrelated claims — same collision #8474 fixed for the active-org stamp only #8531 and "ADR-0081 D1" is cited as the source of the default-active-org session hook, but ADR-0081 is the trusted react page tier — the decision behinddefaultActiveOrgis anchored to nothing #8474 was closed by hand at 00:3xZ.ADR maintainer approvalafter the gate stopped checking who approved — renaming needs an org-settings action first #8173 (open,pm:on-hold) covers renaming this required context and is blocked on an org-settings action — the same class of blocker, and possibly the same root.Related: #7022 (the original, closed
completed) · #6741 (the ruling) · #6785 (an earlier attempt to enforce it on the GitHub side) · #8012 (the arming half) · #8173 (the required-context name, blocked on org settings) · #8161 (self-approval makes the gate unsatisfiable when the maintainer authors). None of those is addressed here and none is closed by this card.