{/* Knowledge Filter Dropdown */}
-
+ /> */}
{/* GitHub Star Button */}
{/*
*/}
@@ -115,10 +112,10 @@ export function LayoutWrapper({ children }: { children: React.ReactNode }) {
isPanelOpen
? "md:pr-80"
: // Only KF panel open: 320px
- "md:pr-6" // Neither open: 24px
+ "md:pr-0" // Neither open: 24px
}`}
>
-
{children}
+
{children}
diff --git a/frontend/tailwind.config.ts b/frontend/tailwind.config.ts
index 334dcc49..2ba7b7ba 100644
--- a/frontend/tailwind.config.ts
+++ b/frontend/tailwind.config.ts
@@ -4,6 +4,7 @@ import tailwindcssTypography from "@tailwindcss/typography";
import { fontFamily } from "tailwindcss/defaultTheme";
import plugin from "tailwindcss/plugin";
import tailwindcssAnimate from "tailwindcss-animate";
+import tailwindcssLineClamp from "@tailwindcss/line-clamp";
const config = {
darkMode: ["class"],
@@ -175,6 +176,7 @@ const config = {
},
plugins: [
tailwindcssAnimate,
+ tailwindcssLineClamp,
tailwindcssForms({
strategy: "class",
}),
diff --git a/src/services/knowledge_filter_service.py b/src/services/knowledge_filter_service.py
index 67a62879..065e9715 100644
--- a/src/services/knowledge_filter_service.py
+++ b/src/services/knowledge_filter_service.py
@@ -19,10 +19,18 @@ class KnowledgeFilterService:
# Index the knowledge filter document
result = await opensearch_client.index(
- index=KNOWLEDGE_FILTERS_INDEX_NAME, id=filter_doc["id"], body=filter_doc
+ index=KNOWLEDGE_FILTERS_INDEX_NAME,
+ id=filter_doc["id"],
+ body=filter_doc,
+ refresh="wait_for",
)
if result.get("result") == "created":
+ # Extra safety: ensure visibility in subsequent searches
+ try:
+ await opensearch_client.indices.refresh(index=KNOWLEDGE_FILTERS_INDEX_NAME)
+ except Exception:
+ pass
return {"success": True, "id": filter_doc["id"], "filter": filter_doc}
else:
return {"success": False, "error": "Failed to create knowledge filter"}
@@ -138,11 +146,19 @@ class KnowledgeFilterService:
# Update the document
result = await opensearch_client.update(
- index=KNOWLEDGE_FILTERS_INDEX_NAME, id=filter_id, body={"doc": updates}
+ index=KNOWLEDGE_FILTERS_INDEX_NAME,
+ id=filter_id,
+ body={"doc": updates},
+ refresh="wait_for",
)
if result.get("result") in ["updated", "noop"]:
# Get the updated document
+ # Ensure visibility before fetching/returning
+ try:
+ await opensearch_client.indices.refresh(index=KNOWLEDGE_FILTERS_INDEX_NAME)
+ except Exception:
+ pass
updated_doc = await opensearch_client.get(
index=KNOWLEDGE_FILTERS_INDEX_NAME, id=filter_id
)
@@ -164,10 +180,17 @@ class KnowledgeFilterService:
)
result = await opensearch_client.delete(
- index=KNOWLEDGE_FILTERS_INDEX_NAME, id=filter_id
+ index=KNOWLEDGE_FILTERS_INDEX_NAME,
+ id=filter_id,
+ refresh="wait_for",
)
if result.get("result") == "deleted":
+ # Extra safety: ensure visibility in subsequent searches
+ try:
+ await opensearch_client.indices.refresh(index=KNOWLEDGE_FILTERS_INDEX_NAME)
+ except Exception:
+ pass
return {
"success": True,
"message": "Knowledge filter deleted successfully",
@@ -230,7 +253,10 @@ class KnowledgeFilterService:
}
result = await opensearch_client.update(
- index=KNOWLEDGE_FILTERS_INDEX_NAME, id=filter_id, body=update_body
+ index=KNOWLEDGE_FILTERS_INDEX_NAME,
+ id=filter_id,
+ body=update_body,
+ refresh="wait_for",
)
if result.get("result") in ["updated", "noop"]: