Decision Making, Voting, and Elections

This section describes the decision-making process, voting, and elections for the CF.

General Decision Making

In general, the CF adopts the Lazy Consensus model, as defined by the Apache Foundation, combined with Martha's Rules adapted for our context.

Expectations for Consensus Decision Making

Consensus is about finding a workable compromise:

Proposal Development and Review Process

Proposals typically begin as GitHub Discussions for collaborative refinement.


Architecture Decision Definition of Done or Y-statements can be useful for framing proposals or summarizing outcomes, though they are not mandatory.

Sense Vote

Members indicate their level of comfort or agreement with a proposal using reactions.

Sense votes typically use the following reactions, though alternatives may be suggested for specific proposals:

Discussion of the proposal should occur in comments on the PR or GitHub Discussion. If conversations happen elsewhere (in chat, for example), a summary of the conversation should be added as a comment if the discussion helped clarify the proposal or resolve a concern.

If significant revisions are necessary, the current proposal should be closed as outdated and replaced with a new proposal. The new proposal has revised content to maintain focus on the most current version and simplify navigation for members.

In all instances, efforts should be made to address concerns and objections constructively.

Moving forward

A proposal moves forward if it receives sufficient support and meets applicable participation thresholds defined in the CFC/EGC voting rules.

Handling Unresolved Issues

If consensus cannot be reached:


CF uses an electronic, asychronous, preference-based voting system through Elekto.