deepflow 0.1.62 → 0.1.64
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/deepflow-auto.sh +47 -5
- package/package.json +1 -1
package/bin/deepflow-auto.sh
CHANGED
|
@@ -215,8 +215,9 @@ run_claude_monitored() {
|
|
|
215
215
|
claude_pid=$!
|
|
216
216
|
fi
|
|
217
217
|
|
|
218
|
-
# Read the FIFO line-by-line
|
|
218
|
+
# Read the FIFO line-by-line (set +e to tolerate EINTR from signals)
|
|
219
219
|
local capturing_result=false
|
|
220
|
+
set +e
|
|
220
221
|
while IFS= read -r line || [[ -n "$line" ]]; do
|
|
221
222
|
[[ -z "$line" ]] && continue
|
|
222
223
|
|
|
@@ -289,6 +290,7 @@ run_claude_monitored() {
|
|
|
289
290
|
fi
|
|
290
291
|
fi
|
|
291
292
|
done < "$fifo_path"
|
|
293
|
+
set -e
|
|
292
294
|
|
|
293
295
|
# Clean up FIFO
|
|
294
296
|
rm -f "$fifo_path"
|
|
@@ -606,9 +608,29 @@ run_spikes() {
|
|
|
606
608
|
pids+=($!)
|
|
607
609
|
done
|
|
608
610
|
|
|
609
|
-
# Wait for all remaining spikes
|
|
611
|
+
# Wait for all remaining spikes with progress heartbeat
|
|
610
612
|
auto_log "Waiting for all ${#pids[@]} spike(s) to complete..."
|
|
611
|
-
|
|
613
|
+
local wait_start=$SECONDS
|
|
614
|
+
while true; do
|
|
615
|
+
local -a still_running=()
|
|
616
|
+
local pid
|
|
617
|
+
for pid in "${pids[@]}"; do
|
|
618
|
+
if kill -0 "$pid" 2>/dev/null; then
|
|
619
|
+
still_running+=("$pid")
|
|
620
|
+
fi
|
|
621
|
+
done
|
|
622
|
+
if [[ ${#still_running[@]} -eq 0 ]]; then
|
|
623
|
+
break
|
|
624
|
+
fi
|
|
625
|
+
local elapsed=$(( SECONDS - wait_start ))
|
|
626
|
+
local mins=$(( elapsed / 60 ))
|
|
627
|
+
local secs=$(( elapsed % 60 ))
|
|
628
|
+
printf "\r ⏳ %d spike(s) running... [%dm%02ds] " "${#still_running[@]}" "$mins" "$secs"
|
|
629
|
+
pids=("${still_running[@]}")
|
|
630
|
+
sleep 5
|
|
631
|
+
done
|
|
632
|
+
printf "\r \r"
|
|
633
|
+
wait 2>/dev/null || true
|
|
612
634
|
auto_log "All spikes completed for ${spec_name} cycle ${cycle}"
|
|
613
635
|
|
|
614
636
|
# Collect results and process
|
|
@@ -786,9 +808,29 @@ Important:
|
|
|
786
808
|
impl_slugs+=("$slug")
|
|
787
809
|
done
|
|
788
810
|
|
|
789
|
-
# Wait for all implementations
|
|
811
|
+
# Wait for all implementations with progress heartbeat
|
|
790
812
|
auto_log "Waiting for all ${#pids[@]} implementation(s) to complete..."
|
|
791
|
-
|
|
813
|
+
local wait_start=$SECONDS
|
|
814
|
+
while true; do
|
|
815
|
+
local -a still_running=()
|
|
816
|
+
local pid
|
|
817
|
+
for pid in "${pids[@]}"; do
|
|
818
|
+
if kill -0 "$pid" 2>/dev/null; then
|
|
819
|
+
still_running+=("$pid")
|
|
820
|
+
fi
|
|
821
|
+
done
|
|
822
|
+
if [[ ${#still_running[@]} -eq 0 ]]; then
|
|
823
|
+
break
|
|
824
|
+
fi
|
|
825
|
+
local elapsed=$(( SECONDS - wait_start ))
|
|
826
|
+
local mins=$(( elapsed / 60 ))
|
|
827
|
+
local secs=$(( elapsed % 60 ))
|
|
828
|
+
printf "\r ⏳ %d implementation(s) running... [%dm%02ds] " "${#still_running[@]}" "$mins" "$secs"
|
|
829
|
+
pids=("${still_running[@]}")
|
|
830
|
+
sleep 5
|
|
831
|
+
done
|
|
832
|
+
printf "\r \r"
|
|
833
|
+
wait 2>/dev/null || true
|
|
792
834
|
auto_log "All implementations completed for ${spec_name} cycle ${cycle}"
|
|
793
835
|
|
|
794
836
|
# Collect results
|