BodyPlus XPro

דיבאג זיהוי תרגיל

0 0 Version: dev
Engineering debug Engineering debug

Exercise debug lane

Use this page for exercise detection, rep counting, scoring, and pipeline diagnostics. Keep it as a specialist lane below the main Exercise operator page.

This page remains internal. The main operator destination for live workouts is still /exercise.

Detection and lock first

Start with the current exercise verdict and the live pipeline state.

Rep and scoring second

Use rep and score diagnostics only after the exercise identity lane is clear.

Deep evidence last

Raw JSON and technical blocks stay lower than the specialist diagnosis flow.

🟢 ממשק LIVE לזיהוי תרגיל
פתח ממשק LIVE
בעמוד ה‑LIVE תראה חלוקה בין Preview/Locked (תצוגה/נעול) וזיהוי לכל חזרה בזמן אמת.
ℹ️ איך לקרוא את הדף
קיצור דרך: כל מקטע מסביר "איפה זה נתקע" ומה חשוב לבדוק עכשיו.
• תקציר: מצב כללי, זיהוי תרגיל, וספירת OK/WARN/ERR לכל המערכות.
• Pipeline: סטטוס לכל שכבה (Bridge/Timing/Metrics/Registry/Classifier/Scoring/DB).
• Start‑Gate / Early / Lock / Retro: איך התקבלה ההחלטה המוקדמת והאם הייתה נעילה/רטרו.
• Prelock / באפרים: יציבות, חלונות זמן ומבני באפר בזמן אמת.
• תזמון / השהיה: dt/fps/latency ואזהרות תזמון.
• מדדים נכנסים + חזרות/סטים: המדדים שהגיעו והסטטוס של מנוע החזרות.
• YAML / Aliases: מה נטען מספריית התרגילים והאם יש בעיות שמות.
• Flow Checks + בעיות + Troubleshooting: בדיקות עקביות והמלצות תיקון.
• ניקוד + הסברים + ביקורת קולית: ציון, קריטריונים, ומשפטי משוב.
• מלאי מסווגים / מצלמה / DB / JSON: עזרי מערכת, שמירה, ונתונים גולמיים.
Debug Glossary (key terms)
Use this glossary to interpret the debug metrics and why a label was chosen.
top1 / top2
The top two candidate labels by score at this moment (top1 and top2).
score / avg_score
score is the current score; avg_score is the rolling average over the window.
dominance_ratio
Portion of time top1 dominates within the window (higher is stronger).
gap_avg_score
Average score gap between top1 and top2; larger means more separation.
prelock_window_span_ms
Time span covered by the prelock buffer; if too short, prelock is not ready.
problem_ratio
Fraction of samples marked as problematic inside the window.
lock.status / lock_dt_ms
Whether lock is buffering or locked, and how long it took.
unscored_reason
Reason scoring is missing (example: prelock_window_not_full).
confidence_min_score
Minimum score required to accept a candidate as confident.
min_gap
Minimum gap required between top1 and top2 scores.
unscored_reason (examples)
buffering_prelock_window_not_full, buffering_prelock_low_gap, buffering_prelock_low_dominance.
samples_total / samples_ok
Total samples vs valid samples used by prelock.
🧪 מעבדת דיבאג לזיהוי תרגיל
- בודק...
run_id: -
שלבים: -
רענן = snapshot קל (ללא raw/report). רענון מלא = כולל raw/report. העתק/שמור/הורד = JSON. PNG = תמונת תקציר. השהה = עוצר רענון אוטומטי. הצג/הסתר raw/report = שינוי תצוגה בלבד.
מדיניות מזהים תרומת ניקוד: -
תקציר
-
-
-
-
-
runtime_guard: -
-
lock_health: -
-
capture_quality: -
-
count_explanation: -
-
evidence_traceability: -
JSON תקציר
-
התקציר מציג: overall + exercise + systems (מונה תקלות) + details (1‑2 הסברים קצרים מהשכבות הבעייתיות).
Live Quick View
live
Fast live review for the first decision window: preview owner over time, top candidate score curves, lock/no-lock state, and the current 3-second markers.
Current Top1
-
Locked
-
Window Owner
-
Winner Switches
-
Live Read
-
Gate / Reject
-
markers: -
Owner Timeline
Top Candidate Score Curves
Rank Candidate Score Dominance
No live top3 yet.
Rep Count
-
Rep State
-
Signal Key
-
Last Close / Blocker
-
Rep Count Timeline
Rep Signal / State
🧭 מצב Pipeline (שכבות מערכת)
✅ תקין · ⚠ אזהרה · ❌ שגיאה — כל כרטיס מציג סטטוס והסבר קצר לשכבה.
Bridge (גשר נתונים)
-
בודק שה‑payload מגיע מה‑Runner.
Timing (תזמון)
-
בודק מרווחי זמן, FPS וחריגות.
Metrics (מדדים)
-
בודק שהמדדים חושבו ונכנסו לצינור.
YAML / Registry (ספריית תרגילים)
-
בודק טעינת ספריית התרגילים וקבצי YAML.
Classifier (מסווג)
-
זיהוי התרגיל הנוכחי והמקור שלו.
מזהה: -
תווית: -
Scoring (ניקוד)
-
בדיקת חישוב ציון וקריטריונים.
DB (מסד נתונים)
-
סטטוס כתיבת הדו"ח למסד.
Classifier Explain (why this label won)
-
Picked
id: -
reason: -
margin: -
top_k: -
Prelock
mode: -
reason: -
top1: -
top2: -
dominance: -
Guards
movement_guard: -
prefilter: -
candidate must_have_missing evidence ranges score notes
-
-
⏱ Start‑Gate / Early / Lock / Retro (התחלה / ניחוש / נעילה / רטרו)
כאן רואים איך נבחר המועמד הראשוני, מתי בוצעה נעילה, והאם היה תיקון לאחור (Retro).
Start‑Gate / מועמד
מתי התחיל מועמד, מה חלון הדגימה, ומה הדומיננטיות שסיפקה פתיחת Gate.
סטטוס
-
-
מועמד / התחלה
candidate_ms: -
candidate_id: -
start_ms: -
on_at_ms: -
חלון / דגימות
window_ms: -
samples: -
ממוצע / דומיננטיות
avg_top1: -
avg_margin: -
dominance: -
תרגיל בטחון ממוצע פער ממוצע דומיננטיות
חסר
-
Early מול Lock מול Retro
השוואה בין ניחוש מוקדם לנעילה בפועל, והאם בוצע תיקון Retro.
ניחוש מוקדם (Early)
-
-
-
נעילה (Lock)
-
-
זמן נעילה (ms): -
gate בזמן נעילה: - (-)
best_avg: -
-
-
Retro (תיקון לאחור)
סטטוס: -
סיבה: -
apply: - / -
guard: - (-)
חלון: - / פריימים: -
replay_ex: -
תרגיל בטחון ממוצע פער ממוצע דומיננטיות
חסר
תרגיל בטחון ממוצע פער ממוצע דומיננטיות
חסר
-
🔒 איכות נעילה (מחושב)
חישוב יציבות הנעילה בחלון ~3 שניות: דומיננטיות, פער וממוצע בטחון.
נעול
-
computed_at: -
איכות
-
dom1: -
dom2: -
margin: -
מדדים
-
תרגיל בטחון ממוצע פער ממוצע דומיננטיות
חסר
🧱 Prelock / באפרים
מציג מצב Prelock, באפרי נתונים, והיסטוריית מדדים לצורך רטרו.
Prelock
-
-
block_reason: -
gap: - / min: -
dominance: - / min: -
window_span_ms: -
problem_ratio: -
eligible_streak: -
top1_history: -
-
Buffers
-
-
-
באפר מדדים
-
-
-
ביצועים / FPS
מדדי ביצועים ו־FPS כדי להבין אם הבעיה היא עומס עיבוד או מקור וידאו איטי.
- -
-
-
⏱ תזמון / השהיה
מדדי זמן לכל שלב, פערים בין פריימים וזיהוי עיכובים חריגים.
- -
-
מפתח ערך פירוט
חסר
-
📥 מדדים נכנסים + חזרות/סטים
בדיקה מה באמת מגיע מה‑Runner, ומצב מנוע החזרות/סטים בזמן אמת.
מדדים נכנסים
-
מנוע חזרות / סטים
-
סט חזרה מצב סיבת סגירה זמן ROM/איכות
חסר
-
-
Rep/Set Explain (debug)
-
-
-
-
Report (rep)
-
Runtime (reps/sets)
-
Persist (rep_count_diag)
-
-
📚 YAML / Registry (ספריית תרגילים)
נתיב הספרייה, מספר קבצי YAML, ומדיניות מזהים.
-
🏷 כינויים (aliases.yaml)
מיפוי כינויים ל‑exercise_id בפועל.
-
כינוי יעד נפתר
חסר
✅ בדיקות זרימה (Flow Checks)
בדיקות קצרות שמוודאות שהזרימה בין שלבים תקינה.
שלב בדיקה סטטוס ערך
חסר
⚠ בעיות + מקרא
התראות מערכת והסבר קצר למה כל צבע/סטטוס אומר.
בעיות
-
מקרא
-
🧯 מטריצת תקלות (Troubleshooting)
תקלה → סיבה → בדיקות → פעולה מומלצת.
קוד שלב חומרה סימפטום סיבה בדיקות פעולה
חסר
📊 ניקוד + הסברים
פירוק הציון והסברים לשגיאות או חוסר ניקוד.
רמזים לניקוד
-
פירוט ציון
-
תאימות Explain
-
סעיף מפתח קריטריון exercise_id
חסר
    Evidence and Signal Traceability
    Compact runtime landing for citation-ready criteria and the active rep signal trace.
    -
    -
    -
    -
    -
    -
    Citation-ready criteria
    -
    Signal trace
    -
    -
    🔊 דיבאג ביקורת קולית
    בודק תצורת קול, משפטים אחרונים, ותאימות לסעיפים.
    - source: -
    -
    -
    -
    משפטים אחרונים (report.hints)
      כל המשפטים שהמערכת יכולה להגיד
      section rep_voice rep_voice_fast rep_voice_slow set_voice
      -
      check_id text
      -
      voice_catalog JSON
      -
      🗂 מלאי מסווגים
      רשימת תרגילים שהמסווג מכיר ומצב הטעינה שלהם.
      -
      📷 דיבאג מצלמה
      לוגים בזמן אמת וסיכום בדיקות נראות (visibility) למצלמות.
      camera_wizard / לוגים בזמן ריצה
      -
      סיכום SetVisibilityAudit
      -
      🗄 דיבאג DB (מנוע → מסד נתונים)
      מצב כתיבה, חיבור ומניעת כפילויות בנתיב ה‑persist.
      -
      🧾 JSON גולמי (payload / report / full)
      מיועד להעתקה מלאה/בדיקה טכנית. שים לב שזה עלול להיות גדול.
      raw_payload
      -
      report_record
      -
      full snapshot
      -