@beignet/core 0.0.51 → 0.0.53

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 (85) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +112 -20
  3. package/dist/application/index.d.ts +1 -1
  4. package/dist/application/index.d.ts.map +1 -1
  5. package/dist/application/index.js +5 -2
  6. package/dist/application/index.js.map +1 -1
  7. package/dist/encryption/index.d.ts +40 -0
  8. package/dist/encryption/index.d.ts.map +1 -0
  9. package/dist/encryption/index.js +134 -0
  10. package/dist/encryption/index.js.map +1 -0
  11. package/dist/events/index.d.ts +26 -2
  12. package/dist/events/index.d.ts.map +1 -1
  13. package/dist/events/index.js +84 -10
  14. package/dist/events/index.js.map +1 -1
  15. package/dist/events/payload-state.d.ts +14 -2
  16. package/dist/events/payload-state.d.ts.map +1 -1
  17. package/dist/events/payload-state.js +116 -4
  18. package/dist/events/payload-state.js.map +1 -1
  19. package/dist/events/transport.d.ts +25 -0
  20. package/dist/events/transport.d.ts.map +1 -0
  21. package/dist/events/transport.js +192 -0
  22. package/dist/events/transport.js.map +1 -0
  23. package/dist/openapi/index.d.ts.map +1 -1
  24. package/dist/openapi/index.js +27 -4
  25. package/dist/openapi/index.js.map +1 -1
  26. package/dist/outbox/index.d.ts.map +1 -1
  27. package/dist/outbox/index.js +10 -13
  28. package/dist/outbox/index.js.map +1 -1
  29. package/dist/ports/events.d.ts +4 -1
  30. package/dist/ports/events.d.ts.map +1 -1
  31. package/dist/ports/storage.d.ts +7 -0
  32. package/dist/ports/storage.d.ts.map +1 -1
  33. package/dist/ports/storage.js +4 -0
  34. package/dist/ports/storage.js.map +1 -1
  35. package/dist/ports/testing.d.ts +3 -2
  36. package/dist/ports/testing.d.ts.map +1 -1
  37. package/dist/ports/testing.js +7 -4
  38. package/dist/ports/testing.js.map +1 -1
  39. package/dist/ports/unit-of-work.d.ts +4 -4
  40. package/dist/ports/unit-of-work.d.ts.map +1 -1
  41. package/dist/ports/unit-of-work.js +8 -9
  42. package/dist/ports/unit-of-work.js.map +1 -1
  43. package/dist/search/index.js +2 -2
  44. package/dist/search/index.js.map +1 -1
  45. package/dist/server/instrumentation.d.ts +5 -5
  46. package/dist/server/instrumentation.d.ts.map +1 -1
  47. package/dist/server/instrumentation.js +3 -4
  48. package/dist/server/instrumentation.js.map +1 -1
  49. package/dist/server/request-executor.d.ts.map +1 -1
  50. package/dist/server/request-executor.js +13 -0
  51. package/dist/server/request-executor.js.map +1 -1
  52. package/dist/server/response-finalization.d.ts.map +1 -1
  53. package/dist/server/response-finalization.js +25 -13
  54. package/dist/server/response-finalization.js.map +1 -1
  55. package/dist/server/server.d.ts +8 -5
  56. package/dist/server/server.d.ts.map +1 -1
  57. package/dist/server/server.js +1 -3
  58. package/dist/server/server.js.map +1 -1
  59. package/dist/server/use-case-route.d.ts +82 -17
  60. package/dist/server/use-case-route.d.ts.map +1 -1
  61. package/dist/server/use-case-route.js +40 -4
  62. package/dist/server/use-case-route.js.map +1 -1
  63. package/dist/uploads/index.d.ts.map +1 -1
  64. package/dist/uploads/index.js +37 -16
  65. package/dist/uploads/index.js.map +1 -1
  66. package/package.json +6 -2
  67. package/skills/app-architecture/SKILL.md +29 -6
  68. package/src/application/index.ts +24 -3
  69. package/src/encryption/index.ts +198 -0
  70. package/src/events/index.ts +137 -10
  71. package/src/events/payload-state.ts +205 -6
  72. package/src/events/transport.ts +242 -0
  73. package/src/openapi/index.ts +41 -3
  74. package/src/outbox/index.ts +26 -18
  75. package/src/ports/events.ts +4 -1
  76. package/src/ports/storage.ts +10 -0
  77. package/src/ports/testing.ts +11 -4
  78. package/src/ports/unit-of-work.ts +20 -16
  79. package/src/search/index.ts +2 -2
  80. package/src/server/instrumentation.ts +10 -8
  81. package/src/server/request-executor.ts +19 -0
  82. package/src/server/response-finalization.ts +33 -15
  83. package/src/server/server.ts +9 -8
  84. package/src/server/use-case-route.ts +234 -27
  85. package/src/uploads/index.ts +34 -16
