Merge pull request 'fix: fix: bundled dust cleanup — tools/push3-evolution (#1035)' (#1128) from fix/issue-1035 into master

This commit is contained in:
johba 2026-03-22 23:24:12 +01:00
commit c17fe96c85

View file

@ -380,7 +380,7 @@ PYEOF
log " diverse-seeds: sampling up to $POPULATION candidates from pool ($POOL_COUNT available)"
while IFS= read -r POOL_FILE && [ "$VARIANT_IDX" -lt "$POPULATION" ]; do
CAND_FILE="$GEN_DIR/candidate_$(printf '%03d' $VARIANT_IDX).push3"
CAND_FILE="$GEN_DIR/candidate_$(printf '%03d' "$VARIANT_IDX").push3"
cp "$POOL_FILE" "$CAND_FILE"
printf '0\n' > "${CAND_FILE%.push3}.ops"
VARIANT_IDX=$((VARIANT_IDX + 1))
@ -402,7 +402,7 @@ PYEOF
|| fail "seed-gen-cli.ts failed to generate variants"
while IFS= read -r VARIANT_FILE && [ "$VARIANT_IDX" -lt "$POPULATION" ]; do
CAND_FILE="$GEN_DIR/candidate_$(printf '%03d' $VARIANT_IDX).push3"
CAND_FILE="$GEN_DIR/candidate_$(printf '%03d' "$VARIANT_IDX").push3"
cp "$VARIANT_FILE" "$CAND_FILE"
printf '0\n' > "${CAND_FILE%.push3}.ops"
VARIANT_IDX=$((VARIANT_IDX + 1))
@ -411,7 +411,7 @@ PYEOF
# Fill any remaining slots with mutations of the seed
while [ "$VARIANT_IDX" -lt "$POPULATION" ]; do
CAND_FILE="$GEN_DIR/candidate_$(printf '%03d' $VARIANT_IDX).push3"
CAND_FILE="$GEN_DIR/candidate_$(printf '%03d' "$VARIANT_IDX").push3"
MUTATED=$(run_mutate_cli mutate "$SEED" "$MUTATION_RATE") \
|| fail "Failed to mutate seed for fallback candidate $VARIANT_IDX"
printf '%s\n' "$MUTATED" > "$CAND_FILE"
@ -612,7 +612,7 @@ PYEOF
done < <(py_top_n "$ELITES" "$SCORES_FILE")
for ELITE_FILE in "${ELITE_FILES[@]}"; do
DEST="$NEXT_GEN_DIR/candidate_$(printf '%03d' $NEXT_IDX).push3"
DEST="$NEXT_GEN_DIR/candidate_$(printf '%03d' "$NEXT_IDX").push3"
cp "$ELITE_FILE" "$DEST"
printf '0\n' > "${DEST%.push3}.ops"
NEXT_IDX=$((NEXT_IDX + 1))
@ -629,7 +629,7 @@ PYEOF
# First half of remaining: mutate random survivors
for _i in $(seq 1 $HALF); do
SUR="${SURVIVOR_FILES[$((RANDOM % ${#SURVIVOR_FILES[@]}))]}"
DEST="$NEXT_GEN_DIR/candidate_$(printf '%03d' $NEXT_IDX).push3"
DEST="$NEXT_GEN_DIR/candidate_$(printf '%03d' "$NEXT_IDX").push3"
if MUTATED=$(run_mutate_cli mutate "$SUR" "$MUTATION_RATE" 2>/dev/null); then
printf '%s\n' "$MUTATED" > "$DEST"
printf '%d\n' "$MUTATION_RATE" > "${DEST%.push3}.ops"
@ -646,7 +646,7 @@ PYEOF
for _i in $(seq 1 $REMAINING); do
SUR_A="${SURVIVOR_FILES[$((RANDOM % ${#SURVIVOR_FILES[@]}))]}"
SUR_B="${SURVIVOR_FILES[$((RANDOM % ${#SURVIVOR_FILES[@]}))]}"
DEST="$NEXT_GEN_DIR/candidate_$(printf '%03d' $NEXT_IDX).push3"
DEST="$NEXT_GEN_DIR/candidate_$(printf '%03d' "$NEXT_IDX").push3"
if CROSSED=$(run_mutate_cli crossover "$SUR_A" "$SUR_B" 2>/dev/null); then
printf '%s\n' "$CROSSED" > "$DEST"
printf '0\n' > "${DEST%.push3}.ops"