@ratio-mcp/dev-server 1.5.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,118 @@
1
+ # @ratio-mcp/dev-server
2
+
3
+ > MCP server exposing 33 individually-callable tools that cover the full Ratio app-creation lifecycle. Production environment.
4
+
5
+ Not installed directly — included via [`@ratio-mcp/setup`](https://www.npmjs.com/package/@ratio-mcp/setup).
6
+
7
+ ---
8
+
9
+ ## What it does
10
+
11
+ Lets developers describe an app in plain English and walks them through every phase:
12
+
13
+ ```
14
+ auth → app creation → scope selection → webhook setup
15
+ → scaffold frontend → build → validate → submit → review
16
+ → publish → scaffold backend → generate API routes
17
+ ```
18
+
19
+ Each tool is gated by a **prerequisite-graph guard**. Calling `upload_build` before `validate_build` returns a structured error showing exactly which tools are missing and the chain needed to unblock — the LLM self-corrects instead of guessing.
20
+
21
+ ---
22
+
23
+ ## Tool catalog (33 tools)
24
+
25
+ | Category | Tools |
26
+ |---|---|
27
+ | **Auth** (3) | `developer_signup`, `developer_verify_otp`, `developer_login` |
28
+ | **Reference data** (1) | `get_categories` |
29
+ | **Hookdeck** (1) | `setup_hookdeck` |
30
+ | **App management** (5) | `create_app`, `get_app`, `update_app`, `list_apps`, `delete_app` |
31
+ | **Requirements** (3) | `gather_requirements`, `define_app_requirements`, `validate_scopes` |
32
+ | **Scaffold** (2) | `scaffold_frontend`, `scaffold_backend` |
33
+ | **Token mgmt** (2) | `refresh_access_token`, `check_token_status` |
34
+ | **Codegen** (1) | `generate_api_routes` |
35
+ | **Build** (3) | `build_frontend`, `validate_build`, `create_submission_zip` |
36
+ | **Submission** (4) | `upload_build`, `submit_for_review`, `get_app_status`, `publish_app` |
37
+ | **Webhooks** (5) | `get_webhook_topics`, `create_webhooks`, `list_webhooks`, `toggle_webhook`, `delete_webhook` |
38
+ | **Lifecycle / status** (2) | `get_app_lifecycle`, `get_status` |
39
+
40
+ Call `get_status` at any time to see which tools are completed, available, or blocked by missing prerequisites.
41
+
42
+ ---
43
+
44
+ ## Generated artifacts (written to developer's filesystem)
45
+
46
+ When the developer runs `scaffold_frontend` + `scaffold_backend` + `generate_api_routes`:
47
+
48
+ ```
49
+ ~/Desktop/<project>/
50
+ ├── frontend/ # React + Vite (auth, routing, layout pre-wired)
51
+ │ └── ...
52
+ └── backend/ # NestJS
53
+ └── src/
54
+ ├── main.ts
55
+ ├── app.module.ts # auto-patched with new module imports
56
+ ├── oauth/ # OAuth callback handler (merchant install)
57
+ ├── orders/ # scope-filtered from schemas/orders.json
58
+ │ ├── orders.controller.ts
59
+ │ ├── orders.service.ts
60
+ │ └── orders.module.ts
61
+ ├── products/ # same pattern for products
62
+ └── webhook/ # only if webhooks configured
63
+ ├── webhook.controller.ts # HMAC-SHA256 signature verification
64
+ ├── webhook.service.ts # 8 orders + 3 products event handlers
65
+ └── webhook.module.ts
66
+ ```
67
+
68
+ After `generate_api_routes`, the backend auto-starts on port 3000 with `npm run dev`. If Hookdeck was configured earlier, a public tunnel is also live.
69
+
70
+ ---
71
+
72
+ ## Webhook event coverage
73
+
74
+ The generated `webhook.service.ts` routes these events out of the box:
75
+
76
+ | Resource | Events handled |
77
+ |---|---|
78
+ | Orders (8) | `orders/create` (also alias `order-create`), `orders/updated`, `orders/cancelled`, `orders/fulfilled`, `orders/paid`, `orders/partially_fulfilled`, `orders/delete`, `orders/edited` |
79
+ | Products (3) | `products/create`, `products/update`, `products/delete` |
80
+ | App (1) | `app/uninstalled` |
81
+
82
+ Other events the platform fires (`customers/*`, `inventory/*`, `collections/*`, etc.) hit the `default:` branch and log a warning — they need handler stubs added if the developer subscribes to them.
83
+
84
+ ---
85
+
86
+ ## Environment
87
+
88
+ **Production** — `https://gkx.gokwik.co/aes`
89
+
90
+ Override at runtime via `RATIO_API_BASE_URL` in the developer's `.env` file (loaded before the server starts).
91
+
92
+ ---
93
+
94
+ ## Persistent state
95
+
96
+ The MCP keeps per-user state in `~/.ratio-v2/`, created lazily at first use. State survives Claude Desktop restarts — in-progress work isn't lost across sessions.
97
+
98
+ **Active:**
99
+
100
+ | Path | Purpose |
101
+ |---|---|
102
+ | `~/.ratio-v2/requirements.json` | Per-app scope + project-path state. Written by `define_app_requirements`, enriched by `scaffold_frontend`, read by `generate_api_routes` to scope-filter the generated controllers. **Load-bearing — the whole multi-session codegen flow depends on it.** |
103
+
104
+
105
+ ## Logging
106
+
107
+ Dual output:
108
+
109
+ - **stderr** (MCP protocol — visible in Claude Desktop logs)
110
+ - **File** (`logs/dev-server.log`)
111
+
112
+ Key prefixes: `[tool-guard]`, `[session-state]`, `API_REQ:`, `API_RES:`, `API_ERR:`.
113
+
114
+ ---
115
+
116
+ ## License
117
+
118
+ UNLICENSED — internal to the Ratio platform / GoKwik.
package/dist/index.js CHANGED
File without changes
@@ -47,7 +47,7 @@
47
47
  "path": "/api/v1/orders",
48
48
  "controller_order": 3,
49
49
  "handler_name": "createOrder",
50
- "required_scope": "order-create",
50
+ "required_scope": "write_orders",
51
51
  "summary": "Create a new order",
52
52
  "description": "Create an order in the merchant's store.",
53
53
  "request_body": {
@@ -74,7 +74,7 @@
74
74
  "path": "/api/v1/orders/:id",
75
75
  "controller_order": 4,
76
76
  "handler_name": "updateOrder",
77
- "required_scope": "order-create",
77
+ "required_scope": "write_orders",
78
78
  "summary": "Update an existing order",
79
79
  "description": "Update order fields. Only provided fields are modified.",
80
80
  "path_params": [
@@ -101,7 +101,7 @@
101
101
  "path": "/api/v1/orders/:id/cancel",
102
102
  "controller_order": 5,
103
103
  "handler_name": "cancelOrder",
104
- "required_scope": "order-create",
104
+ "required_scope": "write_orders",
105
105
  "summary": "Cancel an existing order",
106
106
  "description": "Cancel an existing order with optional reason and restock settings.",
107
107
  "path_params": [
@@ -123,7 +123,7 @@
123
123
  "path": "/api/v1/orders/:id/external-id",
124
124
  "controller_order": 6,
125
125
  "handler_name": "updateOrderExternalId",
126
- "required_scope": "order-create",
126
+ "required_scope": "write_orders",
127
127
  "summary": "Update external ID for an order",
128
128
  "description": "Updates the external_order_id field for a single order. Useful for syncing with external systems.",
129
129
  "path_params": [
@@ -9,7 +9,7 @@
9
9
  "endpoints": [
10
10
  {
11
11
  "method": "GET",
12
- "path": "/api/v1/v1/products",
12
+ "path": "/api/v1/products",
13
13
  "controller_order": 1,
14
14
  "handler_name": "getProducts",
15
15
  "required_scope": "read_products",
@@ -35,7 +35,7 @@
35
35
  },
36
36
  {
37
37
  "method": "GET",
38
- "path": "/api/v1/v1/products/:id",
38
+ "path": "/api/v1/products/:id",
39
39
  "controller_order": 2,
40
40
  "handler_name": "getProductById",
41
41
  "required_scope": "read_products",
@@ -52,7 +52,7 @@
52
52
  },
53
53
  {
54
54
  "method": "POST",
55
- "path": "/api/v1/v1/products",
55
+ "path": "/api/v1/products",
56
56
  "controller_order": 3,
57
57
  "handler_name": "createProduct",
58
58
  "required_scope": "write_products",
@@ -90,7 +90,7 @@
90
90
  },
91
91
  {
92
92
  "method": "PUT",
93
- "path": "/api/v1/v1/products/:id",
93
+ "path": "/api/v1/products/:id",
94
94
  "controller_order": 4,
95
95
  "handler_name": "updateProduct",
96
96
  "required_scope": "write_products",
@@ -127,7 +127,7 @@
127
127
  },
128
128
  {
129
129
  "method": "DELETE",
130
- "path": "/api/v1/v1/products/:id",
130
+ "path": "/api/v1/products/:id",
131
131
  "controller_order": 5,
132
132
  "handler_name": "deleteProduct",
133
133
  "required_scope": "write_products",
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../src/tools/codegen.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA2bjD,eAAO,MAAM,YAAY,EAAE,cAAc,EA0PxC,CAAC"}
1
+ {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../src/tools/codegen.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAgdjD,eAAO,MAAM,YAAY,EAAE,cAAc,EA0PxC,CAAC"}
@@ -285,6 +285,15 @@ export class WebhookService {
285
285
  case 'orders/paid':
286
286
  await this.onOrderPaid(payload);
287
287
  break;
288
+ case 'orders/partially_fulfilled':
289
+ await this.onOrderPartiallyFulfilled(payload);
290
+ break;
291
+ case 'orders/delete':
292
+ await this.onOrderDeleted(payload);
293
+ break;
294
+ case 'orders/edited':
295
+ await this.onOrderEdited(payload);
296
+ break;
288
297
  case 'products/create':
289
298
  await this.onProductCreated(payload);
290
299
  break;
@@ -325,6 +334,18 @@ export class WebhookService {
325
334
  this.logger.log('Order paid', payload);
326
335
  }
327
336
 
337
+ private async onOrderPartiallyFulfilled(payload: Record<string, unknown>): Promise<void> {
338
+ this.logger.log('Order partially fulfilled', payload);
339
+ }
340
+
341
+ private async onOrderDeleted(payload: Record<string, unknown>): Promise<void> {
342
+ this.logger.log('Order deleted', payload);
343
+ }
344
+
345
+ private async onOrderEdited(payload: Record<string, unknown>): Promise<void> {
346
+ this.logger.log('Order edited', payload);
347
+ }
348
+
328
349
  private async onProductCreated(payload: Record<string, unknown>): Promise<void> {
329
350
  this.logger.log('Product created', payload);
330
351
  }
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/tools/codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/tools/codegen.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ratio-mcp/dev-server",
3
- "version": "1.5.0",
3
+ "version": "1.5.1",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -9,27 +9,28 @@
9
9
  "bin": {
10
10
  "ratio-dev-server": "dist/index.js"
11
11
  },
12
+ "scripts": {
13
+ "build": "tsc && npm run copy-templates && npm run copy-schemas",
14
+ "copy-templates": "rm -rf dist/templates && cp -r src/templates dist/templates 2>/dev/null || true",
15
+ "copy-schemas": "rm -rf dist/schemas && cp -r src/schemas dist/schemas 2>/dev/null || true",
16
+ "dev": "node --loader ts-node/esm src/index.ts",
17
+ "start": "node dist/index.js",
18
+ "typecheck": "tsc --noEmit",
19
+ "prepublishOnly": "pnpm build"
20
+ },
12
21
  "dependencies": {
13
22
  "@modelcontextprotocol/sdk": "^1.12.1",
23
+ "@ratio-mcp/shared": "^1.5.0",
14
24
  "axios": "^1.7.0",
15
25
  "zod": "^3.23.0",
16
26
  "archiver": "^7.0.0",
17
27
  "readable-stream": "^4.0.0",
18
28
  "dotenv": "^16.4.0",
19
- "form-data": "^4.0.0",
20
- "@ratio-mcp/shared": "1.5.0"
29
+ "form-data": "^4.0.0"
21
30
  },
22
31
  "devDependencies": {
23
32
  "@types/node": "^20.0.0",
24
33
  "@types/archiver": "^6.0.0",
25
34
  "typescript": "^5.4.0"
26
- },
27
- "scripts": {
28
- "build": "tsc && npm run copy-templates && npm run copy-schemas",
29
- "copy-templates": "rm -rf dist/templates && cp -r src/templates dist/templates 2>/dev/null || true",
30
- "copy-schemas": "rm -rf dist/schemas && cp -r src/schemas dist/schemas 2>/dev/null || true",
31
- "dev": "node --loader ts-node/esm src/index.ts",
32
- "start": "node dist/index.js",
33
- "typecheck": "tsc --noEmit"
34
35
  }
35
- }
36
+ }
@@ -1,11 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Ratio Dev MCP Server — Orchestrated Entry Point
4
- *
5
- * Tool-first architecture: exposes all tools individually with prerequisite guards.
6
- * The LLM decides what to call; guards enforce the dependency graph.
7
- *
8
- * This is the production entry point.
9
- */
10
- export {};
11
- //# sourceMappingURL=orchestrated-index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orchestrated-index.d.ts","sourceRoot":"","sources":["../src/orchestrated-index.ts"],"names":[],"mappings":";AAEA;;;;;;;GAOG"}
@@ -1,33 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Ratio Dev MCP Server — Orchestrated Entry Point
4
- *
5
- * Tool-first architecture: exposes all tools individually with prerequisite guards.
6
- * The LLM decides what to call; guards enforce the dependency graph.
7
- *
8
- * This is the production entry point.
9
- */
10
- // Load .env BEFORE any other imports so process.env is populated
11
- import { config } from 'dotenv';
12
- import { resolve, dirname } from 'path';
13
- import { fileURLToPath } from 'url';
14
- const __dirname = dirname(fileURLToPath(import.meta.url));
15
- const envPath = resolve(__dirname, '..', '..', '..', '.env');
16
- config({ path: envPath });
17
- async function main() {
18
- const { StdioServerTransport } = await import('@modelcontextprotocol/sdk/server/stdio.js');
19
- const { createOrchestratedServer } = await import('./orchestrated-server.js');
20
- const { logger } = await import('./utils/logger.js');
21
- logger.info(`Loaded .env from: ${envPath}`);
22
- logger.info(`RATIO_API_BASE_URL = ${process.env.RATIO_API_BASE_URL || '(not set, using default)'}`);
23
- logger.info('Starting Ratio Dev MCP Server (Tool-First Architecture)...');
24
- const server = createOrchestratedServer();
25
- const transport = new StdioServerTransport();
26
- await server.connect(transport);
27
- logger.info('Ratio Dev MCP Server (Tool-First) is running on stdio');
28
- }
29
- main().catch((error) => {
30
- console.error('Fatal error:', error);
31
- process.exit(1);
32
- });
33
- //# sourceMappingURL=orchestrated-index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orchestrated-index.js","sourceRoot":"","sources":["../src/orchestrated-index.ts"],"names":[],"mappings":";AAEA;;;;;;;GAOG;AAEH,iEAAiE;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC7D,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAE1B,KAAK,UAAU,IAAI;IACjB,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,2CAA2C,CAAC,CAAC;IAC3F,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;IAC9E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAErD,MAAM,CAAC,IAAI,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAC;IAC5C,MAAM,CAAC,IAAI,CAAC,wBAAwB,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,0BAA0B,EAAE,CAAC,CAAC;IACpG,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IAE1E,MAAM,MAAM,GAAG,wBAAwB,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAE7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,MAAM,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;AACvE,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,21 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- /**
3
- * Create the Tool-First Ratio Dev MCP Server.
4
- *
5
- * Exposes all tools individually (not a single agent_chat).
6
- * Each tool call passes through the prerequisite guard.
7
- * The LLM decides what to call based on user intent and get_status output.
8
- *
9
- * Guard enforcement:
10
- * - If prerequisites are met → tool executes normally
11
- * - If prerequisites are NOT met → returns structured error with:
12
- * - What's missing
13
- * - The full chain of tools needed to unblock
14
- * - A hint for the LLM to self-correct
15
- *
16
- * Session recording:
17
- * - On success, tool results are parsed to extract context (appId, scopes, etc.)
18
- * - This context drives future guard checks
19
- */
20
- export declare function createOrchestratedServer(): McpServer;
21
- //# sourceMappingURL=orchestrated-server.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orchestrated-server.d.ts","sourceRoot":"","sources":["../src/orchestrated-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQpE;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,wBAAwB,IAAI,SAAS,CAyFpD"}
@@ -1,101 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- import { DEV_SERVER_NAME, DEV_SERVER_VERSION } from '@ratio-mcp/shared';
3
- import { allDevTools } from './tools/index.js';
4
- import { logger } from './utils/logger.js';
5
- import { checkToolPrerequisites } from './services/tool-guard.js';
6
- import { recordToolSuccess } from './services/session-state.js';
7
- /**
8
- * Create the Tool-First Ratio Dev MCP Server.
9
- *
10
- * Exposes all tools individually (not a single agent_chat).
11
- * Each tool call passes through the prerequisite guard.
12
- * The LLM decides what to call based on user intent and get_status output.
13
- *
14
- * Guard enforcement:
15
- * - If prerequisites are met → tool executes normally
16
- * - If prerequisites are NOT met → returns structured error with:
17
- * - What's missing
18
- * - The full chain of tools needed to unblock
19
- * - A hint for the LLM to self-correct
20
- *
21
- * Session recording:
22
- * - On success, tool results are parsed to extract context (appId, scopes, etc.)
23
- * - This context drives future guard checks
24
- */
25
- export function createOrchestratedServer() {
26
- const server = new McpServer({
27
- name: `${DEV_SERVER_NAME}-orchestrated`,
28
- version: DEV_SERVER_VERSION,
29
- });
30
- // Register all tools with guard middleware
31
- for (const tool of allDevTools) {
32
- const shape = tool.inputSchema.shape;
33
- server.tool(tool.name, tool.description, shape, async (args) => {
34
- logger.toolCall(tool.name, args);
35
- const startTime = Date.now();
36
- // ── Guard: check prerequisites before executing ──────────────
37
- const guard = checkToolPrerequisites(tool.name);
38
- if (!guard.allowed) {
39
- const duration = Date.now() - startTime;
40
- logger.info(`BLOCKED ${tool.name} (${duration}ms): ${guard.message}`);
41
- return {
42
- content: [
43
- {
44
- type: 'text',
45
- text: JSON.stringify({
46
- error: true,
47
- blocked: true,
48
- tool: tool.name,
49
- message: guard.message,
50
- required_tools: guard.requiredTools,
51
- chain: guard.chain,
52
- hint: guard.hint || `Call ${guard.requiredTools?.join(' → ')} first, then retry ${tool.name}.`,
53
- doc_hint: 'If you are unsure about any platform detail, call lookup_docs or get_status before proceeding.',
54
- }, null, 2),
55
- },
56
- ],
57
- isError: true,
58
- };
59
- }
60
- // ── Execute tool ────────────────────────────────────────────
61
- try {
62
- const result = await tool.handler(args);
63
- const duration = Date.now() - startTime;
64
- logger.toolResult(tool.name, duration, result);
65
- // Record success in session state
66
- recordToolSuccess(tool.name, result);
67
- return {
68
- content: [
69
- {
70
- type: 'text',
71
- text: JSON.stringify(result, null, 2),
72
- },
73
- ],
74
- };
75
- }
76
- catch (error) {
77
- const duration = Date.now() - startTime;
78
- logger.toolError(tool.name, duration, error);
79
- const message = error instanceof Error ? error.message : String(error);
80
- return {
81
- content: [
82
- {
83
- type: 'text',
84
- text: JSON.stringify({
85
- error: true,
86
- message,
87
- tool: tool.name,
88
- doc_hint: 'If this error is about an API detail, call lookup_docs to verify the correct usage.',
89
- }, null, 2),
90
- },
91
- ],
92
- isError: true,
93
- };
94
- }
95
- });
96
- logger.debug(`Registered tool: ${tool.name}`);
97
- }
98
- logger.info(`${DEV_SERVER_NAME}-orchestrated initialized with ${allDevTools.length} tools (tool-first architecture)`);
99
- return server;
100
- }
101
- //# sourceMappingURL=orchestrated-server.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orchestrated-server.js","sourceRoot":"","sources":["../src/orchestrated-server.ts"],"names":[],"mappings":"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"}
@@ -1,63 +0,0 @@
1
- /**
2
- * Phase definitions in the Ratio app development lifecycle.
3
- * Each phase represents a logical group of activities that must be completed in order.
4
- */
5
- export type Phase = 'auth' | 'app_setup' | 'requirements' | 'webhooks' | 'frontend_build' | 'review_wait' | 'publish_oauth' | 'backend_codegen' | 'complete';
6
- /**
7
- * Result returned by the orchestrator showing exactly what to do next.
8
- * The caller uses this to invoke the correct tool with the right arguments.
9
- */
10
- export interface OrchestratorResult {
11
- phase: Phase;
12
- step: string;
13
- toolToCall: string;
14
- toolArgs: Record<string, unknown>;
15
- needsInput: boolean;
16
- inputPrompt?: string;
17
- inputFields?: string[];
18
- message: string;
19
- phase_description: string;
20
- progress: {
21
- current: number;
22
- total: number;
23
- percentage: number;
24
- };
25
- }
26
- /**
27
- * Main orchestrator function: determines the exact next step based on session state.
28
- *
29
- * @param userInput - Optional user input (credentials, selections, configuration details)
30
- * @returns OrchestratorResult describing what to do next
31
- */
32
- export declare function getNextStep(userInput?: Record<string, unknown>): OrchestratorResult;
33
- /**
34
- * Get the current phase without computing the next step details.
35
- * Useful for status checks and phase-only queries.
36
- */
37
- export declare function getCurrentPhase(): Phase;
38
- /**
39
- * Get a human-friendly description of a phase.
40
- */
41
- export declare function getPhaseDescription(phase: Phase): string;
42
- /**
43
- * Check if a phase can be skipped by the user.
44
- * Currently only webhooks is optional.
45
- */
46
- export declare function canSkipPhase(phase: Phase): boolean;
47
- /**
48
- * Get the total number of steps across all phases.
49
- */
50
- export declare function getTotalSteps(): number;
51
- /**
52
- * Get metadata about a specific phase (description, step count, skippable).
53
- */
54
- export declare function getPhaseMetadata(phase: Phase): {
55
- description: string;
56
- skippable: boolean;
57
- stepCount: number;
58
- };
59
- /**
60
- * Helper: Get all phases in order.
61
- */
62
- export declare function getAllPhases(): Phase[];
63
- //# sourceMappingURL=orchestrator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/services/orchestrator.ts"],"names":[],"mappings":"AAYA;;;GAGG;AACH,MAAM,MAAM,KAAK,GACb,MAAM,GACN,WAAW,GACX,cAAc,GACd,UAAU,GACV,gBAAgB,GAChB,aAAa,GACb,eAAe,GACf,iBAAiB,GACjB,UAAU,CAAC;AAEf;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IAEjC,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IAGb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAGlC,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAGvB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAoyBD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,kBAAkB,CA2CnF;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,KAAK,CAEvC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAElD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK;iBAl3B9B,MAAM;eACR,OAAO;eACP,MAAM;EAk3BlB;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,KAAK,EAAE,CAKtC"}