opencode-acp 1.8.1 → 1.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -0
- package/README.zh-CN.md +12 -0
- package/dist/index.js +0 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/hooks.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -421,6 +421,18 @@ For the complete list with root cause analysis, see the [bug tracker](https://gi
|
|
|
421
421
|
|
|
422
422
|
## Changelog
|
|
423
423
|
|
|
424
|
+
### v1.8.2 — Always Inject System Prompt
|
|
425
|
+
|
|
426
|
+
**Bug fix**: System prompt gating (v1.8.1 commit `24bbb1f`) caused binge compression on large-context models. Since ACP injections are ephemeral (not persisted to conversation history), gating the system prompt made the model completely forget compression tools existed between nudges. When the nudge fired after 50K growth, the model panicked and made 95 consecutive compress calls.
|
|
427
|
+
|
|
428
|
+
**Fix**: Removed `shouldInjectThisTurn` gate from system prompt hook (`hooks.ts:108-112`). System prompt now always injects every turn. Suffix remains gated at `nudgeGrowthTokens` frequency.
|
|
429
|
+
|
|
430
|
+
**Current behavior**:
|
|
431
|
+
- **System prompt** (compression philosophy, tool awareness): ✅ every turn
|
|
432
|
+
- **Suffix** (context level, block list, Tips): gated at nudgeGrowthTokens frequency
|
|
433
|
+
|
|
434
|
+
---
|
|
435
|
+
|
|
424
436
|
### v1.8.1 — Adaptive Nudge Frequency + System Prompt Gating
|
|
425
437
|
|
|
426
438
|
**Problem**: Large-context models (1M+) over-compressed at 20-30% context because Tips fired every 6K tokens (0.6% of 1M). System prompt injected every turn added constant pressure.
|
package/README.zh-CN.md
CHANGED
|
@@ -393,6 +393,18 @@ ACP 在首次启动时自动将配置从 `dcp.jsonc` 迁移到 `acp.jsonc`,将
|
|
|
393
393
|
|
|
394
394
|
## 更新日志
|
|
395
395
|
|
|
396
|
+
### v1.8.2 — 始终注入系统提示词
|
|
397
|
+
|
|
398
|
+
**Bug 修复**:系统提示词门控(v1.8.1 commit `24bbb1f`)导致大上下文模型 binge 压缩。由于 ACP 注入是临时的(不持久化到对话历史),gate 掉系统提示词会让模型在两次 nudge 之间完全忘记压缩工具的存在。当 50K 增长后 nudge 触发时,模型恐慌性连续调用 95 次压缩。
|
|
399
|
+
|
|
400
|
+
**修复**:移除系统提示词 hook 的 `shouldInjectThisTurn` gate(`hooks.ts:108-112`)。系统提示词现在每轮都注入。Suffix 仍按 `nudgeGrowthTokens` 频率 gate。
|
|
401
|
+
|
|
402
|
+
**当前行为**:
|
|
403
|
+
- **系统提示词**(压缩哲学、工具意识):✅ 每轮
|
|
404
|
+
- **Suffix**(上下文水平、块列表、Tips):按 nudgeGrowthTokens 频率
|
|
405
|
+
|
|
406
|
+
---
|
|
407
|
+
|
|
396
408
|
### v1.8.1 — 自适应提醒频率 + 系统提示门控
|
|
397
409
|
|
|
398
410
|
**问题**:大上下文模型(1M+)在 20-30% 上下文时过度压缩,因为 Tips 每 6K tokens(1M 的 0.6%)就触发一次。系统提示每轮注入增加了持续压力。
|
package/dist/index.js
CHANGED
|
@@ -8709,9 +8709,6 @@ function createSystemPromptHandler(state, logger, config, prompts) {
|
|
|
8709
8709
|
if (effectivePermission === "deny") {
|
|
8710
8710
|
return;
|
|
8711
8711
|
}
|
|
8712
|
-
if (state.nudges.shouldInjectThisTurn === false && !state.manualMode) {
|
|
8713
|
-
return;
|
|
8714
|
-
}
|
|
8715
8712
|
prompts.reload();
|
|
8716
8713
|
const runtimePrompts = prompts.getRuntimePrompts();
|
|
8717
8714
|
const newPrompt = renderSystemPrompt(
|