Skip to content

docs(migration): record the host strategy and add the feature placement skill - #15228

Merged
marius-kilocode merged 2 commits into
v2from
host-strategy
Oct 19, 2026
Merged

marius-kilocode merged 2 commits into
v2from
host-strategy

Conversation

@marius-kilocode

Copy link
Copy Markdown
Collaborator

Part of #15171 (foundation) and #13750.

What Problem This Solves

The plan now says plugin first, Q-HOST-01 is answered (#15223) and U-E0-01 has an issue (#15172), but the reasoning behind the host, the measured history it rests on, the guarantees it must hold when upstream changes again, and the procedure an agent follows to place one change are not written anywhere. Each new unit re-derives them, and the vocabulary (hook, seam, patch) is used inconsistently, including in the progress map.

Why This Change Was Made

  • migration-tracking/plans/v2-host-strategy.md (new, living): the measured lessons from the v1 merges and from the v1 to v2 rewrite, the rejected approaches, the four-layer target shape and dependency direction, the host as the first step with its pieces and seams measured at v2.0.30, the three placement cases with worked examples and shape rules, the guarantees under four upstream futures and the three rules that enforce them, the three change detectors that replace the merge conflict as a signal, what changes in the progress map, the order of work, and the open decisions (facade, owners, binary name, TUI plugin registration).
  • .kilo/skills/v2-feature-placement/SKILL.md (new): the procedure for one change. Vocabulary, the rung decision with the rg commands that find a plugin hook or a replaceable service node, seam and patch shape rules, the import rules for logic packages and adapters, the done-proof for the progress map (kilocode_change(<feature>:<id>) in shared files, kilo_port(<feature>:<id>) in Kilo-owned files), the verification commands, and the PR placement statement.
  • .kilo/skills/v2-migration/SKILL.md: loads the placement skill before placing a change; the progress-map rule now covers Kilo-owned files.
  • v2-fork-conventions.md: vocabulary paragraph under "Plugin-first extension order" and links to the skill and the strategy.
  • kilo-v2-migration-plan.md: the U-E0-01 row links the measured pieces. migration-tracking/README.md: start-here row.

User Impact

Docs and agent instructions only. No runtime change.

Evidence

  • bun script/check-shared-patches.ts: ok. bun script/upstream/progress.ts --check: up to date. The new files contain no em dashes.
  • Facts in the strategy document were checked against the tree at bbbeb8e6307: SdkPlugins.register typing (core/src/plugin/sdk.ts), createRoutes(overrides) (server/src/routes.ts:81-84) versus ServerProcess.start without overrides (server/src/process.ts:47), cli/package.json exports, the Gateway adapter's 12 upstream imports, the compaction constant (session/compaction.ts:100), the tool editor and hooks (plugin/src/effect/tool.ts), the v2.0.30 dependency diff of the Gateway adapter (3 of 12 modules changed, no conflict).

@github-actions

github-actions Bot commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

➖ v2 migration progress: 0.1% → 0.1% (0 done, 0 total, 0 dropped; 12/9854 cells)

No change to the progress map.

v2 migration progress map at this commit

Full map · how cells close

Comment thread migration-tracking/plans/v2-host-strategy.md Outdated
Comment thread migration-tracking/plans/v2-host-strategy.md Outdated
@kilo-code-bot

kilo-code-bot Bot commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Incremental review of ea58ef5..8e1485c (1 file, 3 lines). Both prior findings are resolved:

  • v2-host-strategy.md:83 now attributes the internal.ts registration to the still-open PR feat(core): add Kilo agents #14999 instead of claiming it exists, and names the two registrations present on v2 (provider.ts:14, builtins.ts).
  • v2-host-strategy.md:161 now names both adapter files and the count is exact: 9 @opencode/* imports in gateway.ts plus @opencode/schema/rpc in gateway-rpc.ts plus Bus and Variant = 12 distinct upstream modules, 2 of them core internals. Re-measured the table row at line 19 against 4d9678a79d6..775d1d0d713: exactly 3 of those 12 changed (plugin/effect/plugin.ts, schema/model.ts, schema/provider.ts), so "3 of 12" holds. kilo-gateway-core has no @opencode dependency or import, as stated.

No runtime code, no shared upstream files, no generated client files, no .changeset.

Files Reviewed (1 file)
  • migration-tracking/plans/v2-host-strategy.md - no issues (2 prior findings fixed)
Previous Review Summary (commit ea58ef5)

Current summary above is authoritative. Previous snapshots are kept for context only.

Previous review (commit ea58ef5)

Status: 2 Issues Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 0
SUGGESTION 2
Issue Details (click to expand)

SUGGESTION

File Line Issue
migration-tracking/plans/v2-host-strategy.md 83 Kilo agents in internal.ts is not true at this commit; internal.ts has no Kilo marker, and the Kilo agents change has not merged into this branch
migration-tracking/plans/v2-host-strategy.md 161 Gateway adapter imports 11 upstream modules (9 @opencode/* plus Bus and Variant), not 12
Files Reviewed (6 files)
  • .kilo/skills/v2-feature-placement/SKILL.md - no issues
  • .kilo/skills/v2-migration/SKILL.md - no issues
  • migration-tracking/README.md - no issues
  • migration-tracking/plans/kilo-v2-migration-plan.md - no issues
  • migration-tracking/plans/v2-host-strategy.md - 2 issues
  • migration-tracking/technical-notes/v2-fork-conventions.md - no issues

Docs-only PR: no shared upstream files, no .changeset, no generated client files. Referenced paths, script names, marker formats and most measured claims (TOOL_OUTPUT_MAX_CHARS = 1_250 at session/compaction.ts:100, createRoutes(overrides) in server/routes.ts, ServerProcess.start without overrides, client/effect/service.ts:61, Plugin<R = Scope.Scope> in plugin/effect/plugin.ts, "@opencode/core"-style only in gateway via allowlist, KiloTeams in tui/plugin/builtins.ts, shared-patches.json root-patch retirement notes, Kind = "module" | "api" | "hook" | "test") check out against the tree.

Fix these issues in Kilo Cloud


Reviewed by deepseek-v4.1-flash-1017 · Input: 59.3K · Output: 62.8K · Cached: 1.8M

Review guidance: REVIEW.md from base branch v2

@marius-kilocode
marius-kilocode merged commit 5bd5e53 into v2 Oct 19, 2026
13 checks passed
@marius-kilocode
marius-kilocode deleted the host-strategy branch October 19, 2026 09:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants