Skip to content

[c21 follow-up] engine migrate: implement EmbedMigrationWorker + actual queueing (ADR-043 D2-D6) #380

@ohdearquant

Description

@ohdearquant

Context

PR #371 (cluster-21 kkernel engine + admin commands) scaffolded the CLI surface for kkernel engine migrate but deferred the actual implementation.

ADR-043 D2-D6 specifies:

  • EmbedMigrationWorker that processes EmbeddingModelChanged events
  • runtime.start_migration(engine_name, target_model) API
  • _embedding_models table tracking migration state transitions
  • Event bus emission for EmbeddingModelChanged

Current state

kkernel engine migrate <engine> --to <model> returns:

Error: engine migrate is not yet implemented (ADR-043 D2-D6 deferred to follow-up #368). ...

This is intentional — the fake-success scaffold was removed by the codex r1 fix commit.

Required work

  1. Add _embedding_models schema migration (new VersionedMigration in khive-db/src/migrations.rs)
  2. Implement runtime.start_migration() / runtime.resume_migration() / runtime.abort_migration() in khive-runtime
  3. Implement EmbedMigrationWorker that listens for EmbeddingModelChanged events
  4. Wire cmd_engine_migrate through the runtime API
  5. Tests: verify migration state transitions in _embedding_models

Labels

adr-alignment, follow-up, adr-043

Metadata

Metadata

Assignees

No one assigned

    Labels

    adr-alignmentADR v1 series alignment work

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions