fix(edit): reduced hashline failures for weak models

- Added actionable reversed-range and block-anchor diagnostics.
- Accepted unambiguous single-dot ranges and routed affected models to replace mode.
- Preserved edit safety checks and added regression coverage.

Fixes #6671
This commit is contained in:
can1357
2026-07-27 05:52:30 +02:00
parent 7d3f9d382c
commit 972ddb4e5e
12 changed files with 300 additions and 33 deletions
+10 -2
View File
@@ -53,10 +53,18 @@ describe("resolveEditMode", () => {
expect(resolveEditMode(createSession({ activeModel: "xiaomi/MiMo-V2.5-Pro" }))).toBe("replace");
});
test("does not exclude DeepSeek Flash models", () => {
test("falls back from hashline to replace for DeepSeek V4 Flash models", () => {
delete Bun.env.PI_EDIT_VARIANT;
expect(resolveEditMode(createSession({ activeModel: "deepseek/deepseek-v4-flash" }))).toBe("hashline");
expect(resolveEditMode(createSession({ activeModel: "tensormesh/deepseek-ai/DeepSeek-V4-Flash" }))).toBe(
"replace",
);
});
test("falls back from hashline to replace for Step 3.7 Flash models", () => {
delete Bun.env.PI_EDIT_VARIANT;
expect(resolveEditMode(createSession({ activeModel: "kilo/stepfun/step-3.7-flash:free" }))).toBe("replace");
});
test("does not exclude non-Kimi Moonshot models", () => {