@open-mercato/events 0.6.3-develop.3809.1.bde5459e65 → 0.6.3-develop.3811.1.be22750402
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +24 -6
- package/package.json +3 -3
package/AGENTS.md
CHANGED
|
@@ -2,14 +2,32 @@
|
|
|
2
2
|
|
|
3
3
|
Use `@open-mercato/events` for all event-driven communication between modules. MUST NOT use direct module-to-module function calls for side effects.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Always
|
|
6
6
|
|
|
7
7
|
1. **MUST declare events in the emitting module's `events.ts`** — use `createModuleEvents()` with `as const` for type safety
|
|
8
8
|
2. **MUST run `yarn generate`** after creating or modifying `events.ts` files
|
|
9
|
-
3. **MUST
|
|
10
|
-
4. **MUST
|
|
11
|
-
5. **MUST
|
|
12
|
-
|
|
9
|
+
3. **MUST export `metadata`** from every subscriber with `{ event, persistent?, id? }`
|
|
10
|
+
4. **MUST keep subscribers focused** — one side effect per subscriber file
|
|
11
|
+
5. **MUST make persistent subscribers idempotent** — they may be retried on failure
|
|
12
|
+
|
|
13
|
+
## Ask First
|
|
14
|
+
|
|
15
|
+
- Ask before renaming event IDs, changing persistent delivery semantics, or altering SSE audience filtering.
|
|
16
|
+
- Ask before increasing SSE payload size limits or heartbeat/deduplication behavior.
|
|
17
|
+
|
|
18
|
+
## Never
|
|
19
|
+
|
|
20
|
+
- Never use direct module-to-module function calls for side effects.
|
|
21
|
+
- Never emit undeclared events — undeclared events trigger TypeScript errors and runtime warnings.
|
|
22
|
+
- Never rely on payload-provided tenant or organization scope when trusted scope is available.
|
|
23
|
+
|
|
24
|
+
## Validation Commands
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
yarn generate
|
|
28
|
+
yarn workspace @open-mercato/events test
|
|
29
|
+
yarn workspace @open-mercato/events build
|
|
30
|
+
```
|
|
13
31
|
|
|
14
32
|
## Event Declaration
|
|
15
33
|
|
|
@@ -136,7 +154,7 @@ useAppEvent('mymod.entity.created', (event) => {
|
|
|
136
154
|
}, [])
|
|
137
155
|
```
|
|
138
156
|
|
|
139
|
-
###
|
|
157
|
+
### Browser Delivery Rules
|
|
140
158
|
|
|
141
159
|
- Events are server-filtered by audience before SSE send:
|
|
142
160
|
- Tenant: `tenantId` must match
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@open-mercato/events",
|
|
3
|
-
"version": "0.6.3-develop.
|
|
3
|
+
"version": "0.6.3-develop.3811.1.be22750402",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
}
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@open-mercato/queue": "0.6.3-develop.
|
|
36
|
-
"@open-mercato/shared": "0.6.3-develop.
|
|
35
|
+
"@open-mercato/queue": "0.6.3-develop.3811.1.be22750402",
|
|
36
|
+
"@open-mercato/shared": "0.6.3-develop.3811.1.be22750402",
|
|
37
37
|
"pg": "8.21.0"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|