מאב טיפוס לייצור: צ'קליסט
אב טיפוס עונה על השאלה "האם מישהו צריך את זה". ייצור עונה על שאלות אחרות: מה יקרה כשיהיו מאה משתמשים, כשמישהו ינסה לקרוא נתונים של אחרים, כשהתשלום ייפול, וכשמשהו שעבד אתמול יישבר.
בקצרה
חמישה עשר סעיפים בשלוש קבוצות. לפני המשתמש האמיתי הראשון: הקוד במאגר שלכם, הסודות בשרת, השרת בודק גישה לנתונים, מסד הנתונים בייצור נפרד מהבדיקות, וגיבוי באמת ניתן לשחזור. בחודש הראשון: אתם רואים שגיאות לפני שלקוח מדווח, שינויי סכמה מנוהלים בגרסאות, החתימה בהתראות תשלום נבדקת, ההוצאה על AI מוגבלת. עם הגדילה: עומס, תלויות, תיעוד ואדם שמכיר את המערכת. כל מה שבקבוצה הראשונה לא בוצע, עדיף לסגור לפני ההשקה ולא אחריה.
לפני המשתמש האמיתי הראשון
| # | סעיף | איך לבדוק |
| 1 | הקוד נמצא במאגר שלכם, לא רק בתוך הפלטפורמה | יש מאגר GitHub או אחר על שמכם, וממנו נבנית אותה גרסה שרצה באתר |
| 2 | אין סודות בקוד שרץ בדפדפן | F12, חיפוש key, secret, token. כל מה שנמצא, חוץ מהמפתח הציבורי של Supabase, עובר לשרת ומבוטל. |
| 3 | השרת בודק גישה לנתונים | משתמש שני מנסה לפתוח רשומה של מישהו אחר על ידי החלפת מספר בכתובת. ב-Supabase מופעל RLS בכל טבלה. |
| 4 | מסד הנתונים בייצור נפרד מהבדיקות | ניסויים ונתוני בדיקה לא מגיעים למסד שבו חיים הלקוחות |
| 5 | גיבוי משוחזר | לא "גיבויים נעשים", אלא שגיבוי שוחזר בפועל פעם אחת והנתונים נבדקו |
את סעיף 5 בודקים הכי מעט. גיבוי שאף פעם לא שוחזר הוא הנחה, לא גיבוי.
בחודש הראשון
| # | סעיף | איך לבדוק |
| 6 | אתם רואים שגיאות לפני הלקוח | מחובר איסוף שגיאות (למשל Sentry), וההתראות מגיעות לאדם חי |
| 7 | שינויי סכמה מנוהלים בגרסאות | כל שינוי בטבלאות הוא קובץ מיגרציה במאגר, לא עריכה ידנית בקונסולת הייצור |
| 8 | התראות תשלום מאומתות | ה-webhook בודק את החתימה של חברת הסליקה, והתראה חוזרת לא יוצרת תשלום שני |
| 9 | ההוצאה על AI מוגבלת | אם האפליקציה קוראת למודלים: יש מגבלה למשתמש, תקציב כולל והתראה על חריגה |
| 10 | המיילים מגיעים | לדומיין מוגדרים SPF ו-DKIM, ומיילים של הרשמה ואיפוס סיסמה לא נופלים לספאם |
עם הגדילה
| # | סעיף | איך לבדוק |
| 11 | הגנה מפני שימוש לרעה | הגבלת קצב על הרשמה, כניסה ופעולות יקרות |
| 12 | עומס | השאילתות הנפוצות במסד משתמשות באינדקסים; רשימה לא טוענת את כל הטבלה |
| 13 | תלויות | כל חבילה קיימת ומתוחזקת, קובץ נעילת הגרסאות נמצא במאגר, ופגיעויות ידועות נסגרו |
| 14 | חוק ופרטיות | מדיניות הפרטיות תואמת את מה שהמערכת אוספת בפועל; בישראל אלה הדרישות של תיקון 13 |
| 15 | אדם שמכיר את המערכת | מישהו מלבד עוזר ה-AI יכול להסביר איך המערכת בנויה ואיך מעלים תיקון בלילה |
למה דווקא בסדר הזה
מה שמייחד את הקבוצה הראשונה הוא שטעות בה אי אפשר לתקן בדיעבד. מפתח שדלף כבר דלף. נתונים של אחרים שנקראו כבר נקראו. מסד נתונים שאבד בלי גיבוי שנבדק לא חוזר. כל השאר לא נעים, אבל אפשר לתקן אחרי ההשקה.
הקבוצה השנייה נעשית דחופה ברגע שיש כסף ומשתמשים: כל עוד אין תשלומים, סעיף 8 לא בוער, אבל החיוב הכפול הראשון עולה יותר מהבדיקה שלו.
הקבוצה השלישית עוסקת בזה שהמערכת תשרוד את מי שכתב אותה. סעיף 15 הוא אחד הסעיפים הכי פחות מוערכים בפרויקטי AI: הקוד נכתב מהר, ולעיתים קרובות אף אחד, כולל הבעלים, לא יכול להסביר למה הוא בנוי כמו שהוא בנוי.
אם חסרים סעיפים
זה נורמלי: אב טיפוס לא היה אמור לכלול את כל זה. השאלה היא מה הלאה. בדרך כלל התשובה היא אחת משלוש: לסגור את הפערים בקוד הקיים, לכתוב מחדש חלקים מסוימים, או, לעיתים רחוקות יותר, לכתוב מחדש את המערכת על אותו מודל נתונים. איזו משלוש, מתברר אחרי הבדיקה ולא לפניה.
שאלות נפוצות
אפשר להעלות לייצור אפליקציה שנבנתה ב-Lovable או ב-Bolt?
כן, אם הקבוצה הראשונה בוצעה: קוד במאגר שלכם, סודות בשרת, השרת בודק גישה, נתוני הייצור מופרדים, גיבוי נבדק. הפלטפורמה לא מונעת ייצור, אבל גם לא עושה אותו בשבילכם.
מה הכי מסוכן באב טיפוס של AI לפני השקה?
הרשאות שנבדקות רק בממשק. האפליקציה נראית נכון, אבל השרת מבצע בקשה של כל משתמש על כל נתון. בהדגמה זה לא נראה, רק בניסיון מכוון.
צריך לכתוב את אב הטיפוס מחדש מאפס?
לרוב לא. את רוב הסעיפים בצ'קליסט אפשר לסגור בקוד הקיים. כתיבה מחדש מוצדקת כשמודל הנתונים לא מתאים לבעיה או כשהתיקונים עולים יותר מגרסה חדשה.
כמה זמן לוקחת ההכנה לייצור?
זה תלוי בכמה סעיפים חסרים ובכמה טבלאות ומקומות שבהם השרת סומך על הממשק. אחרי בדיקה לפי הרשימה הזו, הזמן ידוע סעיף אחרי סעיף.
מה עושים אם האפליקציה כבר עובדת עם לקוחות?
מתחילים בסעיפים 2, 3 ו-5, בסדר הזה: סודות, גישה, גיבוי. הם סוגרים את מה שאי אפשר לתקן בדיעבד.
SLAtech LTD