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
This commit is contained in:
27
pull_moltbot.sh
Executable file
27
pull_moltbot.sh
Executable file
@@ -0,0 +1,27 @@
|
||||
#!/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"
|
||||
Reference in New Issue
Block a user