@hypequery/serve 0.18.0 → 0.19.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/dist/index.d.ts CHANGED
@@ -18,10 +18,6 @@ export { startServer, toNodeHandler, toFetchHandler } from "./adapters/standalon
18
18
  export type { DevIntegrationApi, ServeDevOptions } from "./dev.js";
19
19
  export { createCacheObservability, detectBuilderCache } from "./cache-observability.js";
20
20
  export type { CacheObservability, CacheLayerStats, BuilderCacheLike } from "./cache-observability.js";
21
- export { buildProtocolDeploymentContract } from './protocol-adapter.js';
22
- export type { BuildProtocolDeploymentOptions } from './protocol-adapter.js';
23
- export { analyzeCloudCompatibility, analyzeLocalOnlyDeclarations, formatCloudCompatibilityDiagnostics, } from './cloud-compatibility.js';
24
- export type { CloudCompatibilityCode, CloudCompatibilityDiagnostic, CloudCompatibilityOptions, CloudCompatibilitySeverity, CloudCompatibilitySurface, } from './cloud-compatibility.js';
25
21
  /**
26
22
  * Re-exported from `@hypequery/datasets`, where it now lives beside the schema
27
23
  * builders it converts. Kept here because it is a shipped export of this
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACtF,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACxF,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACtG,OAAO,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AACxE,YAAY,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EACL,yBAAyB,EACzB,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,sBAAsB,EACtB,4BAA4B,EAC5B,yBAAyB,EACzB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC;;;;GAIG;AACH,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACtF,8DAA8D;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AAGpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACtF,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACxF,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACtG;;;;GAIG;AACH,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACtF,8DAA8D;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AAGpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC"}
package/dist/index.js CHANGED
@@ -16,8 +16,6 @@ export * from "./adapters/fetch.js";
16
16
  export * from "./adapters/vercel.js";
17
17
  export { startServer, toNodeHandler, toFetchHandler } from "./adapters/standalone.js";
18
18
  export { createCacheObservability, detectBuilderCache } from "./cache-observability.js";
19
- export { buildProtocolDeploymentContract } from './protocol-adapter.js';
20
- export { analyzeCloudCompatibility, analyzeLocalOnlyDeclarations, formatCloudCompatibilityDiagnostics, } from './cloud-compatibility.js';
21
19
  /**
22
20
  * Re-exported from `@hypequery/datasets`, where it now lives beside the schema
23
21
  * builders it converts. Kept here because it is a shipped export of this
@@ -1,8 +1,6 @@
1
1
  import type { AuthContext, AuthStrategy, HypeQueryAPI, ServeEndpointMap, ServeMiddleware, ServeQueriesMap, ServeHandler, ExecuteQueryFunction } from "../types.js";
2
2
  import type { ServeRouter } from "../router.js";
3
3
  import type { CacheObservability } from "../cache-observability.js";
4
- import type { ProtocolDeploymentContract } from "@hypequery/protocol";
5
- import type { BuildProtocolDeploymentOptions } from "../protocol-adapter.js";
6
4
  import { ServeQueryLogger } from "../query-logger.js";
7
- export declare const createAPImethods: <TQueries extends ServeQueriesMap<TContext, TAuth>, TContext extends Record<string, unknown>, TAuth extends AuthContext>(queryEntries: ServeEndpointMap<TQueries, TContext, TAuth>, queryLogger: ServeQueryLogger, router: ServeRouter, authStrategies: AuthStrategy<TAuth>[], globalMiddlewares: ServeMiddleware<any, any, TContext, TAuth>[], executeQuery: ExecuteQueryFunction<ServeEndpointMap<TQueries, TContext, TAuth>, TContext, TAuth>, handler: ServeHandler, basePath: string, cacheObservability: CacheObservability, buildDeploymentContract: (options?: BuildProtocolDeploymentOptions) => ProtocolDeploymentContract) => HypeQueryAPI<ServeEndpointMap<TQueries, TContext, TAuth>, TContext, TAuth>;
5
+ export declare const createAPImethods: <TQueries extends ServeQueriesMap<TContext, TAuth>, TContext extends Record<string, unknown>, TAuth extends AuthContext>(queryEntries: ServeEndpointMap<TQueries, TContext, TAuth>, queryLogger: ServeQueryLogger, router: ServeRouter, authStrategies: AuthStrategy<TAuth>[], globalMiddlewares: ServeMiddleware<any, any, TContext, TAuth>[], executeQuery: ExecuteQueryFunction<ServeEndpointMap<TQueries, TContext, TAuth>, TContext, TAuth>, handler: ServeHandler, basePath: string, cacheObservability: CacheObservability) => HypeQueryAPI<ServeEndpointMap<TQueries, TContext, TAuth>, TContext, TAuth>;
8
6
  //# sourceMappingURL=api-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-builder.d.ts","sourceRoot":"","sources":["../../src/server/api-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EAIZ,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,EACZ,oBAAoB,EAErB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtD,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,SAAS,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,EACjD,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,SAAS,WAAW,EAEzB,cAAc,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EACzD,aAAa,gBAAgB,EAC7B,QAAQ,WAAW,EACnB,gBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,EACrC,mBAAmB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,EAC/D,cAAc,oBAAoB,CAChC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAC3C,QAAQ,EACR,KAAK,CACN,EACD,SAAS,YAAY,EACrB,UAAU,MAAM,EAChB,oBAAoB,kBAAkB,EACtC,yBAAyB,CACvB,OAAO,CAAC,EAAE,8BAA8B,KACrC,0BAA0B,KAC9B,YAAY,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,CAoH3E,CAAC"}
1
+ {"version":3,"file":"api-builder.d.ts","sourceRoot":"","sources":["../../src/server/api-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EAIZ,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,EACZ,oBAAoB,EAErB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtD,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,SAAS,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,EACjD,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,SAAS,WAAW,EAEzB,cAAc,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EACzD,aAAa,gBAAgB,EAC7B,QAAQ,WAAW,EACnB,gBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,EACrC,mBAAmB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,EAC/D,cAAc,oBAAoB,CAChC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAC3C,QAAQ,EACR,KAAK,CACN,EACD,SAAS,YAAY,EACrB,UAAU,MAAM,EAChB,oBAAoB,kBAAkB,KACrC,YAAY,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,CAmH3E,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { mergeTags } from "../utils.js";
2
2
  import { applyBasePath, normalizeRoutePath } from "../router.js";
3
3
  import { mapEndpointToToolkit } from "./mapper.js";
4
- export const createAPImethods = (queryEntries, queryLogger, router, authStrategies, globalMiddlewares, executeQuery, handler, basePath, cacheObservability, buildDeploymentContract) => {
4
+ export const createAPImethods = (queryEntries, queryLogger, router, authStrategies, globalMiddlewares, executeQuery, handler, basePath, cacheObservability) => {
5
5
  /**
6
6
  * Routes registered through `api.route()`, keyed by endpoint identity.
7
7
  *
@@ -18,7 +18,6 @@ export const createAPImethods = (queryEntries, queryLogger, router, authStrategi
18
18
  queries: queryEntries,
19
19
  queryLogger,
20
20
  cacheObservability,
21
- deploymentContract: buildDeploymentContract,
22
21
  manifest: () => {
23
22
  const manifest = {};
24
23
  for (const [key, endpoint] of Object.entries(queryEntries)) {
@@ -1,10 +1,8 @@
1
1
  import type { AuthContext, AuthStrategy, HttpMethod, ServeBuilder, ServeEndpointMap, ServeMiddleware, ServeQueriesMap, ServeHandler, ExecuteQueryFunction } from "../types.js";
2
2
  import type { ServeRouter } from "../router.js";
3
3
  import type { CacheObservability } from "../cache-observability.js";
4
- import type { ProtocolDeploymentContract } from "@hypequery/protocol";
5
- import type { BuildProtocolDeploymentOptions } from "../protocol-adapter.js";
6
4
  import { ServeQueryLogger } from "../query-logger.js";
7
5
  export declare const createBuilderMethods: <TQueries extends ServeQueriesMap<TContext, TAuth>, TContext extends Record<string, unknown>, TAuth extends AuthContext>(queryEntries: ServeEndpointMap<TQueries, TContext, TAuth>, queryLogger: ServeQueryLogger, routeConfig: Record<string, {
8
6
  method: HttpMethod;
9
- }>, router: ServeRouter, authStrategies: AuthStrategy<TAuth>[], globalMiddlewares: ServeMiddleware<any, any, TContext, TAuth>[], executeQuery: ExecuteQueryFunction<ServeEndpointMap<TQueries, TContext, TAuth>, TContext, TAuth>, handler: ServeHandler, basePath: string, cacheObservability?: CacheObservability, buildDeploymentContract?: (options?: BuildProtocolDeploymentOptions) => ProtocolDeploymentContract) => ServeBuilder<ServeEndpointMap<TQueries, TContext, TAuth>, TContext, TAuth>;
7
+ }>, router: ServeRouter, authStrategies: AuthStrategy<TAuth>[], globalMiddlewares: ServeMiddleware<any, any, TContext, TAuth>[], executeQuery: ExecuteQueryFunction<ServeEndpointMap<TQueries, TContext, TAuth>, TContext, TAuth>, handler: ServeHandler, basePath: string, cacheObservability?: CacheObservability) => ServeBuilder<ServeEndpointMap<TQueries, TContext, TAuth>, TContext, TAuth>;
10
8
  //# sourceMappingURL=builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/server/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,UAAU,EAEV,YAAY,EAEZ,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,EACZ,oBAAoB,EAGrB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAYtD,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,SAAS,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,EACjD,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,SAAS,WAAW,EAEzB,cAAc,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EACzD,aAAa,gBAAgB,EAC7B,aAAa,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,CAAC,EACnD,QAAQ,WAAW,EACnB,gBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,EACrC,mBAAmB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,EAC/D,cAAc,oBAAoB,CAChC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAC3C,QAAQ,EACR,KAAK,CACN,EACD,SAAS,YAAY,EACrB,UAAU,MAAM,EAChB,qBAAoB,kBAAiD,EACrE,0BAA0B,CACxB,OAAO,CAAC,EAAE,8BAA8B,KACrC,0BAA0B,KAC9B,YAAY,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,CA2G3E,CAAC"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/server/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,UAAU,EAEV,YAAY,EAEZ,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,EACZ,oBAAoB,EAGrB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAYtD,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,SAAS,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,EACjD,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,SAAS,WAAW,EAEzB,cAAc,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EACzD,aAAa,gBAAgB,EAC7B,aAAa,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,CAAC,EACnD,QAAQ,WAAW,EACnB,gBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,EACrC,mBAAmB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,EAC/D,cAAc,oBAAoB,CAChC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAC3C,QAAQ,EACR,KAAK,CACN,EACD,SAAS,YAAY,EACrB,UAAU,MAAM,EAChB,qBAAoB,kBAAiD,KACpE,YAAY,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,CAqG3E,CAAC"}
@@ -8,18 +8,12 @@ const loadNodeAdapter = async () => {
8
8
  }
9
9
  return import("../adapters/node.js");
10
10
  };
11
- export const createBuilderMethods = (queryEntries, queryLogger, routeConfig, router, authStrategies, globalMiddlewares, executeQuery, handler, basePath, cacheObservability = createCacheObservability({}), buildDeploymentContract) => {
11
+ export const createBuilderMethods = (queryEntries, queryLogger, routeConfig, router, authStrategies, globalMiddlewares, executeQuery, handler, basePath, cacheObservability = createCacheObservability({})) => {
12
12
  const builder = {
13
13
  queries: queryEntries,
14
14
  basePath: basePath || undefined,
15
15
  queryLogger,
16
16
  cacheObservability,
17
- deploymentContract: options => {
18
- if (!buildDeploymentContract) {
19
- throw new Error('This Serve builder was created without a deployment contract source.');
20
- }
21
- return buildDeploymentContract(options);
22
- },
23
17
  _routeConfig: routeConfig,
24
18
  manifest: () => {
25
19
  const manifest = {};
@@ -1 +1 @@
1
- {"version":3,"file":"create-api.d.ts","sourceRoot":"","sources":["../../src/server/create-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EAEX,YAAY,EAEZ,gBAAgB,EAIhB,eAAe,EACf,WAAW,EACX,aAAa,EACb,cAAc,EACd,wBAAwB,EACzB,MAAM,aAAa,CAAC;AAmCrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,SAAS,GACpB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClE,KAAK,SAAS,WAAW,GAAG,WAAW,EACvC,QAAQ,SAAS,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACxE,QAAQ,SAAS,aAAa,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAC5D,SAAS,SAAS,cAAc,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAE9D,QAAQ,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,KAClE,YAAY,CACb,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,GACvC,wBAAwB,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,EAClE,QAAQ,EACR,KAAK,CAsSN,CAAC"}
1
+ {"version":3,"file":"create-api.d.ts","sourceRoot":"","sources":["../../src/server/create-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EAEX,YAAY,EAEZ,gBAAgB,EAIhB,eAAe,EACf,WAAW,EACX,aAAa,EACb,cAAc,EACd,wBAAwB,EACzB,MAAM,aAAa,CAAC;AAkCrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,SAAS,GACpB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClE,KAAK,SAAS,WAAW,GAAG,WAAW,EACvC,QAAQ,SAAS,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACxE,QAAQ,SAAS,aAAa,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAC5D,SAAS,SAAS,cAAc,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAE9D,QAAQ,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,KAClE,YAAY,CACb,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,GACvC,wBAAwB,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,EAClE,QAAQ,EACR,KAAK,CAqSN,CAAC"}
@@ -12,7 +12,6 @@ import { createDatasetClient, serializeSemanticContract, toQueryBuilderFactory }
12
12
  import { createMetricEndpoint, createDatasetEndpoint, createSemanticContractEndpoint, buildSemanticContractSource, } from "../semantic/datasets/index.js";
13
13
  import { attachServeMcpSource } from "./mcp-source.js";
14
14
  import { attachSemanticQueryBuilder, extractQueryBuilderFromContext } from "../semantic/query-builder-context.js";
15
- import { buildProtocolDeploymentContract } from "../protocol-adapter.js";
16
15
  const assertSemanticKeyAvailable = (queryEntries, key, kind) => {
17
16
  if (key in queryEntries) {
18
17
  throw new Error(`createAPI: ${kind} "${key}" collides with an existing query key. ` +
@@ -231,7 +230,7 @@ export const createAPI = (config) => {
231
230
  getSemanticClient: () => sharedAnalytics,
232
231
  getBuilderCache: () => detectBuilderCache(resolvedQueryBuilder),
233
232
  });
234
- const api = createAPImethods(queryEntries, queryLogger, router, authStrategies, globalMiddlewares, executeQuery, handler, basePath, cacheObservability, options => buildProtocolDeploymentContract(config, options));
233
+ const api = createAPImethods(queryEntries, queryLogger, router, authStrategies, globalMiddlewares, executeQuery, handler, basePath, cacheObservability);
235
234
  // Expose the registered datasets to `hypequery mcp`, so the CLI serves the
236
235
  // same semantic model as this entrypoint rather than a second MCP config.
237
236
  if (config.datasets) {
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * Attached under a registered symbol rather than a public property: it is a
7
7
  * build/tooling seam, not part of the API surface an application calls. The
8
- * same approach as `attachDeploymentBuildSource`.
8
+ * This keeps the local MCP source out of the public API surface.
9
9
  */
