Initial commit
This commit is contained in:
127
skills/ln-312-task-replanner/diagram.html
Normal file
127
skills/ln-312-task-replanner/diagram.html
Normal file
@@ -0,0 +1,127 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>ln-312-task-replanner - Universal Replanner</title>
|
||||
<script src="https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.min.js"></script>
|
||||
<link rel="stylesheet" href="../shared/css/diagram.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<header>
|
||||
<h1>ln-312-task-replanner</h1>
|
||||
<p class="subtitle">Universal Replanner - Worker v1.0.0</p>
|
||||
</header>
|
||||
<div class="info-box">
|
||||
<h2>Overview</h2>
|
||||
<ul>
|
||||
<li><strong>Purpose:</strong> Universal replanner worker for updating existing tasks when Story requirements change</li>
|
||||
<li><strong>Pattern:</strong> Worker v1.0.0 - Invoked by orchestrator (x-task-manager) via Skill tool with taskType parameter</li>
|
||||
<li><strong>Templates:</strong>
|
||||
<ul>
|
||||
<li><code>implementation</code> → task_template_implementation.md (7 sections)</li>
|
||||
<li><code>refactoring</code> → refactoring_task_template.md (7 sections)</li>
|
||||
<li><code>test</code> → test_task_template.md (11 sections)</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><strong>Comparison Logic:</strong> Match tasks by goal/purpose, categorize changes</li>
|
||||
<li><strong>Input:</strong> IDEAL plan + existing task IDs from orchestrator</li>
|
||||
<li><strong>Output:</strong> Operations summary + diffs + URLs → return to orchestrator</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="info-box">
|
||||
<h2>Operation Categories</h2>
|
||||
|
||||
<div class="operation-box">
|
||||
<h3>🟢 KEEP</h3>
|
||||
<p>Goals match, no changes needed → Task unchanged</p>
|
||||
</div>
|
||||
|
||||
<div class="operation-box">
|
||||
<h3>🟡 UPDATE</h3>
|
||||
<p>Goals match, but AC/approach changed → Modify description with type-specific validation</p>
|
||||
</div>
|
||||
|
||||
<div class="operation-box">
|
||||
<h3>🔴 OBSOLETE</h3>
|
||||
<p>No match in IDEAL (feature removed) → Cancel task in Linear + add comment</p>
|
||||
</div>
|
||||
|
||||
<div class="operation-box">
|
||||
<h3>🔵 CREATE</h3>
|
||||
<p>In IDEAL but no existing match → New task needed with type-specific validation</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="diagram-container">
|
||||
<div class="mermaid">
|
||||
graph TD
|
||||
Start([Invoked by orchestrator<br/>taskType parameter]) --> SelectTemplate{Select Template<br/>by taskType}
|
||||
|
||||
SelectTemplate -->|implementation| T1[task_template_implementation.md<br/>7 sections]
|
||||
SelectTemplate -->|refactoring| T2[refactoring_task_template.md<br/>7 sections]
|
||||
SelectTemplate -->|test| T3[test_task_template.md<br/>11 sections]
|
||||
|
||||
T1 --> Phase1
|
||||
T2 --> Phase1
|
||||
T3 --> Phase1
|
||||
|
||||
Phase1[Phase 1: Load Existing Tasks<br/>Full descriptions from Linear<br/>Parse sections by template]
|
||||
|
||||
Phase1 --> Phase2[Phase 2: Compare IDEAL vs Existing<br/>Match by goal<br/>Categorize operations]
|
||||
|
||||
Phase2 --> Categorize{Determine operations}
|
||||
Categorize -->|Goals match<br/>No changes| KEEP[KEEP:<br/>Task unchanged]
|
||||
Categorize -->|Goals match<br/>AC/approach changed| UPDATE[UPDATE:<br/>Modify description]
|
||||
Categorize -->|No match in IDEAL<br/>Feature removed| OBSOLETE[OBSOLETE:<br/>Cancel task]
|
||||
Categorize -->|In IDEAL<br/>No existing match| CREATE[CREATE:<br/>New task needed]
|
||||
|
||||
KEEP --> Phase3[Phase 3: Show Operations Summary<br/>+ Diffs for UPDATE<br/>+ Warnings for edge cases]
|
||||
UPDATE --> Phase3
|
||||
OBSOLETE --> Phase3
|
||||
CREATE --> Phase3
|
||||
|
||||
Phase3 --> Phase4{Phase 4: User Confirmation}
|
||||
Phase4 -->|"confirm"| Phase5[Phase 5: Execute Operations]
|
||||
Phase4 -->|Other input| Abort([Abort: Return to orchestrator])
|
||||
|
||||
Phase5 --> Step1[Step 1: UPDATE tasks<br/>Type-specific validation]
|
||||
Step1 --> Step2[Step 2: OBSOLETE tasks<br/>Cancel in Linear<br/>Add comments]
|
||||
Step2 --> Step3[Step 3: CREATE tasks<br/>Generate + create<br/>Type-specific validation]
|
||||
Step3 --> Step4[Step 4: Update kanban_board.md<br/>Remove canceled<br/>Add new tasks]
|
||||
Step4 --> Success([SUCCESS<br/>Return operations summary<br/>+ URLs + warnings])
|
||||
|
||||
style Start fill:#e1f5fe
|
||||
style Success fill:#c8e6c9
|
||||
style Abort fill:#fff9c4
|
||||
style SelectTemplate fill:#e1bee7
|
||||
style T1 fill:#c8e6c9
|
||||
style T2 fill:#fff3e0
|
||||
style T3 fill:#ffcdd2
|
||||
style KEEP fill:#c8e6c9
|
||||
style UPDATE fill:#fff3e0
|
||||
style OBSOLETE fill:#ffcdd2
|
||||
style CREATE fill:#e1bee7
|
||||
style Categorize fill:#fff3e0
|
||||
style Phase4 fill:#fff3e0
|
||||
</div>
|
||||
</div>
|
||||
<footer>
|
||||
<p>ln-312-task-replanner v1.0.0 | Universal Replanner Pattern | Mermaid.js</p>
|
||||
</footer>
|
||||
</div>
|
||||
<script>
|
||||
mermaid.initialize({
|
||||
startOnLoad: true,
|
||||
theme: 'default',
|
||||
flowchart: {
|
||||
useMaxWidth: true,
|
||||
htmlLabels: true,
|
||||
curve: 'basis'
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user