rcgit

/ karakeep
follow (on) | order: default date topo
Age Commit message Author Files +/-
fix: treat bookmark not found as a no-op in rule engine instead of a failure…
When a bookmark is deleted before the rule engine worker processes its
event, the worker would throw an error, triggering failure metrics,
error logging, and retries. This changes both the worker and
RuleEngine.forBookmark to gracefully skip processing with an info log
instead.
Co-authored-by: Claude <noreply@anthropic.com>
Mohamed Bassem 3 -15/+24
feat(rules): add "Title Contains" condition to Rule Engine (#1670) (#2354)
* feat(rules): add "Title Contains" condition to Rule Engine (#1670)
* feat(rules): hide title conditions for bookmark created trigger
* fix typecheck
Andrii Mokhovyk 6 -1/+133
feat: add "URL Does Not Contain" condition to rule engine (#2280)
* feat: add "URL Does Not Contain" condition to rule engine
Add a new condition type `urlDoesNotContain` that allows users to create
rules based on URLs that do NOT contain specific strings. This enables
more flexible rule configurations, such as:
- Automatically adding bookmarks to a "Read Later" list if the URL
  does not contain "reddit.com" or "youtube.com"
Changes:
- Added `urlDoesNotContain` condition type to Zod schema
- Implemented evaluation logic in RuleEngine
- Added UI support in ConditionBuilder component
- Added translation key for new condition type
- Added test coverage for the new condition
Fixes #2259
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Mohamed Bassem <MohamedBassem@users.noreply.github.com>
* fix type link
---------
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Mohamed Bassem <MohamedBassem@users.noreply.github.com>
Mohamed Bassem 5 -0/+51
fix: Propagate group ids in queue calls (#2177)
* fix: Propagate group ids
* fix tests
Mohamed Bassem 11 -37/+103
refactor: Move callsites to liteque to be behind a plugin Mohamed Bassem 39 -405/+707
feat(search): add title search qualifier (#1940)
* fix(search): include link titles in title matcher
* docs(search): add title qualifier
* docs: remove title qualifier from v0.27 guide
Mohamed Bassem 9 -2/+142
Revert "fix: Fix smart lists not working in list search qualifiers". #1321
This reverts commit 6178736d64180f9bc8954099c90d54aa2f9f35f5.
Mohamed Bassem 3 -133/+69
fix: Fix smart lists not working in list search qualifiers. Fixes #845 Mohamed Bassem 3 -69/+133
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
Mohamed Bassem 42 -40/+5787
chore: Rename hoarder packages to karakeep MohamedBassem 230 -644/+654
feat: Add a search matcher for rss feed bookmarks MohamedBassem 7 -1/+144
fix: Fix url matcher not matching sourceUrl. Fixes #874 Mohamed Bassem 2 -5/+25
feat: Add ability to filter by bookmark type Mohamed Bassem 9 -14/+208
feat: Add support for smart lists (#802)
* feat: Add support for smart lists
* i18n
* Fix update list endpoint
* Add a test for smart lists
* Add header to the query explainer
* Hide remove from lists in the smart context list
* Add proper validation to list form
---------
Co-authored-by: Deepak Kapoor <41769111+orthdron@users.noreply.github.com>
Mohamed Bassem 26 -100/+2045
feat: Add support for searching for tagged and listed items Mohamed Bassem 6 -0/+128
feat: Add support for negative search terms Mohamed Bassem 6 -69/+282
test: Add tests for the search id queries Mohamed Bassem 2 -0/+280