Files
football/COMMIT_CONVENTIONS.md
Charles N Wyble ad129dd4b2 docs: Add commit conventions and update AGENTS.md
1. **Added COMMIT_CONVENTIONS.md**:
   - Documents conventional commit format (type: description)
   - Defines commit types: feat, fix, docs, style, refactor, perf, test, chore, ci
   - Specifies commit message structure with detailed description
   - Includes footer attribution requirements
   - Provides examples for simple and complex commits
   - Documents branching conventions
   - Emphasizes frequent commit and push workflow

2. **Updated AGENTS.md**:
   - Added COMMIT_CONVENTIONS.md to Related Documentation section
   - Makes conventions easily discoverable for agents

This ensures consistent commit format across all work and
enforces the push-as-you-go workflow.

Files Added:
- COMMIT_CONVENTIONS.md

Files Updated:
- AGENTS.md (documentation reference)

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-01-20 13:56:01 -05:00

3.2 KiB

Commit Conventions

Format

All commits must follow conventional commit format:

<type>: <concise description>

[Optional detailed description with bullet points for larger changes]

[Optional sections like "Files Updated", "Files Added", etc.]

💘 Generated with Crush

Assisted-by: <model name> via Crush <crush@charm.land>

Commit Types

  • feat: - New feature or functionality
  • fix: - Bug fix
  • docs: - Documentation changes only
  • style: - Code style changes (formatting, no logic changes)
  • refactor: - Code refactoring (neither fix nor feature)
  • perf: - Performance improvements
  • test: - Adding or updating tests
  • chore: - Maintenance tasks, build process changes, dependencies
  • ci: - CI/CD configuration changes

Description Rules

  • Keep subject line under 72 characters
  • Use imperative mood ("Add" not "Adds", "Update" not "Updates")
  • Use sentence case, not title case
  • Do not end with period
  • Reference relevant issues in description if applicable

Detailed Description

For larger commits, include:

  • Bullet points explaining what was changed
  • Sections for "Files Updated" and/or "Files Added"
  • Reference to functional requirements or specifications
  • Rationale for changes when not obvious

Attribution

All commits must include these footer lines:

💘 Generated with Crush

Assisted-by: <model name> via Crush <crush@charm.land>

Examples:

  • Assisted-by: GLM-4.7 via Crush <crush@charm.land>
  • Assisted-by: Gemini 2.5 Flash via Crush <crush@charm.land>

Examples

Simple Commit

fix: Correct ISO mount permissions

Fixed mount permissions issue when building custom ISO.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>

Feature Commit

feat: Add LightDM display manager for secure login

Implements minimal, secure login without username display:

1. **LightDM Installation**:
   - Added lightdm and lightdm-gtk-greeter packages
   - Enabled LightDM service by default
   - Set default target to graphical

2. **Minimal and Secure Greeter**:
   - Configured /etc/lightdm/lightdm.conf:
     * hide-users=true (no username list displayed)
     * show-manual-login=true (manual username entry only)
     * allow-guest=false (no guest sessions)
   - Greeter shows only username, password, login button

Files Updated:
- config/preseed.cfg (LightDM packages, enabled service)
- config/security-config.sh (LightDM configuration)

💘 Generated with Crush

Assisted-by: Gemini 2.5 Flash via Crush <crush@charm.land>

Branching

  • main - Production-ready code
  • Feature branches: feat/feature-name
  • Bugfix branches: fix/bug-description
  • Refactor branches: refactor/component-name

Push Frequency

CRITICAL: Commit and push frequently as work progresses.

  • After each significant change
  • Before switching tasks
  • When pausing work
  • Minimum: Every 5-10 minutes of active work
  • Always push before closing conversation

Verification

Before pushing, ensure:

git status              # Working tree clean?
git log --oneline -3   # Commit message format correct?

References