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
Fresh protected-state evidence shows that develop@942d164ceb7af497bb28a95f842db96429d1bdc4 was produced by merged PR #245 even though the final PR source did not satisfy mightyETL's stated protected-integration evidence contract.
final-head workflow aggregates: CI, Dependency Review, SBOM, Semgrep, and Security Scan all terminal-success;
CI's JaCoCo output on the admitted tree: Analyzed bundle 'etl-service' with 0 classes followed by All coverage checks have been met.
This issue does not claim the ConfigData behavior itself is defective. It records that the protected merge-admission boundary accepted evidence that repository policy explicitly classifies as non-qualifying: no independent non-author formal approval, synthetic-merge-only source execution, and vacuous zero-production-class coverage.
Fresh live enforcement evidence — 2026-08-13
The repository connector can now read the active repository rulesets even though direct classic branch-protection detail remains restricted. Fresh state was resolved against protected develop@4408b6086fd725ff1629d8f048cf28f3a2b40b1b.
Ruleset 11709659 (PR) is active on ~DEFAULT_BRANCH. It blocks deletion/non-fast-forward updates and requires pull requests plus review-thread resolution, but required_approving_review_count is 0, required_reviewers is empty, require_code_owner_review=false, require_last_push_approval=false, and it declares no bypass actors.
Ruleset 11709665 (Review) is active on ~ALL. It blocks deletion/non-fast-forward updates and enables Copilot code review on push/draft PRs, but it does not establish qualifying independent formal approval as a merge requirement.
The branch endpoint reports develop as protected: true while its summarized classic-protection payload has protection.enabled=false and required status-check enforcement off with no contexts/checks. Direct GET /branches/develop/protection returns 403 Resource not accessible by integration, so administrator restrictions and any classic-protection detail not represented by the branch summary remain unproven.
Both readable rulesets report bypass_actors: [] and current_user_can_bypass: never; this disproves the earlier need to guess whether the observed ordinary-path gap is caused by an explicit ruleset bypass actor. It does not prove there are no other organization/enterprise/classic protection mechanisms invisible to this integration.
The first demonstrated failing boundary is therefore concrete: the active PR ruleset itself permits zero approving reviews, and the readable branch summary does not enforce required status checks. That is sufficient to explain why the repository-level documented policy is stronger than the currently observable default-branch admission controls without inventing an administrator bypass.
RCA
Immediate cause: GitHub permitted the merge while the evidence set lacked a qualifying formal approval and still contained known non-qualifying source-identity/coverage semantics.
Technical root cause: the repository's documented merge policy is stronger than the currently observable enforced controls. The active default-branch PR ruleset requires zero approving reviews, while the readable branch summary exposes no required status-check contexts. Current hosted PR CI also checks the synthetic merge ref, and the current protected JaCoCo selector can pass an empty production bundle.
Residual observability limit: direct classic branch-protection detail is inaccessible to this integration. Do not infer administrator restrictions or other organization/enterprise controls beyond the rulesets and branch summary actually returned.
Distinct remedies / feasibility
Preferred — enforce qualifying evidence at the protected branch/ruleset boundary. After ci: schedule NVIDIA OpenCode maintenance agent #121 and fix(coverage): make JaCoCo production gate non-vacuous #164 (or accepted equivalents) are integrated, configure the protected default-branch admission policy to require at least one qualifying independent non-author formal approval plus the accepted exact-source, non-vacuous coverage, security, dependency, SBOM/SAST and other required checks. The current connector can verify rulesets but exposes no safe ruleset-mutation action, so this setting change is external_only from this automation rather than a reason to weaken repository-local policy.
Repository-local admission control. Add a deterministic governance check that classifies source identity, coverage non-vacuity, stale-head reviews, and independent approval fail-closed. This is useful only if the protected branch actually requires the resulting check; do not create a decorative workflow that can be bypassed.
Bypass governance. Inspect any remaining classic/organization/enterprise bypass or administrator authority with suitable repository-administration access, constrain it according to the accepted emergency policy, and retain auditable evidence for exceptional protected merges. Do not infer that administrator capability itself is an accepted bypass policy.
Reject — retroactive evidence repair. A review submitted after merge, checks from another head/base, self-approval, a CodeRabbit status, or a synthetic merge success cannot be used to rewrite the historical admission decision as compliant.
Reject — weakening the policy. Do not remove the independent-review, exact-source, non-vacuous coverage, scanner-completeness, or security gates merely because current settings do not enforce them.
Acceptance
Close only after fresh evidence proves all applicable protected-integration controls are actually enforced, not merely documented:
live develop branch protection/ruleset and bypass authority are inspected and recorded without secrets;
a PR with zero qualifying independent formal approvals cannot be merged through the ordinary protected path;
head movement invalidates/requires regeneration of source-bound review/check evidence according to the accepted governance policy;
the required CI source identity is the accepted literal source identity, or another explicitly reviewed equivalent whose identity semantics cannot be confused with GitHub's mutable synthetic PR merge ref;
a JaCoCo run selecting zero governed production classes is hard non-green;
current dependency review, SBOM, SAST, security, migration/compatibility and other repository-required checks are bound to the same unchanged candidate identity;
ordinary maintainer/admin merge tooling cannot silently bypass the required evidence; any deliberately retained emergency bypass is narrowly authorized and auditable;
a negative acceptance probe demonstrates that missing review/source/coverage evidence blocks a protected merge before this issue is closed;
canonical Test Strategy, Security/Operability/Release governance and Traceability point to the executable controls without promoting active-PR behavior to shipped truth.
Sequencing / writer safety
Do not race #121 or #164 merely to react to this incident. Those branches own the current exact-source and coverage-control implementations. This issue owns the protected admission-enforcement gap and the historical #245 evidence. Waiting for those specific control branches never blocks independent mightyETL product/security/reliability work.
Governance incident
Fresh protected-state evidence shows that
develop@942d164ceb7af497bb28a95f842db96429d1bdc4was produced by merged PR #245 even though the final PR source did not satisfy mightyETL's stated protected-integration evidence contract.Exact incident identities:
fix(config): apply aliases after ConfigData;29c0deb678651c3cae75e9a8bd8c33c63631da8e;develop@c2511f6b9d716ef9ab8de60a91fffd826714a4c5;edd9d3daa4581cd7fc14efcf24e56a847a7c542e(Merge 29c0deb... into c2511f6...);develop:942d164ceb7af497bb28a95f842db96429d1bdc4;Analyzed bundle 'etl-service' with 0 classesfollowed byAll coverage checks have been met.This issue does not claim the ConfigData behavior itself is defective. It records that the protected merge-admission boundary accepted evidence that repository policy explicitly classifies as non-qualifying: no independent non-author formal approval, synthetic-merge-only source execution, and vacuous zero-production-class coverage.
Fresh live enforcement evidence — 2026-08-13
The repository connector can now read the active repository rulesets even though direct classic branch-protection detail remains restricted. Fresh state was resolved against protected
develop@4408b6086fd725ff1629d8f048cf28f3a2b40b1b.11709659(PR) is active on~DEFAULT_BRANCH. It blocks deletion/non-fast-forward updates and requires pull requests plus review-thread resolution, butrequired_approving_review_countis 0,required_reviewersis empty,require_code_owner_review=false,require_last_push_approval=false, and it declares no bypass actors.11709665(Review) is active on~ALL. It blocks deletion/non-fast-forward updates and enables Copilot code review on push/draft PRs, but it does not establish qualifying independent formal approval as a merge requirement.developasprotected: truewhile its summarized classic-protection payload hasprotection.enabled=falseand required status-check enforcementoffwith no contexts/checks. DirectGET /branches/develop/protectionreturns403 Resource not accessible by integration, so administrator restrictions and any classic-protection detail not represented by the branch summary remain unproven.bypass_actors: []andcurrent_user_can_bypass: never; this disproves the earlier need to guess whether the observed ordinary-path gap is caused by an explicit ruleset bypass actor. It does not prove there are no other organization/enterprise/classic protection mechanisms invisible to this integration.The first demonstrated failing boundary is therefore concrete: the active PR ruleset itself permits zero approving reviews, and the readable branch summary does not enforce required status checks. That is sufficient to explain why the repository-level documented policy is stronger than the currently observable default-branch admission controls without inventing an administrator bypass.
RCA
Distinct remedies / feasibility
external_onlyfrom this automation rather than a reason to weaken repository-local policy.Acceptance
Close only after fresh evidence proves all applicable protected-integration controls are actually enforced, not merely documented:
developbranch protection/ruleset and bypass authority are inspected and recorded without secrets;Sequencing / writer safety
Do not race #121 or #164 merely to react to this incident. Those branches own the current exact-source and coverage-control implementations. This issue owns the protected admission-enforcement gap and the historical #245 evidence. Waiting for those specific control branches never blocks independent mightyETL product/security/reliability work.
Relationships: #121 exact-source execution; #162/#164 non-vacuous coverage; #205 repository-wide coverage completeness; #196 vulnerability-evidence completeness; #159 canonical governance traceability; #165 release/provenance.