You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
config: record learning M224 - squash commits before approval
Enhanced warn-unsquashed-approval.sh hook to also detect when in main
workspace with related commits that should be squashed (implementation
+ STATE.md update pairs).
Prevention: Hook now warns when presenting approval with unsquashed
related commits, even after merging to base branch.
Copy file name to clipboardExpand all lines: .claude/cat/retrospectives/mistakes.json
+26Lines changed: 26 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -2984,6 +2984,32 @@
2984
2984
"catches_variations": true
2985
2985
},
2986
2986
"correct_behavior": "Use inner_width - 2 - len(content) for padding calculation to ensure all box lines have consistent width"
2987
+
},
2988
+
{
2989
+
"id": "M224",
2990
+
"timestamp": "2026-01-24T12:00:00Z",
2991
+
"category": "protocol_violation",
2992
+
"description": "Presented approval gate with unsquashed commits - implementation and parent STATE.md update were separate commits instead of squashed together",
2993
+
"root_cause": "Merged to base branch then committed STATE.md update separately in main workspace, bypassing worktree commit squashing",
echo"{\"additionalContext\": \"⚠️ PRE-APPROVAL CHECK: RELATED COMMITS SHOULD BE SQUASHED (M224)\\n\\nFound separate commits that should be combined:\\n$(echo \"$LAST_TWO\"| sed 's/^/ /')\\n\\nThe implementation commit and STATE.md update should be in the SAME commit.\\nSquash these commits before approval.\"}"
0 commit comments