DV-19
Acceptance Criteria Not Updated After Scope Change
Discipline
Default severity: medium
ProcessMetricsQuality
What it detects
The issue description or summary was changed (indicating scope change) but the acceptance criteria field was not updated within the configured window — AC has become stale relative to the current scope. scope_change_events = changelog.filter(field IN \[\'description\',\'summary\'\], date > AC_last_updated)
Detection formula
IF COUNT(scope_change_events) > 0 AND (today - AC_last_updated) > config.discipline.ac_staleness_days // default: 3d after scope change THEN FLAG stale_acceptance_criteriaExamples in practice
- Assignee, field, hierarchy, or sprint hygiene rules are violated on active work.
- Issues miss mandatory fields or ownership while still in progress.
- A team shows the issue description or summary was changed (indicating scope change) but the acceptance criteria field was not updated within the configured window while ac staleness days is set to 3d after scope change.
Suggested response
Enforce assignee, field, hierarchy, and sprint hygiene rules your team agreed on.
Coaching playbook
Symptom
The issue description or summary was changed (indicating scope change) but the acceptance criteria field was not updated within the configured window — AC has become stale relative to the current scope. scope_change_events = changelog.filter(field IN \[\'description\',\'summary\'\], date > AC_last_updated)
Why it matters
When "Acceptance Criteria Not Updated After Scope Change" keeps appearing, the team is signalling a repeatable process gap. Left unexamined, the pattern hides where work really stalls and makes improvement metrics harder to trust.
What you can achieve
Enforce assignee, field, hierarchy, and sprint hygiene rules your team agreed on.
Facilitation questions
- What system change would stop "Acceptance Criteria Not Updated After Scope Change" from firing again?
- What do the cited issues have in common — same root cause or same workaround?
- Who owns the two-week experiment and how will we verify on the next import?
Run this rule against your own tracker data with Flow Analyzer.