diff --git a/src/govoplan_search/backend/manifest.py b/src/govoplan_search/backend/manifest.py
index e0b7e87..8b85f01 100644
--- a/src/govoplan_search/backend/manifest.py
+++ b/src/govoplan_search/backend/manifest.py
@@ -304,6 +304,9 @@ manifest = ModuleManifest(
"permission-aware interface."
),
body=(
+ "Documentation books sit immediately beside the visible heading or contextual label for "
+ "Search and Search index, not among operational action buttons. Field help remains beside its "
+ "label. "
"Search works with the built-in database index and can aggregate "
"optional providers. Source modules announce searchable types, "
"context scopes, and ACL-aware index entries. External engines "
@@ -379,6 +382,9 @@ manifest = ModuleManifest(
"berechtigungsbewusste Oberfläche finden."
),
"body": (
+ "Dokumentationsbücher stehen unmittelbar neben der sichtbaren Überschrift oder "
+ "Kontextbezeichnung für Suche und Suchindex, nicht zwischen ausführbaren "
+ "Aktionsschaltflächen. Feldhilfe bleibt neben der Feldbezeichnung. "
"Search verwendet den eingebauten Datenbankindex und kann optionale Anbieter "
"zusammenführen. Quellmodule melden durchsuchbare Typen, Kontextbereiche und "
"berechtigungsgeprüfte Indexeinträge. Externe Suchmaschinen bleiben optionale "
diff --git a/webui/src/components/GlobalSearch.tsx b/webui/src/components/GlobalSearch.tsx
index 85dcf96..76e13d7 100644
--- a/webui/src/components/GlobalSearch.tsx
+++ b/webui/src/components/GlobalSearch.tsx
@@ -194,7 +194,10 @@ export default function GlobalSearch({ settings, auth }: GlobalSearchProps) {
}
helpContextId="search.results"
onClose={closeOverlay}
showCloseButton={false}
@@ -280,10 +283,7 @@ export default function GlobalSearch({ settings, auth }: GlobalSearchProps) {
hideModules={Boolean(context)} onModulesChange={setModules}
onResourceTypesChange={setResourceTypes} onClear={clearFilters} />
{loading && }
-
+
}
diff --git a/webui/src/features/search/SearchAdminPanel.tsx b/webui/src/features/search/SearchAdminPanel.tsx
index e22f54d..b14e757 100644
--- a/webui/src/features/search/SearchAdminPanel.tsx
+++ b/webui/src/features/search/SearchAdminPanel.tsx
@@ -192,7 +192,10 @@ export default function SearchAdminPanel({ settings }: Props) {
return (
}
description="Inspect source coverage, process durable changes, and reconcile the tenant's derived index from authoritative modules."
loading={loading}
error={error}
@@ -225,10 +228,7 @@ export default function SearchAdminPanel({ settings }: Props) {
>
Reconcile modules
-
+
>
)}
>
diff --git a/webui/src/features/search/SearchPage.tsx b/webui/src/features/search/SearchPage.tsx
index e779349..d14acbd 100644
--- a/webui/src/features/search/SearchPage.tsx
+++ b/webui/src/features/search/SearchPage.tsx
@@ -1,7 +1,7 @@
import { ChevronDown, ExternalLink, Search } from "lucide-react";
import { useEffect, useMemo, useState, type FormEvent } from "react";
import { useSearchParams } from "react-router";
-import { ActionToolbar, Button, DocumentationHelpLink, DismissibleAlert, LoadingIndicator,
+import { ActionToolbar, Button, DocumentationHelpLink, DismissibleAlert, LoadingIndicator, PageTitle,
PageScrollViewport, useGuardedNavigate, usePlatformModules, type PlatformRouteContext
} from "@govoplan/core-webui";
import SearchFilters from "../../components/SearchFilters";
@@ -43,6 +43,10 @@ export default function SearchPage({ settings, auth }: PlatformRouteContext) {
return (
+ }>Search
{error &&