feat(ia): IA גל-2 — איחוד-משטחים: ערוץ-למידה אחד · /operations⊇/diagnostics · MET-2/3 (#131, X17) #208
Reference in New Issue
Block a user
Delete Branch "worktree-ia-wave2-consolidation"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
גל-2 מבקלוג #127 — איחוד-משטחים לפי משטח-היעד של X17. מקיים INV-IA1/IA3/IA4 + דלתות-הספ. שומר G10/INV-LRN1 — לא הוסר שום שער-אנושי, רק שער/דגל כפול.
א) תיבת-אישור אחת (INV-IA1)
כרטיסי "אישור הלכות" + "פסיקה חסרה" ב-/operations הפכו למצביעים ל-/approvals ("לתיבת-האישורים ←"). /operations מנטר, /approvals מחליט — בעלים-יחיד למוני-הגייטים.
ב) ערוץ-למידה אחד (INV-IA3) — הסרת
applied_to_skillהדגל האינפורמטיבי-בלבד (LRN-1) שבלבל את היו"ר ב"שני שערים" — הוסר end-to-end:
lessons-tab; badge ב-curator-portrait(→ "מאושר" לפיreview_status).LessonPatch,_lesson_to_json, ה-patch,curator/stats.recent_findings(→review_status).list/add/update_decision_lessonלא בוחרים/כותביםapplied_to_skill; הפרמטר הוסר. העמודה+אינדקס נשמרים (back-compat, ללא migration), מסומניםDEPRECATED.DecisionLesson/LessonPatch/CuratorFinding.review_status='approved'= הסטטוס היחיד "זורם-לכותב" (INV-LRN1, #126).ג) MET-2/3 lost-update (INV-IA3)
_append_methodology_overrideרץ עכשיו בטרנזקציה אחת עםSELECT … FOR UPDATE— אין read-modify-write מתפצל מול עורך-המתודולוגיה או promote מקביל. /methodology = העורך-הקנוני; promote מבטל את ה-cache שלו (גל-1 MET-1).ד) /operations⊇/diagnostics (INV-IA4)
גוף /diagnostics חולץ ל-
<SystemHealthSection/>ומורנדר ב-/operations תחת "בריאות-מערכת". /diagnostics →redirect("/operations"); הוסר מהניווט. משטח-ניטור יחיד.ה) דלתות-ספ (≥3 מקורות ב-X17)
INV-UI7(aggregate=SSoT, mutation מבטל queryKey, אין מונה-מתחרה) +INV-UI8(render-or-remove, חלקיות מוצגת).applied_to_skillמוסר.Invariants
מקיים INV-IA1/IA3/IA4 + INV-UI7/UI8 (חדשים), G2 (מקור-אמת יחיד), G10/INV-LRN1 (שערים-אנושיים נשמרים).
בדיקות
py_compile web/app.py+db.py✓npx tsc --noEmit✓npm run lint✓ (לבד מ-learning-panel.tsx:109— קיים-מראש ב-main)next buildנכשל ב-worktree רק בגלל symlinknode_modules(Turbopack) — Docker/CI תקין.api:typesיתרענן בדפלוי (curator/lessons אינם response-modeled; הטיפוסים יד-כתובים עודכנו).🤖 Generated with Claude Code