Skip to content

feat: add per-agent compaction and contextPruning config overrides#52751

Closed
jjjj-lgtm wants to merge 3 commits into
openclaw:mainfrom
jjjj-lgtm:feature/per-agent-compaction-context-pruning
Closed

feat: add per-agent compaction and contextPruning config overrides#52751
jjjj-lgtm wants to merge 3 commits into
openclaw:mainfrom
jjjj-lgtm:feature/per-agent-compaction-context-pruning

Conversation

@jjjj-lgtm

Copy link
Copy Markdown

Summary

Adds support for per-agent compaction and contextPruning configuration overrides.

Previously, these settings could only be defined at agents.defaults, applying globally to all agents. This PR allows overriding them per agent in agents.list.

Changes

  • Added compaction?: AgentCompactionConfig to AgentConfig type
  • Added contextPruning?: AgentContextPruningConfig to AgentConfig type
  • Exported ContextPruningSchema and CompactionSchema from zod-schema.agent-defaults.ts
  • Added both fields to AgentEntrySchema for runtime validation

Usage Example

{
  "agents": {
    "defaults": {
      "compaction": {
        "mode": "safeguard",
        "reserveTokens": 8000
      }
    },
    "list": [
      {
        "id": "main",
        "compaction": {
          "mode": "default",
          "reserveTokens": 12000
        }
      }
    ]
  }
}

- Add compaction and contextPruning fields to AgentConfig type
- Export ContextPruningSchema and CompactionSchema from zod-schema.agent-defaults
- Add compaction and contextPruning to AgentEntrySchema

Fixes openclaw#52732
@greptile-apps

greptile-apps Bot commented Mar 23, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR enables per-agent overrides for compaction and contextPruning configuration by extracting the existing inline Zod schemas from AgentDefaultsSchema into exported top-level constants and adding them to both AgentConfig (TypeScript type) and AgentEntrySchema (Zod validation). The refactoring is structurally sound, but the chosen extraction approach introduces a circular module dependency between zod-schema.agent-runtime.ts and zod-schema.agent-defaults.ts that can corrupt one or both schemas at runtime.

  • zod-schema.agent-defaults.ts has always imported from zod-schema.agent-runtime.ts (HeartbeatSchema, AgentSandboxSchema, etc.)
  • The new import of ContextPruningSchema/CompactionSchema in zod-schema.agent-runtime.ts closes the loop, creating a cycle
  • Depending on which module is evaluated first, either AgentDefaultsSchema or AgentEntrySchema will be constructed with undefined schema values, silently failing validation
  • The fix is to extract the two new schemas into a standalone file (e.g., zod-schema.compaction.ts) with no dependency on either module

Confidence Score: 2/5

  • Not safe to merge — circular module dependency can silently corrupt schema validation at runtime.
  • The feature intent is correct and the type-level changes are clean, but the implementation introduces a circular import between zod-schema.agent-runtime.ts and zod-schema.agent-defaults.ts. In any runtime evaluation order, one of the two schemas (AgentDefaultsSchema or AgentEntrySchema) will be constructed with undefined Zod sub-schemas, making config validation unreliable or broken. This is a concrete runtime correctness issue that needs to be resolved before merging.
  • src/config/zod-schema.agent-runtime.ts — the new import from zod-schema.agent-defaults.ts creates the cycle; the fix should live here (or in a new intermediate schema file).
Prompt To Fix All With AI
This is a comment left during a code review.
Path: src/config/zod-schema.agent-runtime.ts
Line: 14-17

Comment:
**Circular module dependency introduced**

This import creates a circular dependency:

- `zod-schema.agent-runtime.ts` → imports `ContextPruningSchema`, `CompactionSchema` from `zod-schema.agent-defaults.ts`
- `zod-schema.agent-defaults.ts` → already imports `HeartbeatSchema`, `AgentSandboxSchema`, `AgentModelSchema`, `MemorySearchSchema` from `zod-schema.agent-runtime.ts`

