perf: skip runtime-deps manifest scans when materialized#75325
perf: skip runtime-deps manifest scans when materialized#75325clawsweeper[bot] merged 4 commits intomainfrom
Conversation
|
@clawsweeper automerge |
|
Codex review: passed for ClawSweeper automerge. What this changes: The PR adds a bundled plugin runtime-deps fast path that returns before scanning all bundled plugin manifests when the requested package-level deps plus mirrored root deps are already materialized, with regression tests and an unreleased changelog update. Automerge follow-up: No repair lane is needed: this automerge-opted PR has no review findings, the changelog blocker is addressed on the latest head, and the remaining action is exact-head CI/automerge gating under the protected maintainer-label workflow. Security review: Security review cleared: Security review cleared: the diff changes runtime-deps planning, tests, and changelog text only, with no new dependency source, workflow permission, lockfile change, lifecycle script, secret handling, or command-execution surface. Review detailsBest possible solution: Let the exact current PR head finish CI and proceed through the existing ClawSweeper automerge path if required checks stay green, while keeping the broader gateway event-loop starvation issues open for follow-up work outside this narrow runtime-deps materialization fast path. Do we have a high-confidence way to reproduce the issue? Yes. The high-confidence reproduction is the packaged two-plugin fixture described in the PR: current main builds the package-level plan before the materialization check, while the PR's read-spy test verifies the unrelated bundled manifest is not read after the fast path. Is this the best way to solve the issue? Yes. The patch reuses the existing isRuntimeDepsPlanMaterialized contract, limits the early return to the requested plugin plan plus mirrored root deps, includes config-dependent manifest runtime deps when needed, and falls back to the existing full package-level plan when the proof is incomplete. What I checked:
Likely related people:
Remaining risk / open question:
Codex review notes: model gpt-5.5, reasoning high; reviewed against b277ae3f4c40. |
|
🦞🦞 I added Draft PRs stay fix-only until GitHub marks them ready for review. A maintainer can pause this with |
|
🦞🦞 Source: I left the PR open for the remaining gate instead of bypassing it. |
613eaa7 to
3a03170
Compare
|
🦞🦞 Source: The automerge loop is complete. |
Summary
Change Type (select all)
Scope (select all touched areas)
Linked Issue/PR
Root Cause (if applicable)
Regression Test Plan (if applicable)
src/plugins/bundled-runtime-deps.test.tsUser-visible / Behavior Changes
None directly. This is a performance/responsiveness optimization for packaged plugin runtime-deps loading.
Diagram (if applicable)
Security Impact (required)
Yes, explain risk + mitigation: N/ARepro + Verification
Environment
OPENCLAW_PLUGIN_STAGE_DIRfixtureSteps
Expected
Actual
Evidence
Human Verification (required)
Review Conversations
Compatibility / Migration
Risks and Mitigations
isRuntimeDepsPlanMaterialized; stale/incomplete manifests fall through to the existing full package-level plan.