Skip to content

docs(governance): add emeritus transition process - #1641

Open
cythecode wants to merge 1 commit into
rinafcode:mainfrom
cythecode:governance/emeritus-transition
Open

cythecode wants to merge 1 commit into
rinafcode:mainfrom
cythecode:governance/emeritus-transition

Conversation

@cythecode

Copy link
Copy Markdown
Contributor

Overview

Adds Governance/processes/EMERITUS_TRANSITION.md: the operational companion to
Governance/roles/EMERITUS.md. The role document defines what emeritus status is;
this process defines the transition itself — when a member moves to emeritus, which
privileges are retained and which are withdrawn, and the recorded path back to active
status, each step with an owner and a deadline.

The process names three triggers (voluntary step-down, end of a fixed term, role
consolidation), runs all of them through one recorded sequence (request or consented
proposal, acknowledgement within 3 business days, recorded decision within 10 business
days, privileges applied within 5 business days), keeps emeritus opt-in and separate
from the inactivity and misconduct paths, and matches the reinstatement thresholds
already committed in Governance/policies/INACTIVITY.md.

Related Issue

Fixes the governance gap tracked in #1488: Governance/ had no
Governance/processes/EMERITUS_TRANSITION.md, so the transition into emeritus and the
path back to active status were not written down in a single, versioned reference.

Changes

Emeritus transition process

  • [ADD] Governance/processes/EMERITUS_TRANSITION.md

    • When a Member Moves to Emeritus — the three triggers and the single recorded
      sequence they all run, with the acknowledgement, decision, and apply deadlines, and
      the rule that a proposal without the member's consent does not proceed.
    • Privileges Retained — recognition, attribution, read access, community
      participation, a non-voting voice at meetings, and consented informal consultation.
    • Privileges Withdrawn — voting and quorum, role decision authority, elevated
      repository permissions, CODEOWNERS placement, private-channel access, and external
      representation.
    • Returning to Active Status — contributor returns on a merged pull request,
      reviewer/moderator after two completed reviews with one maintainer approval,
      maintainer after four reviews or pulls in 60 days with two approvals and onboarding,
      plus appointment by nomination under Governance/processes/NOMINATION.md, and a
      3-business-day acknowledgement / 10-business-day decision clock.
    • Cross-references Governance/roles/EMERITUS.md, Governance/roles/CONTRIBUTOR.md,
      Governance/roles/MAINTAINER.md, Governance/policies/INACTIVITY.md,
      Governance/RECOGNITION.md, and Governance/CODE_OF_CONDUCT.md.
  • [ADD] Governance/processes/EMERITUS_TRANSITION.test.ts

    • 27 assertions pinning the document structure, the three triggers, the retained and
      withdrawn privileges, and the return path to the checked-in document, and checking
      the thresholds against Governance/policies/INACTIVITY.md and
      Governance/roles/EMERITUS.md at test time.

Verification Results

Ran against a tree staged from the Git Data API (no local clone of the upstream repo).

Governance/processes/EMERITUS_TRANSITION.test.ts
  Test Files  1 passed (1)
  Tests       27 passed (27)

Mutation checks (document edited, suite re-run):
  - drop "Authority to represent the project externally..." -> 1 failed | 26 passed
  - remove the return-request acknowledgement/decision clock  -> 2 failed | 25 passed
  - rename "Privileges Withdrawn" heading                    -> structure assertion fails
Restored document -> 27 passed (27)

Both files are Prettier 2.8.8 clean under the repository .prettierrc (printWidth 100).
The document stays within the 82-column house limit asserted by its own test suite.
Acceptance Criteria Status
Governance requirement is implemented successfully ✅ Governance/processes/EMERITUS_TRANSITION.md defines the transition, retained/withdrawn privileges, and return path
Scope is limited to a maximum of two files ✅ Exactly two files added
No changes are made outside the Governance folder ✅ Both files live under Governance/processes/
No regression in existing functionality ✅ No application code, manifests, or lockfiles touched
Tests pass and code follows project standards ✅ 27/27 pass; Prettier 2.8.8 clean; ≤82 columns
Change is documented ✅ Process document plus the companion regression suite

Closes #1488

Adds Governance/processes/EMERITUS_TRANSITION.md defining when a member
moves to emeritus, the privileges retained and withdrawn, and the path
back to active status, with Governance/processes/EMERITUS_TRANSITION.test.ts
pinning the guarantees to the document.
Copilot AI lite review requested due to automatic review settings September 28, 2026 17:43
@drips-wave

drips-wave Bot commented Sep 28, 2026

Copy link
Copy Markdown

@cythecode Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Unresolved moderate documentation gaps and a critical test-runtime failure remain.

Review effort: Lite
Findings: 1 High severity · 1 Medium severity

Open (2)
What changed in this PR

Adds an emeritus transition process and regression tests under Governance/.

Changes:

  • Documents transition triggers, deadlines, privileges, and return-to-active paths.
  • Adds tests validating the process structure and governance references.
File Summary and findings
Governance/​processes/​EMERITUS_TRANSITION.md Documents the emeritus lifecycle. Five moderate findings remain: clarify contributor return timing, handle the absent CODEOWNERS file, define return paths for all scoped roles, assign the initial recording step, and explicitly revoke private-channel and external-representation privileges.
Governance/​processes/​EMERITUS_TRANSITION.test.ts Adds regression tests. One critical finding remains: replace __dirname with an ES-module-compatible path derived from import.meta.url at the noted locations.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +15 to +17
import path from 'node:path';

const PROCESS_PATH = path.resolve(__dirname, 'EMERITUS_TRANSITION.md');
Comment on lines +109 to +115
- **Reviewer or moderator.** The member demonstrates re-engagement through at
least two completed reviews or moderation actions, and one active
maintainer records approval on the return issue.
- **Maintainer.** The member demonstrates re-engagement through at least four
completed reviews or merged pull requests within 60 days, and two active
maintainers who are not the requestor record approval, followed by the
onboarding steps in `Governance/roles/MAINTAINER.md`.
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.

Add an emeritus transition process for TeachLink Web

2 participants