WIP almost done with track planning
This commit is contained in:
9
conductor/tracks/manual_block_control_20260306/index.md
Normal file
9
conductor/tracks/manual_block_control_20260306/index.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# Manual Block/Unblock Control
|
||||
|
||||
**Track ID:** manual_block_control_20260306
|
||||
|
||||
**Status:** Planned
|
||||
|
||||
**See Also:**
|
||||
- [Spec](./spec.md)
|
||||
- [Plan](./plan.md)
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"id": "manual_block_control_20260306",
|
||||
"name": "Manual Block/Unblock Control",
|
||||
"status": "planned",
|
||||
"created_at": "2026-03-06T00:00:00Z",
|
||||
"updated_at": "2026-03-06T00:00:00Z",
|
||||
"type": "feature",
|
||||
"priority": "medium"
|
||||
}
|
||||
@@ -1,16 +1,32 @@
|
||||
# Implementation Plan: Manual Block/Unblock Control (manual_block_control)
|
||||
# Implementation Plan: Manual Block/Unblock Control (manual_block_control_20260306)
|
||||
|
||||
## Phase 1: Research & Design
|
||||
- [ ] Task: Analyze existing backend implementation
|
||||
- [ ] Task: Design GUI/UX approach
|
||||
- [ ] Task: Conductor - User Manual Verification
|
||||
## Phase 1: Block Mechanism
|
||||
- [ ] Task: Initialize MMA Environment
|
||||
- [ ] Task: Add manual block field
|
||||
- WHERE: src/models.py
|
||||
- WHAT: Add manual_block_reason to Ticket
|
||||
- HOW: Optional[str]
|
||||
- [ ] Task: Add block/unblock methods
|
||||
- WHERE: src/models.py
|
||||
- WHAT: mark_blocked, mark_unblocked
|
||||
- HOW: Set/unset flag
|
||||
|
||||
## Phase 2: Implementation
|
||||
- [ ] Task: Implement feature
|
||||
- [ ] Task: Write tests
|
||||
- [ ] Task: Conductor - User Manual Verification
|
||||
## Phase 2: UI Controls
|
||||
- [ ] Task: Add block button
|
||||
- WHERE: src/gui_2.py
|
||||
- WHAT: Block selected ticket
|
||||
- HOW: Button with input
|
||||
- [ ] Task: Add unblock button
|
||||
- WHERE: src/gui_2.py
|
||||
- WHAT: Remove block
|
||||
- HOW: Button
|
||||
|
||||
## Phase 3: Verification
|
||||
- [ ] Task: Run test suite
|
||||
- [ ] Task: Verify coverage
|
||||
- [ ] Task: Conductor - Phase Completion Verification
|
||||
## Phase 3: Visualization
|
||||
- [ ] Task: Show block status
|
||||
- WHERE: src/gui_2.py
|
||||
- WHAT: Visual indicator for blocked
|
||||
- HOW: Different color/icon
|
||||
|
||||
## Phase 4: Verification
|
||||
- [ ] Test block/unblock
|
||||
- [ ] Conductor - Phase Verification
|
||||
|
||||
@@ -1,26 +1,21 @@
|
||||
# Track Specification: Manual Block/Unblock Control
|
||||
# Track Specification: Manual Block/Unblock Control (manual_block_control_20260306)
|
||||
|
||||
## Overview
|
||||
Manually block/unblock tickets with custom reasons.
|
||||
Allow user to manually block or unblock tickets with custom reasons. Currently blocked tickets rely on dependency resolution; add manual override.
|
||||
|
||||
## Current State Audit
|
||||
### Already Implemented
|
||||
- Ticket blocked status
|
||||
- Dependency-based blocking
|
||||
|
||||
### Gaps to Fill
|
||||
- No manual override
|
||||
- No custom reasons
|
||||
|
||||
## Goals
|
||||
- Manual block with reason
|
||||
- Unblock button
|
||||
- Block reason display
|
||||
## Architectural Constraints
|
||||
- **Clear Indication**: Manual blocks MUST be visually distinct.
|
||||
- **Audit Trail**: Block reason MUST be logged.
|
||||
|
||||
## Functional Requirements
|
||||
- Block/unblock actions
|
||||
- Reason field
|
||||
- Visual blocked indicator
|
||||
- **Block Button**: Manually block selected ticket.
|
||||
- **Unblock Button**: Remove manual block.
|
||||
- **Reason Field**: Enter custom block reason.
|
||||
- **Visual Indicator**: Blocked tickets clearly marked.
|
||||
|
||||
## Non-Functional Requirements
|
||||
- Clear block indication
|
||||
## Acceptance Criteria
|
||||
- [ ] Block button works.
|
||||
- [ ] Unblock button works.
|
||||
- [ ] Reason field saves.
|
||||
- [ ] Visual indicator shows blocked status.
|
||||
- [ ] Reason displayed in UI.
|
||||
|
||||
Reference in New Issue
Block a user