10
10
  const mcpSourceSymbol = Symbol.for('hypequery.mcp-source.v1');
11
11
  export function attachServeMcpSource(target, source) {
package/dist/types.d.ts CHANGED
@@ -1,8 +1,6 @@
1
1
  import type { ZodType, ZodTypeAny } from "zod";
2
2
  import type { ServeQueryLogger, ServeQueryEventCallback } from "./query-logger.js";
3
3
  import type { CacheObservability } from "./cache-observability.js";
4
- import type { ProtocolDeploymentContract } from "@hypequery/protocol";
5
- import type { BuildProtocolDeploymentOptions } from "./protocol-adapter.js";
6
4
  import type { DatasetInstance, DatasetQueryableDimensions, DatasetQueryFor, DatasetQueryResultFor, KnownStringKeys, MetricHandle, MetricQueryFor, MetricResultFor, QueryBuilderFactoryInput } from "@hypequery/datasets";
7
5
  /** Supported HTTP verbs for serve-managed endpoints. */
8
6
  export type HttpMethod = "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS";
@@ -729,12 +727,6 @@ export interface HypeQueryAPI<TQueries extends Record<string, ServeEndpoint<any,
729
727
  * route (method + full path). Safe to JSON-serialize and ship to the client.
730
728
  */
731
729
  manifest(): RouteManifest;
732
- /**
733
- * Build the deployment contract Cloud carries. Named queries
734
- * and standalone metrics stay local; they are reported through
735
- * `onCloudDiagnostic` rather than carried.
736
- */
737
- deploymentContract(options?: BuildProtocolDeploymentOptions): ProtocolDeploymentContract;
738
730
  route<Path extends string, TKey extends keyof TQueries>(path: Path, endpoint: TQueries[TKey], options?: Partial<RouteRegistrationOptions<TContext, TAuth>>): this;
739
731
  use(middleware: ServeMiddleware<any, any, TContext, TAuth>): this;
740
732
  useAuth(strategy: AuthStrategy<TAuth>): this;
@@ -785,12 +777,6 @@ export interface ServeBuilder<TQueries extends Record<string, ServeEndpoint<any,
785
777
  * route (method + full path). Safe to JSON-serialize and ship to the client.
786
778
  */
787
779
  manifest(): RouteManifest;
788
- /**
789
- * Build the deployment contract Cloud carries. Named queries
790
- * and standalone metrics stay local; they are reported through
791
- * `onCloudDiagnostic` rather than carried.
792
- */
793
- deploymentContract(options?: BuildProtocolDeploymentOptions): ProtocolDeploymentContract;
794
780
  route<Path extends string, TKey extends keyof TQueries>(path: Path, endpoint: TQueries[TKey], options?: Partial<RouteRegistrationOptions<TContext, TAuth>>): this;
795
781
  use(middleware: ServeMiddleware<any, any, TContext, TAuth>): this;
796
782
  useAuth(strategy: AuthStrategy<TAuth>): this;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hypequery/serve",
3
- "version": "0.18.0",
3
+ "version": "0.19.0",
4
4
  "description": "Code-first TypeScript runtime for validated ClickHouse analytics APIs, OpenAPI, auth, and tenancy",
5
5
  "keywords": [
6
6
  "clickhouse",
@@ -34,12 +34,11 @@
34
34
  "dist"
35
35
  ],
36
36
  "dependencies": {
37
- "@hypequery/protocol": "^0.14.0",
38
37
  "jose": "^5.9.6",
39
38
  "openapi-typescript": "^7.13.0",
40
39
  "zod": "^3.23.8",
41
40
  "zod-to-json-schema": "^3.23.5",
42
- "@hypequery/datasets": "^0.17.0"
41
+ "@hypequery/datasets": "^0.18.0"
43
42
  },
44
43
  "peerDependencies": {
45
44
  "tsx": "^4.0.0",
@@ -1,68 +0,0 @@
1
- /**
2
- * Deploy-time diagnostics for managed (Cloud) execution.
3
- *
4
- * A deployment contract carries policy, not mechanism: an `AuthStrategy` is
5
- * reduced to `{ kind, roles, scopes }`, a `TenantConfig.extract` to a column
6
- * name, and middlewares, hooks, and context factories are not carried at all.
7
- * That is deliberate — Cloud re-implements those concerns itself — but it means
8
- * a Serve app can behave differently once deployed, and silently.
9
- *
10
- * The dangerous case is tenancy. `resolveTenantFilterColumn` returns the
11
- * dataset's `tenantKey`, and the planner applies the tenant predicate only when
12
- * a column resolves. A dataset with no `tenantKey` exposed under a config that
13
- * requires a tenant will demand a tenant and filter nothing, so every tenant
14
- * reads every row. Locally a middleware or resolver may cover that gap; in
15
- * Cloud there is no customer code left to do it.
16
- *
17
- * These checks run when the deployment contract is built, so they apply to
18
- * every consumer rather than only the CLI.
19
- */
20
- import type { ServeConfig } from './types.js';
21
- export type CloudCompatibilitySeverity = 'error' | 'warning';
22
- export type CloudCompatibilityCode = 'HQ_CLOUD_TENANT_NOT_ENFORCEABLE' | 'HQ_CLOUD_MIDDLEWARE_DROPPED' | 'HQ_CLOUD_HOOKS_DROPPED' | 'HQ_CLOUD_CONTEXT_DROPPED' | 'HQ_CLOUD_AUTH_WITHOUT_ROLES' | 'HQ_CLOUD_LOCAL_ONLY_QUERY' | 'HQ_CLOUD_LOCAL_ONLY_METRIC' | 'HQ_CLOUD_LOCAL_ONLY_DATASET';
23
- /**
24
- * Which endpoints the deployment being analyzed will actually carry.
25
- *
26
- * `datasets` is the deployment wire. Restricting the analysis is not cosmetic:
27
- * most findings here are blocking errors, and a named query or standalone metric
28
- * that never leaves the developer's machine cannot misbehave in Cloud. Analyzing
29
- * one anyway would refuse a deployment over an endpoint that is not in it.
30
- */
31
- export type CloudCompatibilitySurface = 'all' | 'datasets';
32
- export interface CloudCompatibilityOptions {
33
- readonly surface?: CloudCompatibilitySurface;
34
- }
35
- export interface CloudCompatibilityDiagnostic {
36
- readonly severity: CloudCompatibilitySeverity;
37
- readonly code: CloudCompatibilityCode;
38
- /** The endpoint, dataset, or config key the finding applies to. */
39
- readonly subject: string;
40
- readonly message: string;
41
- /** What the author should do instead. */
42
- readonly remedy: string;
43
- }
44
- /**
45
- * Reports how a Serve config will differ once executed by Cloud.
46
- *
47
- * Pure and side-effect free so it can be run for reporting without building a
48
- * contract.
49
- */
50
- export declare function analyzeCloudCompatibility(config: ServeConfig<any, any, any, any, any>, options?: CloudCompatibilityOptions): readonly CloudCompatibilityDiagnostic[];
51
- /**
52
- * Reports declarations that stay local when building a deployment.
53
- *
54
- * Named queries and standalone metrics keep working locally and under Serve;
55
- * the Cloud wire simply has no route that carries them, so a deployed app
56
- * answers 404 where the local one answers rows. That difference is invisible
57
- * in a successful upload, which is why it is reported at build time.
58
- *
59
- * `deployedDatasets` is what the contract actually carries, so a dataset that
60
- * only a standalone metric reaches is named here rather than assumed present.
61
- */
62
- export declare function analyzeLocalOnlyDeclarations(config: ServeConfig<any, any, any, any, any>, deployedDatasets: ReadonlySet<string>): readonly CloudCompatibilityDiagnostic[];
63
- /**
64
- * Formats diagnostics for a thrown error. Errors are listed first because they
65
- * are what blocks the deployment.
66
- */
67
- export declare function formatCloudCompatibilityDiagnostics(diagnostics: readonly CloudCompatibilityDiagnostic[]): string;
68
- //# sourceMappingURL=cloud-compatibility.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cloud-compatibility.d.ts","sourceRoot":"","sources":["../src/cloud-compatibility.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAA0C,WAAW,EAAE,MAAM,YAAY,CAAC;AAKtF,MAAM,MAAM,0BAA0B,GAAG,OAAO,GAAG,SAAS,CAAC;AAE7D,MAAM,MAAM,sBAAsB,GAC9B,iCAAiC,GACjC,6BAA6B,GAC7B,wBAAwB,GACxB,0BAA0B,GAC1B,6BAA6B,GAC7B,2BAA2B,GAC3B,4BAA4B,GAC5B,6BAA6B,CAAC;AAElC;;;;;;;GAOG;AACH,MAAM,MAAM,yBAAyB,GAAG,KAAK,GAAG,UAAU,CAAC;AAE3D,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,OAAO,CAAC,EAAE,yBAAyB,CAAC;CAC9C;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,QAAQ,EAAE,0BAA0B,CAAC;IAC9C,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,yCAAyC;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAoDD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC5C,OAAO,GAAE,yBAA8B,GACtC,SAAS,4BAA4B,EAAE,CAyJzC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC5C,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,GACpC,SAAS,4BAA4B,EAAE,CAsDzC;AAQD;;;GAGG;AACH,wBAAgB,mCAAmC,CACjD,WAAW,EAAE,SAAS,4BAA4B,EAAE,GACnD,MAAM,CAIR"}
@@ -1,251 +0,0 @@
1
- /**
2
- * Deploy-time diagnostics for managed (Cloud) execution.
3
- *
4
- * A deployment contract carries policy, not mechanism: an `AuthStrategy` is
5
- * reduced to `{ kind, roles, scopes }`, a `TenantConfig.extract` to a column
6
- * name, and middlewares, hooks, and context factories are not carried at all.
7
- * That is deliberate — Cloud re-implements those concerns itself — but it means
8
- * a Serve app can behave differently once deployed, and silently.
9
- *
10
- * The dangerous case is tenancy. `resolveTenantFilterColumn` returns the
11
- * dataset's `tenantKey`, and the planner applies the tenant predicate only when
12
- * a column resolves. A dataset with no `tenantKey` exposed under a config that
13
- * requires a tenant will demand a tenant and filter nothing, so every tenant
14
- * reads every row. Locally a middleware or resolver may cover that gap; in
15
- * Cloud there is no customer code left to do it.
16
- *
17
- * These checks run when the deployment contract is built, so they apply to
18
- * every consumer rather than only the CLI.
19
- */
20
- import { resolveDatasetEntry } from './semantic/datasets/utils/dataset-entry.js';
21
- import { resolveLocalAuthRequirement } from './auth-requirement.js';
22
- import { resolveMetricEntry } from './semantic/datasets/metric-endpoint.js';
23
- function tenantIsExpected(local, global) {
24
- if (local === undefined && global === undefined)
25
- return false;
26
- const effective = { ...(global ?? {}), ...(local ?? {}) };
27
- return effective.required !== false;
28
- }
29
- function hasAuth(auth) {
30
- return Array.isArray(auth) ? auth.length > 0 : auth !== undefined && auth !== null;
31
- }
32
- function declaresRolesOrScopes(entry) {
33
- return (entry.requiredRoles?.length ?? 0) > 0 || (entry.requiredScopes?.length ?? 0) > 0;
34
- }
35
- /**
36
- * True when an endpoint ends up authenticated but declares nothing Cloud can
37
- * enforce. Mirrors `accessPolicy` in the protocol adapter, including the local
38
- * opt-out: an endpoint with `auth: null` or `requiresAuth: false` resolves to
39
- * public and is not a downgrade.
40
- */
41
- function isAuthenticatedWithoutRoles(local, globalAuth) {
42
- if (declaresRolesOrScopes(local))
43
- return false;
44
- return (resolveLocalAuthRequirement(local) ?? hasAuth(globalAuth)) === true;
45
- }
46
- /**
47
- * Reports how a Serve config will differ once executed by Cloud.
48
- *
49
- * Pure and side-effect free so it can be run for reporting without building a
50
- * contract.
51
- */
52
- export function analyzeCloudCompatibility(config, options = {}) {
53
- const serveConfig = config;
54
- const diagnostics = [];
55
- const deployed = options.surface ?? 'all';
56
- const localOnlyEndpoints = deployed === 'datasets';
57
- // Semantic endpoints have no customer code in Cloud, so an unenforceable
58
- // tenant requirement silently becomes no isolation at all.
59
- const semanticTargets = [
60
- ...Object.entries(serveConfig.datasets ?? {}).map(([name, entry]) => ({
61
- label: `datasets.${name}`,
62
- entry,
63
- })),
64
- ...(localOnlyEndpoints
65
- ? []
66
- : Object.entries(serveConfig.metrics ?? {}).map(([name, entry]) => ({
67
- label: `metrics.${name}`,
68
- entry,
69
- }))),
70
- ];
71
- for (const { label, entry } of semanticTargets) {
72
- const resolved = label.startsWith('datasets.')
73
- ? resolveDatasetEntry(entry)
74
- : resolveMetricEntry(entry);
75
- const dataset = label.startsWith('datasets.')
76
- ? resolved.dataset
77
- : datasetOfMetric(resolved);
78
- const local = resolved.tenant;
79
- if (!tenantIsExpected(local, serveConfig.tenant))
80
- continue;
81
- if (dataset?.tenantKey)
82
- continue;
83
- diagnostics.push({
84
- severity: 'error',
85
- code: 'HQ_CLOUD_TENANT_NOT_ENFORCEABLE',
86
- subject: label,
87
- message: `Tenant isolation is required for "${label}" but dataset `
88
- + `"${dataset?.name ?? 'unknown'}" declares no tenantKey. Cloud resolves the `
89
- + 'tenant filter column from the dataset, so it would accept a tenant and '
90
- + 'return every tenant\'s rows.',
91
- remedy: `Add tenantKey to the "${dataset?.name ?? ''}" dataset, or set `
92
- + 'tenant.required to false if this data is genuinely shared.',
93
- });
94
- }
95
- // Everything below is dropped by the protocol adapter.
96
- const globalMiddlewares = serveConfig.middlewares ?? [];
97
- if (globalMiddlewares.length > 0) {
98
- diagnostics.push({
99
- severity: 'error',
100
- code: 'HQ_CLOUD_MIDDLEWARE_DROPPED',
101
- subject: 'middlewares',
102
- message: `${globalMiddlewares.length} global middleware(s) are not carried in the `
103
- + 'deployment contract and will not run in Cloud. Middleware that performs '
104
- + 'authentication or filtering would leave endpoints less protected than '
105
- + 'they are locally.',
106
- remedy: 'Express the requirement declaratively with requiresAuth, requiredRoles, '
107
- + 'requiredScopes, or tenant config, or keep this app self-hosted.',
108
- });
109
- }
110
- const queryEntries = (localOnlyEndpoints
111
- ? []
112
- : Object.entries(serveConfig.queries ?? {}));
113
- for (const [name, query] of queryEntries) {
114
- if ((query?.middlewares?.length ?? 0) === 0)
115
- continue;
116
- diagnostics.push({
117
- severity: 'error',
118
- code: 'HQ_CLOUD_MIDDLEWARE_DROPPED',
119
- subject: `queries.${name}`,
120
- message: `Middleware on query "${name}" is not carried in the deployment contract `
121
- + 'and will not run in Cloud.',
122
- remedy: 'Express the requirement declaratively on the query, or move the logic into '
123
- + 'the query resolver itself.',
124
- });
125
- }
126
- if (serveConfig.hooks !== undefined) {
127
- diagnostics.push({
128
- severity: 'warning',
129
- code: 'HQ_CLOUD_HOOKS_DROPPED',
130
- subject: 'hooks',
131
- message: 'Lifecycle hooks do not run in Cloud.',
132
- remedy: 'Cloud records its own request log for deployed endpoints; remove the hooks '
133
- + 'or keep them for local runs only.',
134
- });
135
- }
136
- if (serveConfig.context !== undefined) {
137
- diagnostics.push({
138
- severity: 'warning',
139
- code: 'HQ_CLOUD_CONTEXT_DROPPED',
140
- subject: 'context',
141
- message: 'The context factory does not run in Cloud, so values it provides will be '
142
- + 'absent from query resolvers.',
143
- remedy: 'Derive those values inside the resolver, or pass them as query input.',
144
- });
145
- }
146
- {
147
- // Custom queries undergo the same reduction as semantic endpoints: the
148
- // adapter calls endpointPolicy for all three, so a query with a strategy
149
- // but no declared roles is downgraded exactly the same way.
150
- const endpoints = [
151
- ...Object.entries(serveConfig.datasets ?? {}).map(([name, entry]) => [
152
- `datasets.${name}`,
153
- resolveDatasetEntry(entry),
154
- ]),
155
- ...(localOnlyEndpoints ? [] : [
156
- ...Object.entries(serveConfig.metrics ?? {}).map(([name, entry]) => [
157
- `metrics.${name}`,
158
- resolveMetricEntry(entry),
159
- ]),
160
- ...Object.entries(serveConfig.queries ?? {}).map(([name, entry]) => [
161
- `queries.${name}`,
162
- (entry ?? {}),
163
- ]),
164
- ]),
165
- ];
166
- const undeclared = endpoints.filter(([, resolved]) => isAuthenticatedWithoutRoles(resolved, serveConfig.auth));
167
- for (const [label] of undeclared) {
168
- diagnostics.push({
169
- severity: 'warning',
170
- code: 'HQ_CLOUD_AUTH_WITHOUT_ROLES',
171
- subject: label,
172
- message: `"${label}" is authenticated but declares no roles or scopes. The auth `
173
- + 'strategy itself is not carried, so Cloud accepts any valid credential '
174
- + 'for this endpoint even if the local strategy is stricter.',
175
- remedy: 'Declare requiredRoles or requiredScopes so Cloud can enforce the same '
176
- + 'restriction.',
177
- });
178
- }
179
- }
180
- return diagnostics;
181
- }
182
- /**
183
- * Reports declarations that stay local when building a deployment.
184
- *
185
- * Named queries and standalone metrics keep working locally and under Serve;
186
- * the Cloud wire simply has no route that carries them, so a deployed app
187
- * answers 404 where the local one answers rows. That difference is invisible
188
- * in a successful upload, which is why it is reported at build time.
189
- *
190
- * `deployedDatasets` is what the contract actually carries, so a dataset that
191
- * only a standalone metric reaches is named here rather than assumed present.
192
- */
193
- export function analyzeLocalOnlyDeclarations(config, deployedDatasets) {
194
- const serveConfig = config;
195
- const diagnostics = [];
196
- for (const name of Object.keys(serveConfig.queries ?? {}).sort()) {
197
- diagnostics.push({
198
- severity: 'warning',
199
- code: 'HQ_CLOUD_LOCAL_ONLY_QUERY',
200
- subject: `queries.${name}`,
201
- message: `Named query "${name}" is not carried by a Cloud deployment. It keeps `
202
- + 'working locally and under self-hosted Serve, but the deployed app has no '
203
- + 'route for it and answers 404.',
204
- remedy: 'Express it as a dataset query, or keep calling it from a self-hosted Serve '
205
- + 'instance.',
206
- });
207
- }
208
- const missingDatasets = new Set();
209
- for (const [name, entry] of Object.entries(serveConfig.metrics ?? {}).sort(([left], [right]) => left.localeCompare(right))) {
210
- diagnostics.push({
211
- severity: 'warning',
212
- code: 'HQ_CLOUD_LOCAL_ONLY_METRIC',
213
- subject: `metrics.${name}`,
214
- message: `Standalone metric "${name}" is not carried by a Cloud deployment. It keeps `
215
- + 'working locally and under self-hosted Serve, but the deployed app has no '
216
- + 'route for it and answers 404.',
217
- remedy: 'Author it as a derived measure on its dataset and select it through a '
218
- + 'dataset query.',
219
- });
220
- const dataset = datasetOfMetric(resolveMetricEntry(entry));
221
- if (dataset && !deployedDatasets.has(dataset.name))
222
- missingDatasets.add(dataset.name);
223
- }
224
- for (const name of [...missingDatasets].sort()) {
225
- diagnostics.push({
226
- severity: 'warning',
227
- code: 'HQ_CLOUD_LOCAL_ONLY_DATASET',
228
- subject: `datasets.${name}`,
229
- message: `Dataset "${name}" is reachable only through a standalone metric, so the `
230
- + 'deployment carries no definition of it at all.',
231
- remedy: `Expose "${name}" under datasets to deploy it, or drop the metric that `
232
- + 'depends on it.',
233
- });
234
- }
235
- return diagnostics;
236
- }
237
- function datasetOfMetric(resolved) {
238
- const metric = resolved.metric;
239
- if (!metric)
240
- return undefined;
241
- return metric.__type === 'grained_metric_ref' ? metric.metric?.dataset : metric.dataset;
242
- }
243
- /**
244
- * Formats diagnostics for a thrown error. Errors are listed first because they
245
- * are what blocks the deployment.
246
- */
247
- export function formatCloudCompatibilityDiagnostics(diagnostics) {
248
- return diagnostics
249
- .map(d => ` [${d.severity}] ${d.code} (${d.subject})\n ${d.message}\n → ${d.remedy}`)
250
- .join('\n\n');
251
- }
@@ -1,26 +0,0 @@
1
- import type { ProtocolDeploymentContract } from '@hypequery/protocol';
2
- import { type CloudCompatibilityDiagnostic } from './cloud-compatibility.js';
3
- import type { ServeConfig } from './types.js';
4
- export interface BuildProtocolDeploymentOptions {
5
- /**
6
- * Receives every managed-execution diagnostic, including ones that do not
7
- * block the build. Without it, warnings are discarded and only errors surface.
8
- */
9
- readonly onCloudDiagnostic?: (diagnostic: CloudCompatibilityDiagnostic) => void;
10
- /**
11
- * Downgrades managed-execution errors to warnings. The author is asserting
12
- * they know the deployed behaviour differs from local.
13
- */
14
- readonly allowUnsupportedConfig?: boolean;
15
- }
16
- /**
17
- * Converts an existing Serve configuration and its Dataset definitions into the
18
- * deployment contract.
19
- *
20
- * Named queries and standalone metrics are deliberately never copied: there is
21
- * no field on this wire that could carry them, so a build cannot leak one by
22
- * omission. They are reported instead, through the same diagnostic channel as
23
- * every other local/deployed difference.
24
- */
25
- export declare function buildProtocolDeploymentContract(config: ServeConfig<any, any, any, any, any>, options?: BuildProtocolDeploymentOptions): ProtocolDeploymentContract;
26
- //# sourceMappingURL=protocol-adapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"protocol-adapter.d.ts","sourceRoot":"","sources":["../src/protocol-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,0BAA0B,EAG3B,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAIL,KAAK,4BAA4B,EAElC,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAMV,WAAW,EAGZ,MAAM,YAAY,CAAC;AAIpB,MAAM,WAAW,8BAA8B;IAC7C;;;OAGG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,4BAA4B,KAAK,IAAI,CAAC;IAChF;;;OAGG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAC3C;AAoJD;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC5C,OAAO,GAAE,8BAAmC,GAC3C,0BAA0B,CAc5B"}
@@ -1,108 +0,0 @@
1
- import { buildProtocolDeploymentContract as buildDatasetContract, } from '@hypequery/datasets';
2
- import { analyzeCloudCompatibility, analyzeLocalOnlyDeclarations, formatCloudCompatibilityDiagnostics, } from './cloud-compatibility.js';
3
- import { resolveDatasetEntry } from './semantic/datasets/utils/dataset-entry.js';
4
- import { resolveLocalAuthRequirement } from './auth-requirement.js';
5
- function reportCloudCompatibility(config, options, extra = [], surface = 'all') {
6
- const diagnostics = [...analyzeCloudCompatibility(config, { surface }), ...extra];
7
- if (diagnostics.length === 0)
8
- return;
9
- for (const diagnostic of diagnostics)
10
- options.onCloudDiagnostic?.(diagnostic);
11
- if (options.allowUnsupportedConfig)
12
- return;
13
- const blocking = diagnostics.filter(diagnostic => diagnostic.severity === 'error');
14
- if (blocking.length === 0)
15
- return;
16
- throw new Error('This Serve configuration would behave differently under managed execution:\n\n'
17
- + `${formatCloudCompatibilityDiagnostics(blocking)}\n\n`
18
- + 'Resolve these, or pass allowUnsupportedConfig to deploy anyway.');
19
- }
20
- function normalizePath(...parts) {
21
- const joined = parts
22
- .filter(Boolean)
23
- .map((part, index) => index === 0 ? part.replace(/\/+$/g, '') : part.replace(/^\/+|\/+$/g, ''))
24
- .filter(Boolean)
25
- .join('/');
26
- return `/${joined.replace(/^\/+/, '')}`.replace(/\/{2,}/g, '/');
27
- }
28
- function hasGlobalAuth(auth) {
29
- return Array.isArray(auth) ? auth.length > 0 : auth !== undefined;
30
- }
31
- function accessPolicy(local, globalAuth) {
32
- const roles = [...new Set(local.requiredRoles ?? [])].sort();
33
- const scopes = [...new Set(local.requiredScopes ?? [])].sort();
34
- const localRequirement = resolveLocalAuthRequirement({
35
- ...local,
36
- requiredRoles: roles,
37
- requiredScopes: scopes,
38
- });
39
- if (localRequirement ?? hasGlobalAuth(globalAuth)) {
40
- return { kind: 'authenticated', roles, scopes };
41
- }
42
- return { kind: 'public' };
43
- }
44
- function endpointPolicy(local, globalAuth, globalTenant, path, defaultMaxLimit) {
45
- const cacheTtlMs = local.cacheTtlMs ?? local.cache ?? undefined;
46
- return {
47
- access: accessPolicy(local, globalAuth),
48
- tenant: endpointTenantPolicy(local.tenant, globalTenant),
49
- ...(typeof cacheTtlMs === 'number' && cacheTtlMs > 0 ? { cacheTtlMs } : {}),
50
- ...((local.maxLimit ?? defaultMaxLimit) !== undefined
51
- ? { maxLimit: local.maxLimit ?? defaultMaxLimit }
52
- : {}),
53
- path,
54
- };
55
- }
56
- function endpointTenantPolicy(local, global) {
57
- if (local === undefined && global === undefined)
58
- return { kind: 'not-required' };
59
- const effective = { ...(global ?? {}), ...(local ?? {}) };
60
- return {
61
- kind: effective.required === false ? 'optional' : 'required',
62
- mode: effective.mode ?? 'manual',
63
- ...(effective.column !== undefined ? { column: effective.column } : {}),
64
- };
65
- }
66
- function collectDataset(datasets, dataset) {
67
- const existing = datasets.get(dataset.name);
68
- if (existing && existing !== dataset) {
69
- throw new Error(`Multiple Dataset definitions use the protocol name "${dataset.name}".`);
70
- }
71
- if (existing)
72
- return;
73
- datasets.set(dataset.name, dataset);
74
- for (const relationship of Object.values(dataset.relationships)) {
75
- collectDataset(datasets, relationship.target());
76
- }
77
- }
78
- /** Datasets exposed under `datasets`, plus every dataset they reach by relationship. */
79
- function collectPublishedDatasets(serveConfig, basePath) {
80
- const datasetsPath = serveConfig.semanticPaths?.datasets ?? '/datasets';
81
- const datasets = new Map();
82
- const endpoints = new Map();
83
- for (const [exposedName, entry] of Object.entries(serveConfig.datasets ?? {})) {
84
- const resolved = resolveDatasetEntry(entry);
85
- collectDataset(datasets, resolved.dataset);
86
- if (endpoints.has(resolved.dataset.name)) {
87
- throw new Error(`Dataset "${resolved.dataset.name}" is exposed more than once.`);
88
- }
89
- endpoints.set(resolved.dataset.name, endpointPolicy(resolved, serveConfig.auth, serveConfig.tenant, normalizePath(basePath, datasetsPath, exposedName, 'query'), resolved.dataset.limits?.maxResultSize ?? 1_000));
90
- }
91
- return { datasets, endpoints };
92
- }
93
- /**
94
- * Converts an existing Serve configuration and its Dataset definitions into the
95
- * deployment contract.
96
- *
97
- * Named queries and standalone metrics are deliberately never copied: there is
98
- * no field on this wire that could carry them, so a build cannot leak one by
99
- * omission. They are reported instead, through the same diagnostic channel as
100
- * every other local/deployed difference.
101
- */
102
- export function buildProtocolDeploymentContract(config, options = {}) {
103
- const serveConfig = config;
104
- const basePath = serveConfig.basePath ?? '/api/analytics';
105
- const { datasets, endpoints } = collectPublishedDatasets(serveConfig, basePath);
106
- reportCloudCompatibility(config, options, analyzeLocalOnlyDeclarations(config, new Set(datasets.keys())), 'datasets');
107
- return buildDatasetContract([...datasets.values()].sort((left, right) => left.name.localeCompare(right.name)), { endpoints: Object.fromEntries(endpoints) });
108
- }