@kynver-app/runtime 0.1.122 → 0.1.128
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/chat/chat-claim-loop.d.ts +11 -0
- package/dist/chat/command-allowlist.d.ts +8 -0
- package/dist/chat/command-executor.d.ts +13 -0
- package/dist/cli.js +54 -17773
- package/dist/cron/cron-cli-bin.d.ts +7 -0
- package/dist/cron/cron-readiness.d.ts +35 -0
- package/dist/disk-gate.d.ts +7 -0
- package/dist/index.js +71 -19272
- package/dist/mesh-liveness/mesh-cron-lease-store.d.ts +9 -0
- package/dist/server/cleanup.js +16 -4054
- package/dist/server/default-repo.js +1 -458
- package/dist/server/harness-notice.js +15 -287
- package/dist/server/heavy-verification.js +1 -223
- package/dist/server/landing.js +1 -44
- package/dist/server/memory-cost-enforce.js +2 -480
- package/dist/server/memory-cost.js +2 -184
- package/dist/server/monitor.js +8 -1805
- package/dist/server/orchestration.js +1 -444
- package/dist/server/pr-evidence.js +1 -163
- package/dist/server/repo-search.js +1 -224
- package/dist/server/worker-policy.js +1 -432
- package/dist/worker-persona-catalog.js +1 -138
- package/package.json +3 -2
- package/dist/cli.js.map +0 -7
- package/dist/index.js.map +0 -7
- package/dist/server/cleanup.js.map +0 -7
- package/dist/server/default-repo.js.map +0 -7
- package/dist/server/harness-notice.js.map +0 -7
- package/dist/server/heavy-verification.js.map +0 -7
- package/dist/server/landing.js.map +0 -7
- package/dist/server/memory-cost-enforce.js.map +0 -7
- package/dist/server/memory-cost.js.map +0 -7
- package/dist/server/monitor.js.map +0 -7
- package/dist/server/orchestration.js.map +0 -7
- package/dist/server/pr-evidence.js.map +0 -7
- package/dist/server/repo-search.js.map +0 -7
- package/dist/server/worker-policy.js.map +0 -7
- package/dist/worker-persona-catalog.js.map +0 -7
|
@@ -1,458 +1 @@
|
|
|
1
|
-
var
|
|
2
|
-
var __esm = (fn, res) => function __init() {
|
|
3
|
-
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
// src/util.ts
|
|
7
|
-
function hiddenSpawnOptions(opts) {
|
|
8
|
-
if (process.platform !== "win32") return opts;
|
|
9
|
-
return { windowsHide: true, ...opts };
|
|
10
|
-
}
|
|
11
|
-
var init_util = __esm({
|
|
12
|
-
"src/util.ts"() {
|
|
13
|
-
"use strict";
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
// src/worker-env.ts
|
|
18
|
-
var FORBIDDEN_WORKER_ENV_KEYS, FORBIDDEN_KEY_SET;
|
|
19
|
-
var init_worker_env = __esm({
|
|
20
|
-
"src/worker-env.ts"() {
|
|
21
|
-
"use strict";
|
|
22
|
-
FORBIDDEN_WORKER_ENV_KEYS = [
|
|
23
|
-
"ANTHROPIC_API_KEY",
|
|
24
|
-
"ANALYST_API_KEY",
|
|
25
|
-
"RECRUITER_API_KEY",
|
|
26
|
-
"AUTH_SECRET",
|
|
27
|
-
"NEXTAUTH_SECRET",
|
|
28
|
-
"DATABASE_URL",
|
|
29
|
-
"PRODUCTION_DATABASE_URL",
|
|
30
|
-
"KYNVER_PRODUCTION_DATABASE_URL",
|
|
31
|
-
"REDIS_URL",
|
|
32
|
-
"GOOGLE_CLIENT_SECRET",
|
|
33
|
-
"GITHUB_CLIENT_SECRET",
|
|
34
|
-
"KYNVER_API_KEY",
|
|
35
|
-
"KYNVER_SERVICE_SECRET",
|
|
36
|
-
"KYNVER_RUNTIME_SECRET",
|
|
37
|
-
"KYNVER_CRON_SECRET",
|
|
38
|
-
"OPENCLAW_CRON_SECRET",
|
|
39
|
-
"QSTASH_TOKEN",
|
|
40
|
-
"QSTASH_CURRENT_SIGNING_KEY",
|
|
41
|
-
"QSTASH_NEXT_SIGNING_KEY",
|
|
42
|
-
"TOOL_SECRETS_KEK",
|
|
43
|
-
"TOOL_EXECUTOR_DISPATCH_SECRET",
|
|
44
|
-
"CLOUDFLARE_API_TOKEN",
|
|
45
|
-
"STRIPE_SECRET_KEY",
|
|
46
|
-
"STRIPE_WEBHOOK_SECRET",
|
|
47
|
-
"STRIPE_IDENTITY_WEBHOOK_SECRET",
|
|
48
|
-
"VOYAGE_API_KEY",
|
|
49
|
-
"PERPLEXITY_API_KEY",
|
|
50
|
-
"FRED_API_KEY",
|
|
51
|
-
"FMP_API_KEY",
|
|
52
|
-
"CURSOR_API_KEY"
|
|
53
|
-
];
|
|
54
|
-
FORBIDDEN_KEY_SET = new Set(FORBIDDEN_WORKER_ENV_KEYS);
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
// src/git.ts
|
|
59
|
-
import { spawnSync } from "node:child_process";
|
|
60
|
-
function gitCapture(cwd, args) {
|
|
61
|
-
try {
|
|
62
|
-
const res = spawnSync(
|
|
63
|
-
"git",
|
|
64
|
-
args,
|
|
65
|
-
hiddenSpawnOptions({ cwd, encoding: "utf8" })
|
|
66
|
-
);
|
|
67
|
-
return {
|
|
68
|
-
status: res.status,
|
|
69
|
-
stdout: res.stdout || "",
|
|
70
|
-
stderr: res.stderr || "",
|
|
71
|
-
error: res.error ? res.error.message : null
|
|
72
|
-
};
|
|
73
|
-
} catch (error) {
|
|
74
|
-
return {
|
|
75
|
-
status: null,
|
|
76
|
-
stdout: "",
|
|
77
|
-
stderr: "",
|
|
78
|
-
error: error.message
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
var init_git = __esm({
|
|
83
|
-
"src/git.ts"() {
|
|
84
|
-
"use strict";
|
|
85
|
-
init_util();
|
|
86
|
-
init_worker_env();
|
|
87
|
-
}
|
|
88
|
-
});
|
|
89
|
-
|
|
90
|
-
// src/path-values.ts
|
|
91
|
-
import { homedir } from "node:os";
|
|
92
|
-
import path from "node:path";
|
|
93
|
-
function expandHomePath(value) {
|
|
94
|
-
if (value === "~") return homedir();
|
|
95
|
-
if (value.startsWith("~/") || value.startsWith("~\\")) {
|
|
96
|
-
return path.join(homedir(), value.slice(2));
|
|
97
|
-
}
|
|
98
|
-
return value;
|
|
99
|
-
}
|
|
100
|
-
function resolveUserPath(value) {
|
|
101
|
-
return path.resolve(expandHomePath(value));
|
|
102
|
-
}
|
|
103
|
-
var init_path_values = __esm({
|
|
104
|
-
"src/path-values.ts"() {
|
|
105
|
-
"use strict";
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
|
|
109
|
-
// src/default-repo-discovery.ts
|
|
110
|
-
import { existsSync, readFileSync } from "node:fs";
|
|
111
|
-
import { homedir as homedir2 } from "node:os";
|
|
112
|
-
import path2 from "node:path";
|
|
113
|
-
import { fileURLToPath } from "node:url";
|
|
114
|
-
function readPackageName(repoRoot) {
|
|
115
|
-
const pkgPath = path2.join(repoRoot, "package.json");
|
|
116
|
-
if (!existsSync(pkgPath)) return null;
|
|
117
|
-
try {
|
|
118
|
-
const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
|
|
119
|
-
return typeof pkg.name === "string" ? pkg.name.trim() : null;
|
|
120
|
-
} catch {
|
|
121
|
-
return null;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
function isKynverMonorepoRoot(repoRoot) {
|
|
125
|
-
return readPackageName(repoRoot) === "kynver";
|
|
126
|
-
}
|
|
127
|
-
function gitRepoRoot(startDir) {
|
|
128
|
-
const resolvedStart = path2.resolve(startDir);
|
|
129
|
-
if (!existsSync(resolvedStart)) return null;
|
|
130
|
-
const probe = gitCapture(resolvedStart, ["rev-parse", "--show-toplevel"]);
|
|
131
|
-
if (probe.status !== 0) return null;
|
|
132
|
-
const root = probe.stdout.trim();
|
|
133
|
-
return root.length ? path2.resolve(root) : null;
|
|
134
|
-
}
|
|
135
|
-
function resolveRuntimePackageRoot(moduleUrl = import.meta.url) {
|
|
136
|
-
let dir = path2.dirname(fileURLToPath(moduleUrl));
|
|
137
|
-
for (let depth = 0; depth < 8; depth += 1) {
|
|
138
|
-
const pkgPath = path2.join(dir, "package.json");
|
|
139
|
-
if (existsSync(pkgPath)) {
|
|
140
|
-
try {
|
|
141
|
-
const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
|
|
142
|
-
if (pkg.name === "@kynver-app/runtime") return dir;
|
|
143
|
-
} catch {
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
const parent = path2.dirname(dir);
|
|
147
|
-
if (parent === dir) break;
|
|
148
|
-
dir = parent;
|
|
149
|
-
}
|
|
150
|
-
return null;
|
|
151
|
-
}
|
|
152
|
-
function pushCandidate(seen, out, repo, source) {
|
|
153
|
-
if (!repo) return;
|
|
154
|
-
const resolved = path2.resolve(repo);
|
|
155
|
-
if (seen.has(resolved)) return;
|
|
156
|
-
if (!isKynverMonorepoRoot(resolved)) return;
|
|
157
|
-
seen.add(resolved);
|
|
158
|
-
out.push({ repo: resolved, source });
|
|
159
|
-
}
|
|
160
|
-
function discoverDefaultRepoCandidates(opts) {
|
|
161
|
-
const cwd = opts?.cwd ?? process.cwd();
|
|
162
|
-
const seen = /* @__PURE__ */ new Set();
|
|
163
|
-
const candidates = [];
|
|
164
|
-
pushCandidate(seen, candidates, gitRepoRoot(cwd), "cwd_git");
|
|
165
|
-
const runtimePkgRoot = resolveRuntimePackageRoot(opts?.runtimeModuleUrl ?? import.meta.url);
|
|
166
|
-
if (runtimePkgRoot) {
|
|
167
|
-
pushCandidate(seen, candidates, gitRepoRoot(runtimePkgRoot), "runtime_checkout");
|
|
168
|
-
}
|
|
169
|
-
const home = homedir2();
|
|
170
|
-
for (const rel of WELL_KNOWN_REPO_DIRS) {
|
|
171
|
-
pushCandidate(seen, candidates, resolveUserPath(path2.join(home, rel)), "well_known_path");
|
|
172
|
-
}
|
|
173
|
-
return candidates;
|
|
174
|
-
}
|
|
175
|
-
function discoverDefaultRepo(opts) {
|
|
176
|
-
return discoverDefaultRepoCandidates(opts)[0] ?? null;
|
|
177
|
-
}
|
|
178
|
-
var WELL_KNOWN_REPO_DIRS;
|
|
179
|
-
var init_default_repo_discovery = __esm({
|
|
180
|
-
"src/default-repo-discovery.ts"() {
|
|
181
|
-
"use strict";
|
|
182
|
-
init_git();
|
|
183
|
-
init_path_values();
|
|
184
|
-
WELL_KNOWN_REPO_DIRS = [
|
|
185
|
-
"Kynver",
|
|
186
|
-
"repos/Kynver",
|
|
187
|
-
"repos/kynver-source-main",
|
|
188
|
-
"code/Kynver",
|
|
189
|
-
"projects/Kynver"
|
|
190
|
-
];
|
|
191
|
-
}
|
|
192
|
-
});
|
|
193
|
-
|
|
194
|
-
// src/box-identity.ts
|
|
195
|
-
var init_box_identity = __esm({
|
|
196
|
-
"src/box-identity.ts"() {
|
|
197
|
-
"use strict";
|
|
198
|
-
}
|
|
199
|
-
});
|
|
200
|
-
|
|
201
|
-
// src/bounded-build/meminfo.ts
|
|
202
|
-
var init_meminfo = __esm({
|
|
203
|
-
"src/bounded-build/meminfo.ts"() {
|
|
204
|
-
"use strict";
|
|
205
|
-
}
|
|
206
|
-
});
|
|
207
|
-
|
|
208
|
-
// src/wsl-host.ts
|
|
209
|
-
var DEFAULT_WSL_HOST_WARN_FREE_BYTES, DEFAULT_WSL_HOST_CRITICAL_FREE_BYTES;
|
|
210
|
-
var init_wsl_host = __esm({
|
|
211
|
-
"src/wsl-host.ts"() {
|
|
212
|
-
"use strict";
|
|
213
|
-
DEFAULT_WSL_HOST_WARN_FREE_BYTES = 25 * 1024 * 1024 * 1024;
|
|
214
|
-
DEFAULT_WSL_HOST_CRITICAL_FREE_BYTES = 12 * 1024 * 1024 * 1024;
|
|
215
|
-
}
|
|
216
|
-
});
|
|
217
|
-
|
|
218
|
-
// src/disk-gate.ts
|
|
219
|
-
var DEFAULT_WARN_FREE_BYTES, DEFAULT_CRITICAL_FREE_BYTES;
|
|
220
|
-
var init_disk_gate = __esm({
|
|
221
|
-
"src/disk-gate.ts"() {
|
|
222
|
-
"use strict";
|
|
223
|
-
init_wsl_host();
|
|
224
|
-
DEFAULT_WARN_FREE_BYTES = 30 * 1024 * 1024 * 1024;
|
|
225
|
-
DEFAULT_CRITICAL_FREE_BYTES = 15 * 1024 * 1024 * 1024;
|
|
226
|
-
}
|
|
227
|
-
});
|
|
228
|
-
|
|
229
|
-
// src/paths.ts
|
|
230
|
-
import { homedir as homedir3 } from "node:os";
|
|
231
|
-
import path3 from "node:path";
|
|
232
|
-
var LEGACY_ROOT;
|
|
233
|
-
var init_paths = __esm({
|
|
234
|
-
"src/paths.ts"() {
|
|
235
|
-
"use strict";
|
|
236
|
-
init_config();
|
|
237
|
-
init_path_values();
|
|
238
|
-
init_util();
|
|
239
|
-
LEGACY_ROOT = path3.join(homedir3(), ".openclaw", "harness");
|
|
240
|
-
}
|
|
241
|
-
});
|
|
242
|
-
|
|
243
|
-
// src/run-store.ts
|
|
244
|
-
var init_run_store = __esm({
|
|
245
|
-
"src/run-store.ts"() {
|
|
246
|
-
"use strict";
|
|
247
|
-
init_paths();
|
|
248
|
-
init_util();
|
|
249
|
-
}
|
|
250
|
-
});
|
|
251
|
-
|
|
252
|
-
// src/run-worker-index.ts
|
|
253
|
-
var init_run_worker_index = __esm({
|
|
254
|
-
"src/run-worker-index.ts"() {
|
|
255
|
-
"use strict";
|
|
256
|
-
init_run_store();
|
|
257
|
-
init_util();
|
|
258
|
-
}
|
|
259
|
-
});
|
|
260
|
-
|
|
261
|
-
// src/heartbeat-final-result.ts
|
|
262
|
-
var init_heartbeat_final_result = __esm({
|
|
263
|
-
"src/heartbeat-final-result.ts"() {
|
|
264
|
-
"use strict";
|
|
265
|
-
}
|
|
266
|
-
});
|
|
267
|
-
|
|
268
|
-
// src/heartbeat.ts
|
|
269
|
-
var init_heartbeat = __esm({
|
|
270
|
-
"src/heartbeat.ts"() {
|
|
271
|
-
"use strict";
|
|
272
|
-
init_heartbeat_final_result();
|
|
273
|
-
init_util();
|
|
274
|
-
}
|
|
275
|
-
});
|
|
276
|
-
|
|
277
|
-
// src/repo-search.ts
|
|
278
|
-
var init_repo_search = __esm({
|
|
279
|
-
"src/repo-search.ts"() {
|
|
280
|
-
"use strict";
|
|
281
|
-
}
|
|
282
|
-
});
|
|
283
|
-
|
|
284
|
-
// src/shell-command-outcome.ts
|
|
285
|
-
var init_shell_command_outcome = __esm({
|
|
286
|
-
"src/shell-command-outcome.ts"() {
|
|
287
|
-
"use strict";
|
|
288
|
-
init_repo_search();
|
|
289
|
-
}
|
|
290
|
-
});
|
|
291
|
-
|
|
292
|
-
// src/stream.ts
|
|
293
|
-
var init_stream = __esm({
|
|
294
|
-
"src/stream.ts"() {
|
|
295
|
-
"use strict";
|
|
296
|
-
init_shell_command_outcome();
|
|
297
|
-
init_util();
|
|
298
|
-
}
|
|
299
|
-
});
|
|
300
|
-
|
|
301
|
-
// src/exit-classify.ts
|
|
302
|
-
var init_exit_classify = __esm({
|
|
303
|
-
"src/exit-classify.ts"() {
|
|
304
|
-
"use strict";
|
|
305
|
-
}
|
|
306
|
-
});
|
|
307
|
-
|
|
308
|
-
// src/exited-salvage.ts
|
|
309
|
-
var init_exited_salvage = __esm({
|
|
310
|
-
"src/exited-salvage.ts"() {
|
|
311
|
-
"use strict";
|
|
312
|
-
}
|
|
313
|
-
});
|
|
314
|
-
|
|
315
|
-
// src/landing-gate.ts
|
|
316
|
-
var init_landing_gate = __esm({
|
|
317
|
-
"src/landing-gate.ts"() {
|
|
318
|
-
"use strict";
|
|
319
|
-
}
|
|
320
|
-
});
|
|
321
|
-
|
|
322
|
-
// src/worker-final-result-embed.ts
|
|
323
|
-
var init_worker_final_result_embed = __esm({
|
|
324
|
-
"src/worker-final-result-embed.ts"() {
|
|
325
|
-
"use strict";
|
|
326
|
-
}
|
|
327
|
-
});
|
|
328
|
-
|
|
329
|
-
// src/landing-contract-gate.ts
|
|
330
|
-
var init_landing_contract_gate = __esm({
|
|
331
|
-
"src/landing-contract-gate.ts"() {
|
|
332
|
-
"use strict";
|
|
333
|
-
init_worker_final_result_embed();
|
|
334
|
-
}
|
|
335
|
-
});
|
|
336
|
-
|
|
337
|
-
// src/status.ts
|
|
338
|
-
var init_status = __esm({
|
|
339
|
-
"src/status.ts"() {
|
|
340
|
-
"use strict";
|
|
341
|
-
init_heartbeat();
|
|
342
|
-
init_stream();
|
|
343
|
-
init_exit_classify();
|
|
344
|
-
init_exited_salvage();
|
|
345
|
-
init_git();
|
|
346
|
-
init_landing_gate();
|
|
347
|
-
init_landing_contract_gate();
|
|
348
|
-
init_worker_final_result_embed();
|
|
349
|
-
init_util();
|
|
350
|
-
}
|
|
351
|
-
});
|
|
352
|
-
|
|
353
|
-
// src/harness-worker-active.ts
|
|
354
|
-
var init_harness_worker_active = __esm({
|
|
355
|
-
"src/harness-worker-active.ts"() {
|
|
356
|
-
"use strict";
|
|
357
|
-
init_status();
|
|
358
|
-
}
|
|
359
|
-
});
|
|
360
|
-
|
|
361
|
-
// src/resource-gate.ts
|
|
362
|
-
var DEFAULT_PER_WORKER_MEM_BYTES, DEFAULT_MEM_RESERVE_BYTES;
|
|
363
|
-
var init_resource_gate = __esm({
|
|
364
|
-
"src/resource-gate.ts"() {
|
|
365
|
-
"use strict";
|
|
366
|
-
init_meminfo();
|
|
367
|
-
init_config();
|
|
368
|
-
init_box_identity();
|
|
369
|
-
init_worker_cap_source();
|
|
370
|
-
init_disk_gate();
|
|
371
|
-
init_run_store();
|
|
372
|
-
init_run_worker_index();
|
|
373
|
-
init_harness_worker_active();
|
|
374
|
-
init_util();
|
|
375
|
-
DEFAULT_PER_WORKER_MEM_BYTES = 500 * 1024 * 1024;
|
|
376
|
-
DEFAULT_MEM_RESERVE_BYTES = 4 * 1024 * 1024 * 1024;
|
|
377
|
-
}
|
|
378
|
-
});
|
|
379
|
-
|
|
380
|
-
// src/worker-cap-source.ts
|
|
381
|
-
var init_worker_cap_source = __esm({
|
|
382
|
-
"src/worker-cap-source.ts"() {
|
|
383
|
-
"use strict";
|
|
384
|
-
init_resource_gate();
|
|
385
|
-
}
|
|
386
|
-
});
|
|
387
|
-
|
|
388
|
-
// src/config.ts
|
|
389
|
-
import { existsSync as existsSync2, mkdirSync, readFileSync as readFileSync2, writeFileSync } from "node:fs";
|
|
390
|
-
import { homedir as homedir4, totalmem } from "node:os";
|
|
391
|
-
import path4 from "node:path";
|
|
392
|
-
function loadUserConfig() {
|
|
393
|
-
if (!existsSync2(CONFIG_FILE)) return {};
|
|
394
|
-
try {
|
|
395
|
-
return JSON.parse(readFileSync2(CONFIG_FILE, "utf8"));
|
|
396
|
-
} catch {
|
|
397
|
-
return {};
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
var CONFIG_DIR, CONFIG_FILE, CREDENTIALS_FILE, SETUP_PER_WORKER_MEM_BYTES, SETUP_MEM_RESERVE_BYTES;
|
|
401
|
-
var init_config = __esm({
|
|
402
|
-
"src/config.ts"() {
|
|
403
|
-
"use strict";
|
|
404
|
-
init_default_repo_discovery();
|
|
405
|
-
init_path_values();
|
|
406
|
-
init_util();
|
|
407
|
-
init_box_identity();
|
|
408
|
-
init_worker_cap_source();
|
|
409
|
-
init_disk_gate();
|
|
410
|
-
CONFIG_DIR = path4.join(homedir4(), ".kynver");
|
|
411
|
-
CONFIG_FILE = path4.join(CONFIG_DIR, "config.json");
|
|
412
|
-
CREDENTIALS_FILE = path4.join(CONFIG_DIR, "credentials");
|
|
413
|
-
SETUP_PER_WORKER_MEM_BYTES = 500 * 1024 * 1024;
|
|
414
|
-
SETUP_MEM_RESERVE_BYTES = 4 * 1024 * 1024 * 1024;
|
|
415
|
-
}
|
|
416
|
-
});
|
|
417
|
-
|
|
418
|
-
// src/default-repo.ts
|
|
419
|
-
init_config();
|
|
420
|
-
init_default_repo_discovery();
|
|
421
|
-
init_path_values();
|
|
422
|
-
import path5 from "node:path";
|
|
423
|
-
function expandConfiguredRepo(value) {
|
|
424
|
-
return path5.resolve(resolveUserPath(value.trim()));
|
|
425
|
-
}
|
|
426
|
-
function fromConfigured(value, source, persistedInConfig) {
|
|
427
|
-
const trimmed = value?.trim();
|
|
428
|
-
if (!trimmed) return null;
|
|
429
|
-
return {
|
|
430
|
-
repo: expandConfiguredRepo(trimmed),
|
|
431
|
-
source,
|
|
432
|
-
persistedInConfig
|
|
433
|
-
};
|
|
434
|
-
}
|
|
435
|
-
function resolveDefaultRepo(opts = {}) {
|
|
436
|
-
const env = opts.env ?? process.env;
|
|
437
|
-
const config = opts.config ?? loadUserConfig();
|
|
438
|
-
const fromConfig = fromConfigured(config.defaultRepo, "config", true);
|
|
439
|
-
if (fromConfig) return fromConfig;
|
|
440
|
-
const fromDefaultEnv = fromConfigured(env.KYNVER_DEFAULT_REPO, "env_default_repo", false);
|
|
441
|
-
if (fromDefaultEnv) return fromDefaultEnv;
|
|
442
|
-
const fromHarnessEnv = fromConfigured(env.KYNVER_HARNESS_REPO, "env_harness_repo", false);
|
|
443
|
-
if (fromHarnessEnv) return fromHarnessEnv;
|
|
444
|
-
const discovered = discoverDefaultRepo({
|
|
445
|
-
cwd: opts.cwd,
|
|
446
|
-
runtimeModuleUrl: opts.runtimeModuleUrl
|
|
447
|
-
});
|
|
448
|
-
if (!discovered) return null;
|
|
449
|
-
return {
|
|
450
|
-
repo: discovered.repo,
|
|
451
|
-
source: discovered.source,
|
|
452
|
-
persistedInConfig: false
|
|
453
|
-
};
|
|
454
|
-
}
|
|
455
|
-
export {
|
|
456
|
-
resolveDefaultRepo
|
|
457
|
-
};
|
|
458
|
-
//# sourceMappingURL=default-repo.js.map
|
|
1
|
+
var t=(e,n)=>()=>(e&&(n=e(e=0)),n);function C(e){return process.platform!=="win32"?e:{windowsHide:!0,...e}}var i=t(()=>{"use strict"});var Q,Ce,P=t(()=>{"use strict";Q=["ANTHROPIC_API_KEY","ANALYST_API_KEY","RECRUITER_API_KEY","AUTH_SECRET","NEXTAUTH_SECRET","DATABASE_URL","PRODUCTION_DATABASE_URL","KYNVER_PRODUCTION_DATABASE_URL","REDIS_URL","GOOGLE_CLIENT_SECRET","GITHUB_CLIENT_SECRET","KYNVER_API_KEY","KYNVER_SERVICE_SECRET","KYNVER_RUNTIME_SECRET","KYNVER_CRON_SECRET","OPENCLAW_CRON_SECRET","QSTASH_TOKEN","QSTASH_CURRENT_SIGNING_KEY","QSTASH_NEXT_SIGNING_KEY","TOOL_SECRETS_KEK","TOOL_EXECUTOR_DISPATCH_SECRET","CLOUDFLARE_API_TOKEN","STRIPE_SECRET_KEY","STRIPE_WEBHOOK_SECRET","STRIPE_IDENTITY_WEBHOOK_SECRET","VOYAGE_API_KEY","PERPLEXITY_API_KEY","FRED_API_KEY","FMP_API_KEY","CURSOR_API_KEY"],Ce=new Set(Q)});import{spawnSync as Z}from"node:child_process";function w(e,n){try{let r=Z("git",n,C({cwd:e,encoding:"utf8"}));return{status:r.status,stdout:r.stdout||"",stderr:r.stderr||"",error:r.error?r.error.message:null}}catch(r){return{status:null,stdout:"",stderr:"",error:r.message}}}var g=t(()=>{"use strict";i();P()});import{homedir as O}from"node:os";import B from"node:path";function ee(e){return e==="~"?O():e.startsWith("~/")||e.startsWith("~\\")?B.join(O(),e.slice(2)):e}function u(e){return B.resolve(ee(e))}var d=t(()=>{"use strict"});import{existsSync as y,readFileSync as W}from"node:fs";import{homedir as re}from"node:os";import a from"node:path";import{fileURLToPath as te}from"node:url";function oe(e){let n=a.join(e,"package.json");if(!y(n))return null;try{let r=JSON.parse(W(n,"utf8"));return typeof r.name=="string"?r.name.trim():null}catch{return null}}function se(e){return oe(e)==="kynver"}function T(e){let n=a.resolve(e);if(!y(n))return null;let r=w(n,["rev-parse","--show-toplevel"]);if(r.status!==0)return null;let o=r.stdout.trim();return o.length?a.resolve(o):null}function ie(e=import.meta.url){let n=a.dirname(te(e));for(let r=0;r<8;r+=1){let o=a.join(n,"package.json");if(y(o))try{if(JSON.parse(W(o,"utf8")).name==="@kynver-app/runtime")return n}catch{}let s=a.dirname(n);if(s===n)break;n=s}return null}function p(e,n,r,o){if(!r)return;let s=a.resolve(r);e.has(s)||se(s)&&(e.add(s),n.push({repo:s,source:o}))}function ae(e){let n=e?.cwd??process.cwd(),r=new Set,o=[];p(r,o,T(n),"cwd_git");let s=ie(e?.runtimeModuleUrl??import.meta.url);s&&p(r,o,T(s),"runtime_checkout");let l=re();for(let c of ne)p(r,o,u(a.join(l,c)),"well_known_path");return o}function h(e){return ae(e)[0]??null}var ne,b=t(()=>{"use strict";g();d();ne=["Kynver","repos/Kynver","repos/kynver-source-main","code/Kynver","projects/Kynver"]});var k=t(()=>{"use strict"});var N=t(()=>{"use strict"});var ze,Je,U=t(()=>{"use strict";ze=25*1024*1024*1024,Je=12*1024*1024*1024});var Ze,er,R=t(()=>{"use strict";U();Ze=30*1024*1024*1024,er=15*1024*1024*1024});import{homedir as le}from"node:os";import ce from"node:path";var ar,K=t(()=>{"use strict";m();d();i();ar=ce.join(le(),".openclaw","harness")});var _=t(()=>{"use strict";K();i()});var I=t(()=>{"use strict";_();i()});var M=t(()=>{"use strict"});var D=t(()=>{"use strict";M();i()});var F=t(()=>{"use strict"});var H=t(()=>{"use strict";F()});var $=t(()=>{"use strict";H();i()});var j=t(()=>{"use strict"});var L=t(()=>{"use strict"});var G=t(()=>{"use strict"});var S=t(()=>{"use strict"});var Y=t(()=>{"use strict";S()});var V=t(()=>{"use strict";D();$();j();L();g();G();Y();S();i()});var z=t(()=>{"use strict";V()});var pe,ye,J=t(()=>{"use strict";N();m();k();E();R();_();I();z();i();pe=500*1024*1024,ye=4*1024*1024*1024});var E=t(()=>{"use strict";J()});import{existsSync as ke,mkdirSync as Lt,readFileSync as Re,writeFileSync as Gt}from"node:fs";import{homedir as xe,totalmem as Vt}from"node:os";import v from"node:path";function f(){if(!ke(q))return{};try{return JSON.parse(Re(q,"utf8"))}catch{return{}}}var X,q,rn,tn,nn,m=t(()=>{"use strict";b();d();i();k();E();R();X=v.join(xe(),".kynver"),q=v.join(X,"config.json"),rn=v.join(X,"credentials");tn=500*1024*1024,nn=4*1024*1024*1024});m();b();d();import _e from"node:path";function Se(e){return _e.resolve(u(e.trim()))}function A(e,n,r){let o=e?.trim();return o?{repo:Se(o),source:n,persistedInConfig:r}:null}function Ee(e={}){let n=e.env??process.env,r=e.config??f(),o=A(r.defaultRepo,"config",!0);if(o)return o;let s=A(n.KYNVER_DEFAULT_REPO,"env_default_repo",!1);if(s)return s;let l=A(n.KYNVER_HARNESS_REPO,"env_harness_repo",!1);if(l)return l;let c=h({cwd:e.cwd,runtimeModuleUrl:e.runtimeModuleUrl});return c?{repo:c.repo,source:c.source,persistedInConfig:!1}:null}export{Ee as resolveDefaultRepo};
|