StateSense
All posts
PhilosophyJanuary 10, 20255 min read

The Case for Micro-Checkpoints in Modern Development

In traditional software development, a commit is the atomic unit of progress. You finish something meaningful, you write a message, you commit.

But exploratory work doesn't fit this model. Exploratory work looks like: try something, break it, try another approach, partially merge the two, walk away, come back, delete half of it, try something else.

Git commits are too coarse-grained to track this kind of work. And yet this kind of work is exactly what fills the hours between focused coding sessions — especially when working with AI.

What a micro-checkpoint is

A micro-checkpoint is an automatic, frequent, disposable snapshot of your workspace state. It's not a commit. It's not meant to tell a story. It's meant to be a complete rollback point.

You don't name them (unless you want to). You don't craft a meaningful message. They just exist, silently, as a safety net below your feet.

When they're useful, they're extremely useful. When they're not needed, they're invisible.

How StateSense implements this

StateSense creates micro-checkpoints when:

  • **Large changes happen** — 500+ lines modified at once
  • **Multiple files change** — 3+ files in a short window
  • **Files are created or deleted** — structural changes to your codebase
  • **An AI tool is generating code quickly** — detected by the rapid-change window
  • **You've been idle** — an idle timer creates a checkpoint when you step away

These are stored as incremental snapshots (only changed files are stored per snapshot) and compressed to minimize disk footprint.

The key insight: make checkpoints free

The reason micro-checkpoints work is that they're free to create and free to discard. They require zero cognitive overhead. They don't interrupt your flow.

When you restore a micro-checkpoint, the full workspace state is reconstructed from the sequence of incremental changes. It's accurate, instant, and atomic.

This is the primitive that's been missing from VS Code — and increasingly necessary as AI tools become part of everyday development.