raffel 1.0.18 → 1.0.20

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.
Files changed (106) hide show
  1. package/README.md +122 -8
  2. package/dist/adapters/grpc.d.ts +8 -5
  3. package/dist/adapters/grpc.d.ts.map +1 -1
  4. package/dist/adapters/grpc.js +8 -10
  5. package/dist/adapters/grpc.js.map +1 -1
  6. package/dist/adapters/http.d.ts +7 -0
  7. package/dist/adapters/http.d.ts.map +1 -1
  8. package/dist/adapters/http.js +16 -3
  9. package/dist/adapters/http.js.map +1 -1
  10. package/dist/adapters/smtp.d.ts +15 -9
  11. package/dist/adapters/smtp.d.ts.map +1 -1
  12. package/dist/adapters/smtp.js +26 -14
  13. package/dist/adapters/smtp.js.map +1 -1
  14. package/dist/index.d.ts +5 -2
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +5 -1
  17. package/dist/index.js.map +1 -1
  18. package/dist/mcp/cli.js +45 -15
  19. package/dist/mcp/cli.js.map +1 -1
  20. package/dist/mcp/docs/index.d.ts.map +1 -1
  21. package/dist/mcp/docs/index.js +37 -1
  22. package/dist/mcp/docs/index.js.map +1 -1
  23. package/dist/mcp/docs/patterns.d.ts +1 -2
  24. package/dist/mcp/docs/patterns.d.ts.map +1 -1
  25. package/dist/mcp/docs/patterns.js +1 -2
  26. package/dist/mcp/docs/patterns.js.map +1 -1
  27. package/dist/mcp/index.d.ts +1 -1
  28. package/dist/mcp/index.d.ts.map +1 -1
  29. package/dist/mcp/index.js +1 -1
  30. package/dist/mcp/index.js.map +1 -1
  31. package/dist/mcp/resources/index.d.ts.map +1 -1
  32. package/dist/mcp/resources/index.js +544 -0
  33. package/dist/mcp/resources/index.js.map +1 -1
  34. package/dist/mcp/server.d.ts.map +1 -1
  35. package/dist/mcp/server.js +11 -3
  36. package/dist/mcp/server.js.map +1 -1
  37. package/dist/mcp/tools/definitions.d.ts +9 -6
  38. package/dist/mcp/tools/definitions.d.ts.map +1 -1
  39. package/dist/mcp/tools/definitions.js +54 -7
  40. package/dist/mcp/tools/definitions.js.map +1 -1
  41. package/dist/mcp/tools/handlers.d.ts.map +1 -1
  42. package/dist/mcp/tools/handlers.js +290 -36
  43. package/dist/mcp/tools/handlers.js.map +1 -1
  44. package/dist/mcp/tools/index.d.ts +1 -1
  45. package/dist/mcp/tools/index.d.ts.map +1 -1
  46. package/dist/mcp/tools/index.js +1 -1
  47. package/dist/mcp/tools/index.js.map +1 -1
  48. package/dist/mcp/types.d.ts +1 -1
  49. package/dist/mcp/types.d.ts.map +1 -1
  50. package/dist/proxy/connect-tunnel.d.ts +78 -0
  51. package/dist/proxy/connect-tunnel.d.ts.map +1 -1
  52. package/dist/proxy/connect-tunnel.js +278 -10
  53. package/dist/proxy/connect-tunnel.js.map +1 -1
  54. package/dist/proxy/explicit.d.ts +78 -0
  55. package/dist/proxy/explicit.d.ts.map +1 -0
  56. package/dist/proxy/explicit.js +571 -0
  57. package/dist/proxy/explicit.js.map +1 -0
  58. package/dist/proxy/http-forward.d.ts.map +1 -1
  59. package/dist/proxy/http-forward.js +207 -115
  60. package/dist/proxy/http-forward.js.map +1 -1
  61. package/dist/proxy/index.d.ts +12 -3
  62. package/dist/proxy/index.d.ts.map +1 -1
  63. package/dist/proxy/index.js +4 -0
  64. package/dist/proxy/index.js.map +1 -1
  65. package/dist/proxy/reverse.d.ts +133 -0
  66. package/dist/proxy/reverse.d.ts.map +1 -0
  67. package/dist/proxy/reverse.js +663 -0
  68. package/dist/proxy/reverse.js.map +1 -0
  69. package/dist/proxy/socks5.d.ts +13 -1
  70. package/dist/proxy/socks5.d.ts.map +1 -1
  71. package/dist/proxy/socks5.js +591 -103
  72. package/dist/proxy/socks5.js.map +1 -1
  73. package/dist/proxy/suite.d.ts +37 -0
  74. package/dist/proxy/suite.d.ts.map +1 -0
  75. package/dist/proxy/suite.js +84 -0
  76. package/dist/proxy/suite.js.map +1 -0
  77. package/dist/proxy/telemetry-options.d.ts +37 -0
  78. package/dist/proxy/telemetry-options.d.ts.map +1 -0
  79. package/dist/proxy/telemetry-options.js +53 -0
  80. package/dist/proxy/telemetry-options.js.map +1 -0
  81. package/dist/proxy/telemetry.d.ts +100 -0
  82. package/dist/proxy/telemetry.d.ts.map +1 -0
  83. package/dist/proxy/telemetry.js +460 -0
  84. package/dist/proxy/telemetry.js.map +1 -0
  85. package/dist/proxy/transparent.d.ts +30 -8
  86. package/dist/proxy/transparent.d.ts.map +1 -1
  87. package/dist/proxy/transparent.js +90 -29
  88. package/dist/proxy/transparent.js.map +1 -1
  89. package/dist/proxy/utils/pipe.d.ts +4 -0
  90. package/dist/proxy/utils/pipe.d.ts.map +1 -1
  91. package/dist/proxy/utils/pipe.js +2 -5
  92. package/dist/proxy/utils/pipe.js.map +1 -1
  93. package/dist/server/builder/lifecycle.d.ts.map +1 -1
  94. package/dist/server/builder/lifecycle.js +1 -0
  95. package/dist/server/builder/lifecycle.js.map +1 -1
  96. package/dist/server/types.d.ts +6 -0
  97. package/dist/server/types.d.ts.map +1 -1
  98. package/dist/utils/index.d.ts +2 -0
  99. package/dist/utils/index.d.ts.map +1 -1
  100. package/dist/utils/index.js +2 -0
  101. package/dist/utils/index.js.map +1 -1
  102. package/dist/utils/tls.d.ts +41 -0
  103. package/dist/utils/tls.d.ts.map +1 -0
  104. package/dist/utils/tls.js +54 -0
  105. package/dist/utils/tls.js.map +1 -0
  106. package/package.json +2 -1
package/README.md CHANGED
@@ -15,6 +15,53 @@
15
15
 
16
16
  ---
17
17
 
18
+ ## What Raffel Gives You (in One Runtime)
19
+
20
+ Raffel is one runtime that starts as an API framework and scales into an edge + observability layer.
21
+
22
+ ## MCP as Universal Discovery Layer
23
+
24
+ Before implementation, use MCP to choose the right path:
25
+
26
+ - `raffel_feature_catalog`: map feature surface by protocol/proxy/observability/security.
27
+ - `raffel_proxy_capabilities`: compare reverse, explicit, SOCKS5, and transparent behavior in one view.
28
+ - `raffel_get_guide`: jump directly to the exact guide topic for implementation.
29
+ - `raffel_search`: find parameter and configuration details instantly.
30
+
31
+ That makes onboarding, architecture decisions, and production hardening discoverable from one place.
32
+
33
+ ### Snapshot of capabilities
34
+
35
+ | Layer | Capabilities |
36
+ |---|---|
37
+ | **API & protocols** | HTTP/Fetch, WebSocket, gRPC, JSON-RPC, GraphQL, TCP, UDP, and single-port protocol sniffing |
38
+ | **Proxy and network modes** | Reverse proxy (HTTP/HTTPS), explicit HTTP forward + CONNECT (with MITM), SOCKS5/SOCKS5h (CONNECT/BIND/UDP ASSOCIATE), transparent TCP interception |
39
+ | **Service-mesh analytics** | Edge graph by **`source → destination → protocol`**, latency percentiles (`p50/p90/p95`), throughput, bytes, errors, and failure-rate |
40
+ | **Reliability governance** | rate limit, circuit breaker, retry/backoff, timeout, cache, validation, auth/session, connection filters, health checks |
41
+ | **Productivity surface** | MCP tooling, discovery/file routing, inspection tools (`inspect`, `doctor`, `playground`), contract-first mocks |
42
+
43
+ ### In one line: what you can ship with this stack
44
+
45
+ - **A full API platform** with one handler model across REST, realtime, streams, and procedures.
46
+ - **A production edge layer** with HTTP/HTTPS, explicit proxy, SOCKS5h, and transparent interception.
47
+ - **A service-mesh telemetry plane** for origin → destination reporting and protocol-level graphing.
48
+ - **An operations platform** with resilience, tracing, and automated debugging workflows.
49
+
50
+ ### What stays off by default
51
+
52
+ To keep servers light, telemetry is **opt-in** on proxy modes.
53
+
54
+ - Reverse/explicit/SOCKS5/transparent run without heavy metric collectors unless `telemetry` is configured.
55
+ - The same applies to graph snapshots, Prometheus endpoints, and extra edge-state buffers.
56
+ - You pay for observability only where you enable it.
57
+
58
+ ### Start fast from the documentation map
59
+
60
+ 1. **Protocols:** [HTTP](https://forattini-dev.github.io/raffel/#/protocols/http), [WebSocket](https://forattini-dev.github.io/raffel/#/protocols/websocket), [gRPC](https://forattini-dev.github.io/raffel/#/protocols/grpc), [UDP](https://forattini-dev.github.io/raffel/#/protocols/udp)
61
+ 2. **Proxy family:** [Proxy overview](https://forattini-dev.github.io/raffel/#/proxy), [Modes](https://forattini-dev.github.io/raffel/#/proxy/modes), [Routing](https://forattini-dev.github.io/raffel/#/proxy/routing), [Service mesh with proxies](https://forattini-dev.github.io/raffel/#/proxy/service-mesh)
62
+ 3. **Traffic intelligence:** [Flow metrics](https://forattini-dev.github.io/raffel/#/proxy/flow-metrics), [Observability](https://forattini-dev.github.io/raffel/#/observability), [Tracing](https://forattini-dev.github.io/raffel/#/observability/tracing)
63
+ 4. **Hardening and governance:** [Interceptors](https://forattini-dev.github.io/raffel/#/interceptors), [TLS](https://forattini-dev.github.io/raffel/#/proxy/tls), [Troubleshooting](https://forattini-dev.github.io/raffel/#/proxy/troubleshooting)
64
+
18
65
  ## Start with HTTP
19
66
 
20
67
  ```typescript
@@ -361,14 +408,16 @@ Full proxy toolkit built into Raffel — no extra dependencies.
361
408
  ```typescript
362
409
  import { createHttpForwardProxy } from 'raffel'
363
410
 
364
- const proxy = createHttpForwardProxy(httpServer, {
365
- auth: { type: 'basic', credentials: { admin: 'secret' } },
411
+ const proxy = createHttpForwardProxy({
412
+ auth: { credentials: { username: 'admin', password: 'secret' } },
366
413
  filter: {
367
414
  allowHosts: ['*.trusted.com', 'api.internal'],
368
415
  denyHosts: ['*.evil.com'],
369
416
  },
370
417
  onRequest: (req) => { /* log or modify */ return req },
371
418
  })
419
+
420
+ proxy.attachTo(httpServer)
372
421
  ```
373
422
 
374
423
  ### CONNECT Tunnel (with MITM)
@@ -376,8 +425,8 @@ const proxy = createHttpForwardProxy(httpServer, {
376
425
  ```typescript
377
426
  import { createConnectTunnel } from 'raffel'
378
427
 
379
- // Transparent tunnel
380
- const tunnel = createConnectTunnel({ mode: 'pipe' })
428
+ // Plain CONNECT tunnel
429
+ const tunnel = createConnectTunnel({ mode: 'forward' })
381
430
 
382
431
  // MITM: inspect and modify HTTPS traffic
383
432
  const mitm = createConnectTunnel({
@@ -394,6 +443,32 @@ const mitm = createConnectTunnel({
394
443
  })
395
444
  ```
396
445
 
446
+ ### Explicit Proxy Server
447
+
448
+ ```typescript
449
+ import { createExplicitProxy } from 'raffel'
450
+
451
+ const proxy = createExplicitProxy({
452
+ port: 8080,
453
+ auth: { credentials: { username: 'admin', password: 'secret' } },
454
+ tunnel: { mode: 'forward' },
455
+ telemetry: {
456
+ sourceHeader: 'x-service-name',
457
+ metricsEndpoint: '/metrics',
458
+ graphEndpoint: '/proxy/graph',
459
+ defaultLabels: { proxy: 'mesh-edge-a' },
460
+ percentiles: [0.5, 0.9, 0.95],
461
+ },
462
+ })
463
+
464
+ await proxy.start()
465
+
466
+ // Prometheus: GET http://127.0.0.1:8080/metrics
467
+ // Graph JSON: GET http://127.0.0.1:8080/proxy/graph
468
+ // Programmatic: proxy.graphSnapshot()
469
+ // Edge latency: snapshot.edges[0].latency.percentiles.p95
470
+ ```
471
+
397
472
  ### SOCKS5 Proxy
398
473
 
399
474
  ```typescript
@@ -401,9 +476,47 @@ import { createSocks5Proxy } from 'raffel'
401
476
 
402
477
  const socks5 = createSocks5Proxy({
403
478
  port: 1080,
404
- auth: { type: 'userpass', users: { alice: 'secret' } },
479
+ auth: { credentials: { username: 'alice', password: 'secret' } },
480
+ telemetry: {
481
+ defaultLabels: { proxy: 'mesh-socks' },
482
+ },
405
483
  })
406
484
  await socks5.start()
485
+
486
+ // Supports CONNECT, BIND, and UDP ASSOCIATE.
487
+ // SOCKS5h is supported by sending hostnames (ATYP 0x03).
488
+ // Telemetry protocols: socks5, socks5h, socks5-bind, socks5h-bind, socks5-udp, socks5h-udp.
489
+ ```
490
+
491
+ ### Unified HTTP + HTTPS + SOCKS5h Suite
492
+
493
+ ```typescript
494
+ import { createProxySuite } from 'raffel'
495
+
496
+ const suite = createProxySuite({
497
+ explicit: {
498
+ port: 8080,
499
+ tunnel: { mode: 'forward' }, // HTTPS via CONNECT
500
+ },
501
+ socks5: {
502
+ port: 1080,
503
+ auth: { credentials: { username: 'svc-billing', password: 'secret' } },
504
+ },
505
+ telemetry: {
506
+ sourceHeader: 'x-service-name',
507
+ metricsEndpoint: '/metrics',
508
+ graphEndpoint: '/proxy/graph',
509
+ percentiles: [0.5, 0.9, 0.95],
510
+ defaultLabels: { proxy: 'mesh-gateway' },
511
+ },
512
+ })
513
+
514
+ await suite.start()
515
+
516
+ // Shared graph across HTTP, HTTPS/CONNECT, and SOCKS5 CONNECT/BIND/UDP:
517
+ // GET http://127.0.0.1:8080/proxy/graph
518
+ // Shared Prometheus metrics:
519
+ // GET http://127.0.0.1:8080/metrics
407
520
  ```
408
521
 
409
522
  ### Transparent Proxy (Linux TPROXY)
@@ -414,8 +527,9 @@ import { createTransparentProxy } from 'raffel'
414
527
  const proxy = createTransparentProxy({
415
528
  mode: 'tproxy',
416
529
  port: 8080,
417
- upstream: { host: 'backend.internal', port: 8080 },
418
530
  })
531
+
532
+ await proxy.start()
419
533
  ```
420
534
 
421
535
  ---
@@ -708,7 +822,7 @@ HTTP parity. Migrate by mapping routes, middleware, validation, and lifecycle
708
822
  concepts into Raffel's runtime model, then reuse the same contracts across other
709
823
  transports.
710
824
 
711
- See the [migration guide](./docs/guides/migration.md) for concept mapping from
825
+ See the [migration guide](./docs/migration/frameworks.md) for concept mapping from
712
826
  Express, Fastify, Fetch-first routers, `ws`, and Socket.IO.
713
827
 
714
828
  ---
@@ -726,7 +840,7 @@ Express, Fastify, Fetch-first routers, `ws`, and Socket.IO.
726
840
  | [Metrics & Tracing](https://forattini-dev.github.io/raffel/#/observability) | Prometheus, OpenTelemetry |
727
841
  | [Core Model](https://forattini-dev.github.io/raffel/#/core-model) | Envelope, Context, Router, architecture |
728
842
  | [File-based Routing](https://forattini-dev.github.io/raffel/#/file-system-discovery) | Zero-config discovery |
729
- | [Migration Guide](./docs/guides/migration.md) | Concept mapping from existing HTTP and realtime stacks |
843
+ | [Migration Guide](./docs/migration/frameworks.md) | Concept mapping from existing HTTP and realtime stacks |
730
844
 
731
845
  ---
732
846
 
@@ -7,10 +7,8 @@ import * as grpc from '@grpc/grpc-js';
7
7
  import * as protoLoader from '@grpc/proto-loader';
8
8
  import type { Router } from '../core/router.js';
9
9
  import type { ContextSeed } from '../types/index.js';
10
- export interface GrpcTlsOptions {
11
- key: string | Buffer;
12
- cert: string | Buffer;
13
- ca?: string | Buffer;
10
+ import { type TlsOptions } from '../utils/tls.js';
11
+ export interface GrpcTlsOptions extends TlsOptions {
14
12
  requireClientCert?: boolean;
15
13
  }
16
14
  export interface GrpcMethodInfo {
@@ -37,7 +35,12 @@ export interface GrpcAdapterOptions {
37
35
  packageName?: string;
38
36
  serviceNames?: string[];
39
37
  loaderOptions?: protoLoader.Options;
40
- tls?: GrpcTlsOptions;
38
+ /**
39
+ * TLS configuration.
40
+ * - `true`: auto-generates a self-signed certificate
41
+ * - `GrpcTlsOptions`: inline PEM, file paths, or env vars
42
+ */
43
+ tls?: boolean | GrpcTlsOptions;
41
44
  maxReceiveMessageLength?: number;
42
45
  maxSendMessageLength?: number;
43
46
  contextFactory?: (call: GrpcServerCallBase, method: GrpcMethodInfo) => ContextSeed | Promise<ContextSeed>;
@@ -1 +1 @@
1
- {"version":3,"file":"grpc.d.ts","sourceRoot":"","sources":["../../src/adapters/grpc.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,IAAI,MAAM,eAAe,CAAA;AACrC,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAA;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAqB,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAQvE,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;IACrB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,cAAc,EAAE,OAAO,CAAA;CACxB;AAED;;;GAGG;AACH,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAA;IACvB,SAAS,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAA;IAC7B,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI,CAAA;CAChE;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,aAAa,CAAC,EAAE,WAAW,CAAC,OAAO,CAAA;IACnC,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,uBAAuB,CAAC,EAAE,MAAM,CAAA;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,cAAc,CAAC,EAAE,CACf,IAAI,EAAE,kBAAkB,EACxB,MAAM,EAAE,cAAc,KACnB,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;CACxC;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CACxD;AAgHD,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,kBAAkB,GAC1B,WAAW,CAmbb"}
1
+ {"version":3,"file":"grpc.d.ts","sourceRoot":"","sources":["../../src/adapters/grpc.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,IAAI,MAAM,eAAe,CAAA;AACrC,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAA;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAqB,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAQvE,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEpE,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,cAAc,EAAE,OAAO,CAAA;CACxB;AAED;;;GAGG;AACH,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAA;IACvB,SAAS,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAA;IAC7B,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI,CAAA;CAChE;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,aAAa,CAAC,EAAE,WAAW,CAAC,OAAO,CAAA;IACnC;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,GAAG,cAAc,CAAA;IAC9B,uBAAuB,CAAC,EAAE,MAAM,CAAA;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,cAAc,CAAC,EAAE,CACf,IAAI,EAAE,kBAAkB,EACxB,MAAM,EAAE,cAAc,KACnB,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;CACxC;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CACxD;AAgHD,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,kBAAkB,GAC1B,WAAW,CAgbb"}
@@ -11,6 +11,7 @@ import { createAbortableContextAsync } from '../utils/context-utils.js';
11
11
  import { createStream } from '../stream/raffel-stream.js';
12
12
  import { createLogger } from '../utils/logger.js';
13
13
  const logger = createLogger('grpc-adapter');
14
+ import { resolveTlsOptions } from '../utils/tls.js';
14
15
  function metadataToRecord(metadata) {
15
16
  const map = metadata.getMap();
16
17
  const result = {};
@@ -108,20 +109,17 @@ export function createGrpcAdapter(router, options) {
108
109
  const { port, host = '0.0.0.0', protoPath, packageName, serviceNames, loaderOptions, tls, maxReceiveMessageLength, maxSendMessageLength, } = options;
109
110
  let server = null;
110
111
  let address = null;
111
- function createServerCredentials() {
112
+ async function createServerCredentials() {
112
113
  if (!tls) {
113
114
  return grpc.ServerCredentials.createInsecure();
114
115
  }
116
+ const tlsConfig = tls === true ? {} : tls;
117
+ const resolved = await resolveTlsOptions(tlsConfig);
115
118
  const keyCertPair = {
116
- private_key: typeof tls.key === 'string' ? Buffer.from(tls.key) : tls.key,
117
- cert_chain: typeof tls.cert === 'string' ? Buffer.from(tls.cert) : tls.cert,
119
+ private_key: resolved.key,
120
+ cert_chain: resolved.cert,
118
121
  };
119
- const rootCerts = tls.ca
120
- ? typeof tls.ca === 'string'
121
- ? Buffer.from(tls.ca)
122
- : tls.ca
123
- : null;
124
- return grpc.ServerCredentials.createSsl(rootCerts, [keyCertPair], tls.requireClientCert ?? false);
122
+ return grpc.ServerCredentials.createSsl(resolved.ca ?? null, [keyCertPair], tlsConfig.requireClientCert ?? false);
125
123
  }
126
124
  async function buildContext(call, method) {
127
125
  const metadata = metadataToRecord(call.metadata);
@@ -415,7 +413,7 @@ export function createGrpcAdapter(router, options) {
415
413
  const serviceName = mapServiceName(packageName, service.name);
416
414
  server.addService(service.service, createImplementation(serviceName, service.service));
417
415
  }
418
- const credentials = createServerCredentials();
416
+ const credentials = await createServerCredentials();
419
417
  const boundPort = await new Promise((resolve, reject) => {
420
418
  server.bindAsync(`${host}:${port}`, credentials, (err, portNumber) => {
421
419
  if (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"grpc.js","sourceRoot":"","sources":["../../src/adapters/grpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grpc.js","sourceRoot":"","sources":["../../src/adapters/grpc.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@
7
7
  * - Events: POST /events/event.name → fire-and-forget
8
8
  */
9
9
  import { type Server, type IncomingMessage, type ServerResponse } from 'node:http';
10
+ import { type TlsOptions } from '../utils/tls.js';
10
11
  import type { Router } from '../core/router.js';
11
12
  import type { ContextSeed } from '../types/index.js';
12
13
  import { type Codec } from '../utils/content-codecs.js';
@@ -49,6 +50,12 @@ export interface HttpAdapterOptions {
49
50
  * Default: true
50
51
  */
51
52
  listenOnStart?: boolean;
53
+ /**
54
+ * TLS configuration for HTTPS.
55
+ * - `true`: auto-generates a self-signed certificate for localhost
56
+ * - `TlsOptions`: inline PEM, file paths (K8s volume mounts), or env vars (base64)
57
+ */
58
+ tls?: boolean | TlsOptions;
52
59
  }
53
60
  /**
54
61
  * HTTP Adapter interface
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/adapters/http.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAgB,KAAK,MAAM,EAAE,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAA;AAEhG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAqB,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAKvE,OAAO,EAKL,KAAK,KAAK,EACX,MAAM,4BAA4B,CAAA;AAoBnC;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,CAC3B,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,KAChB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;AAE/B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAA;IAEZ,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,mDAAmD;IACnD,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAE7E,yBAAyB;IACzB,IAAI,CAAC,EAAE;QACL,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAA;QACpC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;QAClB,WAAW,CAAC,EAAE,OAAO,CAAA;KACtB,GAAG,OAAO,CAAA;IAEX,gDAAgD;IAChD,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,cAAc,EAAE,CAAA;IAE7B;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,uBAAuB;IACvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtB,sBAAsB;IACtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAErB,qEAAqE;IACrE,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAC/B;AA+PD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,kBAAkB,GAC1B,WAAW,CAwcb"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/adapters/http.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAoC,KAAK,MAAM,EAAE,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAA;AAEpH,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAqB,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAKvE,OAAO,EAKL,KAAK,KAAK,EACX,MAAM,4BAA4B,CAAA;AAoBnC;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,CAC3B,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,KAChB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;AAE/B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAA;IAEZ,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,mDAAmD;IACnD,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAE7E,yBAAyB;IACzB,IAAI,CAAC,EAAE;QACL,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAA;QACpC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;QAClB,WAAW,CAAC,EAAE,OAAO,CAAA;KACtB,GAAG,OAAO,CAAA;IAEX,gDAAgD;IAChD,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,cAAc,EAAE,CAAA;IAE7B;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IAEvB;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,GAAG,UAAU,CAAA;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,uBAAuB;IACvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtB,sBAAsB;IACtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAErB,qEAAqE;IACrE,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAC/B;AA+PD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,kBAAkB,GAC1B,WAAW,CAqdb"}
@@ -6,7 +6,9 @@
6
6
  * - Streams: GET /procedure.name → Server-Sent Events
7
7
  * - Events: POST /events/event.name → fire-and-forget
8
8
  */
9
- import { createServer } from 'node:http';
9
+ import { createServer as createHttpServer } from 'node:http';
10
+ import { createServer as createHttpsServer } from 'node:https';
11
+ import { resolveTlsOptions } from '../utils/tls.js';
10
12
  import { sid } from '../utils/id/index.js';
11
13
  import { mergeContextSeeds } from '../types/index.js';
12
14
  import { createAbortableContextAsync } from '../utils/context-utils.js';
@@ -576,8 +578,18 @@ export function createHttpAdapter(router, options) {
576
578
  }
577
579
  return {
578
580
  async start() {
581
+ if (options.tls) {
582
+ const tlsConfig = options.tls === true ? {} : options.tls;
583
+ const resolved = await resolveTlsOptions(tlsConfig);
584
+ if (resolved.autoGenerated) {
585
+ logger.warn('Using auto-generated self-signed certificate (development only)');
586
+ }
587
+ server = createHttpsServer({ key: resolved.key, cert: resolved.cert, ca: resolved.ca }, handleRequest);
588
+ }
589
+ else {
590
+ server = createHttpServer(handleRequest);
591
+ }
579
592
  return new Promise((resolve, reject) => {
580
- server = createServer(handleRequest);
581
593
  server.on('error', (err) => {
582
594
  logger.error({ err }, 'HTTP server error');
583
595
  reject(err);
@@ -600,7 +612,8 @@ export function createHttpAdapter(router, options) {
600
612
  return;
601
613
  }
602
614
  server.listen(port, host, () => {
603
- logger.info({ port, host, basePath }, 'HTTP server listening');
615
+ const protocol = options.tls ? 'HTTPS' : 'HTTP';
616
+ logger.info({ port, host, basePath, protocol }, `${protocol} server listening`);
604
617
  resolve();
605
618
  });
606
619
  });
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/adapters/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/adapters/http.ts"],"names":[],"mappings":"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"}
@@ -36,13 +36,8 @@ export interface SmtpContextCapability {
36
36
  readonly tlsActive?: boolean;
37
37
  readonly ehloHostname?: string;
38
38
  }
39
- export interface SmtpTlsOptions {
40
- /** TLS certificate (PEM) */
41
- cert: string | Buffer;
42
- /** TLS private key (PEM) */
43
- key: string | Buffer;
44
- /** CA certificates for client verification (optional) */
45
- ca?: string | Buffer | Array<string | Buffer>;
39
+ import { type TlsOptions } from '../utils/tls.js';
40
+ export interface SmtpTlsOptions extends TlsOptions {
46
41
  /** Minimum TLS version (default: TLSv1.2) */
47
42
  minVersion?: tls.SecureVersion;
48
43
  }
@@ -83,8 +78,13 @@ export interface SmtpAdapterOptions {
83
78
  maxAuthAttempts?: number;
84
79
  /** SMTP-specific timeouts */
85
80
  timeouts?: SmtpTimeouts;
86
- /** TLS config for STARTTLS (omit to disable STARTTLS) */
87
- tls?: SmtpTlsOptions;
81
+ /**
82
+ * TLS config for STARTTLS.
83
+ * - `true`: auto-generates a self-signed certificate
84
+ * - `SmtpTlsOptions`: inline PEM, file paths, or env vars
85
+ * - omit to disable STARTTLS
86
+ */
87
+ tls?: boolean | SmtpTlsOptions;
88
88
  /** Implicit TLS (port 465 / SMTPS) — wraps socket in TLS immediately */
89
89
  implicitTls?: boolean;
90
90
  /** Require TLS before accepting mail (default: false) */
@@ -116,6 +116,12 @@ export interface SmtpAdapterOptions {
116
116
  export interface SmtpConnectionHandler {
117
117
  handleConnection(socket: Socket): void;
118
118
  closeAllConnections(): void;
119
+ setResolvedTls(creds: {
120
+ key: Buffer;
121
+ cert: Buffer;
122
+ ca?: Buffer;
123
+ minVersion?: import('node:tls').SecureVersion;
124
+ }): void;
119
125
  readonly clientCount: number;
120
126
  }
121
127
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"smtp.d.ts","sourceRoot":"","sources":["../../src/adapters/smtp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smtp.d.ts","sourceRoot":"","sources":["../../src/adapters/smtp.ts"],"names":[],"mappings":"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"}