Skip to content

Align review scope with the ratified text - #3

Merged
Aevust merged 2 commits into
mainfrom
governance/align-review-scope
Jul 22, 2026
Merged

Align review scope with the ratified text#3
Aevust merged 2 commits into
mainfrom
governance/align-review-scope

Conversation

@Aevust

@Aevust Aevust commented Jul 22, 2026

Copy link
Copy Markdown
Owner

Two commits, kept separate for auditability.

chore(governance): derive the review gate from the ratified text

CODEOWNERS gated five paths; only two are bound by any ratified provision. Narrows to /GOVERNANCE.md and /rip-0001/, and anchors both patterns. Founder review is removed from SECURITY.md, governance/ and .github/CODEOWNERS. The reasoning for each removal is in the commit message, and each rests on a clause of the ratified text rather than on a judgment call.

docs(governance): repoint core-role.md to GOVERNANCE.md

The Change Submission Discipline and Emergency Exception section moved to GOVERNANCE.md on 2026-07-07, as recorded in that file's Extracted-From header. core-role.md still cited it as a RIP-0001 section, and no such heading exists in rip-0001.md, so the citation did not resolve for a reader who followed it. Two lines changed: the citation and the Last Updated field.

No provision is amended, and no authority is conferred by either commit.


Ruleset change applied alongside this PR

Ruleset changes leave no trace in git history, so this section is the record.

Removed. The scope was ~ALL, and the creation and update rules blocked every branch and therefore every pull request — including any pull request that would have corrected the ruleset. required_linear_history was required while merge commits were the only permitted method; those two cannot both be satisfied. The scope now narrows to ~DEFAULT_BRANCH, and all three rules are dropped.

Retained. deletion, non_fast_forward, required_signatures, the pull request requirement, the rip-check status check with strict_required_status_checks_policy, and the CodeQL code scanning requirement at the Errors threshold. bypass_actors stays empty. Merge commits remain the only permitted method, so the author's signatures on the individual commits are preserved rather than rewritten.

On rip-check. It was reported as expected and never ran, because its workflow triggers on pull_request while the pushes it appeared to block were direct pushes to main. The check is implemented and passes here, though its current scope is the rip-NNNN/rip-NNNN.md file layout only; validation of RIP-0001 §Header Preamble and §File Format remains to be added. The fault was in the push path, not in the check, and this ruleset closes that path.

On code scanning. The CodeQL rule was blocked because no analysis had ever run: the rule requires results for both the pull request head and the target branch. CodeQL default setup was enabled during this pull request, and it analyses the GitHub Actions workflows under .github/, so it is retained rather than removed. This pull request was closed and reopened once, so that analysis would run against its head commit after the setup was enabled. The one alert raised — actions/missing-workflow-permissions on rip-check.yml — is a warning below the Errors threshold and is addressed in a separate pull request, to keep this one to the two files it describes.


Sequencing

require_code_owner_review is false while this pull request is open, and is enabled immediately after it merges. It cannot be enabled first: the CODEOWNERS currently on main assign .github/CODEOWNERS and governance/ to the Founder, so the setting blocks the very change that narrows it. Enabling it beforehand was attempted and produced exactly that deadlock.

Approval therefore moves from a flat count of one to code-owner review once merged, after which the scope in .github/CODEOWNERS governs which paths need the Founder.

On the pending review request

Ysmreg is requested automatically, because the CODEOWNERS on main assigns him those paths. The request remains open and is not dismissed by merging. Neither commit amends a provision or confers authority, and both are a single revert away. Any objection can be raised afterward and acted on.

Aevust added 2 commits July 22, 2026 19:11
CODEOWNERS gated five paths. Only two of them are bound by any
ratified provision. The remaining three were configuration choices
that the text does not support, and two of them conflict with it.

Gate retained, and anchored:

  /GOVERNANCE.md   @ysmreg @Aevust
  /rip-0001/       @ysmreg @Aevust

GOVERNANCE.md §Authority and Amendment binds amendments to these two
documents to the same process, submission discipline and recording
requirements. Nothing else in the ratified text imposes review on
this repository: §Change Submission Discipline and Emergency
Exception binds the official Rincoin Core repository, and SECURITY.md
classifies this one as a Development repository.

The leading slashes are a fix, not cosmetic. Without them the
patterns follow gitignore semantics and match at any depth, so
rip-0005/governance/ and doc/SECURITY.md would have been captured.

Gate removed:

- SECURITY.md. RIP-0001 §RIP Editors states that this file is
  updated independently of the RIP, expressly so that key rotation
  does not require amending it. Gating it defeated a stated design
  goal of the text it claimed to enforce.

- governance/. GOVERNANCE.md obliges core-role.md to be updated
  whenever an assignment changes, and its Succession section operates
  precisely when the Founder is unavailable. A file that MUST be
  written in a reviewer's absence cannot require that reviewer's
  approval. The same applies to editor-changes.md, which Vacancy
  Determination and Succession both require to be written as those
  procedures run. The gate rendered ratified obligations
  unsatisfiable by configuration.

  It also verified the wrong thing. core-role.md records assignments;
  it does not create them. An entry is legitimised by the authorizing
  act under GOVERNANCE.md — a signed deputy designation, a recorded
  Core Strategic Authority decision, a Succession step — not by a
  review approval. Review of the record cannot substitute for the
  authority the record reports.

- .github/CODEOWNERS. Gating this file behind the review it
  configures makes the configuration unrecoverable whenever review
  stalls. Its protection is this signed and reasoned commit, and the
  fact that every rule below it restates a ratified clause.

No file other than .github/CODEOWNERS is touched. This narrows
configuration to match the ratified scope. It amends no provision and
confers no authority.
The Change Submission Discipline and Emergency Exception section was
relocated from RIP-0001 to GOVERNANCE.md on 2026-07-07, as recorded
in that file's Extracted-From header. core-role.md still cites it as
RIP-0001 §Change Submission Discipline and Emergency Exception, and
no such heading exists in rip-0001.md, so the citation does not
resolve for a reader who follows it.

Repoints the citation to GOVERNANCE.md and notes that the document is
incorporated into RIP-0001 by reference, so the normative basis
stated elsewhere — in SECURITY.md, in llms.txt and in the signed
certificate — is unchanged by the move.

Refreshes Last Updated, which still read 2026-06-07 and predates the
relocation.

Verified unchanged against GOVERNANCE.md: the mandatory pull request
for the official Core repository, the emergency exception's scope and
its bar on MAJOR/GENERATION increments, the 72-hour retroactive
review, disclosure in governance/emergency-actions.md, the emergency
authority holders, the distinct voter count of 2, and the 2/2
unanimity requirement for MAJOR. No assignment, voter count, or
authority statement changes.
@Aevust
Aevust requested a review from ysmreg as a code owner July 22, 2026 12:28
@Aevust
Aevust merged commit 7668ea7 into main Jul 22, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant