claude-evolve 1.4.7 → 1.4.8
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/bin/claude-evolve-worker +15 -3
- package/package.json +1 -1
package/bin/claude-evolve-worker
CHANGED
|
@@ -111,18 +111,22 @@ Important: Make meaningful changes that match the description. Don't just add co
|
|
|
111
111
|
|
|
112
112
|
# Run evaluation
|
|
113
113
|
echo "[WORKER-$$] Evaluating algorithm..."
|
|
114
|
-
local
|
|
114
|
+
local eval_output_file="/tmp/claude-evolve-eval-$$-$candidate_id.out"
|
|
115
115
|
local eval_start=$(date +%s)
|
|
116
116
|
|
|
117
117
|
# Prepare evaluation command
|
|
118
118
|
local eval_cmd=("$PYTHON_CMD" "$FULL_EVALUATOR_PATH" "$candidate_id")
|
|
119
119
|
[[ -n "$timeout_seconds" ]] && eval_cmd=(timeout "$timeout_seconds" "${eval_cmd[@]}")
|
|
120
120
|
|
|
121
|
-
# Run evaluation and capture output
|
|
122
|
-
|
|
121
|
+
# Run evaluation with tee to both display and capture output
|
|
122
|
+
# Use stdbuf to disable buffering for real-time output
|
|
123
|
+
if stdbuf -o0 -e0 "${eval_cmd[@]}" 2>&1 | tee "$eval_output_file" >&2; then
|
|
123
124
|
local eval_end=$(date +%s)
|
|
124
125
|
local eval_duration=$((eval_end - eval_start))
|
|
125
126
|
|
|
127
|
+
# Read captured output for parsing
|
|
128
|
+
eval_output=$(<"$eval_output_file")
|
|
129
|
+
|
|
126
130
|
# Extract performance score - support multiple formats
|
|
127
131
|
# Try to parse the output and extract score
|
|
128
132
|
local score_and_json=$("$PYTHON_CMD" -c "
|
|
@@ -224,10 +228,18 @@ with EvolutionCSV('$FULL_CSV_PATH') as csv:
|
|
|
224
228
|
else
|
|
225
229
|
echo "[WORKER-$$] ERROR: No score found in evaluation output" >&2
|
|
226
230
|
echo "[WORKER-$$] Output: $eval_output" >&2
|
|
231
|
+
rm -f "$eval_output_file"
|
|
227
232
|
return 1
|
|
228
233
|
fi
|
|
234
|
+
|
|
235
|
+
# Clean up temp file
|
|
236
|
+
rm -f "$eval_output_file"
|
|
229
237
|
else
|
|
230
238
|
local exit_code=$?
|
|
239
|
+
# Read any output that was captured before failure
|
|
240
|
+
eval_output=$(<"$eval_output_file")
|
|
241
|
+
rm -f "$eval_output_file"
|
|
242
|
+
|
|
231
243
|
echo "[WORKER-$$] ERROR: Evaluation failed with exit code $exit_code" >&2
|
|
232
244
|
echo "[WORKER-$$] Output: $eval_output" >&2
|
|
233
245
|
|