Add document apiVersion (conventions/v1) + per-convention semver + updated date to the schema and all seed conventions; manifest files carry their own apiVersion (infra/v1). New ./run (symlink -> scripts/cli/run) with lint:yaml validating every programming_*/<name>.yaml against the schema (name==filename, scope==dir). Rename infra-manifest.yaml -> infra_manifest.yaml for name match. 4/4 valid. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
28 lines
1.2 KiB
YAML
28 lines
1.2 KiB
YAML
apiVersion: conventions/v1
|
|
version: 0.1.0
|
|
updated: "2026-06-29"
|
|
name: git_commit
|
|
title: Atomic commit + push protocol
|
|
scope: general
|
|
status: active
|
|
summary: Each verified logical change is its own scoped, conventional commit, pushed immediately; every agent commits the work it produced.
|
|
appliesTo: ["~/Code/**"]
|
|
rules:
|
|
- id: atomic
|
|
level: must
|
|
text: One logical, verified change per commit. Stage with scoped `git add <paths>` — never blind `git add -A`.
|
|
- id: verify_first
|
|
level: must
|
|
text: Tests / build / typecheck pass before the commit. Never commit unverified code.
|
|
- id: conventional
|
|
level: must
|
|
text: Conventional-commit message; end with the Co-Authored-By trailer.
|
|
- id: push_after
|
|
level: must
|
|
text: git push (fast-forward only) after each commit so work isn't stranded on one host. Never force-push.
|
|
- id: agent_owns_commit
|
|
level: must
|
|
text: Each agent (orchestrator or sub) commits + pushes its own work; never defer to a parent or a daemon. (The apricot ACS auto-commit-service is stale/offline.)
|
|
- id: branch
|
|
level: should
|
|
text: These repos work on main directly; don't auto-create branches unless the project requires it.
|