|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: "Scaling for the Future: Evolving Kroxylicious Governance" |
| 4 | +date: 2026-03-05 00:00:00 +1300 |
| 5 | +author: "Tom Bentley" |
| 6 | +author_url: "https://github.com/tombentley" |
| 7 | +categories: |
| 8 | +--- |
| 9 | + |
| 10 | +Hot on the heels of [the release of Kroxylicious 0.19.0]({{ '/blog/kroxylicious-proxy/releases/2026/03/04/release-0_19_0.html' | absolute_url}}) we have some other news to share. |
| 11 | +We are excited to announce a shift in how we manage the project, partly based on the proven model used by the Apache Software Foundation. |
| 12 | + |
| 13 | +We’ve always believed that open-source success is built on transparency, community trust, and a shared vision. |
| 14 | +The project continues to evolve, and our governance model needs to change with it while ensuring the project remains truly vendor-neutral. |
| 15 | + |
| 16 | +## Decoupling Roles: Introducing Committers and Project Managers |
| 17 | + |
| 18 | +Previously, we relied on a flat "Code Owner" structure. |
| 19 | +While this worked well in the early days, we realised it was starting to make it harder to scale the project: |
| 20 | +In order to grow, we are going to need more people able to review and merge contributions. |
| 21 | +But those people might not always be interested, or able to make a commitment to helping ensure the project’s long term sustainability. |
| 22 | + |
| 23 | +To solve this, we have split these duties into two distinct roles: |
| 24 | +* **Committers** focus on code quality and technical output. |
| 25 | + They have write access to our repositories and are responsible for reviewing and merging contributions. |
| 26 | +* **Project Managers** (PMs) focus on the long-term health and sustainability of the project. |
| 27 | + They manage the governance files, handle community elections, and ensure the project remains aligned with its goals and deal with our interactions with the CommonHaus foundation. |
| 28 | + |
| 29 | +We hope that by decoupling these roles, we’ll be better able to scale our number of Committers to match our review volume without burdening them with administrative overhead. |
| 30 | +It creates a clearer pathway for contributors to take on leadership roles based on their interests, whether that’s deep technical work or project stewardship. |
| 31 | + |
| 32 | +These changes are already reflected in our updated [`GOVERNANCE.md`](https://github.com/kroxylicious/.github/blob/main/GOVERNANCE.md). |
| 33 | + |
| 34 | +The initial [`COMMITTERS.md`](https://github.com/kroxylicious/.github/blob/main/COMMITTERS.md) and [`PMs.md`](https://github.com/kroxylicious/.github/blob/main/PMs.md) are the same people who were previously code owners and project admins. |
| 35 | +This revised governance model has not changed anyone's access. |
| 36 | + |
| 37 | +## Moving Beyond `CODEOWNERS` |
| 38 | + |
| 39 | +We are also moving away from using the GitHub `CODEOWNERS` file to enforce directory-level restrictions. |
| 40 | + |
| 41 | +We trust Committers to know the limits of their expertise and to pull in the right subject matter experts when a PR spans areas outside their immediate knowledge. |
| 42 | +This reduces the friction of managing complex ownership files and avoids the pitfalls of stale ownership definitions that don't match the current team structure. |
| 43 | + |
| 44 | +## Strengthening Our Organizational Memory |
| 45 | + |
| 46 | +The 90 day history we have on our free Slack workspace is starting to hurt. |
| 47 | +As we grow, we need to ensure that important technical decisions aren't lost. |
| 48 | + |
| 49 | +We think that, even in 2026, mailing lists are the least-worst way to share and record formal technical discussions and voting. |
| 50 | + |
| 51 | +* The barrier to entry is low |
| 52 | +* Everyone gets their own copy of the history, but there's a public archive too |
| 53 | +* Everyone can use familiar tools to organise and search history |
| 54 | + |
| 55 | +These features should ensure our decision-making process is archived, searchable, and publicly verifiable. |
| 56 | + |
| 57 | +So we'd like the [`kroxylicious-dev`][kroxylicious-dev] list to be our primary channel for development discussions, open to all contributors and committers. |
| 58 | +Meanwhile, Slack remains our home for quick, day-to-day conversation. |
| 59 | + |
| 60 | + |
| 61 | +<div class="container mt-4"> |
| 62 | + <div class="table-responsive"> |
| 63 | + <table class="table table-striped table-bordered align-middle"> |
| 64 | + <thead class="table-primary"> |
| 65 | + <tr> |
| 66 | + <th scope="col" class="w-50">Use <strong>Slack</strong> for...</th> |
| 67 | + <th scope="col" class="w-50">Use <strong>Mailing Lists</strong> for...</th> |
| 68 | + </tr> |
| 69 | + </thead> |
| 70 | + <tbody> |
| 71 | + <tr> |
| 72 | + <td><strong>Quick check-ins</strong> and status updates.</td> |
| 73 | + <td><strong>Formal technical discussions</strong> and proposals.</td> |
| 74 | + </tr> |
| 75 | + <tr> |
| 76 | + <td><strong>Real-time coordination</strong> on active tasks.</td> |
| 77 | + <td><strong>Voting</strong> on technical decisions.</td> |
| 78 | + </tr> |
| 79 | + <tr> |
| 80 | + <td><strong>Informal brainstorming</strong> and team culture.</td> |
| 81 | + <td><strong>Summaries</strong> of major decisions made in Slack.</td> |
| 82 | + </tr> |
| 83 | + <tr> |
| 84 | + <td><strong>Urgent alerts</strong> that need an immediate response.</td> |
| 85 | + <td><strong>Long-form information</strong> that should be searchable.</td> |
| 86 | + </tr> |
| 87 | + </tbody> |
| 88 | + </table> |
| 89 | + </div> |
| 90 | +</div> |
| 91 | + |
| 92 | +So how do you join the [`kroxylicious-dev`][kroxylicious-dev] list? |
| 93 | + |
| 94 | +* You can read and subscribe to the list on [google groups](https://groups.google.com/d/forum/kroxylicious-dev). |
| 95 | +* Alternatively, you can subscribe by sending an empty email to [kroxylicious-dev+subscribe@googlegroups.com](mailto:kroxylicious-dev+subscribe@googlegroups.com), |
| 96 | +* and unsubscribe by sending an empty email to [kroxylicious-dev+unsubscribe@googlegroups.com](mailto:kroxylicious-dev+unsubscribe@googlegroups.com) |
| 97 | + |
| 98 | +The project managers will use a private list, but only for communication that needs to remain private. |
| 99 | +You can contact them by email to [kroxylicious-pms@googlegroups.com](mailto:kroxylicious-pms@googlegroups.com). |
| 100 | + |
| 101 | +## Building Community Connection |
| 102 | + |
| 103 | +Governance isn't just about documents and voting; it’s about people. |
| 104 | +We want to ensure that our contributors feel connected to the project's direction and to each other. |
| 105 | + |
| 106 | +To facilitate more direct and synchronous collaboration, we are launching a regular Community Call that anyone can join. |
| 107 | + |
| 108 | +The Kroxylicious community is spread around the world, and we want to be as inclusive as possible. |
| 109 | +In particular, we didn't want the meeting to always be in the middle of the night for someone in an unfortunate timezone. |
| 110 | +To support this, while the meeting cadence is every two weeks, the meeting time will alternate by ±12 hours every other call. |
| 111 | +But timezones and daylight savings time makes it a bit tricky to describe in a blog post. |
| 112 | + |
| 113 | +You can see the time of upcoming meetings [on the website](https://kroxylicious.io/join-us/community-call/), and add the meeting schedule to your calendar app. |
| 114 | + |
| 115 | +## What’s Next? |
| 116 | + |
| 117 | +We’re excited to continue building Kroxylicious in an environment that is open, inclusive, and built to last. |
| 118 | +Check out the updated docs and let us know what you think! |
| 119 | + |
| 120 | +[kroxylicious-dev]: https://groups.google.com/d/forum/kroxylicious-dev |
0 commit comments