In both Node.js CJS and ESM, a circular dependency like this means that when one module is being evaluated and the other hasn't finished loading yet, the importing module receives `undefined` for the not-yet-exported bindings. Depending on which module is evaluated first, either:
- `AgentDefaultsSchema` is built with `HeartbeatSchema`/`AgentSandboxSchema`/etc. as `undefined`, or
- `AgentEntrySchema` is built with `CompactionSchema`/`ContextPruningSchema` as `undefined`

Either scenario silently corrupts schema validation at runtime.

**Recommended fix:** Extract `ContextPruningSchema` and `CompactionSchema` into a new dedicated file (e.g., `src/config/zod-schema.compaction.ts`) that has no dependency on either `zod-schema.agent-runtime.ts` or `zod-schema.agent-defaults.ts`. Both files can then safely import from the new module without a cycle.

How can I resolve this? If you propose a fix, please make it concise.

Reviews (1): Last reviewed commit: "feat: add per-agent compaction and conte..." | Re-trigger Greptile

Comment thread src/config/zod-schema.agent-runtime.ts Outdated
Comment on lines +14 to +17
import {
ContextPruningSchema,
CompactionSchema,
} from "./zod-schema.agent-defaults.js";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Circular module dependency introduced

This import creates a circular dependency:

  • zod-schema.agent-runtime.ts → imports ContextPruningSchema, CompactionSchema from zod-schema.agent-defaults.ts
  • zod-schema.agent-defaults.ts → already imports HeartbeatSchema, AgentSandboxSchema, AgentModelSchema, MemorySearchSchema from zod-schema.agent-runtime.ts

In both Node.js CJS and ESM, a circular dependency like this means that when one module is being evaluated and the other hasn't finished loading yet, the importing module receives undefined for the not-yet-exported bindings. Depending on which module is evaluated first, either:

  • AgentDefaultsSchema is built with HeartbeatSchema/AgentSandboxSchema/etc. as undefined, or
  • AgentEntrySchema is built with CompactionSchema/ContextPruningSchema as undefined

Either scenario silently corrupts schema validation at runtime.

Recommended fix: Extract ContextPruningSchema and CompactionSchema into a new dedicated file (e.g., src/config/zod-schema.compaction.ts) that has no dependency on either zod-schema.agent-runtime.ts or zod-schema.agent-defaults.ts. Both files can then safely import from the new module without a cycle.

Prompt To Fix With AI
This is a comment left during a code review.
Path: src/config/zod-schema.agent-runtime.ts
Line: 14-17

Comment:
**Circular module dependency introduced**

This import creates a circular dependency:

- `zod-schema.agent-runtime.ts` → imports `ContextPruningSchema`, `CompactionSchema` from `zod-schema.agent-defaults.ts`
- `zod-schema.agent-defaults.ts` → already imports `HeartbeatSchema`, `AgentSandboxSchema`, `AgentModelSchema`, `MemorySearchSchema` from `zod-schema.agent-runtime.ts`

In both Node.js CJS and ESM, a circular dependency like this means that when one module is being evaluated and the other hasn't finished loading yet, the importing module receives `undefined` for the not-yet-exported bindings. Depending on which module is evaluated first, either:
- `AgentDefaultsSchema` is built with `HeartbeatSchema`/`AgentSandboxSchema`/etc. as `undefined`, or
- `AgentEntrySchema` is built with `CompactionSchema`/`ContextPruningSchema` as `undefined`

Either scenario silently corrupts schema validation at runtime.

**Recommended fix:** Extract `ContextPruningSchema` and `CompactionSchema` into a new dedicated file (e.g., `src/config/zod-schema.compaction.ts`) that has no dependency on either `zod-schema.agent-runtime.ts` or `zod-schema.agent-defaults.ts`. Both files can then safely import from the new module without a cycle.

