# План → beads ID map Epic: **cf7stg-b2c** (WordPress-плагин cf7-spam-to-telegram) | Plan # | bd ID | Title | |---|---|---| | Task 1 | cf7stg-e20 | Composer + PHPUnit setup | | Task 2 | cf7stg-6ec | DomainFormatter — tests (RED) | | Task 3 | cf7stg-e2s | DomainFormatter — implementation (GREEN) | | Task 4 | cf7stg-x2n | PhoneParser — tests (RED) | | Task 5 | cf7stg-1q6 | PhoneParser — implementation (GREEN) | | Task 6 | cf7stg-y5h | Classifier — tests (RED) | | Task 7 | cf7stg-f4i | Classifier — implementation (GREEN) | | Task 8 | cf7stg-2jn | MessageFormatter — tests (RED) | | Task 9 | cf7stg-if1 | MessageFormatter — implementation (GREEN) | | Task 10 | cf7stg-sho | Crypto (AES-256-CBC через AUTH_KEY) | | Task 11 | cf7stg-7zo | Settings (options wrapper, приоритет констант) | | Task 12 | cf7stg-g5w | Queue (CRUD + dedup + retention) | | Task 13 | cf7stg-3uz | TelegramException | | Task 14 | cf7stg-97j | TelegramClient | | Task 15 | cf7stg-rs3 | Dispatcher (WP-Cron worker) | | Task 16 | cf7stg-5t9 | FlamingoHelper | | Task 17 | cf7stg-b3p | Source interface + CF7Source | | Task 18 | cf7stg-fna | RetroImporter | | Task 19 | cf7stg-ahg | Activator (dbDelta, cron schedule, guards) | | Task 20 | cf7stg-dg2 | Plugin bootstrap + main file | | Task 21 | cf7stg-egz | Settings_Page (admin UI) | | Task 22 | cf7stg-3mp | Dashboard_Widget (условный) | | Task 23 | cf7stg-goj | uninstall.php + readme.txt | | Task 24 | cf7stg-twt | Full test suite + lint | | Task 25 | cf7stg-3eh | Pilot deploy на washanyanya.ru |