# הקשר להמשך ישיר — 0054
תאריך: 2026-06-09 23:10
אפליקציה: Vitruvius (פלאגין Revit לתיקון ג'יבריש עברי ב-DWG)

## מה בנוי עכשיו (הכל פרוס ל-per-user + 132/132 בדיקות Core)
- **שער "לא-להזיק" `FixGuard`** (`src\Vitruvius.Core\Verify\FixGuard.cs`): `CheckDwgLoss` (יחס גודל floor 0.65) + `VerifyTextChange` (חוסם רק רגרסיית עברית-יוניקוד אמיתית).
- **איבוד-דאטה = לא-חוסם** (החלטת משתמש): התיקון רץ תמיד, שומר גיבוי, ומציג הערה אחת קצרה **"נוצר גיבוי לקובץ המקור"**. בלי אישור, בלי "אובייקטים הוסרו".
- **הודעת קובץ-נעול**: כש-DWG פתוח ב-AutoCAD (`.dwl`) → `FileLocked` → הודעה "הקובץ פתוח בתוכנה אחרת — סגור ונסה שוב".
- **כיסוי פונטים גנרי**: moran_m/sivan_m בטבלה + `FontRecommender.RecommendForDetected` (כל SHX עברי בשרטוט→Hebrew Visual, עם משמר-לטיני). `DwgReverseService` מחזיר `ShxFonts`; `FixGibberishCommand.ApplyDetectedFontMap` ממפה אחרי ההיפוך, לפני reload.
- **תיקון מיקום deploy** (סשן זה): המניפסט הפעיל ב-`%APPDATA%\Autodesk\Revit\Addins\2024\Vitruvius\` — לא ProgramData. כל deploy → לשם, לארכב OLD\.

## הצעד הבא — היסט מיקום טקסט (החלטת המשתמש: "תעלה בסשן הבא")
הטקסט המתוקן נוחת מעט מחוץ למקום המקורי. סיבה: Revit לא מרנדר SHX → ממירים ל-Vitruvius Hebrew Visual (פרופורציונלי) במקום ה-`_m` SHX של היועץ (monospace) → רוחב שונה → טקסט מיושר-מרכז/ימין זז. **הקואורדינטות שלמות — היסט רינדור בלבד.**
**להציג למשתמש 3 אפשרויות ולקבל החלטה:**
1. לבנות/לשייך פונט עברי **monospace** שתואם רוחב ל-`_m` → יקטין משמעותית את ההיסט (פרויקט בינוני).
2. לקבל את ההיסט (קריא+נכון+קואורדינטות שלמות).
3. קודם לחלץ מיקומי טקסט לפני/אחרי כדי לדעת אם ההיסט אופקי (רוחב) או אנכי (קו-בסיס).

## קבצים רלוונטיים לסשן הבא
- `src\Vitruvius.Core\Fonts\FontRecommender.cs` (מיפוי פונטים)
- `fonts\build-hebrew-visual.py` + `fonts\Vitruvius_HebrewVisual.ttf` (בניית הפונט — אם הולכים על monospace)
- `src\Vitruvius.Core\Dwg\DwgReverseService.cs` (round-trip)
- memory `vitruvius-fix-safety-hardening` + `vitruvius-hebrew-encoding`
