Edge Case & Exception Handling (Authoritative)¶
Applies to all Tinggit products managed in Redmine
Defines how non-standard, urgent, or exceptional situations are handled without corrupting sprint or release data
- Table of contents
- Edge Case & Exception Handling (Authoritative)
- 1. Purpose
- 2. Scope
- 3. Governing Principles (Non-Negotiable)
- 4. Exception Categories
- 5. Production Hotfix (Outside Sprint)
- 6. Emergency Fix During an Active Sprint
- 7. Hotfix With Planned Sprint Follow-Up
- 8. Rollback Release
- 9. Partial Release
- 10. Compliance-Driven Exceptions
- 11. Documentation & Audit Trail (Mandatory)
- 12. Common Anti-Patterns (Strictly Forbidden)
- 13. Relationship to Other Processes
- 14. Final Statement
1. Purpose¶
This document defines how Tinggit handles exceptions such as:
- Production hotfixes
- Emergency fixes
- Rollback releases
- Partial releases
- Mid-sprint interruptions
- Compliance-driven urgent work
The goal is to ensure that exception handling never damages:
- Sprint metrics
- Release traceability
- Audit history
- Product credibility
bq. Exceptions must be controlled — not improvised.
2. Scope¶
This process applies to:
- All products under the Tinggit Platform
- All teams (Product, Engineering, QA, DevOps)
- All work that cannot follow the normal Sprint → Release flow
3. Governing Principles (Non-Negotiable)¶
1. Sprint data must never be rewritten
2. Release history must remain immutable
3. Emergency does not justify process corruption
4. Every exception must leave an audit trail
5. Sprint and Release must never coexist on the same issue
4. Exception Categories¶
All exceptions fall into one of the following categories:
| Category | Description |
|---|---|
| Production Hotfix | Immediate fix required in production |
| Emergency Fix | Urgent work threatening stability or compliance |
| Rollback | Reverting a released change |
| Partial Release | Releasing subset of planned scope |
| Sprint Interruption | Emergency work during an active sprint |
| Compliance Exception | Regulatory or legal urgency |
Each category has explicit handling rules below.
5. Production Hotfix (Outside Sprint)¶
5.1 Scenario¶
- Critical production bug
- Customer impact is active
- Cannot wait for next sprint
5.2 Correct Handling (MANDATORY)¶
Issue Creation
| *. Field | *. Value |
| Tracker | Bug |
| Work Type | Bug Fix |
| Status | In Progress |
| Sprint Version | Not set |
| Release Version | Release X.Y.Z – Hotfix |
- No Sprint Version is ever assigned
- A new patch Release Version is always created
5.3 After Fix¶
- Status → Done
- Deployment Reference URL added
- Status → Closed
- Release Version marked Closed
5.4 Why This Works¶
- Sprint metrics remain clean
- Release history remains truthful
- Audit trail is preserved
- Emergency response is fast but controlled
bq. Never backfill hotfixes into a sprint.
6. Emergency Fix During an Active Sprint¶
6.1 Scenario¶
- Critical issue discovered mid-sprint
- Work is unrelated to Sprint Goal
6.2 Correct Handling¶
- Create a new Bug issue
- Do NOT assign Sprint Version
- Handle as: * Production Hotfix, or * Emergency Fix release
Sprint work continues uninterrupted unless PO explicitly re-evaluates the Sprint Goal.
6.3 Sprint Protection Rule¶
Sprint scope must not silently expand.
If emergency work threatens the Sprint Goal:- Product Owner decides
- Sprint Goal may be revised
- Decision must be documented in Sprint Wiki
7. Hotfix With Planned Sprint Follow-Up¶
7.1 Scenario¶
- Quick patch now
- Proper fix needed later
7.2 Correct Handling¶
1. Immediate Hotfix
* Release Version only
* Minimal scope
2. Follow-up Work
* New Story
* Work Type = Tech Debt or Platform Improvement
* Planned through normal backlog and sprint
This separates urgency from correctness.
8. Rollback Release¶
8.1 Scenario¶
- Release deployed
- Issues require rollback
8.2 Correct Handling¶
- Do NOT reopen completed issues
- Do NOT edit past release scope
- Create new Bug issues
- Assign new Release Version:
Release X.Y.Z – Rollback Fix
8.3 Why This Is Mandatory¶
- History remains immutable
- Rollback is recorded as a new event
- Auditors can see cause and response clearly
9. Partial Release¶
9.1 Scenario¶
- Some items ready
- Others delayed or blocked
9.2 Correct Handling¶
- Release Version includes only: * Accepted * Deployed items
- Delayed items: * Do NOT receive Release Version * Return to backlog or next sprint
9.3 Outcome¶
- Honest release notes
- Clear customer communication
- No ambiguity about delivered value
10. Compliance-Driven Exceptions¶
10.1 Scenario¶
- Regulatory or legal requirement
- Time-bound obligation (e.g., HIPAA)
10.2 Correct Handling¶
- Product & Compliance jointly approve urgency
- Issue is created with: * Clear compliance reference * Explicit audit notes
- Handled via: * Emergency Release, or * Dedicated Sprint (if time allows)
Compliance urgency does not bypass traceability.
11. Documentation & Audit Trail (Mandatory)¶
Every exception must leave behind:
- A clearly classified issue
- A Release Version (if deployed)
- Deployment reference URL
- Comments explaining why exception occurred
- Links to affected sprint or release (if relevant)
12. Common Anti-Patterns (Strictly Forbidden)¶
The following are not allowed:
- Adding hotfixes into completed sprints
- Editing historical sprint data
- Reusing release versions
- Hiding emergency work inside sprint tasks
- Treating rollbacks as “non-events”
Violations must be escalated.
13. Relationship to Other Processes¶
This page complements:
It overrides none of them — it protects them.
14. Final Statement¶
Exceptions are inevitable.
Chaos is optional.
By following this Edge Case & Exception Handling process, Tinggit ensures:
- Fast response to emergencies
- Clean sprint and release data
- Audit-ready history
- Trust across teams and stakeholders
This page is the single authority for all exception handling.
Updated by Redmine Admin about 2 months ago · 1 revisions