How can I resolve this? If you propose a fix, please make it concise.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c897f6849d

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread src/config/zod-schema.agent-runtime.ts Outdated
Comment on lines +14 to +17
import {
ContextPruningSchema,
CompactionSchema,
} from "./zod-schema.agent-defaults.js";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Remove the new zod schema import cycle

Importing ContextPruningSchema/CompactionSchema here creates a direct cycle with src/config/zod-schema.agent-defaults.ts:3-8, which already imports HeartbeatSchema, AgentSandboxSchema, and MemorySearchSchema from this module. src/config/zod-schema.agents.ts:2-9 loads both modules during normal config parsing, so one side now has to read the other side's top-level const exports before they are initialized; in ESM that can throw a ReferenceError and prevent startup/config validation entirely.

Useful? React with 👍 / 👎.

Comment on lines +78 to +81
/** Optional per-agent compaction settings (overrides agents.defaults.compaction). */
compaction?: AgentCompactionConfig;
/** Optional per-agent context pruning settings (overrides agents.defaults.contextPruning). */
contextPruning?: AgentContextPruningConfig;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Wire per-agent compaction and pruning overrides into runtime

These new AgentConfig fields are only typed/validated; the runtime still ignores them. resolveAgentConfig() in src/agents/agent-scope.ts:28-45,130-149 does not return either field, and the embedded Pi paths still read only cfg.agents?.defaults in src/agents/pi-embedded-runner/extensions.ts:37-45,60-93, src/agents/pi-settings.ts:67-77, src/agents/pi-embedded-runner/compact.ts:625-627, and src/agents/pi-embedded-runner/run/attempt.ts:2981-2984. As a result, agents.list[].compaction / agents.list[].contextPruning now parse successfully but are a silent no-op for every agent.

Useful? React with 👍 / 👎.

Extracted ContextPruningSchema and CompactionSchema into a new dedicated
file zod-schema.compaction.ts to break the circular import dependency.

Fixes code review feedback: circular module dependency between
zod-schema.agent-runtime.ts and zod-schema.agent-defaults.ts
Add compaction and contextPruning fields to ResolvedAgentConfig type
and resolveAgentConfig() return object so per-agent overrides are
actually used at runtime.

Fixes code review feedback: per-agent overrides ignored by runtime
@openclaw-barnacle openclaw-barnacle Bot added the agents Agent runtime and tooling label Mar 26, 2026
@jjjj-lgtm

Copy link
Copy Markdown
Author

maintainer review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f839b37b0d

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment on lines +780 to +781
compaction: CompactionSchema,
contextPruning: ContextPruningSchema,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Reject or apply per-agent compaction/pruning overrides

These new schema fields make agents.list[].compaction and agents.list[].contextPruning validate successfully, but runtime compaction/pruning logic still reads only cfg.agents.defaults (for example in src/agents/pi-embedded-runner/extensions.ts:37-74, src/agents/pi-settings.ts:67, src/agents/pi-embedded-runner/compact.ts:626, and src/agents/pi-embedded-runner/run/attempt.ts:2982). Fresh evidence in this commit is that resolveAgentConfig now carries both fields, yet there are still no call sites that consume resolveAgentConfig(...).compaction/contextPruning, so per-agent overrides are silently ignored whenever they differ from defaults.

Useful? React with 👍 / 👎.

@jjjj-lgtm

Copy link
Copy Markdown
Author

Hi @codex review

This PR has been updated with fixes for the circular dependency issue. The latest commit (48b98e6) extracts ContextPruningSchema and CompactionSchema into a new dedicated file zod-schema.compaction.ts to break the circular import cycle.

Additionally, the resolveAgentConfig() function in agent-scope.ts has been updated to include compaction and contextPruning in the resolved config.

Please re-review the latest commit. Thank you!

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f839b37b0d

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment on lines +780 to +781
compaction: CompactionSchema,
contextPruning: ContextPruningSchema,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Apply per-agent compaction overrides in standard run path

