Estrategia de Git
kaddo add git-strategyInstala dos archivos:
architecture/git-strategy.md— la estrategia legible para humanos..kaddo/git.yml— el descriptor procesable por máquina.
Estrategia por defecto
GitHub Flow + Conventional Commits + SemVer.
feature/<work-item-id>-<slug> feat(scope): mensaje vMAJOR.MINOR.PATCHbugfix/<work-item-id>-<slug> fix(scope): mensajehotfix/<work-item-id>-<slug> docs(scope): mensajespike/<work-item-id>-<slug> chore(scope): mensajeLas notas de release se generan a partir de los Work Items de Kaddo + Conventional Commits.
Personalización
El valor por defecto es una recomendación, no una regla. Edita .kaddo/git.yml
para cambiar de estrategia — github-flow, gitflow, trunk-based o custom — y
ajustar el naming de ramas, la convención de commits y el patrón de tags.
strategy: github-flowbranchNaming: pattern: "{type}/{workItemId}-{slug}"commits: convention: conventional-commits requireWorkItemReference: truetags: strategy: semver pattern: "v{version}"Otras estrategias
Copia una de estas en .kaddo/git.yml como punto de partida y ajusta los patrones a
cómo trabaja realmente tu equipo. Todos los campos son descriptivos — Kaddo los lee como
documentación, no actúa sobre ellos.
Git Flow
main/develop de larga duración con ramas release/* y hotfix/*.
strategy: gitflowbranchNaming: pattern: "{type}/{workItemId}-{slug}" mainBranch: main developBranch: develop releasePrefix: release/ hotfixPrefix: hotfix/commits: convention: conventional-commits requireWorkItemReference: truetags: strategy: semver pattern: "v{version}"release: notesFrom: - work-items - conventional-commitsTrunk-based
Ramas de vida corta integradas en un único trunk; los releases se taggean desde el trunk.
strategy: trunk-basedbranchNaming: pattern: "{workItemId}-{slug}" mainBranch: main maxBranchLifetimeDays: 2commits: convention: conventional-commits requireWorkItemReference: truetags: strategy: semver pattern: "v{version}"release: notesFrom: - conventional-commitsCustom
Trae tus propias convenciones — para equipos que no siguen un modelo con nombre.
strategy: custombranchNaming: pattern: "{team}/{workItemId}-{slug}"commits: convention: custom requireWorkItemReference: falsetags: strategy: calver pattern: "{YYYY}.{MM}.{patch}"release: notesFrom: - work-itemsKaddo no impone la estrategia en CI, y nunca crea ramas ni tags por ti. Refina la estrategia con el
git-strategy-agenten tu LLM.