docs: plan fazy mailowej — oznaczenie stanu kroków w §12
Tabela §12 wyglądała jak lista TODO mimo nagłówka „Kroki 0-4 WYKONANE" — to wprowadzało w błąd przy planowaniu kolejnych tasków (założono zbędną pracę nad batchingiem, zrobionym już w51998fd). Każdy wiersz dostaje kolumnę Stan (WYKONANE / OTWARTE) i dowód: commit, plik lub weryfikacja na żywej bazie. Stan ustalony z dowodów w repo/gicie, nie z nagłówka: - Kroki 0-3: commity348ce10,51998fd,ad0ef40,a640cf1+ istniejące pliki/testy - Krok 4: §7 + potwierdzenie na żywej bazie (33 871 chunków gmail = Etap A) - Krok 5: §8 PASS, commity56f64e9/bce635c/71eb264- Kroki 6 i 7: OTWARTE — brak commitów, brak artefaktów, wolumen bazy to nadal wyłącznie Etap A Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
1cd6401adb
commit
5b82165d8c
|
|
@ -621,16 +621,16 @@ Zakotwiczone w kb-00 jako etapy 3–4 (`jobs/fastmail-poller`,
|
|||
|
||||
## 12. Plan implementacji (kolejność = zależności)
|
||||
|
||||
| # | Krok | Zależy od | Szacunek |
|
||||
|---|---|---|---|
|
||||
| 0 | Chunker → `packages/kb-mail` | — | 0,5 sesji |
|
||||
| 1 | `embed_batch` w kb-retrieval | — | 0,5 sesji |
|
||||
| 2 | Job `mail-body-ingest` | 0, 1 | 2 sesje |
|
||||
| 3 | Tryb hybrid (kb-retrieval + kb-query) | — (równolegle z 2) | 1 sesja |
|
||||
| 4 | rsync + Etap A (12 mies.) + kalibracja | 2 | 1 sesja |
|
||||
| 5 | Bramka jakościowa (eval mailowy + regresja) | 3, 4 + zapytania od operatora | 1 sesja |
|
||||
| 6 | Etap B (pełne archiwum) + regresja + obserwacja PIHA | 5 = PASS | 1 sesja |
|
||||
| 7 | Recon przyrostówki IMAP/JMAP | — (po 6) | 1 sesja (poza DoD fazy) |
|
||||
| # | Krok | Zależy od | Szacunek | Stan | Dowód (2026-08-04) |
|
||||
|---|---|---|---|---|---|
|
||||
| 0 | Chunker → `packages/kb-mail` | — | 0,5 sesji | **WYKONANE** | `348ce10`; `packages/kb-mail/src/kb_mail/chunking.py` + `tests/test_chunking.py` |
|
||||
| 1 | `embed_batch` w kb-retrieval | — | 0,5 sesji | **WYKONANE** | `51998fd`; `kb_retrieval/embed.py:61` (`embed_batch`) + `tests/test_embed.py` |
|
||||
| 2 | Job `mail-body-ingest` | 0, 1 | 2 sesje | **WYKONANE** | `ad0ef40` (job), `a95524c` (README), `fc5c698` (fix html_to_text); `jobs/mail-body-ingest/` + `tests/test_ingest.py` |
|
||||
| 3 | Tryb hybrid (kb-retrieval + kb-query) | — (równolegle z 2) | 1 sesja | **WYKONANE** | `a640cf1`; `kb_retrieval/retrieval.py:112` (`hybrid_retrieve`), `:195` (`hybrid_query`), `kb-query/app/main.py:119` (`mode` pattern). Uwaga: domyślny `mode` to nadal `cascade` — przełączenie to follow-up z §8, nie część Kroku 3 |
|
||||
| 4 | rsync + Etap A (12 mies.) + kalibracja | 2 | 1 sesja | **WYKONANE** | §7 „Wynik Etapu A" (run na żywo 2026-07-23); potwierdzone na żywej bazie 2026-08-04: `document_chunk` gmail = 33 871 (6 398 z embeddingiem + 27 473 `newsletter`) — zgodne co do sztuki z tabelą §7 |
|
||||
| 5 | Bramka jakościowa (eval mailowy + regresja) | 3, 4 + zapytania od operatora | 1 sesja | **WYKONANE** (PASS) | §8 „Wynik bramki"; `56f64e9` (eval + queries.yaml dla hybrid), `bce635c` (`mail_hit@3`, próg N2, werdykt PASS), `71eb264` (`--transport http`) |
|
||||
| 6 | Etap B (pełne archiwum) + regresja + obserwacja PIHA | 5 = PASS | 1 sesja | **OTWARTE** | Brak commitu, brak sekcji z wynikiem w tym dokumencie; żywa baza pokazuje wyłącznie wolumen Etapu A (33 871 chunków gmail vs oczekiwane ~496k), więc run bez `--since` nie był wykonany |
|
||||
| 7 | Recon przyrostówki IMAP/JMAP | — (po 6) | 1 sesja (poza DoD fazy) | **OTWARTE** | Brak `jobs/fastmail-poller` / `jobs/gmail-imap-poller`, brak dokumentu reconu; IMAP/JMAP występuje wyłącznie jako zarys w §10 i w `kb-00-overview.md` |
|
||||
|
||||
**Kryterium ukończenia fazy mailowej:** (a) pełny korpus gmail zchunkowany
|
||||
(bilans domknięty, `parse_errors` na poziomie pojedynczych sztuk jak
|
||||
|
|
|
|||
Loading…
Reference in a new issue