@ekairos/domain 1.22.40-beta.development.0 → 1.22.40
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 +4 -3
- package/SKILL.md +2 -2
- package/dist/cli/bin.d.ts +1 -1
- package/dist/cli/bin.d.ts.map +1 -1
- package/dist/cli/bin.js +4 -1
- package/dist/cli/bin.js.map +1 -1
- package/dist/cli/create-app.d.ts +5 -0
- package/dist/cli/create-app.d.ts.map +1 -1
- package/dist/cli/create-app.js +743 -72
- package/dist/cli/create-app.js.map +1 -1
- package/dist/cli/http.d.ts.map +1 -1
- package/dist/cli/http.js +2 -6
- package/dist/cli/http.js.map +1 -1
- package/dist/cli/server.d.ts.map +1 -1
- package/dist/cli/server.js +5 -4
- package/dist/cli/server.js.map +1 -1
- package/dist/cli/types.d.ts +1 -0
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/context.test-runner.js +3 -1
- package/dist/context.test-runner.js.map +1 -1
- package/dist/domain-doc.d.ts +2 -0
- package/dist/domain-doc.d.ts.map +1 -1
- package/dist/domain-doc.js +14 -0
- package/dist/domain-doc.js.map +1 -1
- package/dist/index.d.ts +130 -74
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +182 -71
- package/dist/index.js.map +1 -1
- package/dist/next.d.ts +1 -4
- package/dist/next.d.ts.map +1 -1
- package/dist/next.js +197 -89
- package/dist/next.js.map +1 -1
- package/dist/platform-sync.d.ts +30 -0
- package/dist/platform-sync.d.ts.map +1 -0
- package/dist/platform-sync.js +121 -0
- package/dist/platform-sync.js.map +1 -0
- package/dist/runtime-handle.d.ts +9 -9
- package/dist/runtime-handle.d.ts.map +1 -1
- package/dist/runtime-handle.js +2 -0
- package/dist/runtime-handle.js.map +1 -1
- package/dist/runtime.d.ts +7 -6
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +10 -8
- package/dist/runtime.js.map +1 -1
- package/package.json +12 -6
package/dist/next.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { executeRuntimeAction, } from "./runtime.js";
|
|
2
2
|
import { getDomainActionBinding, getDomainActions } from "./index.js";
|
|
3
|
+
import { createHash, createHmac, timingSafeEqual } from "node:crypto";
|
|
3
4
|
function json(data, init) {
|
|
4
5
|
return Response.json(data, init);
|
|
5
6
|
}
|
|
@@ -11,15 +12,15 @@ function listKeys(value) {
|
|
|
11
12
|
return [];
|
|
12
13
|
return Object.keys(value);
|
|
13
14
|
}
|
|
14
|
-
|
|
15
|
+
function parseBody(bodyText) {
|
|
15
16
|
try {
|
|
16
|
-
return
|
|
17
|
+
return JSON.parse(bodyText);
|
|
17
18
|
}
|
|
18
19
|
catch {
|
|
19
20
|
return null;
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
|
-
function
|
|
23
|
+
function serializeActionSchema(value) {
|
|
23
24
|
if (value === undefined)
|
|
24
25
|
return undefined;
|
|
25
26
|
try {
|
|
@@ -54,7 +55,8 @@ function listRuntimeActions(domain) {
|
|
|
54
55
|
name: String(action.name ?? "").trim(),
|
|
55
56
|
key: resolveActionKey(domain, action),
|
|
56
57
|
description: typeof action.description === "string" ? action.description : null,
|
|
57
|
-
inputSchema:
|
|
58
|
+
inputSchema: serializeActionSchema(action.inputSchema),
|
|
59
|
+
outputSchema: serializeActionSchema(action.outputSchema),
|
|
58
60
|
}));
|
|
59
61
|
}
|
|
60
62
|
function findRuntimeAction(domain, name) {
|
|
@@ -89,18 +91,9 @@ function buildDomainSummary(domain) {
|
|
|
89
91
|
meta: domain.meta ?? {},
|
|
90
92
|
};
|
|
91
93
|
}
|
|
92
|
-
function
|
|
93
|
-
const header = req.headers.get("authorization") || "";
|
|
94
|
-
if (!header.startsWith("Bearer "))
|
|
95
|
-
return null;
|
|
96
|
-
return header.slice("Bearer ".length).trim();
|
|
97
|
-
}
|
|
98
|
-
function resolveImpersonatedDb(db, req, body) {
|
|
94
|
+
function resolveImpersonatedDb(db, body) {
|
|
99
95
|
if (typeof db?.asUser !== "function")
|
|
100
96
|
return db;
|
|
101
|
-
const token = resolveBearerToken(req);
|
|
102
|
-
if (token)
|
|
103
|
-
return db.asUser({ token });
|
|
104
97
|
const asEmail = String(body?.asEmail ?? "").trim();
|
|
105
98
|
if (asEmail)
|
|
106
99
|
return db.asUser({ email: asEmail });
|
|
@@ -108,6 +101,102 @@ function resolveImpersonatedDb(db, req, body) {
|
|
|
108
101
|
return db.asUser({ guest: true });
|
|
109
102
|
return db;
|
|
110
103
|
}
|
|
104
|
+
const EKAIROS_DOMAIN_KEY_ID_HEADER = "x-ekairos-domain-key-id";
|
|
105
|
+
const EKAIROS_DOMAIN_TIMESTAMP_HEADER = "x-ekairos-domain-timestamp";
|
|
106
|
+
const EKAIROS_DOMAIN_SIGNATURE_HEADER = "x-ekairos-domain-signature";
|
|
107
|
+
const SIGNATURE_VERSION = "v1";
|
|
108
|
+
function sha256Hex(value) {
|
|
109
|
+
return createHash("sha256").update(value).digest("hex");
|
|
110
|
+
}
|
|
111
|
+
function parseDomainApiKey(apiKey) {
|
|
112
|
+
const match = /^ekdk_(test|live)_([A-Za-z0-9_-]{12,})_([A-Za-z0-9_-]{32,})$/.exec(apiKey.trim());
|
|
113
|
+
if (!match)
|
|
114
|
+
return null;
|
|
115
|
+
return {
|
|
116
|
+
environment: match[1],
|
|
117
|
+
keyId: match[2],
|
|
118
|
+
secret: match[3],
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
function pathWithSearch(url) {
|
|
122
|
+
const parsed = typeof url === "string" ? new URL(url) : url;
|
|
123
|
+
return `${parsed.pathname}${parsed.search}`;
|
|
124
|
+
}
|
|
125
|
+
function canonicalPayload(input) {
|
|
126
|
+
return [
|
|
127
|
+
"ekairos-domain",
|
|
128
|
+
SIGNATURE_VERSION,
|
|
129
|
+
String(input.timestamp),
|
|
130
|
+
input.method.toUpperCase(),
|
|
131
|
+
pathWithSearch(input.url),
|
|
132
|
+
sha256Hex(input.body ?? ""),
|
|
133
|
+
].join("\n");
|
|
134
|
+
}
|
|
135
|
+
function safeEqual(left, right) {
|
|
136
|
+
const leftBuffer = Buffer.from(left);
|
|
137
|
+
const rightBuffer = Buffer.from(right);
|
|
138
|
+
if (leftBuffer.length !== rightBuffer.length)
|
|
139
|
+
return false;
|
|
140
|
+
return timingSafeEqual(leftBuffer, rightBuffer);
|
|
141
|
+
}
|
|
142
|
+
function verifySignedDomainRequest(input) {
|
|
143
|
+
const parsed = parseDomainApiKey(input.apiKey);
|
|
144
|
+
if (!parsed)
|
|
145
|
+
return { ok: false, error: "domain_api_key_invalid" };
|
|
146
|
+
const keyId = input.headers.get(EKAIROS_DOMAIN_KEY_ID_HEADER)?.trim();
|
|
147
|
+
if (keyId !== parsed.keyId)
|
|
148
|
+
return { ok: false, error: "key_id_invalid" };
|
|
149
|
+
const timestamp = Number(input.headers.get(EKAIROS_DOMAIN_TIMESTAMP_HEADER));
|
|
150
|
+
if (!Number.isFinite(timestamp)) {
|
|
151
|
+
return { ok: false, error: "timestamp_invalid" };
|
|
152
|
+
}
|
|
153
|
+
const now = input.now ?? Math.floor(Date.now() / 1000);
|
|
154
|
+
const toleranceSeconds = input.toleranceSeconds ?? 300;
|
|
155
|
+
if (Math.abs(now - timestamp) > toleranceSeconds) {
|
|
156
|
+
return { ok: false, error: "timestamp_outside_tolerance" };
|
|
157
|
+
}
|
|
158
|
+
const signature = input.headers
|
|
159
|
+
.get(EKAIROS_DOMAIN_SIGNATURE_HEADER)
|
|
160
|
+
?.trim()
|
|
161
|
+
.replace(/^v1=/, "");
|
|
162
|
+
if (!signature)
|
|
163
|
+
return { ok: false, error: "signature_missing" };
|
|
164
|
+
const expected = createHmac("sha256", parsed.secret)
|
|
165
|
+
.update(canonicalPayload({
|
|
166
|
+
body: input.body,
|
|
167
|
+
method: input.method,
|
|
168
|
+
timestamp,
|
|
169
|
+
url: input.url,
|
|
170
|
+
}))
|
|
171
|
+
.digest("base64url");
|
|
172
|
+
if (!safeEqual(signature, expected)) {
|
|
173
|
+
return { ok: false, error: "signature_invalid" };
|
|
174
|
+
}
|
|
175
|
+
return { ok: true, keyId: parsed.keyId, timestamp };
|
|
176
|
+
}
|
|
177
|
+
function configuredDomainApiKey() {
|
|
178
|
+
return String(process.env.EKAIROS_API_KEY ?? "").trim() || null;
|
|
179
|
+
}
|
|
180
|
+
function requireDomainRouteAuth(input) {
|
|
181
|
+
const apiKey = configuredDomainApiKey();
|
|
182
|
+
if (!apiKey) {
|
|
183
|
+
return json({ ok: false, error: "ekairos_api_key_not_configured" }, { status: 500 });
|
|
184
|
+
}
|
|
185
|
+
if (!parseDomainApiKey(apiKey)) {
|
|
186
|
+
return json({ ok: false, error: "ekairos_api_key_must_be_signed_domain_key" }, { status: 500 });
|
|
187
|
+
}
|
|
188
|
+
const verification = verifySignedDomainRequest({
|
|
189
|
+
apiKey,
|
|
190
|
+
body: input.bodyText ?? "",
|
|
191
|
+
headers: input.req.headers,
|
|
192
|
+
method: input.req.method,
|
|
193
|
+
url: input.req.url,
|
|
194
|
+
});
|
|
195
|
+
if (!verification.ok) {
|
|
196
|
+
return json({ ok: false, error: "ekairos_domain_unauthorized", reason: verification.error }, { status: 401 });
|
|
197
|
+
}
|
|
198
|
+
return null;
|
|
199
|
+
}
|
|
111
200
|
function truncateQueryResult(result) {
|
|
112
201
|
const MAX_QUERY_ROWS = 50;
|
|
113
202
|
const output = {};
|
|
@@ -129,87 +218,77 @@ function truncateQueryResult(result) {
|
|
|
129
218
|
};
|
|
130
219
|
}
|
|
131
220
|
export function createRuntimeRouteHandler(options) {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
221
|
+
function resolveEnvFor(body) {
|
|
222
|
+
return asRecord(body?.env);
|
|
223
|
+
}
|
|
224
|
+
async function createRuntimeFor(body, resolvedEnv) {
|
|
225
|
+
const env = resolvedEnv ?? resolveEnvFor(body);
|
|
136
226
|
return await options.createRuntime(env);
|
|
137
227
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
},
|
|
186
|
-
},
|
|
187
|
-
input: body?.input ?? {},
|
|
188
|
-
});
|
|
189
|
-
return json({
|
|
190
|
-
ok: true,
|
|
191
|
-
action: action.name,
|
|
192
|
-
output,
|
|
193
|
-
source: "runtime-route",
|
|
194
|
-
});
|
|
195
|
-
}
|
|
196
|
-
catch (error) {
|
|
197
|
-
return json({
|
|
198
|
-
ok: false,
|
|
199
|
-
error: error instanceof Error ? error.message : String(error),
|
|
200
|
-
source: "runtime-route",
|
|
201
|
-
}, { status: 500 });
|
|
202
|
-
}
|
|
228
|
+
async function GET(req) {
|
|
229
|
+
const authError = requireDomainRouteAuth({ req });
|
|
230
|
+
if (authError)
|
|
231
|
+
return authError;
|
|
232
|
+
const runtime = await createRuntimeFor(null);
|
|
233
|
+
const meta = runtime.meta();
|
|
234
|
+
const domain = (meta.domain ?? null);
|
|
235
|
+
return json({
|
|
236
|
+
ok: true,
|
|
237
|
+
mode: "full",
|
|
238
|
+
instant: {
|
|
239
|
+
appId: String(runtime.env?.appId ?? process.env.NEXT_PUBLIC_INSTANT_APP_ID ?? "") || null,
|
|
240
|
+
apiURI: String(process.env.EKAIROS_DOMAIN_API_URI ?? process.env.INSTANT_API_URI ?? "https://api.instantdb.com"),
|
|
241
|
+
projectId: String(process.env.EKAIROS_PROJECT_ID ?? "") || null,
|
|
242
|
+
},
|
|
243
|
+
auth: {
|
|
244
|
+
required: true,
|
|
245
|
+
scheme: "ekairos-domain-signature",
|
|
246
|
+
supportsRefreshToken: false,
|
|
247
|
+
supportsBearerToken: false,
|
|
248
|
+
},
|
|
249
|
+
domain: buildDomainSummary(domain),
|
|
250
|
+
schema: meta.schema,
|
|
251
|
+
contextString: meta.contextString ?? (typeof domain?.contextString === "function" ? domain.contextString() : null),
|
|
252
|
+
actions: listRuntimeActions(domain),
|
|
253
|
+
});
|
|
254
|
+
}
|
|
255
|
+
async function POST(req) {
|
|
256
|
+
const bodyText = await req.text();
|
|
257
|
+
const authError = requireDomainRouteAuth({ bodyText, req });
|
|
258
|
+
if (authError)
|
|
259
|
+
return authError;
|
|
260
|
+
const body = parseBody(bodyText);
|
|
261
|
+
const op = String(body?.op ?? (body?.action ? "action" : "query")).trim();
|
|
262
|
+
const env = resolveEnvFor(body);
|
|
263
|
+
const runtime = await createRuntimeFor(body, env);
|
|
264
|
+
const meta = runtime.meta();
|
|
265
|
+
const domain = (meta.domain ?? null);
|
|
266
|
+
const db = resolveImpersonatedDb(await runtime.db(), body);
|
|
267
|
+
if (op === "action") {
|
|
268
|
+
const actionName = String(body?.action ?? "");
|
|
269
|
+
const action = findRuntimeAction(domain, actionName);
|
|
270
|
+
if (!action) {
|
|
271
|
+
return json({
|
|
272
|
+
ok: false,
|
|
273
|
+
error: `runtime_action_not_found:${actionName}`,
|
|
274
|
+
}, { status: 404 });
|
|
203
275
|
}
|
|
204
|
-
const query = body?.query ?? null;
|
|
205
|
-
if (!query)
|
|
206
|
-
return new Response("Missing query", { status: 400 });
|
|
207
276
|
try {
|
|
208
|
-
const
|
|
277
|
+
const output = await executeRuntimeAction({
|
|
278
|
+
action: action,
|
|
279
|
+
runtime: {
|
|
280
|
+
...runtime,
|
|
281
|
+
async db() {
|
|
282
|
+
return db;
|
|
283
|
+
},
|
|
284
|
+
},
|
|
285
|
+
input: body?.input ?? {},
|
|
286
|
+
});
|
|
209
287
|
return json({
|
|
210
288
|
ok: true,
|
|
289
|
+
action: action.name,
|
|
290
|
+
output,
|
|
211
291
|
source: "runtime-route",
|
|
212
|
-
...truncateQueryResult(asRecord(result)),
|
|
213
292
|
});
|
|
214
293
|
}
|
|
215
294
|
catch (error) {
|
|
@@ -219,7 +298,36 @@ export function createRuntimeRouteHandler(options) {
|
|
|
219
298
|
source: "runtime-route",
|
|
220
299
|
}, { status: 500 });
|
|
221
300
|
}
|
|
222
|
-
}
|
|
301
|
+
}
|
|
302
|
+
const query = body?.query ?? null;
|
|
303
|
+
if (!query)
|
|
304
|
+
return new Response("Missing query", { status: 400 });
|
|
305
|
+
try {
|
|
306
|
+
const result = await db.query(query);
|
|
307
|
+
return json({
|
|
308
|
+
ok: true,
|
|
309
|
+
source: "runtime-route",
|
|
310
|
+
...truncateQueryResult(asRecord(result)),
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
catch (error) {
|
|
314
|
+
return json({
|
|
315
|
+
ok: false,
|
|
316
|
+
error: error instanceof Error ? error.message : String(error),
|
|
317
|
+
source: "runtime-route",
|
|
318
|
+
}, { status: 500 });
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
const handler = async (req) => {
|
|
322
|
+
if (req.method === "GET")
|
|
323
|
+
return GET(req);
|
|
324
|
+
if (req.method === "POST")
|
|
325
|
+
return POST(req);
|
|
326
|
+
return new Response("Method Not Allowed", {
|
|
327
|
+
status: 405,
|
|
328
|
+
headers: { allow: "GET, POST" },
|
|
329
|
+
});
|
|
223
330
|
};
|
|
331
|
+
return Object.assign(handler, { GET, POST });
|
|
224
332
|
}
|
|
225
333
|
//# sourceMappingURL=next.js.map
|
package/dist/next.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next.js","sourceRoot":"","sources":["../src/next.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"next.js","sourceRoot":"","sources":["../src/next.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Non-blocking env registration against the Ekairos Platform.
|
|
3
|
+
*
|
|
4
|
+
* Every time a domain runtime resolves its database, the env it was built
|
|
5
|
+
* with is reported so the platform can materialize a workspace environment
|
|
6
|
+
* under the registered application URL. Reporting is best effort and must
|
|
7
|
+
* never block or break the host application.
|
|
8
|
+
*
|
|
9
|
+
* Configuration (host app env vars):
|
|
10
|
+
* - EKAIROS_PLATFORM_URL target platform origin; sync is disabled when unset
|
|
11
|
+
* - EKAIROS_API_KEY project credential that protects the domain route;
|
|
12
|
+
* the platform matches it against the registered
|
|
13
|
+
* application credential
|
|
14
|
+
* - EKAIROS_PLATFORM_ORG_ID platform organization that owns the application
|
|
15
|
+
* - EKAIROS_DOMAIN_BASE_URL public origin of this deployment (falls back to
|
|
16
|
+
* VERCEL_URL); informational
|
|
17
|
+
* - EKAIROS_DOMAIN_PATH domain route path (default /api/domain)
|
|
18
|
+
*/
|
|
19
|
+
type ReportableEnv = Record<string, unknown>;
|
|
20
|
+
/**
|
|
21
|
+
* Report a runtime env to the platform. Synchronous from the caller's point
|
|
22
|
+
* of view: schedules a deduplicated fire-and-forget request and returns
|
|
23
|
+
* immediately. Never throws.
|
|
24
|
+
*/
|
|
25
|
+
export declare function reportRuntimeEnvToPlatform(env: ReportableEnv, options?: {
|
|
26
|
+
source?: string;
|
|
27
|
+
title?: string;
|
|
28
|
+
}): void;
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=platform-sync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-sync.d.ts","sourceRoot":"","sources":["../src/platform-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,KAAK,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AA0D7C;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,aAAa,EAClB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5C,IAAI,CA2CN"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Non-blocking env registration against the Ekairos Platform.
|
|
3
|
+
*
|
|
4
|
+
* Every time a domain runtime resolves its database, the env it was built
|
|
5
|
+
* with is reported so the platform can materialize a workspace environment
|
|
6
|
+
* under the registered application URL. Reporting is best effort and must
|
|
7
|
+
* never block or break the host application.
|
|
8
|
+
*
|
|
9
|
+
* Configuration (host app env vars):
|
|
10
|
+
* - EKAIROS_PLATFORM_URL target platform origin; sync is disabled when unset
|
|
11
|
+
* - EKAIROS_API_KEY project credential that protects the domain route;
|
|
12
|
+
* the platform matches it against the registered
|
|
13
|
+
* application credential
|
|
14
|
+
* - EKAIROS_PLATFORM_ORG_ID platform organization that owns the application
|
|
15
|
+
* - EKAIROS_DOMAIN_BASE_URL public origin of this deployment (falls back to
|
|
16
|
+
* VERCEL_URL); informational
|
|
17
|
+
* - EKAIROS_DOMAIN_PATH domain route path (default /api/domain)
|
|
18
|
+
*/
|
|
19
|
+
const REPORT_TTL_MS = 10 * 60 * 1000;
|
|
20
|
+
const REPORT_TIMEOUT_MS = 4000;
|
|
21
|
+
const reportedAt = new Map();
|
|
22
|
+
function stableStringify(value) {
|
|
23
|
+
if (value === null || typeof value !== "object") {
|
|
24
|
+
return JSON.stringify(value) ?? "null";
|
|
25
|
+
}
|
|
26
|
+
if (Array.isArray(value)) {
|
|
27
|
+
return `[${value.map((item) => stableStringify(item)).join(",")}]`;
|
|
28
|
+
}
|
|
29
|
+
const entries = Object.entries(value)
|
|
30
|
+
.filter(([, item]) => typeof item !== "function" && item !== undefined)
|
|
31
|
+
.sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0))
|
|
32
|
+
.map(([key, item]) => `${JSON.stringify(key)}:${stableStringify(item)}`);
|
|
33
|
+
return `{${entries.join(",")}}`;
|
|
34
|
+
}
|
|
35
|
+
function sanitizeEnv(env) {
|
|
36
|
+
const output = {};
|
|
37
|
+
for (const [key, value] of Object.entries(env ?? {})) {
|
|
38
|
+
if (value === undefined || typeof value === "function")
|
|
39
|
+
continue;
|
|
40
|
+
if (value === null || ["string", "number", "boolean"].includes(typeof value)) {
|
|
41
|
+
output[key] = value;
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
try {
|
|
45
|
+
output[key] = JSON.parse(JSON.stringify(value));
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
// non-serializable env members are dropped from the report
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return output;
|
|
52
|
+
}
|
|
53
|
+
function readConfig() {
|
|
54
|
+
const platformUrl = (process.env.EKAIROS_PLATFORM_URL ?? "")
|
|
55
|
+
.trim()
|
|
56
|
+
.replace(/\/+$/, "");
|
|
57
|
+
const token = (process.env.EKAIROS_API_KEY ?? "").trim();
|
|
58
|
+
if (!platformUrl || !token)
|
|
59
|
+
return null;
|
|
60
|
+
const vercelUrl = (process.env.VERCEL_URL ?? "").trim();
|
|
61
|
+
const baseUrl = (process.env.EKAIROS_DOMAIN_BASE_URL ?? "").trim() ||
|
|
62
|
+
(vercelUrl ? `https://${vercelUrl}` : "");
|
|
63
|
+
return {
|
|
64
|
+
platformUrl,
|
|
65
|
+
token,
|
|
66
|
+
baseUrl: baseUrl || null,
|
|
67
|
+
domainPath: (process.env.EKAIROS_DOMAIN_PATH ?? "").trim() || "/api/domain",
|
|
68
|
+
organizationId: (process.env.EKAIROS_PLATFORM_ORG_ID ?? "").trim() || null,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Report a runtime env to the platform. Synchronous from the caller's point
|
|
73
|
+
* of view: schedules a deduplicated fire-and-forget request and returns
|
|
74
|
+
* immediately. Never throws.
|
|
75
|
+
*/
|
|
76
|
+
export function reportRuntimeEnvToPlatform(env, options) {
|
|
77
|
+
try {
|
|
78
|
+
const config = readConfig();
|
|
79
|
+
if (!config)
|
|
80
|
+
return;
|
|
81
|
+
const sanitized = sanitizeEnv(env);
|
|
82
|
+
const fingerprint = stableStringify(sanitized);
|
|
83
|
+
const now = Date.now();
|
|
84
|
+
const last = reportedAt.get(fingerprint);
|
|
85
|
+
if (last && now - last < REPORT_TTL_MS)
|
|
86
|
+
return;
|
|
87
|
+
reportedAt.set(fingerprint, now);
|
|
88
|
+
const headers = {
|
|
89
|
+
"content-type": "application/json",
|
|
90
|
+
authorization: `Bearer ${config.token}`,
|
|
91
|
+
};
|
|
92
|
+
if (config.organizationId) {
|
|
93
|
+
headers["x-ekairos-organization-id"] = config.organizationId;
|
|
94
|
+
}
|
|
95
|
+
void fetch(`${config.platformUrl}/api/platform/domain/env-report`, {
|
|
96
|
+
method: "POST",
|
|
97
|
+
headers,
|
|
98
|
+
body: JSON.stringify({
|
|
99
|
+
env: sanitized,
|
|
100
|
+
baseUrl: config.baseUrl,
|
|
101
|
+
domainPath: config.domainPath,
|
|
102
|
+
source: options?.source ?? "runtime",
|
|
103
|
+
...(options?.title ? { title: options.title } : {}),
|
|
104
|
+
reportedAt: new Date(now).toISOString(),
|
|
105
|
+
}),
|
|
106
|
+
signal: AbortSignal.timeout(REPORT_TIMEOUT_MS),
|
|
107
|
+
})
|
|
108
|
+
.then((response) => {
|
|
109
|
+
if (!response.ok)
|
|
110
|
+
reportedAt.delete(fingerprint);
|
|
111
|
+
})
|
|
112
|
+
.catch(() => {
|
|
113
|
+
// allow a retry on the next runtime construction
|
|
114
|
+
reportedAt.delete(fingerprint);
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
// reporting must never interfere with the host application
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=platform-sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-sync.js","sourceRoot":"","sources":["../src/platform-sync.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime-handle.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { WORKFLOW_DESERIALIZE, WORKFLOW_SERIALIZE } from "@workflow/serde";
|
|
2
2
|
import type { DomainDbFor, DomainRuntime, RuntimeDomainSource, RuntimeMeta, RuntimeResolveOptions } from "./runtime-step.js";
|
|
3
|
-
import type {
|
|
4
|
-
type DomainNamesCompatible<RootDomain, RequiredDomain extends
|
|
5
|
-
type RootIncludesDomain<RootDomain, RequiredDomain extends
|
|
6
|
-
type SubdomainForRoot<RootDomain, Subdomain extends
|
|
7
|
-
type RuntimeUseForDomain<Env, RequiredDomain extends
|
|
8
|
-
use(subdomain: RequiredDomain, options?: RuntimeResolveOptions): Promise<
|
|
3
|
+
import type { DomainLike, IncludedDomainNamesOf } from "./index.js";
|
|
4
|
+
type DomainNamesCompatible<RootDomain, RequiredDomain extends DomainLike> = string extends IncludedDomainNamesOf<RootDomain> ? true : string extends IncludedDomainNamesOf<RequiredDomain> ? true : Exclude<IncludedDomainNamesOf<RequiredDomain>, IncludedDomainNamesOf<RootDomain>> extends never ? true : false;
|
|
5
|
+
type RootIncludesDomain<RootDomain, RequiredDomain extends DomainLike> = RootDomain extends DomainLike ? DomainNamesCompatible<RootDomain, RequiredDomain> : false;
|
|
6
|
+
type SubdomainForRoot<RootDomain, Subdomain extends DomainLike> = RootIncludesDomain<RootDomain, Subdomain> extends true ? Subdomain : never;
|
|
7
|
+
export type RuntimeUseForDomain<Env, RequiredDomain extends DomainLike> = {
|
|
8
|
+
use(subdomain: RequiredDomain, options?: RuntimeResolveOptions): Promise<unknown>;
|
|
9
9
|
};
|
|
10
10
|
type RuntimeEnvOf<Runtime extends EkairosRuntime<any, any, any>> = Runtime extends EkairosRuntime<infer Env, any, any> ? Env : never;
|
|
11
11
|
type RuntimeRootDomainOf<Runtime extends EkairosRuntime<any, any, any>> = Runtime extends EkairosRuntime<any, infer RootDomain, any> ? RootDomain : never;
|
|
12
12
|
type IsAny<T> = 0 extends (1 & T) ? true : false;
|
|
13
|
-
type RuntimeDomainCompatibility<Runtime extends EkairosRuntime<any, any, any>, RequiredDomain extends
|
|
13
|
+
type RuntimeDomainCompatibility<Runtime extends EkairosRuntime<any, any, any>, RequiredDomain extends DomainLike> = IsAny<Runtime> extends true ? unknown : IsAny<RuntimeRootDomainOf<Runtime>> extends true ? unknown : RootIncludesDomain<RuntimeRootDomainOf<Runtime>, RequiredDomain> extends true ? unknown : never;
|
|
14
14
|
export type RuntimeLike<Env extends Record<string, unknown> = Record<string, unknown>, D extends RuntimeDomainSource | null | undefined = RuntimeDomainSource | null, DB = DomainDbFor<D>> = {
|
|
15
15
|
readonly env: Env;
|
|
16
16
|
db(options?: RuntimeResolveOptions): Promise<DB>;
|
|
@@ -37,9 +37,9 @@ export declare abstract class EkairosRuntime<Env extends Record<string, unknown>
|
|
|
37
37
|
meta(): RuntimeMeta<D>;
|
|
38
38
|
db(options?: RuntimeResolveOptions): Promise<DB>;
|
|
39
39
|
resolve(options?: RuntimeResolveOptions): Promise<DomainRuntime<D, DB>>;
|
|
40
|
-
use<SubD extends
|
|
40
|
+
use<SubD extends DomainLike>(subdomain: SubdomainForRoot<D, SubD>, options?: RuntimeResolveOptions): Promise<unknown>;
|
|
41
41
|
}
|
|
42
42
|
export type ExplicitRuntimeLike<Env extends Record<string, unknown> = Record<string, unknown>, D extends RuntimeDomainSource | null | undefined = RuntimeDomainSource | null, DB = DomainDbFor<D>> = RuntimeLike<Env, D, DB>;
|
|
43
|
-
export type RuntimeForDomain<Runtime extends EkairosRuntime<any, any, any>, RequiredDomain extends
|
|
43
|
+
export type RuntimeForDomain<Runtime extends EkairosRuntime<any, any, any>, RequiredDomain extends DomainLike> = Pick<Runtime, "db" | "resolve" | "meta"> & RuntimeUseForDomain<RuntimeEnvOf<Runtime>, RequiredDomain> & RuntimeDomainCompatibility<Runtime, RequiredDomain>;
|
|
44
44
|
export {};
|
|
45
45
|
//# sourceMappingURL=runtime-handle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-handle.d.ts","sourceRoot":"","sources":["../src/runtime-handle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"runtime-handle.d.ts","sourceRoot":"","sources":["../src/runtime-handle.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime-handle.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { WORKFLOW_DESERIALIZE, WORKFLOW_SERIALIZE } from "@workflow/serde";
|
|
2
2
|
import { ensureDomEvents } from "./polyfills/dom-events.js";
|
|
3
|
+
import { reportRuntimeEnvToPlatform } from "./platform-sync.js";
|
|
3
4
|
ensureDomEvents();
|
|
4
5
|
import { materializeDomain } from "./index.js";
|
|
5
6
|
function resolveSchema(domain) {
|
|
@@ -54,6 +55,7 @@ export class EkairosRuntime {
|
|
|
54
55
|
}
|
|
55
56
|
async db(options) {
|
|
56
57
|
ensureDomEvents();
|
|
58
|
+
reportRuntimeEnvToPlatform(this.env);
|
|
57
59
|
return await this.resolveDb(this.env, options);
|
|
58
60
|
}
|
|
59
61
|
async resolve(options) {
|