Adding these fields to AgentEntrySchema makes agents.list[].compaction and agents.list[].contextPruning valid config, but the normal reply pipeline still runs compaction/pruning from cfg.agents.defaults only. In the non-cron flow, getReplyFromConfig/get-reply-run pass the unmerged config through to runEmbeddedPiAgent, and compaction logic (for example in src/agents/pi-embedded-runner/extensions.ts and src/agents/pi-embedded-runner/run/attempt.ts) reads global defaults rather than per-agent entries; only isolated cron merges per-agent overrides via buildCronAgentDefaultsConfig. This means users can set these new per-agent keys without errors and still get global compaction/pruning behavior.

Useful? React with 👍 / 👎.

@openclaw-barnacle

Copy link
Copy Markdown

This pull request has been automatically marked as stale due to inactivity.
Please add updates or it will be closed.

@openclaw-barnacle openclaw-barnacle Bot added the stale Marked as stale due to inactivity label Apr 29, 2026
@clawsweeper

clawsweeper Bot commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Codex review: found issues before merge.

What this changes:

The PR adds per-agent compaction and contextPruning type/schema fields, extracts shared Zod schemas, and returns those fields from agent config resolution.

Maintainer follow-up before merge:

This is an open implementation PR with a blocking runtime gap and overlapping open PR #69988; maintainers should choose or request a consolidated canonical branch rather than queue an automated repair on this source branch.

Security review:

Security review cleared: The PR changes config types, Zod schemas, and resolver plumbing only; it does not add dependencies, workflow changes, secret handling, install hooks, release metadata, or new code-execution surfaces.

Review findings:

  • [P1] Apply the per-agent overrides before accepting them — src/agents/agent-scope.ts:143-144
Review details

Best possible solution:

Land one canonical implementation that accepts both per-agent keys, merges each agent override over agents.defaults, passes the effective settings through Pi settings, extension factories, direct compaction/reload paths, generated config surfaces, and docs, then resolve #52732 and any overlapping PR only after that implementation merges.

Full review comments:

  • [P1] Apply the per-agent overrides before accepting them — src/agents/agent-scope.ts:143-144
    These added fields make agents.list[].compaction and agents.list[].contextPruning valid and return them from resolveAgentConfig(), but the standard Pi compaction/pruning consumers still read cfg.agents.defaults and are called without an agent id or effective config. Users can set per-agent values that parse successfully but do not change runtime behavior.
    Confidence: 0.88

Overall correctness: patch is incorrect
Overall confidence: 0.88

Acceptance criteria:

  • pnpm test src/config/zod-schema.agent-defaults.test.ts src/agents/agent-scope.test.ts src/agents/pi-settings.test.ts src/agents/pi-embedded-runner/extensions.test.ts
  • pnpm exec oxfmt --check --threads=1 src/config/types.agents.ts src/config/zod-schema.agent-runtime.ts src/config/zod-schema.agent-defaults.ts src/agents/agent-scope-config.ts src/agents/pi-settings.ts src/agents/pi-embedded-runner/extensions.ts docs/gateway/config-agents.md
  • pnpm check:changed in Testbox before handoff if maintainers choose to land a consolidated implementation

