@sideboard-ai/core 0.1.328 → 0.1.329
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/{abletime-OW7LTFQD.js → abletime-5FBKBO3R.js} +4 -4
- package/dist/{abletime-NW4PJGHN.js → abletime-SO2YHMEI.js} +4 -4
- package/dist/{abletime-oauth-TPR2QDRI.js → abletime-oauth-EUC5FFMD.js} +5 -5
- package/dist/{abletime-oauth-KWQQRHOQ.js → abletime-oauth-I34WZZZL.js} +3 -3
- package/dist/{abletime-rest-5DCWN3P4.js → abletime-rest-EI5ZJ72Z.js} +3 -3
- package/dist/{abletime-rest-UJ6SXDBN.js → abletime-rest-HEQXSZAQ.js} +3 -3
- package/dist/{agents-XWIPONJR.js → agents-JH4WV2ZH.js} +7 -7
- package/dist/{agents-IYBY3JT5.js → agents-JXQKHY7Q.js} +7 -7
- package/dist/{app-settings-A5D364JD.js → app-settings-JAEV53LB.js} +1 -1
- package/dist/{app-settings-SA4HX3ZQ.js → app-settings-SHZWNJBV.js} +1 -1
- package/dist/{chunk-TUH4ICHQ.js → chunk-277I5IBI.js} +1 -1
- package/dist/{chunk-QMLDR63X.js → chunk-3DJQLQWU.js} +2 -2
- package/dist/{chunk-EJRCHCXM.js → chunk-7BAS6DF7.js} +2 -1
- package/dist/{chunk-ECY7WL6T.js → chunk-7L36GZA4.js} +2 -2
- package/dist/{chunk-SFXGD5KJ.js → chunk-7MPRTC6X.js} +1 -1
- package/dist/{chunk-ZPBOWO64.js → chunk-BAIPCN34.js} +2 -2
- package/dist/{chunk-SB5ADEZZ.js → chunk-D6V6F74A.js} +5 -5
- package/dist/{chunk-MO46K6WK.js → chunk-DBRQ5NNB.js} +8 -8
- package/dist/{chunk-NQGLDQYB.js → chunk-DFKLWWLY.js} +7 -7
- package/dist/{chunk-XOMVOBPU.js → chunk-E6LONPQH.js} +20 -20
- package/dist/{chunk-5Y2C7Q55.js → chunk-EW5D53VB.js} +1 -1
- package/dist/{chunk-D446IWPP.js → chunk-EY5BJAPV.js} +2 -1
- package/dist/{chunk-XBBZZHJY.js → chunk-F4OUZDIB.js} +5 -5
- package/dist/{chunk-Q4UPRQOS.js → chunk-G45SGI57.js} +3 -3
- package/dist/{chunk-WD222BVP.js → chunk-HCK3UCBJ.js} +21 -21
- package/dist/{chunk-EUIVQAPK.js → chunk-HJIA4X3L.js} +2 -2
- package/dist/{chunk-4F7THWIO.js → chunk-JQWCZGSO.js} +2 -2
- package/dist/{chunk-X3XTO45Y.js → chunk-KUD24QYI.js} +5 -5
- package/dist/{chunk-4G3W23X3.js → chunk-MXQ66CLO.js} +3 -3
- package/dist/{chunk-UMXBH344.js → chunk-NCFYUUSC.js} +1 -1
- package/dist/{chunk-2GEUFPQQ.js → chunk-NQHTYX35.js} +1 -1
- package/dist/{chunk-RDXODLEN.js → chunk-O7JSWISN.js} +3 -3
- package/dist/{chunk-R2C45NHT.js → chunk-P4QRDXRY.js} +2 -2
- package/dist/{chunk-EYDLXVED.js → chunk-PZ5MVD27.js} +5 -5
- package/dist/{chunk-Y6OHM672.js → chunk-QVLDZWHZ.js} +1 -1
- package/dist/{chunk-DACWFN4O.js → chunk-SKPX66MO.js} +5 -5
- package/dist/{chunk-JKHCADKB.js → chunk-U7EANR52.js} +2 -2
- package/dist/{chunk-KLVW3J2B.js → chunk-XOIJJRAQ.js} +2 -2
- package/dist/{chunk-CHYUUETG.js → chunk-YMV5O7KY.js} +3 -3
- package/dist/{chunk-ATQLP22S.js → chunk-ZT5YPYZE.js} +1 -1
- package/dist/{conductor-U5LGJZUJ.js → conductor-6DIR7A4N.js} +5 -5
- package/dist/{conductor-G6GH5ZMU.js → conductor-FA27ZGCV.js} +5 -5
- package/dist/{coordinator-prompt-J7O7JB26.js → coordinator-prompt-B6RHGEJK.js} +4 -4
- package/dist/{coordinator-prompt-3PJLU3UH.js → coordinator-prompt-KAZXK5FZ.js} +4 -4
- package/dist/{global-workspace-Y3UDZYJX.js → global-workspace-IOKHZCXD.js} +4 -4
- package/dist/{global-workspace-4CTLU2BV.js → global-workspace-JKINHUY3.js} +4 -4
- package/dist/index.cjs +9 -6
- package/dist/index.d.cts +12 -9
- package/dist/index.d.ts +12 -9
- package/dist/index.js +26 -24
- package/dist/{linear-CXWGH2TW.js → linear-7HSIGV5S.js} +2 -2
- package/dist/{linear-WLDCJ3AF.js → linear-FRJRK6KI.js} +2 -2
- package/dist/{linear-list-52LEDEWO.js → linear-list-I6DNJC6V.js} +1 -1
- package/dist/{linear-list-FGVN65JU.js → linear-list-LDMBSKYI.js} +1 -1
- package/dist/mcp/run-stdio.cjs +4 -3
- package/dist/mcp/run-stdio.js +16 -16
- package/dist/{optional-cli-INRVBBBG.js → optional-cli-FOSC4NVE.js} +3 -3
- package/dist/{optional-cli-FN4MGB6W.js → optional-cli-NSQZ2DYK.js} +4 -4
- package/dist/{orchestrator-YY2JUYKD.js → orchestrator-LI6EBD2Y.js} +10 -10
- package/dist/{orchestrator-3F53AZEN.js → orchestrator-V35TLMXB.js} +10 -10
- package/dist/{thread-store-K2ZNGUSM.js → thread-store-NVFWKJFH.js} +2 -2
- package/dist/{thread-store-4WE24XA2.js → thread-store-PCIMS6RA.js} +2 -2
- package/dist/{workspaces-MM7CQYR6.js → workspaces-FJL3TL3K.js} +4 -4
- package/dist/{workspaces-WYCVZ6XH.js → workspaces-OLONQF2C.js} +4 -4
- package/dist/{worktree-JBNEMJ5Z.js → worktree-QSQJ2POO.js} +3 -3
- package/dist/{worktree-NNVRGPP4.js → worktree-TX4WXQZV.js} +3 -3
- package/package.json +1 -1
|
@@ -17,13 +17,13 @@ import {
|
|
|
17
17
|
toAbleTimeIssueInfo,
|
|
18
18
|
updateAbleTimeTask,
|
|
19
19
|
verifyAbleTimeConnection
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-YMV5O7KY.js";
|
|
21
21
|
import "./chunk-DBKHL7NC.js";
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-HJIA4X3L.js";
|
|
23
|
+
import "./chunk-SKPX66MO.js";
|
|
24
24
|
import "./chunk-JAT3JFOS.js";
|
|
25
25
|
import "./chunk-6K64FJDD.js";
|
|
26
|
-
import "./chunk-
|
|
26
|
+
import "./chunk-EY5BJAPV.js";
|
|
27
27
|
import "./chunk-4TR3HZFT.js";
|
|
28
28
|
import "./chunk-WDRMZKVB.js";
|
|
29
29
|
import "./chunk-KI45T4DI.js";
|
|
@@ -19,13 +19,13 @@ import {
|
|
|
19
19
|
toAbleTimeIssueInfo,
|
|
20
20
|
updateAbleTimeTask,
|
|
21
21
|
verifyAbleTimeConnection
|
|
22
|
-
} from "./chunk-
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
22
|
+
} from "./chunk-MXQ66CLO.js";
|
|
23
|
+
import "./chunk-BAIPCN34.js";
|
|
24
|
+
import "./chunk-D6V6F74A.js";
|
|
25
25
|
import "./chunk-F6GE7V3Q.js";
|
|
26
26
|
import "./chunk-N2WW62LF.js";
|
|
27
27
|
import "./chunk-2GPQZZLY.js";
|
|
28
|
-
import "./chunk-
|
|
28
|
+
import "./chunk-7BAS6DF7.js";
|
|
29
29
|
import "./chunk-NSTQ6QKD.js";
|
|
30
30
|
import "./chunk-WWUABK6B.js";
|
|
31
31
|
import "./chunk-FJZWM2ON.js";
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import {
|
|
4
4
|
DEFAULT_ABLETIME_HOST,
|
|
5
5
|
normalizeAbleTimeHost
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-D6V6F74A.js";
|
|
7
7
|
import {
|
|
8
8
|
httpFetch
|
|
9
9
|
} from "./chunk-2GPQZZLY.js";
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
getAbleTimeHost,
|
|
13
13
|
loadAppSettings,
|
|
14
14
|
saveAbleTimeConnection
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-7BAS6DF7.js";
|
|
16
16
|
import "./chunk-NSTQ6QKD.js";
|
|
17
17
|
import "./chunk-WWUABK6B.js";
|
|
18
18
|
import "./chunk-FJZWM2ON.js";
|
|
@@ -25,7 +25,7 @@ import { createServer } from "http";
|
|
|
25
25
|
var ABLETIME_OAUTH_CALLBACK_PATH = "/oauth/abletime/callback";
|
|
26
26
|
var ABLETIME_OAUTH_PORT = 19849;
|
|
27
27
|
var ABLETIME_OAUTH_LOCAL_CALLBACK = `http://127.0.0.1:${ABLETIME_OAUTH_PORT}/callback`;
|
|
28
|
-
var ABLETIME_OAUTH_REDIRECT = `https://www.sideboard.
|
|
28
|
+
var ABLETIME_OAUTH_REDIRECT = `https://www.sideboard.build${ABLETIME_OAUTH_CALLBACK_PATH}`;
|
|
29
29
|
function ableTimeOAuthRedirectUri() {
|
|
30
30
|
return process.env.SIDEBOARD_ABLETIME_OAUTH_REDIRECT?.trim() || ABLETIME_OAUTH_REDIRECT;
|
|
31
31
|
}
|
|
@@ -67,7 +67,7 @@ h1{font-size:1.25rem}p{line-height:1.5;color:#444}a{color:#0f7ed4}</style>
|
|
|
67
67
|
<p><a href="${safe}">Open Sideboard</a> if it does not appear.</p>
|
|
68
68
|
</body></html>`;
|
|
69
69
|
}
|
|
70
|
-
var BAKED_ABLETIME_OAUTH_CLIENT_ID = "https://www.sideboard.
|
|
70
|
+
var BAKED_ABLETIME_OAUTH_CLIENT_ID = "https://www.sideboard.build/oauth/abletime-client.json";
|
|
71
71
|
var ABLETIME_OAUTH_RESOURCE = `${DEFAULT_ABLETIME_HOST}/api/public/v2/mcp`;
|
|
72
72
|
var REFRESH_SKEW_MS = 5 * 6e4;
|
|
73
73
|
function hasBakedAbleTimeOAuth() {
|
|
@@ -287,7 +287,7 @@ async function startAbleTimeOAuth(opts) {
|
|
|
287
287
|
persistAbleTimeTokens(data, { host });
|
|
288
288
|
const token = data.access_token.trim();
|
|
289
289
|
try {
|
|
290
|
-
const { getAbleTimeOrientation } = await import("./abletime-
|
|
290
|
+
const { getAbleTimeOrientation } = await import("./abletime-SO2YHMEI.js");
|
|
291
291
|
const orientation = await getAbleTimeOrientation({ token, host });
|
|
292
292
|
return saveAbleTimeConnection({
|
|
293
293
|
accessToken: token,
|
|
@@ -20,10 +20,10 @@ import {
|
|
|
20
20
|
parseAbleTimeOAuthCallbackUrl,
|
|
21
21
|
resolveAbleTimeOAuthHost,
|
|
22
22
|
startAbleTimeOAuth
|
|
23
|
-
} from "./chunk-
|
|
24
|
-
import "./chunk-
|
|
23
|
+
} from "./chunk-F4OUZDIB.js";
|
|
24
|
+
import "./chunk-SKPX66MO.js";
|
|
25
25
|
import "./chunk-JAT3JFOS.js";
|
|
26
|
-
import "./chunk-
|
|
26
|
+
import "./chunk-EY5BJAPV.js";
|
|
27
27
|
import "./chunk-4TR3HZFT.js";
|
|
28
28
|
import "./chunk-WDRMZKVB.js";
|
|
29
29
|
import "./chunk-KI45T4DI.js";
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
callAbleTimeRestTool,
|
|
8
8
|
looksLikeAbleTimeUlid,
|
|
9
9
|
textFromAbleTimeDoc
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-BAIPCN34.js";
|
|
11
|
+
import "./chunk-D6V6F74A.js";
|
|
12
12
|
import "./chunk-2GPQZZLY.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-7BAS6DF7.js";
|
|
14
14
|
import "./chunk-NSTQ6QKD.js";
|
|
15
15
|
import "./chunk-WWUABK6B.js";
|
|
16
16
|
import "./chunk-FJZWM2ON.js";
|
|
@@ -5,10 +5,10 @@ import {
|
|
|
5
5
|
callAbleTimeRestTool,
|
|
6
6
|
looksLikeAbleTimeUlid,
|
|
7
7
|
textFromAbleTimeDoc
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-HJIA4X3L.js";
|
|
9
|
+
import "./chunk-SKPX66MO.js";
|
|
10
10
|
import "./chunk-JAT3JFOS.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-EY5BJAPV.js";
|
|
12
12
|
import "./chunk-4TR3HZFT.js";
|
|
13
13
|
import "./chunk-WDRMZKVB.js";
|
|
14
14
|
import "./chunk-KI45T4DI.js";
|
|
@@ -46,7 +46,7 @@ import {
|
|
|
46
46
|
resolveCursorSdkRoot,
|
|
47
47
|
resolveQuotaFallbackAgent,
|
|
48
48
|
turnCostUsdFromCursorUsage
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-DBRQ5NNB.js";
|
|
50
50
|
import "./chunk-5MXLDDYF.js";
|
|
51
51
|
import {
|
|
52
52
|
getAgentSetupInfo,
|
|
@@ -59,14 +59,14 @@ import {
|
|
|
59
59
|
prepareTerminalCommand,
|
|
60
60
|
resolveLoginCommand,
|
|
61
61
|
whichOnPath
|
|
62
|
-
} from "./chunk-
|
|
63
|
-
import "./chunk-
|
|
64
|
-
import "./chunk-
|
|
62
|
+
} from "./chunk-JQWCZGSO.js";
|
|
63
|
+
import "./chunk-G45SGI57.js";
|
|
64
|
+
import "./chunk-U7EANR52.js";
|
|
65
65
|
import "./chunk-6U6QRUHY.js";
|
|
66
66
|
import "./chunk-E63AM3PW.js";
|
|
67
67
|
import "./chunk-N2WW62LF.js";
|
|
68
68
|
import "./chunk-2GPQZZLY.js";
|
|
69
|
-
import "./chunk-
|
|
69
|
+
import "./chunk-NCFYUUSC.js";
|
|
70
70
|
import "./chunk-4YXZOXMT.js";
|
|
71
71
|
import {
|
|
72
72
|
conductorBundledBinDir,
|
|
@@ -79,14 +79,14 @@ import {
|
|
|
79
79
|
resolveCommandBinarySync,
|
|
80
80
|
withExportedPath
|
|
81
81
|
} from "./chunk-YBTSZ2SW.js";
|
|
82
|
-
import "./chunk-
|
|
82
|
+
import "./chunk-EW5D53VB.js";
|
|
83
83
|
import "./chunk-WMZIANPV.js";
|
|
84
84
|
import {
|
|
85
85
|
ORCHESTRATOR_AGENT_KINDS,
|
|
86
86
|
assertOrchestratorCapableAgent,
|
|
87
87
|
coerceOrchestratorAgent,
|
|
88
88
|
isOrchestratorCapableAgent
|
|
89
|
-
} from "./chunk-
|
|
89
|
+
} from "./chunk-7BAS6DF7.js";
|
|
90
90
|
import "./chunk-NSTQ6QKD.js";
|
|
91
91
|
import "./chunk-WWUABK6B.js";
|
|
92
92
|
import "./chunk-FJZWM2ON.js";
|
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
planModeTurnInstruction,
|
|
38
38
|
resolveCursorModelId,
|
|
39
39
|
resolveQuotaFallbackAgent
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-DFKLWWLY.js";
|
|
41
41
|
import {
|
|
42
42
|
getAgentSetupInfo,
|
|
43
43
|
installAgent,
|
|
@@ -49,13 +49,13 @@ import {
|
|
|
49
49
|
prepareTerminalCommand,
|
|
50
50
|
resolveLoginCommand,
|
|
51
51
|
whichOnPath
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-XOIJJRAQ.js";
|
|
53
53
|
import "./chunk-S5CJUIPY.js";
|
|
54
|
-
import "./chunk-
|
|
54
|
+
import "./chunk-ZT5YPYZE.js";
|
|
55
55
|
import "./chunk-OOXRMTU6.js";
|
|
56
|
-
import "./chunk-
|
|
57
|
-
import "./chunk-
|
|
58
|
-
import "./chunk-
|
|
56
|
+
import "./chunk-O7JSWISN.js";
|
|
57
|
+
import "./chunk-P4QRDXRY.js";
|
|
58
|
+
import "./chunk-QVLDZWHZ.js";
|
|
59
59
|
import "./chunk-QKHEVSB5.js";
|
|
60
60
|
import "./chunk-RSA47QYR.js";
|
|
61
61
|
import "./chunk-JAT3JFOS.js";
|
|
@@ -89,7 +89,7 @@ import {
|
|
|
89
89
|
assertOrchestratorCapableAgent,
|
|
90
90
|
coerceOrchestratorAgent,
|
|
91
91
|
isOrchestratorCapableAgent
|
|
92
|
-
} from "./chunk-
|
|
92
|
+
} from "./chunk-EY5BJAPV.js";
|
|
93
93
|
import "./chunk-4TR3HZFT.js";
|
|
94
94
|
import "./chunk-WDRMZKVB.js";
|
|
95
95
|
import "./chunk-KI45T4DI.js";
|
|
@@ -107,7 +107,7 @@ import {
|
|
|
107
107
|
updateProjectProfileSettings,
|
|
108
108
|
usageOnLimit,
|
|
109
109
|
writeViewerContext
|
|
110
|
-
} from "./chunk-
|
|
110
|
+
} from "./chunk-EY5BJAPV.js";
|
|
111
111
|
import "./chunk-4TR3HZFT.js";
|
|
112
112
|
import "./chunk-WDRMZKVB.js";
|
|
113
113
|
import "./chunk-KI45T4DI.js";
|
|
@@ -109,7 +109,7 @@ import {
|
|
|
109
109
|
updateProjectProfileSettings,
|
|
110
110
|
usageOnLimit,
|
|
111
111
|
writeViewerContext
|
|
112
|
-
} from "./chunk-
|
|
112
|
+
} from "./chunk-7BAS6DF7.js";
|
|
113
113
|
import "./chunk-NSTQ6QKD.js";
|
|
114
114
|
import "./chunk-WWUABK6B.js";
|
|
115
115
|
import "./chunk-FJZWM2ON.js";
|
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
OPTIONAL_SERVICES,
|
|
3
3
|
isOptionalServiceId,
|
|
4
4
|
optionalServiceSpec
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-7L36GZA4.js";
|
|
6
6
|
import {
|
|
7
7
|
installNpmGlobalPackage,
|
|
8
8
|
whichOnPath
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-XOIJJRAQ.js";
|
|
10
10
|
import {
|
|
11
11
|
enrichPathWithNpmGlobalBin
|
|
12
12
|
} from "./chunk-2TUE6JKQ.js";
|
|
@@ -243,7 +243,7 @@ function formatViewerContextReminder() {
|
|
|
243
243
|
|
|
244
244
|
// src/remote/protocol.ts
|
|
245
245
|
var REMOTE_RELAY_PATH = "/remote";
|
|
246
|
-
var BAKED_REMOTE_RELAY_URL = `wss://relay.sideboard.
|
|
246
|
+
var BAKED_REMOTE_RELAY_URL = `wss://relay.sideboard.build${REMOTE_RELAY_PATH}`;
|
|
247
247
|
function normalizeRemoteRelayUrl(raw) {
|
|
248
248
|
let text = raw.trim();
|
|
249
249
|
if (!text) return null;
|
|
@@ -263,6 +263,7 @@ function normalizeRemoteRelayUrl(raw) {
|
|
|
263
263
|
url.pathname = REMOTE_RELAY_PATH;
|
|
264
264
|
url.search = "";
|
|
265
265
|
url.hash = "";
|
|
266
|
+
if (url.hostname === "relay.sideboard.cloud") url.hostname = "relay.sideboard.build";
|
|
266
267
|
return url.toString();
|
|
267
268
|
}
|
|
268
269
|
function remoteRelayUrl(configured) {
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
loadAppSettings,
|
|
6
6
|
saveAppSettings
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-EY5BJAPV.js";
|
|
8
8
|
|
|
9
9
|
// src/integrations/optional-services.ts
|
|
10
10
|
var OPTIONAL_SERVICE_IDS = ["vercel", "supabase", "posthog", "sentry"];
|
|
@@ -273,7 +273,7 @@ async function connectedCliPresence(integrations) {
|
|
|
273
273
|
const ids = connectedOptionalServices(integrations).filter((spec) => spec.cli).map((spec) => spec.id);
|
|
274
274
|
if (ids.length === 0) return void 0;
|
|
275
275
|
try {
|
|
276
|
-
const { optionalCliPresence } = await import("./optional-cli-
|
|
276
|
+
const { optionalCliPresence } = await import("./optional-cli-NSQZ2DYK.js");
|
|
277
277
|
return await optionalCliPresence(ids);
|
|
278
278
|
} catch {
|
|
279
279
|
return void 0;
|
|
@@ -6,14 +6,14 @@ import {
|
|
|
6
6
|
normalizeAbleTimeCredential,
|
|
7
7
|
normalizeAbleTimeHost,
|
|
8
8
|
rewriteAbleTimeError
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-D6V6F74A.js";
|
|
10
10
|
import {
|
|
11
11
|
httpFetch
|
|
12
12
|
} from "./chunk-2GPQZZLY.js";
|
|
13
13
|
import {
|
|
14
14
|
getAbleTimeAccessToken,
|
|
15
15
|
getAbleTimeHost
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-7BAS6DF7.js";
|
|
17
17
|
|
|
18
18
|
// src/integrations/abletime-rest.ts
|
|
19
19
|
var ABLETIME_REST_PREFIX = "/api/public/v2";
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
import {
|
|
7
7
|
getAbleTimeHost,
|
|
8
8
|
isAbleTimeConnected
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-7BAS6DF7.js";
|
|
10
10
|
|
|
11
11
|
// src/integrations/abletime-mcp.ts
|
|
12
12
|
var DEFAULT_ABLETIME_HOST = "https://track.abletime.com";
|
|
@@ -155,7 +155,7 @@ function textsFromUnknown(value) {
|
|
|
155
155
|
return "";
|
|
156
156
|
}
|
|
157
157
|
async function abletimeMcpRequest(method, params, opts) {
|
|
158
|
-
const rawToken = opts?.token ?? await import("./abletime-oauth-
|
|
158
|
+
const rawToken = opts?.token ?? await import("./abletime-oauth-EUC5FFMD.js").then((m) => m.ensureAbleTimeAccessToken());
|
|
159
159
|
if (!rawToken?.trim()) {
|
|
160
160
|
throw new Error("AbleTime is not connected \u2014 paste a personal access token in Account settings");
|
|
161
161
|
}
|
|
@@ -226,9 +226,9 @@ async function callAbleTimeTool(name, args = {}, opts) {
|
|
|
226
226
|
if (!opts?.token && !isAbleTimeConnected()) {
|
|
227
227
|
throw new Error("AbleTime is not connected \u2014 paste a personal access token in Account settings");
|
|
228
228
|
}
|
|
229
|
-
const rawToken = opts?.token ?? await import("./abletime-oauth-
|
|
229
|
+
const rawToken = opts?.token ?? await import("./abletime-oauth-EUC5FFMD.js").then((m) => m.ensureAbleTimeAccessToken());
|
|
230
230
|
if (rawToken && ableTimeUsesRest(rawToken)) {
|
|
231
|
-
const { callAbleTimeRestTool } = await import("./abletime-rest-
|
|
231
|
+
const { callAbleTimeRestTool } = await import("./abletime-rest-EI5ZJ72Z.js");
|
|
232
232
|
return callAbleTimeRestTool(name, args, { ...opts, token: rawToken });
|
|
233
233
|
}
|
|
234
234
|
const requestOpts = { ...opts, pm: opts?.pm ?? abletimeToolUsesPm(name) };
|
|
@@ -244,7 +244,7 @@ async function callAbleTimeTool(name, args = {}, opts) {
|
|
|
244
244
|
return await call();
|
|
245
245
|
}
|
|
246
246
|
if (rawToken && ableTimeUsesRest(rawToken) && isAbleTimeRejectedCredential(message)) {
|
|
247
|
-
const { callAbleTimeRestTool } = await import("./abletime-rest-
|
|
247
|
+
const { callAbleTimeRestTool } = await import("./abletime-rest-EI5ZJ72Z.js");
|
|
248
248
|
return callAbleTimeRestTool(name, args, { ...opts, token: rawToken });
|
|
249
249
|
}
|
|
250
250
|
throw err instanceof Error ? new Error(rewriteAbleTimeError(err.message)) : err;
|
|
@@ -12,13 +12,13 @@ import {
|
|
|
12
12
|
} from "./chunk-5MXLDDYF.js";
|
|
13
13
|
import {
|
|
14
14
|
isOrchestratorThread
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-G45SGI57.js";
|
|
16
16
|
import {
|
|
17
17
|
codexUnattendedGitConfigArgs,
|
|
18
18
|
mergeAgentGitAuthEnv,
|
|
19
19
|
resolveAgentGitAuthEnv,
|
|
20
20
|
resolveCodexGitWritableRoots
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-U7EANR52.js";
|
|
22
22
|
import {
|
|
23
23
|
applyConnectedTeamToCli,
|
|
24
24
|
brightsyMcpServerName,
|
|
@@ -33,7 +33,7 @@ import {
|
|
|
33
33
|
} from "./chunk-2GPQZZLY.js";
|
|
34
34
|
import {
|
|
35
35
|
listAssignedLinearIssues
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-NCFYUUSC.js";
|
|
37
37
|
import {
|
|
38
38
|
githubAgentAuthReady,
|
|
39
39
|
npmGlobalNodeModules,
|
|
@@ -45,7 +45,7 @@ import {
|
|
|
45
45
|
CLAUDE_POSTHOG_CONNECTOR_ALLOWED_TOOLS,
|
|
46
46
|
CLAUDE_PRINT_BG_WAIT_CEILING_MS,
|
|
47
47
|
mcpAllowToolsFromNames
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-EW5D53VB.js";
|
|
49
49
|
import {
|
|
50
50
|
claudeChromeEnabled,
|
|
51
51
|
fromInclusiveInputUsage,
|
|
@@ -56,7 +56,7 @@ import {
|
|
|
56
56
|
requestOccupancy,
|
|
57
57
|
resolveAgentExecutable,
|
|
58
58
|
resolveClaudeExecutable
|
|
59
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-7BAS6DF7.js";
|
|
60
60
|
import {
|
|
61
61
|
isElectronLikeCommand,
|
|
62
62
|
unwrapStrippedElectronLaunch,
|
|
@@ -2966,7 +2966,7 @@ var claudeAdapter = {
|
|
|
2966
2966
|
);
|
|
2967
2967
|
}
|
|
2968
2968
|
const mode = permissionMode(thread);
|
|
2969
|
-
const { isOrchestratorThread: isOrchestratorThread2 } = await import("./global-workspace-
|
|
2969
|
+
const { isOrchestratorThread: isOrchestratorThread2 } = await import("./global-workspace-IOKHZCXD.js");
|
|
2970
2970
|
const isOrchestrator = isOrchestratorThread2(thread);
|
|
2971
2971
|
const rpc = worktreeAgentRpc(isOrchestrator);
|
|
2972
2972
|
const injectedServers = await buildInjectedMcpServers({
|
|
@@ -3193,7 +3193,7 @@ var claudeAdapter = {
|
|
|
3193
3193
|
return { file: claude, args, cwd: thread.worktreePath };
|
|
3194
3194
|
},
|
|
3195
3195
|
async listLinearIssues(_repoPath) {
|
|
3196
|
-
const { listAssignedLinearIssues: listAssignedLinearIssues2 } = await import("./linear-list-
|
|
3196
|
+
const { listAssignedLinearIssues: listAssignedLinearIssues2 } = await import("./linear-list-I6DNJC6V.js");
|
|
3197
3197
|
return listAssignedLinearIssues2();
|
|
3198
3198
|
}
|
|
3199
3199
|
};
|
|
@@ -4667,7 +4667,7 @@ var opencodeAdapter = {
|
|
|
4667
4667
|
};
|
|
4668
4668
|
},
|
|
4669
4669
|
async listLinearIssues(_repoPath) {
|
|
4670
|
-
const { listAssignedLinearIssues: listAssignedLinearIssues2 } = await import("./linear-list-
|
|
4670
|
+
const { listAssignedLinearIssues: listAssignedLinearIssues2 } = await import("./linear-list-I6DNJC6V.js");
|
|
4671
4671
|
return listAssignedLinearIssues2();
|
|
4672
4672
|
}
|
|
4673
4673
|
};
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
} from "./chunk-S5CJUIPY.js";
|
|
7
7
|
import {
|
|
8
8
|
listAssignedLinearIssues
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-ZT5YPYZE.js";
|
|
10
10
|
import {
|
|
11
11
|
looksLikeConversationSummary,
|
|
12
12
|
looksLikeSkillBody,
|
|
@@ -15,13 +15,13 @@ import {
|
|
|
15
15
|
} from "./chunk-OOXRMTU6.js";
|
|
16
16
|
import {
|
|
17
17
|
isOrchestratorThread
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-O7JSWISN.js";
|
|
19
19
|
import {
|
|
20
20
|
codexUnattendedGitConfigArgs,
|
|
21
21
|
mergeAgentGitAuthEnv,
|
|
22
22
|
resolveAgentGitAuthEnv,
|
|
23
23
|
resolveCodexGitWritableRoots
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-P4QRDXRY.js";
|
|
25
25
|
import {
|
|
26
26
|
loadBrightsyConfig
|
|
27
27
|
} from "./chunk-RSA47QYR.js";
|
|
@@ -80,7 +80,7 @@ import {
|
|
|
80
80
|
requestOccupancy,
|
|
81
81
|
resolveAgentExecutable,
|
|
82
82
|
resolveClaudeExecutable
|
|
83
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-EY5BJAPV.js";
|
|
84
84
|
import {
|
|
85
85
|
isElectronLikeCommand,
|
|
86
86
|
unwrapStrippedElectronLaunch
|
|
@@ -2659,7 +2659,7 @@ var claudeAdapter = {
|
|
|
2659
2659
|
);
|
|
2660
2660
|
}
|
|
2661
2661
|
const mode = permissionMode(thread);
|
|
2662
|
-
const { isOrchestratorThread: isOrchestratorThread2 } = await import("./global-workspace-
|
|
2662
|
+
const { isOrchestratorThread: isOrchestratorThread2 } = await import("./global-workspace-JKINHUY3.js");
|
|
2663
2663
|
const isOrchestrator = isOrchestratorThread2(thread);
|
|
2664
2664
|
const rpc = worktreeAgentRpc(isOrchestrator);
|
|
2665
2665
|
const injectedServers = await buildInjectedMcpServers({
|
|
@@ -2886,7 +2886,7 @@ var claudeAdapter = {
|
|
|
2886
2886
|
return { file: claude, args, cwd: thread.worktreePath };
|
|
2887
2887
|
},
|
|
2888
2888
|
async listLinearIssues(_repoPath) {
|
|
2889
|
-
const { listAssignedLinearIssues: listAssignedLinearIssues2 } = await import("./linear-list-
|
|
2889
|
+
const { listAssignedLinearIssues: listAssignedLinearIssues2 } = await import("./linear-list-LDMBSKYI.js");
|
|
2890
2890
|
return listAssignedLinearIssues2();
|
|
2891
2891
|
}
|
|
2892
2892
|
};
|
|
@@ -3977,7 +3977,7 @@ var opencodeAdapter = {
|
|
|
3977
3977
|
};
|
|
3978
3978
|
},
|
|
3979
3979
|
async listLinearIssues(_repoPath) {
|
|
3980
|
-
const { listAssignedLinearIssues: listAssignedLinearIssues2 } = await import("./linear-list-
|
|
3980
|
+
const { listAssignedLinearIssues: listAssignedLinearIssues2 } = await import("./linear-list-LDMBSKYI.js");
|
|
3981
3981
|
return listAssignedLinearIssues2();
|
|
3982
3982
|
}
|
|
3983
3983
|
};
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
parseSessionQuotaResetAt,
|
|
15
15
|
planModeTurnInstruction,
|
|
16
16
|
resolveQuotaFallbackAgent
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-DBRQ5NNB.js";
|
|
18
18
|
import {
|
|
19
19
|
applyWorktreePkgCacheEnv,
|
|
20
20
|
askBlockStillWaiting,
|
|
@@ -53,7 +53,7 @@ import {
|
|
|
53
53
|
worktreeDevProcessKey,
|
|
54
54
|
worktreeRunProcessKey,
|
|
55
55
|
worktreeSetupProcessKey
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-PZ5MVD27.js";
|
|
57
57
|
import {
|
|
58
58
|
applyAgentEvent,
|
|
59
59
|
clipAgentEventForPaint,
|
|
@@ -87,7 +87,7 @@ import {
|
|
|
87
87
|
import {
|
|
88
88
|
formatOptionalServicesDirectiveForTurn,
|
|
89
89
|
formatOptionalServicesReminderForTurn
|
|
90
|
-
} from "./chunk-
|
|
90
|
+
} from "./chunk-NQHTYX35.js";
|
|
91
91
|
import {
|
|
92
92
|
extractPresentedPlan,
|
|
93
93
|
isPresentPlanToolName,
|
|
@@ -118,7 +118,7 @@ import {
|
|
|
118
118
|
stageAbsolutePathsAsAttachments,
|
|
119
119
|
stageBuffersAsAttachments,
|
|
120
120
|
syncWorkspacesFromThreads
|
|
121
|
-
} from "./chunk-
|
|
121
|
+
} from "./chunk-G45SGI57.js";
|
|
122
122
|
import {
|
|
123
123
|
addPrStackLayer,
|
|
124
124
|
allocateTeamSlug,
|
|
@@ -167,7 +167,7 @@ import {
|
|
|
167
167
|
resolveRepoRoot,
|
|
168
168
|
switchWorktreeBranch,
|
|
169
169
|
withRepoGitLock
|
|
170
|
-
} from "./chunk-
|
|
170
|
+
} from "./chunk-U7EANR52.js";
|
|
171
171
|
import {
|
|
172
172
|
issueActivityKind
|
|
173
173
|
} from "./chunk-OYRN356W.js";
|
|
@@ -210,7 +210,7 @@ import {
|
|
|
210
210
|
worktreeNameFromPath,
|
|
211
211
|
worktreeSlugForTicket,
|
|
212
212
|
writeThread
|
|
213
|
-
} from "./chunk-
|
|
213
|
+
} from "./chunk-EW5D53VB.js";
|
|
214
214
|
import {
|
|
215
215
|
HISTORY_CLEANUP_INTERVAL_HOURS_DEFAULT,
|
|
216
216
|
applyTurnUsage,
|
|
@@ -245,7 +245,7 @@ import {
|
|
|
245
245
|
usageOnLimit,
|
|
246
246
|
withTurnScopedCost,
|
|
247
247
|
writeViewerContext
|
|
248
|
-
} from "./chunk-
|
|
248
|
+
} from "./chunk-7BAS6DF7.js";
|
|
249
249
|
import {
|
|
250
250
|
examplePrefixedBranch,
|
|
251
251
|
sanitizeGitBranchPrefix
|
|
@@ -561,9 +561,9 @@ async function spawnAgentTurn(thread, input, onEvent) {
|
|
|
561
561
|
`Cannot spawn ${thread.agent}: thread ${thread.id} has no worktreePath`
|
|
562
562
|
);
|
|
563
563
|
}
|
|
564
|
-
const { isGlobalThread: isGlobalThread2 } = await import("./global-workspace-
|
|
564
|
+
const { isGlobalThread: isGlobalThread2 } = await import("./global-workspace-IOKHZCXD.js");
|
|
565
565
|
if (isGlobalThread2(thread)) {
|
|
566
|
-
const { ensureGlobalCoordinatorCwd: ensureGlobalCoordinatorCwd2 } = await import("./coordinator-prompt-
|
|
566
|
+
const { ensureGlobalCoordinatorCwd: ensureGlobalCoordinatorCwd2 } = await import("./coordinator-prompt-B6RHGEJK.js");
|
|
567
567
|
ensureGlobalCoordinatorCwd2(
|
|
568
568
|
isOrchestratorThread(thread) ? { orchestratorThreadId: thread.id } : void 0
|
|
569
569
|
);
|
|
@@ -2910,7 +2910,7 @@ async function createThread(input, _onSetupLine) {
|
|
|
2910
2910
|
});
|
|
2911
2911
|
await requireAgent(resolved.agent);
|
|
2912
2912
|
if (input.cowboy) {
|
|
2913
|
-
const { cowboyModeEnabled } = await import("./app-settings-
|
|
2913
|
+
const { cowboyModeEnabled } = await import("./app-settings-SHZWNJBV.js");
|
|
2914
2914
|
if (!cowboyModeEnabled()) {
|
|
2915
2915
|
throw new Error(
|
|
2916
2916
|
"Cowboy mode is off. Enable it in Settings \u2192 Advanced."
|
|
@@ -2969,7 +2969,7 @@ async function createThread(input, _onSetupLine) {
|
|
|
2969
2969
|
let sourceIsFork = false;
|
|
2970
2970
|
if (!input.cowboy && sourceType === "branch" && (!sourceRef || sourceRef === "HEAD" || sourceRef === "default")) {
|
|
2971
2971
|
if (isAbleTimeConnected() && getIssueSource() === "abletime") {
|
|
2972
|
-
const { ensureAbleTimeTask, issueAttachmentForAbleTimeTask } = await import("./abletime-
|
|
2972
|
+
const { ensureAbleTimeTask, issueAttachmentForAbleTimeTask } = await import("./abletime-SO2YHMEI.js");
|
|
2973
2973
|
const task = await ensureAbleTimeTask({
|
|
2974
2974
|
title: title?.trim() || "Untitled work",
|
|
2975
2975
|
description: input.prompt?.trim() || void 0
|
|
@@ -3851,7 +3851,7 @@ async function adoptThread(input) {
|
|
|
3851
3851
|
messages: input.messages ?? []
|
|
3852
3852
|
});
|
|
3853
3853
|
writeThread(thread);
|
|
3854
|
-
const { addWorkspace: addWorkspace2 } = await import("./workspaces-
|
|
3854
|
+
const { addWorkspace: addWorkspace2 } = await import("./workspaces-FJL3TL3K.js");
|
|
3855
3855
|
await addWorkspace2(repoPath);
|
|
3856
3856
|
const { ensureWorktreeSideboardIgnored } = await import("./worktree-exclude-P5NJODWP.js");
|
|
3857
3857
|
await ensureWorktreeSideboardIgnored(input.worktreePath);
|
|
@@ -6793,7 +6793,7 @@ function formatScheduledPrompt(name, prompt) {
|
|
|
6793
6793
|
${prompt}`;
|
|
6794
6794
|
}
|
|
6795
6795
|
async function defaultDeps() {
|
|
6796
|
-
const { getOrchestrator: getOrchestrator2, startOrchestration: startOrchestration2 } = await import("./orchestrator-
|
|
6796
|
+
const { getOrchestrator: getOrchestrator2, startOrchestration: startOrchestration2 } = await import("./orchestrator-V35TLMXB.js");
|
|
6797
6797
|
const orch = getOrchestrator2();
|
|
6798
6798
|
return {
|
|
6799
6799
|
findThread: (id) => findThreadByRef(id),
|
|
@@ -7148,7 +7148,7 @@ var Orchestrator = class {
|
|
|
7148
7148
|
orphans: orphans.map((o) => ({ path: o.path, repoPath: o.repoPath }))
|
|
7149
7149
|
});
|
|
7150
7150
|
}
|
|
7151
|
-
const { autoCleanupOrphansEnabled } = await import("./app-settings-
|
|
7151
|
+
const { autoCleanupOrphansEnabled } = await import("./app-settings-SHZWNJBV.js");
|
|
7152
7152
|
if (autoCleanupOrphansEnabled() && shouldRunWorktreeCleanup() && orphans.length > 0) {
|
|
7153
7153
|
await cleanupOrphanWorktrees({ repoPaths });
|
|
7154
7154
|
}
|
|
@@ -7542,7 +7542,7 @@ var Orchestrator = class {
|
|
|
7542
7542
|
}
|
|
7543
7543
|
await setup;
|
|
7544
7544
|
if (skipSetup) return;
|
|
7545
|
-
const { autoRunAfterSetupEnabled } = await import("./app-settings-
|
|
7545
|
+
const { autoRunAfterSetupEnabled } = await import("./app-settings-SHZWNJBV.js");
|
|
7546
7546
|
if (autoRunAfterSetupEnabled()) {
|
|
7547
7547
|
try {
|
|
7548
7548
|
await this.startDev(threadId);
|
|
@@ -7927,7 +7927,7 @@ ${formatEnvReminder(projectNameForRepoPath(thread.repoPath || thread.worktreePat
|
|
|
7927
7927
|
}
|
|
7928
7928
|
const isBrightsy = fresh.agent === "brightsy";
|
|
7929
7929
|
const isOrchestration = isOrchestratorThread(fresh);
|
|
7930
|
-
const { autoRenameBranchEnabled, getGithubGitAuthMode, gitBranchPrefixSetting } = await import("./app-settings-
|
|
7930
|
+
const { autoRenameBranchEnabled, getGithubGitAuthMode, gitBranchPrefixSetting } = await import("./app-settings-SHZWNJBV.js");
|
|
7931
7931
|
const gitAuthMode = getGithubGitAuthMode();
|
|
7932
7932
|
const worktreeDirective = isBrightsy || isOrchestration ? null : formatWorktreeDirective(fresh, {
|
|
7933
7933
|
githubSlug: turnOrigin?.forge === "github" ? turnOrigin.slug : await withTimeout(resolveGithubRepoSlug(fresh.worktreePath), 8e3, "resolveGithubRepoSlug").catch(() => null),
|
|
@@ -9269,7 +9269,7 @@ ${formatEnvReminder(projectNameForRepoPath(thread.repoPath || thread.worktreePat
|
|
|
9269
9269
|
if (Object.keys(patch).length === 0) continue;
|
|
9270
9270
|
updateThread(t.id, patch);
|
|
9271
9271
|
}
|
|
9272
|
-
const { autoArchiveOnMergeEnabled } = await import("./app-settings-
|
|
9272
|
+
const { autoArchiveOnMergeEnabled } = await import("./app-settings-SHZWNJBV.js");
|
|
9273
9273
|
const latest = this.requireThread(thread.id);
|
|
9274
9274
|
if (!shouldAutoArchiveOnPrMerge({
|
|
9275
9275
|
previousPrState: prevState || null,
|
|
@@ -9593,7 +9593,7 @@ ${formatEnvReminder(projectNameForRepoPath(thread.repoPath || thread.worktreePat
|
|
|
9593
9593
|
await runArchiveScript(thread.repoPath, thread.worktreePath);
|
|
9594
9594
|
} catch {
|
|
9595
9595
|
}
|
|
9596
|
-
const { deleteBranchOnPurgeEnabled } = await import("./app-settings-
|
|
9596
|
+
const { deleteBranchOnPurgeEnabled } = await import("./app-settings-SHZWNJBV.js");
|
|
9597
9597
|
const deleteBranch = opts?.deleteBranch ?? deleteBranchOnPurgeEnabled();
|
|
9598
9598
|
await removeWorktree(thread.repoPath, thread.worktreePath, {
|
|
9599
9599
|
deleteBranch: deleteBranch ? thread.branchName : void 0
|
|
@@ -9731,7 +9731,7 @@ async function startOrchestration(opts) {
|
|
|
9731
9731
|
sourceRef: "default",
|
|
9732
9732
|
...createOpts
|
|
9733
9733
|
}).catch(async () => {
|
|
9734
|
-
const { resolveDefaultBranch: resolveDefaultBranch2, resolveRepoRoot: resolveRepoRoot2 } = await import("./worktree-
|
|
9734
|
+
const { resolveDefaultBranch: resolveDefaultBranch2, resolveRepoRoot: resolveRepoRoot2 } = await import("./worktree-QSQJ2POO.js");
|
|
9735
9735
|
const repo = await resolveRepoRoot2(repoPath);
|
|
9736
9736
|
const def = await resolveDefaultBranch2(repo);
|
|
9737
9737
|
return orch.createThread({
|
|
@@ -9741,7 +9741,7 @@ async function startOrchestration(opts) {
|
|
|
9741
9741
|
repoPath: repo
|
|
9742
9742
|
});
|
|
9743
9743
|
});
|
|
9744
|
-
const { updateThread: upd } = await import("./thread-store-
|
|
9744
|
+
const { updateThread: upd } = await import("./thread-store-PCIMS6RA.js");
|
|
9745
9745
|
const updated = upd(thread.id, {
|
|
9746
9746
|
sourceType: "orchestration",
|
|
9747
9747
|
sourceRef: goal
|