create-relkit 0.7.4 → 0.7.6
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/create-capabilities.d.ts +24 -33
- package/dist/create-capabilities.d.ts.map +1 -1
- package/dist/create-capabilities.js +52 -9
- package/dist/create-capabilities.js.map +1 -1
- package/dist/create-capabilities.types.d.ts +55 -0
- package/dist/create-capabilities.types.d.ts.map +1 -0
- package/dist/create-capabilities.types.js +2 -0
- package/dist/create-capabilities.types.js.map +1 -0
- package/dist/domain-artifact.d.ts.map +1 -1
- package/dist/domain-artifact.js +11 -3
- package/dist/domain-artifact.js.map +1 -1
- package/dist/domain-planning.d.ts +5 -0
- package/dist/domain-planning.d.ts.map +1 -1
- package/dist/domain-planning.js +25 -16
- package/dist/domain-planning.js.map +1 -1
- package/dist/generate-deployment-manifest.d.ts +10 -0
- package/dist/generate-deployment-manifest.d.ts.map +1 -0
- package/dist/generate-deployment-manifest.js +56 -0
- package/dist/generate-deployment-manifest.js.map +1 -0
- package/dist/generate-deployment.d.ts +2 -3
- package/dist/generate-deployment.d.ts.map +1 -1
- package/dist/generate-deployment.js +6 -47
- package/dist/generate-deployment.js.map +1 -1
- package/dist/generate-examples.d.ts +11 -0
- package/dist/generate-examples.d.ts.map +1 -0
- package/dist/generate-examples.js +28 -0
- package/dist/generate-examples.js.map +1 -0
- package/dist/generate-files-utilities.d.ts +1 -8
- package/dist/generate-files-utilities.d.ts.map +1 -1
- package/dist/generate-files-utilities.js +5 -19
- package/dist/generate-files-utilities.js.map +1 -1
- package/dist/project-discovery-artifacts.d.ts +15 -0
- package/dist/project-discovery-artifacts.d.ts.map +1 -0
- package/dist/project-discovery-artifacts.js +107 -0
- package/dist/project-discovery-artifacts.js.map +1 -0
- package/dist/project-discovery-artifacts.types.d.ts +22 -0
- package/dist/project-discovery-artifacts.types.d.ts.map +1 -0
- package/dist/project-discovery-artifacts.types.js +2 -0
- package/dist/project-discovery-artifacts.types.js.map +1 -0
- package/dist/project-discovery-facts.d.ts +8 -9
- package/dist/project-discovery-facts.d.ts.map +1 -1
- package/dist/project-discovery-facts.js +29 -135
- package/dist/project-discovery-facts.js.map +1 -1
- package/dist/project-discovery-members.d.ts +16 -0
- package/dist/project-discovery-members.d.ts.map +1 -0
- package/dist/project-discovery-members.js +57 -0
- package/dist/project-discovery-members.js.map +1 -0
- package/dist/project-discovery-types.d.ts +8 -0
- package/dist/project-discovery-types.d.ts.map +1 -1
- package/dist/render-auth-database.d.ts +33 -0
- package/dist/render-auth-database.d.ts.map +1 -0
- package/dist/render-auth-database.js +69 -0
- package/dist/render-auth-database.js.map +1 -0
- package/dist/render-auth-sources.d.ts +8 -2
- package/dist/render-auth-sources.d.ts.map +1 -1
- package/dist/render-auth-sources.js +9 -3
- package/dist/render-auth-sources.js.map +1 -1
- package/dist/render-auth.d.ts +14 -11
- package/dist/render-auth.d.ts.map +1 -1
- package/dist/render-auth.js +41 -108
- package/dist/render-auth.js.map +1 -1
- package/dist/render-database-sources.d.ts +7 -1
- package/dist/render-database-sources.d.ts.map +1 -1
- package/dist/render-database-sources.js +3 -2
- package/dist/render-database-sources.js.map +1 -1
- package/dist/render-database.d.ts +7 -10
- package/dist/render-database.d.ts.map +1 -1
- package/dist/render-database.js +12 -4
- package/dist/render-database.js.map +1 -1
- package/dist/render-database.types.d.ts +15 -0
- package/dist/render-database.types.d.ts.map +1 -0
- package/dist/render-database.types.js +2 -0
- package/dist/render-database.types.js.map +1 -0
- package/dist/render-route-sources.d.ts +3 -1
- package/dist/render-route-sources.d.ts.map +1 -1
- package/dist/render-route-sources.js +4 -2
- package/dist/render-route-sources.js.map +1 -1
- package/dist/render-routes.d.ts +1 -0
- package/dist/render-routes.d.ts.map +1 -1
- package/dist/render-routes.js +2 -1
- package/dist/render-routes.js.map +1 -1
- package/dist/render-service-members.d.ts +32 -0
- package/dist/render-service-members.d.ts.map +1 -0
- package/dist/render-service-members.js +61 -0
- package/dist/render-service-members.js.map +1 -0
- package/dist/render-service-requests.d.ts +35 -0
- package/dist/render-service-requests.d.ts.map +1 -0
- package/dist/render-service-requests.js +62 -0
- package/dist/render-service-requests.js.map +1 -0
- package/dist/render-service-support.d.ts +37 -0
- package/dist/render-service-support.d.ts.map +1 -0
- package/dist/render-service-support.js +74 -0
- package/dist/render-service-support.js.map +1 -0
- package/dist/render-service.d.ts +16 -13
- package/dist/render-service.d.ts.map +1 -1
- package/dist/render-service.js +33 -149
- package/dist/render-service.js.map +1 -1
- package/dist/render-service.types.d.ts +13 -0
- package/dist/render-service.types.d.ts.map +1 -0
- package/dist/render-service.types.js +2 -0
- package/dist/render-service.types.js.map +1 -0
- package/dist/scaffold-layout.d.ts +10 -0
- package/dist/scaffold-layout.d.ts.map +1 -0
- package/dist/scaffold-layout.js +29 -0
- package/dist/scaffold-layout.js.map +1 -0
- package/dist/templates/default/README.md +1 -1
- package/dist/templates/default/v1/agent/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/agent/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/agent/README.md +9 -0
- package/dist/templates/default/v1/agent/package.json +4 -4
- package/dist/templates/default/v1/agent/src/routes/hello/route.ts +2 -1
- package/dist/templates/default/v1/agent/src/{hello → services/hello}/agents/assistant.agent.ts +2 -1
- package/dist/templates/default/v1/agent/src/{hello → services/hello}/agents/review.agent.ts +1 -0
- package/dist/templates/default/v1/agent/src/{hello → services/hello}/functions/hello.function.ts +7 -0
- package/dist/templates/default/v1/agent/src/services/hello/service.ts +5 -0
- package/dist/templates/default/v1/agent/src/{hello → services/hello}/tools/lookup.tool.ts +2 -1
- package/dist/templates/default/v1/agent/tests/fixtures/lookup.tool.ts +2 -1
- package/dist/templates/default/v1/agent/tests/fixtures/mcp-options.ts +2 -1
- package/dist/templates/default/v1/agent/tests/unit/assistant.agent.test.ts +3 -2
- package/dist/templates/default/v1/agent/tests/unit/hello.function.test.ts +2 -1
- package/dist/templates/default/v1/agent/tests/unit/lookup.tool.test.ts +2 -1
- package/dist/templates/default/v1/agent/tests/unit/review.agent.test.ts +2 -1
- package/dist/templates/default/v1/agent/tsconfig.json +1 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/api/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/api/README.md +10 -0
- package/dist/templates/default/v1/api/package.json +3 -3
- package/dist/templates/default/v1/api/src/routes/echo/route.ts +2 -1
- package/dist/templates/default/v1/api/src/routes/hello/route.ts +2 -1
- package/dist/templates/default/v1/api/src/routes/orders/route.ts +2 -1
- package/dist/templates/default/v1/api/src/{echo → services/echo}/functions/echo.function.ts +1 -0
- package/dist/templates/default/v1/api/src/services/echo/service.ts +5 -0
- package/dist/templates/default/v1/api/src/{hello → services/hello}/functions/hello.function.ts +7 -0
- package/dist/templates/default/v1/api/src/services/hello/service.ts +5 -0
- package/dist/templates/default/v1/api/src/{orders → services/orders}/functions/create-order.function.ts +2 -1
- package/dist/templates/default/v1/api/src/{orders → services/orders}/functions/price-order.function.ts +1 -0
- package/dist/templates/default/v1/api/src/services/orders/service.ts +8 -0
- package/dist/templates/default/v1/api/tests/unit/echo.function.test.ts +2 -1
- package/dist/templates/default/v1/api/tests/unit/hello.function.test.ts +2 -1
- package/dist/templates/default/v1/api/tests/unit/orders.function.test.ts +2 -1
- package/dist/templates/default/v1/api/tsconfig.json +1 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/fullstack/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/fullstack/README.md +9 -0
- package/dist/templates/default/v1/fullstack/package.json +5 -5
- package/dist/templates/default/v1/fullstack/src/routes/hello/route.ts +2 -1
- package/dist/templates/default/v1/fullstack/src/{hello → services/hello}/agents/assistant.agent.ts +2 -1
- package/dist/templates/default/v1/fullstack/src/{hello → services/hello}/agents/review.agent.ts +1 -0
- package/dist/templates/default/v1/fullstack/src/{hello → services/hello}/functions/hello.function.ts +1 -0
- package/dist/templates/default/v1/fullstack/src/services/hello/service.ts +5 -0
- package/dist/templates/default/v1/fullstack/src/{hello → services/hello}/tools/lookup.tool.ts +2 -1
- package/dist/templates/default/v1/fullstack/tests/unit/assistant.agent.test.ts +3 -2
- package/dist/templates/default/v1/fullstack/tests/unit/hello.function.test.ts +2 -1
- package/dist/templates/default/v1/fullstack/tests/unit/review.agent.test.ts +2 -1
- package/dist/templates/default/v1/fullstack/tsconfig.json +1 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/minimal/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/minimal/README.md +10 -0
- package/dist/templates/default/v1/minimal/package.json +3 -3
- package/dist/templates/default/v1/minimal/src/routes/hello/route.ts +2 -1
- package/dist/templates/default/v1/minimal/src/{hello → services/hello}/functions/hello.function.ts +7 -0
- package/dist/templates/default/v1/minimal/src/services/hello/service.ts +5 -0
- package/dist/templates/default/v1/minimal/tests/unit/hello.function.test.ts +2 -1
- package/dist/templates/default/v1/minimal/tsconfig.json +1 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/SKILL.md +48 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/agent-apis.md +59 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/cli.md +63 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/config-environments.md +96 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/data-apis.md +74 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/domain-apis.md +92 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/http-apis.md +70 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/jobs-apis.md +49 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/layout-migration.md +35 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/observability-apis.md +53 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/realtime-apis.md +98 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/streaming-apis.md +75 -0
- package/dist/templates/default/v1/tasks/.agents/skills/relkit/references/testing-apis.md +71 -0
- package/dist/templates/default/v1/tasks/README.md +8 -1
- package/dist/templates/default/v1/tasks/package.json +3 -3
- package/dist/templates/default/v1/tasks/src/routes/health/route.ts +2 -1
- package/dist/templates/default/v1/tasks/src/{orders → services/orders}/functions/health.function.ts +1 -0
- package/dist/templates/default/v1/tasks/src/{orders → services/orders}/jobs/export-orders.job.ts +2 -1
- package/dist/templates/default/v1/tasks/src/services/orders/service.ts +11 -0
- package/dist/templates/default/v1/tasks/src/{orders → services/orders}/tasks/export-orders.task.ts +1 -0
- package/dist/templates/default/v1/tasks/tests/unit/export-orders.task.test.ts +2 -1
- package/dist/templates/default/v1/tasks/tsconfig.json +2 -0
- package/package.json +3 -3
- package/dist/templates/default/v1/agent/src/hello/service.ts +0 -4
- package/dist/templates/default/v1/api/src/echo/service.ts +0 -4
- package/dist/templates/default/v1/api/src/hello/service.ts +0 -4
- package/dist/templates/default/v1/api/src/orders/service.ts +0 -7
- package/dist/templates/default/v1/fullstack/src/hello/service.ts +0 -4
- package/dist/templates/default/v1/minimal/src/hello/service.ts +0 -4
- package/dist/templates/default/v1/tasks/src/orders/service.ts +0 -10
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds typed artifact requests and closes service include prerequisites before
|
|
3
|
+
* bundle planning. These pure calculations preserve the original request owner,
|
|
4
|
+
* installation policy and supported capability relationships.
|
|
5
|
+
*/
|
|
6
|
+
import type { AddRequest, ServiceInclude } from "./add-types.js";
|
|
7
|
+
import type { PlanBuilder } from "./plan-builder.js";
|
|
8
|
+
/** Artifacts in the existing explicit full service preset. */
|
|
9
|
+
export declare const FULL_SERVICE: readonly ServiceInclude[];
|
|
10
|
+
/**
|
|
11
|
+
* Adds the prerequisite declarations needed by selected bundle capabilities.
|
|
12
|
+
* @param input - Requested service-owned artifact kinds.
|
|
13
|
+
* @returns Requested kinds and their existing function/event/tool/prompt prerequisites.
|
|
14
|
+
*/
|
|
15
|
+
export declare function serviceIncludes(input: readonly ServiceInclude[]): Set<ServiceInclude>;
|
|
16
|
+
/**
|
|
17
|
+
* Builds a kind-specific request using the original transaction's common fields.
|
|
18
|
+
* @typeParam Kind - Discriminant of the selected artifact request.
|
|
19
|
+
* @param builder - Per-request planning owner.
|
|
20
|
+
* @param kind - Artifact kind selected by its renderer.
|
|
21
|
+
* @param options - Complete variant-specific request fields.
|
|
22
|
+
* @returns The same variant with preserved project-root and installation policy.
|
|
23
|
+
*/
|
|
24
|
+
export declare function serviceRequest<Kind extends AddRequest["kind"]>(builder: PlanBuilder, kind: Kind, options: Omit<Extract<AddRequest, {
|
|
25
|
+
kind: Kind;
|
|
26
|
+
}>, "kind" | "projectRoot" | "install">): Extract<AddRequest, {
|
|
27
|
+
kind: Kind;
|
|
28
|
+
}>;
|
|
29
|
+
/**
|
|
30
|
+
* Preserves the task execution model selected by the existing default job adapter.
|
|
31
|
+
* @param builder - Planning owner with discovered provider defaults.
|
|
32
|
+
* @returns Retryable for effect-mq, otherwise the existing durable model.
|
|
33
|
+
*/
|
|
34
|
+
export declare function serviceTaskExecution(builder: PlanBuilder): "durable" | "retryable";
|
|
35
|
+
//# sourceMappingURL=render-service-requests.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-service-requests.d.ts","sourceRoot":"","sources":["../src/render-service-requests.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,8DAA8D;AAC9D,eAAO,MAAM,YAAY,EAAE,SAAS,cAAc,EAcjD,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,GAAG,GAAG,CAAC,cAAc,CAAC,CAWrF;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,SAAS,UAAU,CAAC,MAAM,CAAC,EAC5D,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC,GACrF,OAAO,CAAC,UAAU,EAAE;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC,CASrC;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,CAGlF"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/** Artifacts in the existing explicit full service preset. */
|
|
2
|
+
export const FULL_SERVICE = [
|
|
3
|
+
"function",
|
|
4
|
+
"event-function",
|
|
5
|
+
"task",
|
|
6
|
+
"error",
|
|
7
|
+
"event",
|
|
8
|
+
"job",
|
|
9
|
+
"cache",
|
|
10
|
+
"bucket",
|
|
11
|
+
"tool",
|
|
12
|
+
"prompt",
|
|
13
|
+
"agent",
|
|
14
|
+
"constants",
|
|
15
|
+
"route",
|
|
16
|
+
];
|
|
17
|
+
/**
|
|
18
|
+
* Adds the prerequisite declarations needed by selected bundle capabilities.
|
|
19
|
+
* @param input - Requested service-owned artifact kinds.
|
|
20
|
+
* @returns Requested kinds and their existing function/event/tool/prompt prerequisites.
|
|
21
|
+
*/
|
|
22
|
+
export function serviceIncludes(input) {
|
|
23
|
+
const selected = new Set(input);
|
|
24
|
+
if (["error", "job", "tool", "route"].some((kind) => selected.has(kind)))
|
|
25
|
+
selected.add("function");
|
|
26
|
+
if (selected.has("event-function"))
|
|
27
|
+
selected.add("event");
|
|
28
|
+
if (selected.has("agent")) {
|
|
29
|
+
selected.add("function");
|
|
30
|
+
selected.add("tool");
|
|
31
|
+
selected.add("prompt");
|
|
32
|
+
}
|
|
33
|
+
return selected;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Builds a kind-specific request using the original transaction's common fields.
|
|
37
|
+
* @typeParam Kind - Discriminant of the selected artifact request.
|
|
38
|
+
* @param builder - Per-request planning owner.
|
|
39
|
+
* @param kind - Artifact kind selected by its renderer.
|
|
40
|
+
* @param options - Complete variant-specific request fields.
|
|
41
|
+
* @returns The same variant with preserved project-root and installation policy.
|
|
42
|
+
*/
|
|
43
|
+
export function serviceRequest(builder, kind, options) {
|
|
44
|
+
// Options omit all three injected keys and are constrained to this exact
|
|
45
|
+
// discriminant; TypeScript cannot reduce the generic Extract at construction.
|
|
46
|
+
return {
|
|
47
|
+
kind,
|
|
48
|
+
projectRoot: builder.discovery.projectRoot,
|
|
49
|
+
install: builder.request.install,
|
|
50
|
+
...options,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Preserves the task execution model selected by the existing default job adapter.
|
|
55
|
+
* @param builder - Planning owner with discovered provider defaults.
|
|
56
|
+
* @returns Retryable for effect-mq, otherwise the existing durable model.
|
|
57
|
+
*/
|
|
58
|
+
export function serviceTaskExecution(builder) {
|
|
59
|
+
const profile = builder.profiles.find((item) => item.capability === "job" && item.isDefault);
|
|
60
|
+
return profile?.adapter?.includes("effectMq") ? "retryable" : "durable";
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=render-service-requests.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-service-requests.js","sourceRoot":"","sources":["../src/render-service-requests.ts"],"names":[],"mappings":"AAQA,8DAA8D;AAC9D,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,UAAU;IACV,gBAAgB;IAChB,MAAM;IACN,OAAO;IACP,OAAO;IACP,KAAK;IACL,OAAO;IACP,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,OAAO;IACP,WAAW;IACX,OAAO;CACR,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,KAAgC;IAC9D,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IAChC,IAAK,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjF,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC3B,IAAI,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1D,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1B,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACzB,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAoB,EACpB,IAAU,EACV,OAAsF;IAEtF,yEAAyE;IACzE,8EAA8E;IAC9E,OAAO;QACL,IAAI;QACJ,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,WAAW;QAC1C,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO;QAChC,GAAG,OAAO;KAC4B,CAAC;AAC3C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAoB;IACvD,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7F,OAAO,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1E,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Composes optional managed resources, AI declarations and HTTP routes into a
|
|
3
|
+
* service bundle after prerequisites exist. These are source declarations only;
|
|
4
|
+
* provider/model activation remains outside scaffold planning.
|
|
5
|
+
*/
|
|
6
|
+
import { Effect } from "effect";
|
|
7
|
+
import type { ServiceInclude } from "./add-types.js";
|
|
8
|
+
import type { PlanBuilder } from "./plan-builder.js";
|
|
9
|
+
import type { DomainTarget } from "./domain-planning.types.js";
|
|
10
|
+
import type { ServicePrimaryArtifacts } from "./render-service.types.js";
|
|
11
|
+
/**
|
|
12
|
+
* Plans optional cache/bucket declarations with their existing provider policies.
|
|
13
|
+
* @param builder - Per-request planning owner.
|
|
14
|
+
* @param target - Selected service boundary.
|
|
15
|
+
* @param selected - Closed bundle capability selection.
|
|
16
|
+
* @returns Lazy renderer completion retaining filesystem authority and typed failures.
|
|
17
|
+
*/
|
|
18
|
+
export declare const renderServiceResourcesEffect: (builder: PlanBuilder, target: DomainTarget, selected: ReadonlySet<ServiceInclude>) => Effect.Effect<void, import("./generator-errors.js").GeneratorIoError | import("./generator-errors.js").GeneratorDomainError, import("./generator-filesystem.js").GeneratorFileSystem>;
|
|
19
|
+
/**
|
|
20
|
+
* Plans tools/prompts before agents referencing their established identities.
|
|
21
|
+
* @param builder - Per-request planning owner.
|
|
22
|
+
* @param target - Selected service boundary.
|
|
23
|
+
* @param selected - Closed bundle capability selection.
|
|
24
|
+
* @param primary - Public callable prerequisites for generated tools.
|
|
25
|
+
* @returns Lazy source-only AI composition with no model calls.
|
|
26
|
+
*/
|
|
27
|
+
export declare const renderServiceAiEffect: (builder: PlanBuilder, target: DomainTarget, selected: ReadonlySet<ServiceInclude>, primary: ServicePrimaryArtifacts) => Effect.Effect<void, import("./generator-errors.js").GeneratorIoError | import("./generator-errors.js").GeneratorDomainError, import("./generator-filesystem.js").GeneratorFileSystem>;
|
|
28
|
+
/**
|
|
29
|
+
* Finishes constants and public service-route mappings after callable planning.
|
|
30
|
+
* @param builder - Per-request planning owner.
|
|
31
|
+
* @param target - Selected service boundary and logical identity.
|
|
32
|
+
* @param selected - Closed bundle capability selection.
|
|
33
|
+
* @param primary - Public callable identity selected for the route.
|
|
34
|
+
* @returns Lazy final source planning, preserving route URL and transport defaults.
|
|
35
|
+
*/
|
|
36
|
+
export declare const renderServiceTransportEffect: (builder: PlanBuilder, target: DomainTarget, selected: ReadonlySet<ServiceInclude>, primary: ServicePrimaryArtifacts) => Effect.Effect<void, import("./generator-errors.js").GeneratorIoError | import("./generator-errors.js").GeneratorDomainError, import("./generator-filesystem.js").GeneratorFileSystem>;
|
|
37
|
+
//# sourceMappingURL=render-service-support.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-service-support.d.ts","sourceRoot":"","sources":["../src/render-service-support.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAQhC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAkB,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEzE;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,8QAiBxC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,gTAoCjC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,4BAA4B,gTAqBxC,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Composes optional managed resources, AI declarations and HTTP routes into a
|
|
3
|
+
* service bundle after prerequisites exist. These are source declarations only;
|
|
4
|
+
* provider/model activation remains outside scaffold planning.
|
|
5
|
+
*/
|
|
6
|
+
import { Effect } from "effect";
|
|
7
|
+
import { observeExecution } from "@relkit/contracts/operation";
|
|
8
|
+
import { scaffoldErrors } from "./generator-errors.js";
|
|
9
|
+
import { renderCacheEffect, renderBucketEffect } from "./render-resources.js";
|
|
10
|
+
import { renderAgentEffect, renderToolEffect } from "./render-ai.js";
|
|
11
|
+
import { renderPromptEffect, renderConstantsEffect } from "./render-domain.js";
|
|
12
|
+
import { renderRouteEffect } from "./render-routes.js";
|
|
13
|
+
import { serviceRequest } from "./render-service-requests.js";
|
|
14
|
+
/**
|
|
15
|
+
* Plans optional cache/bucket declarations with their existing provider policies.
|
|
16
|
+
* @param builder - Per-request planning owner.
|
|
17
|
+
* @param target - Selected service boundary.
|
|
18
|
+
* @param selected - Closed bundle capability selection.
|
|
19
|
+
* @returns Lazy renderer completion retaining filesystem authority and typed failures.
|
|
20
|
+
*/
|
|
21
|
+
export const renderServiceResourcesEffect = Effect.fn("Scaffold.renderServiceResources")(function* (builder, target, selected) {
|
|
22
|
+
if (selected.has("cache"))
|
|
23
|
+
yield* renderCacheEffect(builder, target, serviceRequest(builder, "cache", { name: "Example" }));
|
|
24
|
+
if (selected.has("bucket"))
|
|
25
|
+
yield* renderBucketEffect(builder, target, serviceRequest(builder, "bucket", { name: "Example" }));
|
|
26
|
+
}, (effect) => observeExecution("generator", "planning.renderServiceResources", scaffoldErrors(effect)));
|
|
27
|
+
/**
|
|
28
|
+
* Plans tools/prompts before agents referencing their established identities.
|
|
29
|
+
* @param builder - Per-request planning owner.
|
|
30
|
+
* @param target - Selected service boundary.
|
|
31
|
+
* @param selected - Closed bundle capability selection.
|
|
32
|
+
* @param primary - Public callable prerequisites for generated tools.
|
|
33
|
+
* @returns Lazy source-only AI composition with no model calls.
|
|
34
|
+
*/
|
|
35
|
+
export const renderServiceAiEffect = Effect.fn("Scaffold.renderServiceAi")(function* (builder, target, selected, primary) {
|
|
36
|
+
let tool;
|
|
37
|
+
if (selected.has("tool"))
|
|
38
|
+
tool = yield* renderToolEffect(builder, target, serviceRequest(builder, "tool", {
|
|
39
|
+
name: "Example",
|
|
40
|
+
target: primary.fn?.id ?? "example",
|
|
41
|
+
sideEffect: "read",
|
|
42
|
+
approval: "never",
|
|
43
|
+
}));
|
|
44
|
+
let prompt;
|
|
45
|
+
if (selected.has("prompt"))
|
|
46
|
+
prompt = yield* renderPromptEffect(builder, target, "Example", [
|
|
47
|
+
"Use the available tool and answer concisely.",
|
|
48
|
+
]);
|
|
49
|
+
if (selected.has("agent"))
|
|
50
|
+
yield* renderAgentEffect(builder, target, serviceRequest(builder, "agent", {
|
|
51
|
+
name: "Example",
|
|
52
|
+
tools: tool ? [tool.id] : [],
|
|
53
|
+
prompt: prompt?.id ?? "example",
|
|
54
|
+
}));
|
|
55
|
+
}, (effect) => observeExecution("generator", "planning.renderServiceAi", scaffoldErrors(effect)));
|
|
56
|
+
/**
|
|
57
|
+
* Finishes constants and public service-route mappings after callable planning.
|
|
58
|
+
* @param builder - Per-request planning owner.
|
|
59
|
+
* @param target - Selected service boundary and logical identity.
|
|
60
|
+
* @param selected - Closed bundle capability selection.
|
|
61
|
+
* @param primary - Public callable identity selected for the route.
|
|
62
|
+
* @returns Lazy final source planning, preserving route URL and transport defaults.
|
|
63
|
+
*/
|
|
64
|
+
export const renderServiceTransportEffect = Effect.fn("Scaffold.renderServiceTransport")(function* (builder, target, selected, primary) {
|
|
65
|
+
if (selected.has("constants"))
|
|
66
|
+
yield* renderConstantsEffect(builder, target, "Example");
|
|
67
|
+
if (selected.has("route"))
|
|
68
|
+
yield* renderRouteEffect(builder, serviceRequest(builder, "route", {
|
|
69
|
+
path: `/${target.domain.fileStem}`,
|
|
70
|
+
mode: "service-route",
|
|
71
|
+
maps: { GET: primary.fn?.binding ?? "example" },
|
|
72
|
+
}), target);
|
|
73
|
+
}, (effect) => observeExecution("generator", "planning.renderServiceTransport", scaffoldErrors(effect)));
|
|
74
|
+
//# sourceMappingURL=render-service-support.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-service-support.js","sourceRoot":"","sources":["../src/render-service-support.ts"],"names":[],"mappings":"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"}
|
package/dist/render-service.d.ts
CHANGED
|
@@ -1,26 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plans a service bundle at the compiler-selected flat or grouped boundary.
|
|
3
|
+
* Existing renderers retain logical IDs, policies and source-only planning; the
|
|
4
|
+
* generator transaction owns filesystem publication and failure restoration.
|
|
5
|
+
*/
|
|
1
6
|
import { Effect } from "effect";
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import { type AddRequest, type ServiceInclude } from "./add-types.js";
|
|
5
|
-
import { PlanBuilder } from "./plan-builder.js";
|
|
7
|
+
import { type AddRequest } from "./add-types.js";
|
|
8
|
+
import type { PlanBuilder } from "./plan-builder.js";
|
|
6
9
|
/**
|
|
7
|
-
* Plans
|
|
8
|
-
* @param builder - Per-request planning owner.
|
|
9
|
-
* @param request - Normalized
|
|
10
|
-
* @returns
|
|
10
|
+
* Plans a complete service and closes its requested artifact prerequisites.
|
|
11
|
+
* @param builder - Per-request planning owner with declaration-only discovery.
|
|
12
|
+
* @param request - Normalized service name and requested capability preset.
|
|
13
|
+
* @returns Lazy completion with typed scaffold/filesystem failures; no resource activation.
|
|
11
14
|
*/
|
|
12
15
|
export declare const renderServiceEffect: (builder: PlanBuilder, request: import("./add-types.js").AddRequestBase & Readonly<{
|
|
13
16
|
kind: "service";
|
|
14
17
|
name: string;
|
|
15
18
|
}> & Readonly<{
|
|
16
19
|
full: boolean;
|
|
17
|
-
include: readonly ServiceInclude[];
|
|
18
|
-
}>) => Effect.Effect<
|
|
20
|
+
include: readonly import("./add-types.js").ServiceInclude[];
|
|
21
|
+
}>) => Effect.Effect<undefined, import("./generator-errors.js").GeneratorIoError | import("./generator-errors.js").GeneratorDomainError, import("./generator-filesystem.js").GeneratorFileSystem>;
|
|
19
22
|
/**
|
|
20
|
-
* Preserves the
|
|
23
|
+
* Preserves the existing Promise compatibility boundary for service-bundle planning.
|
|
21
24
|
* @param builder - Per-request planning owner.
|
|
22
|
-
* @param request -
|
|
23
|
-
* @returns
|
|
25
|
+
* @param request - Complete normalized service request.
|
|
26
|
+
* @returns After all requested source declarations are planned; native errors retain identity.
|
|
24
27
|
*/
|
|
25
28
|
export declare function renderService(builder: PlanBuilder, request: Extract<AddRequest, {
|
|
26
29
|
kind: "service";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-service.d.ts","sourceRoot":"","sources":["../src/render-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"render-service.d.ts","sourceRoot":"","sources":["../src/render-service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAWtF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;;;;iMA8B/B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,GAChD,OAAO,CAAC,IAAI,CAAC,CAEf"}
|
package/dist/render-service.js
CHANGED
|
@@ -1,167 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plans a service bundle at the compiler-selected flat or grouped boundary.
|
|
3
|
+
* Existing renderers retain logical IDs, policies and source-only planning; the
|
|
4
|
+
* generator transaction owns filesystem publication and failure restoration.
|
|
5
|
+
*/
|
|
1
6
|
import { Effect } from "effect";
|
|
2
7
|
import { observeExecution } from "@relkit/contracts/operation";
|
|
3
|
-
import {
|
|
4
|
-
import { scaffoldErrors, } from "./generator-errors.js";
|
|
8
|
+
import { scaffoldErrors, domainError, domainTry } from "./generator-errors.js";
|
|
5
9
|
import { runGeneratorPromise } from "./generator-runtime.js";
|
|
6
|
-
import { ADD_FAILURE_CODES, AddScaffoldError
|
|
10
|
+
import { ADD_FAILURE_CODES, AddScaffoldError } from "./add-types.js";
|
|
7
11
|
import { normalizeArtifactName } from "./add-name.js";
|
|
8
12
|
import { serviceSource } from "./domain-planning.js";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import { renderRouteEffect } from "./render-routes.js";
|
|
14
|
-
/**
|
|
15
|
-
* Artifacts included by the explicit full service preset.
|
|
16
|
-
*/
|
|
17
|
-
const FULL = [
|
|
18
|
-
"function",
|
|
19
|
-
"event-function",
|
|
20
|
-
"task",
|
|
21
|
-
"error",
|
|
22
|
-
"event",
|
|
23
|
-
"job",
|
|
24
|
-
"cache",
|
|
25
|
-
"bucket",
|
|
26
|
-
"tool",
|
|
27
|
-
"prompt",
|
|
28
|
-
"agent",
|
|
29
|
-
"constants",
|
|
30
|
-
"route",
|
|
31
|
-
];
|
|
13
|
+
import { scaffoldServiceBoundary } from "./scaffold-layout.js";
|
|
14
|
+
import { FULL_SERVICE, serviceIncludes } from "./render-service-requests.js";
|
|
15
|
+
import { renderServiceMembersEffect, renderServiceWorkEffect } from "./render-service-members.js";
|
|
16
|
+
import { renderServiceResourcesEffect, renderServiceAiEffect, renderServiceTransportEffect, } from "./render-service-support.js";
|
|
32
17
|
/**
|
|
33
|
-
* Plans
|
|
34
|
-
* @param builder - Per-request planning owner.
|
|
35
|
-
* @param request - Normalized
|
|
36
|
-
* @returns
|
|
18
|
+
* Plans a complete service and closes its requested artifact prerequisites.
|
|
19
|
+
* @param builder - Per-request planning owner with declaration-only discovery.
|
|
20
|
+
* @param request - Normalized service name and requested capability preset.
|
|
21
|
+
* @returns Lazy completion with typed scaffold/filesystem failures; no resource activation.
|
|
37
22
|
*/
|
|
38
23
|
export const renderServiceEffect = Effect.fn("Scaffold.renderService")(function* (builder, request) {
|
|
39
|
-
const domain = normalizeArtifactName(request.name);
|
|
24
|
+
const domain = yield* domainTry(() => normalizeArtifactName(request.name));
|
|
40
25
|
if (builder.discovery.services.some((service) => service.domain === domain.fileStem) ||
|
|
41
26
|
builder.discovery.artifacts.some((artifact) => artifact.domain === domain.fileStem)) {
|
|
42
|
-
|
|
27
|
+
return yield* domainError(new AddScaffoldError(ADD_FAILURE_CODES.collision, `Domain ${domain.fileStem} already exists.`));
|
|
43
28
|
}
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
servicePath: `src/${domain.fileStem}/service.ts`,
|
|
47
|
-
service: undefined,
|
|
48
|
-
};
|
|
29
|
+
const servicePath = yield* domainTry(() => scaffoldServiceBoundary(builder.discovery, domain.fileStem));
|
|
30
|
+
const target = { domain, servicePath, service: undefined };
|
|
49
31
|
yield* builder.createEffect(target.servicePath, serviceSource(domain));
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
})
|
|
62
|
-
: undefined;
|
|
63
|
-
const taskExecution = selected.has("task") ? taskExecutionFor(builder) : undefined;
|
|
64
|
-
const task = selected.has("task")
|
|
65
|
-
? yield* renderTaskEffect(builder, target, requestFor(builder, "task", {
|
|
66
|
-
name: "Example",
|
|
67
|
-
version: "1",
|
|
68
|
-
execution: taskExecution ?? "durable",
|
|
69
|
-
}))
|
|
70
|
-
: undefined;
|
|
71
|
-
if (selected.has("event-function")) {
|
|
72
|
-
yield* renderEventFunctionEffect(builder, target, requestFor(builder, "event-function", {
|
|
73
|
-
name: "On Example",
|
|
74
|
-
event: event?.id ?? "example",
|
|
75
|
-
delivery: "durable",
|
|
76
|
-
}));
|
|
77
|
-
}
|
|
78
|
-
if (selected.has("job")) {
|
|
79
|
-
yield* renderJobEffect(builder, target, requestFor(builder, "job", { name: "Example", target: task?.id ?? fn?.id ?? "example" }));
|
|
80
|
-
}
|
|
81
|
-
if (selected.has("cache")) {
|
|
82
|
-
yield* renderCacheEffect(builder, target, requestFor(builder, "cache", { name: "Example" }));
|
|
83
|
-
}
|
|
84
|
-
if (selected.has("bucket")) {
|
|
85
|
-
yield* renderBucketEffect(builder, target, requestFor(builder, "bucket", { name: "Example" }));
|
|
86
|
-
}
|
|
87
|
-
const tool = selected.has("tool")
|
|
88
|
-
? yield* renderToolEffect(builder, target, requestFor(builder, "tool", {
|
|
89
|
-
name: "Example",
|
|
90
|
-
target: fn?.id ?? "example",
|
|
91
|
-
sideEffect: "read",
|
|
92
|
-
approval: "never",
|
|
93
|
-
}))
|
|
94
|
-
: undefined;
|
|
95
|
-
const prompt = selected.has("prompt")
|
|
96
|
-
? yield* renderPromptEffect(builder, target, "Example", [
|
|
97
|
-
"Use the available tool and answer concisely.",
|
|
98
|
-
])
|
|
99
|
-
: undefined;
|
|
100
|
-
if (selected.has("agent")) {
|
|
101
|
-
yield* renderAgentEffect(builder, target, requestFor(builder, "agent", {
|
|
102
|
-
name: "Example",
|
|
103
|
-
tools: tool ? [tool.id] : [],
|
|
104
|
-
prompt: prompt?.id ?? "example",
|
|
105
|
-
}));
|
|
106
|
-
}
|
|
107
|
-
if (selected.has("constants"))
|
|
108
|
-
yield* renderConstantsEffect(builder, target, "Example");
|
|
109
|
-
if (selected.has("route")) {
|
|
110
|
-
yield* renderRouteEffect(builder, requestFor(builder, "route", {
|
|
111
|
-
path: `/${domain.fileStem}`,
|
|
112
|
-
mode: "service-route",
|
|
113
|
-
maps: { GET: fn?.binding ?? "example" },
|
|
114
|
-
}), target);
|
|
115
|
-
}
|
|
32
|
+
let includes = request.include;
|
|
33
|
+
if (request.full)
|
|
34
|
+
includes = FULL_SERVICE;
|
|
35
|
+
else if (includes.length === 0)
|
|
36
|
+
includes = ["function"];
|
|
37
|
+
const selected = serviceIncludes(includes);
|
|
38
|
+
const primary = yield* renderServiceMembersEffect(builder, target, selected);
|
|
39
|
+
yield* renderServiceWorkEffect(builder, target, selected, primary);
|
|
40
|
+
yield* renderServiceResourcesEffect(builder, target, selected);
|
|
41
|
+
yield* renderServiceAiEffect(builder, target, selected, primary);
|
|
42
|
+
yield* renderServiceTransportEffect(builder, target, selected, primary);
|
|
116
43
|
}, (effect) => observeExecution("generator", "planning.renderService", scaffoldErrors(effect)));
|
|
117
44
|
/**
|
|
118
|
-
*
|
|
119
|
-
* @param builder - Per-request planning owner.
|
|
120
|
-
* @returns Retryable for effect-mq, otherwise durable.
|
|
121
|
-
*/
|
|
122
|
-
function taskExecutionFor(builder) {
|
|
123
|
-
const profile = builder.profiles.find((item) => item.capability === "job" && item.isDefault);
|
|
124
|
-
return profile?.adapter?.includes("effectMq") ? "retryable" : "durable";
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Adds prerequisite artifacts needed by the requested service includes.
|
|
128
|
-
* @param input - Explicit service artifact includes.
|
|
129
|
-
* @returns A set containing requested artifacts and their function/event/tool/prompt dependencies.
|
|
130
|
-
*/
|
|
131
|
-
function closure(input) {
|
|
132
|
-
const selected = new Set(input);
|
|
133
|
-
if (["error", "job", "tool", "route"].some((kind) => selected.has(kind)))
|
|
134
|
-
selected.add("function");
|
|
135
|
-
if (selected.has("event-function"))
|
|
136
|
-
selected.add("event");
|
|
137
|
-
if (selected.has("agent")) {
|
|
138
|
-
selected.add("function");
|
|
139
|
-
selected.add("tool");
|
|
140
|
-
selected.add("prompt");
|
|
141
|
-
}
|
|
142
|
-
return selected;
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Projects shared planning fields into one kind-specific scaffold request.
|
|
146
|
-
* @typeParam Kind - Discriminant identifying the constructed artifact request.
|
|
147
|
-
* @param builder - Per-request planning owner.
|
|
148
|
-
* @param kind - Artifact kind whose request is constructed.
|
|
149
|
-
* @param options - Fields specific to the selected artifact request.
|
|
150
|
-
* @returns The selected request with project/install fields from its request owner.
|
|
151
|
-
*/
|
|
152
|
-
function requestFor(builder, kind, options) {
|
|
153
|
-
return {
|
|
154
|
-
kind,
|
|
155
|
-
projectRoot: builder.discovery.projectRoot,
|
|
156
|
-
install: builder.request.install,
|
|
157
|
-
...options,
|
|
158
|
-
};
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Preserves the renderService Promise compatibility API.
|
|
45
|
+
* Preserves the existing Promise compatibility boundary for service-bundle planning.
|
|
162
46
|
* @param builder - Per-request planning owner.
|
|
163
|
-
* @param request -
|
|
164
|
-
* @returns
|
|
47
|
+
* @param request - Complete normalized service request.
|
|
48
|
+
* @returns After all requested source declarations are planned; native errors retain identity.
|
|
165
49
|
*/
|
|
166
50
|
export function renderService(builder, request) {
|
|
167
51
|
return runGeneratorPromise(renderServiceEffect(builder, request));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-service.js","sourceRoot":"","sources":["../src/render-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"render-service.js","sourceRoot":"","sources":["../src/render-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Carries prerequisite callable/event/task artifacts between service-bundle planning
|
|
3
|
+
* stages. Values refer to planned declarations only; filesystem publication and
|
|
4
|
+
* resource lifetime remain owned by the generator transaction.
|
|
5
|
+
*/
|
|
6
|
+
import type { DomainArtifact } from "./domain-planning.types.js";
|
|
7
|
+
/** Resolved prerequisites used by job, tool, agent and route rendering. */
|
|
8
|
+
export interface ServicePrimaryArtifacts {
|
|
9
|
+
readonly fn: DomainArtifact | undefined;
|
|
10
|
+
readonly event: DomainArtifact | undefined;
|
|
11
|
+
readonly task: DomainArtifact | undefined;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=render-service.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-service.types.d.ts","sourceRoot":"","sources":["../src/render-service.types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,2EAA2E;AAC3E,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,cAAc,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,SAAS,CAAC;IAC3C,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,SAAS,CAAC;CAC3C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-service.types.js","sourceRoot":"","sources":["../src/render-service.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ProjectDiscovery } from "./project-discovery-types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Locates an existing service or constructs a new boundary in the selected layout.
|
|
4
|
+
* @param discovery - Declaration-only project facts produced by compiler discovery.
|
|
5
|
+
* @param name - Validated kebab-case service directory name.
|
|
6
|
+
* @returns Actual existing boundary or a grouped/flat destination for a new service.
|
|
7
|
+
* @throws AddScaffoldError for a mixed or otherwise structurally invalid layout.
|
|
8
|
+
*/
|
|
9
|
+
export declare function scaffoldServiceBoundary(discovery: ProjectDiscovery, name: string): string;
|
|
10
|
+
//# sourceMappingURL=scaffold-layout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scaffold-layout.d.ts","sourceRoot":"","sources":["../src/scaffold-layout.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAgBzF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chooses new scaffold boundaries from compiler-backed layout discovery while
|
|
3
|
+
* preserving existing physical service paths. Older manually supplied planning
|
|
4
|
+
* records use the same pure contracts rather than a second folder-depth rule.
|
|
5
|
+
*/
|
|
6
|
+
import { selectApplicationLayout } from "@relkit/contracts";
|
|
7
|
+
import { ADD_FAILURE_CODES, AddScaffoldError } from "./add-types.js";
|
|
8
|
+
/**
|
|
9
|
+
* Locates an existing service or constructs a new boundary in the selected layout.
|
|
10
|
+
* @param discovery - Declaration-only project facts produced by compiler discovery.
|
|
11
|
+
* @param name - Validated kebab-case service directory name.
|
|
12
|
+
* @returns Actual existing boundary or a grouped/flat destination for a new service.
|
|
13
|
+
* @throws AddScaffoldError for a mixed or otherwise structurally invalid layout.
|
|
14
|
+
*/
|
|
15
|
+
export function scaffoldServiceBoundary(discovery, name) {
|
|
16
|
+
const layout = discovery.layout ??
|
|
17
|
+
selectApplicationLayout(discovery.projectRoot, [
|
|
18
|
+
...discovery.artifacts.map((artifact) => ({ file: artifact.path, kind: artifact.kind })),
|
|
19
|
+
...discovery.services.map((service) => ({ file: service.path, kind: "service" })),
|
|
20
|
+
]);
|
|
21
|
+
if (layout.issues.length)
|
|
22
|
+
throw new AddScaffoldError(ADD_FAILURE_CODES.invalidProject, layout.issues.map((issue) => `${issue.file}: ${issue.message}`).join("\n"));
|
|
23
|
+
const existing = discovery.services.find((service) => service.domain === name);
|
|
24
|
+
if (existing)
|
|
25
|
+
return existing.path;
|
|
26
|
+
const root = layout.kind === "grouped" ? "src/services" : "src";
|
|
27
|
+
return `${root}/${name}/service.ts`;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=scaffold-layout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scaffold-layout.js","sourceRoot":"","sources":["../src/scaffold-layout.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGrE;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAA2B,EAAE,IAAY;IAC/E,MAAM,MAAM,GACV,SAAS,CAAC,MAAM;QAChB,uBAAuB,CAAC,SAAS,CAAC,WAAW,EAAE;YAC7C,GAAG,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YACxF,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;SAClF,CAAC,CAAC;IACL,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM;QACtB,MAAM,IAAI,gBAAgB,CACxB,iBAAiB,CAAC,cAAc,EAChC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC3E,CAAC;IACJ,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC;IAC/E,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC,IAAI,CAAC;IACnC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC;IAChE,OAAO,GAAG,IAAI,IAAI,IAAI,aAAa,CAAC;AACtC,CAAC"}
|
|
@@ -8,6 +8,6 @@ scaffolder:
|
|
|
8
8
|
- `agent` — the minimal example plus a read-only tool and agent descriptor.
|
|
9
9
|
|
|
10
10
|
Each variant is self-contained and can be copied as a project root. It uses
|
|
11
|
-
the current checked-in RelKit package version (`0.7.
|
|
11
|
+
the current checked-in RelKit package version (`0.7.6`), Bun `1.3.10`, and
|
|
12
12
|
TypeScript `5.9.3`. The generator owns project-name substitution and later
|
|
13
13
|
installation/Git behavior.
|