UAT: Systematic missing ISSUES CLOSED: #N footer in commit messages — 18 of last 20 commits non-compliant #3892

Open
opened 2026-04-06 07:14:54 +00:00 by freemo · 0 comments
Owner

Summary

CONTRIBUTING.md §"Commit Message Format" requires every commit message body to include the footer:

ISSUES CLOSED: #N

where N is the issue number the commit addresses. This is a hard requirement, not optional. The spec states:

"The body should also include the issue reference footer (e.g., ISSUES CLOSED: #45)."

A review of the last 20 commits on master reveals that 18 of 20 commits are missing this footer. Only 2 commits are compliant.


Evidence

Compliant commits (2/20)

SHA Subject
ca3399e177 fix(acms): invoke SkeletonCompressor in ContextAssembler.assemble()... — has ISSUES CLOSED: #3563
62ded31c24 fix(cli): route 'agents actor add' through ActorRegistry.add()... — has ISSUES CLOSED: #3426

Non-compliant commits (18/20)

SHA Subject Footer present? Notes
3f4d984da6 docs(spec): add skeleton_fragments to AssembledContext... Uses Closes #3783 (wrong format)
2b22c9f40e docs(spec): document automatic checkpoint triggers... Uses Closes #3784 (wrong format)
7da29628a4 docs(timeline): update schedule adherence Day 96 No issue reference at all
e54818d5cb feat: enhance UAT tester with automatic documentation generation No issue reference at all
51cd94dcd5 Fix supervisor monitoring with unique naming tags No issue reference at all
5fbe4bd533 fix(agents): Add proper CI verification to ca-issue-worker... No issue reference at all
eb6c2469b1 docs: document ACMS real retrieval logic... No issue reference at all (merge commit)
1f64a274e3 docs: document ACMS real retrieval logic... No issue reference at all
36fb867830 fix(acms): invoke SkeletonCompressor... Uses Closes #3563 (wrong format, merge commit)
194c830f98 fix(ci): resolve repository push failure... Vague "Closes CI push failure issue" — no issue number
9dec3ead1b docs(development): add system watchdog architecture... No issue reference at all (merge commit)
67b105b8f5 chore(agents): improve ca-subtask-loop... Uses Closes #2443 (wrong format, merge commit)
201868afd8 fix(cli): route 'agents actor add'... Uses Closes #3426 (wrong format, merge commit)
99b4067ec2 fix(cli): extend agents diagnostics... Uses Closes #3422 (wrong format, merge commit)
234d71560d fix(executor): implement automatic per-tool-write... Uses Closes #3439 (wrong format, merge commit)
a15c626e9d docs: update specification — DomainBaseModel... Uses Closes #2440 (wrong format, merge commit)
f0e852680a chore(agents): improve product-builder... Uses Closes #2878 (wrong format, merge commit)
461adcdb2a fix(cli): correct automation-profile list... Uses Closes #2064 (wrong format, merge commit)

Root Cause Analysis

Two distinct failure patterns are observed:

  1. Wrong closing keyword format — Many commits use Closes #N or Fixes #N in the body. While these are valid Forgejo closing keywords for auto-closing issues, they do not satisfy the ISSUES CLOSED: #N footer requirement specified in CONTRIBUTING.md. The project requires the specific ISSUES CLOSED: prefix.

  2. No issue reference at all — Several commits (especially agent/tooling changes) have no issue reference in any form.

The pattern suggests that automated agents (ca-issue-worker, product-builder, etc.) are not consistently applying the ISSUES CLOSED: #N footer when creating commits. The merge commit messages in particular appear to be generated from PR descriptions that use Closes #N format rather than the required footer format.


Expected Behavior (per CONTRIBUTING.md)

Every commit message body must end with:

ISSUES CLOSED: #N

Example of a fully compliant commit:

fix(cli): add missing Origin panel in config get output

Adds the Origin panel, Overridden field, and Winner indicator to the
agents config get Rich output as required by the specification.

ISSUES CLOSED: #3458

Impact

  • Traceability: Without the ISSUES CLOSED: footer, automated changelog generation and issue-tracking tooling cannot reliably link commits to issues.
  • Compliance: 90% of recent commits violate this standard.
  • Systematic: The violation is not isolated — it affects the majority of commits, suggesting a process or tooling gap.

Steps to Reproduce

git log --oneline -20 | while read sha msg; do
  git show --format="%B" -s $sha | grep -q "ISSUES CLOSED:" || echo "MISSING: $sha $msg"
done

Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: ca-uat-tester

