fix(agent): use project package manager for dependency recovery#384
Conversation
代码评审报告: fix(agent): use project package manager for dependency recovery风险等级: 中 级联分析
问题发现模型未返回可结构化的问题发现;已提取可用的决策字段,原始非契约内容未附在评论中。 行级发现
Karpathy 评审
缺失覆盖
|
There was a problem hiding this comment.
Pull request overview
This PR updates the agent’s “missing npm dependencies” recovery pseudo-step to use the project’s detected package manager (from Filesense navigation context) instead of always emitting npm install ..., and adds a focused pnpm-specific test to verify command selection.
Changes:
- Added a helper to generate install/add commands for pnpm/yarn/bun with npm fallback.
- Wired the phase-completion missing-dependency recovery step to use the detected package manager from collected Filesense navigation context.
- Added a test ensuring pnpm projects emit
pnpm add ...for missing dependency recovery.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| packages/core/src/agent/step-callbacks.ts | Uses Filesense package-manager context to build the missing-dependency recovery command (pnpm/yarn/bun/npm). |
| packages/core/src/agent/step-callbacks.test.ts | Adds coverage asserting pnpm recovery uses pnpm add while keeping existing npm fallback coverage. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| function createMissingDependencyInstallCommand( | ||
| packageManager: string | undefined, | ||
| packages: string[], | ||
| ): string { | ||
| const packageList = packages.join(' '); | ||
|
|
||
| switch (packageManager) { | ||
| case 'pnpm': | ||
| return `pnpm add ${packageList}`; | ||
| case 'yarn': | ||
| return `yarn add ${packageList}`; | ||
| case 'bun': | ||
| return `bun add ${packageList}`; | ||
| default: | ||
| return `npm install ${packageList}`; | ||
| } | ||
| } |
…overy-package-manager-381
代码评审报告: fix(agent): use project package manager for dependency recovery风险等级: 低 级联分析
问题发现无 blocking findings。 变更是对既有硬编码 pnpm/yarn/bun 使用 行级发现
Karpathy 评审
缺失覆盖
|
Linked Issue Or Context
Summary
Impact Scope
packages/core/src/agent/step-callbacks.tschanges.GitNexus Impact Summary
packages/core/src/agent/step-callbacks.ts,packages/core/src/agent/step-callbacks.test.ts)executeSteps); context(createOnPhaseComplete) confirmed incoming callers; detect_changes reported changed_count=1, affected_count=0, changed_files=2, risk_level=low, changed symbolcreateOnPhaseComplete, affected_processes=[].pnpm quality:precommit, andpnpm quality:localpassed.Verification
pnpm agent:bootstrappassed.pnpm quality:predevpassed after installing dependencies from the frozen lockfile.npm install lodashvspnpm add lodashmismatch.pnpm --filter @frontagent/core exec vitest run src/agent/step-callbacks.test.tspassed: 28/28 tests.pnpm --filter @frontagent/core typecheckpassed.pnpm quality:precommitpassed.pnpm quality:localpassed.Checklist
pnpm quality:precommit, or explained why it could not run.pnpm quality:localfor critical skeleton changes, or explained why it could not run.