What I checked:

  • Current per-agent type lacks requested keys: AgentConfig on current main includes per-agent model, thinking, skills, memory search, context limits, heartbeat, sandbox, tools, and runtime fields, but no compaction or contextPruning. (src/config/types.agents.ts:76, 6516be102392)
  • Current per-agent schema rejects the keys: AgentEntrySchema is strict and does not define compaction or contextPruning, so main still rejects those keys under agents.list[]. (src/config/zod-schema.agent-runtime.ts:829, 6516be102392)
  • Defaults own the existing public knobs: AgentDefaultsConfig still defines contextPruning and compaction, confirming the shipped surface is defaults-only for these settings. (src/config/types.agent-defaults.ts:278, 6516be102392)
  • Resolver lacks effective compaction/pruning values: ResolvedAgentConfig and resolveAgentConfig() merge contextLimits over defaults but do not expose effective compaction or contextPruning values on current main. (src/agents/agent-scope-config.ts:15, 6516be102392)
  • Runtime compaction settings read defaults only: applyPiCompactionSettingsFromConfig() reads params.cfg?.agents?.defaults?.compaction; no agentId or resolved per-agent config is passed here on main. (src/agents/pi-settings.ts:65, 6516be102392)
  • Runtime extension factories read defaults only: Context pruning and compaction safeguard setup read agents.defaults.contextPruning and agents.defaults.compaction, so accepted per-agent values would not affect these runtime paths. (src/agents/pi-embedded-runner/extensions.ts:87, 6516be102392)

Likely related people:

  • steipete: Recent path history routes the agent defaults schema/types, compaction docs, memory-flush compaction defaults, and agent runtime config migration through this maintainer, which are the config surfaces a canonical fix must extend. (role: recent maintainer / likely follow-up owner; confidence: high; commits: 5b9be2cdb1c0, 29af4add2a8e, 540cbe24be4c; files: src/config/types.agent-defaults.ts, src/config/zod-schema.agent-defaults.ts, src/config/types.agents.ts)
  • vincentkoc: Recent history shows ownership around the agent-scope helper split and embedded extension factory/plugin runtime seams, which are the runtime paths where effective per-agent settings would need to be threaded. (role: adjacent owner; confidence: medium; commits: a372e4a15240, 91ac48524610; files: src/agents/agent-scope-config.ts, src/agents/agent-scope.ts, src/agents/pi-embedded-runner/extensions.ts)
  • Takhoffman: Earlier merged history added the Pi compaction tuning config and tests across pi-settings, embedded runner compaction paths, and agent defaults config, which this PR now tries to make agent-scoped. (role: introduced related behavior; confidence: medium; commits: c1ac37a6410a; files: src/agents/pi-settings.ts, src/agents/pi-embedded-runner/compact.ts, src/agents/pi-embedded-runner/run/attempt.ts)

Remaining risk / open question:

Codex review notes: model gpt-5.5, reasoning high; reviewed against 6516be102392.

@clawsweeper

clawsweeper Bot commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Codex review: found issues before merge.

What this changes:

The PR adds per-agent compaction and contextPruning type/schema fields, extracts shared Zod schemas, and returns those fields from agent config resolution.

Maintainer follow-up before merge:

This is an open implementation PR with a real feature request, a blocking runtime gap, and an overlapping open PR; the next action is maintainer branch/consolidation judgment rather than an automated repair lane on this source branch.

Review findings:

  • [P1] Apply the per-agent overrides before accepting them — src/agents/agent-scope.ts:143-144
Review details

Best possible solution:

Land one canonical implementation that accepts both per-agent keys, merges each agent override over agents.defaults, passes the effective settings through Pi settings and embedded extension factories, updates config docs/generated surfaces, and keeps #52732 open until that implementation merges.

Full review comments:

  • [P1] Apply the per-agent overrides before accepting them — src/agents/agent-scope.ts:143-144
    These added fields make agents.list[].compaction and agents.list[].contextPruning valid, but the standard Pi setup still reads cfg.agents.defaults in the compaction/pruning consumers. As written, users can set per-agent values that parse successfully but do not change runtime behavior.
    Confidence: 0.88

Overall correctness: patch is incorrect
Overall confidence: 0.88

