Files
atm-curs-dl/pull_moltbot.sh
Claude Agent c28e08b3aa Fix: transcribe.py nu mai sterge audio daca transcrierea nu pare completa
Cauza: am rulat `find transcripts -size -1k -delete` cat transcribe.py scria
in acelasi director. faster_whisper scrie bufferat, deci o transcriere de o
ora sta sub 1KB minute in sir; find a sters fisierul de sub proces, Python a
logat "Transcribed" pe un inode disparut, si audio-ul a fost sters. Lectia
11 (25.11.2025) pierduta complet, re-descarcata.

- transcribe_file() intoarce bool, verifica nr. cuvinte vs durata audio
- pull_moltbot.sh: staging + mutare doar peste 1KB, in loc de find -delete
- PROGRESS.md: documentat, ca sa nu se repete

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MtSTyTmt6AbCL9j5ajEDm1
2026-09-12 18:35:06 +00:00

28 lines
961 B
Bash
Executable File

#!/bin/bash
# Aduce transcrierile gata de pe moltbot.
#
# NU folosi `scp ... && find -size -1k -delete` pe directorul de transcrieri:
# transcribe.py scrie acolo în paralel, iar un fișier în curs de scriere e
# sub 1KB minute în șir. Un `find -delete` l-a șters o dată de sub proces,
# iar transcrierea s-a pierdut complet (audio-ul fusese deja șters).
#
# Aici: aducem într-un director de staging, mutăm doar ce e complet.
set -euo pipefail
DEST=${1:-transcripts/09_Q_and_A}
STAGE=$(mktemp -d)
trap 'rm -rf "$STAGE"' EXIT
scp -q "root@moltbot:/root/atm/transcripts/*.txt" "$STAGE/" 2>/dev/null || true
moved=0
for f in "$STAGE"/*.txt; do
[ -e "$f" ] || continue
if [ "$(stat -c%s "$f")" -lt 1024 ]; then
echo " sar peste (incomplet, $(stat -c%s "$f") octeți): $(basename "$f")"
continue
fi
mv "$f" "$DEST/"
echo " adus: $(basename "$f")"
moved=$((moved + 1))
done
echo "Aduse $moved transcrieri în $DEST"