תשובת-interaction/הערה על issue בבעלות-אדם לא מעירה את ה-CEO — לנתב דרך פרימיטיב CEO-child (#227) #454
Reference in New Issue
Block a user
Delete Branch "%!s()"
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?
What & Why
כשהיו"ר עונה על ask_user_questions (או מגיב) על ה-issue הראשי שמצב-ו in_review ומשויך-לאדם (assignee_user_id=chaim), Paperclip מנסה "wake_assignee" ומוצא אדם → אף סוכן לא מתעורר; והתשובה נשארת תלויה. ניסיון wakeup ידני על ה-issue הזה מבוטל מיד עם issue_assignee_changed. התוצאה: היו"ר מרגיש שההוראה "בוטלה". התיקון הקבוע: לנתב תשובת-interaction/הערה על issue בבעלות-אדם דרך פרימיטיב ה-CEO-child הקיים (wake_ceo_for_action / יצירת issue-ילד בבעלות CEO ואז wakeup עליו) — בדיוק כפי ש-#227 עשה לכפתורי הפקת-המסמכים. כרגע מטופל ידנית לתיק 1027-04-26.
הקשר ופירוט
רקע: #218 (Gastown escalation) הוסיף את escalate_issue שמחנה issue אצל האדם (in_review+assignee_user_id) כדי לעצור recovery-loops — זה הכיוון סוכן→אדם. הכיוון ההפוך (אדם עונה→מעיר CEO) מעולם לא חובר. #227 (PR#398/#399) יצר את פרימיטיב ה-CEO-child (paperclip_client.wake_ceo_for_action, POST /api/issues/{main}/children עם assigneeAgentId=CEO ואז /wakeup) אך חיווט אותו רק לכפתורי "הפקת מסמכים". טווח-התיקון: (1) interaction-response ב-web/app.py /agents/interaction-response — כשה-issue משויך-לאדם, במקום להסתמך על wake_assignee, ליצור CEO-child עם תוכן-התשובה ולהעיר; (2) /agents/comment — כנ"ל כשה-target משויך-לאדם. לשמור G12 (דרך ה-Port). לאמת מול reference_paperclip_recovery_loops (לא ליצור לולאה חדשה: ה-child חייב לסיים ב-disposition). מקרה-מבחן: 1027-04-26 — interaction fdda4b8d נענה 15:15, לא עורר; טופל ידנית ע"י CEO-child CMP-201.
Acceptance Criteria
הועבר מ-TaskMaster (tag
legal-ai, id 228, status היהpending) ב-2026-08-05. הפניות(#228)בהודעות-commit ישנות מתייחסות למזהה ה-TaskMaster, לא למספר ה-issue הזה.