feat(learning): שער-אישור ל-decision_lessons — רק לקח מאושר זורם לכותב (INV-LRN1, #126) #202
Reference in New Issue
Block a user
Delete Branch "worktree-lesson-approval-gate"
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?
הקשר
אודיט #122 חשף דליפה: לקחי-הפאנל (
decision_lessons) זרמו לכותב אוטומטית (block_writer.py:927→get_recent_decision_lessons) ללא סינון-אישור — הפאנל כתב, הכותב צרך מיד, בעקיפת שער-היו"ר (INV-LRN1/G10). מה שהיו"ר אישר ב-promoteהלך לערוץ נפרד (appeal_type_rules). כלומר תוכן לא-מאושר השפיע על הכתיבה.השינוי — שער-אישור מפורש
review_status(proposed/approved/rejected) ל-decision_lessons(SCHEMA_V34,ADD COLUMN IF NOT EXISTS).get_recent_decision_lessons(צרכן-הכותב) מחזיר רקapproved— זה הגייט.style_lesson_panel) כותבproposed(ברירת-מחדל) → לא זורם עד אישור.approvedמיידית (מדלג על שער-ההצעה — חתימת-יו"ר ישירה).ממתין לאישור/מאושר · זורם לכותב/נדחה) + כפתורי אשר / דחה / בטל-אישור.הכרעת-יו"ר (2026-06-11)
כל 41 הלקחים שקדמו לשער מתאפסים ל-
proposed— שום לקח לא זורם עד אישור מפורש. ברירת-המחדל של העמודה (DEFAULT 'proposed') מיישמת זאת אוטומטית על הקיימים.Invariants
get_recent), לא תיקון-בקריאה אצל הכותב.decision_lessons; אין מסלול מקביל.בדיקה
py_compileעובר;_run_schema_migrations(db.py:55, בתוךget_pool) מבטיח שהעמודה קיימת לפני כל שאילתה (idempotent).eslintנקי;tsc --noEmitעובר (ה-build המלא נכשל רק על symlink־node_modules ב-worktree — מגבלת Turbopack, לא קוד).npm run api:types(review_status נוסף ל-payload; הטיפוסים הידניים ב-training.tsכבר מעודכנים).ref: #122 · #126 · data/audit/learning-loop-activity-20260611.md
🤖 Generated with Claude Code