fix(audit): skip change-history entry for description checkbox toggles (PMS-349) #256
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/PMS-349-skip-audit-for-checkbox-toggles"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Implements PMS-349 (follow-up to PMS-348).
Problem
Toggling a rendered Markdown task-list checkbox rewrites the description with a flipped marker and PUTs it, so the server logged an "Updated Description" change-history entry for every check/uncheck - flooding the ticket/project history with noise.
Fix
A checklist toggle is a state change, not a content edit. New
audit::is_task_marker_only_change(old, new), built on the existingfield_changes(soHISTORY_NOISE_FIELDSstill applies), is true only when the sole meaningful change is adescriptionwhose old/new differ purely by GFM task-list marker flips ([ ]<->[x]). The ticket and project update services skipaudit_writewhen it holds. Any other field change, a non-marker text edit, or adding/clearing the description is audited as before.Verification
just check(cargo check + clippy + fmt + migration prefixes) passes; 5 new unit tests cover marker-only, text-edit, other-field, add/clear, and no-op cases.🤖 Generated with Claude Code