Skip to content

docs(deprecate): mark minContextLimit + modelMinLimits deprecated - #352

Merged
ranxianglei merged 6 commits into
masterfrom
2026-08-29_deprecate-min-context-limit
Aug 29, 2026
Merged

docs(deprecate): mark minContextLimit + modelMinLimits deprecated#352
ranxianglei merged 6 commits into
masterfrom
2026-08-29_deprecate-min-context-limit

Conversation

@ranxianglei

Copy link
Copy Markdown
Owner

Model: Claude Sonnet 4.6

Stacked on #351 (which is stacked on #343) — merge order: #343#351 → this.

What

Marks compress.minContextLimit (default "80%") and its per-model flat map compress.modelMinLimits as deprecated. Soft deprecation only — annotations, zero behavior change (resolveContextTokenLimit(…, "min"), overMinLimit, anchor set/clear in inject.ts all untouched; suite 1053/1053 identical).

Why

minContextLimit is the lower bound for turn/iteration reminder nudges. Since #343/#351, the growth-nudge floor (minNudgeContextPercent + nudgeGrowthTokens, cascading via compress.providers) is the maintained "minimum" mechanism — two parallel "min" knobs confuse users.

Changes

  • lib/config.ts@deprecated JSDoc on both fields, incl. removal consequence
  • dcp.schema.json[DEPRECATED — …] description prefixes (repo convention, cf. allowSubAgents)
  • CONFIGURATION.md / CONFIGURATION.zh-CN.md — Status → DEPRECATED for both, deprecation + removal-consequence note, status legend reworded ("kept for backward compatibility, scheduled for removal (may still take effect until then)" — the old "accepted but no effect" was wrong for soft deprecation); zh default corrected 45% → 80%
  • devlog 2026-08-29_deprecate-min-context-limit/ (REQ + WORKLOG)

Removal consequence (documented, not executed)

When removed, the lower-bound gating for turn/iteration reminder nudges is retired with it (those nudges depend on overMinLimit); nudgeFrequency / iterationNudgeThreshold only become worth revisiting at that point.

…ft, no behavior change)

minContextLimit (default 80%) is the lower bound for turn/iteration
reminder nudges. The growth-nudge floor (minNudgeContextPercent +
nudgeGrowthTokens, #343/#351) is the maintained mechanism — two parallel
'min' knobs confuse users. Soft deprecation: JSDoc @deprecated, schema
[DEPRECATED] prefixes, EN/zh Status DEPRECATED + removal-consequence note,
legend reworded (may still take effect until removed). zh default fixed
45% -> 80%. No behavior change; 1053/1053 unchanged.
@github-actions

github-actions Bot commented Aug 29, 2026

Copy link
Copy Markdown

📦 Built Plugin Artifact

Branch: 2026-08-29_deprecate-min-context-limit (7a0025e)

Option A — Install from npm PR tag (recommended)

opencode plugin opencode-acp@pr-352 --global

Each push to this PR publishes a new version under the pr-352 npm tag.

Option B — Install from GitHub

opencode plugin "github:ranxianglei/opencode-acp#2026-08-29_deprecate-min-context-limit" --global

Option C — Download artifact

  1. Download the artifact from the Actions run
  2. Extract the tarball and install:
tar xzf opencode-acp-pr352.tgz
cp -r package/dist ~/.cache/opencode/packages/opencode-acp@latest/node_modules/opencode-acp/dist
  1. Restart opencode to pick up changes.

This comment is automatically updated on each push.

@ranxianglei

Copy link
Copy Markdown
Owner Author

🤖 ework agent · vllm-qwen/qwen3.8-27b

[bot] Reviewed PR #352 (2026-08-29_deprecate-min-context-limit, head 764e820). Verdict: LGTM — approve.

Verified on the branch (checked out locally):

  • No behavior change, confirmed. The PR-specific diff (43a15e7 + 764e820) touches only: JSDoc @deprecated comments in lib/config.ts (on CompressConfig.minContextLimit and .modelMinLimits), [DEPRECATED — …] description prefixes in dcp.schema.json, CONFIGURATION.md / CONFIGURATION.zh-CN.md, and the devlog. resolveContextTokenLimit(…, "min"), overMinLimit, and the anchor set/clear logic in inject.ts are untouched.
  • npm run typecheck ✓ (clean)
  • Full suite: 1053/1053 pass, 0 fail locally — matches the claim.
  • CI on head 764e820: pr-validation ✓, test (22) ✓, test (24) ✓, build ✓, build-artifact ✓; e2e was still in_progress at check time — confirm it lands green.
  • Stacks process: branch name matches the CI regex; devlog folder devlog/2026-08-29_deprecate-min-context-limit/ matches the branch with REQ.md + WORKLOG.md (commit table filled in 764e820); no package.json version change → no changelog required.
  • zh default fix verified: code default is "80%" (lib/config.ts:231), so the zh-CN correction 45% → 80% is right; EN doc already said 80%.
  • Schema prefix matches the repo convention (cf. allowSubAgents, dcp.schema.json:90).
  • Legend rewording is correct: "accepted but no effect" was indeed wrong for a soft deprecation; "kept for backward compatibility, scheduled for removal (may still take effect until then)" is accurate.

Two minor, non-blocking notes (pre-existing or follow-up, not defects in this PR):

  1. dcp.schema.json:150 still has "default": 50000 for minContextLimit while the code default is "80%" (lib/config.ts:231). Pre-existing on master, but this PR just corrected the same drift in the zh doc — a one-line schema fix (or a follow-up) would close the last stale copy.
  2. README.md (small-context-window NOTE) still tells users to "lower compress.minContextLimit and compress.maxContextLimit". Still accurate while the knob is honored, but worth revisiting at removal time (or now) so the README doesn't steer new configs toward a deprecated knob.

Merge status: #343 and #351 are both still open — per the stated merge order (#343#351 → this), this PR is ready but must wait for them. Merging is a human-only operation per AGENTS.md §5.1.1.2; please merge yourself once the stack below lands and e2e is green: #352

@ranxianglei

Copy link
Copy Markdown
Owner Author

🤖 ework agent · vllm-qwen/qwen3.8-27b

[bot] Update: the e2e check has now completed — success. Full CI on head 764e820 is all green: pr-validation ✓, test (22) ✓, test (24) ✓, build ✓, build-artifact ✓, e2e ✓.

Nothing outstanding on my side — the PR is ready. It just needs the stack below to land first (#343#351 → this), and the merge itself is a human-only operation per AGENTS.md §5.1.1.2: #352

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant