Deep technical analysis of a GitHub issue for complexity assessment and implementation planning. Traces code paths, assesses design impact, finds related work. Use when the user wants to understand an issue before working on it.
Perform a deep technical analysis of a GitHub issue to assess its complexity, trace affected code paths, identify related work, and produce a detailed report that's useful both for prioritization and for later implementation.
$ARGUMENTS should be a GitHub issue number or URL. If missing, ask the user.
gh issue view <number> --json title,body,labels,commentsgh api graphql -f query='{ repository(owner:"boukeversteegh", name:"tractor") { issue(number:NUMBER) { parent { number title body } } } }'
subIssues field — they may share context or should be tackled together.gh issue list --state open --search "<keywords>" --json number,title- [ ] or - [x]) — each may need separate analysis#123 referencesBefore diving into code, try to reproduce the reported behavior using the actual tractor binary:
tractor --version to verify the installed binary is current. If it seems outdated, run task install to rebuild and install.tests/integration/ or create a small inline example.Hands-on reproduction is more reliable than reading code alone. A bug you can trigger is a bug you understand.
For each issue or sub-issue, trace the relevant code paths using direct tools (Grep, Glob, Read). Do not delegate to Agent subagents — use the tools directly so results stay in the main context and don't require per-command approval.
Key questions each exploration should answer:
When there are multiple independent sub-issues, interleave exploration using parallel tool calls (e.g., Grep + Read for different sub-issues in the same message).
For each issue/sub-issue, determine the size label based on these criteria:
size/S — Small:
size/M — Medium:
size/L — Large:
Important nuance: A feature that seems trivial to "bolt on" may be size/L if doing it properly requires isolating it as a factor that composes cleanly with everything else. Tractor is highly compositional — maintaining that property is the primary complexity driver. Conversely, writing complex code is usually NOT what makes something large — Claude handles that well. Complexity arises from design decisions with broad impact.
Search for related work across multiple sources, in parallel:
Grep and Glob in todo/ for related topicsGrep in docs/ for related architecture or design documentsGrep in specs/ for related specificationsgh issue list --state open --limit 50 --json number,title,labels — scan for related issuesgh pr list --state open --json number,title,labels — check for in-flight related workFor each related item found, note:
Write a detailed analysis to .issues/<number>-<slug>.md where <slug> is a short hyphenated description derived from the issue title.
# Analysis: <issue title>
**Issue:** #<number>
**Date:** <today>
**Overall size:** size/<S|M|L>
## Summary
<2-3 sentences: what the issue is about and the overall complexity assessment>
## Sub-issue analysis
### <sub-issue title or description>
**Size:** size/<S|M|L>
#### Problem
<What's wrong, traced through the code. Include file:line references.>
#### Current behavior
<What the code currently does and why. Not just "it's broken" but the actual execution path.>
#### Solution direction
<How this could be fixed. If there are multiple approaches, list them with trade-offs.
If this requires design decisions, call that out explicitly.>
#### Key code locations
- `path/to/file.rs:123` — <what this location does>
- `path/to/other.rs:456` — <what this location does>
#### Tests
<What's currently tested, what would need new tests.>
---
<repeat for each sub-issue>
## Related work
| Type | Reference | Relationship |
|------|-----------|-------------|
| Todo | `todo/20-glob-path-resolution.md` | Directly related — addresses same file resolution issues |
| Issue | #42 | Blocked by — needs the new config format first |
| Doc | `docs/design-file-resolver.md` | Proposes solution direction for the file scope redesign |
| PR | #85 | In-flight — touches same code paths |
## Suggested groupings
<Which sub-issues or related items should be tackled together and why.
Note any ordering dependencies.>
After writing the file, print a concise summary to the conversation: