Skip to content

v0.6.0 — native-task-manager drop-in engine (dark-launch)

Choose a tag to compare

@tranquocthong tranquocthong released this 28 Jul 04:56
· 19 commits to main since this release

native-task-manager — a self-built, zero-dependency drop-in replacement for the third-party task-master-ai@0.43.1 task engine.

Shipped dark-launch: taskCore.engine defaults to legacy, so nothing changes until a project opts in with taskCore.engine: "native". Removing the old package is deferred until the native engine has soaked through real features — the rollback safety net stays.

What's in it (5 subs)

  • storage-core — atomic tag-keyed tasks.json store + 6 CRUD ops, byte-compatible with the legacy schema (reads legacy files, zero migration).
  • tags-deps — tag isolation, dependency graph with cycle detection, subtasks.
  • contract-shim — dependency-free JSON-RPC MCP server (5 tools) + 9-subcommand CLI + models no-op shim, byte-compatible with the legacy surface. No MCP SDK — pure Node.
  • ai-hybrid — agent-native AI ops driven by the orchestrator host as the LLM (zero-network core; host detected via CLAUDECODE / SPEC_FLOW_HOST_AGENT); optional minimal headless HTTP fallback, off by default.
  • cutover — opt-in engine flip (one-commit / one-revert), equivalence-verify go/no-go gate, /sf:doctor contract check, instant rollback with zero data loss.

Verification

  • 776 unit tests green.
  • Live equivalence diff against the real legacy CLI; sandbox flip -> doctor -> rollback rehearsal.
  • Two real bugs surfaced by a live e2e and fixed: critical priority parity, and an engine-router stdout leak that corrupted the agent-native stdout channel.
  • Benchmarked ~29x faster per task op (~2.8s npx spawn per legacy CLI call vs ~95ms native).

Not yet done (deferred operator steps — see docs/cutover-runbook.md)

The actual engine flip, the soak through real features, and removal of the legacy dependency are supervised operator steps. This release makes the native engine available and opt-in; it does not switch anyone over.