Skip to content

feat: implement resume functionality for incomplete analysis runs#29

Open
poiley wants to merge 3 commits into
mainfrom
feat/resume-incomplete-analysis
Open

feat: implement resume functionality for incomplete analysis runs#29
poiley wants to merge 3 commits into
mainfrom
feat/resume-incomplete-analysis

Conversation

@poiley

@poiley poiley commented Aug 20, 2025

Copy link
Copy Markdown
Contributor

Summary

  • Implements resume functionality for incomplete analysis runs as requested in Bug: Allow continuation upon rulectl start failure #27
  • Adds automatic detection of interrupted analysis with user-friendly warning prompts
  • Provides --continue flag for automated resume without prompting
  • Supports resuming from any interrupted pipeline phase with full progress tracking

Features

  • Resume Detection: Automatically detects incomplete analysis on startup
  • Interactive Prompts: Shows detailed session info and asks user to continue
  • Automatic Mode: --continue flag bypasses prompts for automation
  • Progress Preservation: Resumes from exact point of interruption
  • Cross-Platform: Works on Windows, Linux, and macOS
  • Smart Recovery: Auto-detects failed phase and resumes accordingly

Technical Implementation

  • New AnalysisStateManager class for state persistence
  • Phase-based pipeline with resumable checkpoints
  • Atomic file operations for crash safety
  • Comprehensive cache validation
  • Progress tracking every 10 files during analysis

Test Plan

  • Manual testing of state management functionality
  • CLI flag integration and help text
  • Cross-platform path handling
  • Resume detection and validation logic
  • Documentation and examples

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

@poiley

poiley commented Aug 21, 2025

Copy link
Copy Markdown
Contributor Author

I recommended merging the following PRs, rebasing this branch, and moving documentation to docs/ before merging this PR.

@poiley poiley force-pushed the feat/resume-incomplete-analysis branch from 48ab6b7 to e5b4ab6 Compare September 2, 2025 21:38
poiley and others added 3 commits September 2, 2025 18:45
- Add comprehensive state tracking system with AnalysisStateManager
- Implement --continue flag for automatic resume without prompting
- Add interactive warning prompt when incomplete analysis detected
- Support resuming from any interrupted pipeline phase
- Add progress tracking and cache validation
- Include cross-platform support for Windows, Linux, macOS
- Add comprehensive documentation in RESUME_ANALYSIS.md

Resolves #27

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Add unit tests for analysis phases and state manager
- Add integration tests for CLI resume features
- Add analyzer integration tests with state management
- Add end-to-end tests for resume scenarios
- Test edge cases: corrupted files, missing cache, concurrent access
- Add test documentation in tests/README.md
- Mock BAML dependencies for test isolation
@poiley poiley force-pushed the feat/resume-incomplete-analysis branch from e5b4ab6 to 6428ecc Compare September 3, 2025 01:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant