Exoshell uses Semantic Versioning (SemVer) for all machine-readable version numbers. Version numbers follow: MAJOR.MINOR.PATCH Examples: 0.1.0 0.3.3 1.0.0 The numeric version is the authoritative version used by Cargo, Git tags, releases, package managers, automation, and compatibility decisions. ## Release Codenames Each release also receives a human-readable codename. Codenames exist for display purposes only and have no semantic meaning. They do not indicate compatibility, stability, feature scope, or release type. Example display: Exoshell v0.3.3 codename: packet-goblin or: Exoshell 0.3.3 "Packet Goblin" The codename should be shown in the UI wherever version information is displayed. ## Codename Generation Release codenames should be generated using a constrained naming scheme. Recommended format: - Example tech terms: kernel packet daemon socket cache cipher terminal process satellite router Example artifacts: goblin wizard familiar relic oracle ghost hotdog cult seance rat-king The lists above are examples only. Future releases may introduce additional terms as long as they remain consistent with the project's tone. ## Codename Rules A codename must: be lowercase use hyphens as separators be safe for public display be memorable be mildly absurd be unique across all releases A codename must not: contain version numbers imply compatibility guarantees contain offensive or discriminatory language be reused just plainly mention the feature. ## Naming Guidance When creating a release: Increment the semantic version according to SemVer rules. Generate a new codename. Verify that the codename has not been used previously. Add the codename to release notes and changelog entries. Preserve existing codenames in project history. Consider an interesting, cool sounding name. ## Historical Codenames Historical codenames should be tracked in docs/versioning.md below * 0.1.0 packet-kobold * 0.2.0 context-relic * 0.3.0 stance-lantern * 0.4.0 switchboard-relic * 0.5.0 branch-oracle * 0.6.0 status-satellite * 0.7.0 diff-lantern * 0.8.0 commit-oracle * 0.9.0 summary-relay * 0.10.0 search-relay * 0.11.0 config-compass