@sideboard-ai/core 0.1.327 → 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.
Files changed (69) hide show
  1. package/dist/{abletime-OW7LTFQD.js → abletime-5FBKBO3R.js} +4 -4
  2. package/dist/{abletime-NW4PJGHN.js → abletime-SO2YHMEI.js} +4 -4
  3. package/dist/{abletime-oauth-TPR2QDRI.js → abletime-oauth-EUC5FFMD.js} +5 -5
  4. package/dist/{abletime-oauth-KWQQRHOQ.js → abletime-oauth-I34WZZZL.js} +3 -3
  5. package/dist/{abletime-rest-5DCWN3P4.js → abletime-rest-EI5ZJ72Z.js} +3 -3
  6. package/dist/{abletime-rest-UJ6SXDBN.js → abletime-rest-HEQXSZAQ.js} +3 -3
  7. package/dist/agents/claude-runner.js +1 -1
  8. package/dist/{agents-XWIPONJR.js → agents-JH4WV2ZH.js} +7 -7
  9. package/dist/{agents-IYBY3JT5.js → agents-JXQKHY7Q.js} +7 -7
  10. package/dist/{app-settings-A5D364JD.js → app-settings-JAEV53LB.js} +1 -1
  11. package/dist/{app-settings-SA4HX3ZQ.js → app-settings-SHZWNJBV.js} +1 -1
  12. package/dist/{chunk-TUH4ICHQ.js → chunk-277I5IBI.js} +1 -1
  13. package/dist/{chunk-QMLDR63X.js → chunk-3DJQLQWU.js} +2 -2
  14. package/dist/{chunk-EJRCHCXM.js → chunk-7BAS6DF7.js} +2 -1
  15. package/dist/{chunk-ECY7WL6T.js → chunk-7L36GZA4.js} +2 -2
  16. package/dist/{chunk-SFXGD5KJ.js → chunk-7MPRTC6X.js} +1 -1
  17. package/dist/{chunk-ZPBOWO64.js → chunk-BAIPCN34.js} +2 -2
  18. package/dist/{chunk-SB5ADEZZ.js → chunk-D6V6F74A.js} +5 -5
  19. package/dist/{chunk-MO46K6WK.js → chunk-DBRQ5NNB.js} +8 -8
  20. package/dist/{chunk-NQGLDQYB.js → chunk-DFKLWWLY.js} +7 -7
  21. package/dist/{chunk-YUHZEIVG.js → chunk-E6LONPQH.js} +78 -24
  22. package/dist/{chunk-5Y2C7Q55.js → chunk-EW5D53VB.js} +1 -1
  23. package/dist/{chunk-D446IWPP.js → chunk-EY5BJAPV.js} +2 -1
  24. package/dist/{chunk-XBBZZHJY.js → chunk-F4OUZDIB.js} +5 -5
  25. package/dist/{chunk-Q4UPRQOS.js → chunk-G45SGI57.js} +3 -3
  26. package/dist/{chunk-DEB47BII.js → chunk-HCK3UCBJ.js} +80 -26
  27. package/dist/{chunk-EUIVQAPK.js → chunk-HJIA4X3L.js} +2 -2
  28. package/dist/{chunk-4F7THWIO.js → chunk-JQWCZGSO.js} +2 -2
  29. package/dist/{chunk-IXWPCOLQ.js → chunk-KUD24QYI.js} +37 -7
  30. package/dist/{chunk-4G3W23X3.js → chunk-MXQ66CLO.js} +3 -3
  31. package/dist/{chunk-UMXBH344.js → chunk-NCFYUUSC.js} +1 -1
  32. package/dist/{chunk-ULWPSBAB.js → chunk-NJV5YEKI.js} +13 -11
  33. package/dist/{chunk-2GEUFPQQ.js → chunk-NQHTYX35.js} +1 -1
  34. package/dist/{chunk-RDXODLEN.js → chunk-O7JSWISN.js} +3 -3
  35. package/dist/{chunk-R2C45NHT.js → chunk-P4QRDXRY.js} +2 -2
  36. package/dist/{chunk-RZJ3QJZT.js → chunk-PZ5MVD27.js} +34 -19
  37. package/dist/{chunk-Y6OHM672.js → chunk-QVLDZWHZ.js} +1 -1
  38. package/dist/{chunk-DACWFN4O.js → chunk-SKPX66MO.js} +5 -5
  39. package/dist/{chunk-JKHCADKB.js → chunk-U7EANR52.js} +2 -2
  40. package/dist/{chunk-KLVW3J2B.js → chunk-XOIJJRAQ.js} +2 -2
  41. package/dist/{chunk-CHYUUETG.js → chunk-YMV5O7KY.js} +3 -3
  42. package/dist/{chunk-ATQLP22S.js → chunk-ZT5YPYZE.js} +1 -1
  43. package/dist/{conductor-D62Q2XJC.js → conductor-6DIR7A4N.js} +5 -5
  44. package/dist/{conductor-CP7TW6TN.js → conductor-FA27ZGCV.js} +6 -6
  45. package/dist/{coordinator-prompt-J7O7JB26.js → coordinator-prompt-B6RHGEJK.js} +4 -4
  46. package/dist/{coordinator-prompt-3PJLU3UH.js → coordinator-prompt-KAZXK5FZ.js} +4 -4
  47. package/dist/{global-workspace-Y3UDZYJX.js → global-workspace-IOKHZCXD.js} +4 -4
  48. package/dist/{global-workspace-4CTLU2BV.js → global-workspace-JKINHUY3.js} +4 -4
  49. package/dist/index.cjs +107 -22
  50. package/dist/index.d.cts +30 -18
  51. package/dist/index.d.ts +30 -18
  52. package/dist/index.js +27 -25
  53. package/dist/{linear-CXWGH2TW.js → linear-7HSIGV5S.js} +2 -2
  54. package/dist/{linear-WLDCJ3AF.js → linear-FRJRK6KI.js} +2 -2
  55. package/dist/{linear-list-52LEDEWO.js → linear-list-I6DNJC6V.js} +1 -1
  56. package/dist/{linear-list-FGVN65JU.js → linear-list-LDMBSKYI.js} +1 -1
  57. package/dist/mcp/run-stdio.cjs +89 -21
  58. package/dist/mcp/run-stdio.js +16 -16
  59. package/dist/{optional-cli-INRVBBBG.js → optional-cli-FOSC4NVE.js} +3 -3
  60. package/dist/{optional-cli-FN4MGB6W.js → optional-cli-NSQZ2DYK.js} +4 -4
  61. package/dist/{orchestrator-EN3ZKD73.js → orchestrator-LI6EBD2Y.js} +11 -11
  62. package/dist/{orchestrator-W4TZBBDO.js → orchestrator-V35TLMXB.js} +10 -10
  63. package/dist/{thread-store-K2ZNGUSM.js → thread-store-NVFWKJFH.js} +2 -2
  64. package/dist/{thread-store-4WE24XA2.js → thread-store-PCIMS6RA.js} +2 -2
  65. package/dist/{workspaces-MM7CQYR6.js → workspaces-FJL3TL3K.js} +4 -4
  66. package/dist/{workspaces-WYCVZ6XH.js → workspaces-OLONQF2C.js} +4 -4
  67. package/dist/{worktree-JBNEMJ5Z.js → worktree-QSQJ2POO.js} +3 -3
  68. package/dist/{worktree-NNVRGPP4.js → worktree-TX4WXQZV.js} +3 -3
  69. package/package.json +1 -1
@@ -14,7 +14,7 @@ import {
14
14
  parseSessionQuotaResetAt,
15
15
  planModeTurnInstruction,
16
16
  resolveQuotaFallbackAgent
17
- } from "./chunk-MO46K6WK.js";
17
+ } from "./chunk-DBRQ5NNB.js";
18
18
  import {
19
19
  applyWorktreePkgCacheEnv,
20
20
  askBlockStillWaiting,
@@ -49,10 +49,11 @@ import {
49
49
  startDevServer,
50
50
  threadsSharingWorktree,
51
51
  turnWatchedDetachedJob,
52
+ userRepliedAfterAgent,
52
53
  worktreeDevProcessKey,
53
54
  worktreeRunProcessKey,
54
55
  worktreeSetupProcessKey
55
- } from "./chunk-RZJ3QJZT.js";
56
+ } from "./chunk-PZ5MVD27.js";
56
57
  import {
57
58
  applyAgentEvent,
58
59
  clipAgentEventForPaint,
@@ -86,7 +87,7 @@ import {
86
87
  import {
87
88
  formatOptionalServicesDirectiveForTurn,
88
89
  formatOptionalServicesReminderForTurn
89
- } from "./chunk-2GEUFPQQ.js";
90
+ } from "./chunk-NQHTYX35.js";
90
91
  import {
91
92
  extractPresentedPlan,
92
93
  isPresentPlanToolName,
@@ -117,7 +118,7 @@ import {
117
118
  stageAbsolutePathsAsAttachments,
118
119
  stageBuffersAsAttachments,
119
120
  syncWorkspacesFromThreads
120
- } from "./chunk-Q4UPRQOS.js";
121
+ } from "./chunk-G45SGI57.js";
121
122
  import {
122
123
  addPrStackLayer,
123
124
  allocateTeamSlug,
@@ -166,7 +167,7 @@ import {
166
167
  resolveRepoRoot,
167
168
  switchWorktreeBranch,
168
169
  withRepoGitLock
169
- } from "./chunk-JKHCADKB.js";
170
+ } from "./chunk-U7EANR52.js";
170
171
  import {
171
172
  issueActivityKind
172
173
  } from "./chunk-OYRN356W.js";
@@ -209,7 +210,7 @@ import {
209
210
  worktreeNameFromPath,
210
211
  worktreeSlugForTicket,
211
212
  writeThread
212
- } from "./chunk-5Y2C7Q55.js";
213
+ } from "./chunk-EW5D53VB.js";
213
214
  import {
214
215
  HISTORY_CLEANUP_INTERVAL_HOURS_DEFAULT,
215
216
  applyTurnUsage,
@@ -244,7 +245,7 @@ import {
244
245
  usageOnLimit,
245
246
  withTurnScopedCost,
246
247
  writeViewerContext
247
- } from "./chunk-EJRCHCXM.js";
248
+ } from "./chunk-7BAS6DF7.js";
248
249
  import {
249
250
  examplePrefixedBranch,
250
251
  sanitizeGitBranchPrefix
@@ -560,9 +561,9 @@ async function spawnAgentTurn(thread, input, onEvent) {
560
561
  `Cannot spawn ${thread.agent}: thread ${thread.id} has no worktreePath`
561
562
  );
562
563
  }