package/CHANGELOG.md CHANGED
@@ -1,5 +1,32 @@
1
1
  # @beignet/core
2
2
 
3
+ ## 0.0.53
4
+
5
+ ### Patch Changes
6
+
7
+ - 6ef881c: Reject incompatible default route-binder inputs at compile time and classify
8
+ type-erased runtime mismatches as framework-owned validation errors. Generated
9
+ resource cursors now remain optional at the request boundary and normalize to
10
+ nullable repository pagination state inside the use case.
11
+ - e1a559d: Add authenticated string encryption through EncryptionPort and createEncryption, with optional context binding, decryption through previous keys, and non-sensitive failure errors. Add beignet encryption key for key generation, server import checks, and guidance for rotation and recovery.
12
+ - edebbea: Add `@beignet/react-form`, a TanStack Form adapter that installs a contract body schema as a Standard Schema validator, types the `onServer` error slot, and maps client errors with `serverErrorMap`. `beignet lint` keeps the form packages out of domain and use-case code, `beignet doctor` expects `client/forms.ts` for either form adapter, and `beignet make feature --with ui` refuses to add React Hook Form components to an app that depends on `@beignet/react-form`.
13
+
14
+ ## 0.0.52
15
+
16
+ ### Patch Changes
17
+
18
+ - b39bb6e: Clarify that Beignet applications require Node.js 22.12 or newer and can use
19
+ npm, pnpm, Yarn, or Bun for package management and framework commands.
20
+ - 33bd8a2: Reject duplicate or ambiguous path operations during direct OpenAPI generation instead of emitting overwritten or invalid paths.
21
+ - ac76ab9: Reject event payloads with `EventTransportError` when they are not canonical JSON or change when validated again after transport, before publishing or recording them durably. Direct memory and recording-bus publication must be awaited while validation completes.
22
+ - 64dca8d: Bound webhook bodies, keep fallback errors private outside development and
23
+ tests, serialize snapshot-safe local storage operations, preserve ambient audit
24
+ correlation, surface provider shutdown failures, validate timer ranges, and
25
+ omit raw search and database queries from instrumentation. Release unread
26
+ storage bodies explicitly and bound provider-owned Redis shutdown.
27
+ - a50ef66: Send the parsed response-schema output from framework-neutral route handlers,
28
+ including transformed catalog error details.
29
+
3
30
  ## 0.0.51
4
31
 
5
32
  ### Patch Changes
package/README.md CHANGED
@@ -1,7 +1,6 @@
1
1
  # @beignet/core
2
2
 
3
- > **Runtime:** Beignet requires Node.js 22.12 or newer. Bun 1.3.14 or newer is
4
- > supported for Beignet commands.
3
+ > **Runtime:** Beignet requires Node.js 22.12 or newer. Bun is optional.
5
4
 
6
5
  > Core framework primitives for Beignet
7
6
 
@@ -12,7 +11,7 @@
12
11
  This package provides Beignet's framework primitives: contracts, server runtime,
13
12
  typed client, use cases, agent capabilities, ports, domain helpers, app errors, config, events,
14
13
  idempotency, locks, outbox, mail, notifications, payments, search, webhooks,
15
- feature flags, error reporting, schedules, uploads, entitlements, pagination
14
+ feature flags, error reporting, encryption, schedules, uploads, entitlements, pagination
16
15
  helpers, testing helpers, and OpenAPI generation.
17
16
 
18
17
  ## Installation
@@ -56,6 +55,7 @@ name the framework area they depend on.
56
55
  | `@beignet/core/config` | Environment config validation |
57
56
  | `@beignet/core/contracts` | HTTP contract builders, types, path helpers, and contract metadata |
58
57
  | `@beignet/core/domain` | Entities, value objects, and domain events |
58
+ | `@beignet/core/encryption` | Authenticated string encryption, EncryptionPort, and key generation |
59
59
  | `@beignet/core/entitlements` | Product access decision types, helpers, and static entitlement adapter |
60
60
  | `@beignet/core/error-reporting` | Error reporting port, memory adapter, no-op adapter, and helpers |
61
61
  | `@beignet/core/errors` | Error catalogs and response helpers |
@@ -86,6 +86,49 @@ name the framework area they depend on.
86
86
  | `@beignet/core/uploads/client` | Browser upload client for server and direct uploads |
87
87
  | `@beignet/core/webhooks` | Inbound webhook definitions, verifiers, memory test verifier, and HMAC verifier |
88
88
 
89
+ ## Encryption
90
+
91
+ Use `createEncryption(...)` in server infra and expose `EncryptionPort` through
92
+ your app ports. It uses Web Crypto AES-256-GCM with a random 96-bit IV and a
93
+ 128-bit authentication tag for each write.
94
+
95
+ ```typescript
96
+ import { createEncryption } from "@beignet/core/encryption";
97
+ import { env } from "@/lib/env";
98
+
99
+ // Supply a persistent server secret from your validated environment config.
100
+ const encryption = createEncryption({
101
+ key: env.ENCRYPTION_KEY,
102
+ previousKeys: env.ENCRYPTION_PREVIOUS_KEYS,
103
+ });
104
+ const context = { purpose: "integration-token", tenantId: "tenant-1" };
105
+ const encrypted = await encryption.encrypt({ value: "example-token", context });
106
+ const token = await encryption.decrypt({ value: encrypted, context });
107
+ ```
108
+
109
+ Generate a persistent key with `beignet encryption key` or
110
+ `generateEncryptionKey()`: canonical `base64:` plus 32 random bytes. All keys
111
+ are validated synchronously. `key` encrypts new writes; `previousKeys` is an
112
+ optional array used only for decryption. The methods accept strings and return
113
+ `Promise<string>`. Optional `context` is a plain string record authenticated
114
+ with the value; supply the same expected context when decrypting. It does not
115
+ replace authorization.
116
+
117
+ Store the complete opaque ciphertext in a text column. Malformed values,
118
+ tampering, wrong keys, and context mismatches reject with
119
+ `EncryptionDecryptionError` and a non-sensitive message. There is no plaintext
120
+ fallback. The API emits no logs or telemetry.
121
+
122
+ Keep keys outside client bundles and logs. Rotation does not rewrite existing
123
+ data. Distribute a new decryption key to all readers before switching writes,
124
+ retain old keys while records and backups require them, and test recovery.
125
+ Losing a required key makes its ciphertext unreadable. This is field encryption,
126
+ not password hashing or streaming file encryption. See the
127
+ [encryption guide](https://beignetjs.com/encryption) for port wiring, rotation,
128
+ recovery, and KMS boundaries.
129
+
130
+ ## Import boundaries
131
+
89
132
  Use boundary markers as side-effect imports so local linting and formatting do
90
133
  not treat them as unused symbols:
91
134
 
@@ -344,6 +387,17 @@ attempts the complete batch before rejecting with any callback failures.
344
387
 
345
388
  ## Event subscriptions
346
389
 
390
+ Beignet event payloads are canonical JSON transport data. `publishEvent(...)`,
391
+ use-case event helpers, buffered recorder flushes, and outbox helpers parse the
392
+ payload, convert the output to strict JSON, and validate the decoded JSON again.
393
+ They throw `EventTransportError` before publication or durable recording when
394
+ the output is not JSON-safe or changes under repeated validation. Use strings
395
+ or numbers for timestamps rather than `Date`, and keep schema transforms
396
+ idempotent. Keep validation deterministic and side-effect-free because Beignet
397
+ can run it at producer and receiving boundaries. A transform such as
398
+ `z.string().trim()` is valid because parsing its canonical output does not
399
+ change it.
400
+
347
401
  `EventBusPort.subscribe(...)` returns an `EventSubscription` with a `ready`
348
402
  promise and asynchronous, idempotent `unsubscribe()` method. Await `ready`
349
403
  before advertising that a process can receive events, and await
@@ -362,11 +416,13 @@ Normal teardown after successful readiness still awaits transport cleanup;
362
416
  apply a host-level shutdown deadline when required. Readiness is an initial
363
417
  lifecycle signal, not an ongoing health check or durability guarantee.
364
418
 
365
- An app-owned in-process `EventBusPort` adapter must forward the complete
366
- `EventPublishOptions` object to subscribers rather than rebuilding only its
367
- trace field. A serialized adapter sends documented transport metadata such as
368
- the trace carrier and lets `registerListeners(...)` validate the decoded
369
- payload again at the receiving boundary.
419
+ An app-owned `EventBusPort` adapter must call
420
+ `prepareEventPayloadForTransport(...)` before publication. An in-process
421
+ adapter delivers the returned `payload` and forwards the complete
422
+ `publishOptions` object to subscribers. A serialized adapter encodes
423
+ `transportValue`, sends documented metadata such as the trace carrier, and lets
424
+ `registerListeners(...)` validate the decoded payload again at the receiving
425
+ boundary.
370
426
 
371
427
  ## Provider-contributed ports
372
428
 
@@ -683,6 +739,8 @@ const results = await ctx.ports.search.search(issueSearchIndex, {
683
739
  Use `createMemorySearch(...)` in tests, `createMemorySearchProvider()` for local
684
740
  provider wiring, or install `@beignet/provider-search-meilisearch` for
685
741
  production search.
742
+ Search instrumentation records the index, result count, and query length. It
743
+ does not record query text or document bodies.
686
744
  Provider adapters may require query fields to be declared in the index
687
745
  metadata. For Meilisearch, `filters` and `facets` must use
688
746
  `filterableAttributes`, and `sort` must use `sortableAttributes`.
@@ -722,6 +780,11 @@ trailing slashes, backslashes, empty segments, and `.` / `..` segments.
722
780
  Provider adapters may add narrower restrictions for their own internal
723
781
  namespaces.
724
782
 
783
+ `StoragePort.get(...)` returns a one-shot `StorageObjectBody`. Consume one of
784
+ its body methods, or call `await object.cancel()` when only inspecting metadata
785
+ so providers can release unread streams, sockets, or file snapshots. Prefer
786
+ `stat(...)` for metadata-only lookups.
787
+
725
788
  ## Uploads
726
789
 
727
790
  Use `@beignet/core/uploads` for typed file workflows above `StoragePort`.
@@ -1700,6 +1763,10 @@ assertProviderInstrumentationEvent(providerEvents, {
1700
1763
  });
1701
1764
  ```
1702
1765
 
1766
+ `createRecordingEventBus()` applies the same canonical JSON and
1767
+ transport-stability checks as Beignet's runtime event buses before appending an
1768
+ event to its captured log. Await `bus.publish(...)` before reading that log.
1769
+
1703
1770
  `createProviderInstrumentation(...)` adds `details.providerName` to custom and
1704
1771
  typed provider events, so tests and devtools can group provider work
1705
1772
  consistently. Watcher checks, synchronous sink errors, and rejected
@@ -2063,14 +2130,13 @@ optional versioned trace carrier in `trace_context_json`; add that nullable
2063
2130
  column to existing tables before upgrading the adapter.
2064
2131
 
2065
2132
  Beignet's use-case event helpers, `publishEvent(...)`, and `enqueueEvent(...)`
2066
- validate payloads and forward the parsed Standard Schema output. In-process
2067
- delivery preserves that parsed state so listeners do not apply transforms
2068
- twice. Durable or distributed transports serialize the canonical value and
2069
- validate it again after decoding, so event schema outputs must be JSON-safe and
2070
- stable when parsed again after serialization. For an outbox, model timestamps
2071
- as JSON strings or numbers rather than `Date` objects. Job transports continue
2072
- to preserve the original JSON-safe payload until the worker's handler-facing
2073
- parse.
2133
+ validate payloads and forward canonical Standard Schema output. They reject
2134
+ non-JSON outputs and transforms that change when canonical JSON is validated
2135
+ again, before publishing or writing an outbox row. In-process delivery
2136
+ preserves that validation state, while durable or distributed transports
2137
+ validate decoded JSON again. For an outbox, model timestamps as JSON strings or
2138
+ numbers rather than `Date` objects. Job transports continue to preserve the
2139
+ original JSON-safe payload until the worker's handler-facing parse.
2074
2140
 
2075
2141
  An ordinary Unit of Work event flush has a different boundary: it runs after
2076
2142
  commit, and a publishing failure rejects even though the database writes are
@@ -2204,6 +2270,13 @@ explicit `input: (parts) => ...` mapper. When the use case `.input(...)`
2204
2270
  schema is the contract's sole request schema by reference, the server skips
2205
2271
  the use case's input re-parse — one schema, one parse.
2206
2272
 
2273
+ The route definition checks the inferred default binder input against the use
2274
+ case input type. Incompatible concrete shapes are compile errors with a prompt
2275
+ to add an explicit `input` mapper. If route types are deliberately erased and
2276
+ the default input still fails use-case validation at runtime, the server
2277
+ returns a framework-owned `500 USE_CASE_INPUT_VALIDATION_ERROR` rather than
2278
+ passing the failure through the app's unhandled-error mapper.
2279
+
2207
2280
  Use `{ contract, handle }` as the escape hatch for response headers,
2208
2281
  streaming, and multi-status responses. `defineRoute` remains
2209
2282
  available for full handlers that read hook-added `ctx` fields.
@@ -2395,7 +2468,7 @@ import { appContext } from "@/server/context";
2395
2468
  const server = await createServer({
2396
2469
  ports,
2397
2470
  providers,
2398
- // Defaults shown. Pass `instrumentation: false` to disable entirely.
2471
+ // Defaults shown. Pass false to disable headers and event recording.
2399
2472
  instrumentation: {
2400
2473
  requestIdHeader: "x-request-id",
2401
2474
  traceContextHeader: "traceparent",
@@ -2409,6 +2482,12 @@ Service contexts created with `server.createServiceContext(...)` receive fresh
2409
2482
  `requestId` and `trace` values per call. Context values win: when a factory
2410
2483
  sets its own `requestId`, headers and recorded events use it.
2411
2484
 
2485
+ `instrumentation: false` keeps request and service correlation available to
2486
+ context factories and `createAmbientAuditLog(...)`; it disables only response
2487
+ headers and instrumentation event recording.
2488
+ `ignorePaths` suppresses recorded events without removing ambient correlation
2489
+ from matching requests.
2490
+
2412
2491
  Trace primitives live in `@beignet/core/tracing` (`TraceContext`,
2413
2492
  `TracingPort`, `TraceOperation`, `TraceSpan`, `createTraceContext`,
2414
2493
  `createChildTraceContext`, `parseTraceparent`, `createTraceparent`,
@@ -2485,9 +2564,16 @@ normalize to an anonymous actor.
2485
2564
 
2486
2565
  Route-owned response validation can be disabled with
2487
2566
  `validateResponses: false` on `createServer(...)`, mirroring the client option
2488
- of the same name. Binder routes whose use case `.output(...)` schema is the
2489
- declared success response schema by reference skip the redundant success-status
2490
- parse only when use-case output validation is enabled. If the use case sets
2567
+ of the same name. When enabled, Beignet sends the declared response schema's
2568
+ parsed output: object schemas can strip undeclared keys, transforms change the
2569
+ wire value, and catalog error-detail schemas apply the same semantics. The
2570
+ parsed body is also the value observed by response finalizers, `afterSend`
2571
+ hooks, and idempotency storage. Disabling validation sends route-owned handler
2572
+ bodies as-is without schema stripping or transforms.
2573
+
2574
+ Binder routes whose use case `.output(...)` schema is the declared success
2575
+ response schema by reference skip the redundant success-status parse only when
2576
+ use-case output validation is enabled. If the use case sets
2491
2577
  `validate: { output: false }`, route response validation still runs once. If
2492
2578
  profiling justifies disabling validation entirely, drive `validateResponses`
2493
2579
  from an environment flag so development and CI keep it on.
@@ -2535,6 +2621,11 @@ schema.
2535
2621
  OpenAPI `operationId` defaults to the stable contract name. Explicit operation
2536
2622
  IDs are supported when an external SDK needs a different method name; server
2537
2623
  registration and OpenAPI generation reject duplicates.
2624
+ `contractsToOpenAPI(...)` also rejects duplicate method and normalized path
2625
+ combinations instead of replacing an earlier operation; `:id` and `[id]` both
2626
+ normalize to the OpenAPI path parameter `{id}`. Paths with the same hierarchy
2627
+ must also use consistent parameter names: `/items/{id}` and `/items/{slug}`
2628
+ cannot coexist in one OpenAPI document, even when they use different methods.
2538
2629
 
2539
2630
  ### External TypeScript clients
2540
2631
 
@@ -2647,6 +2738,7 @@ field requiredness, descriptions, and constraints.
2647
2738
  - [`@beignet/next`](https://beignetjs.com/server) - Next.js server adapter
2648
2739
  - [`@beignet/react-query`](https://beignetjs.com/react-query) - TanStack Query integration
2649
2740
  - [`@beignet/react-hook-form`](https://beignetjs.com/react-hook-form) - React Hook Form integration
2741
+ - [`@beignet/react-form`](https://beignetjs.com/react-form) - TanStack Form integration
2650
2742
  - [`@beignet/react-uploads`](https://beignetjs.com/react-uploads) - React upload state and progress hooks
2651
2743
  - [`@beignet/nuqs`](https://beignetjs.com/nuqs) - URL query state integration with nuqs
2652
2744
  - [`@beignet/devtools`](https://beignetjs.com/devtools) - Local request, provider, and audit timeline
@@ -1,5 +1,5 @@
1
1
  import type { StandardSchemaV1 } from "@standard-schema/spec";
2
- import type { EventPublishOptions } from "../events/index.js";
2
+ import { type EventPublishOptions } from "../events/index.js";
3
3
  /**
4
4
  * Any Standard Schema compatible validator.
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { prepareEventPayloadForTransport, } from "../events/index.js";
1
2
  import { markEventPayloadParsed } from "../events/payload-state.js";
2
3
  import { resolveProviderInstrumentationPort, } from "../providers/instrumentation.js";
3
4
  import { createChildTraceContext, resolveTracingPort, runWithTracing, } from "../tracing/index.js";
@@ -127,12 +128,14 @@ function createUseCaseEventHelpers(useCaseName, declared) {
127
128
  async record(recorder, event, payload) {
128
129
  const declaredEvent = resolveDeclared(event);
129
130
  const parsed = await parseEventPayload(declaredEvent, payload, useCaseName);
130
- await recorder.record(declaredEvent, parsed, markEventPayloadParsed());
131
+ const prepared = await prepareEventPayloadForTransport(declaredEvent, parsed, markEventPayloadParsed(declaredEvent, parsed));
132
+ await recorder.record(declaredEvent, prepared.payload, prepared.publishOptions);
131
133
  },
132
134
  async publish(eventBus, event, payload) {
133
135
  const declaredEvent = resolveDeclared(event);
134
136
  const parsed = await parseEventPayload(declaredEvent, payload, useCaseName);
135
- await eventBus.publish(declaredEvent, parsed, markEventPayloadParsed());
137
+ const prepared = await prepareEventPayloadForTransport(declaredEvent, parsed, markEventPayloadParsed(declaredEvent, parsed));
138
+ await eventBus.publish(declaredEvent, prepared.payload, prepared.publishOptions);
136
139
  },
137
140
  };
138
141
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import "../server-only.js";
2
+ /** Non-secret, authenticated metadata. Supply the same expected context on reads. */
3
+ export type EncryptionContext = Readonly<Record<string, string>>;
4
+ /** Options shared by string encryption and decryption. */
5
+ export interface EncryptionValueOptions {
6
+ /** Plaintext for encrypt; the complete encrypted value for decrypt. */
7
+ value: string;
8
+ /** Bind the value to its purpose, tenant, or record. This is not authorization. */
9
+ context?: EncryptionContext;
10
+ }
11
+ /** Server-side authenticated string encryption. */
12
+ export interface EncryptionPort {
13
+ /** Encrypt a string; persist the complete returned value. */
14
+ encrypt(options: EncryptionValueOptions): Promise<string>;
15
+ /** Authenticate and decrypt a value with the same expected context. */
16
+ decrypt(options: EncryptionValueOptions): Promise<string>;
17
+ }
18
+ /** Configuration for the built-in AES-256-GCM implementation. */
19
+ export interface CreateEncryptionOptions {
20
+ /** A base64: prefixed, canonical Base64 encoding of 32 random bytes. */
21
+ key: string;
22
+ /** Decryption-only keys in the same format. New writes always use key. */
23
+ previousKeys?: readonly string[];
24
+ }
25
+ /** Malformed, unauthenticated, or undecryptable ciphertext. Contains no input. */
26
+ export declare class EncryptionDecryptionError extends Error {
27
+ /** Stable error name, independent of the decryption failure's cause. */
28
+ readonly name = "EncryptionDecryptionError";
29
+ constructor();
30
+ }
31
+ /** Generate a new 256-bit key. Store it in a server secret store; never log it. */
32
+ export declare function generateEncryptionKey(): string;
33
+ /**
34
+ * Create authenticated string encryption using Web Crypto AES-256-GCM.
35
+ * Configuration is validated synchronously. Each write uses a random 96-bit IV
36
+ * and a 128-bit authentication tag. Previous keys are used only for reads.
37
+ * No environment variables are read and no plaintext, keys, or context are logged.
38
+ */
39
+ export declare function createEncryption(options: CreateEncryptionOptions): EncryptionPort;
40
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/encryption/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC;AAE3B,qFAAqF;AACrF,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEjE,0DAA0D;AAC1D,MAAM,WAAW,sBAAsB;IACrC,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B;AAED,mDAAmD;AACnD,MAAM,WAAW,cAAc;IAC7B,6DAA6D;IAC7D,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,uEAAuE;IACvE,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3D;AAED,iEAAiE;AACjE,MAAM,WAAW,uBAAuB;IACtC,wEAAwE;IACxE,GAAG,EAAE,MAAM,CAAC;IACZ,0EAA0E;IAC1E,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC;AAED,kFAAkF;AAClF,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,wEAAwE;IACxE,QAAQ,CAAC,IAAI,+BAA+B;;CAK7C;AAsED,mFAAmF;AACnF,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,uBAAuB,GAC/B,cAAc,CA6EhB"}
@@ -0,0 +1,134 @@
1
+ import "../server-only.js";
2
+ /** Malformed, unauthenticated, or undecryptable ciphertext. Contains no input. */
3
+ export class EncryptionDecryptionError extends Error {
4
+ /** Stable error name, independent of the decryption failure's cause. */
5
+ name = "EncryptionDecryptionError";
6
+ constructor() {
7
+ super("Unable to decrypt encrypted value.");
8
+ }
9
+ }
10
+ const envelopePrefix = "beignet:enc:v1:";
11
+ const ivLength = 12;
12
+ const tagLength = 16;
13
+ const encoder = new TextEncoder();
14
+ const decoder = new TextDecoder("utf-8", { fatal: true });
15
+ function encodeBase64(bytes) {
16
+ // Bound each spread so large values do not overflow the argument stack.
17
+ const chunks = [];
18
+ for (let offset = 0; offset < bytes.length; offset += 8192) {
19
+ chunks.push(String.fromCharCode(...bytes.subarray(offset, offset + 8192)));
20
+ }
21
+ return btoa(chunks.join(""));
22
+ }
23
+ function decodeBase64(value) {
24
+ if (value.length % 4 !== 0 || !/^[A-Za-z0-9+/]*={0,2}$/.test(value)) {
25
+ throw new Error("Invalid Base64 encoding.");
26
+ }
27
+ const bytes = Uint8Array.from(atob(value), (character) => character.charCodeAt(0));
28
+ if (encodeBase64(bytes) !== value)
29
+ throw new Error("Noncanonical Base64 encoding.");
30
+ return bytes;
31
+ }
32
+ function decodeKey(value, label) {
33
+ try {
34
+ if (typeof value !== "string" ||
35
+ value.length !== 51 ||
36
+ !value.startsWith("base64:"))
37
+ throw new Error();
38
+ const bytes = decodeBase64(value.slice(7));
39
+ if (bytes.length !== 32)
40
+ throw new Error();
41
+ return bytes;
42
+ }
43
+ catch {
44
+ throw new TypeError(`${label} must be base64: followed by the Base64 encoding of 32 bytes. Use generateEncryptionKey().`);
45
+ }
46
+ }
47
+ function authenticatedData(context) {
48
+ if (context !== undefined &&
49
+ (context === null ||
50
+ typeof context !== "object" ||
51
+ (Object.getPrototypeOf(context) !== Object.prototype &&
52
+ Object.getPrototypeOf(context) !== null))) {
53
+ throw new TypeError("Encryption context must be a plain record of strings.");
54
+ }
55
+ const entries = Object.entries(context ?? {}).sort(([left], [right]) => left < right ? -1 : left > right ? 1 : 0);
56
+ if (entries.some(([, value]) => typeof value !== "string")) {
57
+ throw new TypeError("Encryption context values must be strings.");
58
+ }
59
+ return encoder.encode(JSON.stringify([envelopePrefix, entries]));
60
+ }
61
+ /** Generate a new 256-bit key. Store it in a server secret store; never log it. */
62
+ export function generateEncryptionKey() {
63
+ return `base64:${encodeBase64(crypto.getRandomValues(new Uint8Array(32)))}`;
64
+ }
65
+ /**
66
+ * Create authenticated string encryption using Web Crypto AES-256-GCM.
67
+ * Configuration is validated synchronously. Each write uses a random 96-bit IV
68
+ * and a 128-bit authentication tag. Previous keys are used only for reads.
69
+ * No environment variables are read and no plaintext, keys, or context are logged.
70
+ */
71
+ export function createEncryption(options) {
72
+ const current = decodeKey(options?.key, "Encryption key");
73
+ if (options.previousKeys !== undefined &&
74
+ !Array.isArray(options.previousKeys)) {
75
+ throw new TypeError("Encryption previousKeys must be an array of keys.");
76
+ }
77
+ const rawKeys = [
78
+ current,
79
+ ...Array.from(options.previousKeys ?? [], (key, index) => decodeKey(key, `Encryption previousKeys[${index}]`)),
80
+ ];
81
+ const importedKeys = [];
82
+ const getKey = (index) => {
83
+ const existing = importedKeys[index];
84
+ if (existing)
85
+ return existing;
86
+ const imported = crypto.subtle.importKey("raw", rawKeys[index], "AES-GCM", false, ["encrypt", "decrypt"]);
87
+ importedKeys[index] = imported;
88
+ return imported;
89
+ };
90
+ return {
91
+ async encrypt({ value, context }) {
92
+ if (typeof value !== "string")
93
+ throw new TypeError("Encryption value must be a string.");
94
+ const additionalData = authenticatedData(context);
95
+ const iv = crypto.getRandomValues(new Uint8Array(ivLength));
96
+ const ciphertext = new Uint8Array(await crypto.subtle.encrypt({ name: "AES-GCM", iv, additionalData, tagLength: tagLength * 8 }, await getKey(0),
97
+ // JSON preserves all JavaScript strings, including lone UTF-16 surrogates.
98
+ encoder.encode(JSON.stringify(value))));
99
+ const envelope = new Uint8Array(iv.length + ciphertext.length);
100
+ envelope.set(iv);
101
+ envelope.set(ciphertext, iv.length);
102
+ return `${envelopePrefix}${encodeBase64(envelope)}`;
103
+ },
104
+ async decrypt(options) {
105
+ try {
106
+ const { value, context } = options;
107
+ if (typeof value !== "string" || !value.startsWith(envelopePrefix))
108
+ throw new Error();
109
+ const envelope = decodeBase64(value.slice(envelopePrefix.length));
110
+ if (envelope.length < ivLength + tagLength + 2)
111
+ throw new Error();
112
+ const additionalData = authenticatedData(context);
113
+ const iv = envelope.slice(0, ivLength);
114
+ const ciphertext = envelope.slice(ivLength);
115
+ for (let index = 0; index < rawKeys.length; index++) {
116
+ try {
117
+ const plaintext = await crypto.subtle.decrypt({ name: "AES-GCM", iv, additionalData, tagLength: tagLength * 8 }, await getKey(index), ciphertext);
118
+ const parsed = JSON.parse(decoder.decode(plaintext));
119
+ if (typeof parsed === "string")
120
+ return parsed;
121
+ }
122
+ catch {
123
+ // Try only the configured key ring; never return unauthenticated data.
124
+ }
125
+ }
126
+ }
127
+ catch {
128
+ // All decryption failures share one non-sensitive public error.
129
+ }
130
+ throw new EncryptionDecryptionError();
131
+ },
132
+ };
133
+ }
134
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/encryption/index.ts"],"names":[],"mappings":"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"}