Mid-session verification of progress toward session goals. Validates build, checks uncommitted changes, and assesses goal completion. Use periodically during long sessions.
Provides mid-session verification of progress toward session goals. Use during long sessions to ensure you're on track.
Execution: Runs in forked context with Explore agent (read-only analysis).
# Find current session in SESSION_LOG.md
SESSION_ENTRY=$(grep -A 50 "^## Session [0-9]\+\.[0-9]\+ - " SESSION_LOG.md | head -60)
# Extract goals
GOALS=$(echo "$SESSION_ENTRY" | grep -A 10 "### Session Goals" | grep "^[0-9]\.")
# Quick build check
xcodebuild -scheme VitalArc -destination 'platform=iOS Simulator,name=iPhone 17 Pro' build 2>&1 | grep -E "(BUILD SUCCEEDED|BUILD FAILED|error:)"
# Get changed files
git status --short
# Get diff summary
git diff --stat
# Count work log entries for current session
WORK_ENTRIES=$(echo "$SESSION_ENTRY" | grep -c "^|.*|.*|.*|$")
// Get task status
const tasks = await TaskList()
const completed = tasks.filter(t => t.status === "completed").length
const inProgress = tasks.filter(t => t.status === "in_progress").length
const pending = tasks.filter(t => t.status === "pending").length
## Session Checkpoint
**Session**: 17.0 - February 1, 2026
**Duration**: 1h 45m (started 2:30 PM)
**Focus**: Workout feature
---
### Goal Progress
| # | Goal | Status | Notes |
|---|------|--------|-------|
| 1 | Implement set logging | In Progress | Core logic done, UI pending |
| 2 | Add volume calculations | Complete | Verified with tests |
| 3 | Add mesocycle progression | Not Started | Blocked on design review |
**Overall**: 1/3 goals complete (33%)
---
### Build Status
**Current**: Passing
**Last verified**: 10 minutes ago
---
### Uncommitted Changes
**Files**: 8 modified, 2 new
**Lines**: +450, -32
| Status | File | Notes |
|--------|------|-------|
| M | WorkoutLogView.swift | Main UI |
| M | WorkoutLogViewModel.swift | State management |
| M | LogSetUseCase.swift | Business logic |
| A | ExercisePickerView.swift | New view |
| A | ExercisePickerViewModel.swift | New ViewModel |
---
### Work Log Summary
**Entries**: 5 since session start
| Time | Action |
|------|--------|
| 2:30 PM | Session started |
| 2:45 PM | Created domain models |
| 3:15 PM | Implemented use cases |
| 3:45 PM | Built UI components |
| 4:00 PM | Added volume calculations |
---
### Task Progress
[████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░] 30% 3/10 tasks
**Active**: UI implementation
**Next**: Mesocycle progression
---
### Recommendations
1. **Commit current work** - 8 files with ~450 lines is getting large
2. **Consider breaking session** - 1h 45m, good stopping point
3. **API key needed** - Goal 3 blocked, may need to deprioritize
---
### Health Check
| Metric | Status |
|--------|--------|
| Build | Passing |
| Tests | Not run since start |
| Uncommitted size | Large (consider commit) |
| Session duration | Normal |
| Focus alignment | Good |
For rapid status check:
## Quick Checkpoint
Session 17.0 | 1h 45m | Focus: Workout
Goals: 1/3 complete | Build: Passing | Changes: 8 files (+450/-32)
**Status**: On track, consider committing soon
## Session Checkpoint
**Warning: Large uncommitted changes**
Files: 15 modified, 5 new
Lines: +1,200, -89
**Recommendation**: Commit incrementally to avoid:
- Large, hard-to-review PRs
- Risk of losing work
- Merge conflicts
Consider splitting into logical commits:
1. Domain layer changes
2. UI implementation
3. Test additions
## Session Checkpoint
**Warning: Build is FAILING**
Errors: 3
1. ProfileView.swift:45 - Cannot find 'UserProfile' in scope
2. WorkoutVM.swift:89 - Missing argument for 'repository'
3. ...
**Recommendation**: Fix build errors before continuing.
The longer you work with a broken build, the harder debugging becomes.
## Session Checkpoint
**Warning: Work may be off-focus**
**Session Focus**: Workout feature
**Recent Work**: Profile refactoring, Settings updates
Recent work appears unrelated to session goals.
**Options**:
1. Return to workout focus
2. Update session goals to reflect actual work
3. Create separate branch for side work
## Session Checkpoint
**Warning: Extended session**
Duration: 4h 30m
Long sessions can lead to:
- Decreased productivity
- Accumulated technical debt
- Large, hard-to-review changes
**Recommendation**: Consider ending session:
1. Commit current work
2. Run `/vitalarc-end-workstation`
3. Take a break
4. Start fresh session for remaining work
Some skills can auto-invoke checkpoint:
// After significant milestone
if (milestoneReached) {
// Run checkpoint
await runSkill("session-checkpoint")
}
The session could remind for checkpoint:
**Session Reminder**: 2 hours since last checkpoint
Run `/session-checkpoint` to review progress.