563
- const { isGlobalThread: isGlobalThread2 } = await import("./global-workspace-Y3UDZYJX.js");
564
+ const { isGlobalThread: isGlobalThread2 } = await import("./global-workspace-IOKHZCXD.js");
564
565
  if (isGlobalThread2(thread)) {
565
- const { ensureGlobalCoordinatorCwd: ensureGlobalCoordinatorCwd2 } = await import("./coordinator-prompt-J7O7JB26.js");
566
+ const { ensureGlobalCoordinatorCwd: ensureGlobalCoordinatorCwd2 } = await import("./coordinator-prompt-B6RHGEJK.js");
566
567
  ensureGlobalCoordinatorCwd2(
567
568
  isOrchestratorThread(thread) ? { orchestratorThreadId: thread.id } : void 0
568
569
  );
@@ -1887,6 +1888,9 @@ function decisionBlockFromParts(parts, planMode, at = (/* @__PURE__ */ new Date(
1887
1888
  at
1888
1889
  );
1889
1890
  }
1891
+ function attentionOutranksAsk(existing) {
1892
+ return existing?.source === "reported" || existing?.source === "permission";
1893
+ }
1890
1894
  function withStampedQuestions(decision, existing) {
1891
1895
  if (decision.source !== "ask_user" || decision.questions?.length) return decision;
1892
1896
  if (existing?.source !== "ask_user" || !existing.questions?.length) return decision;
@@ -1900,12 +1904,37 @@ function agentBlockAfterTurn(input) {
1900
1904
  if (input.failed) return null;
1901
1905
  const decision = decisionBlockFromParts(input.parts, input.planMode);
1902
1906
  if (decision) {
1907
+ if (decision.source === "ask_user" && attentionOutranksAsk(input.existing)) {
1908
+ return input.existing ?? null;
1909
+ }
1903
1910
  const next = withStampedQuestions(decision, input.existing);
1904
1911
  if (isDismissedAskUserBlock(next, input.dismissedQuestionSignature)) {
1905
1912
  return input.existing?.source === "reported" ? input.existing : null;
1906
1913
  }
1907
1914
  return next;
1908
1915
  }
1916
+ const pending = extractPendingPlanQuestions(input.parts);
1917
+ if (pending && attentionOutranksAsk(input.existing)) {
1918
+ return input.existing ?? null;
1919
+ }
1920
+ if (pending) {
1921
+ const kept = withStampedQuestions(
1922
+ {
1923
+ ...makeAgentBlock(
1924
+ "ask_user",
1925
+ formatAskUserNotifyMessage(pending.questions),
1926
+ input.existing?.source === "ask_user" ? input.existing.at : void 0
1927
+ ),
1928
+ onScreen: true,
1929
+ questionSignature: pending.signature,
1930
+ questions: pending.questions
1931
+ },
1932
+ input.existing
1933
+ );
1934
+ if (!isDismissedAskUserBlock(kept, input.dismissedQuestionSignature)) return kept;
1935
+ } else if (input.existing?.source === "ask_user" && input.existing.onScreen && input.existing.questions?.length && !isDismissedAskUserBlock(input.existing, input.dismissedQuestionSignature)) {
1936
+ return input.existing;
1937
+ }
1909
1938
  if (input.existing && input.existing.source !== "reported" && lastTopLevelTool(input.parts)) {
1910
1939
  return null;
1911
1940
  }
@@ -1934,11 +1963,15 @@ function askBlocksEqual(a, b) {
1934
1963
  if (!a || !b) return false;
1935
1964
  return a.source === b.source && a.reason === b.reason && a.at === b.at && a.onScreen === b.onScreen && a.questionSignature === b.questionSignature;
1936
1965
  }
1937
- function askBlockAfterLiveParts(existing, parts) {
1966
+ function askBlockAfterLiveParts(existing, parts, dismissedQuestionSignature) {
1967
+ if (attentionOutranksAsk(existing)) return existing ?? null;
1968
+ if (isDismissedAskUserBlock(existing, dismissedQuestionSignature)) return null;
1969
+ const dismissed = dismissedQuestionSignature?.trim() ?? "";
1970
+ let pending = extractPendingPlanQuestions(parts);
1971
+ if (dismissed && pending?.signature === dismissed) pending = null;
1938
1972
  const last = lastTopLevelTool(parts);
1939
1973
  if (last?.type === "tool" && isAskUserToolName(last.name)) {
1940
1974
  if (existing?.source === "ask_user" && existing.onScreen) return existing;
1941
- const pending = extractPendingPlanQuestions(parts);
1942
1975
  const questions = pending?.questions ?? existing?.questions;
1943
1976
  if (!questions?.length) {
1944
1977
  return existing?.source === "ask_user" ? { ...existing, onScreen: true } : existing ?? null;
@@ -1951,13 +1984,32 @@ function askBlockAfterLiveParts(existing, parts) {
1951
1984
  questions
1952
1985
  };
1953
1986
  }
1987
+ if (pending) {
1988
+ if (existing?.source === "ask_user" && existing.onScreen && existing.questions?.length) {
1989
+ return existing;
1990
+ }
1991
+ const at = existing?.source === "ask_user" ? existing.at : void 0;
1992
+ return {
1993
+ ...makeAgentBlock("ask_user", formatAskUserNotifyMessage(pending.questions), at),
1994
+ onScreen: true,
1995
+ questionSignature: pending.signature,
1996
+ questions: pending.questions
1997
+ };
1998
+ }
1999
+ if (existing?.source === "ask_user" && existing.onScreen && existing.questions?.length) {
2000
+ return existing;
2001
+ }
1954
2002
  if (last && existing?.source === "ask_user") return null;
1955
2003
  return existing ?? null;
1956
2004
  }
1957
2005
  function syncAskUserBlockFromLive(threadId, parts) {
1958
2006
  const thread = readThread(threadId);
1959
2007
  if (!thread || thread.status === "archived") return;
1960
- const next = askBlockAfterLiveParts(thread.agentBlock, parts);
2008
+ const next = askBlockAfterLiveParts(
2009
+ thread.agentBlock,
2010
+ parts,
2011
+ thread.dismissedQuestionSignature
2012
+ );
1961
2013
  if (askBlocksEqual(thread.agentBlock, next)) return;
1962
2014
  updateThread(threadId, { agentBlock: next });
1963
2015
  }
@@ -2858,7 +2910,7 @@ async function createThread(input, _onSetupLine) {
2858
2910
  });
2859
2911
  await requireAgent(resolved.agent);
2860
2912
  if (input.cowboy) {
2861
- const { cowboyModeEnabled } = await import("./app-settings-SA4HX3ZQ.js");
2913
+ const { cowboyModeEnabled } = await import("./app-settings-SHZWNJBV.js");
2862
2914
  if (!cowboyModeEnabled()) {
2863
2915
  throw new Error(
2864
2916
  "Cowboy mode is off. Enable it in Settings \u2192 Advanced."
@@ -2917,7 +2969,7 @@ async function createThread(input, _onSetupLine) {
2917
2969
  let sourceIsFork = false;
2918
2970
  if (!input.cowboy && sourceType === "branch" && (!sourceRef || sourceRef === "HEAD" || sourceRef === "default")) {
2919
2971
  if (isAbleTimeConnected() && getIssueSource() === "abletime") {
2920
- const { ensureAbleTimeTask, issueAttachmentForAbleTimeTask } = await import("./abletime-NW4PJGHN.js");
2972
+ const { ensureAbleTimeTask, issueAttachmentForAbleTimeTask } = await import("./abletime-SO2YHMEI.js");
2921
2973
  const task = await ensureAbleTimeTask({
2922
2974
  title: title?.trim() || "Untitled work",
2923
2975
  description: input.prompt?.trim() || void 0
@@ -3799,7 +3851,7 @@ async function adoptThread(input) {
3799
3851
  messages: input.messages ?? []
3800
3852
  });
3801
3853
  writeThread(thread);
3802
- const { addWorkspace: addWorkspace2 } = await import("./workspaces-MM7CQYR6.js");
3854
+ const { addWorkspace: addWorkspace2 } = await import("./workspaces-FJL3TL3K.js");
3803
3855
  await addWorkspace2(repoPath);
3804
3856
  const { ensureWorktreeSideboardIgnored } = await import("./worktree-exclude-P5NJODWP.js");
3805
3857
  await ensureWorktreeSideboardIgnored(input.worktreePath);
@@ -6741,7 +6793,7 @@ function formatScheduledPrompt(name, prompt) {
6741
6793
  ${prompt}`;
6742
6794
  }
6743
6795
  async function defaultDeps() {
6744
- const { getOrchestrator: getOrchestrator2, startOrchestration: startOrchestration2 } = await import("./orchestrator-W4TZBBDO.js");
6796
+ const { getOrchestrator: getOrchestrator2, startOrchestration: startOrchestration2 } = await import("./orchestrator-V35TLMXB.js");
6745
6797
  const orch = getOrchestrator2();
6746
6798
  return {
6747
6799
  findThread: (id) => findThreadByRef(id),
@@ -7096,7 +7148,7 @@ var Orchestrator = class {
7096
7148
  orphans: orphans.map((o) => ({ path: o.path, repoPath: o.repoPath }))
7097
7149
  });
7098
7150
  }
7099
- const { autoCleanupOrphansEnabled } = await import("./app-settings-SA4HX3ZQ.js");
7151
+ const { autoCleanupOrphansEnabled } = await import("./app-settings-SHZWNJBV.js");
7100
7152
  if (autoCleanupOrphansEnabled() && shouldRunWorktreeCleanup() && orphans.length > 0) {
7101
7153
  await cleanupOrphanWorktrees({ repoPaths });
7102
7154
  }
@@ -7490,7 +7542,7 @@ var Orchestrator = class {
7490
7542
  }
7491
7543
  await setup;
7492
7544
  if (skipSetup) return;
7493
- const { autoRunAfterSetupEnabled } = await import("./app-settings-SA4HX3ZQ.js");
7545
+ const { autoRunAfterSetupEnabled } = await import("./app-settings-SHZWNJBV.js");
7494
7546
  if (autoRunAfterSetupEnabled()) {
7495
7547
  try {
7496
7548
  await this.startDev(threadId);
@@ -7875,7 +7927,7 @@ ${formatEnvReminder(projectNameForRepoPath(thread.repoPath || thread.worktreePat
7875
7927
  }
7876
7928
  const isBrightsy = fresh.agent === "brightsy";
7877
7929
  const isOrchestration = isOrchestratorThread(fresh);
7878
- const { autoRenameBranchEnabled, getGithubGitAuthMode, gitBranchPrefixSetting } = await import("./app-settings-SA4HX3ZQ.js");
7930
+ const { autoRenameBranchEnabled, getGithubGitAuthMode, gitBranchPrefixSetting } = await import("./app-settings-SHZWNJBV.js");
7879
7931
  const gitAuthMode = getGithubGitAuthMode();
7880
7932
  const worktreeDirective = isBrightsy || isOrchestration ? null : formatWorktreeDirective(fresh, {
7881
7933
  githubSlug: turnOrigin?.forge === "github" ? turnOrigin.slug : await withTimeout(resolveGithubRepoSlug(fresh.worktreePath), 8e3, "resolveGithubRepoSlug").catch(() => null),
@@ -8961,7 +9013,9 @@ ${formatEnvReminder(projectNameForRepoPath(thread.repoPath || thread.worktreePat
8961
9013
  const taskState = deriveTaskState({
8962
9014
  status: thread.status,
8963
9015
  stillRunning,
8964
- lastAgentParts: lastAgent?.parts
9016
+ lastAgentParts: lastAgent?.parts,
9017
+ dismissedQuestionSignature: thread.dismissedQuestionSignature,
9018
+ userAnswered: userRepliedAfterAgent(thread.messages, lastAgent)
8965
9019
  });
8966
9020
  const block = thread.agentBlock?.reason?.trim() ? thread.agentBlock : null;
8967
9021
  return {
@@ -9215,7 +9269,7 @@ ${formatEnvReminder(projectNameForRepoPath(thread.repoPath || thread.worktreePat
9215
9269
  if (Object.keys(patch).length === 0) continue;
9216
9270
  updateThread(t.id, patch);
9217
9271
  }
9218
- const { autoArchiveOnMergeEnabled } = await import("./app-settings-SA4HX3ZQ.js");
9272
+ const { autoArchiveOnMergeEnabled } = await import("./app-settings-SHZWNJBV.js");
9219
9273
  const latest = this.requireThread(thread.id);
9220
9274
  if (!shouldAutoArchiveOnPrMerge({
9221
9275
  previousPrState: prevState || null,
@@ -9539,7 +9593,7 @@ ${formatEnvReminder(projectNameForRepoPath(thread.repoPath || thread.worktreePat
9539
9593
  await runArchiveScript(thread.repoPath, thread.worktreePath);
9540
9594
  } catch {
9541
9595
  }
9542
- const { deleteBranchOnPurgeEnabled } = await import("./app-settings-SA4HX3ZQ.js");
9596
+ const { deleteBranchOnPurgeEnabled } = await import("./app-settings-SHZWNJBV.js");
9543
9597
  const deleteBranch = opts?.deleteBranch ?? deleteBranchOnPurgeEnabled();
9544
9598
  await removeWorktree(thread.repoPath, thread.worktreePath, {
9545
9599
  deleteBranch: deleteBranch ? thread.branchName : void 0
@@ -9677,7 +9731,7 @@ async function startOrchestration(opts) {
9677
9731
  sourceRef: "default",
9678
9732
  ...createOpts
9679
9733
  }).catch(async () => {
9680
- const { resolveDefaultBranch: resolveDefaultBranch2, resolveRepoRoot: resolveRepoRoot2 } = await import("./worktree-JBNEMJ5Z.js");
9734
+ const { resolveDefaultBranch: resolveDefaultBranch2, resolveRepoRoot: resolveRepoRoot2 } = await import("./worktree-QSQJ2POO.js");
9681
9735
  const repo = await resolveRepoRoot2(repoPath);
9682
9736
  const def = await resolveDefaultBranch2(repo);
9683
9737
  return orch.createThread({
@@ -9687,7 +9741,7 @@ async function startOrchestration(opts) {
9687
9741
  repoPath: repo
9688
9742
  });
9689
9743
  });
9690
- const { updateThread: upd } = await import("./thread-store-4WE24XA2.js");
9744
+ const { updateThread: upd } = await import("./thread-store-PCIMS6RA.js");
9691
9745
  const updated = upd(thread.id, {
9692
9746
  sourceType: "orchestration",
9693
9747
  sourceRef: goal
@@ -9,7 +9,7 @@ import {
9
9
  isOrchestratorCapableAgent,
10
10
  normalizeThinkingEffort,
11
11
  updateAdvancedSettings
12
- } from "./chunk-EJRCHCXM.js";
12
+ } from "./chunk-7BAS6DF7.js";
13
13
  import {
14
14
  writePrivateFile
15
15
  } from "./chunk-NSTQ6QKD.js";
@@ -268,7 +268,7 @@ function formatViewerContextReminder() {
268
268
  var REMOTE_RELAY_PATH = "/remote";
269
269
  var REMOTE_PING_INTERVAL_MS = 2e4;
270
270
  var REMOTE_PONG_TIMEOUT_MS = 15e3;
271
- var BAKED_REMOTE_RELAY_URL = `wss://relay.sideboard.cloud${REMOTE_RELAY_PATH}`;
271
+ var BAKED_REMOTE_RELAY_URL = `wss://relay.sideboard.build${REMOTE_RELAY_PATH}`;
272
272
  function normalizeRemoteRelayUrl(raw) {
273
273
  let text = raw.trim();
274
274
  if (!text) return null;
@@ -288,6 +288,7 @@ function normalizeRemoteRelayUrl(raw) {
288
288
  url.pathname = REMOTE_RELAY_PATH;
289
289
  url.search = "";
290
290
  url.hash = "";
291
+ if (url.hostname === "relay.sideboard.cloud") url.hostname = "relay.sideboard.build";
291
292
  return url.toString();
292
293
  }
293
294
  function remoteRelayUrl(configured) {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  DEFAULT_ABLETIME_HOST,
3
3
  normalizeAbleTimeHost
4
- } from "./chunk-DACWFN4O.js";
4
+ } from "./chunk-SKPX66MO.js";
5
5
  import {
6
6
  httpFetch
7
7
  } from "./chunk-JAT3JFOS.js";
@@ -10,7 +10,7 @@ import {
10
10
  getAbleTimeHost,
11
11
  loadAppSettings,
12
12
  saveAbleTimeConnection
13
- } from "./chunk-D446IWPP.js";
13
+ } from "./chunk-EY5BJAPV.js";
14
14
 
15
15
  // src/integrations/abletime-oauth.ts
16
16
  import { createHash, randomBytes } from "crypto";
@@ -18,7 +18,7 @@ import { createServer } from "http";
18
18
  var ABLETIME_OAUTH_CALLBACK_PATH = "/oauth/abletime/callback";
19
19
  var ABLETIME_OAUTH_PORT = 19849;
20
20
  var ABLETIME_OAUTH_LOCAL_CALLBACK = `http://127.0.0.1:${ABLETIME_OAUTH_PORT}/callback`;
21
- var ABLETIME_OAUTH_REDIRECT = `https://www.sideboard.cloud${ABLETIME_OAUTH_CALLBACK_PATH}`;
21
+ var ABLETIME_OAUTH_REDIRECT = `https://www.sideboard.build${ABLETIME_OAUTH_CALLBACK_PATH}`;
22
22
  function ableTimeOAuthRedirectUri() {
23
23
  return process.env.SIDEBOARD_ABLETIME_OAUTH_REDIRECT?.trim() || ABLETIME_OAUTH_REDIRECT;
24
24
  }
@@ -60,7 +60,7 @@ h1{font-size:1.25rem}p{line-height:1.5;color:#444}a{color:#0f7ed4}</style>
60
60
  <p><a href="${safe}">Open Sideboard</a> if it does not appear.</p>
61
61
  </body></html>`;
62
62
  }
63
- var BAKED_ABLETIME_OAUTH_CLIENT_ID = "https://www.sideboard.cloud/oauth/abletime-client.json";
63
+ var BAKED_ABLETIME_OAUTH_CLIENT_ID = "https://www.sideboard.build/oauth/abletime-client.json";
64
64
  var ABLETIME_OAUTH_RESOURCE = `${DEFAULT_ABLETIME_HOST}/api/public/v2/mcp`;
65
65
  var REFRESH_SKEW_MS = 5 * 6e4;
66
66
  function hasBakedAbleTimeOAuth() {
@@ -280,7 +280,7 @@ async function startAbleTimeOAuth(opts) {
280
280
  persistAbleTimeTokens(data, { host });
281
281
  const token = data.access_token.trim();
282
282
  try {
283
- const { getAbleTimeOrientation } = await import("./abletime-OW7LTFQD.js");
283
+ const { getAbleTimeOrientation } = await import("./abletime-5FBKBO3R.js");
284
284
  const orientation = await getAbleTimeOrientation({ token, host });
285
285
  return saveAbleTimeConnection({
286
286
  accessToken: token,
@@ -7,7 +7,7 @@ import {
7
7
  resolveGithubRepoSlug,
8
8
  resolveOriginRemote,
9
9
  resolveRepoRoot
10
- } from "./chunk-JKHCADKB.js";
10
+ } from "./chunk-U7EANR52.js";
11
11
  import {
12
12
  ATTACHMENTS_DIR,
13
13
  attachmentsGitignoreBody
@@ -20,7 +20,7 @@ import {
20
20
  teamSlugFromName,
21
21
  updateThread,
22
22
  writeThread
23
- } from "./chunk-5Y2C7Q55.js";
23
+ } from "./chunk-EW5D53VB.js";
24
24
  import {
25
25
  assertOrchestratorCapableAgent,
26
26
  formatAccountProfilePlaybookLine,
@@ -33,7 +33,7 @@ import {
33
33
  resolveThreadDefaults,
34
34
  resolveViewerProfile,
35
35
  resolveViewerProfileForRepo
36
- } from "./chunk-EJRCHCXM.js";
36
+ } from "./chunk-7BAS6DF7.js";
37
37
  import {
38
38
  appDataDir,
39
39
  globalAgentCwd,