RuleStack

Configs

Stacks

Compare

Diff

RuleStack

Configs

Stacks

Compare

Diff

Read API

RuleStack

Configs

Stacks

Compare

Diff

Read API

Diff/novuhq-novu-cursor-rules-dependency-graph ↔ novuhq-novu-cursor-rules-worker

Comparison

A · Cursor rules · novuhq/novuB · Cursor rules · novuhq/novu
What each file covers, counted
DimensionSharedOnly in AOnly in BOverlap
Sections0120%
Commands0010%
Section tags0010%

What each file covers

Sections

0 shared · 1 only in A · 2 only in B
  • − Dependency Graph
  • + Worker Service
  • + Worker Service Conventions

Commands

0 shared · 0 only in A · 1 only in B
  • + pnpm start:worker

Section tags

0 shared · 0 only in A · 1 only in B
  • + code-style

Line diff

+27 added−28 removed7 unchanged20.0% identical
novuhq/novu · .cursor/rules/dependency-graph.mdc
@@ −1 @@
1---
2description: Novu monorepo dependency graph — use when assessing blast radius before changing shared code
3globs:
4alwaysApply: false
5---
6 
7## Dependency Graph
8 
9```mermaid
10graph TD
11 subgraph apps [Apps]
12 api[api]
13 dashboard[dashboard]
14 worker[worker]
15 ws[ws]
16 end
17 subgraph libs [Libs - internal only]
18 dal[dal]
19 appGeneric[application-generic]
20 end
21 subgraph pkgs [Packages - published to NPM]
22 shared[shared]
23 framework[framework]
24 jsSDK[js]
25 reactSDK[react]
26 end
27 api --> appGeneric --> dal
28 worker --> appGeneric
29 ws --> appGeneric
30 api --> shared
31 worker --> shared
32 dashboard --> reactSDK --> jsSDK --> shared
33 dashboard --> framework
34```
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
35 
novuhq/novu · .cursor/rules/worker.mdc
@@ +1 @@
1---
2description: Rules for working in the Worker service (background job processing)
3globs: apps/worker/**/*
4alwaysApply: false
5---
6 
7## Worker Service
8 
9**Stack:** NestJS · Bull + Redis · ClickHouse (execution traces) · cron-parser
10 
11**Run:** `pnpm start:worker` — only needed when testing notification triggering; skip for dashboard/API-only tasks.
12 
13**Tests/lint:** see testing.mdc
14 
15**Key directories:**
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16```
17apps/worker/src/app/workflow/usecases/ # Workflow step execution usecases
18apps/worker/src/app/workflow/services/ # Queue consumers and job handlers
19```
20 
21---
22 
23### Worker Service Conventions
24 
25**Use-case structure**
26- Each notification channel has a dedicated `send-message` use-case under `apps/worker/src/app/workflow/usecases/`.
27- Follow the CQRS pattern: `execute(command: CommandClass)` returning a typed result.
28- Keep channel-specific logic isolated — do not share send-message logic across channels.
29 
30**Queue / Bull**
31- Job consumers are registered in NestJS modules using Bull's `@Process` decorator.
32- Retry logic and failure handling are configured at the queue level in `libs/application-generic` — do not duplicate this in worker use-cases.
33- Always handle job failures gracefully and log execution details via `CreateExecutionDetails`.
34 
@@ −1 +1 @@
11 ---
2−description: Novu monorepo dependency graph — use when assessing blast radius before changing shared code
3−globs:
2+description: Rules for working in the Worker service (background job processing)
3+globs: apps/worker/**/*
44 alwaysApply: false
55 ---
66  
7−## Dependency Graph
7+## Worker Service
88  
9−```mermaid
10−graph TD
11− subgraph apps [Apps]
12− api[api]
13− dashboard[dashboard]
14− worker[worker]
15− ws[ws]
16− end
17− subgraph libs [Libs - internal only]
18− dal[dal]
19− appGeneric[application-generic]
20− end
21− subgraph pkgs [Packages - published to NPM]
22− shared[shared]
23− framework[framework]
24− jsSDK[js]
25− reactSDK[react]
26− end
27− api --> appGeneric --> dal
28− worker --> appGeneric
29− ws --> appGeneric
30− api --> shared
31− worker --> shared
32− dashboard --> reactSDK --> jsSDK --> shared
33− dashboard --> framework
9+**Stack:** NestJS · Bull + Redis · ClickHouse (execution traces) · cron-parser
10+ 
11+**Run:** `pnpm start:worker` — only needed when testing notification triggering; skip for dashboard/API-only tasks.
12+ 
13+**Tests/lint:** see testing.mdc
14+ 
15+**Key directories:**
3416 ```
17+apps/worker/src/app/workflow/usecases/ # Workflow step execution usecases
18+apps/worker/src/app/workflow/services/ # Queue consumers and job handlers
19+```
20+ 
21+---
22+ 
23+### Worker Service Conventions
24+ 
25+**Use-case structure**
26+- Each notification channel has a dedicated `send-message` use-case under `apps/worker/src/app/workflow/usecases/`.
27+- Follow the CQRS pattern: `execute(command: CommandClass)` returning a typed result.
28+- Keep channel-specific logic isolated — do not share send-message logic across channels.
29+ 
30+**Queue / Bull**
31+- Job consumers are registered in NestJS modules using Bull's `@Process` decorator.
32+- Retry logic and failure handling are configured at the queue level in `libs/application-generic` — do not duplicate this in worker use-cases.
33+- Always handle job failures gracefully and log execution details via `CreateExecutionDetails`.
3534  
RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack