ics-simlab-config-gen-claude/.claude/commands/5_save_progress.md

4.3 KiB

Save Progress

You are tasked with creating a comprehensive progress checkpoint when the user needs to pause work on a feature.

When to Use This Command

Invoke this when:

  • User needs to stop mid-implementation
  • Switching to another task/feature
  • End of work session
  • Before a break or context switch

Process

Step 1: Assess Current State

  1. Review conversation history to understand what was being worked on
  2. Check git status for uncommitted changes
  3. Identify the active plan if one exists
  4. Review todo list for current tasks

Step 2: Save Code Progress

  1. Commit meaningful work:

    git status
    git diff
    # Create WIP commit if appropriate
    git add [specific files]
    git commit -m "WIP: [Feature] - [Current state]"
    
  2. Note uncommitted changes:

    • List files with unsaved changes
    • Explain why they weren't committed
    • Document what needs to be done

Step 3: Update Plan Document

If working from a plan, update it with:

## Progress Checkpoint - [Date Time]

### Work Completed This Session
- [x] Specific task completed
- [x] Another completed item
- [ ] Partially complete task (50% done)

### Current State
- **Active File**: `path/to/file.js:123`
- **Current Task**: [What you were doing]
- **Blockers**: [Any issues encountered]

### Local Changes
- Modified: `file1.js` - Added validation logic
- Modified: `file2.py` - Partial refactor
- Untracked: `test.tmp` - Temporary test file

### Next Steps
1. [Immediate next action]
2. [Following task]
3. [Subsequent work]

### Context Notes
- [Important discovery or decision]
- [Gotcha to remember]
- [Dependency to check]

### Commands to Resume
```bash
# To continue exactly where we left off:
cd /path/to/repo
git status
/4_implement_plan thoughts/shared/plans/feature.md

### Step 4: Create Session Summary

Check existing session files to determine next sequence number, then save to `thoughts/shared/sessions/NNN_feature.md` where NNN is a 3-digit sequential number (001, 002, etc.):

```markdown
---
date: [ISO timestamp]
feature: [Feature name]
plan: thoughts/shared/plans/[plan].md
research: thoughts/shared/research/[research].md
status: in_progress
last_commit: [git hash]
---

# Session Summary: [Feature Name]

## Session Duration
- Started: [timestamp]
- Ended: [timestamp]
- Duration: [X hours Y minutes]

## Objectives
- [What we set out to do]

## Accomplishments
- [What was actually completed]
- [Problems solved]
- [Code written]

## Discoveries
- [Important findings]
- [Patterns identified]
- [Issues uncovered]

## Decisions Made
- [Architecture choices]
- [Implementation decisions]
- [Trade-offs accepted]

## Open Questions
- [Unresolved issues]
- [Needs investigation]
- [Requires team input]

## File Changes
```bash
# Git diff summary
git diff --stat HEAD~N..HEAD

Test Status

  • Unit tests passing
  • Integration tests passing
  • Manual testing completed

Ready to Resume

To continue this work:

  1. Read this session summary
  2. Check plan: [plan path]
  3. Review research: [research path]
  4. Continue with: [specific next action]

Additional Context

[Any other important information for resuming]


### Step 5: Clean Up

1. **Commit all meaningful changes**:
   ```bash
   # Review all changes one more time
   git status
   git diff

   # Commit any remaining work
   git add .
   git commit -m "WIP: [Feature] - Save progress checkpoint"
   # Document commit hash in session summary
  1. Update todo list to reflect saved state

  2. Present summary to user:

    ✅ Progress saved successfully!
    
    📁 Session summary: thoughts/shared/sessions/[...]
    📋 Plan updated: thoughts/shared/plans/[...]
    💾 Commits created: [list]
    
    To resume: /6_resume_work thoughts/shared/sessions/[...]
    

Important Guidelines

  • Always commit meaningful work - Don't leave important changes uncommitted
  • Be specific in notes - Future you needs clear context
  • Include commands - Make resuming as easy as copy-paste
  • Document blockers - Explain why work stopped
  • Reference everything - Link to plans, research, commits
  • Test status matters - Note if tests are failing

Integration with Framework

This command works with:

  • /4_implement_plan - Updates plan progress
  • /6_resume_work - Paired resume command
  • /3_validate_plan - Can validate partial progress