Commit Graph

18643 Commits

Author SHA1 Message Date
Mark IJbema 5325fff667 docs: move GHCR follow-up out of RELEASING.md into the PR 2026-04-28 17:33:17 +02:00
Mark IJbema cbe55103b1 fix(cli): publish docker image to ghcr.io/kilo-org/kilocode
The image was still being pushed as ghcr.io/kilo-org/kilo, which GHCR
links to the archived Kilo-Org/kilo repo. Rename to kilocode so future
releases create a package under the active repo, and document the
one-time GHCR package-visibility/repo-link follow-up in RELEASING.md.
2026-04-28 17:29:31 +02:00
Marius 6130a3ea66 fix: show paid Kilo models when signed out (#9628) 2026-04-28 10:25:55 -04:00
Santiago Sainz 00ac884f87 docs: clarify issue template requirements (#7832)
* docs: clarify issue template requirements

Refs #6115

* docs: adjust issue reporting details

---------

Co-authored-by: Santiago Sainz <sainzs@Santiagos-MacBook-Pro-2.local>
Co-authored-by: Johnny Amancio <johnnyeric@gmail.com>
2026-04-28 16:04:12 +02:00
Marius 6908f8ae6d fix(agent-manager): start new tasks in selected worktree (#9614)
* fix(agent-manager): start new tasks in selected worktree

* test(cli): skip flaky bash truncation cancel case

* fix(agent-manager): preserve drafts for worktree new tasks

* fix(cli): serialize model selection writes

* fix(agent-manager): clear stale captured drafts

* fix(agent-manager): keep drafts through successful apply

* test(cli): re-enable truncation cancel test

* chore(agent-manager): remove worktree task plan

* test(cli): drop redundant truncation markers

* revert(cli): remove model selection write fix
2026-04-28 15:35:24 +02:00
Mark IJbema 2c7a3e67ac Merge pull request #9624 from Kilo-Org/mark/upstream-mergiraf
chore(upstream): auto-resolve conflicts with mergiraf + zdiff3 markers
2026-04-28 14:58:36 +02:00
Mark IJbema 98654b289a fix(upstream): skip mergiraf for non-textual conflicts (delete/modify, binary)
Files in UD/DU/binary/etc. conflict states have no <<<<<<< markers in
the working tree. My earlier simplification that removed the
`git checkout --conflict=diff3` pre-check caused mergiraf to run on
them: it would exit 0 (nothing to solve), after which the unconditional
`git add` silently staged our side as resolved, losing the signal that
upstream deleted the file (or that we deleted what upstream modified).

Guard runMergiraf by inspecting the file before calling mergiraf: if
there are no conflict markers, skip the file entirely so it falls
through to manual review. Surface a skipped-count line in the normal
log output so the operator can see how many non-textual conflicts were
left alone.
2026-04-28 14:50:50 +02:00
Mark IJbema 80d848d3e3 feat(upstream): use zdiff3 conflict markers during upstream merge
Pass merge.conflictStyle=zdiff3 on the git merge invocation so every
conflicted file gets base-aware (|||||||) markers from the start, not
just the ones runMergiraf happens to touch. Benefits:

- Mergiraf always has a base section to work from, so its structural
  heuristics apply uniformly.
- Remaining manual conflicts show both sides relative to the common
  ancestor, which is dramatically easier to resolve than a 2-way marker.

Since the working tree already carries diff3 markers after the merge,
drop the per-file `git checkout --conflict=diff3` in runMergiraf.
2026-04-28 14:35:50 +02:00
Mark IJbema e6f387e2dd chore(upstream): disable mergiraf .orig backups
mergiraf defaults to writing a .orig sibling file for every file it
touches. Pass --keep-backup=false so the merge script doesn't leave a
pile of .orig files across the working tree after running.
2026-04-28 14:26:17 +02:00
Mark IJbema 24146a2171 fix(upstream): preserve partial mergiraf results without staging them
mergiraf exit 2 means it reduced conflicts but didn't fully close them.
Previously we bailed on any non-zero exit, throwing away the useful
partial reduction in the working tree. Now we always read the file after
mergiraf runs: if no conflict markers remain we stage, if markers remain
we keep the reduced content in the working tree for manual review but
leave the file unstaged so nothing half-resolved is auto-committed. Also
clean up the debug wording and surface a partial-resolution count in the
normal log output.
2026-04-28 14:25:41 +02:00
Mark IJbema 37b4440603 fix(upstream): make runMergiraf resilient to per-file failures
Previously git add and mergiraf solve could bubble up exit 128 (e.g. on
files missing the base version) and abort the entire merge. Wrap every
shell call in .nothrow() and skip to the next transform pass on failure.
2026-04-28 14:11:01 +02:00
Marian Alexandru Alecu 04e33c816f Merge pull request #9450 from Kilo-Org/fix/hanging-sessions-v2
fix(vscode): fix hanging sessions for permissions bug
2026-04-28 14:51:17 +03:00
kiloconnect[bot] 815e44a042 chore(upstream): run mergiraf on conflicted files during upstream merge
Invokes `mergiraf solve` (syntax-aware git merge tool) on each conflicted
file before the kilocode-specific transform cascade, re-materializing the
file with diff3 markers first so mergiraf can reconstruct the base
revision. This auto-resolves the common pattern of neighbouring import
additions around kilocode_change markers plus most JSON/YAML/TOML and
other structural conflicts, leaving the existing transforms to handle
only what's genuinely ambiguous.

mergiraf is required at startup; if missing the script aborts early with
install instructions (brew / cargo / nix) rather than failing mid-merge.
2026-04-28 13:46:33 +02:00
Mark IJbema f2b73dbfac Merge pull request #9619 from Kilo-Org/mark/upstream-skip-files-fixes
fix(cli): skip VOUCHED.td and surface git rm errors in upstream merge
2026-04-28 13:39:04 +02:00
Marius 28a0eae4b0 fix(cli): keep semantic indexing startup responsive (#9613)
* fix(cli): keep semantic indexing startup responsive

* test(cli): allow slower shell queue tests on windows

* fix(cli): stop indexing work after disposal
2026-04-28 13:27:09 +02:00
Alex Alecu c05d382c46 style(review): reduce comments 2026-04-28 14:09:32 +03:00
Mark IJbema bc5816663c fix(cli): skip .github/VOUCHED.td and surface git rm errors in upstream merge
The skip list in script/upstream/utils/config.ts matched .github/VOUCHED.md,
but upstream actually ships .github/VOUCHED.td (typo extension), so the file
fell through to manual resolution every merge. Broaden the pattern to
.github/VOUCHED.* so both variants are handled.

Also make skip-files removeFile report the real git rm stderr on failure
and retry once. Transient index contention silently flipped a file to
not-found in a recent run with no signal about why — now we'll see the
error and shake off intermittent lock failures automatically.
2026-04-28 13:05:57 +02:00
Marius 0907c6f46e fix(cli): isolate indexing from tool registry (#9615) 2026-04-28 13:02:31 +02:00
Marian Alexandru Alecu 5a7c83aa0b Merge branch 'main' into fix/hanging-sessions-v2 2026-04-28 14:02:31 +03:00
Marian Alexandru Alecu 3a254d0d16 Merge pull request #9603 from Kilo-Org/fix/windows-worktree-cleanup-retry
fix(cli): retry Windows worktree cleanup locks
2026-04-28 14:02:13 +03:00
Marian Alexandru Alecu 7a6fbb7d9e Merge branch 'main' into fix/windows-worktree-cleanup-retry 2026-04-28 13:53:55 +03:00
Mark IJbema a63eb7481a Merge pull request #9617 from Kilo-Org/mark/upstream-merge-chdir-repo-root
fix(cli): chdir to repo root in upstream merge script
2026-04-28 12:51:34 +02:00
Mark IJbema 85cab8764d fix(cli): chdir to repo root in upstream merge script
Transforms feed git-reported repo-relative paths into Bun.file() and
Glob.scan(), both of which resolve against cwd. Running the script from
script/upstream/ (as the README suggests) silently broke every file
lookup, causing pre-merge transforms to return zero results and i18n
auto-resolve to crash with ENOENT.
2026-04-28 12:39:46 +02:00
Mark IJbema fbee6d7ba9 Merge pull request #9609 from Kilo-Org/mark/upstream-list-versions-merged-flag
feat(cli): show which upstream versions are already merged in list-versions
2026-04-28 12:12:00 +02:00
Mark IJbema 38cc0297a8 feat(cli): show which upstream versions are already merged in list-versions
Uses 'git merge-base --is-ancestor' per tag (parallelized) to mark
upstream versions reachable from HEAD with a '✓ merged' annotation.
Kilo's own package version no longer tracks upstream, so semver
comparison isn't reliable; the ancestor check is the source of truth
and handles non-linear merge history correctly.
2026-04-28 11:46:43 +02:00
Mark IJbema 398e744f74 Merge pull request #9608 from Kilo-Org/session/agent_7a4af3d1-cd25-4ffd-aa3a-4061f0c39767
fix: restore versions to 7.2.26 after upstream merge
2026-04-28 11:45:50 +02:00
Mark IJbema 8ba9ea316d Merge pull request #9598 from Kilo-Org/mark/md-table-padding-check
chore: enforce minimal markdown table formatting
2026-04-28 11:44:14 +02:00
Mark IJbema 99b861611a Merge pull request #9606 from Kilo-Org/mark/upstream-script-pin-bun-types
fix(cli): pin @types/bun in script/upstream so bun install works standalone
2026-04-28 11:37:10 +02:00
kiloconnect[bot] 255f30f89a chore: bump version to 7.2.26
Update version across all packages and the Zed extension configuration.
2026-04-28 09:31:37 +00:00
Mark IJbema cdfe3b693e fix(cli): pin @types/bun in script/upstream so bun install works standalone
The catalog: protocol only resolves when the package is part of the root
workspace. script/upstream is intentionally decoupled from the monorepo
so it can run during upstream merges (when the workspace may be in a
half-broken state), which means 'cd script/upstream && bun install'
failed with 'failed to resolve catalog:'. Pin to the version currently
in the root catalog.
2026-04-28 11:27:06 +02:00
Mark IJbema f9ca3f72e2 Merge branch 'main' into mark/md-table-padding-check 2026-04-28 11:18:28 +02:00
Mark IJbema 8078944add Merge pull request #9574 from Kilo-Org/imanolmaiztegui/kilo-opencode-v1.14.23
OpenCode v1.14.23
2026-04-28 11:11:57 +02:00
Alex Alecu 6794b4c008 chore(cli): annotate cleanup helper usage 2026-04-28 12:05:26 +03:00
Alex Alecu d44f65576b refactor(cli): isolate Windows cleanup helpers 2026-04-28 12:04:46 +03:00
Alex Alecu 4145e48e82 fix(cli): retry Windows worktree cleanup locks 2026-04-28 11:54:37 +03:00
Mark IJbema e902880bda ran ./script/generate.ts 2026-04-28 10:48:19 +02:00
Mark IJbema 8671a57087 Fix semantic merge with indexing code 2026-04-28 10:44:56 +02:00
kiloconnect[bot] dee9d86a81 chore: exempt .opencode/glossary from md-table-padding check
Glossary tables are kept as aligned prose tables for translator
readability; reverting the auto-fix and skipping the directory.
2026-04-28 08:34:07 +00:00
Marian Alexandru Alecu c52384c87e Merge branch 'main' into fix/hanging-sessions-v2 2026-04-28 11:19:10 +03:00
Marian Alexandru Alecu 2a6c3e7d5d Merge pull request #9434 from Kilo-Org/fix/infinite-compact-upload-limit
fix(cli): fix compact on sessions with large images
2026-04-28 11:08:51 +03:00
Marian Alexandru Alecu b1713a653a Merge pull request #9600 from Kilo-Org/fix/provider-plugin-ci-upstream-24416
test(cli): port upstream provider plugin fixture
2026-04-28 11:05:31 +03:00
Marian Alexandru Alecu f1dd60249e Merge branch 'main' into fix/hanging-sessions-v2 2026-04-28 11:00:20 +03:00
kiloconnect[bot] acfd742b02 fix: enforce exact separator form in md-table-padding check
Previously the check trimmed each separator cell before comparing
against the allow-list, which meant `| --- | --- |` passed as
`---`. The documented rule requires the tight `|---|---|` form;
compare the raw cell so space-padded separators fail too.
2026-04-28 07:56:48 +00:00
Alex Alecu 7d9a4f3316 test(cli): adapt upstream plugin fixture for Kilo 2026-04-28 10:50:36 +03:00
Kit Langton fb9dc874d5 test(provider): avoid plugin dependency install timeout
(cherry picked from commit 179e540ccb556fc48934a5a34bbd0920c8af87b4)
2026-04-28 10:50:32 +03:00
Alex Alecu 9e67b52e7e fix(cli): mark context synthetic 2026-04-28 10:46:26 +03:00
kiloconnect[bot] 06cd80d1bd chore: enforce minimal markdown table formatting
Prettier pads markdown table cells for column alignment, which turns any
content change into a table-wide realignment diff. Markdown was only in
prettierignore for packages/kilo-vscode/; the root formatter still
repadded docs elsewhere (e.g. TESTING.md, kilo-docs, AGENTS.md).

Adds *.md to the root .prettierignore, documents the convention in
AGENTS.md, and adds script/check-md-table-padding.ts + a workflow to
enforce it. Existing padded tables in Kilo-owned docs have been
rewritten via the script's --fix mode.
2026-04-28 07:45:49 +00:00
Alex Alecu 72c19f2cf4 Merge remote-tracking branch 'origin/main' into fix/hanging-sessions-v2 2026-04-28 10:44:03 +03:00
Mark IJbema b037746c79 docs: keep markdown tables minimal 2026-04-28 09:29:57 +02:00
Alex Alecu 37b54fced2 test(cli): cover compaction media safety 2026-04-28 10:24:25 +03:00