M4 — איזה milestone פותחים?

סטטוס עדכני: M1/M2/M3 · יש סתירה ב-spec ש-M4 שצריך להכריע
הסתירה
לפי PLAN.md (שורה 153)

M4 = Overlay StubIOverlayStrategy + NoOpOverlayStrategy בלבד.

משך: 0 ימים. רק תשתית ארכיטקטונית ל-Phase 2 — לא בונים overlay אמיתי ב-MVP.

לפי CLAUDE.md

M4 = onboarding/installer — שזה למעשה M9 ב-PLAN (Inno Setup).

כנראה שורה שנכתבה בסשן קודם בלי לסנכרן עם המספור שב-PLAN.

הצעד הקונקרטי לפי PLAN.md

יצירת 2 קבצים ב-src\Vitruvius.Core\Overlay\:

  • IOverlayStrategy.cs — interface עם signature אחת (Apply(DwgLink, ITransaction) + Restore)
  • NoOpOverlayStrategy.cs — impl ריק שמחזיר success

זה literally חצי שעה. אחר כך אנחנו ב-M5 (DwgReloadHandler — auto re-fix on link reload).

למה זה לא טריוויאלי

M3 בפועל חרג בענק מ-spec: כולל DWG pipeline דרך accoreconsole, TTF custom (Vitruvius Hebrew Visual), ו-6 כפתורי ribbon — שזה רמת UI של M6 בתכנון המקורי.

כלומר המציאות עקפה את ה-PLAN. השאלה היא אם להמשיך לפי המספור המקורי או לדלג למה שבאמת חסר.

לאישור — 2 שאלות
1האם M4 כפי שכתוב ב-PLAN עדיין רלוונטי?

או שכבר הוכרע בפועל שאין צורך ב-overlay — כי DXF reverse + TTF פתרו את הבעיה ויזואלית על A_Mivne roi.rvt?

2אם M4 = stub של חצי שעה — לעשות אותו ולקפוץ ל-M5 באותו סשן?

M5 = DwgReloadHandler — האזנה ל-Application.DocumentChanged, וכשמשתמש מעדכן DWG link → התיקון מופעל אוטומטית. זה החשש המקורי של היועץ שה-PLAN מציין במפורש.

איזה milestone לפתוח?

שלוש אפשרויות סבירות:

  • אופציה A M4 stub בלבד (~30 דק') — נסגור milestone לפי הספר ונעצור
  • אופציה B M4 stub + M5 (auto re-fix) באותו סשן — הכי הרבה ערך, ~חצי יום
  • אופציה C לדלג על M4 לגמרי (להכריז כ-N/A, החלטה רטרואקטיבית) ולפתוח M5 ישר