feat(halacha-queue): panel deliberation + search on rejected/approved tabs #303

Merged
chaim merged 1 commits from worktree-halacha-restore-panel-search into main 2026-06-19 10:25:23 +00:00
Owner

הפער (שחיים ביקש לסגור)

דעת-הפאנל (3 השופטים) הוצגה רק בתור-הממתינות. טאבי "נדחו"/"מאושרות" הסתירו למה הלכה נדחתה/אושרה אוטומטית — אף שהמידע נלכד (reviewer=panel:... maj-not-entailed). וגם לא היתה דרך לאתר פריט ספציפי שם.

השינוי

  • useHalachotByStatus מבקש עכשיו include_panel_round=true ומקבל מונח-חיפוש שרת-צד (אותם פרמטרים של /api/halachot שתור-הממתינות משתמש בהם).
  • HalachaRestoreCard מצייר את רכיב PanelDeliberation הקיים כשיש סבב — אותו כרטיס שהיו"ר כבר רואה בממתינות.
  • RestorePanel מקבל את אותה שורת-איתור (debounced, חיפוש שרת-צד) + מחוון מונה-התאמות; השורה נשארת גלויה גם בריק/טעינה כדי שתמיד אפשר לנקות חיפוש.

אופי השינוי

שימוש-חוזר ברכיבים מאושרים: דעת-הפאנל = כרטיס Claude Design 18, שורת-האיתור = כרטיס 19. הרכבה על משטח-אח, אושר ישירות ע"י חיים (חריג מודע לשער-העיצוב). tsc + eslint נקיים. אומת מול prod שהשילוב status+search+panel_round מחזיר נכון.

Invariants

  • G2 — שימוש-חוזר ברכיבי-UI וב-params קיימים; אין מסלול-תצוגה מקביל.
  • INV-G10 — display-only; אפס שינוי לזרימת האישור/הכרעת-היו"ר.

🤖 Generated with Claude Code

## הפער (שחיים ביקש לסגור) דעת-הפאנל (3 השופטים) הוצגה רק בתור-הממתינות. טאבי "נדחו"/"מאושרות" הסתירו *למה* הלכה נדחתה/אושרה אוטומטית — אף שהמידע נלכד (`reviewer=panel:... maj-not-entailed`). וגם לא היתה דרך לאתר פריט ספציפי שם. ## השינוי - **`useHalachotByStatus`** מבקש עכשיו `include_panel_round=true` ומקבל מונח-חיפוש שרת-צד (אותם פרמטרים של `/api/halachot` שתור-הממתינות משתמש בהם). - **`HalachaRestoreCard`** מצייר את רכיב `PanelDeliberation` הקיים כשיש סבב — אותו כרטיס שהיו"ר כבר רואה בממתינות. - **`RestorePanel`** מקבל את אותה שורת-איתור (debounced, חיפוש שרת-צד) + מחוון מונה-התאמות; השורה נשארת גלויה גם בריק/טעינה כדי שתמיד אפשר לנקות חיפוש. ## אופי השינוי שימוש-חוזר ברכיבים **מאושרים**: דעת-הפאנל = כרטיס Claude Design 18, שורת-האיתור = כרטיס 19. הרכבה על משטח-אח, אושר ישירות ע"י חיים (חריג מודע לשער-העיצוב). tsc + eslint נקיים. אומת מול prod שהשילוב status+search+panel_round מחזיר נכון. ## Invariants - **G2** — שימוש-חוזר ברכיבי-UI וב-params קיימים; אין מסלול-תצוגה מקביל. - **INV-G10** — display-only; אפס שינוי לזרימת האישור/הכרעת-היו"ר. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
chaim added 1 commit 2026-06-19 10:25:17 +00:00
feat(halacha-queue): show panel deliberation + add search on rejected/approved tabs
All checks were successful
G12 Leak-Guard / leak-guard (pull_request) Successful in 4s
Lint — undefined names / undefined-names (pull_request) Successful in 11s
8c455d6ef6
The 3-judge panel deliberation was only surfaced in the pending queue; the
'rejected'/'approved' tabs hid WHY an item was auto-rejected/approved even
though the data is captured (reviewer='panel:... maj-not-entailed'). And those
tabs had no way to locate a specific item.

- useHalachotByStatus now requests include_panel_round=true and accepts a
  server-side search term (same /api/halachot params the pending queue uses).
- HalachaRestoreCard renders the existing PanelDeliberation component when a
  round exists — same card the chair already sees in pending.
- RestorePanel gains the same locate-bar (debounced, server-side search) +
  a match-count indicator; the bar stays visible on empty/loading so a search
  is always clearable.

Reuses already-approved UI (deliberation = Design card 18, locate-bar = card
19); composition onto a sibling surface, approved directly by chaim. tsc +
eslint clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
chaim merged commit ca1f0e8c66 into main 2026-06-19 10:25:23 +00:00
chaim deleted branch worktree-halacha-restore-panel-search 2026-06-19 10:25:23 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: ezer-mishpati/legal-ai#303