@open-rlb/nestjs-amqp 2.0.5 → 2.0.6

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.
@@ -1 +1,2 @@
1
1
  export declare function buildPathDefinitionsFromMeta(meta: any): any[];
2
+ export declare function pairAuthToRoutes(allHttp: any[], allAuth: any[], where?: string): string[];
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildPathDefinitionsFromMeta = buildPathDefinitionsFromMeta;
4
+ exports.pairAuthToRoutes = pairAuthToRoutes;
4
5
  function buildPathDefinitionsFromMeta(meta) {
5
6
  const out = [];
6
7
  for (const topic of Object.keys(meta || {})) {
7
8
  for (const action of Object.keys(meta[topic] || {})) {
8
9
  const entry = meta[topic][action] || {};
9
- const auth = Array.isArray(entry.auth) ? entry.auth[0] : undefined;
10
10
  for (const h of entry.http || []) {
11
11
  out.push({
12
12
  name: h.name ?? `${topic}:${action}:${h.method}:${h.path}`,
@@ -16,9 +16,9 @@ function buildPathDefinitionsFromMeta(meta) {
16
16
  topic,
17
17
  action,
18
18
  mode: h.mode ?? (entry.type === 'event' ? 'event' : 'rpc'),
19
- auth: h.auth ?? auth?.authName,
20
- allowAnonymous: h.allowAnonymous ?? auth?.allowAnonymous,
21
- roles: h.roles ?? auth?.roles ?? [],
19
+ auth: h.auth,
20
+ allowAnonymous: h.allowAnonymous,
21
+ roles: h.roles ?? [],
22
22
  successStatusCode: h.successStatusCode,
23
23
  timeout: h.timeout,
24
24
  parseRaw: h.parseRaw,
@@ -32,4 +32,34 @@ function buildPathDefinitionsFromMeta(meta) {
32
32
  }
33
33
  return out;
34
34
  }
35
+ function pairAuthToRoutes(allHttp, allAuth, where = '') {
36
+ const warnings = [];
37
+ if (!allHttp?.length || !allAuth?.length)
38
+ return warnings;
39
+ const multiHttp = allHttp.length > 1;
40
+ for (const h of allHttp) {
41
+ const paired = multiHttp
42
+ ? (h.name ? allAuth.find((a) => a.httpName === h.name) : undefined)
43
+ : (allAuth.find((a) => !a.httpName) ?? allAuth[0]);
44
+ if (paired) {
45
+ h.auth = paired.authName;
46
+ h.allowAnonymous = paired.allowAnonymous;
47
+ h.roles = paired.roles;
48
+ }
49
+ }
50
+ if (multiHttp) {
51
+ const at = where ? ` on ${where}` : '';
52
+ const names = new Set(allHttp.map((h) => h.name).filter(Boolean));
53
+ const named = [...names].join(', ') || 'none';
54
+ for (const a of allAuth) {
55
+ if (!a.httpName) {
56
+ warnings.push(`@BrokerAuth '${a.authName}'${at} has no 'httpName' but the method declares ${allHttp.length} @BrokerHTTP routes; auth NOT applied. Add httpName matching a @BrokerHTTP { name } (${named}).`);
57
+ }
58
+ else if (!names.has(a.httpName)) {
59
+ warnings.push(`@BrokerAuth '${a.authName}'${at} references httpName '${a.httpName}' matching no @BrokerHTTP { name } (${named}); auth NOT applied.`);
60
+ }
61
+ }
62
+ }
63
+ return warnings;
64
+ }
35
65
  //# sourceMappingURL=decorator-paths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorator-paths.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/broker/config/decorator-paths.ts"],"names":[],"mappings":";;AAMA,oEA8BC;AA9BD,SAAgB,4BAA4B,CAAC,IAAS;IACpD,MAAM,GAAG,GAAU,EAAE,CAAC;IACtB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;QAC5C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACnE,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;gBACjC,GAAG,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,GAAG,KAAK,IAAI,MAAM,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE;oBAC1D,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,MAAM;oBAClC,KAAK;oBACL,MAAM;oBACN,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;oBAC1D,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE,QAAQ;oBAC9B,cAAc,EAAE,CAAC,CAAC,cAAc,IAAI,IAAI,EAAE,cAAc;oBACxD,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE;oBACnC,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;oBACtC,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE;oBACxB,cAAc,EAAE,CAAC,CAAC,cAAc,IAAI,EAAE;iBACvC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"decorator-paths.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/broker/config/decorator-paths.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export type BrokerHttpDataSource = 'query' | 'body' | 'params';
6
6
  export declare function BrokerAction(topic: string, action: string, type?: BrokerActionType): MethodDecorator;
7
7
  export declare function BrokerHTTP(method: BrokerHttpMethod, path: string, dataSource: BrokerHttpDataSource, options?: {
8
8
  action?: string;
9
+ name?: string;
9
10
  successStatusCode?: number;
10
11
  timeout?: number;
11
12
  parseRaw?: boolean;
@@ -18,5 +19,5 @@ export declare function BrokerHTTP(method: BrokerHttpMethod, path: string, dataS
18
19
  [k: string]: string | number | boolean;
19
20
  };
20
21
  }): MethodDecorator;
21
- export declare function BrokerAuth(authName: string, allowAnonymous?: boolean, roles?: string[], action?: string): MethodDecorator;
22
+ export declare function BrokerAuth(authName: string, allowAnonymous?: boolean, roles?: string[], httpName?: string): MethodDecorator;
22
23
  export declare function BrokerParam(source: BrokerParamSource, name?: string, pipe?: PipeTransform): ParameterDecorator;
@@ -35,7 +35,7 @@ function BrokerHTTP(method, path, dataSource, options) {
35
35
  Reflect.defineMetadata(const_1.RLB_BROKER_HTTP_METADATA_KEY, existingMetadata, target.constructor);
36
36
  };
37
37
  }
38
- function BrokerAuth(authName, allowAnonymous, roles, action) {
38
+ function BrokerAuth(authName, allowAnonymous, roles, httpName) {
39
39
  return (target, propertyKey, descriptor) => {
40
40
  const existingMetadata = Reflect.getMetadata(const_1.RLB_BROKER_AUTH_METADATA_KEY, target.constructor) || [];
41
41
  const params = getParamNames(descriptor.value);
@@ -44,7 +44,7 @@ function BrokerAuth(authName, allowAnonymous, roles, action) {
44
44
  authName,
45
45
  allowAnonymous,
46
46
  roles,
47
- action,
47
+ httpName,
48
48
  });
49
49
  Reflect.defineMetadata(const_1.RLB_BROKER_AUTH_METADATA_KEY, existingMetadata, target.constructor);
50
50
  };
@@ -1 +1 @@
1
- {"version":3,"file":"broker-action.decorator.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/broker/decorators/broker-action.decorator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"broker-action.decorator.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/broker/decorators/broker-action.decorator.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ const core_1 = require("@nestjs/core");
19
19
  require("reflect-metadata");
20
20
  const rxjs_1 = require("rxjs");
21
21
  const amqp_lib_1 = require("../../../amqp-lib");
22
+ const decorator_paths_1 = require("../config/decorator-paths");
22
23
  const const_1 = require("../const");
23
24
  const utils_service_1 = require("./utils.service");
24
25
  let MetadataScannerService = MetadataScannerService_1 = class MetadataScannerService {
@@ -62,13 +63,21 @@ let MetadataScannerService = MetadataScannerService_1 = class MetadataScannerSer
62
63
  }
63
64
  const paramMetadata = Reflect.getMetadata(const_1.RLB_BROKER_PARAM_METADATA_KEY, instance, method.methodName) || [];
64
65
  const actionsForMethod = metadata.filter((m) => m.methodName === method.methodName);
65
- const authMetadata = this.pairToAction(Reflect.getMetadata(const_1.RLB_BROKER_AUTH_METADATA_KEY, instance.constructor) || [], method, actionsForMethod, instance.constructor.name, 'auth');
66
+ const allHttpForMethod = (Reflect.getMetadata(const_1.RLB_BROKER_HTTP_METADATA_KEY, instance.constructor) || [])
67
+ .filter((e) => e.methodName === method.methodName);
68
+ const allAuthForMethod = (Reflect.getMetadata(const_1.RLB_BROKER_AUTH_METADATA_KEY, instance.constructor) || [])
69
+ .filter((e) => e.methodName === method.methodName);
66
70
  const httpMetadata = this.pairToAction(Reflect.getMetadata(const_1.RLB_BROKER_HTTP_METADATA_KEY, instance.constructor) || [], method, actionsForMethod, instance.constructor.name, 'http');
71
+ const where = `'${instance.constructor.name}.${String(method.methodName)}'`;
72
+ const logOnce = actionsForMethod[0]?.action === method.action;
73
+ const authWarnings = (0, decorator_paths_1.pairAuthToRoutes)(allHttpForMethod, allAuthForMethod, where);
74
+ if (logOnce)
75
+ authWarnings.forEach((w) => this.logger.warn(w));
67
76
  this.metadata[method.topic][method.action] = {
68
77
  service: instance,
69
78
  method: instance[method.methodName],
70
79
  type: method.type,
71
- auth: [...authMetadata],
80
+ auth: [...allAuthForMethod],
72
81
  http: [...httpMetadata],
73
82
  params: this.removeDefaultsFromParams(method.params || []).reduce((acc, param, index) => {
74
83
  const meta = Object.assign({}, paramMetadata.find((p) => p.index === index) || { source: 'body' });
@@ -1 +1 @@
1
- {"version":3,"file":"metadata-scanner.service.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/broker/services/metadata-scanner.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadata-scanner.service.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/broker/services/metadata-scanner.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-rlb/nestjs-amqp",
3
- "version": "2.0.5",
3
+ "version": "2.0.6",
4
4
  "description": "",
5
5
  "author": "Giuseppe Riolo <riolo.giuseppe@gmail.com>",
6
6
  "private": false,
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: rlb-amqp
3
- description: Reference, schema and gotchas for the @open-rlb/nestjs-amqp library (NestJS + RabbitMQ/AMQP + HTTP/WebSocket gateway). Use when answering questions about its YAML config (broker incl. routeDiscovery, topics, auth-providers, gateway paths/ws/events), AMQP rpc/handle/broadcast/event semantics, the @BrokerAction/@BrokerParam/@BrokerHTTP decorators, the BrokerService API, route auto-discovery, gateway-admin (routes/auth-providers/metrics/health), the name-keyed ACL, or when debugging wiring/timeout/auth/websocket errors. Shared knowledge base for the rlb-amqp-add-action, rlb-amqp-add-route, rlb-amqp-add-ws-event, rlb-amqp-scaffold, rlb-amqp-acl and rlb-amqp-gateway-admin skills.
3
+ description: Reference, schema and gotchas for the @open-rlb/nestjs-amqp library (NestJS + RabbitMQ/AMQP + HTTP/WebSocket gateway). Use when answering questions about its YAML config (broker incl. routeDiscovery, topics, auth-providers, gateway paths/ws/events), AMQP rpc/handle/broadcast/event semantics, the @BrokerAction/@BrokerParam/@BrokerHTTP/@BrokerAuth decorators, the BrokerService API, route auto-discovery, gateway-admin (routes/auth-providers/metrics/health), the name-keyed ACL, or when debugging wiring/timeout/auth/websocket errors. Shared knowledge base for the rlb-amqp-add-action, rlb-amqp-add-route, rlb-amqp-add-ws-event, rlb-amqp-scaffold, rlb-amqp-acl and rlb-amqp-gateway-admin skills.
4
4
  ---
5
5
 
6
6
  # @open-rlb/nestjs-amqp — reference
@@ -82,3 +82,6 @@ configs). The retired `apps/gateway-2` is gone — do not cite it.
82
82
  10. ACL actions/roles and gateway-admin auth-providers are **name-keyed**: `PUT` upserts,
83
83
  `GET` lists, `GET .../get?name=`, `DELETE` by name. There is no POST and no id-based
84
84
  ACL CRUD. Boolean checks (`/acl/check*`) return `200` with `true`/`false`.
85
+ 11. HTTP-route auth is **per ROUTE** and DECOUPLED from `@BrokerHTTP`: pair `@BrokerHTTP { name }`
86
+ ↔ `@BrokerAuth` `httpName`. A single `@BrokerHTTP` auto-pairs its `@BrokerAuth` (no name needed);
87
+ a route with no `@BrokerAuth` is public.
@@ -18,8 +18,17 @@ Ported from `docs/gotchas.md` (re-verified against post-2.0.5 code).
18
18
  'X-GTW-AUTH-USERID')`, not `'userId'`. The exact name = provider `headerPrefix` + `uidClaim`.
19
19
  5. **`handle`/`broadcast` handlers must return `void`.** A return value logs
20
20
  `Subscribe handlers should only return void`. Only `rpc` handlers return data.
21
- 6. **One method, multiple `@BrokerAction`s:** any `@BrokerHTTP` / `@BrokerAuth` on that method
22
- MUST name its `action` to pair deterministically — decorator order is never used.
21
+ 6. **Two independent pairings on a method `action` (http↔action) and `httpName` (auth↔route).**
22
+ Decorator order is never used; pair by name.
23
+ - **`@BrokerHTTP` ↔ `@BrokerAction`** via the `action` option: a method with multiple
24
+ `@BrokerAction`s requires each `@BrokerHTTP` to name its `action`; with one action it defaults.
25
+ - **`@BrokerAuth` ↔ `@BrokerHTTP` route** via `httpName` (= the route's `name`): auth is
26
+ **per ROUTE**, kept DECOUPLED from `@BrokerHTTP` (which carries NO auth). One `@BrokerHTTP`
27
+ auto-pairs its `@BrokerAuth` (no `name`/`httpName` needed); multiple `@BrokerHTTP` require each
28
+ to set a `name` and each `@BrokerAuth` to set the matching `httpName`. An `@BrokerAuth` whose
29
+ `httpName` matches no route is NOT applied and logs a WARNING at microservice startup.
30
+ - A route with no paired `@BrokerAuth` is **PUBLIC**. Two HTTP paths for the SAME action can now
31
+ carry DIFFERENT auth — pair each to its route by `name`.
23
32
 
24
33
  ## Topic ↔ queue ↔ exchange wiring
25
34
  7. **The topic `name` must match everywhere**: `@BrokerAction`, `topics[].name`,
@@ -55,9 +55,9 @@ an HTTP status (e.g. `NotFoundError`) yields the right gateway status.
55
55
  - `topic` must match a `topics:` entry (an `rpc` topic). `action` is the dispatch key.
56
56
  - **`(topic, action)` must be unique** across the whole app — all actions of a topic share
57
57
  ONE consumer/queue, dispatched by `action` (gotcha 3).
58
- - A single method may carry **multiple** `@BrokerAction`s. When it does, any `@BrokerHTTP` /
59
- `@BrokerAuth` on that method **must name its `action`** to pair deterministically (decorator
60
- order is never used).
58
+ - A single method may carry **multiple** `@BrokerAction`s. When it does, any `@BrokerHTTP` on
59
+ that method **must name its `action`** to pair deterministically (decorator order is never
60
+ used). Auth pairs separately — see `@BrokerAuth` below.
61
61
 
62
62
  ### `@BrokerParam(source, name?, pipe?)` — one source per argument
63
63
 
@@ -82,15 +82,52 @@ auto-discovery), which persists + registers them. This requires `broker.routeDis
82
82
  (see `rlb-amqp` reference / `docs/gateway-admin.md`); the gateway must also declare this
83
83
  service's topic so it can forward calls.
84
84
 
85
+ `dataSource` is `'query' | 'body' | 'params'`. The options object carries
86
+ `{ name?, action?, successStatusCode?, timeout?, parseRaw?, binary?, redirect?, headers?,
87
+ forwardHeaders? }` — it does **not** carry auth.
88
+
89
+ Two independent pairings sit on the method, each only needed in the multi case:
90
+
91
+ - **http ↔ action** (`@BrokerHTTP`'s `action`): bind a route to one of several `@BrokerAction`s.
92
+ Required only when the method declares **more than one** `@BrokerAction`; with a single action
93
+ it defaults to that action.
94
+ - **auth ↔ route** (`@BrokerAuth`'s `httpName` ⇄ `@BrokerHTTP`'s `name`): bind an auth rule to one
95
+ of several routes. Required only when the method declares **more than one** `@BrokerHTTP`; with a
96
+ single route the auth auto-pairs (no `name`/`httpName` needed). A route with no paired
97
+ `@BrokerAuth` is **public**.
98
+
99
+ Auth lives in a separate, decoupled decorator —
100
+ `@BrokerAuth(authName, allowAnonymous?, roles?, httpName?)` — never inside `@BrokerHTTP`'s options.
101
+ This lets two HTTP paths for the SAME action carry DIFFERENT auth.
102
+
103
+ Simple case — one route, auth auto-pairs (no names needed):
104
+
85
105
  ```ts
86
106
  @BrokerAction('calculator', 'sum')
87
- @BrokerHTTP('POST', '/calculator/sum', 'body') // dataSource: body | query | params | ...
107
+ @BrokerHTTP('POST', '/calculator/sum', 'body') // dataSource: 'query' | 'body' | 'params'
108
+ @BrokerAuth('cust-jwks', true) // auto-pairs to the single route; public if omitted
88
109
  async sum(@BrokerParam('body', 'values') values: number[]) {
89
110
  return values.reduce((a, v) => a + v, 0);
90
111
  }
91
112
  ```
92
113
 
93
- (Pattern taken verbatim from `sample/config-sample/calculator.ms/src/app.service.ts`.)
114
+ Multi case two routes for ONE action, each name-paired to its own auth:
115
+
116
+ ```ts
117
+ @BrokerAction('booking', 'get-booking')
118
+ @BrokerHTTP('GET', '/bookings/:id', 'params', { name: 'get-booking' })
119
+ @BrokerAuth('cust-jwks', true, undefined, 'get-booking') // httpName ⇄ route name
120
+ @BrokerHTTP('GET', '/admin/bookings/:id', 'params', { name: 'admin-get-booking' })
121
+ @BrokerAuth('admin-jwks', undefined, ['admin'], 'admin-get-booking')
122
+ async getBooking(@BrokerParam('params', 'id') id: string) {
123
+ return this.bookings.find(id);
124
+ }
125
+ ```
126
+
127
+ An `@BrokerAuth` whose `httpName` matches no route is NOT applied and logs a WARNING at
128
+ microservice startup.
129
+
130
+ (Single-route pattern taken verbatim from `sample/config-sample/calculator.ms/src/app.service.ts`.)
94
131
 
95
132
  ## Step 2 — YAML sync (the critical part)
96
133
 
@@ -131,7 +168,8 @@ single consumer dispatches by `action`.
131
168
  - topic-type exchange ⇒ queue has `routingKey` (gotcha 7)
132
169
  - `(topic, action)` unique (gotcha 3)
133
170
  - header params read the prefixed/uppercased name (gotcha 4)
134
- - if multiple `@BrokerAction` on one method ⇒ each `@BrokerHTTP`/`@BrokerAuth` names its `action`
171
+ - if multiple `@BrokerAction` on one method ⇒ each `@BrokerHTTP` names its `action`
172
+ - if multiple `@BrokerHTTP` on one method ⇒ each `@BrokerAuth` sets `httpName` = the route's `name`
135
173
 
136
174
  ## Step 4 — build
137
175
 
@@ -195,6 +195,17 @@ broker:
195
195
  Routes are declared `@BrokerHTTP` over a `@BrokerAction` method. The gateway must
196
196
  still declare the microservice's broker topic so it can route forwarded calls.
197
197
 
198
+ Each published route's auth comes from `@BrokerAuth` (decoupled from `@BrokerHTTP`),
199
+ paired per route by name: with one `@BrokerHTTP` it auto-pairs; with multiple, each
200
+ `@BrokerHTTP` sets a `name` and each `@BrokerAuth` matches it via `httpName`. So two
201
+ routes over the same action can publish with different auth — a route with no paired
202
+ `@BrokerAuth` is published as public.
203
+
204
+ ```ts
205
+ @BrokerHTTP('GET', '/admin/bookings/:id', 'params', { name: 'admin-get-booking' })
206
+ @BrokerAuth('admin-jwks', undefined, ['admin'], 'admin-get-booking') // pairs by httpName
207
+ ```
208
+
198
209
  ### Consumer (gateway ← microservice) — `GatewayAdminModule` `routeDiscovery`
199
210
 
200
211
  Wired by `GatewayAdminModule` (NOT YAML). Asserts the fanout exchange, subscribes
@@ -277,6 +277,11 @@ export class AppService {
277
277
  }
278
278
  ```
279
279
 
280
+ Add auth with `@BrokerAuth(authName, allowAnonymous?, roles?, httpName?)` — decoupled from
281
+ `@BrokerHTTP`. With one `@BrokerHTTP` it auto-pairs (no `httpName` needed); with multiple,
282
+ each `@BrokerHTTP` sets a `name` and each `@BrokerAuth` targets it via `httpName`. A route
283
+ with no `@BrokerAuth` is public.
284
+
280
285
  ## Verify
281
286
  - topic/queue/exchange names line up across `broker`/`topics`/paths (gotchas 5–7);
282
287
  `connection_name` set if using broadcast/WebSocket (8).