Files
chanora/docs/governance/git-commit-message-convention.md
T
EdisonJwa f1bc9a6c85 chore(repo): initial baseline import (docs v0.9.2 + bootstrap)
Imports the v0.9.2 documentation baseline and the bootstrap files
required by docs/governance/repository-bootstrap-plan.md v0.1.0 §3,
minus the justfile (added in the next commit).

This commit establishes the git history for the project. All previous
work lived only as filesystem state with no version control.
2026-05-14 12:25:33 +08:00

4.7 KiB

CHANORA_CFG_Git_Commit_Message_Convention_v0.9.2.2.1

Document type: Configuration / Engineering Convention
Version: 0.9.2
Status: Baseline Candidate
Language: English
Product: Chanora
Repo path: docs/governance/git-commit-message-convention.md ---

1. Purpose

This document defines the Git commit message convention for Chanora.

Chanora shall use a Conventional Commits style format with project-specific scopes.

2. Commit Format

<type>(<scope>): <summary>

Optional body:

<type>(<scope>): <summary>

<body>

Refs: <issue or requirement IDs>

Breaking change format:

<type>(<scope>)!: <summary>

BREAKING CHANGE: <description>

3. Commit Types

Type Meaning
feat New user-visible or system-visible capability
fix Bug fix
docs Documentation-only change
style Formatting change without behavior change
refactor Code restructuring without intended behavior change
perf Performance improvement
test Test addition or test update
build Build system, dependency, packaging, CI artifact change
ci CI/CD pipeline change
chore Maintenance task
revert Revert a previous commit
release Release preparation, version bump, release metadata
sec Security-specific change
i18n Localization, internationalization, Unicode, locale behavior
ux UI/UX behavior or interaction change
Scope Area
flutter Flutter app in general
ui UI components and screens
theme Material 3, design tokens, theme extensions
adaptive Adaptive layout and window classes
voice Voice UI or voice control behavior
audio Audio capture, playback, processing, DSP
core Rust Core orchestration
protocol tsclientlib integration and protocol adapter
bridge Flutter/Rust bridge and DTOs
state State synchronization, reducers, snapshots, events
storage Local database or non-secret persistence
secure-storage Keychain/Keystore/secret storage
diagnostics Logs, redaction, diagnostic export
i18n Localization, Unicode, locale formatting, RTL
android Android-specific behavior
ios iOS-specific behavior
windows Windows-specific behavior
macos macOS-specific behavior
linux Linux-specific behavior
build Build tooling
ci CI pipeline
release Release packaging and release metadata
docs Documentation
req Requirements documents
sysdes System architectural design
srs Software requirements
sad Software architecture
sdd Software detailed design
ver Verification documents

5. Examples

feat(voice): add push-to-talk state handling
fix(protocol): recover channel tree after reconnect snapshot
docs(sad): add interface catalog and performance view
i18n(ui): add fallback behavior for missing localization keys
sec(diagnostics): redact server password from export bundle
test(audio): add unit tests for audio meter level clamping
release(android): prepare internal alpha build metadata

6. Requirement and Document References

When relevant, the commit body should reference affected IDs.

Allowed examples:

Refs: SRS-156, SAD-013, SDD-017
Refs: SWE4-UV-011

Do not force every commit to reference a requirement. Use references when the change affects requirements, architecture, detailed design, verification, release, security, or traceability.

7. Pull Request Title Rule

Pull request titles should follow the same format as commit messages when possible:

feat(voice): add persistent VoiceBar controls

8. Branch Naming

Recommended branch format:

<type>/<short-topic>

Examples:

feature/voicebar-controls
fix/reconnect-state-sync
docs/baseline-candidate-v09
release/internal-alpha-001
hotfix/diagnostic-redaction

9. Change History

Version Date Description
0.9.0 2026-05-14 Initial Git commit message convention for Chanora.

Baseline Candidate 0.9.1 Update

Version Date Description
0.9.1 2026-05-14 Updated baseline after product decision closure: Apple App Store SDK gate uses Xcode 26+ and iOS 26 / iPadOS 26 SDK+ since 2026-04-28, platform baselines and decision traceability propagated across the document set.

Baseline Candidate 0.9.2 Update

Version Date Description
0.9.2 2026-05-14 Corrected Apple App Store Connect upload gate to 2026-04-28 and checked full-package naming, references, and coverage.