Skip to content
  • Yegor Cheprasov's avatar
    Make the feature pipeline stack-agnostic via per-stack profiles · f365270f
    Yegor Cheprasov authored
    
    
    modsen-core (1.0.0 → 1.0.1), modsen-kmp (1.0.0 → 1.0.1),
    modsen-flutter (2.0.0 → 2.0.1)
    
    The pipeline spine was Kotlin/Compose-hardcoded: feature-architect planned in
    Koin/SerializersModule/MVI terms, feature-developer preloaded
    compose-screen-architecture, test-planner and test-writer assumed commonTest +
    kotlin.test + MockEngine, and agent-resolution declared those roles
    non-escalating — so a Flutter run broke at five phases with no way to swap them.
    
    Introduce a stack profile instead of cloning the spine per technology:
    
    - modsen-core: references/stack-profile.md defines the contract — stack
      detection markers, profile resolution, the STATE.md fields, how the profile is
      passed to a spine agent, the no-profile fallback, and the 11 items a profile
      must cover. Phase 0 of /feature and /bugfix resolves it; every spine phase
      passes it on.
    - modsen-kmp / modsen-flutter: kmp-pipeline-profile and
      flutter-pipeline-profile carry the layer vocabulary, the architecture-plan
      stack sections, the area→skill table, the presentation pattern, the design
      mapping, test location and framework, verification steps, escalation targets
      and the finalizer checklist.
    - The spine agents lose their stack specifics and load the profile first;
      architect, test-planner and test-writer gain the Skill tool for it.
    - agent-resolution: spine roles specialise by profile rather than by agent
      swap; the stale "test-run has no closure" gap is replaced by the stack
      layers' own test-runner agents.
    
    Gates, complexity bands, checkpoints and commit discipline stay in a single copy
    in feature-pipeline, so a new stack is one profile file, not another spine.
    
    Co-Authored-By: default avatarClaude Opus 5 (1M context) <noreply@anthropic.com>
    f365270f