AI Extensions, 7 בנובמבר: Quarry והמשמעות של סריקה שלא הושלמה
Quarry בודקת רצפי אירועים ומסבירה התאמות. השלמת הסריקה, מתאמי מודל וחסימת פעולות נשארים גבולות נפרדים.

קריאת קובץ ואחריה בקשת HTTP עשויות לקבל משמעות שונה מאותן קריאות בסדר הפוך. זו נקודת פתיחה מועילה ל-Cisco Project Quarry: כללים שבודקים רצף אירועים בשיחת סוכן, מעבר לשיפוט של כל הודעה בנפרד.
זו סקירת מקורות של גרסת האלפא הפתוחה והתוסף שלה, שנבדקה ב-7 בנובמבר 2026. קראתי את המאגר, התיעוד, הגדרות הדוגמה והרישיון. לא התקנתי את החבילה, חיברתי מודל, סרקתי שיחות פרטיות או שחזרתי את ניתוח האירוע של Cisco. השינוי האחרון בענף הראשי מתוארך ל-3 בנובמבר. פעילות היא סימן לתחזוקה, לא ציון איכות.
התוסף הוא דרך אל הגלאי
תיעוד התוסף מתאר חמישה כלים לקריאה בלבד: חיפוש בתיעוד, קומפילציה של כלל, עץ החלטות, ספירת מסלולי החלטה וסריקת JSON מפורש של שיחה. MCP מחבר את מארח הסוכן למנוע המותקן מקומית. כלי הסריקה עצמו אינו קורא קבצים או הפעלות שמורות. למארח עשויות להיות הרשאות קבצים אחרות, ולכן זה חוזה של כלי ולא הבטחת בידוד לכל ההפעלה.
ההתקנה המתועדת משתמשת במאגר כיחידה אחת ובהגדרת uv נעולה. README מציין Python 3.11-3.13. לדוגמאות המקומיות אין צורך במפתח ספק. הוספת מודל סמנטי משנה את גבול הנתונים: המתאם שלו עשוי לשלוח חלקים נבחרים מהשיחה לכתובת שהוגדרה.
קובץ LICENSE הוא Apache 2.0, עם תנאי הרישיון, דרישות ההודעות והיעדר אחריות. שפת ה-DSL באלפא ועשויה להשתנות לפני 1.0. לניסוי הייתי מקבע גרסה שנבדקה.
מה המכונה בודקת
לפי תיאור אופן הפעולה, הכללים מפוענחים, נבדקים ומתקמפלים לאוטומטים סופיים דטרמיניסטיים בזמן הטעינה. מהשיחה נבנית עקבה סופית. הודעת עוזר עם קריאת כלי מוסיפה אירוע הודעה ואירוע קריאה; מיקומי האירועים אינם בהכרח אינדקסי ההודעות.
בדיקות מקומיות בוחנות שמות כלים, ארגומנטים, טקסט וספירות. בדיקות מודל אופציונליות הופכות ציונים או קטגוריות לתנאים באותה לוגיקה. אותן תוצאות בדיקה נותנות אותו מסלול אוטומט, אך מודל עשוי לתת תוצאה אחרת בקריאה נוספת.
הדוגמה בתיעוד מחפשת קריאת נתיב רגיש לפני בקשה למארח מוגדר. התאמה מוכיחה את הדפוס הזה על העקבה שסופקה. היא אינה מוכיחה שהבקשה נשאה את תוכן הקובץ. טענה חזקה כזו דורשת השוואת ערכים ותיעוד מתאים. פעילות שלא נרשמה אינה נראית לסורק.
לשמור על התוצאה השלישית
ה-CLI מבדיל בין קוד 0: סריקה מלאה ללא התאמות; 1: מלאה עם התאמות; 2: קלט לא תקין או סריקה לא מלאה. פקיעת זמן או שגיאת חישוב אינן אומרות "לא נמצא דבר".
מדריך השילוב דורש בדיקת מצב לפני שימוש בהתאמות. QuarryGuard עושה זאת לפני החזרה; עם DSLScanner הקורא אחראי. הדוגמה המקורית הבאה לא הורצה ואינה מנגנון חסימה:
def classify_supplied_trace(scanner, conversation):
result = scanner.scan_data(conversation)
result.raise_for_status()
return "matched" if result.rule_matches else "complete_clean"
# The host must handle scan errors explicitly.
# Neither result grants permission to act or disclose data.
המארח יכול להשהות פעולה לאחר התאמה או כישלון, אך הדבר דורש גבול פעולה נפרד. סריקה אחרי בקשת HTTP אינה יכולה לעצור אותה למפרע. תוצאה נקייה אינה יוצרת אישור משתמש שלא היה קיים.

מה העדות מסבירה
כאשר ההסברים מופעלים, Quarry מחזירה אירועים תומכים המכונים witness. בחלק מהכללים המנוע מסיר אירועים ומריץ את הכלל שוב כדי להקטין את הקבוצה. מגבלות עבודה עשויות להשאיר אירועים מיותרים, וייתכן סט תומך אחר. זה הסבר אפשרי אחד, לא בהכרח הקצר ביותר או כל סיפור האירוע.
אירועים סמוכים בעדות המקוצרת עשויים להיות רחוקים בעקבה המקורית. כללי מרחק דורשים את המיקומים המקוריים. תנאי היעדר או "כל ההודעות" עשוי להזדקק לכל הקבוצה; תנאי סטטי יכול להתאים עם עדות ריקה. ריקנות כשלעצמה אינה כישלון.
מיסוך של חלק מדפוסי הסודות וקיצור קטעים אינם מבטיחים שיתוף בטוח. עדויות, שגיאות אימות ובקשות מודל עשויות להכיל מידע פרטי. מדריך השילוב מזהיר מפני שליחת אבחון גולמי לטלמטריה ציבורית.
ניסוי מוגבל לפני החלטה
הייתי מציע נתונים מומצאים: קריאה ואז בקשה, סדר הפוך, מארח אחר ותמים, ארגומנטים פגומים וחריגה ממגבלה. לשמור גרסת כלל, מצב השלמה, התאמות ומיקומים מקוריים. אלה מקרים מוצעים, לא תוצאות שהשגתי עם Quarry.
Reviewed rule -> compile -> candidate scanner
Invented trace -> validate -> complete clean / complete match
|
invalid or incomplete
|
host error policy
מדריך ההגדרות מתאר מגבלות קלט, זמן, עבודת קומפיילר וקריאות מודל. עקבה גדולה שנדחתה אינה הופכת לשיחה מקוצרת שהוכרזה נקייה. מדיניות מקומפלת שמורה דורשת אימות מקור.
בהגדרת הדוגמאות יש ארבעה עשר קובצי כללים. ארבע דוגמאות סמנטיות משתמשות בחיקויי מילות מפתח דטרמיניסטיים, וההערה אוסרת שימוש בהם להחלטות ייצור. הדגמה ללא מפתח אינה מדידת יכולת זיהוי התקפות.
דעתי: Quarry ראויה לניסוי ממוקד עבור כללי רצף שאפשר לבדוק. מצב האלפא, גבולות המתאמים והשלמת הסריקה חייבים להישאר גלויים. הכרזת Cisco דנה באירוע באופן נגד-עובדתי, בלי לשחזר סריקה של נתוניו המקוריים. אי אפשר להפוך זאת לשיעור זיהוי.