assistant/codecompanion: rename strategies -> interactions

codecompanion.nvim v19 renamed `strategies` to `interactions`
(olimorris/codecompanion.nvim#2485). The nvf module still generated
the deprecated `strategies` key, which triggers codecompanion's
backwards-compat migration shim. That shim replaces any user-provided
`interactions` table with `defaults + strategies`, silently
discarding user overrides like `interactions.chat.adapter`.

Rename the option tree so the generated Lua uses the current
`interactions` key and the migration shim is never triggered.
This commit is contained in:
Bryce Thorpe 2026-04-05 09:54:38 -05:00
commit 3820db92ee
2 changed files with 16 additions and 3 deletions

View file

@ -33,6 +33,12 @@
controlled via `vim.options.foldenable` directly instead. RIP
`vim.treesitter.foldByDefault` 2026-03-19 - 2026-03-19.
- `vim.assistant.codecompanion-nvim.setupOpts.strategies` has been renamed to
`vim.assistant.codecompanion-nvim.setupOpts.interactions` to match the
upstream codecompanion.nvim v19 rename. If you set options like
`setupOpts.strategies.chat.adapter`, rename them to
`setupOpts.interactions.chat.adapter`.
[Snoweuph](https://github.com/snoweuph)
- "Correct `languages.go.treesitter` to contain all Go file types.
@ -59,6 +65,13 @@
## Changelog {#sec-release-0-9-changelog}
[SecBear](https://github.com/SecBear):
- Renamed `setupOpts.strategies` to `setupOpts.interactions` in the
codecompanion-nvim module to match the upstream v19 rename. The old key
triggered a migration shim that silently discarded user `interactions`
overrides.
[midischwarz12](https://github.com/midischwarz12):
- Changed the prettier-plugin-astro build to use `writableTmpDirAsHomeHook` to

View file

@ -199,11 +199,11 @@ in {
description = "An adapter is what connects Neovim to an LLM.";
};
strategies = {
interactions = {
chat = {
adapter = mkOption {
default = null;
description = "Adapter used for the chat strategy.";
description = "Adapter used for the chat interaction.";
type = nullOr (either str (submodule {
options = {
name = mkOption {
@ -268,7 +268,7 @@ in {
inline = {
adapter = mkOption {
default = null;
description = "Adapter used for the inline strategy.";
description = "Adapter used for the inline interaction.";
type = nullOr (either str (submodule {
options = {
name = mkOption {