fix(add_library): wrapper message reflects dedup vs add branch
The wrapper at server.ts:1896 always rendered "Library 'X' added" even
when the script's dedup pre-check no-op'd because the same library was
already referenced. The script itself emits distinct markers
("Library Already Present:" vs "Library Added:"); the wrapper now
inspects result.output to pick wording instead of hardcoding "added".
This commit is contained in:
parent
065bce5b3d
commit
e94892233f
1 changed files with 8 additions and 6 deletions
|
|
@ -1970,12 +1970,14 @@ export async function startMcpServer(config: ServerConfig): Promise<void> {
|
||||||
['ensure_project_open']
|
['ensure_project_open']
|
||||||
);
|
);
|
||||||
const result = await executor.executeScript(script);
|
const result = await executor.executeScript(script);
|
||||||
return await formatModifyingResponse(
|
// Pick wording from the script's branch (dedup vs add) instead of
|
||||||
result,
|
// always saying "added" -- script emits "Library Already Present"
|
||||||
`Library '${args.libraryName}' added to ${args.projectFilePath}. Project saved.`,
|
// on the dedup no-op path and "Library Added" on actual add.
|
||||||
escaped,
|
const dedupHit = result.output.includes('Library Already Present:');
|
||||||
mirrorCtx
|
const successMessage = dedupHit
|
||||||
);
|
? `Library '${args.libraryName}' already referenced in ${args.projectFilePath}. No-op (use force=true to add a duplicate).`
|
||||||
|
: `Library '${args.libraryName}' added to ${args.projectFilePath}. Project saved.`;
|
||||||
|
return await formatModifyingResponse(result, successMessage, escaped, mirrorCtx);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue