@nifrajs/core 2.2.0 → 2.4.0
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/README.md +2 -2
- package/dist/assurance.d.ts +48 -4
- package/dist/assurance.d.ts.map +1 -1
- package/dist/assurance.js +87 -9
- package/dist/assurance.js.map +1 -1
- package/dist/binary.d.ts +54 -0
- package/dist/binary.d.ts.map +1 -0
- package/dist/binary.js +90 -0
- package/dist/binary.js.map +1 -0
- package/dist/budget.d.ts +1 -1
- package/dist/budget.js +1 -1
- package/dist/capabilities.d.ts +19 -2
- package/dist/capabilities.d.ts.map +1 -1
- package/dist/capabilities.js +60 -8
- package/dist/capabilities.js.map +1 -1
- package/dist/classification.d.ts +1 -1
- package/dist/classification.js +1 -1
- package/dist/diff.d.ts +6 -6
- package/dist/diff.js +6 -6
- package/dist/durable-adapters.d.ts.map +1 -1
- package/dist/durable-adapters.js +36 -70
- package/dist/durable-adapters.js.map +1 -1
- package/dist/durable-execution.d.ts +2 -2
- package/dist/durable-execution.js +2 -2
- package/dist/idempotency.d.ts +3 -3
- package/dist/idempotency.js +4 -4
- package/dist/index.d.ts +3 -3
- package/dist/index.js +3 -3
- package/dist/internal/brand.d.ts +1 -1
- package/dist/internal/brand.js +1 -1
- package/dist/internal/route-catalog.d.ts +58 -0
- package/dist/internal/route-catalog.d.ts.map +1 -0
- package/dist/internal/route-catalog.js +58 -0
- package/dist/internal/route-catalog.js.map +1 -0
- package/dist/internal/route-execution.d.ts +75 -0
- package/dist/internal/route-execution.d.ts.map +1 -0
- package/dist/internal/route-execution.js +2 -0
- package/dist/internal/route-execution.js.map +1 -0
- package/dist/internal/same-origin.d.ts +29 -0
- package/dist/internal/same-origin.d.ts.map +1 -0
- package/dist/internal/same-origin.js +47 -0
- package/dist/internal/same-origin.js.map +1 -0
- package/dist/internal/secret.d.ts +1 -1
- package/dist/internal/secret.js +1 -1
- package/dist/ledger.d.ts +9 -9
- package/dist/ledger.js +5 -5
- package/dist/reflection.d.ts +1 -1
- package/dist/router/pattern.d.ts +9 -0
- package/dist/router/pattern.d.ts.map +1 -1
- package/dist/router/pattern.js +13 -4
- package/dist/router/pattern.js.map +1 -1
- package/dist/router/router.js +3 -3
- package/dist/schema/standard.d.ts +2 -2
- package/dist/schema/standard.js +2 -2
- package/dist/seo.d.ts +3 -3
- package/dist/seo.js +4 -4
- package/dist/server/body.d.ts +2 -2
- package/dist/server/body.js +2 -2
- package/dist/server/context.d.ts +18 -18
- package/dist/server/contract.d.ts +7 -7
- package/dist/server/contract.js +3 -3
- package/dist/server/cookies.d.ts +4 -4
- package/dist/server/cookies.js +8 -8
- package/dist/server/edge.d.ts +83 -0
- package/dist/server/edge.d.ts.map +1 -0
- package/dist/server/edge.js +71 -0
- package/dist/server/edge.js.map +1 -0
- package/dist/server/install.d.ts +2 -0
- package/dist/server/install.d.ts.map +1 -1
- package/dist/server/install.js +2 -0
- package/dist/server/install.js.map +1 -1
- package/dist/server/logger.d.ts +7 -7
- package/dist/server/logger.js +4 -4
- package/dist/server/registry.d.ts +5 -5
- package/dist/server/response-contract-lane.d.ts +91 -0
- package/dist/server/response-contract-lane.d.ts.map +1 -0
- package/dist/server/response-contract-lane.js +81 -0
- package/dist/server/response-contract-lane.js.map +1 -0
- package/dist/server/server.d.ts +52 -91
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +130 -186
- package/dist/server/server.js.map +1 -1
- package/dist/server/sse.d.ts +4 -4
- package/dist/server/sse.js +7 -7
- package/dist/server/webhook.d.ts +1 -1
- package/dist/server/webhook.js +5 -5
- package/dist/server/websocket.d.ts +19 -19
- package/dist/server/websocket.js +9 -9
- package/dist/server/ws-bun.d.ts +4 -4
- package/dist/server/ws-bun.js +3 -3
- package/dist/server.d.ts +3 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +3 -1
- package/dist/server.js.map +1 -1
- package/dist/transport-codec.d.ts +12 -0
- package/dist/transport-codec.d.ts.map +1 -1
- package/dist/transport-codec.js +19 -4
- package/dist/transport-codec.js.map +1 -1
- package/package.json +12 -2
- package/src/assurance.ts +154 -8
- package/src/binary.ts +128 -0
- package/src/budget.ts +1 -1
- package/src/capabilities.ts +71 -9
- package/src/classification.ts +1 -1
- package/src/diff.ts +8 -8
- package/src/durable-adapters.ts +40 -70
- package/src/durable-execution.ts +2 -2
- package/src/idempotency.ts +4 -4
- package/src/index.ts +3 -3
- package/src/internal/brand.ts +1 -1
- package/src/internal/route-catalog.ts +94 -0
- package/src/internal/route-execution.ts +106 -0
- package/src/internal/same-origin.ts +43 -0
- package/src/internal/secret.ts +1 -1
- package/src/ledger.ts +11 -11
- package/src/reflection.ts +1 -1
- package/src/router/pattern.ts +16 -4
- package/src/router/router.ts +5 -5
- package/src/schema/standard.ts +2 -2
- package/src/seo.ts +6 -6
- package/src/server/body.ts +2 -2
- package/src/server/context.ts +18 -18
- package/src/server/contract.ts +13 -13
- package/src/server/cookies.ts +8 -8
- package/src/server/edge.ts +150 -0
- package/src/server/install.ts +5 -0
- package/src/server/logger.ts +8 -8
- package/src/server/registry.ts +5 -5
- package/src/server/response-contract-lane.ts +164 -0
- package/src/server/server.ts +159 -366
- package/src/server/sse.ts +11 -11
- package/src/server/webhook.ts +5 -5
- package/src/server/websocket.ts +22 -22
- package/src/server/ws-bun.ts +4 -4
- package/src/server.ts +8 -5
- package/src/transport-codec.ts +24 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"durable-adapters.js","sourceRoot":"","sources":["../src/durable-adapters.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"durable-adapters.js","sourceRoot":"","sources":["../src/durable-adapters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Durable capability execution primitives. This subpath is opt-in so the bare HTTP runtime stays
|
|
3
3
|
* lean. Approval and journal records are token-only. Saga input, results, and compensation arguments
|
|
4
|
-
* intentionally live only in the caller-supplied durable saga store
|
|
5
|
-
* telemetry
|
|
4
|
+
* intentionally live only in the caller-supplied durable saga store - never in the effect ledger or
|
|
5
|
+
* telemetry - and production stores should encrypt them according to the application's data policy.
|
|
6
6
|
*/
|
|
7
7
|
import { type EffectLifecycleObserver } from "./effect-lifecycle.js";
|
|
8
8
|
import type { CapabilityApprovalGate, CapabilityExecutionIdentity, CapabilityExecutionJournal } from "./internal/capability-runtime.js";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Durable capability execution primitives. This subpath is opt-in so the bare HTTP runtime stays
|
|
3
3
|
* lean. Approval and journal records are token-only. Saga input, results, and compensation arguments
|
|
4
|
-
* intentionally live only in the caller-supplied durable saga store
|
|
5
|
-
* telemetry
|
|
4
|
+
* intentionally live only in the caller-supplied durable saga store - never in the effect ledger or
|
|
5
|
+
* telemetry - and production stores should encrypt them according to the application's data policy.
|
|
6
6
|
*/
|
|
7
7
|
import { emitEffectLifecycle } from "./effect-lifecycle.js";
|
|
8
8
|
import { createEffectScope } from "./effect-scope.js";
|
package/dist/idempotency.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Idempotency primitive. A mutating route can declare `schema.idempotency`; the server then dedupes
|
|
3
3
|
* on an `Idempotency-Key` header: the first request runs and its response is stored, and a retry with
|
|
4
4
|
* the same key replays the stored response byte-for-byte without re-running the handler. A retry that
|
|
5
|
-
* reuses a key with a *different* request body is rejected (409)
|
|
5
|
+
* reuses a key with a *different* request body is rejected (409) - a key binds to one request.
|
|
6
6
|
*
|
|
7
7
|
* This module is the runtime-neutral core: the store interface, an in-memory store, the request
|
|
8
8
|
* fingerprint, and response (de)serialization. The server owns the request-path lane that reads the
|
|
@@ -89,7 +89,7 @@ export declare function validIdempotencyKey(key: string): boolean;
|
|
|
89
89
|
export declare function validIdempotencyNamespace(namespace: string): boolean;
|
|
90
90
|
/**
|
|
91
91
|
* SHA-256 fingerprint binding a key to one request: method, path (+ query), and the raw body bytes.
|
|
92
|
-
* A collision-resistant hash matters
|
|
92
|
+
* A collision-resistant hash matters - a weak hash would let a crafted body replay another's response.
|
|
93
93
|
*/
|
|
94
94
|
export declare function computeIdempotencyFingerprint(method: string, path: string, body: Uint8Array, contentType?: string): Promise<string>;
|
|
95
95
|
/** Canonicalize JSON bodies so whitespace/property-order retries bind to the same semantic request. */
|
|
@@ -113,7 +113,7 @@ export interface MemoryIdempotencyStoreOptions {
|
|
|
113
113
|
readonly maxEntries?: number;
|
|
114
114
|
}
|
|
115
115
|
/**
|
|
116
|
-
* In-process idempotency store. Reservation is atomic by construction
|
|
116
|
+
* In-process idempotency store. Reservation is atomic by construction - `begin` never awaits, so the
|
|
117
117
|
* single-threaded event loop serializes concurrent callers for one key. Expired entries are treated
|
|
118
118
|
* as absent (lazy eviction on access); a periodic {@link MemoryIdempotencyStore.sweep} bounds memory.
|
|
119
119
|
*/
|
package/dist/idempotency.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Idempotency primitive. A mutating route can declare `schema.idempotency`; the server then dedupes
|
|
3
3
|
* on an `Idempotency-Key` header: the first request runs and its response is stored, and a retry with
|
|
4
4
|
* the same key replays the stored response byte-for-byte without re-running the handler. A retry that
|
|
5
|
-
* reuses a key with a *different* request body is rejected (409)
|
|
5
|
+
* reuses a key with a *different* request body is rejected (409) - a key binds to one request.
|
|
6
6
|
*
|
|
7
7
|
* This module is the runtime-neutral core: the store interface, an in-memory store, the request
|
|
8
8
|
* fingerprint, and response (de)serialization. The server owns the request-path lane that reads the
|
|
@@ -58,7 +58,7 @@ export function validIdempotencyNamespace(namespace) {
|
|
|
58
58
|
const encoder = new TextEncoder();
|
|
59
59
|
/**
|
|
60
60
|
* SHA-256 fingerprint binding a key to one request: method, path (+ query), and the raw body bytes.
|
|
61
|
-
* A collision-resistant hash matters
|
|
61
|
+
* A collision-resistant hash matters - a weak hash would let a crafted body replay another's response.
|
|
62
62
|
*/
|
|
63
63
|
export async function computeIdempotencyFingerprint(method, path, body, contentType = "") {
|
|
64
64
|
const mediaType = contentType.split(";", 1)[0]?.trim().toLowerCase() ?? "";
|
|
@@ -206,12 +206,12 @@ export function responseFromStored(stored, options = {}) {
|
|
|
206
206
|
const headers = new Headers(replaySafeHeaders(stored.headers));
|
|
207
207
|
headers.set(IDEMPOTENT_REPLAY_HEADER, "1");
|
|
208
208
|
// Reference the Response body type structurally: `BodyInit` isn't a named type under every lib config,
|
|
209
|
-
// but a fresh `Uint8Array` is a valid body
|
|
209
|
+
// but a fresh `Uint8Array` is a valid body - the cast bridges the `ArrayBufferLike` generic variance.
|
|
210
210
|
const body = (stored.body === "" ? null : base64ToBytes(stored.body));
|
|
211
211
|
return new Response(body, { status: stored.status, headers });
|
|
212
212
|
}
|
|
213
213
|
/**
|
|
214
|
-
* In-process idempotency store. Reservation is atomic by construction
|
|
214
|
+
* In-process idempotency store. Reservation is atomic by construction - `begin` never awaits, so the
|
|
215
215
|
* single-threaded event loop serializes concurrent callers for one key. Expired entries are treated
|
|
216
216
|
* as absent (lazy eviction on access); a periodic {@link MemoryIdempotencyStore.sweep} bounds memory.
|
|
217
217
|
*/
|
package/dist/index.d.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `@nifrajs/core`
|
|
2
|
+
* `@nifrajs/core` - Nifra's lean HTTP server API.
|
|
3
3
|
*
|
|
4
4
|
* Nifra 2.0 keeps the package root intentionally lean. Optional systems live at documented
|
|
5
5
|
* subpaths so importing the root cannot activate unrelated runtimes.
|
|
6
6
|
*/
|
|
7
7
|
/**
|
|
8
|
-
* Current package version. A hardcoded literal on purpose
|
|
8
|
+
* Current package version. A hardcoded literal on purpose - core runs on the edge (no fs), so it can't
|
|
9
9
|
* read its own package.json at runtime. `scripts/version.ts` rewrites it on every release bump and
|
|
10
10
|
* `check:publish` asserts it equals `@nifrajs/core`'s package version.
|
|
11
11
|
*/
|
|
12
|
-
export declare const VERSION: "2.
|
|
12
|
+
export declare const VERSION: "2.4.0";
|
|
13
13
|
export type Version = typeof VERSION;
|
|
14
14
|
export * from "./server.js";
|
|
15
15
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `@nifrajs/core`
|
|
2
|
+
* `@nifrajs/core` - Nifra's lean HTTP server API.
|
|
3
3
|
*
|
|
4
4
|
* Nifra 2.0 keeps the package root intentionally lean. Optional systems live at documented
|
|
5
5
|
* subpaths so importing the root cannot activate unrelated runtimes.
|
|
6
6
|
*/
|
|
7
7
|
/**
|
|
8
|
-
* Current package version. A hardcoded literal on purpose
|
|
8
|
+
* Current package version. A hardcoded literal on purpose - core runs on the edge (no fs), so it can't
|
|
9
9
|
* read its own package.json at runtime. `scripts/version.ts` rewrites it on every release bump and
|
|
10
10
|
* `check:publish` asserts it equals `@nifrajs/core`'s package version.
|
|
11
11
|
*/
|
|
12
|
-
export const VERSION = "2.
|
|
12
|
+
export const VERSION = "2.4.0";
|
|
13
13
|
export * from "./server.js";
|
|
14
14
|
//# sourceMappingURL=index.js.map
|
package/dist/internal/brand.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Every developer-facing string (error prefixes, the default OpenAPI title, the
|
|
5
5
|
* logger tag) pulls from here, so renaming the brand is a one-line change. The
|
|
6
|
-
* npm scope (`@nifrajs/*`) is the other naming axis
|
|
6
|
+
* npm scope (`@nifrajs/*`) is the other naming axis - `scripts/rename.ts` flips
|
|
7
7
|
* both at once.
|
|
8
8
|
*/
|
|
9
9
|
export declare const FRAMEWORK_NAME: "Nifra";
|
package/dist/internal/brand.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Every developer-facing string (error prefixes, the default OpenAPI title, the
|
|
5
5
|
* logger tag) pulls from here, so renaming the brand is a one-line change. The
|
|
6
|
-
* npm scope (`@nifrajs/*`) is the other naming axis
|
|
6
|
+
* npm scope (`@nifrajs/*`) is the other naming axis - `scripts/rename.ts` flips
|
|
7
7
|
* both at once.
|
|
8
8
|
*/
|
|
9
9
|
export const FRAMEWORK_NAME = "Nifra";
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The app's route table: one canonical fact per registered route, and the router built over them.
|
|
3
|
+
*
|
|
4
|
+
* ## Why this is not in the server kernel
|
|
5
|
+
*
|
|
6
|
+
* Nothing here knows what a `Server` is. It owns matching, reflection, assurance and native-compilation
|
|
7
|
+
* input, and the kernel holds one instance - which is the whole relationship. The reason it lived in
|
|
8
|
+
* `server.ts` is that `RouteEntry` used to be declared there, and until that vocabulary moved to
|
|
9
|
+
* `internal/` this could not be split out without exporting the engine's internals as public types.
|
|
10
|
+
*
|
|
11
|
+
* ## Why this costs the request path nothing
|
|
12
|
+
*
|
|
13
|
+
* Per-request code calls `this.catalog.find(...)`: a property load and a method call on an instance.
|
|
14
|
+
* Which module DECLARED the class does not enter into that. The only cross-module operation is the
|
|
15
|
+
* `new RouteCatalog()` in the server's constructor, once per server; every other method here runs at
|
|
16
|
+
* registration.
|
|
17
|
+
*/
|
|
18
|
+
import type { CompiledRoutePattern } from "../router/pattern.js";
|
|
19
|
+
import { type Method, type RouterMatch } from "../router/router.js";
|
|
20
|
+
import type { RouteDescriptor } from "../server/server-types.js";
|
|
21
|
+
import type { AssuranceDeclaration } from "./route-assurance.js";
|
|
22
|
+
import type { RouteEntry } from "./route-execution.js";
|
|
23
|
+
/** One canonical runtime route fact. The catalog owns matching, reflection, assurance, tool metadata,
|
|
24
|
+
* replay, and native compilation input so batch registration has one commit point. */
|
|
25
|
+
export interface CatalogRoute {
|
|
26
|
+
readonly method: Method;
|
|
27
|
+
readonly path: string;
|
|
28
|
+
readonly pattern: CompiledRoutePattern;
|
|
29
|
+
readonly entry: RouteEntry;
|
|
30
|
+
readonly descriptor: RouteDescriptor;
|
|
31
|
+
readonly assurance: readonly AssuranceDeclaration[];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Runtime route catalog. Single-route registration mutates directly; multi-route registration replays
|
|
35
|
+
* the existing catalog plus the candidate batch into a staged router, then swaps the complete state only
|
|
36
|
+
* after every route validates. Failed `implement()`/`merge()` batches therefore leave matching and
|
|
37
|
+
* reflection unchanged.
|
|
38
|
+
*
|
|
39
|
+
* Coverage note: this file reports 90% functions with every method exercised. `bun test --coverage`
|
|
40
|
+
* (1.3.14) counts one synthetic function per class that it never marks hit - a one-method class with a
|
|
41
|
+
* passing test for that method reports 50%. So 90 is this file's ceiling, not a missing test; do not go
|
|
42
|
+
* looking for the tenth function.
|
|
43
|
+
*/
|
|
44
|
+
export declare class RouteCatalog {
|
|
45
|
+
private matcher;
|
|
46
|
+
private records;
|
|
47
|
+
/** Allocation-free reflection view for the common no-assurance case. Derived only at commit time. */
|
|
48
|
+
private descriptors;
|
|
49
|
+
private assurancePresent;
|
|
50
|
+
add(route: CatalogRoute): void;
|
|
51
|
+
addBatch(routes: readonly CatalogRoute[]): void;
|
|
52
|
+
find(method: string, path: string): RouterMatch<RouteEntry>;
|
|
53
|
+
entries(): readonly CatalogRoute[];
|
|
54
|
+
routeDescriptors(): ReadonlyArray<RouteDescriptor>;
|
|
55
|
+
lastDescriptor(): RouteDescriptor | undefined;
|
|
56
|
+
hasAssurance(): boolean;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=route-catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-catalog.d.ts","sourceRoot":"","sources":["../../src/internal/route-catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,EAAE,KAAK,MAAM,EAAU,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEtD;sFACsF;AACtF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAA;IACtC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAA;IACpC,QAAQ,CAAC,SAAS,EAAE,SAAS,oBAAoB,EAAE,CAAA;CACpD;AAED;;;;;;;;;;GAUG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,OAAO,CAAqB;IACpC,qGAAqG;IACrG,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,gBAAgB,CAAQ;IAEhC,GAAG,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAO9B,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,IAAI;IAe/C,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC;IAI3D,OAAO,IAAI,SAAS,YAAY,EAAE;IAIlC,gBAAgB,IAAI,aAAa,CAAC,eAAe,CAAC;IAIlD,cAAc,IAAI,eAAe,GAAG,SAAS;IAI7C,YAAY,IAAI,OAAO;CAGxB"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Router } from "../router/router.js";
|
|
2
|
+
/**
|
|
3
|
+
* Runtime route catalog. Single-route registration mutates directly; multi-route registration replays
|
|
4
|
+
* the existing catalog plus the candidate batch into a staged router, then swaps the complete state only
|
|
5
|
+
* after every route validates. Failed `implement()`/`merge()` batches therefore leave matching and
|
|
6
|
+
* reflection unchanged.
|
|
7
|
+
*
|
|
8
|
+
* Coverage note: this file reports 90% functions with every method exercised. `bun test --coverage`
|
|
9
|
+
* (1.3.14) counts one synthetic function per class that it never marks hit - a one-method class with a
|
|
10
|
+
* passing test for that method reports 50%. So 90 is this file's ceiling, not a missing test; do not go
|
|
11
|
+
* looking for the tenth function.
|
|
12
|
+
*/
|
|
13
|
+
export class RouteCatalog {
|
|
14
|
+
matcher = new Router();
|
|
15
|
+
records = [];
|
|
16
|
+
/** Allocation-free reflection view for the common no-assurance case. Derived only at commit time. */
|
|
17
|
+
descriptors = [];
|
|
18
|
+
assurancePresent = false;
|
|
19
|
+
add(route) {
|
|
20
|
+
this.matcher.add(route.method, route.pattern, route.entry);
|
|
21
|
+
this.records.push(route);
|
|
22
|
+
this.descriptors.push(route.descriptor);
|
|
23
|
+
if (route.assurance.length > 0)
|
|
24
|
+
this.assurancePresent = true;
|
|
25
|
+
}
|
|
26
|
+
addBatch(routes) {
|
|
27
|
+
if (routes.length === 0)
|
|
28
|
+
return;
|
|
29
|
+
const nextRecords = this.records.concat(routes);
|
|
30
|
+
const nextDescriptors = this.descriptors.concat(routes.map(({ descriptor }) => descriptor));
|
|
31
|
+
const nextAssurancePresent = this.assurancePresent || routes.some((route) => route.assurance.length > 0);
|
|
32
|
+
const staged = new Router();
|
|
33
|
+
for (const route of this.records)
|
|
34
|
+
staged.add(route.method, route.pattern, route.entry);
|
|
35
|
+
for (const route of routes)
|
|
36
|
+
staged.add(route.method, route.pattern, route.entry);
|
|
37
|
+
this.matcher = staged;
|
|
38
|
+
this.records = nextRecords;
|
|
39
|
+
this.descriptors = nextDescriptors;
|
|
40
|
+
this.assurancePresent = nextAssurancePresent;
|
|
41
|
+
}
|
|
42
|
+
find(method, path) {
|
|
43
|
+
return this.matcher.find(method, path);
|
|
44
|
+
}
|
|
45
|
+
entries() {
|
|
46
|
+
return this.records;
|
|
47
|
+
}
|
|
48
|
+
routeDescriptors() {
|
|
49
|
+
return this.descriptors;
|
|
50
|
+
}
|
|
51
|
+
lastDescriptor() {
|
|
52
|
+
return this.records[this.records.length - 1]?.descriptor;
|
|
53
|
+
}
|
|
54
|
+
hasAssurance() {
|
|
55
|
+
return this.assurancePresent;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=route-catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-catalog.js","sourceRoot":"","sources":["../../src/internal/route-catalog.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAe,MAAM,EAAoB,MAAM,qBAAqB,CAAA;AAgB3E;;;;;;;;;;GAUG;AACH,MAAM,OAAO,YAAY;IACf,OAAO,GAAG,IAAI,MAAM,EAAc,CAAA;IAClC,OAAO,GAAmB,EAAE,CAAA;IACpC,qGAAqG;IAC7F,WAAW,GAAsB,EAAE,CAAA;IACnC,gBAAgB,GAAG,KAAK,CAAA;IAEhC,GAAG,CAAC,KAAmB;QACrB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QAC1D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACxB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QACvC,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;IAC9D,CAAC;IAED,QAAQ,CAAC,MAA+B;QACtC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;QAC3F,MAAM,oBAAoB,GACxB,IAAI,CAAC,gBAAgB,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAC7E,MAAM,MAAM,GAAG,IAAI,MAAM,EAAc,CAAA;QACvC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QACtF,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QAChF,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QACrB,IAAI,CAAC,OAAO,GAAG,WAAW,CAAA;QAC1B,IAAI,CAAC,WAAW,GAAG,eAAe,CAAA;QAClC,IAAI,CAAC,gBAAgB,GAAG,oBAAoB,CAAA;IAC9C,CAAC;IAED,IAAI,CAAC,MAAc,EAAE,IAAY;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACxC,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,UAAU,CAAA;IAC1D,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,gBAAgB,CAAA;IAC9B,CAAC;CACF"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a compiled route IS, and the registration-time decision that produces it.
|
|
3
|
+
*
|
|
4
|
+
* ## Why this is not in the server kernel
|
|
5
|
+
*
|
|
6
|
+
* `compileExecutionPlan` is BOOT work: it runs from `register`/`registerBatch`, both gated by
|
|
7
|
+
* `assertConfigurable`, so nothing here is reachable once the server is serving. Moving it costs the
|
|
8
|
+
* request path nothing - per-request code still calls the same frozen `run` closure it always did.
|
|
9
|
+
*
|
|
10
|
+
* ## Why `internal/`
|
|
11
|
+
*
|
|
12
|
+
* These types are the engine's vocabulary, not the package's API. They lived in `server.ts`, which IS
|
|
13
|
+
* published as `./server`, so every attempt to split the kernel had the same choice: export the engine's
|
|
14
|
+
* internals as public types, or not split. `internal/` is not a published subpath, so this moves the
|
|
15
|
+
* vocabulary somewhere it can be shared without becoming API. That is the step that unblocks the rest.
|
|
16
|
+
*
|
|
17
|
+
* The `Server` import is type-only and erased, so there is no runtime cycle back into the kernel.
|
|
18
|
+
*/
|
|
19
|
+
import type { RequestBudget } from "../budget.js";
|
|
20
|
+
import type { StandardSchemaV1 } from "../schema/standard.js";
|
|
21
|
+
import type { Platform, RouteSchema } from "../server/context.js";
|
|
22
|
+
import type { ResolvedIdempotency } from "../server/idempotency-lane.js";
|
|
23
|
+
import type { ResolvedEffectLedger } from "../server/ledger-lane.js";
|
|
24
|
+
import type { Registry } from "../server/registry.js";
|
|
25
|
+
import type { ResponseContractRuntime } from "../server/response-contract-lane.js";
|
|
26
|
+
import type { HandlerResult } from "../server/runtime-core.js";
|
|
27
|
+
import type { CtxSet, MaybePromise, RawContext, RequestSource, Server } from "../server/server.js";
|
|
28
|
+
export type InternalHandler = (ctx: RawContext) => MaybePromise<HandlerResult>;
|
|
29
|
+
/** A `derive` computes per-request context extensions; stored path-erased. */
|
|
30
|
+
export type RawDerive = (ctx: RawContext) => MaybePromise<object>;
|
|
31
|
+
export type RawBeforeHandle = (ctx: RawContext) => MaybePromise<unknown>;
|
|
32
|
+
export type RawAfterHandle = (result: unknown, ctx: RawContext) => MaybePromise<unknown>;
|
|
33
|
+
export type RawErrorHandler = (error: unknown, ctx: RawContext) => MaybePromise<unknown>;
|
|
34
|
+
export type RawAround = <T>(ctx: RawContext, next: () => MaybePromise<T>) => MaybePromise<T>;
|
|
35
|
+
export type RouteExecutionRunner = <T, R extends Registry, Ctx>(runtime: Server<R, Ctx>, entry: RouteEntry, source: RequestSource, params: Record<string, string>, search: string | undefined, signal: AbortSignal, budget: RequestBudget, platform: Platform | undefined, finalize: (result: unknown, set: CtxSet) => T, wrapResponse: (response: Response) => T) => MaybePromise<T>;
|
|
36
|
+
export type ContextRouteRunner = <T, R extends Registry, Ctx>(runtime: Server<R, Ctx>, entry: RouteEntry, source: RequestSource, ctx: RawContext, finalize: (result: unknown, set: CtxSet) => T, wrapResponse: (response: Response) => T) => MaybePromise<T>;
|
|
37
|
+
/** Registration-compiled route behavior. Every adapter invokes the same runner; the optional fused
|
|
38
|
+
* renderer is only a response-format specialization of that same selected route semantics. */
|
|
39
|
+
export interface RouteExecutionPlan {
|
|
40
|
+
readonly run: RouteExecutionRunner;
|
|
41
|
+
readonly fusedWeb: FusedWebRunner | undefined;
|
|
42
|
+
}
|
|
43
|
+
export interface RouteEntry {
|
|
44
|
+
readonly handler: InternalHandler;
|
|
45
|
+
readonly schema: RouteSchema | undefined;
|
|
46
|
+
/** Resolved idempotency config; `undefined` = off (the dedupe lane is never entered). */
|
|
47
|
+
readonly idempotent: ResolvedIdempotency | undefined;
|
|
48
|
+
/** Resolved effect-ledger wiring; `undefined` = off (no per-request ledger, no settle step). */
|
|
49
|
+
readonly ledgered: ResolvedEffectLedger | undefined;
|
|
50
|
+
/** The installed response-contract runtime paired with this route's declared schema, resolved once
|
|
51
|
+
* at registration; `undefined` = not checked (the default, and the only state in which the route can
|
|
52
|
+
* still take the fused/native lanes). */
|
|
53
|
+
readonly responseContract: {
|
|
54
|
+
readonly runtime: ResponseContractRuntime;
|
|
55
|
+
readonly schema: StandardSchemaV1;
|
|
56
|
+
} | undefined;
|
|
57
|
+
/** Per-request context extensions captured at registration (order-scoped). */
|
|
58
|
+
readonly derives: ReadonlyArray<RawDerive>;
|
|
59
|
+
/** Static context extensions captured at registration. */
|
|
60
|
+
readonly decorations: Record<PropertyKey, unknown>;
|
|
61
|
+
/** Whether {@link decorations} has any keys - precomputed so the hot path skips a no-op
|
|
62
|
+
* `Object.assign` on the (common) no-decoration route. */
|
|
63
|
+
readonly hasDecorations: boolean;
|
|
64
|
+
/** Lifecycle hooks captured at registration (order-scoped). */
|
|
65
|
+
readonly beforeHandle: ReadonlyArray<RawBeforeHandle>;
|
|
66
|
+
readonly afterHandle: ReadonlyArray<RawAfterHandle>;
|
|
67
|
+
readonly onError: ReadonlyArray<RawErrorHandler>;
|
|
68
|
+
/** Wraps the matched route lifecycle. Empty for the common no-around path. */
|
|
69
|
+
readonly around: ReadonlyArray<RawAround>;
|
|
70
|
+
/** The single immutable execution decision consumed by portable, Node-direct, and Bun-native paths. */
|
|
71
|
+
readonly execution: RouteExecutionPlan;
|
|
72
|
+
}
|
|
73
|
+
/** The fused Web lane: same inputs `routeAndRun` would hand the generic path, a `Response` out. */
|
|
74
|
+
export type FusedWebRunner = (source: RequestSource, params: Record<string, string>, search: string | undefined, signal: AbortSignal, budget: RequestBudget, platform: Platform | undefined, nativeContext: boolean) => MaybePromise<Response>;
|
|
75
|
+
//# sourceMappingURL=route-execution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-execution.d.ts","sourceRoot":"","sources":["../../src/internal/route-execution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAClF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAElG,MAAM,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,UAAU,KAAK,YAAY,CAAC,aAAa,CAAC,CAAA;AAE9E,8EAA8E;AAC9E,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,UAAU,KAAK,YAAY,CAAC,MAAM,CAAC,CAAA;AACjE,MAAM,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,UAAU,KAAK,YAAY,CAAC,OAAO,CAAC,CAAA;AACxE,MAAM,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,KAAK,YAAY,CAAC,OAAO,CAAC,CAAA;AACxF,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,KAAK,YAAY,CAAC,OAAO,CAAC,CAAA;AACxF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,CAAA;AAE5F,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,EAAE,CAAC,SAAS,QAAQ,EAAE,GAAG,EAC5D,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,EACvB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAC9B,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC,EAC7C,YAAY,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,CAAC,KACpC,YAAY,CAAC,CAAC,CAAC,CAAA;AAEpB,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,EAAE,CAAC,SAAS,QAAQ,EAAE,GAAG,EAC1D,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,EACvB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,aAAa,EACrB,GAAG,EAAE,UAAU,EACf,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC,EAC7C,YAAY,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,CAAC,KACpC,YAAY,CAAC,CAAC,CAAC,CAAA;AAEpB;8FAC8F;AAC9F,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,GAAG,EAAE,oBAAoB,CAAA;IAClC,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAA;CAC9C;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAA;IACxC,yFAAyF;IACzF,QAAQ,CAAC,UAAU,EAAE,mBAAmB,GAAG,SAAS,CAAA;IACpD,gGAAgG;IAChG,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,GAAG,SAAS,CAAA;IACnD;;6CAEyC;IACzC,QAAQ,CAAC,gBAAgB,EACrB;QAAE,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,GAChF,SAAS,CAAA;IACb,8EAA8E;IAC9E,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAA;IAC1C,0DAA0D;IAC1D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IAClD;8DAC0D;IAC1D,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,+DAA+D;IAC/D,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,eAAe,CAAC,CAAA;IACrD,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,cAAc,CAAC,CAAA;IACnD,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,eAAe,CAAC,CAAA;IAChD,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,CAAA;IACzC,uGAAuG;IACvG,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAA;CACvC;AAED,mGAAmG;AACnG,MAAM,MAAM,cAAc,GAAG,CAC3B,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAC9B,aAAa,EAAE,OAAO,KACnB,YAAY,CAAC,QAAQ,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-execution.js","sourceRoot":"","sources":["../../src/internal/route-execution.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The same-origin test every browser-facing endpoint in Nifra uses.
|
|
3
|
+
*
|
|
4
|
+
* One owner, because there are two of these seams - the WebSocket handshake's CSWSH default and the
|
|
5
|
+
* server-function mount - and they answered differently for the same request. A browser that could
|
|
6
|
+
* open a socket was told its POST was cross-origin.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* True when `origin` is the request's own origin, as observed from inside a possibly-proxied server.
|
|
10
|
+
*
|
|
11
|
+
* The host must match exactly. The scheme must be equal or STRONGER on the Origin side, never weaker:
|
|
12
|
+
*
|
|
13
|
+
* - `https://app` page → `http://app` request URL: accepted. This is what every TLS-terminating
|
|
14
|
+
* proxy looks like from the origin server - Cloudflare, a tunnel, an ingress. The socket is plain
|
|
15
|
+
* HTTP, so `request.url` says `http:` while the browser correctly reports an `https:` page.
|
|
16
|
+
* - `http://app` page → `https://app` request URL: rejected. Nifra terminated TLS itself here, so a
|
|
17
|
+
* plaintext page on the same host is the downgrade an attacker would need and buys nothing real.
|
|
18
|
+
*
|
|
19
|
+
* Comparing full origins instead is not the stricter option, it is an outage: measured, it rejects
|
|
20
|
+
* every server-function POST behind a terminating proxy, while the cross-origin attacker it aims at
|
|
21
|
+
* was already rejected by the host comparison. Nifra deliberately does not read `X-Forwarded-Proto` -
|
|
22
|
+
* a forwarded header is attacker-controlled unless something upstream is proven to overwrite it - so
|
|
23
|
+
* the scheme in `request.url` is the socket's, not the browser's, and this asymmetry is how the two
|
|
24
|
+
* are reconciled without trusting a header.
|
|
25
|
+
*
|
|
26
|
+
* An unparseable Origin is not same-origin.
|
|
27
|
+
*/
|
|
28
|
+
export declare function isSameOriginRequest(origin: string, request: Request): boolean;
|
|
29
|
+
//# sourceMappingURL=same-origin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"same-origin.d.ts","sourceRoot":"","sources":["../../src/internal/same-origin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAc7E"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The same-origin test every browser-facing endpoint in Nifra uses.
|
|
3
|
+
*
|
|
4
|
+
* One owner, because there are two of these seams - the WebSocket handshake's CSWSH default and the
|
|
5
|
+
* server-function mount - and they answered differently for the same request. A browser that could
|
|
6
|
+
* open a socket was told its POST was cross-origin.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* True when `origin` is the request's own origin, as observed from inside a possibly-proxied server.
|
|
10
|
+
*
|
|
11
|
+
* The host must match exactly. The scheme must be equal or STRONGER on the Origin side, never weaker:
|
|
12
|
+
*
|
|
13
|
+
* - `https://app` page → `http://app` request URL: accepted. This is what every TLS-terminating
|
|
14
|
+
* proxy looks like from the origin server - Cloudflare, a tunnel, an ingress. The socket is plain
|
|
15
|
+
* HTTP, so `request.url` says `http:` while the browser correctly reports an `https:` page.
|
|
16
|
+
* - `http://app` page → `https://app` request URL: rejected. Nifra terminated TLS itself here, so a
|
|
17
|
+
* plaintext page on the same host is the downgrade an attacker would need and buys nothing real.
|
|
18
|
+
*
|
|
19
|
+
* Comparing full origins instead is not the stricter option, it is an outage: measured, it rejects
|
|
20
|
+
* every server-function POST behind a terminating proxy, while the cross-origin attacker it aims at
|
|
21
|
+
* was already rejected by the host comparison. Nifra deliberately does not read `X-Forwarded-Proto` -
|
|
22
|
+
* a forwarded header is attacker-controlled unless something upstream is proven to overwrite it - so
|
|
23
|
+
* the scheme in `request.url` is the socket's, not the browser's, and this asymmetry is how the two
|
|
24
|
+
* are reconciled without trusting a header.
|
|
25
|
+
*
|
|
26
|
+
* An unparseable Origin is not same-origin.
|
|
27
|
+
*/
|
|
28
|
+
export function isSameOriginRequest(origin, request) {
|
|
29
|
+
try {
|
|
30
|
+
const from = new URL(origin);
|
|
31
|
+
const own = new URL(request.url);
|
|
32
|
+
if (from.host !== own.host)
|
|
33
|
+
return false;
|
|
34
|
+
// Written out rather than ranked through a lookup table: a table is a shipped object, and there
|
|
35
|
+
// are exactly two schemes to order. Any other scheme on either side falls through to `false`,
|
|
36
|
+
// which is what refuses `Origin: null`, `file:` and webview schemes.
|
|
37
|
+
if (from.protocol === "https:")
|
|
38
|
+
return own.protocol === "https:" || own.protocol === "http:";
|
|
39
|
+
if (from.protocol === "http:")
|
|
40
|
+
return own.protocol === "http:";
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=same-origin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"same-origin.js","sourceRoot":"","sources":["../../src/internal/same-origin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,OAAgB;IAClE,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAA;QAC5B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAChC,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI;YAAE,OAAO,KAAK,CAAA;QACxC,gGAAgG;QAChG,8FAA8F;QAC9F,qEAAqE;QACrE,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAA;QAC5F,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO;YAAE,OAAO,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAA;QAC9D,OAAO,KAAK,CAAA;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Boot-time guard: reject an HMAC secret under 256 bits, loudly, at construction
|
|
2
|
+
* Boot-time guard: reject an HMAC secret under 256 bits, loudly, at construction - never at the
|
|
3
3
|
* first request. UTF-8 byte length (not char count), so a multibyte secret is measured honestly.
|
|
4
4
|
* The single source of truth for the framework's secret-strength floor; every HMAC entry point
|
|
5
5
|
* (signed cookies, `@nifrajs/auth` sessions, webhook verification, signed upload/image URLs) routes
|
package/dist/internal/secret.js
CHANGED
|
@@ -4,7 +4,7 @@ import { FRAMEWORK_NAME } from "./brand.js";
|
|
|
4
4
|
const MIN_SECRET_BYTES = 32;
|
|
5
5
|
const SECRET_ENCODER = new TextEncoder();
|
|
6
6
|
/**
|
|
7
|
-
* Boot-time guard: reject an HMAC secret under 256 bits, loudly, at construction
|
|
7
|
+
* Boot-time guard: reject an HMAC secret under 256 bits, loudly, at construction - never at the
|
|
8
8
|
* first request. UTF-8 byte length (not char count), so a multibyte secret is measured honestly.
|
|
9
9
|
* The single source of truth for the framework's secret-strength floor; every HMAC entry point
|
|
10
10
|
* (signed cookies, `@nifrajs/auth` sessions, webhook verification, signed upload/image URLs) routes
|