Skip to content

Incremental phase execution — detect changes and re-run only affected parts #5

@nakurian

Description

@nakurian

Problem

Currently re-running a phase regenerates everything. For example:

  • Re-running Phase 3 rewrites ALL specs even if only one service's CONTEXT.md changed
  • Re-running Phase 4 regenerates ALL contracts even if only one spec changed

For large projects (10+ services), this wastes time and risks overwriting good specs.

Proposed solution

Add change detection to phases:

  1. Track file hashes — maintain phases/.checksums with SHA256 of all input files
  2. On re-run — compare current hashes to stored hashes, identify what changed
  3. Selective regeneration — only regenerate specs/contracts for affected services
  4. Cascade detection — if order-service spec changes, flag contracts that reference it

Example flow:

# User edits services/order-service/CONTEXT.md
/project:3-specify

# Agent detects:
# ✓ web-ui CONTEXT.md unchanged — skipping
# ✓ bff-gateway CONTEXT.md unchanged — skipping  
# ⚡ order-service CONTEXT.md changed — regenerating spec
# → Also flagging: contracts involving order-service may need update

This makes the framework practical for iterative development on large projects.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions