ארכיטקטורה
רצף של שלבים, אתר בעל שלוש שכבות, פרוטוקול שעובר הלאה
TITI מעביר הנחיה בודדת דרך תהליך עבודה סדור ומפיק מוצר שמבנהו נקבע מראש כחלק מהתכנון, ולא כקישוט בדיעבד.
- שלבים
- שלוש שכבות
- מכונת ביקורת
- HAYAT
תהליך העבודה כרצף פעולות סדור
TITI מאורגן כרצף של שלבים, כאשר כל שלב צורך את התוצר של קודמו: הנחיה, מחקר, ארכיטקטורה, עיצוב, בנייה, בדיקה, פריסה (Prompt, Research, Architecture, Design, Build, Test, Deploy). הסדר הוא העניין. מחקר קודם לארכיטקטורה מכיוון שיש להבין את התחום לפני בחירת המבנה; ארכיטקטורה קודמת לעיצוב מכיוון שצורת המוצר מגבילה ומגדירה את מעטפת העיצוב שלו; בדיקה קודמת לפריסה מכיוון שדבר אינו מופץ לפני שנבדק.
הפלטפורמה מעדיפה היסק על פני תשאול. מתוך הנחיה בודדת היא חוקרת את התחום ומחליטה על הארכיטקטורה, במקום לבקש מהמפעיל להגדיר אותה. היעד הוא אפס שאלות לפרויקט — לא כסיסמה, אלא כלחץ תכנוני הדוחף את העבודה מעלה אל שלב המחקר, שבו ניתן לפתור סוגיות מתוך ראיות במקום מתוך שאלה.
זהו תיאור של תהליך העבודה, ולא קטלוג של מנגנונים פנימיים. השלבים לעיל הם החוזה האמיתי בין שלב אחד למשנהו; איננו טוענים לקיומם של תורים נסתרים, מנגנוני העברת משימות או התנהגויות של ניסיונות חוזרים מעבר לתנועה סדורה זו.
האנטומיה בת שלוש השכבות
לכל אתר ש-TITI מייצר יש את אותה אנטומיה בת שלוש שכבות. שכבת השיווק (marketing layer) פונה למבקרים אנושיים. שכבת המדע (science layer) נושאת את השיטה, העקרונות והעומק — דפים כמו זה. שכבת הסוכנים (agent layer) היא קריאה למכונה: קבצים שנכתבו עבור תוכנות אחרות, ולא עבור בני אדם.
שכבות אלה אינן בחירות עיצוביות המוחלות בסוף; הן המבנה ששלב הארכיטקטורה מתחייב אליו והשלבים הבאים ממלאים בתוכן. מבקר ותוכנה הקוראים את אותו האתר מקבלים שירות משכבות שונות של אותו תוצר, כאשר כל אחת מהן מעוצבת עבור הקורא שלה.
ההפרדה חשובה מכיוון שלשלושת קהלי היעד יש צרכים שונים לחלוטין. הפרדתם מאפשרת למעטפת השיווקית להשתנות מבלי להפריע לחוזה התוכנתי מול המכונה, ומאפשרת לשכבת המדע להסביר את המנגנונים מבלי להציג מצגים מיותרים עבור אף אחד מהם.
שכבת הסוכנים וירושת HAYAT
שכבת הסוכנים מפרסמת קבצי מכונה. הקובץ /agent.json מתאר את האתר ומציין את איש הקשר שלו, שהוא הצ'אט המקומי. הקובץ /sot-map.json מספק מפה מובנית של האתר ומקור האמת (source of truth) שלו. הקובץ /.well-known/hayat-manifest.json מפורסם בנתיב המוכר (well-known path) שבו תוכנות אחרות מצפות למצוא אותו.
HAYAT הוא הפרוטוקול הבין-אתרי שקבצים אלה מיישמים. כל אתר שהמנוע בונה יורש אותו, מה שאומר שתוכנה הנתקלת באתר כלשהו שנבנה על ידי TITI יכולה להסתמך על אותם קבצים באותם מקומות עם אותה משמעות. ירושה היא מה שהופך מוסכמה של אתר בודד למשהו שמערכת אחרת יכולה להסתמך עליו לרוחב אתרים רבים.
הפרוטוקול הוא תבנית משותפת, ולא הבטחה לגבי תוכן. הקבצים מפורסמים וזמינים לעיון עבור הקורא; המבנה עקבי מכיוון שכל אתר נושא את אותו הפרוטוקול הלאה.
מכונת הביקורת
לפני הפריסה, גרסת הבנייה עוברת דרך מכונת ביקורת המשלבת שני סוגי שיפוט. הראשון הוא שערי חסימה דטרמיניסטיים הניתנים לבדיקה על ידי מכונה: תקינות שפת הסימון (markup) והמבנה, בדיקה שלא השתרבבו נתונים מומצאים לתוך התוכן, ונכונות התצוגה (rendering) בשפות שונות — כולל כתב מימין לשמאל ופריסות CJK (סינית, יפנית, קוריאנית).
השני הוא שופט טעם בין-משפחתי (cross-family taste judge) המעריך תכונות ששער דטרמיניסטי אינו יכול ללכוד. השניים משלימים זה את זה: השערים תופסים את מה ששגוי מבחינה מכנית, והשופט מעריך את מה שפשוט דל באיכותו.
הכלל הקושר ביניהם פשוט וקשיח. גרסת בנייה שנכשלת בשער חסימה כלשהו או ברמת סף כלשהי נדחית. אין מעבר חלקי — הביקורת היא תנאי להפצה, ולא ציון שמתווסף אליה בסוף.
לולאת השיפור העצמי, ומה שהיא אינה
TITI בונה את TITI: המנוע מסייע לבנות מחדש ולשפר את עצמו. אך לולאה זו היא בפיקוח אנושי. אדם בוחן ומאשר כל שלב. הרקורסיה אמיתית, האוטונומיה לא — המנוע מציע ומסייע, האדם מחליט.
אנו מציגים את המגבלות בבירור. אוטונומיה מלאה ללא מגע יד אדם מהנחיה בודדת היא המסלול המתוכנן, ולא יכולת מוגמרת. תשתית הצ'אט של התבונה המקומית עדיין אינה מחוברת; הצ'אט שאתם רואים כיום הוא קו תפר כנה, הממשק הנוכח לפני שהתבונה שמאחוריו מחוברת אליו. התנאים הכלכליים — כמה עולים מנויים ואסימונים — אינם מוגדרים במכוון.
ציון המגבלות הללו הוא חלק מהארכיטקטורה, ולא הערת שוליים עבורה. מערכת המבחינה בין מה שהיא עושה לבין מה שהיא שואפת לעשות ראויה לאמון לגבי הראשון מכיוון שהיא גלויית לב לגבי השני.
צ'אט מקומי
שאלו את הארכיטקטורה ישירות
היי — אני titi. ספר לי מה תרצה לבנות; כמה מילים מספיקות.
אהפוך את זה לאתר אמיתי, בדוק ומפורסם.
קו תפר — התשתית מאחוריו אינה מחוברת עדיין