From 9482eb5a1e7f3ee50ea201d1ebe7418cc36e97de Mon Sep 17 00:00:00 2001 From: Chaim Date: Thu, 11 Jun 2026 21:10:53 +0000 Subject: [PATCH] =?UTF-8?q?feat(ia):=20IA=20=D7=92=D7=9C-3=20=E2=80=94=20?= =?UTF-8?q?=D7=A0=D7=99=D7=95=D7=95=D7=98=20=D7=9E=D7=91=D7=95=D7=A1=D7=A1?= =?UTF-8?q?-=D7=9E=D7=A9=D7=99=D7=9E=D7=94=20+=20=D7=A7=D7=99=D7=93=D7=95?= =?UTF-8?q?=D7=93=20X17=20=D7=9C-canonical=20(#132,=20X17)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit גל-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) --- CLAUDE.md | 1 + docs/spec/00-constitution.md | 3 ++- web-ui/src/components/app-shell.tsx | 5 ++++- .../components/compose/precedent-attacher.tsx | 21 ++++++++++++------- 4 files changed, 20 insertions(+), 10 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 8728df3..97a29ac 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -39,6 +39,7 @@ | [`docs/spec/00-constitution.md`](docs/spec/00-constitution.md) | **חוקת המערכת** — ייעוד, 11 invariants גלובליים (G1–G11), כללי-הנדסה, אינדקס-ספ | **לפני כל כתיבת/שינוי קוד** (ראה §פרוטוקול כתיבת-קוד) | | [`docs/spec/README.md`](docs/spec/README.md) | **אינדקס ספ-המערכת** — מחזור-חיים (01–07) + חוצי-שלבים (X1–X11). מקור-האמת ל"מהו תקין" | **לפני כל כתיבת/שינוי קוד** | | [`docs/spec/gap-audit.md`](docs/spec/gap-audit.md) | **מפת-פערים** — 62 ממצאים → 15 יחידות-תיקון (FU); invariant מופר + file:line + תיקון מוצע | לפני נגיעה ב-GAP/FU קיים או תכנון FU חדש | +| [`docs/ia-audit-redesign.md`](docs/ia-audit-redesign.md) + [`docs/spec/X17`](docs/spec/X17-information-architecture.md) | **אבחון משטח-ההפעלה + IA-יעד** — 34 משטחים, 37 ממצאים; INV-IA1–IA6 (מקור-אמת יחיד/שער-אחד/ניווט-משימה) מרימים G2/G10 לשכבת-UI. גלי-איחוד #130–132 | לפני עבודה על דפים/ניווט/cache או תורי-אישור | | [`docs/architecture.md`](docs/architecture.md) | ארכיטקטורת המערכת, תרשים רכיבים, זרימת נתונים, 4 שכבות DB | לפני עבודה על תשתית | | [`docs/block-schema.md`](docs/block-schema.md) | הגדרת 12 בלוקים — content model, constraints, processing params | **לפני כל כתיבת החלטה** | | [`docs/migration-plan.md`](docs/migration-plan.md) | תוכנית מעבר vault → DB — טבלאות, עדיפויות, כמויות | לפני ייבוא נתונים | diff --git a/docs/spec/00-constitution.md b/docs/spec/00-constitution.md index 8577b6d..fc4bac6 100644 --- a/docs/spec/00-constitution.md +++ b/docs/spec/00-constitution.md @@ -249,7 +249,7 @@ Martin — *Clean Architecture* (The Dependency Rule) · Eric Evans — *Domain- ## 7. אינדקס הספ -> הערה: כל קבצי הספ (00, 01–07, X1–X16) קיימים. החוקה היא שער-הכניסה; כל קובץ-תחום כפוף לה. +> הערה: כל קבצי הספ (00, 01–07, X1–X17) קיימים. החוקה היא שער-הכניסה; כל קובץ-תחום כפוף לה. | קובץ | תפקיד | אוכף invariants | |------|--------|-----------------| @@ -277,6 +277,7 @@ Martin — *Clean Architecture* (The Dependency Rule) · Eric Evans — *Domain- | [X14-storage-minio.md](X14-storage-minio.md) | אחסון-אובייקטים (MinIO/S3) · `storage.py` כמסלול-I/O יחיד · git=טקסט/MinIO=בינאריים · WORM סופי | G2, G9 | | [X15-agent-platform-port.md](X15-agent-platform-port.md) | שער-הפלטפורמה — Paperclip מאחורי Port יחיד · baseline-דליפה · R0–R4 · leak-guard | G2, G12 | | [X16-pipeline-durability.md](X16-pipeline-durability.md) | עמידות-פייפליין — LangGraph כספרייה · checkpointing/replay · `_pipeline_runtime.py` משותף | G3 | +| [X17-information-architecture.md](X17-information-architecture.md) | ארכיטקטורת-מידע — משטח-ההפעלה (דפים/תורים/ניווט/cache) · INV-IA1–IA6 מרימים G2/G10 לשכבת-UI · #127/#130–132 | G2, G10 | > **X6–X10 (מחזור-2):** מכסים את 8 משטחי-האפליקציה שמחוץ לצינור-הליבה (אינטגרציה, web-ui, מילוי-שדות, > אחסון-ניתוחים, כלי-MCP, deploy/env). הממצאים ב-[gap-audit.md](gap-audit.md) (GAP-24..62 → FU-9..15) diff --git a/web-ui/src/components/app-shell.tsx b/web-ui/src/components/app-shell.tsx index acfc950..9aae76c 100644 --- a/web-ui/src/components/app-shell.tsx +++ b/web-ui/src/components/app-shell.tsx @@ -39,10 +39,13 @@ type NavItem = { href: string; label: string; groupLabel?: string }; type NavMenuDef = { id: string; label: string; items: NavItem[] }; // Work cluster — direct links, the daily hubs. +// INV-IA4 (#132): "הערות יו״ר" (/feedback) dropped from the primary nav — it's a +// task surfaced *inside* מרכז אישורים (the chair_feedback card in /api/chair/pending +// deep-links to /feedback), not a top-level format-based destination. The page +// still exists and is reached from the approvals box. const WORK_LINKS: NavItem[] = [ { href: "/", label: "בית" }, { href: "/approvals", label: "מרכז אישורים" }, - { href: "/feedback", label: "הערות יו״ר" }, { href: "/archive", label: "ארכיון" }, ]; diff --git a/web-ui/src/components/compose/precedent-attacher.tsx b/web-ui/src/components/compose/precedent-attacher.tsx index 38a6789..1c0e59c 100644 --- a/web-ui/src/components/compose/precedent-attacher.tsx +++ b/web-ui/src/components/compose/precedent-attacher.tsx @@ -127,13 +127,17 @@ export function PrecedentAttacher({ className="mt-1" /> {!picked && library.data && library.data.length > 0 && citation.length >= 2 && ( - + )}