Skip to content

Kapi → Ilchul RunContract Harness roadmap #114

@devkade

Description

@devkade

Kapi → Ilchul RunContract Harness roadmap

Last updated: 2026-05-17 · Owner: Ragna/coding · Reference model: Q00/ouroboros issue 961

TL;DR — status at a glance

Track Status Linked sub-issues Current state / next
Track A — RunContract Harness core ✅ complete #97, #98, #99, #100, #101, #102, #115, #116, #117, #128, #133, #134, #135, #136 Boundary, projection, evidence/completion, advisory hints/dimensions, supervisor rendering, GitHub/Ragna adapter, shared prompt renderer, evaluator docs, and bounded cleanup are merged.
Track B — Ilchul product/storage migration ✅ complete for current plan #119, #121, #169, #181 Naming/compatibility policy is documented; .ilchul is canonical forward storage; workflow storage now routes to .ilchul only. No destructive local rename.
Track C — Preset evolution ✅ complete for current preset contract pass #118, #182, #183, #184 Deep Interview, Ralph, Integrate, and Autoresearch preset contracts are defined. Current pass is docs/test contract-first; no runtime rewrite or adapter-specific core semantics.
Track D — Harness governance / review / module metadata ✅ current pass complete #117, #120, #141, #122 Anti-Goodhart checklist, metadata-only module registry/retirement signals, risk-based review harness, and formal kapi-agent approval gate are merged.
Track E — Runtime / worker substrate boundary ✅ foundational pass complete #148, #168, #169, #170, #171, #172 Retention policy, DAG/claim/lease evidence gates, storage/config policy, RunContract-centered runtime boundaries, strategy selector, and reward ledger loop are merged.
Track F — Objective-driven learning runtime 🟡 open roadmap #167 Umbrella remains open for the next objective-driven parallel runtime harness direction.

Merge status update: #192 merged #181 and #193 merged #182/#183/#184 on 2026-05-17 KST. The Track B storage slice and Track C preset-contract slice are now reconciled into this roadmap.

Purpose

This is the single source of truth for sequencing Kapi’s evolution into the Ilchul-branded RunContract Harness without losing the current working system or overfitting the core to Ragna’s GitHub issue → PR → review workflow.

This roadmap tracks:

  1. Which RunContract/Ilchul changes are canonical follow-ups after docs: define RunContract harness core-adapter boundary #97feat: map RunContract status into Hermes/Ragna GitHub workflow adapters #102.
  2. Which ideas are product/brand docs vs core code/API/storage changes.
  3. Which sub-issues are linked to each execution track.
  4. Which gates must pass before storage/API/default behavior changes.
  5. How the worker/runtime substrate should evolve without collapsing generic RunContract core into product-specific adapters.

When in doubt about opening a new Ilchul/Kapi substrate issue, comment here first or add it to the relevant track before creating another standalone issue.

Core boundary

Layer 1: Kapi/Ilchul Core — RunContract Harness
  Owns:
    - generic run state projection
    - evidence model
    - artifact references
    - ContractPreset interpretation
    - completion criteria
    - advisory quality dimensions
    - generic steering hints

  Does not own:
    - GitHub issue/PR semantics
    - kapi-agent review policy
    - repository merge/tracker cleanup
    - Discord lane/thread semantics
    - Kade/Ragna authority policy

Layer 2: Runtime / Adapter layer
  Owns:
    - tool-specific sensing
    - worker/session/runtime mapping
    - command execution
    - platform-specific event ingestion
    - product-specific rendering bridges
    - storage/config compatibility policy
    - worker lifecycle, retention, DAG/claim/lease, event, and evidence boundaries

Layer 3: Hermes/Ragna workflow layer
  Owns:
    - issue → PR → kapi-agent review → dev merge → tracker reconciliation
    - Discord reporting style
    - Kade’s coding workflow policy

Naming and storage policy

Ilchul is the product/documentation/brand name and .ilchul is the forward canonical storage root.

