start-vibing 2.0.23 → 2.0.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -932,6 +932,7 @@ interface HookInput {
|
|
|
932
932
|
}
|
|
933
933
|
|
|
934
934
|
interface HookResult {
|
|
935
|
+
continue: boolean;
|
|
935
936
|
decision: 'approve' | 'block';
|
|
936
937
|
reason: string;
|
|
937
938
|
}
|
|
@@ -1099,6 +1100,7 @@ async function main(): Promise<void> {
|
|
|
1099
1100
|
// Prevent infinite loops
|
|
1100
1101
|
if (hookInput.stop_hook_active) {
|
|
1101
1102
|
const result: HookResult = {
|
|
1103
|
+
continue: false,
|
|
1102
1104
|
decision: 'approve',
|
|
1103
1105
|
reason: 'Stop hook cycle detected, allowing exit',
|
|
1104
1106
|
};
|
|
@@ -1139,6 +1141,13 @@ async function main(): Promise<void> {
|
|
|
1139
1141
|
STOP VALIDATOR - BLOCKED (1 issue to fix)
|
|
1140
1142
|
================================================================================
|
|
1141
1143
|
|
|
1144
|
+
**MANDATORY**: After fixing this issue, you MUST attempt to complete the task
|
|
1145
|
+
again so this hook can re-validate. DO NOT consider the task done until the
|
|
1146
|
+
stop hook returns "ALL CHECKS PASSED". Keep fixing issues one by one until
|
|
1147
|
+
all validations pass.
|
|
1148
|
+
|
|
1149
|
+
--------------------------------------------------------------------------------
|
|
1150
|
+
|
|
1142
1151
|
ERROR: ${error.type}
|
|
1143
1152
|
|
|
1144
1153
|
${error.message}
|
|
@@ -1151,13 +1160,16 @@ REQUIRED ACTION: Launch the following subagent to fix this issue
|
|
|
1151
1160
|
|
|
1152
1161
|
Task(subagent_type="${subagentInfo.agent}", prompt="${subagentInfo.prompt}")
|
|
1153
1162
|
|
|
1154
|
-
|
|
1163
|
+
--------------------------------------------------------------------------------
|
|
1164
|
+
AFTER FIXING: You MUST try to complete the task again to trigger re-validation.
|
|
1165
|
+
The stop hook will check for remaining issues. Repeat until ALL CHECKS PASSED.
|
|
1155
1166
|
================================================================================
|
|
1156
1167
|
`;
|
|
1157
1168
|
|
|
1158
1169
|
// Stop hooks MUST return JSON with decision field
|
|
1159
1170
|
// Exit code 2 signals blocking, but the JSON format is required for Stop hooks
|
|
1160
|
-
|
|
1171
|
+
// continue: true tells Claude to KEEP WORKING after receiving this block
|
|
1172
|
+
const result: HookResult = { continue: true, decision: 'block', reason: blockReason.trim() };
|
|
1161
1173
|
console.log(JSON.stringify(result));
|
|
1162
1174
|
process.exit(2);
|
|
1163
1175
|
}
|
|
@@ -1176,7 +1188,8 @@ All validations passed. Task may complete.
|
|
|
1176
1188
|
################################################################################
|
|
1177
1189
|
`;
|
|
1178
1190
|
|
|
1179
|
-
|
|
1191
|
+
// continue: false tells Claude the task is DONE and can stop
|
|
1192
|
+
const result: HookResult = { continue: false, decision: 'approve', reason: successOutput.trim() };
|
|
1180
1193
|
console.log(JSON.stringify(result));
|
|
1181
1194
|
process.exit(0);
|
|
1182
1195
|
}
|
|
@@ -1184,7 +1197,7 @@ All validations passed. Task may complete.
|
|
|
1184
1197
|
main().catch((err) => {
|
|
1185
1198
|
console.error('Hook error:', err);
|
|
1186
1199
|
// On error, allow to continue to not block user
|
|
1187
|
-
const result: HookResult = { decision: 'approve', reason: 'Hook error, allowing by default' };
|
|
1200
|
+
const result: HookResult = { continue: false, decision: 'approve', reason: 'Hook error, allowing by default' };
|
|
1188
1201
|
console.log(JSON.stringify(result));
|
|
1189
1202
|
process.exit(0);
|
|
1190
1203
|
});
|