Commit Graph

  • bedef30465 feat: add entrance+floor fields, fix geocoder false-positive on locality match wasrusgen 2026-05-15 21:38:13 +0300
  • 44799362c1 feat: client picker in measurement form, address geocoding, edit-client 4-field addr wasrusgen 2026-05-14 14:51:25 +0300
  • cbea202de5 fix(note): view/edit toggle — textarea closes after save wasrusgen 2026-05-14 14:18:16 +0300
  • dd8691671a fix(voice): continuous=false + auto-restart — eliminates word duplication wasrusgen 2026-05-14 14:06:48 +0300
  • 61f23c9bca feat(miniapp): redesign quick-action buttons + fix voice duplication wasrusgen 2026-05-14 13:50:10 +0300
  • f280dea9ea UX: карточка клиента — кнопки наверх, объёмные, хронология свёрнута wasrusgen 2026-05-14 11:53:29 +0300
  • 4612c3a4e4 fix: карточка клиента — данные, редактирование, удаление по правилам wasrusgen 2026-05-14 11:42:27 +0300
  • 52eb0e4a96 Phase 4 stage 1: Сборки — модель + создание + список wasrusgen 2026-05-14 09:53:40 +0300
  • 5e6746e676 B+E: DWG/чертежи + карточка «Замер готов — нужен подбор?» wasrusgen 2026-05-14 09:17:32 +0300
  • 34b83899b5 fix client create — 7 багов + правило самопроверки wasrusgen 2026-05-14 00:09:14 +0300
  • e808880d8e A+B: голос в мастере замера + Google Calendar события wasrusgen 2026-05-13 23:49:20 +0300
  • 18c2325440 splash: убрать вращающееся кольцо, оставить только опилки + breathing wasrusgen 2026-05-13 22:58:09 +0300
  • ec3929ae94 splash: убрал wobble, 16 опилок, добавил вращающийся диск-кольцо wasrusgen 2026-05-13 22:46:53 +0300
  • e5c51a844b bot: CRM на меню-кнопке + новый текст приветствия wasrusgen 2026-05-13 22:44:49 +0300
  • 0aa7a8e35a splash: эффекты I + K — wobble пилы + опилки wasrusgen 2026-05-13 22:36:23 +0300
  • 00de1baef9 splash: flex column center + меньше лого + drop-shadow wasrusgen 2026-05-13 22:21:32 +0300
  • f71590b05a splash: точный viewBox + цвет blue-grey #2C3E50 wasrusgen 2026-05-13 22:15:01 +0300
  • 0a3d6598f6 logo: настоящий SVG из CRM.cdr (золото) + CRM без рамки wasrusgen 2026-05-13 22:08:44 +0300
  • 7f7bfd7a33 logo: композиция как в CRM.cdr (саблон тесно над wordmark) wasrusgen 2026-05-13 22:02:40 +0300
  • dd02136b92 brand: SVG-лого @wasrusgen1 в золоте + CRM как слоган (поз. как у ЗОВ) wasrusgen 2026-05-13 21:47:38 +0300
  • 17c0f73328 rebrand: tagline «сборщик» → «CRM» (orange uppercase stamp style) wasrusgen 2026-05-13 21:40:45 +0300
  • c41c938a67 rebrand: ZOV → @wasrusgen1 · сборщик (твой бренд) wasrusgen 2026-05-13 21:38:45 +0300
  • 9cdae3c1c1 seed_test_clients: 4 тестовые заявки в разных статусах wasrusgen 2026-05-13 19:59:39 +0300
  • 548b4b6177 E: главная менеджера — реальные «На сегодня» + «Срочно» + проекты wasrusgen 2026-05-13 19:09:59 +0300
  • b8d9ff937f F: кабинет замерщика — week-strip + группировка по дням + 📞 звонок wasrusgen 2026-05-13 18:51:43 +0300
  • 8201fee9f2 client card D1: хронология + файлы + быстрые действия wasrusgen 2026-05-13 18:39:25 +0300
  • 366625be66 flow: упрощённая заявка + 3 чёткие стадии у замерщика wasrusgen 2026-05-13 18:12:18 +0300
  • 9e23239f57 client note: примечание менеджера + голосовой ввод wasrusgen 2026-05-13 18:06:45 +0300
  • 7a5df7d011 checklist: 5 SVG-эскизов в стиле Editorial Calm wasrusgen 2026-05-13 18:00:43 +0300
  • effb62a1d8 geocoder: порт из проекта СЕКРЕТАРЬ + кнопка «По адресу» wasrusgen 2026-05-13 17:55:34 +0300
  • e2e17fd5a6 measurement logistics: подъезд, GPS, парковка, заметки для логистов wasrusgen 2026-05-13 17:46:53 +0300
  • fdce3b3c64 measurement workflow: приблизительная дата от менеджера wasrusgen 2026-05-13 16:21:09 +0300
  • e37a5e723f slogan: убран с role-chooser, остался только на splash wasrusgen 2026-05-13 11:32:22 +0300
  • 3866160efb splash: убрал «Открываем кабинет», оставил только слоган wasrusgen 2026-05-13 10:43:08 +0300
  • d8cb36703f slogan: переход с Caveat на Cormorant Garamond Italic (вариант 8) wasrusgen 2026-05-13 10:41:59 +0300
  • eeefbd1a59 add font preview page with 14 cursive variants for slogan wasrusgen 2026-05-13 10:37:35 +0300
  • 897bded49d splash: ZOV · КУХНЯ И ТЕХНИКА → каллиграфический «Сделано с душой!» wasrusgen 2026-05-13 10:35:58 +0300
  • 7f01c1e595 role-chooser: «Сделано с душой!» каллиграфическим Caveat wasrusgen 2026-05-13 10:23:44 +0300
  • c9b78d9e5b fix: role chooser игнорировал hash #tgWebAppData от Telegram wasrusgen 2026-05-13 10:12:30 +0300
  • b352c4927f universal entry: bot menu button + role chooser в MiniApp wasrusgen 2026-05-13 07:36:55 +0300
  • d6fbc3df13 bot: убрать reply-keyboard, оставить только inline buttons wasrusgen 2026-05-13 07:34:25 +0300
  • a437b55447 measurements: auto-suggest № замера, активные галочки чек-листа, убрана стяжка wasrusgen 2026-05-13 07:29:18 +0300
  • 121927ab2d measurements: структура фото + чек-лист + общая инфа wasrusgen 2026-05-13 07:19:25 +0300
  • 5c2a5bb335 measurements: упрощение — только фото + заметки (DWG потом) wasrusgen 2026-05-13 07:03:45 +0300
  • 643acd29c5 fix: добавить пробел между label и value в карточке no-staff-role wasrusgen 2026-05-12 23:31:07 +0300
  • e42178e876 cleanup: drop debug prints — auth fallback verified working wasrusgen 2026-05-12 21:56:53 +0300
  • 8bf18c00b0 bot: add inline keyboard for role choice (Telegram Desktop fix) wasrusgen 2026-05-12 21:49:18 +0300
  • 7b7b2ed5cb debug: inspect initDataUnsafe content wasrusgen 2026-05-12 21:45:09 +0300
  • cb6398622b auth: fallback на initDataUnsafe для Telegram Desktop side-panel wasrusgen 2026-05-12 21:35:51 +0300
  • ee619bb57d debug: log auth hash mismatch + strip token wasrusgen 2026-05-12 21:18:34 +0300
  • d293ded525 debug: add entry+auth prints wasrusgen 2026-05-12 20:59:04 +0300
  • a0c02110d4 debug: use print to stderr — logger overridden by uvicorn wasrusgen 2026-05-12 20:31:35 +0300
  • 2308697e55 debug: log /api/me decisions (tg_id, admin_id, role, roles) wasrusgen 2026-05-12 20:25:54 +0300
  • 865c3eaf40 fix: после grant_role существующий dict не обновлял поле role wasrusgen 2026-05-12 20:18:10 +0300
  • 4848b3a3ef fix: splash блокировал клики во время fade-out + сократил min-show wasrusgen 2026-05-12 20:16:59 +0300
  • 67034e011a workflow B: заявка на замер от менеджера → инбокс замерщика → завершение wasrusgen 2026-05-12 20:00:16 +0300
  • d859e9791c roles: multi-role foundation (manager / client / measurer / assembler) wasrusgen 2026-05-12 19:14:39 +0300
  • 6d57372b0b splash: bump min display time to 2.5s wasrusgen 2026-05-12 19:00:34 +0300
  • c767954535 splash: move out of #app + guarantee 700ms min visibility wasrusgen 2026-05-12 18:57:40 +0300
  • 1ca8b3a5a1 bot: role buttons → MiniApp directly + branded splash loader wasrusgen 2026-05-12 18:54:09 +0300
  • 8f6b5e56bb bot: 3-уровневое меню — роль → action → MiniApp wasrusgen 2026-05-12 18:46:30 +0300
  • b2438507c3 bot: persistent reply keyboard with WebApp buttons + info actions wasrusgen 2026-05-12 18:37:24 +0300
  • a084542bbf measurements: photo upload + measurement detail page + PDF/print wasrusgen 2026-05-12 18:11:29 +0300
  • 10bcc75b13 measurements: kitchen layout wizard + 5 layout pictograms + profile integration wasrusgen 2026-05-12 17:41:01 +0300
  • 43c43af795 remove duplicate vent question + AI must propose charcoal filter on recirc hood wasrusgen 2026-05-12 17:22:59 +0300
  • c4f3016b56 miniapp: client profile tab — list + history + lead detail wasrusgen 2026-05-12 07:20:54 +0300
  • 9a2dcbc3fe backend: client profile API (/api/clients, /api/lead) wasrusgen 2026-05-12 07:16:14 +0300
  • efa2046a97 gitignore: cat_refresh.json wasrusgen 2026-05-12 07:10:06 +0300
  • fe472b0827 catalog: filter junk + background refresh + clear endpoint wasrusgen 2026-05-12 07:09:33 +0300
  • 9e652c4a34 catalog: models cache in Sheets — AI picks from real list, no SKU hallucination wasrusgen 2026-05-12 06:32:39 +0300
  • 1a57374020 parsers: better image extraction — real product photos in report cards wasrusgen 2026-05-11 23:43:25 +0300
  • 0b48dd2371 simplify: remove 'features' step from all 8 categories wasrusgen 2026-05-11 23:37:41 +0300
  • cecb8d3444 review screen: fix text wrap + cleanup stale answers from removed steps wasrusgen 2026-05-11 23:25:23 +0300
  • 6915bba845 user feedback: oven proportions + dw simplification wasrusgen 2026-05-11 23:06:25 +0300
  • 03c95fe13a wb: relevance filter — discard anti-bot trash products (платья/обувь in fridge search) wasrusgen 2026-05-11 23:02:37 +0300
  • d84a53f91d wb: skip proxy pool (use direct VPS-IP — residential were rate-limited) wasrusgen 2026-05-11 23:01:34 +0300
  • e9b0db6772 wb: API v9 → v18 (WB сменил endpoint и структуру) + brand+category fallback query wasrusgen 2026-05-11 22:59:14 +0300
  • 555c5568ff miniapp: 25 SVG pictograms for 7 remaining categories (style D · 3D) wasrusgen 2026-05-11 21:27:40 +0300
  • da8a98f34f market 2026 update: Kuppersberg budget default, Haier mid, full RF brand realism wasrusgen 2026-05-11 20:23:45 +0300
  • c97b8dce3c parsers: skip sponsored/ad URLs (cpc/sponsored=1) — they expire in 2-3 hours wasrusgen 2026-05-11 17:20:59 +0300
  • ef500fa446 user feedback batch: model count, specs, manual link, dimensions, export wasrusgen 2026-05-11 17:11:30 +0300
  • 7f417da7e0 gitignore: wb.json test artifact wasrusgen 2026-05-11 16:49:02 +0300
  • 5ceffa4f69 miniapp: phone validation on intro — blocks transition with bad number wasrusgen 2026-05-11 16:48:52 +0300
  • 0f2635d5f8 dns+ozon: 4 retries with proxy rotation (residential pool has dirty IPs) wasrusgen 2026-05-11 16:37:28 +0300
  • 796e20bc73 gitignore: r.json (test artifacts) wasrusgen 2026-05-11 16:34:51 +0300
  • aa569a8ed1 dns: switch to Playwright (Qrator JS challenge); ozon: fix false-positive antibot detector wasrusgen 2026-05-11 16:34:04 +0300
  • b27cf02aa2 yamarket: clean React JSON noise + extract title from URL slug wasrusgen 2026-05-11 16:30:34 +0300
  • 839e775151 yamarket: rewrite for /card/{slug}/{id} URL pattern (Я.Маркет 2026) wasrusgen 2026-05-11 16:26:28 +0300
  • b1d8f3e38a gitignore: exclude .tmp_* files (accidentally committed proxy creds in previous commit) wasrusgen 2026-05-11 16:06:05 +0300
  • e7f6e64e38 playwright_engine: route through proxy_pool — random residential IP per request wasrusgen 2026-05-11 16:05:36 +0300
  • 811bed31a4 backend: proxy_pool supports PROXY_LIST_FILE + format auto-conversion wasrusgen 2026-05-11 15:52:02 +0300
  • d7be644aed miniapp: price comparison matrix as PRIMARY view per category wasrusgen 2026-05-11 14:56:41 +0300
  • ca342c0641 ai+report: deeper analysis — required pros/cons, category insights, source visibility wasrusgen 2026-05-11 14:34:08 +0300
  • 4b04f2de54 miniapp: summary page hides Подключение/Вентиляция if hob/hood not picked wasrusgen 2026-05-11 14:26:12 +0300
  • 80580db446 miniapp: 4 UX fixes from user feedback wasrusgen 2026-05-11 14:25:25 +0300
  • 44281b1e07 citilink: dedup by product ID + filter Next.js placeholder images wasrusgen 2026-05-11 13:59:07 +0300
  • c5f662f53d citilink: rewrite parser to walk up from a[href*=/product/] (CSS-in-JS resistant) wasrusgen 2026-05-11 13:57:18 +0300
  • 1a948ebf02 ozon: fix false-positive challenge detector (was catching 'challenge' in normal JS) wasrusgen 2026-05-11 13:54:13 +0300
  • e8b487891f backend: working parsers — OZON + Citilink (DOM via Playwright) + WB wasrusgen 2026-05-11 13:53:07 +0300
  • 5fdae262ef backend: parse_* endpoints sync (FastAPI threadpool) — fix Playwright asyncio conflict wasrusgen 2026-05-11 13:30:51 +0300