diff options
| author | Mohamed Bassem <me@mbassem.com> | 2025-04-27 00:02:20 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-27 00:02:20 +0100 |
| commit | 136f126296af65f50da598d084d1485c0e40437a (patch) | |
| tree | 2725c7932ebbcb9b48b5af98eb9b72329a400260 /apps/workers/index.ts | |
| parent | ca47be7fe7be128f459c37614a04902a873fe289 (diff) | |
| download | karakeep-136f126296af65f50da598d084d1485c0e40437a.tar.zst | |
feat: Implement generic rule engine (#1318)
* Add schema for the new rule engine
* Add rule engine backend logic
* Implement the worker logic and event firing
* Implement the UI changesfor the rule engine
* Ensure that when a referenced list or tag are deleted, the corresponding event/action is
* Dont show smart lists in rule engine events
* Add privacy validations for attached tag and list ids
* Move the rules logic into a models
Diffstat (limited to 'apps/workers/index.ts')
| -rw-r--r-- | apps/workers/index.ts | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/apps/workers/index.ts b/apps/workers/index.ts index 207c7f64..208666c7 100644 --- a/apps/workers/index.ts +++ b/apps/workers/index.ts @@ -2,6 +2,7 @@ import "dotenv/config"; import { AssetPreprocessingWorker } from "assetPreprocessingWorker"; import { FeedRefreshingWorker, FeedWorker } from "feedWorker"; +import { RuleEngineWorker } from "ruleEngineWorker"; import { TidyAssetsWorker } from "tidyAssetsWorker"; import serverConfig from "@karakeep/shared/config"; @@ -28,6 +29,7 @@ async function main() { feed, assetPreprocessing, webhook, + ruleEngine, ] = [ await CrawlerWorker.build(), OpenAiWorker.build(), @@ -37,6 +39,7 @@ async function main() { FeedWorker.build(), AssetPreprocessingWorker.build(), WebhookWorker.build(), + RuleEngineWorker.build(), ]; FeedRefreshingWorker.start(); @@ -50,11 +53,12 @@ async function main() { feed.run(), assetPreprocessing.run(), webhook.run(), + ruleEngine.run(), ]), shutdownPromise, ]); logger.info( - "Shutting down crawler, openai, tidyAssets, video, feed, assetPreprocessing, webhook and search workers ...", + "Shutting down crawler, openai, tidyAssets, video, feed, assetPreprocessing, webhook, ruleEngine and search workers ...", ); FeedRefreshingWorker.stop(); @@ -66,6 +70,7 @@ async function main() { feed.stop(); assetPreprocessing.stop(); webhook.stop(); + ruleEngine.stop(); } main(); |
