Parent tracker: #62
Spec: docs/superpowers/specs/2026-05-21-edge-case-hardening-design.md
Milestone: P4
Goal
Fire a finding when a password-change handler is detected but no evidence of global session invalidation, refresh-family revocation, or token-version bump is linked.
Acceptance criteria
New check IDs
password_change_global_revocation_absent_review
Files touched
crates/sessionscope-classifier/src/lifecycle.rs
Fixture expectations
Audit-then-decide
- Category:
lifecycle_gap, severity medium.
- Feed into the consolidated P4.8 audit.
Doc-update checklist
Parent tracker: #62
Spec:
docs/superpowers/specs/2026-05-21-edge-case-hardening-design.mdMilestone: P4
Goal
Fire a finding when a password-change handler is detected but no evidence of global session invalidation, refresh-family revocation, or token-version bump is linked.
Acceptance criteria
password_change_global_revocation_absent_reviewfires when:revokeAllSessions,bumpTokenVersion,delete refresh_tokens where user_id,cycle_keycascade) is linked in the same scopedjango/password-change-refresh-revokefixture should remain a positive case after this issue lands.New check IDs
password_change_global_revocation_absent_reviewFiles touched
crates/sessionscope-classifier/src/lifecycle.rsFixture expectations
Audit-then-decide
lifecycle_gap, severitymedium.Doc-update checklist
docs/USAGE.mdcheck catalog.docs/COVERAGE_MATRIX.mdrow.CHANGELOG.mdunreleased entry.