0.10 stabilization plan
Owner direction, 2026-10-08. Tracking epic: #1097.
Goal
By the end of the 0.10 series every part of akm is either Stable or removed. That covers:
- Product surface: every command, flag, config key and asset format.
- Default configuration: the improve processes and settings a new install gets.
- Implementation: hardened, cleaned up and simplified.
0.11 then handles only the hard breaks still needed before 1.0.
Rules for every decision
- Measure before removing anything that may hold value. A feature is cut because the numbers say it adds nothing, not because one installation does not use it. Low usage alone never removes a forgetting or consolidation mechanism.
- Defaults come from evals. The improve processes, strategies and settings that ship on by default are chosen from akm-eval results, testing and refinement, so users get the best configuration out of the box.
- Subtract once the measurements settle it. What is not on by default and not worth configuring is removed. The machinery that served only removed options goes with it.
- Every Experimental feature leaves Experimental during 0.10. It is either promoted, with tests that exercise it for real, or removed.
- Supported upgrade floor: 0.9.15. 0.10 reads what 0.9.15 and later wrote; older installs run
akm migrate applyfrom 0.9.x first. Shims for older formats can go. - One gate for evidence: akm-eval. Each decision cites a run: repeat runs, the labelled own sets, and the build recorded in
summary.json. Problems found with the evals go in akm-eval-privateISSUES.md.
Where each area stands and where it goes
| Area | Tier now | 0.10 path | Issues |
|---|---|---|---|
Read path: search, show, curate, remember, feedback, import, clone, index, sync |
Stable | Keep. Harden: stale vectors, classification changes reaching existing indexes. | #1087 |
Bundles; adapters akm, agent-skills, claude, opencode, website-snapshot |
Stable / Evolving | Promote the adapter set to Stable, with conformance tests for each adapter. | |
Adapters okf, llm-wiki, generic-files |
Evolving | Verify each against real bundles and the OKF conformance cases; promote or remove. | |
akm improve command; proposal commands; proposal drain |
Evolving | Settle once the improve defaults are set; then Stable. Fix the drain's judge setting and batch overlap. | #1085, #1086, #1094 |
| Improve processes, lanes, built-in strategies, tuning config | Experimental | Measure each: reflect, distill, consolidate and the pair pass, promotions, memory inference, the judgment tier, the proactive-maintenance and high-salience lanes, quick, reflect-distill, thorough, catchup, the consolidate and forgetting knobs, quality gates, outcome weighting. Set the 0.10 defaults; keep the rest configurable or remove it; simplify the machinery. |
#1094, #1090 |
experimental.improveAutonomy (auto-promotion) |
Experimental | Decide whether autonomy is the default with the measured judge, and drop the experimental. prefix. |
#1094 |
Session extraction (akm proposal extract) |
Experimental | Measure with the extract eval (weak today); fix and promote, or remove. | #1094 |
Workflows (all akm workflow commands, format, engine) |
Experimental | Define the core feature set and trim what is unused. Test real task-to-workflow paths end to end; promote or remove. | #1096 |
| Tasks and scheduler | Evolving | Promote to Stable. Fold task validate into lint; drop the task list alias. |
#1091 |
Agent dispatch (akm agent, akm command run) and harnesses |
Evolving | Build one harness design pattern (adding or removing a harness is one folder and one registry line), with a contract test for every harness. Move OpenCode to SDK-first and OpenCode 2 (adds the engine default agent). Deprecate the opencode CLI dispatch path; promote the rest. |
#1095, #1049, #1098 |
akm upgrade incl. plugin step and --next |
Evolving | Verify on real hosts and make Stable before 0.9 ends. | #1099 |
akm metrics |
Experimental | Settle the report, JSON shape and dashboard; promote. | |
akm health report content and layout |
Experimental (content) | Settle the report content alongside metrics; promote. | |
env/secret write verbs |
Experimental | Promote or remove. | |
lesson asset type, belief-state transitions |
Experimental | Settle with the distill and consolidate measurements. | #1094 |
--shape agent|summary, --detail |
Experimental | Merge --shape into --detail; one release of acceptance for callers. |
#1091 |
akm models |
Evolving | Promote. | |
Registries (list, add, remove) |
Evolving | Promote. | |
| CLI surface cleanup | n/a | Remove dead flags and keys, apply the merges (hints/help agents, --target to --bundle, improve subcommands), prune retired-command hints. |
#1091 |
| Versioning | n/a | Daily-build patch numbers (0.10.YYMMDDNN), plugins included. |
#1089 |
Order of work
- Measure and decide. Run the improve, workflow and adapter measurements. Record a keep / configure / remove decision for each item in its issue, with the run that supports it.
- Cut, merge and refactor. Apply the decisions, the cuts in #1091 that need no measurement, the harness pattern, and the SDK-first work. Each change ships as its own PR; nothing adds new surface without the owner's approval.
- Set the defaults. Ship the measured default improve configuration. Re-run the nightly eval and production nightlies to confirm it.
- Stabilize and document. Promote what survived in STABILITY.md. Make the docs and help text match. Contract tests cover every Stable surface.
- Hand over to 0.11. List the hard breaks still needed before 1.0, such as removals that need a deprecation window and format changes. Nothing else is planned for 0.11.
Done when
- STABILITY.md lists no Experimental surface except ones the owner explicitly keeps there into 0.11, each with a reason.
- A fresh install's improve configuration is the measured default, and every remaining setting is documented with what it does.
- Every Stable surface has a contract test, and its docs match its behaviour.
- The removed features, keys and shims are gone from code, schema and docs; the 0.9.15 upgrade floor is documented.