diff --git a/PROGRESS.md b/PROGRESS.md index 3c185cf..ea2472d 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -1,4 +1,4 @@ -# Progres — atm-curs-dl (actualizat 2026-09-14, 06:45 UTC — predare, 13 transcrieri nerecoltate) +# Progres — atm-curs-dl (actualizat 2026-09-14, 07:10 UTC — transa 2 de AZ in lucru, audio sters) Pipeline personal de transcriere + sumarizare pentru cursul de trading ATM (Bogdan Jinga, systeme.io), cont cu acces parțial. Repo: `romfast/atm-curs-dl` @@ -9,6 +9,42 @@ pe Gitea. Pagină publicată (Tailscale, doar în tailnet): # CE E DE FĂCUT ACUM (citește asta prima) +## 0bis. CE RULEAZA ACUM (14.09.2026, 07:10 UTC) + +Sesiunea curenta a pornit trei lucruri deodata. Verifica-le inainte sa +incepi altceva. + +1. **Recolta celor 13 transcrieri AZ necitite** — agent `recolta13`, + scrie in `harvest/*.md` (13 fisiere noi, 2026-07-24 … 2026-08-14). + Nu comite el; comiti tu, pe folderul `harvest/`, dupa ce raporteaza. + Raspunsul care conteaza: pentru fiecare zi, **NOU sau confirma**. + Daca apar reguli noi, NU se rescriu documentele — se intreaba userul. + +2. **Transa 2 de lectii AZ: 26-50.** `extract_audio.py` a primit un + argument nou `--skip N` (o linie de slice + enumerate), asa ca + transele urmatoare se iau simplu: + ``` + python3 extract_audio.py --only "ANALIZĂ ZILNICĂ" --skip 25 --lectures 50 + python3 transcribe.py --audio-dir audio + ``` + Log-uri: `extract_az50.log`, `transcribe_az50.log`. Transcrierea + porneste singura cand se termina extractia (lant in fundal). + Transcrierile ies in `transcripts/08_ANALIZĂ_ZILNICĂ/26_*.txt` … `50_*`. + **Transa 3** e `--skip 50 --lectures 75`, si tot asa pana la 147. + + **Inainte de recoltare, ruleaza `audio_fingerprint.py`** — in transa 1 + o lectie era duplicat curat (`02_08092026` == `01_10092026`, scor + 1.000). Sansa e reala si costa o transcriere degeaba. + +3. **Audio-ul a fost sters tot** (862 MB → 0). Verificat inainte, fisier + cu fisier: fiecare mp3 avea transcriere completa (>1KB), iar singurul + fara — `_duplicate/02_08092026.mp3` — era duplicatul confirmat de + `fingerprint_az.log`. `transcribe.py` sterge oricum audio-ul dupa o + transcriere validata; ce ramasese era din coada moltbot si din + extractii vechi. Daca vrei un audio inapoi, se re-extrage. + +--- + ## 0. PORNEȘTE DE AICI — Analiza Zilnica e TERMINATA (14.09.2026) **Toate cele 10 documente sunt scrise, verificate de agenti care nu le-au @@ -34,7 +70,7 @@ Commit-uri: `01c2018` 04, `60cd378` 05, `08d2b8e` 06, `dfc4990` 07, ### CE A RAMAS DE FACUT, in ordine -0. **PRIMA SARCINA: 13 transcrieri AZ nerecoltate.** Gasit la inventar pe +0. **[IN LUCRU — agent `recolta13`, vezi 0bis] 13 transcrieri AZ nerecoltate.** Gasit la inventar pe 14.09.2026, nu era notat nicaieri inainte. Sunt **24 de transcrieri** in `transcripts/08_ANALIZĂ_ZILNICĂ/`, dar `harvest/` are doar **11 fisiere**. @@ -132,15 +168,15 @@ Commit-uri: `01c2018` 04, `60cd378` 05, `08d2b8e` 06, `dfc4990` 07, | Q&A | 28 | 28 | 27 (+1 duplicat, 18.08 = 11.08) | | Analiza Zilnica | 147 in modul | 24 pe disc | 10 documente de strategie | - - **123 din cele 147 de lectii AZ nu sunt descarcate** - decizia userului, - saturatie. Vezi punctul 0 inainte sa o confirmi ca definitiva. + - **123 din cele 147 de lectii AZ nu erau descarcate** - decizia userului, + saturatie. Pe 14.09.2026 s-a pornit transa 2 (lectiile 26-50), vezi 0bis. - **34 de lectii blocate** (`purchase_required`): Modul 5 (7), Modul 6 (6), Master ATM 1-4 (15), cele 6 lectii 1:1. Daca userul primeste acces: `extract_audio.py --only ""` → `transcribe.py` → sumarizare. - **8 lectii neatinse deliberat**: Rezultate Clienti Mentorat (3), Live Trading Room (5). - - **862 MB de audio** ramas pe disc in `audio/`, daca vrei spatiul inapoi. - Verifica intai ca transcrierea exista si nu e trunchiata. + - **Audio: 0 MB.** Sters pe 14.09.2026 dupa verificare fisier cu fisier + (vezi 0bis punctul 3). `audio/` e gol, se umple doar cat dureaza o transa. - Nicio coada activa, niciun proces de transcriere, nicio transcriere goala sau sub 1KB. diff --git a/extract_audio.py b/extract_audio.py index 1b2bdf9..c3196ed 100644 --- a/extract_audio.py +++ b/extract_audio.py @@ -50,7 +50,8 @@ def main(): p = argparse.ArgumentParser(description="Extract audio for ATM core-curriculum lectures") p.add_argument("--out", default="audio", help="Output directory") p.add_argument("--only", default=None, help="Limit to one module name (bypasses CORE_MODULES)") - p.add_argument("--lectures", type=int, default=None, help="With --only: first N lectures of that module") + p.add_argument("--lectures", type=int, default=None, help="With --only: stop after lecture N of that module") + p.add_argument("--skip", type=int, default=0, help="Skip the first N lectures (transa urmatoare)") args = p.parse_args() load_dotenv() @@ -80,8 +81,8 @@ def main(): mod_dir = out_dir / f"{mod_idx:02d}_{slugify(mod['name'])}" log.info(f"Module: {mod['name']} ({len(mod['lectures'])} lectures)") - lectures = mod["lectures"][: args.lectures] if args.lectures else mod["lectures"] - for lec_idx, lec in enumerate(lectures, 1): + lectures = mod["lectures"][args.skip : args.lectures] + for lec_idx, lec in enumerate(lectures, args.skip + 1): stem = f"{lec_idx:02d}_{slugify(lec['name'])}" dest = mod_dir / f"{stem}.mp3" if dest.exists() and dest.stat().st_size > 10_000: