@astrale-os/sdk 0.1.7 → 0.1.9

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/dist/cli/run.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The `astrale-domain` CLI — dev | build | deploy.
2
+ * The `astrale-domain` CLI — dev | build | deploy | publish.
3
3
  *
4
4
  * Thin by design: it reads `astrale.config.ts`, resolves `envs[<env>] → params`
5
5
  * via the adapter, loads the env's secrets file, then drives `adapter.watch`
@@ -18,30 +18,35 @@
18
18
  * astrale-domain prod # = deploy prod
19
19
  * astrale-domain deploy <env> # any env key
20
20
  * astrale-domain build # rebuild spec only (placeholder URL)
21
- * astrale-domain publish [env] # = deploy [prod] then register the URL
21
+ * astrale-domain publish [env] # register the deployed URL in the admin catalog (NO deploy)
22
22
  *
23
- * `publish` (and the `--publish` tail-flag on deploy) deploys, then registers
24
- * the resulting URL in the admin catalog by SHELLING OUT to the operator CLI
25
- * (`astrale domain publish --origin --name --public-url`). Auth lives entirely
26
- * in that CLI this build tool never touches credentials; it just hands off the
27
- * fresh URL it alone knows. Requires `astrale` on PATH (the same CLI the deploy
28
- * footer already points you at for `domain install`).
23
+ * `publish` registers a domain's ALREADY-deployed URL in the admin catalog by
24
+ * SHELLING OUT to the operator CLI (`astrale domain publish --origin --name
25
+ * --public-url`); it does NOT deploy — run `prod` / `deploy <env>` first, or use
26
+ * `deploy --publish` to deploy AND register in one step. Standalone publish
27
+ * defaults the registered address to `https://<origin>` (what every fleet domain
28
+ * serves at); pass `--public-url` for workers.dev / split-host deploys. Auth
29
+ * lives entirely in the operator CLI — this build tool never touches
30
+ * credentials. Requires `astrale` on PATH (the same CLI the deploy footer
31
+ * already points you at for `domain install`).
29
32
  */
30
33
  import type { DeployConfig } from '../config/deploy';
31
34
  type ParsedArgs = {
32
- command: 'dev' | 'build' | 'deploy';
35
+ command: 'dev' | 'build' | 'deploy' | 'publish';
33
36
  env: string;
34
37
  watch: boolean;
35
38
  /** `--port <n>` (dev only) — overrides the env's local dev port. */
36
39
  port?: number;
37
40
  /** `--host <url>` (dev only) — public URL of a tunnel/proxy front: binds 0.0.0.0 + pins WORKER_URL. */
38
41
  host?: string;
39
- /** Register the deployed URL in the admin catalog (the `publish` command / `--publish` flag). */
42
+ /** `--publish` tail-flag on deploy/prod: ALSO register the freshly-deployed URL (deploy + register). */
40
43
  publish?: boolean;
41
- /** `--name <slug>` — registry name to publish under (default: package.json `name`). */
44
+ /** `--name <slug>` — registry name to publish under (default: the origin's first label, e.g. `ai-gateway`). */
42
45
  name?: string;
43
46
  /** `--install-by-default` — mark the published domain for install on every new instance. */
44
47
  installByDefault?: boolean;
48
+ /** `--public-url <url>` — (publish only) the address the catalog points at (default: `https://<origin>`). */
49
+ publicUrl?: string;
45
50
  };
46
51
  export declare function run(argv: readonly string[]): Promise<number>;
47
52
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAUH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAOpD,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAA;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,OAAO,CAAA;IACd,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,uGAAuG;IACvG,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,iGAAiG;IACjG,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,uFAAuF;IACvF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,4FAA4F;IAC5F,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,wBAAsB,GAAG,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAyIlE;AAqHD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,YAAY,CAAA;IACrB,GAAG,EAAE,MAAM,CAAA;IACX,4EAA4E;IAC5E,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,IAAI,CAAA;CACrB,GAAG,MAAM,IAAI,CAiFb;AAwGD,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,UAAU,CA6E7D"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAUH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAOpD,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAA;IAC/C,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,OAAO,CAAA;IACd,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,uGAAuG;IACvG,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,wGAAwG;IACxG,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,+GAA+G;IAC/G,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,4FAA4F;IAC5F,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,6GAA6G;IAC7G,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAsB,GAAG,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA6JlE;AAqHD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,YAAY,CAAA;IACrB,GAAG,EAAE,MAAM,CAAA;IACX,4EAA4E;IAC5E,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,IAAI,CAAA;CACrB,GAAG,MAAM,IAAI,CAiFb;AAwGD,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,UAAU,CAsF7D"}
package/dist/cli/run.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The `astrale-domain` CLI — dev | build | deploy.
2
+ * The `astrale-domain` CLI — dev | build | deploy | publish.
3
3
  *
4
4
  * Thin by design: it reads `astrale.config.ts`, resolves `envs[<env>] → params`
5
5
  * via the adapter, loads the env's secrets file, then drives `adapter.watch`
@@ -18,14 +18,17 @@
18
18
  * astrale-domain prod # = deploy prod
19
19
  * astrale-domain deploy <env> # any env key
20
20
  * astrale-domain build # rebuild spec only (placeholder URL)
21
- * astrale-domain publish [env] # = deploy [prod] then register the URL
21
+ * astrale-domain publish [env] # register the deployed URL in the admin catalog (NO deploy)
22
22
  *
23
- * `publish` (and the `--publish` tail-flag on deploy) deploys, then registers
24
- * the resulting URL in the admin catalog by SHELLING OUT to the operator CLI
25
- * (`astrale domain publish --origin --name --public-url`). Auth lives entirely
26
- * in that CLI this build tool never touches credentials; it just hands off the
27
- * fresh URL it alone knows. Requires `astrale` on PATH (the same CLI the deploy
28
- * footer already points you at for `domain install`).
23
+ * `publish` registers a domain's ALREADY-deployed URL in the admin catalog by
24
+ * SHELLING OUT to the operator CLI (`astrale domain publish --origin --name
25
+ * --public-url`); it does NOT deploy — run `prod` / `deploy <env>` first, or use
26
+ * `deploy --publish` to deploy AND register in one step. Standalone publish
27
+ * defaults the registered address to `https://<origin>` (what every fleet domain
28
+ * serves at); pass `--public-url` for workers.dev / split-host deploys. Auth
29
+ * lives entirely in the operator CLI — this build tool never touches
30
+ * credentials. Requires `astrale` on PATH (the same CLI the deploy footer
31
+ * already points you at for `domain install`).
29
32
  */
30
33
  import { spawn } from 'node:child_process';
31
34
  import { existsSync, readFileSync, watch as watchFs } from 'node:fs';
@@ -100,6 +103,24 @@ export async function run(argv) {
100
103
  info(`note: built at placeholder ${placeholderUrl} — its schemaHash differs from a deployed worker.`);
101
104
  return 0;
102
105
  }
106
+ if (parsed.command === 'publish') {
107
+ // Register the already-deployed URL in the admin catalog — NO deploy. The
108
+ // public address defaults to `https://<origin>` (the canonical custom-domain
109
+ // prod URL — what every fleet domain serves at); `--public-url` overrides it
110
+ // for workers.dev / split-host deploys. No adapter, secrets, or params: this
111
+ // only points the registry at an address the author already deployed.
112
+ const pkg = readPackageMeta(projectDir);
113
+ const name = parsed.name ?? def.origin.split('.')[0] ?? def.origin;
114
+ const url = parsed.publicUrl ?? `https://${def.origin}`;
115
+ info(`registering ${def.origin} → ${url} in the admin catalog (no deploy)`);
116
+ return await publishToAdmin({
117
+ origin: def.origin,
118
+ name,
119
+ url,
120
+ ...(pkg.description ? { description: pkg.description } : {}),
121
+ ...(parsed.installByDefault ? { installByDefault: true } : {}),
122
+ });
123
+ }
103
124
  const adapter = def.adapter;
104
125
  // CLI param overrides — applied over the env's params here AND re-applied by
105
126
  // the config hot-regen path, which re-resolves `adapter.params` from the
@@ -150,9 +171,10 @@ export async function run(argv) {
150
171
  if (parsed.publish) {
151
172
  const pkg = readPackageMeta(projectDir);
152
173
  // The registry `name` is a short catalog slug, distinct from the FQDN-like
153
- // `origin`. It isn't in the domain definition, so default to the project's
154
- // package.json `name`, then the origin's first label; `--name` overrides.
155
- const name = parsed.name ?? pkg.name ?? def.origin.split('.')[0] ?? def.origin;
174
+ // `origin` AND from the npm package name (`@scope/…` for a published domain —
175
+ // illegal as a catalog slug). Default to the origin's first label (the fleet
176
+ // convention, e.g. `ai-gateway`); `--name` overrides.
177
+ const name = parsed.name ?? def.origin.split('.')[0] ?? def.origin;
156
178
  return await publishToAdmin({
157
179
  origin: def.origin,
158
180
  name,
@@ -439,6 +461,7 @@ export function parseArgs(argv) {
439
461
  let port;
440
462
  let host;
441
463
  let name;
464
+ let publicUrl;
442
465
  const cleaned = [];
443
466
  for (let i = 0; i < rest.length; i++) {
444
467
  const a = rest[i];
@@ -467,6 +490,14 @@ export function parseArgs(argv) {
467
490
  else if (a.startsWith('--name=')) {
468
491
  name = a.slice('--name='.length);
469
492
  }
493
+ else if (a === '--public-url') {
494
+ publicUrl = rest[++i];
495
+ if (!publicUrl)
496
+ throw new Error('--public-url needs a value (the address the catalog points at)');
497
+ }
498
+ else if (a.startsWith('--public-url=')) {
499
+ publicUrl = a.slice('--public-url='.length);
500
+ }
470
501
  else {
471
502
  cleaned.push(a);
472
503
  }
@@ -496,13 +527,15 @@ export function parseArgs(argv) {
496
527
  return { command: 'deploy', env, watch, ...(publish ? { publish } : {}), ...pub };
497
528
  }
498
529
  case 'publish':
499
- // Sugar for `deploy [prod] --publish`: deploy, then register the URL.
530
+ // Register the ALREADY-deployed URL in the admin catalog NO deploy.
531
+ // (Use `deploy [env] --publish` to deploy AND register in one step.) The
532
+ // public address defaults to `https://<origin>`; `--public-url` overrides.
500
533
  return {
501
- command: 'deploy',
534
+ command: 'publish',
502
535
  env: positionals[0] ?? 'prod',
503
536
  watch: false,
504
- publish: true,
505
537
  ...pub,
538
+ ...(publicUrl !== undefined ? { publicUrl } : {}),
506
539
  };
507
540
  case 'build':
508
541
  // Spec-only — no env resolution happens on this path.
@@ -558,11 +591,12 @@ function printUsage(msg) {
558
591
  ` astrale-domain dev # deploy dev --watch (hot-reload, prints URL)\n` +
559
592
  ` astrale-domain prod # deploy prod\n` +
560
593
  ` astrale-domain deploy <env> # deploy any env key (--watch optional)\n` +
561
- ` astrale-domain publish [env] # deploy [prod], then register the URL in the admin catalog\n` +
594
+ ` astrale-domain publish [env] # register the already-deployed URL in the admin catalog (NO deploy)\n` +
562
595
  ` astrale-domain build # rebuild the diagnostic spec only\n` +
563
596
  `\nFlags:\n` +
564
- ` --publish # on deploy/prod: register the deployed URL (= the publish command)\n` +
565
- ` --name <slug> # registry name to publish under (default: package.json name)\n` +
597
+ ` --publish # on deploy/prod: ALSO register the deployed URL (deploy + register)\n` +
598
+ ` --name <slug> # registry name to publish under (default: the origin's first label)\n` +
599
+ ` --public-url <url> # (publish) address the catalog points at (default: https://<origin>)\n` +
566
600
  ` --install-by-default # mark the published domain for install on every new instance\n` +
567
601
  `\n publish shells out to \`astrale domain publish\` (needs \`astrale\` on PATH).\n\n`);
568
602
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"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"}
@@ -18,18 +18,21 @@
18
18
  import type { AuthPolicy, FunctionBinding } from '@astrale-os/kernel-api/routed';
19
19
  import type { FnMap } from '@astrale-os/kernel-client';
20
20
  import type { BoundClientSessionView } from '@astrale-os/kernel-client/session';
21
- import type { AuthContext } from '@astrale-os/kernel-core';
22
21
  import type { Context } from 'hono';
23
22
  import type { z } from 'zod';
24
23
  import type { CallRemoteFn } from '../dispatch/call-remote';
25
- import type { KernelForAuth } from '../method/context';
26
- export type RemoteFunctionContext<TParams, TDeps = unknown, TKernel = BoundClientSessionView<FnMap> | null> = {
24
+ import type { AuthForPolicy, KernelForAuth } from '../method/context';
25
+ export type RemoteFunctionContext<TParams, TDeps = unknown, TKernel = BoundClientSessionView<FnMap> | null, TAuth extends AuthPolicy = AuthPolicy> = {
27
26
  /** Validated params (Zod-checked against `inputSchema`). */
28
27
  params: TParams;
29
28
  /** Hono request context — escape hatch for headers, raw body, etc. */
30
29
  c: Context;
31
- /** Resolved auth context. `null` when `auth: 'public'` or absent. */
32
- auth: AuthContext | null;
30
+ /**
31
+ * Resolved auth context. Its nullability follows the function's `auth`
32
+ * policy: non-null for the default `'required'`, `... | null` for
33
+ * `'optional'`, and `null` for `'public'`.
34
+ */
35
+ auth: AuthForPolicy<TAuth>;
33
36
  /** Typed dependency container injected at server startup. */
34
37
  deps: TDeps;
35
38
  /**
@@ -83,15 +86,16 @@ export type RemoteFunctionDef<TParams = unknown, TResult = unknown, TDeps = unkn
83
86
  binding?: FunctionBinding;
84
87
  /**
85
88
  * Authentication policy. Defaults to `'required'`. Captured as a literal type
86
- * so it drives {@link KernelForAuth} on the `execute`/`authorize` context:
87
- * omit it (or `'required'`) `ctx.kernel` non-null; `'optional'` → `… | null`;
88
- * `'public'` `null` (webhooks reach the graph via `ctx.selfKernel`).
89
+ * so it drives `ctx.auth` and {@link KernelForAuth} on the
90
+ * `execute`/`authorize` context: omit it (or `'required'`) makes both
91
+ * non-null; `'optional'` widens them to `... | null`; `'public'` makes them
92
+ * `null` (webhooks reach the graph via `ctx.selfKernel`).
89
93
  */
90
94
  auth?: TAuth;
91
95
  /** Optional pre-execute authorization. Throw to deny. */
92
- authorize?: (ctx: RemoteFunctionContext<TParams, TDeps, KernelForAuth<TAuth>>) => void | Promise<void>;
96
+ authorize?: (ctx: RemoteFunctionContext<TParams, TDeps, KernelForAuth<TAuth>, TAuth>) => void | Promise<void>;
93
97
  /** The function body. May be async. */
94
- execute: (ctx: RemoteFunctionContext<TParams, TDeps, KernelForAuth<TAuth>>) => TResult | Promise<TResult>;
98
+ execute: (ctx: RemoteFunctionContext<TParams, TDeps, KernelForAuth<TAuth>, TAuth>) => TResult | Promise<TResult>;
95
99
  /** Optional human-readable description. */
96
100
  description?: string;
97
101
  };
@@ -1 +1 @@
1
- {"version":3,"file":"remote-function.d.ts","sourceRoot":"","sources":["../../src/define/remote-function.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAE5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,MAAM,MAAM,qBAAqB,CAC/B,OAAO,EACP,KAAK,GAAG,OAAO,EACf,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,GAAG,IAAI,IAC5C;IACF,4DAA4D;IAC5D,MAAM,EAAE,OAAO,CAAA;IACf,sEAAsE;IACtE,CAAC,EAAE,OAAO,CAAA;IACV,qEAAqE;IACrE,IAAI,EAAE,WAAW,GAAG,IAAI,CAAA;IACxB,6DAA6D;IAC7D,IAAI,EAAE,KAAK,CAAA;IACX;;;;;;;OAOG;IACH,MAAM,EAAE,OAAO,CAAA;IACf;;;;;OAKG;IACH,UAAU,EAAE,YAAY,CAAA;IACxB;;;;;;;;OAQG;IACH,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAA;CAC3E,CAAA;AAED,MAAM,MAAM,iBAAiB,CAC3B,OAAO,GAAG,OAAO,EACjB,OAAO,GAAG,OAAO,EACjB,KAAK,GAAG,OAAO,EACf,KAAK,SAAS,UAAU,GAAG,UAAU,IACnC;IACF;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,4CAA4C;IAC5C,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/B,wCAAwC;IACxC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAChC;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,yDAAyD;IACzD,SAAS,CAAC,EAAE,CACV,GAAG,EAAE,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,KAC7D,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzB,uCAAuC;IACvC,OAAO,EAAE,CACP,GAAG,EAAE,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,KAC7D,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAMD,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAA;AAE/E;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EACP,OAAO,EACP,KAAK,GAAG,OAAO,EACf,KAAK,SAAS,UAAU,GAAG,UAAU,EAErC,GAAG,EAAE,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,GACrD,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAEnD"}
1
+ {"version":3,"file":"remote-function.d.ts","sourceRoot":"","sources":["../../src/define/remote-function.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAE5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAErE,MAAM,MAAM,qBAAqB,CAC/B,OAAO,EACP,KAAK,GAAG,OAAO,EACf,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,GAAG,IAAI,EAC9C,KAAK,SAAS,UAAU,GAAG,UAAU,IACnC;IACF,4DAA4D;IAC5D,MAAM,EAAE,OAAO,CAAA;IACf,sEAAsE;IACtE,CAAC,EAAE,OAAO,CAAA;IACV;;;;OAIG;IACH,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;IAC1B,6DAA6D;IAC7D,IAAI,EAAE,KAAK,CAAA;IACX;;;;;;;OAOG;IACH,MAAM,EAAE,OAAO,CAAA;IACf;;;;;OAKG;IACH,UAAU,EAAE,YAAY,CAAA;IACxB;;;;;;;;OAQG;IACH,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAA;CAC3E,CAAA;AAED,MAAM,MAAM,iBAAiB,CAC3B,OAAO,GAAG,OAAO,EACjB,OAAO,GAAG,OAAO,EACjB,KAAK,GAAG,OAAO,EACf,KAAK,SAAS,UAAU,GAAG,UAAU,IACnC;IACF;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,4CAA4C;IAC5C,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/B,wCAAwC;IACxC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAChC;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,yDAAyD;IACzD,SAAS,CAAC,EAAE,CACV,GAAG,EAAE,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,KACpE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzB,uCAAuC;IACvC,OAAO,EAAE,CACP,GAAG,EAAE,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,KACpE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAMD,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAA;AAE/E;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EACP,OAAO,EACP,KAAK,GAAG,OAAO,EACf,KAAK,SAAS,UAAU,GAAG,UAAU,EAErC,GAAG,EAAE,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,GACrD,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAEnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"remote-function.js","sourceRoot":"","sources":["../../src/define/remote-function.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAyGH;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAMlC,GAAsD;IAEtD,OAAO,GAAG,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"remote-function.js","sourceRoot":"","sources":["../../src/define/remote-function.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AA8GH;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAMlC,GAAsD;IAEtD,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -20,10 +20,10 @@
20
20
  import type { AuthPolicy, FunctionBinding } from '@astrale-os/kernel-api/routed';
21
21
  import type { FnMap } from '@astrale-os/kernel-client';
22
22
  import type { BoundClientSessionView } from '@astrale-os/kernel-client/session';
23
- import type { AuthContext } from '@astrale-os/kernel-core';
24
23
  import type { EdgeEndpoint } from '@astrale-os/kernel-dsl';
25
24
  import type { Context } from 'hono';
26
- export type ViewRenderContext<TDeps = unknown> = {
25
+ import type { AuthForPolicy } from '../method/context';
26
+ export type ViewRenderContext<TDeps = unknown, TAuth extends AuthPolicy = AuthPolicy> = {
27
27
  /** Hono request context — read params, headers, query, etc. */
28
28
  c: Context;
29
29
  /**
@@ -32,8 +32,12 @@ export type ViewRenderContext<TDeps = unknown> = {
32
32
  * the binding has no placeholders.
33
33
  */
34
34
  params: Record<string, string>;
35
- /** Resolved auth context. `null` when `auth: 'public'` or absent. */
36
- auth: AuthContext | null;
35
+ /**
36
+ * Resolved auth context. Its nullability follows the View's `auth` policy:
37
+ * non-null for `'required'`, `... | null` for `'optional'`, and `null` for
38
+ * `'public'`.
39
+ */
40
+ auth: AuthForPolicy<TAuth>;
37
41
  /** Typed dependency container injected at server startup. */
38
42
  deps: TDeps;
39
43
  /**
@@ -45,7 +49,7 @@ export type ViewRenderContext<TDeps = unknown> = {
45
49
  */
46
50
  selfKernel: (kernelUrl?: string) => Promise<BoundClientSessionView<FnMap>>;
47
51
  };
48
- export type ViewDef<TDeps = unknown> = {
52
+ export type ViewDef<TDeps = unknown, TAuth extends AuthPolicy = AuthPolicy> = {
49
53
  /**
50
54
  * Override the binding (URL + route shape). When absent, SDK defaults to
51
55
  * `{ remoteUrl: ${url}/<viewsFolder>/<slug> }`. The HTTP verb (GET for
@@ -65,18 +69,18 @@ export type ViewDef<TDeps = unknown> = {
65
69
  */
66
70
  mount?: string;
67
71
  /** Authentication policy. Defaults to `'required'`. */
68
- auth?: AuthPolicy;
72
+ auth?: TAuth;
69
73
  /**
70
74
  * Optional pre-render authorization. Runs after auth resolution; throw to
71
75
  * deny. SDK wraps as 403.
72
76
  */
73
- authorize?: (ctx: ViewRenderContext<TDeps>) => void | Promise<void>;
77
+ authorize?: (ctx: ViewRenderContext<TDeps, TAuth>) => void | Promise<void>;
74
78
  /**
75
79
  * Render the iframe response. May return a redirect, a proxy, or inline
76
80
  * HTML. When omitted, no worker route is mounted — the binding URL
77
81
  * points elsewhere (CDN, external service).
78
82
  */
79
- render?: (ctx: ViewRenderContext<TDeps>) => Response | Promise<Response>;
83
+ render?: (ctx: ViewRenderContext<TDeps, TAuth>) => Response | Promise<Response>;
80
84
  /**
81
85
  * Optional target(s) the View attaches to via `view_for` edge(s). Typically
82
86
  * `selfOf(SomeClass)` to bind to a class meta-node, or a `CorePath`
@@ -92,5 +96,5 @@ export type ViewDef<TDeps = unknown> = {
92
96
  * `defineRemoteDomain` consumes the typed shape and the author retains
93
97
  * full type inference on `render` / `authorize`.
94
98
  */
95
- export declare function defineView<TDeps = unknown>(def: ViewDef<TDeps>): ViewDef<TDeps>;
99
+ export declare function defineView<TDeps = unknown, TAuth extends AuthPolicy = 'required'>(def: ViewDef<TDeps, TAuth>): ViewDef<TDeps, TAuth>;
96
100
  //# sourceMappingURL=view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/define/view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,MAAM,MAAM,iBAAiB,CAAC,KAAK,GAAG,OAAO,IAAI;IAC/C,+DAA+D;IAC/D,CAAC,EAAE,OAAO,CAAA;IACV;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B,qEAAqE;IACrE,IAAI,EAAE,WAAW,GAAG,IAAI,CAAA;IACxB,6DAA6D;IAC7D,IAAI,EAAE,KAAK,CAAA;IACX;;;;;;OAMG;IACH,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAA;CAC3E,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,KAAK,GAAG,OAAO,IAAI;IACrC;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,uDAAuD;IACvD,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACnE;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,KAAK,CAAC,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IACxE;;;;;OAKG;IACH,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAAA;IACvC,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,GAAG,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAE/E"}
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/define/view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,MAAM,MAAM,iBAAiB,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,SAAS,UAAU,GAAG,UAAU,IAAI;IACtF,+DAA+D;IAC/D,CAAC,EAAE,OAAO,CAAA;IACV;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B;;;;OAIG;IACH,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;IAC1B,6DAA6D;IAC7D,IAAI,EAAE,KAAK,CAAA;IACX;;;;;;OAMG;IACH,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAA;CAC3E,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,SAAS,UAAU,GAAG,UAAU,IAAI;IAC5E;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,uDAAuD;IACvD,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1E;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC/E;;;;;OAKG;IACH,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAAA;IACvC,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,SAAS,UAAU,GAAG,UAAU,EAC/E,GAAG,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,GACzB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAEvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/define/view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AA2EH;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAkB,GAAmB;IAC7D,OAAO,GAAG,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/define/view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAgFH;;;;GAIG;AACH,MAAM,UAAU,UAAU,CACxB,GAA0B;IAE1B,OAAO,GAAG,CAAA;AACZ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type { Kernel, KernelForAuth, RemoteContext, RemoteHandler, MethodImpl, ClassMethodsImpl, InterfaceMethodsImpl, SchemaMethodsImpl, } from './method';
1
+ export type { AuthForPolicy, Kernel, KernelForAuth, RemoteContext, RemoteHandler, MethodImpl, ClassMethodsImpl, InterfaceMethodsImpl, SchemaMethodsImpl, } from './method';
2
2
  export { remoteMethod, remoteClassMethods, remoteInterfaceMethods } from './method';
3
3
  export { defineDomain, deploy, defineAdapter } from './config';
4
4
  export type { ClientBinding, DefineDomainConfig, DomainDefinition, DeployConfig, AdapterSpec, DeployCtx, DeployResult, DomainAdapter, DomainInfo, WatchCtx, WatchHandle, } from './config';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,MAAM,EACN,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAOnF,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC9D,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,SAAS,EACT,YAAY,EACZ,aAAa,EACb,UAAU,EACV,QAAQ,EACR,WAAW,GACZ,MAAM,UAAU,CAAA;AAGjB,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAUnE,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAC3D,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAcpG,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,YAAY,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAGzC,YAAY,EACV,UAAU,EACV,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,UAAU,EACV,SAAS,EACT,UAAU,GACX,MAAM,+BAA+B,CAAA;AAGtC,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AACtE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAClF,YAAY,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACb,UAAU,EACV,UAAU,EACV,QAAQ,GACT,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAGnD,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,aAAa,EACb,MAAM,EACN,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAOnF,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC9D,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,SAAS,EACT,YAAY,EACZ,aAAa,EACb,UAAU,EACV,QAAQ,EACR,WAAW,GACZ,MAAM,UAAU,CAAA;AAGjB,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAUnE,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAC3D,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAcpG,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,YAAY,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAGzC,YAAY,EACV,UAAU,EACV,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,UAAU,EACV,SAAS,EACT,UAAU,GACX,MAAM,+BAA+B,CAAA;AAGtC,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AACtE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAClF,YAAY,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACb,UAAU,EACV,UAAU,EACV,QAAQ,GACT,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAGnD,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAEnF,4EAA4E;AAC5E,6EAA6E;AAC7E,+EAA+E;AAC/E,6EAA6E;AAC7E,qEAAqE;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAe9D,4EAA4E;AAC5E,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAEnE,4EAA4E;AAC5E,6EAA6E;AAC7E,4EAA4E;AAC5E,0EAA0E;AAC1E,6EAA6E;AAC7E,yEAAyE;AACzE,8EAA8E;AAC9E,wBAAwB;AACxB,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAG3D,4EAA4E;AAC5E,qFAAqF;AACrF,wEAAwE;AACxE,6EAA6E;AAC7E,wEAAwE;AACxE,yDAAyD;AAEzD,4EAA4E;AAC5E,yEAAyE;AACzE,4EAA4E;AAC5E,4EAA4E;AAC5E,6EAA6E;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAiB1C,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AASlF,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAEnD,4EAA4E;AAC5E,OAAO,EAAE,aAAa,EAA4B,MAAM,YAAY,CAAA;AACpE,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAEnF,4EAA4E;AAC5E,6EAA6E;AAC7E,+EAA+E;AAC/E,6EAA6E;AAC7E,qEAAqE;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAe9D,4EAA4E;AAC5E,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAEnE,4EAA4E;AAC5E,6EAA6E;AAC7E,4EAA4E;AAC5E,0EAA0E;AAC1E,6EAA6E;AAC7E,yEAAyE;AACzE,8EAA8E;AAC9E,wBAAwB;AACxB,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAG3D,4EAA4E;AAC5E,qFAAqF;AACrF,wEAAwE;AACxE,6EAA6E;AAC7E,wEAAwE;AACxE,yDAAyD;AAEzD,4EAA4E;AAC5E,yEAAyE;AACzE,4EAA4E;AAC5E,4EAA4E;AAC5E,6EAA6E;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAiB1C,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AASlF,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAEnD,4EAA4E;AAC5E,OAAO,EAAE,aAAa,EAA4B,MAAM,YAAY,CAAA;AACpE,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,YAAY,CAAA"}
@@ -34,11 +34,21 @@ export type Kernel = BoundClientSessionView<FnMap>;
34
34
  * pre-conditional behaviour.
35
35
  */
36
36
  export type KernelForAuth<TAuth extends AuthPolicy> = TAuth extends 'public' ? null : TAuth extends 'optional' ? Kernel | null : Kernel;
37
- export type RemoteContext<TParams, TSelf, TDeps, TKernel = Kernel | null> = {
37
+ /**
38
+ * The resolved auth context a handler receives, derived from its declared
39
+ * `auth` policy. Mirrors {@link KernelForAuth}: required methods have a
40
+ * verified auth context, optional/public methods encode the nullable cases.
41
+ */
42
+ export type AuthForPolicy<TAuth extends AuthPolicy> = TAuth extends 'public' ? null : TAuth extends 'optional' ? AuthContext | null : AuthContext;
43
+ export type RemoteContext<TParams, TSelf, TDeps, TKernel = Kernel | null, TAuth extends AuthPolicy = AuthPolicy> = {
38
44
  /** Validated params (Zod-checked against the method's `inputSchema`). */
39
45
  params: TParams;
40
- /** Auth context resolved from the inbound delegation credential. `null` for public or unauthenticated optional methods. */
41
- auth: AuthContext | null;
46
+ /**
47
+ * Auth context resolved from the inbound delegation credential. Its
48
+ * nullability follows the method's `auth` policy: non-null for the default
49
+ * `'required'`, `... | null` for `'optional'`, and `null` for `'public'`.
50
+ */
51
+ auth: AuthForPolicy<TAuth>;
42
52
  /** Bound node instance — `undefined` for static methods. */
43
53
  self: TSelf;
44
54
  /** Typed dependency container injected at server startup. */
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/method/context.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAE1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE3D;;;;;;;GAOG;AACH,MAAM,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAA;AAElD;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,UAAU,IAAI,KAAK,SAAS,QAAQ,GACxE,IAAI,GACJ,KAAK,SAAS,UAAU,GACtB,MAAM,GAAG,IAAI,GACb,MAAM,CAAA;AAEZ,MAAM,MAAM,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,IAAI;IAC1E,yEAAyE;IACzE,MAAM,EAAE,OAAO,CAAA;IACf,2HAA2H;IAC3H,IAAI,EAAE,WAAW,GAAG,IAAI,CAAA;IACxB,4DAA4D;IAC5D,IAAI,EAAE,KAAK,CAAA;IACX,6DAA6D;IAC7D,IAAI,EAAE,KAAK,CAAA;IACX,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAA;IACX;;;;;;;;OAQG;IACH,MAAM,EAAE,OAAO,CAAA;IACf;;;;;;;OAOG;IACH,UAAU,EAAE,YAAY,CAAA;CACzB,CAAA"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/method/context.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAE1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE3D;;;;;;;GAOG;AACH,MAAM,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAA;AAElD;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,UAAU,IAAI,KAAK,SAAS,QAAQ,GACxE,IAAI,GACJ,KAAK,SAAS,UAAU,GACtB,MAAM,GAAG,IAAI,GACb,MAAM,CAAA;AAEZ;;;;GAIG;AACH,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,UAAU,IAAI,KAAK,SAAS,QAAQ,GACxE,IAAI,GACJ,KAAK,SAAS,UAAU,GACtB,WAAW,GAAG,IAAI,GAClB,WAAW,CAAA;AAEjB,MAAM,MAAM,aAAa,CACvB,OAAO,EACP,KAAK,EACL,KAAK,EACL,OAAO,GAAG,MAAM,GAAG,IAAI,EACvB,KAAK,SAAS,UAAU,GAAG,UAAU,IACnC;IACF,yEAAyE;IACzE,MAAM,EAAE,OAAO,CAAA;IACf;;;;OAIG;IACH,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;IAC1B,4DAA4D;IAC5D,IAAI,EAAE,KAAK,CAAA;IACX,6DAA6D;IAC7D,IAAI,EAAE,KAAK,CAAA;IACX,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAA;IACX;;;;;;;;OAQG;IACH,MAAM,EAAE,OAAO,CAAA;IACf;;;;;;;OAOG;IACH,UAAU,EAAE,YAAY,CAAA;CACzB,CAAA"}
@@ -1,4 +1,4 @@
1
- export type { Kernel, KernelForAuth, RemoteContext } from './context';
1
+ export type { AuthForPolicy, Kernel, KernelForAuth, RemoteContext } from './context';
2
2
  export type { RemoteHandler, AnyRemoteHandler, MethodImpl } from './single';
3
3
  export { remoteMethod } from './single';
4
4
  export type { ClassMethodsImpl, InterfaceMethodsImpl, SchemaMethodsImpl } from './class';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/method/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACrE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACxF,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/method/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACpF,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACxF,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA"}
@@ -29,7 +29,7 @@ import type { KernelForAuth, RemoteContext } from './context';
29
29
  */
30
30
  export type RemoteHandler<TParams, TResult, TSelf, TDeps, TAuth extends AuthPolicy = 'required'> = {
31
31
  /** The handler body. May be async or an async generator (for `output: 'stream'`). */
32
- execute?: (ctx: RemoteContext<TParams, TSelf, TDeps, KernelForAuth<TAuth>>) => TResult | Promise<TResult> | AsyncGenerator<TResult>;
32
+ execute?: (ctx: RemoteContext<TParams, TSelf, TDeps, KernelForAuth<TAuth>, TAuth>) => TResult | Promise<TResult> | AsyncGenerator<TResult>;
33
33
  /**
34
34
  * Optional REST binding — attaches a native HTTP route to this method.
35
35
  * Uses the kernel's canonical `RouteBinding` type directly.
@@ -45,9 +45,10 @@ export type RemoteHandler<TParams, TResult, TSelf, TDeps, TAuth extends AuthPoli
45
45
  description?: string;
46
46
  /**
47
47
  * Authentication policy. Defaults to `'required'` when absent. Captured as a
48
- * literal type so it drives {@link KernelForAuth} on the `execute`/`authorize`
49
- * context: omit it (or set `'required'`) and `ctx.kernel` is non-null;
50
- * `'optional'` widens it to `… | null`; `'public'` makes it `null`.
48
+ * literal type so it drives `ctx.auth` and {@link KernelForAuth} on the
49
+ * `execute`/`authorize` context: omit it (or set `'required'`) and both
50
+ * `ctx.auth` and `ctx.kernel` are non-null; `'optional'` widens them to
51
+ * `... | null`; `'public'` makes both `null`.
51
52
  */
52
53
  auth?: TAuth;
53
54
  /**
@@ -64,7 +65,7 @@ export type RemoteHandler<TParams, TResult, TSelf, TDeps, TAuth extends AuthPoli
64
65
  * The kernel still enforces `has_perm` independently — `authorize` is
65
66
  * additive ergonomic gating on top, not a replacement.
66
67
  */
67
- authorize?: (ctx: RemoteContext<TParams, TSelf, TDeps, KernelForAuth<TAuth>>) => void | Promise<void>;
68
+ authorize?: (ctx: RemoteContext<TParams, TSelf, TDeps, KernelForAuth<TAuth>, TAuth>) => void | Promise<void>;
68
69
  };
69
70
  export type AnyRemoteHandler = RemoteHandler<any, any, any, any, AuthPolicy>;
70
71
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"single.d.ts","sourceRoot":"","sources":["../../src/method/single.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"single.d.ts","sourceRoot":"","sources":["../../src/method/single.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"single.js","sourceRoot":"","sources":["../../src/method/single.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAuIH,MAAM,UAAU,YAAY,CAAC,GAAG,IAAe;IAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,SAAoB,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAClD,CAAC;IAED,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;AAChB,CAAC"}
1
+ {"version":3,"file":"single.js","sourceRoot":"","sources":["../../src/method/single.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAwIH,MAAM,UAAU,YAAY,CAAC,GAAG,IAAe;IAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,SAAoB,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAClD,CAAC;IAED,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;AAChB,CAAC"}
@@ -25,6 +25,46 @@ import type { RemoteServerConfig } from './config';
25
25
  type Fetcher = {
26
26
  fetch(request: Request): Response | Promise<Response>;
27
27
  };
28
+ type App = {
29
+ fetch(request: Request): Response | Promise<Response>;
30
+ };
31
+ /** A built app cached by its serving URL: `origin` for same-origin matching,
32
+ * `app` for in-process self-dispatch. */
33
+ type CachedApp = {
34
+ origin: string;
35
+ app: App;
36
+ };
37
+ /**
38
+ * Choose where an OUTBOUND subrequest to `u` is routed — or `null` to let the
39
+ * real `fetch` handle it. Order matters and same-origin wins FIRST: a call to
40
+ * this worker's OWN serving origin is a self-dispatch, not an edge fetch — and
41
+ * the caller's `routeSubrequest` policy may itself match our own host (e.g. an
42
+ * `isInstanceHost` predicate matches every `*.svc.astrale.ai`, ours included),
43
+ * so it must never get first look at a same-origin call.
44
+ *
45
+ * • same-origin + SELF binding present → the SELF fetcher: a fresh same-script
46
+ * invocation. The normal Cloudflare path — a Worker can't fetch its own
47
+ * hostname over the edge, so it re-enters itself through the binding.
48
+ * • same-origin + NO SELF binding → the cached app, dispatched IN-PROCESS. A
49
+ * Workers-for-Platforms dispatch-namespace tenant can't service-bind to
50
+ * itself (its script name is platform-renamed), so it has no SELF binding; an
51
+ * in-process dispatch reaches the same script with no edge hop and no binding.
52
+ * `App` and the SELF `Fetcher` share the `{ fetch(request) }` shape, so the
53
+ * caller drives both identically.
54
+ * • else, the caller's `routeSubrequest` policy matched → its fetcher.
55
+ * • else → `null`: passthrough to the real network fetch.
56
+ *
57
+ * Pure (no closure over instance state) so the routing decision is unit-testable
58
+ * without standing up a real app.
59
+ */
60
+ export declare function selectSubrequestTarget<TDeps>(u: URL, ctx: {
61
+ self: Fetcher | null;
62
+ apps: Iterable<CachedApp>;
63
+ routeEnv: TDeps | null;
64
+ routeSubrequest?: (url: URL, env: TDeps) => Fetcher | null | undefined;
65
+ }): {
66
+ fetch(request: Request): Response | Promise<Response>;
67
+ } | null;
28
68
  export interface WorkerEntryConfig<TDeps> {
29
69
  /**
30
70
  * Build the `createRemoteServer` config for the resolved serving `url`. Called