feat(ia): IA גל-3 — ניווט מבוסס-משימה + קידוד X17 ל-canonical (#132, X17)
All checks were successful
G12 Leak-Guard / leak-guard (pull_request) Successful in 5s

גל-3 (האחרון) מבקלוג #127 — ניווט (INV-IA4) + השלמת קידוד-הספ. שינויי-UI קלים + docs.

א) הורדת /feedback מהניווט-הראשי (INV-IA4): "הערות יו״ר" ירד מ-WORK_LINKS.
   הוא משימה *מתוך* מרכז-האישורים — כרטיס chair_feedback ב-/api/chair/pending
   כבר deep-link ל-/feedback. הדף קיים ונגיש מהתיבה, לא יעד-ניווט מבוסס-פורמט.

ב) שמות-חיפוש עקביים (PRE-1, INV-IA6): ה-typeahead ב-precedent-attacher (חיפוש
   /api/precedents/search = פסיקה שכבר צורפה) קיבל כותרת מבהירה "פסיקה שכבר צירפת
   בעבר — לחץ למילוי אוטומטי", להבדילו מחיפוש-הקורפוס ב-/precedents (precedent-library).

ג) קידוד X17 ל-canonical: X17 נוסף לאינדקס-הספ ב-00-constitution §7 (טבלה + "X1–X17"),
   ול-CLAUDE.md (טבלת מסמכי-ייחוס, שורת ia-audit-redesign+X17). דלתות-הספ (X6 INV-UI7/8,
   07-learning §0.4, 00-constitution G2) כבר קודדו בגל-2.

בדיקות: tsc --noEmit ✓ · eslint ✓ (לבד מ-learning-panel:109 קיים-מראש). אין שינויי-backend.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-11 21:10:53 +00:00
parent 3757910079
commit 9482eb5a1e
4 changed files with 20 additions and 10 deletions

View File

@@ -127,13 +127,17 @@ export function PrecedentAttacher({
className="mt-1"
/>
{!picked && library.data && library.data.length > 0 && citation.length >= 2 && (
<ul
className="
mt-1 rounded border border-rule bg-surface shadow-sm
max-h-44 overflow-y-auto divide-y divide-rule
"
role="listbox"
>
<div className="mt-1 rounded border border-rule bg-surface shadow-sm overflow-hidden">
{/* PRE-1 (INV-IA6): this typeahead reuses precedents you already
attached to past cases — distinct from the corpus search in
/precedents (ספריית הפסיקה). Label it so the two don't blur. */}
<p className="px-3 py-1.5 text-[0.68rem] text-ink-muted bg-rule-soft/40 border-b border-rule">
פסיקה שכבר צירפת בעבר לחץ למילוי אוטומטי
</p>
<ul
className="max-h-44 overflow-y-auto divide-y divide-rule"
role="listbox"
>
{library.data.map((m) => (
<li key={m.id}>
<button
@@ -155,7 +159,8 @@ export function PrecedentAttacher({
</button>
</li>
))}
</ul>
</ul>
</div>
)}
</div>