Commit Graph

20929 Commits

Author SHA1 Message Date
kirillk beb8a406f0 fix(jetbrains): address release workflow review 2026-05-27 12:17:49 -04:00
kirillk a411ba9321 ci(jetbrains): add release PR publishing flow 2026-05-27 12:07:12 -04:00
Imanol Maiztegui 8bc05fa9f5 test(opencode): replace mock.module stubs with Effect layer injection in kilo tests (#10615)
Extract KiloModelsService from model-cache to enable dependency injection
and rewrite test files to use Layer-based test harnesses instead of
process-wide mock.module() calls that caused flaky cross-test pollution
on CI.
2026-05-27 15:42:15 +02:00
Imanol Maiztegui 1a36cfbb10 Effect Migration for Kilo callsites (follow-up 2) (#10616)
* refactor(opencode): remove raw LLM interface in favor of stream-based text helper

Introduce KiloLLM.text() to consume Effect streams and extract text
while propagating error/abort events. Replace all usages of the removed
LLM.raw() method and the legacy LLM.stream() async wrapper with
dedicated runtime helpers (CommitMessageRuntime.generate,
PlanFollowupRuntime.handover) that leverage the new stream-based
approach.

- Add KiloLLM.text() stream combinator in kilocode/session/llm.ts
- Remove Interface.raw and the exported LLM.stream() async function
- Refactor commit-message generation to use CommitMessageRuntime
- Refactor plan-followup handover to use PlanFollowupRuntime.handover
- Update all test LLM mocks to remove raw() stubs
- Add unit tests for KiloLLM.text() covering text joining, error
  propagation, and abort handling

* feat(skill): migrate Skill module to Effect service pattern and remove legacy promise wrappers

Remove the makeRuntime-based promise helpers (Skill.all, Skill.get,
Skill.dirs) from the skill module and convert the builtin-skills test
suite to use Effect generators with the testEffect harness.

- Delete legacy runPromise wrappers from packages/opencode/src/skill/index.ts
- Rewrite builtin-skills.test.ts to use testEffect and Effect.gen
- Replace WithInstance.provide/tmpdir with TestInstance yield pattern
- Use Skill.Service directly within Effect generators for all assertions

* refactor(session-status): drop makeRuntime promise helpers and wire Service through Effect context

Replace the standalone `SessionStatus.list`, `.get`, `.set` promise
wrappers with direct `SessionStatus.Service` usage via Effect generators
and `AppRuntime.runPromise` at Kilo callsites that remain imperative.

- Remove makeRuntime-based exports from session/status.ts
- Update kilo-sessions.ts and plan-followup.ts to use AppRuntime.runPromise
  with SessionStatus.Service
- Thread SessionStatus.Service as a dependency through SuggestTool and
  ToolRegistry layers
- Replace spy-based mocks in suggestion tool tests with an in-memory
  service stub for deterministic assertions
2026-05-27 15:42:09 +02:00
Kirill Kalishev 33ff7cff47 Merge pull request #10591 from Kilo-Org/cotton-flyaway
fix(jetbrains): auto-approve mode
2026-05-27 09:14:36 -04:00
Marius aec43e919c Merge pull request #10608 from Kilo-Org/simple-sushi
Enable Agent Manager tool by default in VS Code
2026-05-27 13:16:29 +02:00
marius-kilocode 3ffacc847b feat(agent-manager): enable tool by default in VS Code 2026-05-27 12:16:42 +02:00
Imanol Maiztegui 39a7305c97 Effect Migration for Kilo callsites (follow-up) (#10587)
* refactor(opencode): migrate ModelCache and Config to effect-native services

Remove legacy async wrapper functions from Config module and convert
ModelCache from a stateful namespace with module-level Maps into a
proper Effect service with Context/Layer semantics.

Key changes:
- Delete Config's `makeRuntime`-based async wrappers (get, getGlobal,
  update, warnings, etc.) — all callsites now use
  `Config.Service.use(...)` through AppRuntime
- Rewrite ModelCache as an Effect service with HttpClient dependency
  injection, replacing imperative Map-based caching with Effect-native
  Ref cells and TTL logic
- Convert KiloSessions.init and KilocodeBootstrap.init into proper
  Effect services with Layer-based dependency injection
- Wire ModelCache.Service into AppLayer, ProviderAuth, ModelsDev, and
  HTTP API handler layers
- Update Permission.layer to depend on Config.Service directly instead
  of calling Config async wrappers
- Add new test files for KiloSessions and ModelCache Effect integration
- Remove stale Config.get spyOn mocks from tests that no longer need
  them (experimental-session-list, recall)
- Fix indexing-auth to use typed IndexingConfig parameter instead of
  untyped record access

* fix(model-cache): resolve race conditions in concurrent fetch and cache invalidation

Introduce versioned cache cells with proper key derivation to prevent
stale responses from overwriting fresher data during concurrent fetches.

- Add version tracking to detect and discard outdated fetch results
- Derive cache keys from provider-specific options (baseURL, token, apiKey)
  to isolate concurrent requests with different credentials
- Make ModelCache.clear async to properly await invalidation across layers
- Update OrganizationDeps.clear signature to allow Promise<void> return
- Add concurrency and ordering tests for fetch/refresh race scenarios
- Rename local variable from `state` to `entry` in kilo-sessions sync loop

* chore(opencode): remove duplicate imports and fix test layer composition

Remove duplicate `AppRuntime` imports introduced during merge and update
kilo-sessions tests to use Effect-native Auth service instead of static
module calls.

- Remove duplicate `AppRuntime` import in index.ts and instance.ts
- Add Auth.defaultLayer to test layer helper
- Refactor test to yield Auth.Service and use instance methods
- Reorder Effect.provide/Effect.ensuring for correct resource cleanup

* style(opencode): normalize kilocode_change marker comments to block format

Standardize inline `// kilocode_change` annotations across source and
test files to use consistent `// kilocode_change start` / `// kilocode_change end`
block delimiters, improving readability and grep-ability of custom
modifications.
2026-05-27 11:43:32 +02:00
Mark IJbema cb933859ff Merge pull request #10602 from Kilo-Org/revert-10593-design-source-submodule
Revert "docs(design): add shared design source"
2026-05-27 09:18:19 +02:00
Mark IJbema cadce9ad16 Revert "docs(design): add shared design source" 2026-05-27 09:15:57 +02:00
Iván Uruchurtu c62d6ccb1a Merge pull request #10593 from Kilo-Org/design-source-submodule
docs(design): add shared design source
2026-05-26 23:48:40 -06:00
Kirill Kalishev b19b864cf8 Merge branch 'main' into cotton-flyaway 2026-05-26 19:52:34 -04:00
kirillk 79204987b2 fix(jetbrains): use theme-safe auto-approve icons 2026-05-26 17:55:51 -04:00
Iván Uruchurtu f9a2db79f3 fix(design): use https design submodule url 2026-05-26 15:31:55 -06:00
Iván Uruchurtu bc50a8d3f0 docs(design): add shared design source 2026-05-26 15:27:48 -06:00
kirillk 1eeab9f5ff fix(jetbrains): show solid auto-approve shield 2026-05-26 17:06:57 -04:00
kilo-maintainer[bot] f68b778aa8 release: v7.3.12 v7.3.12 2026-05-26 20:58:33 +00:00
kirillk 050ab05360 fix(jetbrains): restore permission state when auto-approve stops 2026-05-26 16:49:00 -04:00
kirillk 4fcfaf5942 fix(jetbrains): keep auto-approve shield neutral 2026-05-26 16:24:14 -04:00
Joshua Lambert 4316dcc829 Merge pull request #10582 from Kilo-Org/docs/xai-supergrok-subscription
docs(kilo-docs): add xAI SuperGrok subscription and OAuth login documentation
2026-05-26 16:18:37 -04:00
kirillk ba9bf5d14f feat(jetbrains): add auto-approve toggle 2026-05-26 16:09:05 -04:00
kilo-maintainer[bot] 7598495eac release: v7.3.11 v7.3.11 2026-05-26 20:02:42 +00:00
Kirill Kalishev f617749b20 Merge pull request #10552 from Kilo-Org/quaint-airbus
feat(jetbrains): support plan follow-ups and todo rendering
2026-05-26 13:39:00 -04:00
kirillk 12bb821487 fix(jetbrains): preserve follow-up question state 2026-05-26 12:49:23 -04:00
kiloconnect[bot] b63dafe5a6 docs(kilo-docs): note 'Show more providers' step to find xAI in VSCode 2026-05-26 16:42:55 +00:00
kiloconnect[bot] d74e95ccf8 docs(kilo-docs): mention xAI BYOK on Gateway in SuperGrok callout 2026-05-26 16:41:01 +00:00
Kirill Kalishev 8c5305e094 Merge branch 'main' into quaint-airbus 2026-05-26 12:39:19 -04:00
Kirill Kalishev ce0caa6d1c Merge pull request #10586 from Kilo-Org/capricious-lychee
ci: parallelize JetBrains checks
2026-05-26 12:38:54 -04:00
kirillk 33eb9fae50 Merge branch 'capricious-lychee' into quaint-airbus 2026-05-26 12:29:02 -04:00
Kirill Kalishev fe7bc99986 Merge branch 'main' into capricious-lychee 2026-05-26 12:10:50 -04:00
kirillk 25b9007d3d Merge remote-tracking branch 'origin/main' into quaint-airbus
# Conflicts:
#	packages/kilo-jetbrains/frontend/src/main/kotlin/ai/kilocode/client/session/SessionUi.kt
#	packages/kilo-jetbrains/frontend/src/test/kotlin/ai/kilocode/client/session/SessionUiLayoutTest.kt
#	packages/kilo-jetbrains/frontend/src/test/kotlin/ai/kilocode/client/session/SessionUiTestBase.kt
2026-05-26 11:52:37 -04:00
Kirill Kalishev 878b16103b Merge pull request #10496 from Kilo-Org/prairie-crocus
feat(jetbrains): add legacy settings migration
2026-05-26 11:48:18 -04:00
kirillk 5961afbbe1 ci: serialize JetBrains Gradle tasks 2026-05-26 11:36:56 -04:00
kirillk 2d1ff2fd50 ci: parallelize JetBrains checks 2026-05-26 11:14:51 -04:00
Kirill Kalishev baf8aac232 Merge branch 'main' into prairie-crocus 2026-05-26 11:11:35 -04:00
kirillk bb4a76e6a1 fix(jetbrains): stabilize session UI tests 2026-05-26 10:55:25 -04:00
Catriel Müller 2ebdbb2fe5 Merge pull request #10413 from LifeJiggy/clean/windows-cli-6307
fix(cli): make bash tool description Windows-aware
2026-05-26 11:53:25 -03:00
kiloconnect[bot] e19665d151 docs(kilo-docs): add xAI SuperGrok subscription and OAuth login documentation 2026-05-26 14:35:08 +00:00
Marius 59762f5842 Merge pull request #10581 from Kilo-Org/uncovered-salary
feat(vscode): enable voice input for signed-in Kilo users
2026-05-26 16:16:09 +02:00
marius-kilocode 81777f1288 Revert "ci: use Node 24-compatible Bun cache action"
This reverts commit c6774947ed.
2026-05-26 15:57:23 +02:00
marius-kilocode c6774947ed ci: use Node 24-compatible Bun cache action 2026-05-26 15:55:28 +02:00
Mark IJbema 022be2037d Merge pull request #10559 from Kilo-Org/mark/direct-autocomplete-fim-providers
Support backend-routed autocomplete FIM providers
2026-05-26 15:48:38 +02:00
marius-kilocode 722eb44d63 feat(vscode): enable voice input for signed-in Kilo users 2026-05-26 15:45:48 +02:00
Mark IJbema 21b5607bc8 chore: trigger CI 2026-05-26 15:17:40 +02:00
kirillk e96bbb50ae test(jetbrains): align migration UI fake 2026-05-26 09:09:56 -04:00
Catriel Müller 784c12ab3d refactor: keep platform as OS and added kilomarkers 2026-05-26 14:05:55 +01:00
LifeJiggy b4a10bb0e2 fix(cli): port Windows-aware bash tool description to refactored prompt.ts 2026-05-26 14:05:55 +01:00
kirillk 9dcc3fb8cc chore(jetbrains): remove migration mock script 2026-05-26 09:03:55 -04:00
kirillk e3b8f3b7e5 fix(jetbrains): surface partial migration failures 2026-05-26 09:00:52 -04:00
Kirill Kalishev 1d7023355e Merge branch 'main' into prairie-crocus 2026-05-26 08:52:23 -04:00