refactor(agents): trim CLI and facade exports#106917
Conversation
|
Land-ready proof for exact signed head
Known gap: hosted CI was not awaited, per maintainer instruction. Latest main movement is OnePassword-only with no agents or baseline overlap. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6e632b3ae2
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| @@ -14,8 +14,6 @@ import { | |||
| import { collectExplicitDenylist, mergeAlsoAllowPolicy } from "../tool-policy.js"; | |||
| import type { AnyAgentTool } from "../tools/common.js"; | |||
|
|
|||
There was a problem hiding this comment.
Keep the policy facade export for Docker QA
When pnpm test:docker:agent-bundle-mcp-tools runs, scripts/e2e/agent-bundle-mcp-tools-docker.sh:31 starts test/e2e/qa-lab/runtime/agent-bundle-mcp-tools-docker-client.ts, which still imports resolveConversationCapabilityProfile from dist/agents/embedded-agent-runner/effective-tool-policy.js at lines 13-16. Removing this re-export makes the static ESM import fail before the bundle-MCP smoke can run; either keep the facade export or update that Docker harness to import the canonical conversation-capability-profile module.
Useful? React with 👍 / 👎.
* refactor(agents): trim CLI and facade exports * refactor(agents): privatize compaction planning helpers
* refactor(agents): trim CLI and facade exports * refactor(agents): privatize compaction planning helpers
What Problem This Solves
Production-mode Knip still tracked 20 agent exports that were module-private implementation types, duplicate facade reexports, or test-only parser seams.
Why This Change Was Made
Make same-module types and parsers private. Remove duplicate facade exports while retaining canonical subscription, MCP, plugin-SDK, and Codex web-search contracts. Route JSON/JSONL parser coverage through public
parseCliOutput, route compaction coverage through retained planning entry points, and derive the test-only conversation parameter type from the production resolver. Three newly exposed compaction-planning helpers also become module-private so regeneration adds no replacement rows.User Impact
No runtime, CLI, plugin-SDK, or configuration behavior change. Internal TypeScript surface becomes smaller and canonical ownership is clearer.
Evidence
tbx_01kxeydekbbw9cnw94qsghe4nr: 8 files, 140/140 tests green.