fix: invalidate agent cache on knowledge changes
This commit is contained in:
@@ -25,7 +25,6 @@ from app.models.knowledge import (
|
||||
from app.schemas.admin import KnowledgeSaveRequest
|
||||
from app.services.admin_service import OperationLogService
|
||||
from app.services.feishu_service import FeishuKnowledgeService
|
||||
from app.services.knowledge_catalog_cache_service import KnowledgeCatalogCacheService
|
||||
from app.api.pagination import page_result
|
||||
|
||||
router = APIRouter()
|
||||
@@ -134,7 +133,6 @@ def import_knowledge_from_space(
|
||||
db.rollback()
|
||||
raise HTTPException(status_code=status.HTTP_409_CONFLICT, detail="该飞书文章已创建知识库") from exc
|
||||
db.refresh(knowledge)
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success({"imported": 1, "skipped": 0, "id": knowledge.id, "name": knowledge.name})
|
||||
|
||||
|
||||
@@ -166,7 +164,6 @@ def create_knowledge(
|
||||
db.rollback()
|
||||
raise HTTPException(status_code=status.HTTP_409_CONFLICT, detail="该飞书文章已创建知识库") from exc
|
||||
db.refresh(knowledge)
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success(_knowledge_dict(knowledge))
|
||||
|
||||
|
||||
@@ -187,7 +184,6 @@ def update_knowledge(
|
||||
OperationLogService.write(db, admin_id=current_admin.id, module="knowledge", action="update", target_id=knowledge.id)
|
||||
db.commit()
|
||||
db.refresh(knowledge)
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success(_knowledge_dict(knowledge))
|
||||
|
||||
|
||||
@@ -222,7 +218,6 @@ def delete_knowledge(
|
||||
db.delete(knowledge)
|
||||
OperationLogService.write(db, admin_id=current_admin.id, module="knowledge", action="delete", target_id=knowledge.id)
|
||||
db.commit()
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success()
|
||||
|
||||
|
||||
|
||||
@@ -30,7 +30,6 @@ from app.schemas.knowledge import (
|
||||
)
|
||||
from app.services.admin_service import OperationLogService
|
||||
from app.services.knowledge_pipeline_service import KnowledgePipelineService
|
||||
from app.services.knowledge_catalog_cache_service import KnowledgeCatalogCacheService
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
@@ -69,7 +68,6 @@ def batch_update_metadata(
|
||||
)
|
||||
results.append({"knowledgeId": knowledge_id, "ok": True})
|
||||
db.commit()
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
success = sum(1 for item in results if item["ok"])
|
||||
return api_success(
|
||||
{"total": len(results), "success": success, "failed": len(results) - success, "results": results}
|
||||
@@ -94,7 +92,6 @@ def update_metadata(
|
||||
)
|
||||
db.commit()
|
||||
db.refresh(knowledge)
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success(_knowledge_detail(knowledge))
|
||||
|
||||
|
||||
@@ -225,7 +222,6 @@ async def synchronize(
|
||||
raise HTTPException(status_code=status.HTTP_502_BAD_GATEWAY, detail=f"知识同步失败:{exc}") from exc
|
||||
OperationLogService.write(db, admin_id=current_admin.id, module="knowledge", action="sync", target_id=knowledge.id)
|
||||
db.commit()
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success(_job_dict(job))
|
||||
|
||||
|
||||
@@ -287,7 +283,6 @@ def publish(
|
||||
raise HTTPException(status_code=status.HTTP_409_CONFLICT, detail=str(exc)) from exc
|
||||
OperationLogService.write(db, admin_id=current_admin.id, module="knowledge", action="publish", target_id=knowledge.id)
|
||||
db.commit()
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success(_knowledge_detail(knowledge))
|
||||
|
||||
|
||||
@@ -311,7 +306,6 @@ def rollback(
|
||||
raise HTTPException(status_code=status.HTTP_409_CONFLICT, detail=str(exc)) from exc
|
||||
OperationLogService.write(db, admin_id=current_admin.id, module="knowledge", action="rollback", target_id=knowledge.id)
|
||||
db.commit()
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success(_knowledge_detail(knowledge))
|
||||
|
||||
|
||||
@@ -337,7 +331,6 @@ def open_status(
|
||||
db.add(knowledge)
|
||||
OperationLogService.write(db, admin_id=current_admin.id, module="knowledge", action="open" if payload.open else "close", target_id=knowledge.id)
|
||||
db.commit()
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success(_knowledge_detail(knowledge))
|
||||
|
||||
|
||||
@@ -358,7 +351,6 @@ def lifecycle(
|
||||
db.add(knowledge)
|
||||
OperationLogService.write(db, admin_id=current_admin.id, module="knowledge", action=payload.status, target_id=knowledge.id)
|
||||
db.commit()
|
||||
KnowledgeCatalogCacheService.invalidate()
|
||||
return api_success(_knowledge_detail(knowledge))
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user