fix: surface warn-only PreToolUse hooks (#2084)

This commit is contained in:
Affaan Mustafa
2026-05-28 07:45:46 -04:00
committed by GitHub
parent 04c68e483a
commit 64cd1ba248
9 changed files with 143 additions and 35 deletions

View File

@@ -0,0 +1,41 @@
#!/usr/bin/env node
'use strict';
function normalizeAdditionalContext(value) {
if (Array.isArray(value)) {
return value
.map(item => String(item || '').trim())
.filter(Boolean)
.join('\n');
}
return String(value || '').trim();
}
function combineAdditionalContext(current, next) {
const currentText = normalizeAdditionalContext(current);
const nextText = normalizeAdditionalContext(next);
if (!currentText) return nextText;
if (!nextText) return currentText;
return `${currentText}\n${nextText}`;
}
function buildPreToolUseAdditionalContext(value) {
const additionalContext = normalizeAdditionalContext(value);
if (!additionalContext) return '';
return JSON.stringify({
hookSpecificOutput: {
hookEventName: 'PreToolUse',
additionalContext,
},
});
}
module.exports = {
buildPreToolUseAdditionalContext,
combineAdditionalContext,
normalizeAdditionalContext,
};