Reusable code/API/tool identifiers should prefer semantic names:

  • run
  • contract
  • preset
  • harness
  • evidence
  • score
  • steer
  • worker
  • runtime

Do not do broad kapi -> ilchul replacement. Legacy identifiers remain compatibility/CLI surface decisions unless an explicit migration issue authorizes the change. Existing local .kapi folders must not be destructively renamed or deleted; migration/cleanup remains explicit and non-destructive.

Track map

flowchart LR
    classDef done fill:#0E8A16,color:#fff,stroke:#0E8A16
    classDef open fill:#FBCA04,color:#000,stroke:#FBCA04

    subgraph A["Track A — RunContract Harness core"]
      A0["#97-#102 foundation"]:::done
      A1["#115 shared renderer"]:::done
      A2["#116 5D advisory dimensions"]:::done
      A3["#117 evaluator checklist"]:::done
      A4["#128 + #133-#136 cleanup"]:::done
      A0 --> A1 --> A2 --> A3 --> A4
    end

    subgraph B["Track B — Ilchul product/storage"]
      B1["#119 naming policy"]:::done
      B2["#121 .kapi removal/.ilchul plan"]:::done
      B3["#169 storage/config/retention policy"]:::done
      B4["#181 route workflow storage to .ilchul"]:::done
      B1 --> B2 --> B3 --> B4
    end

    subgraph C["Track C — Presets"]
      C1["#118 Deep Interview draft"]:::done
      C2["#182 Ralph preset"]:::done
      C3["#183 Integrate preset"]:::done
      C4["#184 Autoresearch preset"]:::done
      C1 --> C2 --> C3 --> C4
    end

    subgraph D["Track D — Governance/review/module metadata"]
      D1["#117 anti-Goodhart checklist"]:::done
      D2["#120 module registry/retirement signals"]:::done
      D3["#141 risk-based review harness"]:::done
      D4["#122 formal approval gate"]:::done
      D1 --> D2 --> D3 --> D4
    end

    subgraph E["Track E — Runtime/worker substrate"]
      E1["#148 worker retention cleanup design"]:::done
      E2["#168 DAG/claim/lease/evidence gates"]:::done
      E3["#170 RunContract runtime boundaries"]:::done
      E4["#171 strategy selector"]:::done
      E5["#172 reward ledger loop"]:::done
      E1 --> E2 --> E3 --> E4 --> E5
    end

    subgraph F["Track F — Objective-driven learning runtime"]
      F1["#167 umbrella"]:::open
    end

    A4 --> C1
    B4 -. storage foundation .-> E2
    D2 -. metadata/governance .-> F1
    E5 -. runtime foundation .-> F1
Loading

Linked sub-issues by track

Track A — RunContract Harness core

Track B — Ilchul product/storage migration

Track C — Preset evolution

Track D — Harness governance / review / module metadata

Track E — Runtime / worker substrate boundary

Track F — Objective-driven learning runtime

Acceptance gates before default/storage/API changes

Before any default flip, storage migration, or public API rename:

  1. Existing Kapi CLI and Pi extension behavior remains backward-compatible or has an explicit deprecation plan.
  2. RunContract core remains free of GitHub/PR/kapi-agent/Ragna/Discord semantics.
  3. npm run verify passes on implementation PRs.
  4. A migration issue exists for any storage path or schema change.
  5. Human-facing docs explain Kapi vs Ilchul naming while preserving non-destructive handling for existing local .kapi workspaces.
  6. Score/quality changes remain advisory unless a separate design issue explicitly authorizes stronger gates.
  7. Runtime work preserves Pi extension boundaries: TS remains the Pi façade; runtime internals stay behind explicit adapter/CLI contracts.
  8. Cleanup/removal must remain non-destructive and explicit; no silent local folder deletion or forced migration.

Current next step

The original #114 roadmap tracks are reconciled through #181 and #182/#183/#184. The only open linked umbrella in this map is #167 for the next objective-driven learning parallel runtime harness direction.

Changelog

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestmeta-ssotSingle source of truth meta issue

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions