rob
|
72577bd30d
|
feat: Implement Phase 2 - AI-powered discussion automation
Complete implementation of the AI-enhanced automation system with 5 specialized agents:
## New Files
1. **automation/agents.py** (270 lines)
- Agent 1: normalize_discussion() - Extracts structured info from natural language
- Agent 2: track_questions() - Identifies questions and tracks answers (OPEN/PARTIAL/ANSWERED)
- Agent 3: track_action_items() - Manages TODO → ASSIGNED → DONE lifecycle
- Agent 4: track_decisions() - Logs ADR-style decisions with rationale
- extract_mentions() - Parses @Name and @all mentions (no API required)
- call_claude() - Anthropic API integration with JSON response parsing
2. **automation/summary.py** (289 lines)
- update_marker_block() - Non-destructive marker block updates
- format_votes_section() - Formats vote counts and participants
- format_questions_section() - Formats open/partial/answered questions
- format_action_items_section() - Formats TODO/ASSIGNED/DONE tasks
- format_decisions_section() - Formats ADR-style decisions
- format_awaiting_section() - Groups @mentions by target
- update_summary_file() - Orchestrates all section updates
3. **docs/AUTOMATION.md** (361 lines)
- Complete system documentation
- Phase 1 (basic) and Phase 2 (AI) explanations
- Conversation guidelines and markers
- Configuration and troubleshooting
## Enhanced Files
**automation/workflow.py** (enhanced to 349 lines, +132 lines)
- get_discussion_changes() - Git diff extraction for incremental processing
- update_summary_votes() - Marker block update for votes (Phase 1 fallback)
- process_discussion_with_ai() - Orchestrates all AI agents
- Enhanced _run_status() - Processes with AI when available, graceful fallback
- Dual import style for different execution contexts (pre-commit hook vs direct)
## Features
### Phase 1 (Always Enabled):
- ✅ Vote parsing and tracking (READY/CHANGES/REJECT)
- ✅ Latest vote per participant logic
- ✅ Summary file auto-update and staging
- ✅ Non-blocking git hook integration
### Phase 2 (Optional, requires ANTHROPIC_API_KEY):
- ✅ @Mention extraction and tracking
- ✅ Question identification and status tracking
- ✅ Action item lifecycle management
- ✅ Decision logging with rationale (ADR-style)
- ✅ Incremental processing via git diff
- ✅ Graceful degradation when API unavailable
## Architecture
- Modular design with separate concerns (agents, summary, workflow)
- Non-blocking operation (always exits 0)
- Dual-phase capability (basic + AI-enhanced)
- Graceful fallbacks at every level
- Comprehensive error handling
## Testing
- All 11 existing tests passing
- End-to-end testing in /tmp/cdev-test-phase2a confirmed:
- Vote tracking works correctly
- @Mentions extracted and grouped by target
- Summary files updated non-destructively
- Auto-staging of updated summaries
- Pre-commit hook integration functional
## Documentation
- AUTOMATION.md covers architecture, usage, and troubleshooting
- Code comments explain complex logic
- Example formats provided for all features
- Configuration and setup instructions included
This completes the Phase 2 automation milestone, providing a sophisticated
AI-powered discussion summarization system while maintaining full backward
compatibility with basic vote-only mode.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-30 18:12:48 -03:00 |