## Summary CONTRIBUTING.md §"Commit Message Format" requires every commit message body to include the footer: ``` ISSUES CLOSED: #N ``` where `N` is the issue number the commit addresses. This is a hard requirement, not optional. The spec states: > "The body should also include the issue reference footer (e.g., `ISSUES CLOSED: #45`)." A review of the last 20 commits on `master` reveals that **18 of 20 commits are missing this footer**. Only 2 commits are compliant. --- ## Evidence ### Compliant commits (2/20) | SHA | Subject | |-----|---------| | `ca3399e177` | `fix(acms): invoke SkeletonCompressor in ContextAssembler.assemble()...` — has `ISSUES CLOSED: #3563` ✅ | | `62ded31c24` | `fix(cli): route 'agents actor add' through ActorRegistry.add()...` — has `ISSUES CLOSED: #3426` ✅ | ### Non-compliant commits (18/20) | SHA | Subject | Footer present? | Notes | |-----|---------|----------------|-------| | `3f4d984da6` | `docs(spec): add skeleton_fragments to AssembledContext...` | ❌ | Uses `Closes #3783` (wrong format) | | `2b22c9f40e` | `docs(spec): document automatic checkpoint triggers...` | ❌ | Uses `Closes #3784` (wrong format) | | `7da29628a4` | `docs(timeline): update schedule adherence Day 96` | ❌ | No issue reference at all | | `e54818d5cb` | `feat: enhance UAT tester with automatic documentation generation` | ❌ | No issue reference at all | | `51cd94dcd5` | `Fix supervisor monitoring with unique naming tags` | ❌ | No issue reference at all | | `5fbe4bd533` | `fix(agents): Add proper CI verification to ca-issue-worker...` | ❌ | No issue reference at all | | `eb6c2469b1` | `docs: document ACMS real retrieval logic...` | ❌ | No issue reference at all (merge commit) | | `1f64a274e3` | `docs: document ACMS real retrieval logic...` | ❌ | No issue reference at all | | `36fb867830` | `fix(acms): invoke SkeletonCompressor...` | ❌ | Uses `Closes #3563` (wrong format, merge commit) | | `194c830f98` | `fix(ci): resolve repository push failure...` | ❌ | Vague "Closes CI push failure issue" — no issue number | | `9dec3ead1b` | `docs(development): add system watchdog architecture...` | ❌ | No issue reference at all (merge commit) | | `67b105b8f5` | `chore(agents): improve ca-subtask-loop...` | ❌ | Uses `Closes #2443` (wrong format, merge commit) | | `201868afd8` | `fix(cli): route 'agents actor add'...` | ❌ | Uses `Closes #3426` (wrong format, merge commit) | | `99b4067ec2` | `fix(cli): extend agents diagnostics...` | ❌ | Uses `Closes #3422` (wrong format, merge commit) | | `234d71560d` | `fix(executor): implement automatic per-tool-write...` | ❌ | Uses `Closes #3439` (wrong format, merge commit) | | `a15c626e9d` | `docs: update specification — DomainBaseModel...` | ❌ | Uses `Closes #2440` (wrong format, merge commit) | | `f0e852680a` | `chore(agents): improve product-builder...` | ❌ | Uses `Closes #2878` (wrong format, merge commit) | | `461adcdb2a` | `fix(cli): correct automation-profile list...` | ❌ | Uses `Closes #2064` (wrong format, merge commit) | --- ## Root Cause Analysis Two distinct failure patterns are observed: 1. **Wrong closing keyword format** — Many commits use `Closes #N` or `Fixes #N` in the body. While these are valid Forgejo closing keywords for auto-closing issues, they do **not** satisfy the `ISSUES CLOSED: #N` footer requirement specified in CONTRIBUTING.md. The project requires the specific `ISSUES CLOSED:` prefix. 2. **No issue reference at all** — Several commits (especially agent/tooling changes) have no issue reference in any form. The pattern suggests that automated agents (ca-issue-worker, product-builder, etc.) are not consistently applying the `ISSUES CLOSED: #N` footer when creating commits. The merge commit messages in particular appear to be generated from PR descriptions that use `Closes #N` format rather than the required footer format. --- ## Expected Behavior (per CONTRIBUTING.md) Every commit message body must end with: ``` ISSUES CLOSED: #N ``` Example of a fully compliant commit: ``` fix(cli): add missing Origin panel in config get output Adds the Origin panel, Overridden field, and Winner indicator to the agents config get Rich output as required by the specification. ISSUES CLOSED: #3458 ``` --- ## Impact - **Traceability**: Without the `ISSUES CLOSED:` footer, automated changelog generation and issue-tracking tooling cannot reliably link commits to issues. - **Compliance**: 90% of recent commits violate this standard. - **Systematic**: The violation is not isolated — it affects the majority of commits, suggesting a process or tooling gap. --- ## Steps to Reproduce ```bash git log --oneline -20 | while read sha msg; do git show --format="%B" -s $sha | grep -q "ISSUES CLOSED:" || echo "MISSING: $sha $msg" done ``` --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: ca-uat-tester
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#3892
No description provided.