Files
gh-levnikolaevich-claude-co…/skills/ln-312-task-replanner/diagram.html
2025-11-30 08:37:27 +08:00

128 lines
5.0 KiB
HTML

<!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>