chore(flags): 适配 kimi-code 0.43.0 — 移除转正 auto_session_title 实验 flag — bump to v0.7.19
Release / Version consistency (push) Canceled after 0s
Release / Build (macos-latest) (push) Canceled after 0s
Release / Build (ubuntu-latest) (push) Canceled after 0s
Release / Build (windows-latest) (push) Canceled after 0s
Release / Attach macOS install script (push) Canceled after 0s

This commit is contained in:
KimiSwitch Dev committed 2026-09-14 22:40:44 +08:00
1 parent 0f421b4e44
commit 1b80d66239
11 files changed
+29 -29

No files matched your search

+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "kimiswitch",
"private": true,
"version": "0.7.18",
"version": "0.7.19",
"type": "module",
"scripts": {
"dev": "vite",
+10
View File
@@ -0,0 +1,10 @@
# KimiSwitch v0.7.19
## 适配
- **适配 kimi-code 0.43.0 实验 flag 镜像(7→5)**:移除已转正的 `auto_session_title` 开关(上游 #3749,AI 会话标题不再需要 flag,首轮对话后自动生成、可在重命名处重新生成)。设置页「实验性 flag」、环境变量探测(`get_experimental_env_status`)、中英文案与测试断言同步清理;上游 0.43.0 注册表现剩 5 个 flag: `wait_for` / `tool-select` / `notify_user` / `tower` / `subagent_fork`
- **兼容性核查结论(无需改动)**:0.43.0 的 wire 持久化重建(#3737)不影响用量统计——`usage.record` / `token_counting.measured` / `context.apply_compaction` / `turn.prompt` 记录全部保留(`turn.prompt` 仅新增可选 `turnId` 字段);新增配置项 `loop_control.compaction_max_attempts`(#3750)经现有合并式写入验证保存不丢失;MCP `deferred` 字段(#3667)不涉及本应用管理的配置节
## 备注
- 若此前在 `[experimental]` 中显式开启过 `auto_session_title`,残留键会被上游静默忽略,无需手动清理
+1 -1
View File
@@ -1978,7 +1978,7 @@ dependencies = [
[[package]]
name = "kimiswitch"
version = "0.7.18"
version = "0.7.19"
dependencies = [
"anyhow",
"chrono",
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "kimiswitch"
version = "0.7.18"
version = "0.7.19"
description = "Kimi Switch - model config manager"
authors = ["codingplan.site"]
edition = "2021"
+4 -4
View File
@@ -1349,9 +1349,10 @@ pub async fn kimi_oauth_poll(
/// are probed too — the latter lets AgentSettingsPanel decide whether to
/// dual-write the v1 engine's loop_control keys.
///
/// As of Kimi Code 0.42.0 the upstream registry holds 6 experimental flags;
/// As of Kimi Code 0.43.0 the upstream registry holds 5 experimental flags
/// (`auto_session_title` graduated in 0.43.0 — titles are always on);
/// `secondary-model`, `persistence_minidb_readmodel`, `remote-control` and
/// `search_worker` have been promoted or removed upstream and are no longer
/// `search_worker` were promoted or removed earlier and are no longer
/// probed here.
///
/// The flag id → env var mapping mirrors `EXPERIMENTAL_FLAGS` in
@@ -1361,12 +1362,11 @@ pub async fn kimi_oauth_poll(
/// the raw values are returned and the truthy check happens on the frontend.
#[tauri::command]
pub fn get_experimental_env_status() -> HashMap<String, String> {
const VARS: [(&str, &str); 8] = [
const VARS: [(&str, &str); 7] = [
("tool-select", "KIMI_CODE_EXPERIMENTAL_TOOL_SELECT"),
("tower", "KIMI_CODE_EXPERIMENTAL_TOWER"),
("subagent_fork", "KIMI_CODE_EXPERIMENTAL_SUBAGENT_FORK"),
("wait_for", "KIMI_CODE_EXPERIMENTAL_WAIT_FOR"),
("auto_session_title", "KIMI_CODE_EXPERIMENTAL_AUTO_SESSION_TITLE"),
("notify_user", "KIMI_CODE_EXPERIMENTAL_NOTIFY_USER"),
// Non-flag probes consumed by the frontend:
("master", "KIMI_CODE_EXPERIMENTAL_FLAG"),
+1 -1
View File
@@ -1,6 +1,6 @@
{
"productName": "Kimi Switch",
"version": "0.7.18",
"version": "0.7.19",
"identifier": "com.kimiswitch.app",
"build": {
"beforeDevCommand": "npm run dev",
-4
View File
@@ -48,10 +48,6 @@ const FLAG_LABELS: Record<string, { name: TranslationKey; desc: TranslationKey }
notify_user: { name: "flagNotifyUser", desc: "flagNotifyUserDesc" },
tower: { name: "flagTower", desc: "flagTowerDesc" },
subagent_fork: { name: "flagSubagentFork", desc: "flagSubagentForkDesc" },
auto_session_title: {
name: "flagAutoSessionTitle",
desc: "flagAutoSessionTitleDesc",
},
};
/** Validation-error i18n key per engine rule, for the pre-write self-check. */
-2
View File
@@ -490,8 +490,6 @@ export const enTranslations: Record<TranslationKey, string> = {
flagSubagentForkDesc: "Agent/AgentSwarm tools can start a subagent with a snapshot of the calling agent's history (fork parameter)",
flagWaitFor: "WaitFor Tool",
flagWaitForDesc: "The agent can wait for background tasks to finish within the current turn",
flagAutoSessionTitle: "Auto Session Title",
flagAutoSessionTitleDesc: "Generate session titles automatically via the managed chat_title tool",
flagNotifyUser: "NotifyUser tool",
flagNotifyUserDesc: "Experimental Updates panel: paginated progress messages from the main agent and subagents (off by default)",
flagDefaultOn: "On by default",
-2
View File
@@ -484,8 +484,6 @@ export const zhTranslations = {
flagSubagentForkDesc: "Agent/AgentSwarm 工具可携带主代理会话快照启动子代理(fork 参数)",
flagWaitFor: "WaitFor 工具",
flagWaitForDesc: "代理可在当前回合内等待后台任务完成,而无需结束回合再被唤醒",
flagAutoSessionTitle: "自动会话标题",
flagAutoSessionTitleDesc: "通过托管 chat_title 工具自动生成会话标题",
flagNotifyUser: "NotifyUser 工具",
flagNotifyUserDesc: "实验性 Updates 面板:分页展示主代理与子代理的进度消息(默认关闭)",
flagDefaultOn: "默认开启",
+7 -6
View File
@@ -461,22 +461,23 @@ describe("validateSubagentPool", () => {
// ---------------------------------------------------------------------------
describe("experimental flag registry", () => {
it("mirrors the 0.42.0 v2 registry (6 flags)", () => {
it("mirrors the 0.43.0 v2 registry (5 flags)", () => {
expect(EXPERIMENTAL_FLAGS.map((f) => f.id)).toEqual([
"wait_for",
"tool-select",
"notify_user",
"tower",
"subagent_fork",
"auto_session_title",
]);
// Removed upstream: file_history (0.41.0, turn-level file history is
// always on) plus secondary-model / persistence_minidb_readmodel /
// remote-control / search_worker (0.42.0 — promoted or moved to
// dedicated config, the minidb read-model now lives under [database]),
// so the adapter must not mirror them either.
// always on), auto_session_title (0.43.0, graduated — AI session titles
// are always on, #3749), plus secondary-model /
// persistence_minidb_readmodel / remote-control / search_worker
// (0.42.0 — promoted or moved to dedicated config, the minidb read-model
// now lives under [database]), so the adapter must not mirror them either.
for (const id of [
"file_history",
"auto_session_title",
"secondary-model",
"persistence_minidb_readmodel",
"remote-control",
+4 -7
View File
@@ -33,10 +33,11 @@ export interface ExperimentalFlagDef {
defaultEnabled?: boolean;
}
/** Known experimental flags — mirrors the kimi-code 0.42.0 v2 flag registry
/** Known experimental flags — mirrors the kimi-code 0.43.0 v2 flag registry
* (the per-feature flag.ts files under packages/agent-core-v2/src):
* wait_for, tool-select, notify_user, tower, subagent_fork,
* auto_session_title. Removed in 0.42.0: secondary-model, remote-control
* wait_for, tool-select, notify_user, tower, subagent_fork.
* Removed in 0.43.0: auto_session_title (graduated — AI session titles are
* always on, #3749). Removed in 0.42.0: secondary-model, remote-control
* and search_worker (promoted or dropped upstream — no flag left), and
* persistence_minidb_readmodel (now controlled by the `[database]` config
* section). `acp-v2` was removed upstream earlier; `file_history` was
@@ -53,10 +54,6 @@ export const EXPERIMENTAL_FLAGS: ExperimentalFlagDef[] = [
{ id: "notify_user", envVar: "KIMI_CODE_EXPERIMENTAL_NOTIFY_USER" },
{ id: "tower", envVar: "KIMI_CODE_EXPERIMENTAL_TOWER" },
{ id: "subagent_fork", envVar: "KIMI_CODE_EXPERIMENTAL_SUBAGENT_FORK" },
{
id: "auto_session_title",
envVar: "KIMI_CODE_EXPERIMENTAL_AUTO_SESSION_TITLE",
},
];
export const EXPERIMENTAL_MASTER_ENV = "KIMI_CODE_EXPERIMENTAL_FLAG";