Acceptance criteria:

  • pnpm test src/config/zod-schema.agent-defaults.test.ts src/agents/agent-scope.test.ts src/agents/pi-settings.test.ts src/agents/pi-embedded-runner/extensions.test.ts
  • pnpm exec oxfmt --check --threads=1 src/config/types.agents.ts src/config/zod-schema.agent-runtime.ts src/config/zod-schema.agent-defaults.ts src/agents/agent-scope-config.ts src/agents/pi-settings.ts src/agents/pi-embedded-runner/extensions.ts docs/gateway/config-agents.md
  • pnpm check:changed in Testbox before handoff if maintainers choose to land a consolidated implementation

What I checked:

  • Per-agent type still omits requested keys on main: AgentConfig defines per-agent model, thinking, skills, memory search, context limits, heartbeat, embedded Pi, sandbox, params, tools, and runtime fields, but not compaction or contextPruning. (src/config/types.agents.ts:76, e46dccb35374)
  • Defaults-only type owns the current knobs: AgentDefaultsConfig exposes contextPruning?: AgentContextPruningConfig and compaction?: AgentCompactionConfig, confirming the current public config surface is defaults-only for these settings. (src/config/types.agent-defaults.ts:278, e46dccb35374)
  • Strict per-agent schema rejects the keys on main: AgentEntrySchema is .strict() and does not include compaction or contextPruning, so current main still rejects those keys under agents.list[]. (src/config/zod-schema.agent-runtime.ts:828, e46dccb35374)
  • Current resolver does not produce effective compaction/pruning settings: ResolvedAgentConfig and resolveAgentConfig() include merged contextLimits but no compaction or contextPruning field, so there is no current effective per-agent value to pass downstream. (src/agents/agent-scope-config.ts:15, e46dccb35374)
  • Runtime consumers read defaults-only config: Pi settings derive compactionCfg from params.cfg?.agents?.defaults?.compaction, and the embedded extension factories read defaults-only contextPruning and compaction when enabling pruning or safeguard compaction. (src/agents/pi-settings.ts:76, e46dccb35374)
  • Standard run path passes unmerged config only: The standard embedded Pi attempt path creates settings and extension factories from params.config without an agent id or resolved per-agent compaction/pruning config, then reapplies defaults-based compaction settings after reload. (src/agents/pi-embedded-runner/run/attempt.ts:1342, e46dccb35374)

Likely related people:

  • steipete: Local blame on the current checkout routes the central config, resolver, and Pi compaction/pruning files through Peter, and the provided ClawSweeper context identifies recent compaction defaults/runtime and agent config migration work under this route. (role: recent maintainer / likely follow-up owner; confidence: high; commits: 34d11d57579d, 5b9be2cdb1c0, 540cbe24be4c; files: src/config/types.agent-defaults.ts, src/config/zod-schema.agent-defaults.ts, src/agents/pi-settings.ts)
  • vincentkoc: Provided related review context routes adjacent history through Vincent for agent-scope helpers and Pi runtime paths where effective per-agent settings would need to be threaded. (role: adjacent owner; confidence: medium; commits: ad2516b1c876, a372e4a15240, 47f6a98909b5; files: src/config/types.agents.ts, src/config/zod-schema.agent-runtime.ts, src/agents/agent-scope-config.ts)

Remaining risk / open question:

  • Merging this PR as-is would let users configure per-agent keys that validate but do not affect the standard runtime compaction/pruning behavior.
  • The branch edits the older src/agents/agent-scope.ts resolver shape while current main’s central resolver implementation lives in src/agents/agent-scope-config.ts.
  • The overlapping open PR feat(config): support per-agent compaction overrides #69988 appears to cover per-agent compaction only, leaving the contextPruning half of this PR’s stated feature unresolved.

Codex review notes: model gpt-5.5, reasoning high; reviewed against e46dccb35374.

@vincentkoc vincentkoc self-assigned this Apr 29, 2026
@vincentkoc

Copy link
Copy Markdown
Member

Thanks for the per-agent compaction proposal. Closing this stale config feature because compaction/context-pruning policy needs an owner-backed design path.

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

Labels

agents Agent runtime and tooling size: S stale Marked as stale due to inactivity

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants