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
This RFD proposes the release engineering process for Dogebox OS, covering the roles, automation, work-flows, and tooling involved in preparing and publishing a release across the Dogebox ecosystem. This process standardises how we move from merged code to tagged releases with build artefacts available for end users, leveraging much-os-release and GitHub Actions, and backed by a build cache hosted on Collie.
Motivation
As Dogebox OS matures, we need a reliable, repeatable, and minimal-intervention release process that:
Enforces semantic versioning and traceable commit history
Automates generation of release notes and changelogs
Builds and publishes reproducible artefacts
Keeps our build cache hydrated to speed up downstream consumers
This RFD documents the agreed-upon process to ensure clarity among contributors and reliability in our release infrastructure.
Background
Dogebox OS is developed across four main repositories within the Dogebox-WG GitHub organisation:
dpanel
dkm
dogeboxd
os
All commits and PRs across these repositories are required to follow the Conventional Commits specification. This enables automated semantic versioning and changelog generation via tooling.
To facilitate releases, we have developed much-os-release, a CLI tool designed to assist the release engineer in orchestrating tagged releases and release notes.
Proposed Process
1. Code Contributions
Developers submit pull requests to any of the four core repositories.
All commits must adhere to the Conventional Commits format.
PR titles must also follow the conventional format to reflect the semantic impact of the change (e.g. feat:, fix:, chore:, etc.).
Upon merge to the default branch (main), changes are now eligible for inclusion in a release.
2. Preparing a Release
When a release is ready to be cut, a designated release engineer performs the following:
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
RFD 001: Release Engineering Process for Dogebox OS
Authors: @DivineGod
Reviewers: @Dogebox-WG/dev
Status: Released
Created: 2025-10-21
Discussion: [link to GitHub Discussion/PR or Issue]
Summary
This RFD proposes the release engineering process for Dogebox OS, covering the roles, automation, work-flows, and tooling involved in preparing and publishing a release across the Dogebox ecosystem. This process standardises how we move from merged code to tagged releases with build artefacts available for end users, leveraging
much-os-releaseand GitHub Actions, and backed by a build cache hosted on Collie.Motivation
As Dogebox OS matures, we need a reliable, repeatable, and minimal-intervention release process that:
This RFD documents the agreed-upon process to ensure clarity among contributors and reliability in our release infrastructure.
Background
Dogebox OS is developed across four main repositories within the
Dogebox-WGGitHub organisation:dpaneldkmdogeboxdosAll commits and PRs across these repositories are required to follow the Conventional Commits specification. This enables automated semantic versioning and changelog generation via tooling.
To facilitate releases, we have developed
much-os-release, a CLI tool designed to assist the release engineer in orchestrating tagged releases and release notes.Proposed Process
1. Code Contributions
feat:,fix:,chore:, etc.).main), changes are now eligible for inclusion in a release.2. Preparing a Release
When a release is ready to be cut, a designated release engineer performs the following:
Pre-requisites:
main.Steps:
Run
much-os-releasefrom theosrepositoryThe tool:
3. GitHub Actions on Tag Creation
Once a tag is created in the
osrepo, two GitHub Actions workflows are triggered:A. OS Image Build & Upload
flake.nixconfigurationB. Cache Hydration via Collie Runners
Dispatches scripts to self-hosted runners on Collie
These runners:
Alternatives Considered
Appendix
Conventional Commit Examples
feat(dpanel): add new auth settings modalfix(dogeboxd): correct null dereference on startupchore(os): update flake inputs for dkm 0.2.1Beta Was this translation helpful? Give feedback.
All reactions