Files
leo-claude-mktplace/plugins/projman/skills/input-detection.md
lmiranda 16acc0609e feat(projman): add RFC system for feature tracking
Implement wiki-based Request for Comments system for capturing,
reviewing, and tracking feature ideas through their lifecycle.

New commands:
- /rfc-create: Create RFC from conversation or clarified spec
- /rfc-list: List RFCs grouped by status
- /rfc-review: Submit Draft RFC for review
- /rfc-approve: Approve RFC for sprint planning
- /rfc-reject: Reject RFC with documented reason

RFC lifecycle: Draft → Review → Approved → Implementing → Implemented

Integration:
- /sprint-plan detects approved RFCs and offers selection
- /sprint-close updates RFC status on completion
- clarity-assist suggests /rfc-create for feature ideas

New MCP tool: allocate_rfc_number

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 12:38:02 -05:00

160 lines
3.6 KiB
Markdown

---
name: input-detection
description: Detect planning input source (RFC, file, wiki, or conversation)
---
# Input Source Detection
## Purpose
Defines how to detect where planning input is coming from and how to handle each source.
## When to Use
- **Planner agent**: At start of sprint planning
- **Commands**: `/sprint-plan`
---
## Detection Priority
| Priority | Source | Detection | Action |
|----------|--------|-----------|--------|
| 0 | Approved RFC | RFC-Index has entries in "Approved" section | Offer RFC selection or new work |
| 1 | Local file | `docs/changes/*.md` exists | Parse frontmatter, migrate to wiki, delete local |
| 2 | Existing wiki | `Change VXX.X.X: Proposal` exists | Use as-is, create implementation page |
| 3 | Conversation | Neither exists | Create wiki from discussion context |
---
## RFC Detection (Priority 0)
Before checking for local files or wiki proposals, check for approved RFCs.
### Detection Steps
1. **Fetch RFC-Index:**
```python
get_wiki_page(page_name="RFC-Index", repo="org/repo")
```
2. **Parse Approved Section:**
- Find "## Approved" section
- Extract RFC entries from table
3. **If Approved RFCs Exist:**
```
Approved RFCs available for implementation:
| RFC | Title | Champion |
|-----|-------|----------|
| RFC-0003 | Feature X | @user |
| RFC-0007 | Enhancement Y | @user |
Options:
[1] Implement RFC-0003: Feature X
[2] Implement RFC-0007: Enhancement Y
[3] Describe new work (skip RFCs)
Select an option:
```
4. **If RFC Selected:**
- Use RFC content as planning input
- Status will transition to Implementing after planning approval
- Skip local file and wiki proposal detection
5. **If "New Work" Selected:**
- Continue with normal Priority 1-3 detection
- Optionally offer: "Would you like to create an RFC first? (y/n)"
---
## Local File Format
```yaml
---
version: "4.1.0" # or "sprint-17" for internal work
title: "Feature Name"
plugin: plugin-name # optional
type: feature # feature | bugfix | refactor | infra
---
# Feature Description
[Free-form content...]
```
---
## Detection Steps
1. **Check for local files:**
```bash
ls docs/changes/*.md
```
2. **Check for existing wiki proposal:**
```python
list_wiki_pages(repo="org/repo")
# Filter for "Change V" prefix matching version
```
3. **If neither found:** Use conversation context
4. **If multiple sources found:** Ask user which to use
---
## Report to User
```
Input source detected:
✓ Found: docs/changes/v4.1.0-wiki-planning.md
- Version: 4.1.0
- Title: Wiki-Based Planning Workflow
- Type: feature
I'll use this as the planning input. Proceed? (y/n)
```
---
## Migration Flow (Local File → Wiki)
When using local file as input:
1. **Parse frontmatter** to extract metadata
2. **Create wiki proposal page:** `Change V4.1.0: Proposal`
3. **Create implementation page:** `Change V4.1.0: Proposal (Implementation 1)`
4. **Delete local file** - wiki is now source of truth
```
Migration complete:
✓ Created: "Change V4.1.0: Proposal" (wiki)
✓ Created: "Change V4.1.0: Proposal (Implementation 1)" (wiki)
✓ Deleted: docs/changes/v4.1.0-wiki-planning.md (migrated)
```
---
## Ambiguous Input Handling
If multiple valid sources found:
```
Multiple input sources detected:
1. Local file: docs/changes/v4.1.0-feature.md
- Version: 4.1.0
- Title: New Feature
2. Wiki proposal: Change V4.1.0: Proposal
- Status: In Progress
- Date: 2026-01-20
Which should I use for planning?
[1] Local file (will migrate to wiki)
[2] Existing wiki proposal
[3] Start fresh from conversation
```