feat(routing): add conditional routing rules for document-to-pipeline assignment
- Add PipelineRoutingRule model to app/models.py - Add Alembic migration 027_add_routing_rules - Add routing engine (app/utils/routing_engine.py) with rule evaluation - Add CRUD API endpoints (app/api/routing_rules.py) - Register router in app/api/__init__.py - Add comprehensive tests (73 tests, all passing) Supported fields: file_type, document_type, category, filename, size, metadata.* Supported operators: equals, not_equals, contains, not_contains, regex, gt, lt, gte, lte First-match-wins evaluation with default pipeline fallback Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
This commit is contained in:
@@ -28,6 +28,7 @@ from app.api.pipelines import router as pipelines_router
|
||||
from app.api.plans import router as plans_router
|
||||
from app.api.process import router as process_router
|
||||
from app.api.queue import router as queue_router
|
||||
from app.api.routing_rules import router as routing_rules_router
|
||||
from app.api.saved_searches import router as saved_searches_router
|
||||
from app.api.scheduled_jobs import router as scheduled_jobs_router
|
||||
from app.api.search import router as search_router
|
||||
@@ -78,6 +79,7 @@ router.include_router(plans_router)
|
||||
router.include_router(onboarding_router)
|
||||
router.include_router(billing_router)
|
||||
router.include_router(pipelines_router)
|
||||
router.include_router(routing_rules_router)
|
||||
router.include_router(imap_accounts_router)
|
||||
router.include_router(integrations_router)
|
||||
router.include_router(notifications_router)
|
||||
|
||||
Reference in New Issue
Block a user