Skip to content

docs(migration): land the bootstrap, discovery and plan docs on v2 - #15038

Merged
fpliger merged 23 commits into
v2from
kilo-v2-clean-bootstrap
Oct 13, 2026
Merged

fpliger merged 23 commits into
v2from
kilo-v2-clean-bootstrap

Conversation

@fpliger

@fpliger fpliger commented Oct 13, 2026 •

Copy link
Copy Markdown

Issue

Part of #13750
Supersedes #15014

Exception to "Fixes": #13750 is the migration epic and must stay open. This PR lands its planning docs; it does not complete it.

Context

The migration docs live only on kilo-v2-clean-bootstrap. Agents and reviewers on v2 cannot read them, and the v2 migration skill already points to them. #15016 landed the code from the bootstrap branch (CI lane, isolated bun dev, migration skill) and left the docs for this merge, as its description says.

This PR merges kilo-v2-clean-bootstrap into v2. It brings three reviewed phases:

  • Bootstrap: the seeded migration-tracking/ reference docs and the canonical brief plans/migration-context.md (pinned refs, decisions, working model, conventions).
  • Discovery: discovery/ (feature inventory, epic taxonomy, unit register, doc inventory) and the refreshed technical-notes/baseline/pinned-v2-baseline.md.
  • Plan: plans/kilo-v2-migration-plan.md (docs(migration): new v2 migration plan #14987), with superseded banners on the previous plans.

It also includes the doc updates for the rename of kilo-v2-clean to v2, and the origin/v2 vs upstream/v2 notes.

Implementation

Known follow-ups, deliberately not in this PR:

Screenshots / Video

N/A (documentation only)

before after
N/A N/A

How to Test

Manual/local verification

  • Agent-executed: gh api repos/Kilo-Org/kilocode/compare/v2...kilo-v2-clean-bootstrap reports 22 commits ahead and 0 behind, 93 changed files, and no file outside migration-tracking/.
  • Human-executed: merged origin/v2 into kilo-v2-clean-bootstrap, resolved the conflicts to v2's versions, ran bun install, then pushed. The push passed the pre-push hook (bun run check, including the package typechecks).

Reviewer test steps

  1. Open "Files changed" and confirm every path is under migration-tracking/.
  2. Read migration-tracking/plans/migration-context.md, then Part A of migration-tracking/plans/kilo-v2-migration-plan.md.
  3. Optional: run git diff origin/v2...origin/kilo-v2-clean-bootstrap --stat and confirm the output is the same.

Blocked checks and substitute verification

  • Package tests are not relevant: no source, config or generated files change. Substitute: the compare check above shows the diff is documentation only.

fpliger and others added 22 commits October 9, 2026 18:31
chore(dev): run bun dev in an isolated v2 profile
Upstream OpenCode workflows that publish, deploy, post, label or close
things do not belong in Kilo CI. Remove them, and remove the pure check
workflows that never trigger on Kilo branches.

Keep test.yml as the test gate and run check.yml on every pull request,
so v2 PRs get `bun run check`.

Add script/check-workflows.ts, modeled on the v1 guard, and run it from
the new kilo-v2.yml so an upstream merge cannot bring a workflow back
without review.
Port the v1 merge tooling `skipFiles` behavior for workflows:
`bun script/check-workflows.ts --fix` runs `git rm -f` on the upstream
workflows that Kilo removed, which also resolves their modify/delete
conflicts. A new upstream workflow still fails the check for review.

Add the step to the v2 upstream merge procedure in the fork conventions.
docs: add v2 migration skill with TUI self-test recipe
chore(ci): remove upstream workflows and guard the workflow list
@github-actions github-actions Bot added the area:cli CLI, TUI and core engine label Oct 13, 2026
Account Pooler access. Owned processes and disposable profile/workspace/socket
artifacts were cleaned up; the existing user window/stores were untouched.

Sanitized evidence: [model groups](/Users/johnnyamancio/.bb/thread-storage/thr_7bdux6wma9/v1-selftest-model-picker.png),

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Leaked personal absolute filesystem paths

These five evidence links (lines 107-111), plus the framework path on line 81, commit the author's home directory (/Users/johnnyamancio/.bb/thread-storage/... and /Users/johnnyamancio/.config/...) into the repository. That exposes a personal username and internal thread-storage IDs, and none of the links can resolve for other readers. Consider moving the evidence images under migration-tracking/assets/ and referencing them relatively, or redacting the paths.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

mode-0700 private thread-storage directory, with the database file mode 0600.
The backup passed `PRAGMA quick_check` and contained the expected 60 records.

Backup: `/Users/johnnyamancio/.bb/thread-storage/thr_qr9z7p3cqc/credential-recovery-20rbKX/before-cleanup.db`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Leaked personal path to a credential backup

This line commits /Users/johnnyamancio/.bb/thread-storage/thr_qr9z7p3cqc/credential-recovery-20rbKX/before-cleanup.db, a personal home-directory path that points at a credential backup database, while the next line says the backup must not be published. Consider redacting the path.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

| Item | Value |
|---|---|
| Date | 2026-10-07 (amended; first pass 2026-10-05) |
| Cloud repo | `Kilo-Org/cloud` at `3de933dd85070e9d15c41d8ff3af6c91ca856fd4` (read-only clone `/Users/fpliger/dev/kiloverse/cloud`) |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Leaked personal absolute paths

Lines 11 and 14 (/Users/fpliger/dev/kiloverse/cloud and /Users/fpliger/dev/opencode) expose personal home-directory paths. Consider redacting or removing them.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

installs, fetches, credentials, or live relay/share traffic. Sources, all read
locally: this checkout (`kilo-v2` at `61a8707c03` plus the frozen dirty batch),
Kilo v1 pinned `ecccd1f54b62f9bb16e53a2a58b32bb6d98d0fd7` (`git show`), and the
sibling cloud checkout `/Users/johnnyamancio/Workspace/kilo_workspace/cloud`

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Leaked personal absolute path

/Users/johnnyamancio/Workspace/kilo_workspace/cloud exposes a personal home directory. Consider redacting it.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.


## Exact source and runtime

The source checkout is `/Users/johnnyamancio/Workspace/kilo_workspace/kilocode`

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Leaked personal absolute paths

Lines 11 and 102 commit /Users/johnnyamancio/Workspace/kilo_workspace/kilocode. Consider redacting the path, for example by using a placeholder checkout variable.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

delta closes the leak without a protocol/auth/reasoning regression. The stable
snapshot passed the full CLI fresh-artifact wrapper: **443 pass / 0 fail,
2,741 assertions across 77 files** (359.21s, bundled Bun 1.4). Log:
`/Users/johnnyamancio/.bb/thread-storage/thr_qr9z7p3cqc/native-route-full-cli.log`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Leaked personal absolute path

/Users/johnnyamancio/.bb/thread-storage/thr_qr9z7p3cqc/native-route-full-cli.log exposes a personal home directory and internal thread-storage ID. Consider redacting the path.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

4. **Staleness gate.** For each feature, diff the v1 files it touches between the assessment snapshot and the v1 target. Empty delta: the donor is likely faithful. Non-empty: re-derive behavior from v1 and keep only the donor's v2 mapping.
5. **Staged cutover.** G1 CLI/TUI → G2 VS Code → G3 JetBrains, each with its own go/no-go. G2 and G3 are independent client-surface tracks that run in parallel with G1 once their prerequisites land. Until their gate, the IDEs stay on v1: VS Code bundles the CLI from the same `main` build (no version pin); JetBrains pins a CLI version.
6. **Storage.** A separate customer v2 data store. v1 files are never touched while any v1 surface ships. Import is opt-in and re-runnable. Path consolidation only after G3.
7. **Scope.** Post-cutover (non-gating): voice, image generation, team and incremental sharing, legacy TUI extras, and features behind experimental flags on v1 that are off by default, unless explicitly made a gate. Features named experimental but on by default on v1 (for example background subagents and the shared agent board) are in scope like any shipped feature. KiloClaw is not needed. Hard gates: FIM/next-edit (G2, G3). Cloud agents and Anaconda Desktop gate whichever surface they consume.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SUGGESTION: Internal contradiction on the FIM/next-edit gate

This decision states FIM/next-edit is a hard gate for (G2, G3), but the deferred-decision table in the same file (line 52) lists "whether FIM/next-edit gates G3" as still open, and the plan agrees (kilo-v2-migration-plan.md:199 "whether FIM gates G3 is still open"; kilo-v2-migration-plan.md:348 Q-G3-01). Consider reconciling the parenthetical with the deferred table.


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

@kilo-code-bot

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

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

All findings from the previous review at a5e04237 are resolved in the current HEAD (b84df54):

  • The PR base is now v2 (previously main), so the change is documentation-only as intended.
  • The six leaked personal absolute filesystem paths and the FIM/next-edit gating contradiction were all corrected across the 8 changed files (/Users/... paths replaced with neutral placeholders such as <baseline worktree>, <cloud checkout>, <v1 checkout>, and "a private thread-storage directory (not published)").
  • A repository-wide scan of migration-tracking/ finds no remaining /Users/ paths or home-directory identifiers in the changed docs.

No new issues were introduced by the incremental changes. The two known follow-ups stated in the PR description (folding the plan delta, and the pre-existing broken seeded-doc links) remain out of scope for this PR.

Files Reviewed (8 files)
  • migration-tracking/marker-audit/kilo-override-marker-inventory.md
  • migration-tracking/plans/kilo-opencode-v2-working-log.md
  • migration-tracking/plans/migration-context.md
  • migration-tracking/technical-notes/baseline/cli-fixture-storage-incident.md
  • migration-tracking/technical-notes/baseline/cloud-agent-contracts.md
  • migration-tracking/technical-notes/baseline/extension-surface-inventory.md
  • migration-tracking/technical-notes/baseline/remote-share-next-contracts.md
  • migration-tracking/technical-notes/baseline/v1-fixture-generation.md
Previous Review Summary (commit a5e0423)

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

Previous review (commit a5e0423)

Status: 8 Issues Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 1
WARNING 6
SUGGESTION 1

The PR is described and documented as a docs-only change into the integration branch origin/v2 (93 files, all under migration-tracking/). However, this PR is configured with base main: git diff --name-only origin/main...HEAD reports ~7,931 changed files, and the GitHub diff exceeds the 300-file limit. As merged as-is it would land the entire v2 divergence on main, not the v2 docs on v2. Confirm/fix the base branch before merge. (Summary-only finding: it has no file/line to anchor.)

The six WARNING findings are all the same class: personal absolute filesystem paths committed into the new docs. The one SUGGESTION is an internal contradiction in the canonical brief.

Also noted, not counted: the description itself lists "fix the broken links in the seeded docs" as a deliberate follow-up, and the diff contains many broken relative links (e.g. the superseded kilo-opencode-v2-working-log.md links to a non-existent ../kilocode/baseline/ tree; extension-surface-inventory.md:6 targets a missing plan file; cli-tui-closure-verification.md:164 should be ../../test-plans/). These are acknowledged and not re-raised inline.

Issue Details (click to expand)

CRITICAL

File Line Issue
(PR settings) — PR base is main, not the documented origin/v2; the diff (~7,931 files) contradicts the docs-only intent and would merge the whole v2 line into main

WARNING

File Line Issue
migration-tracking/technical-notes/baseline/extension-surface-inventory.md 81, 107-111 Leaked personal absolute paths /Users/johnnyamancio/... (also broken evidence links)
migration-tracking/technical-notes/baseline/cli-fixture-storage-incident.md 27 Leaked personal path pointing at a credential backup DB
migration-tracking/technical-notes/baseline/cloud-agent-contracts.md 11, 14 Leaked personal absolute paths /Users/fpliger/dev/...
migration-tracking/technical-notes/baseline/remote-share-next-contracts.md 8 Leaked personal absolute path /Users/johnnyamancio/...
migration-tracking/technical-notes/baseline/v1-fixture-generation.md 11, 102 Leaked personal absolute path /Users/johnnyamancio/...
migration-tracking/plans/kilo-opencode-v2-working-log.md 726 Leaked personal absolute path /Users/johnnyamancio/.bb/thread-storage/...

SUGGESTION

File Line Issue
migration-tracking/plans/migration-context.md 40 FIM/next-edit stated as a hard gate for G3, contradicted by the deferred table (line 52) and the plan (Q-G3-01)
Files Reviewed (93 files)

All 93 added files fall under migration-tracking/:

  • README.md
  • assets/kilo-v2-cli-2026-09-10.png, assets/kilo-v2-vscode-2026-09-10.png
  • discovery/doc-inventory.md, discovery/v2-epic-taxonomy.md, discovery/v2-feature-inventory.md, discovery/v2-unit-register.md
  • github-drafts/issue-13750/ (README, issue-body, original-issue-body, published-subissues, 9 subissues)
  • marker-audit/ (README, kilo-override-marker-inventory, v1-kilo-marker-port-assessment .md/.tsv, v2-current-shared-change-inventory, v2-shared-source-footprint-2026-09-10)
  • plans/kilo-opencode-v2-execution-plan.md, plans/kilo-opencode-v2-plan-progress.md, plans/kilo-opencode-v2-working-log.md, plans/kilo-v2-migration-plan.md, plans/migration-context.md
  • technical-notes/session-sharing.md, technical-notes/v2-fork-conventions.md, technical-notes/script/v2-baseline.ts, and the technical-notes/baseline/ set
  • test-plans/kilo-opencode-v2-test-plan.md, ...-ui.md, ...-runtime.md

technical-notes/script/v2-baseline.ts was checked for resource/memory leaks (spawn pipes are consumed concurrently and awaited); none found.

Fix these issues in Kilo Cloud


Reviewed by deepseek-v4.1-flash · Input: 37.3K · Output: 5.2K · Cached: 234.1K

@fpliger
fpliger changed the base branch from main to v2 October 13, 2026 20:54
@fpliger fpliger added V2 Opencode v2 merge P1 Priority 1 — next focus labels Oct 13, 2026
@fpliger
fpliger merged commit 7d2b9c6 into v2 Oct 13, 2026
12 checks passed
@fpliger
fpliger deleted the kilo-v2-clean-bootstrap branch October 13, 2026 21:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:cli CLI, TUI and core engine P1 Priority 1 — next focus V2 Opencode v2 merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants