# Commit
+The procedure applies to normal repository commits, including code and
+documentation commits. Each must use the configured signing key.
+Internal git-bug commits for issues, comments, status changes, and other
+tracker metadata are exempt from signing and may be unsigned. This
+exception does not permit unsigned code or documentation commits.
+
## Procedure
1. Confirm that the configured signing key is available. If signing is
unavailable or fails, stop and report the problem. Never disable
signing, bypass it with a command or configuration override, or
- create an unsigned commit.
+ create an unsigned normal repository commit.
2. Do the `check` skill. All checks must pass before you commit.
3. Stage only the files that belong to this change. Keep unrelated
changes in separate commits.
the configured key, using `git commit -S -F MESSAGE_FILE` on the same
file. Do not add or change trailers after the check. The normal
commit hook still runs. Never skip it with `--no-verify`.
-6. Cryptographically verify each new commit's signature against the
- configured key before reporting completion. A signature header alone
- is not verification. If verification fails, stop and report it. Do
- not claim completion or publish the commit.
+6. Cryptographically verify each new normal commit's signature against
+ the configured key before reporting completion. A signature header
+ alone is not verification. If verification fails, stop and report it.
+ Do not claim completion or publish the commit.
## Size
Issues live in git-bug, inside the Git repository, not in files. The
`overview` issue lists the phases and the open decisions. Run the
-commands in the Nix development shell.
+commands in the Nix development shell. Internal git-bug tracker metadata
+commits may be unsigned, as the `commit` skill permits. Normal code and
+documentation commits still require signing and verification.
## Read