diff --git a/web-ui/src/app/precedents/page.tsx b/web-ui/src/app/precedents/page.tsx
index edc3e0f..9513300 100644
--- a/web-ui/src/app/precedents/page.tsx
+++ b/web-ui/src/app/precedents/page.tsx
@@ -9,8 +9,6 @@ import { LibrarySearchPanel } from "@/components/precedents/library-search-panel
import { HalachaReviewPanel } from "@/components/precedents/halacha-review-panel";
import { PlansReviewPanel } from "@/components/precedents/plans-review-panel";
import { LibraryStatsPanel } from "@/components/precedents/library-stats-panel";
-import { useHalachotPending } from "@/lib/api/precedent-library";
-import { usePlansPending } from "@/lib/api/plans";
import { useMissingPrecedents } from "@/lib/api/missing-precedents";
/**
@@ -27,39 +25,6 @@ import { useMissingPrecedents } from "@/lib/api/missing-precedents";
* per-case precedent attacher (chair-attached quotes scoped to a case).
*/
-/** Colored count pill riding on a tab trigger (mockup 07: warn for review
- * queue, info for incoming). Returns null when the queue is empty. */
-function CountPill({ n, tone }: { n: number; tone: "warn" | "info" }) {
- if (!n) return null;
- const cls =
- tone === "warn"
- ? "bg-warn text-white"
- : "bg-info text-white";
- return (
-
- {n}
-
- );
-}
-
-function PendingPill() {
- const { data } = useHalachotPending();
- return ;
-}
-
-function PlansPendingPill() {
- const { data } = usePlansPending();
- return ;
-}
-
-function IncomingPill() {
- // "פסיקה נכנסת" = open missing-precedents waiting for the chair to upload.
- const { data } = useMissingPrecedents({ status: "open", limit: 1 });
- return ;
-}
-
const PRECEDENT_TABS = new Set(["library", "search", "review", "plans", "incoming", "stats"]);
export default function PrecedentsPage() {
@@ -93,19 +58,16 @@ export default function PrecedentsPage() {
{/* tabs as a dedicated row under the header — underline-style
- triggers with colored count pills (mockup 07). */}
+ triggers; count pills removed (#3), the active underline alone
+ carries state (mockup 07). */}
{[
- { value: "library", label: "ספרייה", pill: null },
- { value: "search", label: "חיפוש בקורפוס", pill: null },
- { value: "review", label: "תור הלכות", pill: },
- { value: "plans", label: "תכניות", pill: },
- {
- value: "incoming",
- label: "פסיקה נכנסת",
- pill: ,
- },
- { value: "stats", label: "סטטיסטיקה", pill: null },
+ { value: "library", label: "ספרייה" },
+ { value: "search", label: "חיפוש בקורפוס" },
+ { value: "review", label: "תור הלכות" },
+ { value: "plans", label: "תכניות" },
+ { value: "incoming", label: "פסיקה נכנסת" },
+ { value: "stats", label: "סטטיסטיקה" },
].map((t) => (
{t.label}
- {t.pill}
))}
diff --git a/web-ui/src/components/app-shell.tsx b/web-ui/src/components/app-shell.tsx
index 9aae76c..6f45db0 100644
--- a/web-ui/src/components/app-shell.tsx
+++ b/web-ui/src/components/app-shell.tsx
@@ -15,8 +15,6 @@ import {
} from "@/components/ui/dropdown-menu";
import { GlobalSearch } from "@/components/global-search";
import { headerSubtitle } from "@/components/header-context";
-import { useMissingPrecedentsOpenCount } from "@/lib/api/missing-precedents";
-import { usePendingApprovals } from "@/lib/api/chair";
/**
* Ezer Mishpati navigation shell — two-row header.
@@ -55,11 +53,12 @@ const KNOWLEDGE_MENUS: NavMenuDef[] = [
{
id: "precedents",
label: "פסיקה",
+ // #4: "פסיקה חסרה" (/missing-precedents) ירד מהתפריט — הוא כפול לטאב
+ // "פסיקה נכנסת" בתוך /precedents. הדף עצמו נשאר נגיש מתוך אותו טאב.
items: [
- { href: "/precedents", label: "ספריית פסיקה" },
- { href: "/digests", label: "יומונים" },
- { href: "/missing-precedents", label: "פסיקה חסרה" },
- { href: "/graph", label: "מפת הקורפוס" },
+ { href: "/precedents", label: "ספריית פסיקה" },
+ { href: "/digests", label: "יומונים" },
+ { href: "/graph", label: "מפת הקורפוס" },
],
},
{
@@ -260,7 +259,6 @@ function NavLink({ item, active }: { item: NavItem; active: boolean }) {
`}
>
{item.label}
- {item.href === "/approvals" ? : null}
{active && (
isActive(pathname, i.href));
- const hasMissingPrecedents = menu.items.some((i) => i.href === "/missing-precedents");
return (
{menu.label}
- {hasMissingPrecedents ? : null}
{menuActive && (
{item.label}
- {item.href === "/missing-precedents" ? : null}
@@ -334,34 +329,3 @@ function NavMenu({ menu, pathname }: { menu: NavMenuDef; pathname: string }) {
);
}
-/* Total pending-approvals badge next to "מרכז אישורים" — Dafna's outstanding
- * human-gate items (halachot + missing precedents + feedback + qa_failed).
- * Renders only when >0 so the nav stays quiet when everything is cleared. */
-function ApprovalsBadge() {
- const { data } = usePendingApprovals();
- const total = data?.total_pending ?? 0;
- if (!total) return null;
- return (
-
- {total}
-
- );
-}
-
-/* Small open-count badge next to "פסיקה חסרה" — only renders when >0
- * so the nav stays quiet in normal operation. */
-function MissingPrecedentsBadge() {
- const { data: openCount } = useMissingPrecedentsOpenCount();
- if (!openCount) return null;
- return (
-
- {openCount}
-
- );
-}