fix: address PR #4180 review - security, typing, and test coverage
- Apply mcp_env_allowlist to plugin hooks: intersect HTTP allowedEnvVars with MCP allowlist, set command allowedEnvVars to full MCP allowlist - Scrub process.env in executeHookCommand when allowedEnvVars provided - Add PluginHooksState class with per-directory Map storage - Add PluginHooksConfig interface for typed boundary layer - Pass directory context through hook-config-handler - Add 16 tests across 4 files (40 assertions) covering allowlist filtering, env scrubbing, directory isolation, and edge cases - Remove unnecessary 'as' type assertions, use discriminated union narrowing instead
This commit is contained in:
@@ -31,7 +31,7 @@ export function createConfigHandler(deps: ConfigHandlerDeps) {
|
||||
|
||||
const pluginComponents = await loadPluginComponents({ pluginConfig });
|
||||
|
||||
applyHookConfig({ pluginComponents });
|
||||
applyHookConfig({ pluginComponents, ctx });
|
||||
|
||||
const agentResult = await applyAgentConfig({
|
||||
config,
|
||||
|
||||
Reference in New Issue
Block a user