archondev 2.19.51 → 2.19.53
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/{chunk-XOMTEPVQ.js → chunk-L3FRKAIO.js} +1 -1
- package/dist/{chunk-UYFYB3TJ.js → chunk-R4A2C42M.js} +80 -2
- package/dist/{chunk-NPFO2LYT.js → chunk-TG3ELXS3.js} +10 -5
- package/dist/{chunk-ONA4MA6M.js → chunk-TZNB4BPI.js} +1 -1
- package/dist/{chunk-TVQA3HXM.js → chunk-XHIVKDU5.js} +1 -1
- package/dist/{execute-544PE37M.js → execute-HQ5XANCR.js} +2 -2
- package/dist/index.js +28 -29
- package/dist/{list-ON64JA24.js → list-QKB55FIY.js} +2 -2
- package/dist/{parallel-54OGF2X3.js → parallel-WCUTC4FM.js} +2 -2
- package/dist/{plan-QDOPOVJX.js → plan-V57SS7O6.js} +1 -1
- package/dist/{show-LBFR7FL2.js → show-QDTDTY4P.js} +2 -2
- package/package.json +1 -1
|
@@ -15,6 +15,9 @@ import {
|
|
|
15
15
|
import {
|
|
16
16
|
ArchitectureParser
|
|
17
17
|
} from "./chunk-5EVHUDQX.js";
|
|
18
|
+
import {
|
|
19
|
+
getModelCostWithFallback
|
|
20
|
+
} from "./chunk-7C6JELBL.js";
|
|
18
21
|
import {
|
|
19
22
|
KeyManager
|
|
20
23
|
} from "./chunk-RDG5BUED.js";
|
|
@@ -445,6 +448,68 @@ var UsageRecorder = class {
|
|
|
445
448
|
const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
446
449
|
return uuidRegex.test(str);
|
|
447
450
|
}
|
|
451
|
+
calculateBaseCost(model, inputTokens, outputTokens) {
|
|
452
|
+
const pricing = getModelCostWithFallback(model, "conservative_max");
|
|
453
|
+
return inputTokens / 1e3 * pricing.costPer1kInput + outputTokens / 1e3 * pricing.costPer1kOutput;
|
|
454
|
+
}
|
|
455
|
+
async tryRecordUsageWithoutRpc(params, idempotencyKey) {
|
|
456
|
+
try {
|
|
457
|
+
const { data: rawProfile, error: profileError } = await this.supabase.from("user_profiles").select("id, tier, credit_balance_cents").eq("id", params.userId).single();
|
|
458
|
+
const profile = rawProfile;
|
|
459
|
+
if (profileError || !profile?.id || !profile.tier) {
|
|
460
|
+
return null;
|
|
461
|
+
}
|
|
462
|
+
if (profile.tier === "CREDITS") {
|
|
463
|
+
return null;
|
|
464
|
+
}
|
|
465
|
+
const baseCost = this.calculateBaseCost(params.model, params.inputTokens, params.outputTokens);
|
|
466
|
+
const totalCents = profile.tier === "FREE" ? Math.ceil(baseCost * 100) : 0;
|
|
467
|
+
const payload = {
|
|
468
|
+
user_id: params.userId,
|
|
469
|
+
atom_id: params.atomId ?? null,
|
|
470
|
+
execution_id: params.executionId ?? null,
|
|
471
|
+
model: params.model,
|
|
472
|
+
provider: params.provider,
|
|
473
|
+
operation: params.operation,
|
|
474
|
+
input_tokens: params.inputTokens,
|
|
475
|
+
output_tokens: params.outputTokens,
|
|
476
|
+
base_cost: baseCost,
|
|
477
|
+
marked_up_cost: baseCost,
|
|
478
|
+
fee_cents: 0,
|
|
479
|
+
total_cents: totalCents,
|
|
480
|
+
idempotency_key: idempotencyKey
|
|
481
|
+
};
|
|
482
|
+
const { data: rawInsert, error: insertError } = await this.supabase.from("token_usage").insert(payload).select("id").single();
|
|
483
|
+
if (insertError) {
|
|
484
|
+
const pgCode = insertError.code;
|
|
485
|
+
if (pgCode === "23505") {
|
|
486
|
+
const { data: existing } = await this.supabase.from("token_usage").select("id").eq("user_id", params.userId).eq("idempotency_key", idempotencyKey).single();
|
|
487
|
+
const existingId = existing?.id;
|
|
488
|
+
return {
|
|
489
|
+
success: true,
|
|
490
|
+
isDuplicate: true,
|
|
491
|
+
usageId: existingId,
|
|
492
|
+
costCents: totalCents,
|
|
493
|
+
feeCents: 0,
|
|
494
|
+
remainingBalance: profile.credit_balance_cents ?? 0,
|
|
495
|
+
tier: profile.tier
|
|
496
|
+
};
|
|
497
|
+
}
|
|
498
|
+
return null;
|
|
499
|
+
}
|
|
500
|
+
const usageId = rawInsert?.id;
|
|
501
|
+
return {
|
|
502
|
+
success: true,
|
|
503
|
+
usageId,
|
|
504
|
+
costCents: totalCents,
|
|
505
|
+
feeCents: 0,
|
|
506
|
+
remainingBalance: profile.credit_balance_cents ?? 0,
|
|
507
|
+
tier: profile.tier
|
|
508
|
+
};
|
|
509
|
+
} catch {
|
|
510
|
+
return null;
|
|
511
|
+
}
|
|
512
|
+
}
|
|
448
513
|
/**
|
|
449
514
|
* Generate idempotency key for a request
|
|
450
515
|
* Format: {atomId}:{executionId}:{timestamp}:{random}
|
|
@@ -591,6 +656,10 @@ var UsageRecorder = class {
|
|
|
591
656
|
});
|
|
592
657
|
if (error) {
|
|
593
658
|
console.error("[Billing] RPC error:", error.message);
|
|
659
|
+
const fallback = await this.tryRecordUsageWithoutRpc(params, idempotencyKey);
|
|
660
|
+
if (fallback) {
|
|
661
|
+
return fallback;
|
|
662
|
+
}
|
|
594
663
|
return {
|
|
595
664
|
success: false,
|
|
596
665
|
error: "Billing system temporarily unavailable",
|
|
@@ -630,6 +699,10 @@ var UsageRecorder = class {
|
|
|
630
699
|
};
|
|
631
700
|
} catch (err) {
|
|
632
701
|
console.error("[Billing] Exception:", err);
|
|
702
|
+
const fallback = await this.tryRecordUsageWithoutRpc(params, idempotencyKey);
|
|
703
|
+
if (fallback) {
|
|
704
|
+
return fallback;
|
|
705
|
+
}
|
|
633
706
|
return {
|
|
634
707
|
success: false,
|
|
635
708
|
error: "Billing system error. Please try again.",
|
|
@@ -1618,8 +1691,13 @@ async function resolveProfileId(authId, accessToken) {
|
|
|
1618
1691
|
const supabase = createAuthedSupabaseClient(SUPABASE_URL, SUPABASE_ANON_KEY, accessToken);
|
|
1619
1692
|
const { data: rawData, error } = await supabase.from("user_profiles").select("id").eq("auth_id", authId).single();
|
|
1620
1693
|
const data = rawData;
|
|
1621
|
-
if (error
|
|
1622
|
-
|
|
1694
|
+
if (!error && data?.id) {
|
|
1695
|
+
return data.id;
|
|
1696
|
+
}
|
|
1697
|
+
const { data: byProfileRaw, error: byProfileError } = await supabase.from("user_profiles").select("id").eq("id", authId).single();
|
|
1698
|
+
const byProfile = byProfileRaw;
|
|
1699
|
+
if (byProfileError || !byProfile?.id) return null;
|
|
1700
|
+
return byProfile.id;
|
|
1623
1701
|
} catch {
|
|
1624
1702
|
return null;
|
|
1625
1703
|
}
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
UsageRecorder,
|
|
8
8
|
handleInsufficientCreditsRecovery,
|
|
9
9
|
loadAtom
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-R4A2C42M.js";
|
|
11
11
|
import {
|
|
12
12
|
transitionAtom
|
|
13
13
|
} from "./chunk-WGLVDEZC.js";
|
|
@@ -4835,7 +4835,7 @@ async function attemptPathScopeAutoRecovery(atom, cwd, parseSchema, options) {
|
|
|
4835
4835
|
if (allowedPaths.length === 0) {
|
|
4836
4836
|
return false;
|
|
4837
4837
|
}
|
|
4838
|
-
const { listLocalAtoms, plan } = await import("./plan-
|
|
4838
|
+
const { listLocalAtoms, plan } = await import("./plan-V57SS7O6.js");
|
|
4839
4839
|
const before = await listLocalAtoms();
|
|
4840
4840
|
const recoveryStartedAt = Date.now();
|
|
4841
4841
|
const recoverySource = atom.description ?? atom.title;
|
|
@@ -4903,7 +4903,7 @@ async function execute(atomId, options) {
|
|
|
4903
4903
|
process.exit(1);
|
|
4904
4904
|
};
|
|
4905
4905
|
if (options.parallel && options.parallel.length > 0) {
|
|
4906
|
-
const { parallelExecute } = await import("./parallel-
|
|
4906
|
+
const { parallelExecute } = await import("./parallel-WCUTC4FM.js");
|
|
4907
4907
|
const allAtomIds = [atomId, ...options.parallel];
|
|
4908
4908
|
await parallelExecute(allAtomIds, { skipGates: options.skipGates === true });
|
|
4909
4909
|
return;
|
|
@@ -5298,10 +5298,15 @@ async function resolveProfileId(authId, accessToken) {
|
|
|
5298
5298
|
const supabase = createAuthedSupabaseClient(SUPABASE_URL, SUPABASE_ANON_KEY, accessToken);
|
|
5299
5299
|
const { data: rawData, error } = await supabase.from("user_profiles").select("id").eq("auth_id", authId).single();
|
|
5300
5300
|
const data = rawData;
|
|
5301
|
-
if (error
|
|
5301
|
+
if (!error && data?.id) {
|
|
5302
|
+
return data.id;
|
|
5303
|
+
}
|
|
5304
|
+
const { data: byProfileRaw, error: byProfileError } = await supabase.from("user_profiles").select("id").eq("id", authId).single();
|
|
5305
|
+
const byProfile = byProfileRaw;
|
|
5306
|
+
if (byProfileError || !byProfile?.id) {
|
|
5302
5307
|
return null;
|
|
5303
5308
|
}
|
|
5304
|
-
return
|
|
5309
|
+
return byProfile.id;
|
|
5305
5310
|
} catch {
|
|
5306
5311
|
return null;
|
|
5307
5312
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
execute
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-TG3ELXS3.js";
|
|
4
4
|
import "./chunk-EBHHIUCB.js";
|
|
5
|
-
import "./chunk-
|
|
5
|
+
import "./chunk-R4A2C42M.js";
|
|
6
6
|
import "./chunk-WGLVDEZC.js";
|
|
7
7
|
import "./chunk-3MZOEZUH.js";
|
|
8
8
|
import "./chunk-F7R3QKHP.js";
|
package/dist/index.js
CHANGED
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
} from "./chunk-6URKZ7NB.js";
|
|
14
14
|
import {
|
|
15
15
|
show
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-TZNB4BPI.js";
|
|
17
17
|
import {
|
|
18
18
|
bugReport
|
|
19
19
|
} from "./chunk-AHK2ITJX.js";
|
|
@@ -50,13 +50,13 @@ import {
|
|
|
50
50
|
parallelRunWaves,
|
|
51
51
|
parallelSchedule,
|
|
52
52
|
parallelStatus
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-L3FRKAIO.js";
|
|
54
54
|
import {
|
|
55
55
|
DependencyParser,
|
|
56
56
|
EnvironmentConfigLoader,
|
|
57
57
|
EnvironmentValidator,
|
|
58
58
|
execute
|
|
59
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-TG3ELXS3.js";
|
|
60
60
|
import {
|
|
61
61
|
cloudCancel,
|
|
62
62
|
cloudLogs,
|
|
@@ -64,12 +64,12 @@ import {
|
|
|
64
64
|
} from "./chunk-EBHHIUCB.js";
|
|
65
65
|
import {
|
|
66
66
|
list
|
|
67
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-XHIVKDU5.js";
|
|
68
68
|
import {
|
|
69
69
|
listLocalAtoms,
|
|
70
70
|
loadAtom,
|
|
71
71
|
plan
|
|
72
|
-
} from "./chunk-
|
|
72
|
+
} from "./chunk-R4A2C42M.js";
|
|
73
73
|
import "./chunk-WGLVDEZC.js";
|
|
74
74
|
import "./chunk-3MZOEZUH.js";
|
|
75
75
|
import {
|
|
@@ -3034,7 +3034,6 @@ async function resolveStartupChatModel(tier, accessToken, existingAuthId) {
|
|
|
3034
3034
|
}
|
|
3035
3035
|
}
|
|
3036
3036
|
async function resolveAuthIdFromToken(accessToken, existingAuthId) {
|
|
3037
|
-
if (existingAuthId) return existingAuthId;
|
|
3038
3037
|
try {
|
|
3039
3038
|
const { SUPABASE_URL: SUPABASE_URL2, SUPABASE_ANON_KEY: SUPABASE_ANON_KEY2 } = await import("./constants-XDIWFFPN.js");
|
|
3040
3039
|
const { createClient: createClient2 } = await import("@supabase/supabase-js");
|
|
@@ -3042,9 +3041,9 @@ async function resolveAuthIdFromToken(accessToken, existingAuthId) {
|
|
|
3042
3041
|
global: { headers: { Authorization: `Bearer ${accessToken}` } }
|
|
3043
3042
|
});
|
|
3044
3043
|
const { data: { user } } = await client.auth.getUser();
|
|
3045
|
-
return user?.id ?? null;
|
|
3044
|
+
return user?.id ?? existingAuthId ?? null;
|
|
3046
3045
|
} catch {
|
|
3047
|
-
return null;
|
|
3046
|
+
return existingAuthId ?? null;
|
|
3048
3047
|
}
|
|
3049
3048
|
}
|
|
3050
3049
|
async function fetchCreditsUsageStats(accessToken, authId) {
|
|
@@ -3395,7 +3394,7 @@ async function runExploreFlow(cwd, followUpInput, options = {}) {
|
|
|
3395
3394
|
case "1": {
|
|
3396
3395
|
const description = await promptWithCommands("Describe what you want to do", { allowMultiline: true });
|
|
3397
3396
|
if (description.trim()) {
|
|
3398
|
-
const { plan: plan2 } = await import("./plan-
|
|
3397
|
+
const { plan: plan2 } = await import("./plan-V57SS7O6.js");
|
|
3399
3398
|
await plan2(description, { conversational: true });
|
|
3400
3399
|
}
|
|
3401
3400
|
await showMainMenu();
|
|
@@ -3640,7 +3639,7 @@ ${state.forbiddenPatterns?.length ? `- **Forbidden patterns:** ${state.forbidden
|
|
|
3640
3639
|
const hintedTask = initialTaskHint?.trim() ?? "";
|
|
3641
3640
|
if (hintedTask) {
|
|
3642
3641
|
console.log(chalk6.dim("Using your request above as the first task.\n"));
|
|
3643
|
-
const { plan: plan2 } = await import("./plan-
|
|
3642
|
+
const { plan: plan2 } = await import("./plan-V57SS7O6.js");
|
|
3644
3643
|
await plan2(hintedTask, { conversational: true });
|
|
3645
3644
|
return;
|
|
3646
3645
|
}
|
|
@@ -3665,7 +3664,7 @@ ${state.forbiddenPatterns?.length ? `- **Forbidden patterns:** ${state.forbidden
|
|
|
3665
3664
|
description = continueAnswer.trim();
|
|
3666
3665
|
}
|
|
3667
3666
|
if (description.trim()) {
|
|
3668
|
-
const { plan: plan2 } = await import("./plan-
|
|
3667
|
+
const { plan: plan2 } = await import("./plan-V57SS7O6.js");
|
|
3669
3668
|
await plan2(description, { conversational: true });
|
|
3670
3669
|
}
|
|
3671
3670
|
}
|
|
@@ -3894,7 +3893,7 @@ async function handleAgentConversationInput(cwd, input) {
|
|
|
3894
3893
|
return true;
|
|
3895
3894
|
}
|
|
3896
3895
|
console.log(chalk6.dim("\n> Got it! Creating a task for this...\n"));
|
|
3897
|
-
const { plan: plan2 } = await import("./plan-
|
|
3896
|
+
const { plan: plan2 } = await import("./plan-V57SS7O6.js");
|
|
3898
3897
|
await plan2(await withAllowedPathScope(cwd, input), { conversational: true });
|
|
3899
3898
|
if (shouldAutoExecuteAfterPlanning(input)) {
|
|
3900
3899
|
await continueWithCurrentTask(cwd, { runAllReady: true });
|
|
@@ -3941,7 +3940,7 @@ async function showProposalForApproval(input) {
|
|
|
3941
3940
|
}
|
|
3942
3941
|
}
|
|
3943
3942
|
async function showLatestPlannedAtom(cwd) {
|
|
3944
|
-
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-
|
|
3943
|
+
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-V57SS7O6.js");
|
|
3945
3944
|
const atoms = await listLocalAtoms2();
|
|
3946
3945
|
if (atoms.length === 0) {
|
|
3947
3946
|
console.log(chalk6.yellow("No atoms found yet. Tell me what to plan."));
|
|
@@ -3959,7 +3958,7 @@ async function showLatestPlannedAtom(cwd) {
|
|
|
3959
3958
|
console.log(chalk6.dim(`
|
|
3960
3959
|
Showing latest planned atom (${latest.externalId})...
|
|
3961
3960
|
`));
|
|
3962
|
-
const { show: show2 } = await import("./show-
|
|
3961
|
+
const { show: show2 } = await import("./show-QDTDTY4P.js");
|
|
3963
3962
|
await show2(latest.externalId);
|
|
3964
3963
|
}
|
|
3965
3964
|
function isContinuationDirective(input) {
|
|
@@ -4092,7 +4091,7 @@ async function applyApprovedProposal(cwd) {
|
|
|
4092
4091
|
console.log(chalk6.dim('\nReply "continue" when you want execution to start.'));
|
|
4093
4092
|
}
|
|
4094
4093
|
async function createTaskFromRequest(cwd, request) {
|
|
4095
|
-
const { plan: plan2, listLocalAtoms: listLocalAtoms2 } = await import("./plan-
|
|
4094
|
+
const { plan: plan2, listLocalAtoms: listLocalAtoms2 } = await import("./plan-V57SS7O6.js");
|
|
4096
4095
|
const before = await listLocalAtoms2();
|
|
4097
4096
|
const beforeIds = new Set(before.map((atom) => atom.externalId));
|
|
4098
4097
|
await plan2(await withAllowedPathScope(cwd, request), { conversational: true });
|
|
@@ -4268,13 +4267,13 @@ function buildSampleCapsuleDraft(cwd, files, capsuleCount) {
|
|
|
4268
4267
|
].join("\n");
|
|
4269
4268
|
}
|
|
4270
4269
|
async function continueWithCurrentTask(cwd, options = {}) {
|
|
4271
|
-
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-
|
|
4270
|
+
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-V57SS7O6.js");
|
|
4272
4271
|
const byMostRecent = (a, b) => {
|
|
4273
4272
|
const aTime = new Date(String(a.updatedAt ?? a.createdAt ?? "")).getTime() || 0;
|
|
4274
4273
|
const bTime = new Date(String(b.updatedAt ?? b.createdAt ?? "")).getTime() || 0;
|
|
4275
4274
|
return bTime - aTime;
|
|
4276
4275
|
};
|
|
4277
|
-
const { execute: execute2 } = await import("./execute-
|
|
4276
|
+
const { execute: execute2 } = await import("./execute-HQ5XANCR.js");
|
|
4278
4277
|
const runAllReady = options.runAllReady === true;
|
|
4279
4278
|
const scopeIds = options.onlyAtomIds ? new Set(options.onlyAtomIds) : null;
|
|
4280
4279
|
const attempted = /* @__PURE__ */ new Set();
|
|
@@ -4350,7 +4349,7 @@ Continuing with ${nextAtom.externalId}...
|
|
|
4350
4349
|
}
|
|
4351
4350
|
}
|
|
4352
4351
|
async function replanLatestBlockedAtom(cwd) {
|
|
4353
|
-
const { listLocalAtoms: listLocalAtoms2, plan: plan2 } = await import("./plan-
|
|
4352
|
+
const { listLocalAtoms: listLocalAtoms2, plan: plan2 } = await import("./plan-V57SS7O6.js");
|
|
4354
4353
|
const atoms = await listLocalAtoms2();
|
|
4355
4354
|
const blocked = atoms.filter((a) => a.status === "BLOCKED" && (a.errorMessage ?? "").toLowerCase().includes("outside the allowed paths")).sort((a, b) => {
|
|
4356
4355
|
const aTime = new Date(String(a.updatedAt ?? a.createdAt ?? "")).getTime() || 0;
|
|
@@ -4464,7 +4463,7 @@ async function handleFreeformJourneyInput(cwd, input) {
|
|
|
4464
4463
|
const state = detectProjectState(cwd);
|
|
4465
4464
|
if (state.hasArchitecture) {
|
|
4466
4465
|
console.log(chalk6.dim("\n> Got it! Creating a task for this...\n"));
|
|
4467
|
-
const { plan: plan3 } = await import("./plan-
|
|
4466
|
+
const { plan: plan3 } = await import("./plan-V57SS7O6.js");
|
|
4468
4467
|
await plan3(await withAllowedPathScope(cwd, freeform), { conversational: true });
|
|
4469
4468
|
return true;
|
|
4470
4469
|
}
|
|
@@ -4473,7 +4472,7 @@ async function handleFreeformJourneyInput(cwd, input) {
|
|
|
4473
4472
|
return true;
|
|
4474
4473
|
}
|
|
4475
4474
|
console.log(chalk6.dim("\n> Got it! Creating a task for this...\n"));
|
|
4476
|
-
const { plan: plan2 } = await import("./plan-
|
|
4475
|
+
const { plan: plan2 } = await import("./plan-V57SS7O6.js");
|
|
4477
4476
|
await plan2(await withAllowedPathScope(cwd, freeform), { conversational: true });
|
|
4478
4477
|
return true;
|
|
4479
4478
|
}
|
|
@@ -4522,7 +4521,7 @@ function isFileLocationQuestion(input) {
|
|
|
4522
4521
|
return true;
|
|
4523
4522
|
}
|
|
4524
4523
|
async function answerLatestOutputLocation(cwd) {
|
|
4525
|
-
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-
|
|
4524
|
+
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-V57SS7O6.js");
|
|
4526
4525
|
const atoms = await listLocalAtoms2();
|
|
4527
4526
|
const latestDone = atoms.filter((atom) => atom.status === "DONE").sort((a, b) => {
|
|
4528
4527
|
const aTime = new Date(String(a.updatedAt ?? a.createdAt ?? "")).getTime() || 0;
|
|
@@ -4571,7 +4570,7 @@ async function handlePostExploreAction(cwd, request, options = {}) {
|
|
|
4571
4570
|
} else {
|
|
4572
4571
|
console.log(chalk6.dim("> Got it! Creating a task for this...\n"));
|
|
4573
4572
|
}
|
|
4574
|
-
const { plan: plan2 } = await import("./plan-
|
|
4573
|
+
const { plan: plan2 } = await import("./plan-V57SS7O6.js");
|
|
4575
4574
|
await plan2(await withAllowedPathScope(cwd, request), { conversational: true });
|
|
4576
4575
|
if (options.agentMode) {
|
|
4577
4576
|
if (shouldAutoExecuteAfterPlanning(sourceInput)) {
|
|
@@ -4595,18 +4594,18 @@ Constraints:
|
|
|
4595
4594
|
- If required files are outside this scope, propose the minimum architecture path update first.`;
|
|
4596
4595
|
}
|
|
4597
4596
|
async function planTask() {
|
|
4598
|
-
const { plan: plan2 } = await import("./plan-
|
|
4597
|
+
const { plan: plan2 } = await import("./plan-V57SS7O6.js");
|
|
4599
4598
|
const description = await promptWithCommands("Describe what you want to build", { allowMultiline: true });
|
|
4600
4599
|
if (description.trim()) {
|
|
4601
4600
|
await plan2(description, { conversational: true });
|
|
4602
4601
|
}
|
|
4603
4602
|
}
|
|
4604
4603
|
async function listAtoms() {
|
|
4605
|
-
const { list: list2 } = await import("./list-
|
|
4604
|
+
const { list: list2 } = await import("./list-QKB55FIY.js");
|
|
4606
4605
|
await list2({});
|
|
4607
4606
|
}
|
|
4608
4607
|
async function executeNext() {
|
|
4609
|
-
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-
|
|
4608
|
+
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-V57SS7O6.js");
|
|
4610
4609
|
const { analyzeProject, getComplexityDescription, getModeDescription } = await import("./orchestration-HIF3KP25.js");
|
|
4611
4610
|
const { loadExecutionPreferences } = await import("./preferences-MTGN2VZK.js");
|
|
4612
4611
|
const cwd = process.cwd();
|
|
@@ -4677,11 +4676,11 @@ async function executeNext() {
|
|
|
4677
4676
|
}
|
|
4678
4677
|
}
|
|
4679
4678
|
if (selectedMode === "parallel-cloud") {
|
|
4680
|
-
const { parallelExecuteCloud: parallelExecuteCloud2 } = await import("./parallel-
|
|
4679
|
+
const { parallelExecuteCloud: parallelExecuteCloud2 } = await import("./parallel-WCUTC4FM.js");
|
|
4681
4680
|
await parallelExecuteCloud2(runIds);
|
|
4682
4681
|
return;
|
|
4683
4682
|
}
|
|
4684
|
-
const { parallelExecute } = await import("./parallel-
|
|
4683
|
+
const { parallelExecute } = await import("./parallel-WCUTC4FM.js");
|
|
4685
4684
|
await parallelExecute(runIds);
|
|
4686
4685
|
return;
|
|
4687
4686
|
}
|
|
@@ -4689,7 +4688,7 @@ async function executeNext() {
|
|
|
4689
4688
|
const atomId = await prompt("Enter atom ID to execute (or press Enter for first pending)");
|
|
4690
4689
|
const targetId = atomId.trim() || pendingAtoms[0]?.id;
|
|
4691
4690
|
if (targetId) {
|
|
4692
|
-
const { execute: execute2 } = await import("./execute-
|
|
4691
|
+
const { execute: execute2 } = await import("./execute-HQ5XANCR.js");
|
|
4693
4692
|
await execute2(targetId, {});
|
|
4694
4693
|
} else {
|
|
4695
4694
|
console.log(chalk6.yellow("No atom to execute."));
|
|
@@ -4838,7 +4837,7 @@ async function handleSlashCommand(input) {
|
|
|
4838
4837
|
const arg = parts.slice(1).join(" ").trim();
|
|
4839
4838
|
switch (command) {
|
|
4840
4839
|
case "/plan": {
|
|
4841
|
-
const { plan: plan2 } = await import("./plan-
|
|
4840
|
+
const { plan: plan2 } = await import("./plan-V57SS7O6.js");
|
|
4842
4841
|
if (arg) {
|
|
4843
4842
|
await plan2(arg, { conversational: true });
|
|
4844
4843
|
} else {
|
|
@@ -6,9 +6,9 @@ import {
|
|
|
6
6
|
parallelRunWaves,
|
|
7
7
|
parallelSchedule,
|
|
8
8
|
parallelStatus
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-L3FRKAIO.js";
|
|
10
10
|
import "./chunk-EBHHIUCB.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-R4A2C42M.js";
|
|
12
12
|
import "./chunk-WGLVDEZC.js";
|
|
13
13
|
import "./chunk-3MZOEZUH.js";
|
|
14
14
|
import "./chunk-F7R3QKHP.js";
|