@sideboard-ai/core 0.1.246 → 0.1.248

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 (48) hide show
  1. package/dist/{abletime-OI6FNSXX.js → abletime-GAPUN2LL.js} +4 -4
  2. package/dist/{abletime-CWIJ7INC.js → abletime-HTRIHTL5.js} +4 -4
  3. package/dist/{abletime-oauth-CHVTUZBR.js → abletime-oauth-G6ZPGVAE.js} +3 -3
  4. package/dist/{abletime-oauth-PUIPZTA4.js → abletime-oauth-ME7ZY2RS.js} +3 -3
  5. package/dist/{abletime-rest-32NIVXAY.js → abletime-rest-73EKIAZU.js} +3 -3
  6. package/dist/{abletime-rest-APJUKFKL.js → abletime-rest-M2D2NELV.js} +3 -3
  7. package/dist/{agents-G7F3BJNB.js → agents-3PQ2BWGB.js} +5 -5
  8. package/dist/{agents-47WI5IV2.js → agents-7SCJTTZN.js} +5 -5
  9. package/dist/{app-settings-VOPXJMGV.js → app-settings-2BHGANQH.js} +7 -1
  10. package/dist/{app-settings-652J57CX.js → app-settings-NKXH4PKM.js} +7 -1
  11. package/dist/{chunk-576S3HJ7.js → chunk-64NUGRZ3.js} +4 -4
  12. package/dist/{chunk-IMO7AZI4.js → chunk-6HIAYIXT.js} +2 -2
  13. package/dist/{chunk-WURF67ID.js → chunk-BEQE7VOE.js} +5 -5
  14. package/dist/{chunk-6I5YQTNK.js → chunk-CXTIOJRX.js} +12 -0
  15. package/dist/{chunk-RLNEKXXT.js → chunk-D3DYMGZS.js} +4 -4
  16. package/dist/{chunk-TLPJ44Y7.js → chunk-ERQYYL4I.js} +74 -23
  17. package/dist/{chunk-C64YQAA6.js → chunk-GFGSC4Z7.js} +3 -3
  18. package/dist/{chunk-43F44EKX.js → chunk-GVAR6R6R.js} +2 -2
  19. package/dist/{chunk-QFRX5S2E.js → chunk-KFXP4KSP.js} +143 -24
  20. package/dist/{chunk-G45QP2ZD.js → chunk-LPS6D346.js} +3 -3
  21. package/dist/{chunk-7HOKP4GR.js → chunk-PELMZRDB.js} +12 -0
  22. package/dist/{chunk-PPJ5JTWA.js → chunk-QVQPIFBV.js} +28 -2
  23. package/dist/{chunk-QNJXJIWJ.js → chunk-RF46WMSI.js} +5 -5
  24. package/dist/{chunk-GFRC6JQN.js → chunk-U2ZZMGPV.js} +4 -4
  25. package/dist/{chunk-HRWCW6LC.js → chunk-UVWIYSAA.js} +4 -4
  26. package/dist/{chunk-E6C5NR46.js → chunk-W4F7JKXF.js} +20 -6
  27. package/dist/{chunk-YLGBQVRK.js → chunk-XEBQRCDW.js} +28 -2
  28. package/dist/{chunk-5ZFULOTC.js → chunk-XM4UIFQU.js} +20 -6
  29. package/dist/{chunk-BL2UGKWU.js → chunk-Z7QWXE4W.js} +3 -3
  30. package/dist/{coordinator-prompt-ZBYRREHD.js → coordinator-prompt-BFO2TAVR.js} +4 -4
  31. package/dist/{coordinator-prompt-WQIICPT6.js → coordinator-prompt-IG676OSP.js} +4 -4
  32. package/dist/{global-workspace-3SQU4GL4.js → global-workspace-J6H7X5SM.js} +4 -4
  33. package/dist/{global-workspace-2N6KISDO.js → global-workspace-RLCICVQE.js} +4 -4
  34. package/dist/index.cjs +193 -14
  35. package/dist/index.d.cts +66 -2
  36. package/dist/index.d.ts +66 -2
  37. package/dist/index.js +27 -16
  38. package/dist/mcp/run-stdio.cjs +117 -14
  39. package/dist/mcp/run-stdio.js +17 -15
  40. package/dist/{orchestrator-DPMS5KMY.js → orchestrator-2NZUV4LI.js} +6 -6
  41. package/dist/{orchestrator-2QGJ7CW2.js → orchestrator-JCETTHVV.js} +6 -6
  42. package/dist/{thread-store-JQB7KZJR.js → thread-store-BEBZMOS7.js} +1 -1
  43. package/dist/{thread-store-SCV2IZYS.js → thread-store-S6PJADDM.js} +1 -1
  44. package/dist/{workspaces-QLKWW3O2.js → workspaces-NJF3GG5F.js} +4 -4
  45. package/dist/{workspaces-CFI7XVAE.js → workspaces-OLBW42V3.js} +4 -4
  46. package/dist/{worktree-PK3QETXO.js → worktree-2FYRYJTB.js} +3 -3
  47. package/dist/{worktree-4UAOZUJ4.js → worktree-UKLK7VHH.js} +3 -3
  48. package/package.json +1 -1
@@ -17,11 +17,11 @@ import {
17
17
  toAbleTimeIssueInfo,
18
18
  updateAbleTimeTask,
19
19
  verifyAbleTimeConnection
20
- } from "./chunk-BL2UGKWU.js";
21
- import "./chunk-IMO7AZI4.js";
22
- import "./chunk-WURF67ID.js";
20
+ } from "./chunk-Z7QWXE4W.js";
21
+ import "./chunk-6HIAYIXT.js";
22
+ import "./chunk-BEQE7VOE.js";
23
23
  import "./chunk-VKQGAWHY.js";
24
- import "./chunk-YLGBQVRK.js";
24
+ import "./chunk-XEBQRCDW.js";
25
25
  import "./chunk-NSTQ6QKD.js";
26
26
  import "./chunk-KGZBYWZ3.js";
27
27
  import "./chunk-KK63BFYN.js";
@@ -15,11 +15,11 @@ import {
15
15
  toAbleTimeIssueInfo,
16
16
  updateAbleTimeTask,
17
17
  verifyAbleTimeConnection
18
- } from "./chunk-G45QP2ZD.js";
19
- import "./chunk-43F44EKX.js";
20
- import "./chunk-QNJXJIWJ.js";
18
+ } from "./chunk-LPS6D346.js";
19
+ import "./chunk-GVAR6R6R.js";
20
+ import "./chunk-RF46WMSI.js";
21
21
  import "./chunk-N7WZ6NIN.js";
22
- import "./chunk-PPJ5JTWA.js";
22
+ import "./chunk-QVQPIFBV.js";
23
23
  import "./chunk-WDRMZKVB.js";
24
24
  import "./chunk-JT7R45JB.js";
25
25
  import "./chunk-77WWLBCI.js";
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  DEFAULT_ABLETIME_HOST,
5
5
  normalizeAbleTimeHost
6
- } from "./chunk-WURF67ID.js";
6
+ } from "./chunk-BEQE7VOE.js";
7
7
  import {
8
8
  httpFetch
9
9
  } from "./chunk-VKQGAWHY.js";
@@ -12,7 +12,7 @@ import {
12
12
  getAbleTimeHost,
13
13
  loadAppSettings,
14
14
  saveAbleTimeConnection
15
- } from "./chunk-YLGBQVRK.js";
15
+ } from "./chunk-XEBQRCDW.js";
16
16
  import "./chunk-NSTQ6QKD.js";
17
17
  import "./chunk-KGZBYWZ3.js";
18
18
  import "./chunk-KK63BFYN.js";
@@ -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-OI6FNSXX.js");
290
+ const { getAbleTimeOrientation } = await import("./abletime-GAPUN2LL.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-C64YQAA6.js";
24
- import "./chunk-QNJXJIWJ.js";
23
+ } from "./chunk-GFGSC4Z7.js";
24
+ import "./chunk-RF46WMSI.js";
25
25
  import "./chunk-N7WZ6NIN.js";
26
- import "./chunk-PPJ5JTWA.js";
26
+ import "./chunk-QVQPIFBV.js";
27
27
  import "./chunk-WDRMZKVB.js";
28
28
  import "./chunk-JT7R45JB.js";
29
29
  import "./chunk-77WWLBCI.js";
@@ -5,10 +5,10 @@ import {
5
5
  callAbleTimeRestTool,
6
6
  looksLikeAbleTimeUlid,
7
7
  textFromAbleTimeDoc
8
- } from "./chunk-43F44EKX.js";
9
- import "./chunk-QNJXJIWJ.js";
8
+ } from "./chunk-GVAR6R6R.js";
9
+ import "./chunk-RF46WMSI.js";
10
10
  import "./chunk-N7WZ6NIN.js";
11
- import "./chunk-PPJ5JTWA.js";
11
+ import "./chunk-QVQPIFBV.js";
12
12
  import "./chunk-WDRMZKVB.js";
13
13
  import "./chunk-JT7R45JB.js";
14
14
  import "./chunk-77WWLBCI.js";
@@ -7,10 +7,10 @@ import {
7
7
  callAbleTimeRestTool,
8
8
  looksLikeAbleTimeUlid,
9
9
  textFromAbleTimeDoc
10
- } from "./chunk-IMO7AZI4.js";
11
- import "./chunk-WURF67ID.js";
10
+ } from "./chunk-6HIAYIXT.js";
11
+ import "./chunk-BEQE7VOE.js";
12
12
  import "./chunk-VKQGAWHY.js";
13
- import "./chunk-YLGBQVRK.js";
13
+ import "./chunk-XEBQRCDW.js";
14
14
  import "./chunk-NSTQ6QKD.js";
15
15
  import "./chunk-KGZBYWZ3.js";
16
16
  import "./chunk-KK63BFYN.js";
@@ -55,14 +55,14 @@ import {
55
55
  resolveQuotaFallbackAgent,
56
56
  turnCostUsdFromCursorUsage,
57
57
  whichOnPath
58
- } from "./chunk-HRWCW6LC.js";
59
- import "./chunk-576S3HJ7.js";
58
+ } from "./chunk-UVWIYSAA.js";
59
+ import "./chunk-64NUGRZ3.js";
60
60
  import "./chunk-J5GON4SU.js";
61
61
  import "./chunk-P2BSMNHB.js";
62
62
  import "./chunk-VKQGAWHY.js";
63
- import "./chunk-5ZFULOTC.js";
63
+ import "./chunk-XM4UIFQU.js";
64
64
  import "./chunk-D6JWYJ4P.js";
65
- import "./chunk-7HOKP4GR.js";
65
+ import "./chunk-PELMZRDB.js";
66
66
  import "./chunk-N6XI5KXL.js";
67
67
  import "./chunk-DD67JWTN.js";
68
68
  import {
@@ -81,7 +81,7 @@ import {
81
81
  assertOrchestratorCapableAgent,
82
82
  coerceOrchestratorAgent,
83
83
  isOrchestratorCapableAgent
84
- } from "./chunk-YLGBQVRK.js";
84
+ } from "./chunk-XEBQRCDW.js";
85
85
  import "./chunk-NSTQ6QKD.js";
86
86
  import "./chunk-KGZBYWZ3.js";
87
87
  import "./chunk-KK63BFYN.js";
@@ -46,9 +46,9 @@ import {
46
46
  resolveLoginCommand,
47
47
  resolveQuotaFallbackAgent,
48
48
  whichOnPath
49
- } from "./chunk-RLNEKXXT.js";
50
- import "./chunk-GFRC6JQN.js";
51
- import "./chunk-E6C5NR46.js";
49
+ } from "./chunk-D3DYMGZS.js";
50
+ import "./chunk-U2ZZMGPV.js";
51
+ import "./chunk-W4F7JKXF.js";
52
52
  import "./chunk-6K64FJDD.js";
53
53
  import "./chunk-2P4XKWV2.js";
54
54
  import "./chunk-CJKL7A4G.js";
@@ -68,10 +68,10 @@ import {
68
68
  assertOrchestratorCapableAgent,
69
69
  coerceOrchestratorAgent,
70
70
  isOrchestratorCapableAgent
71
- } from "./chunk-PPJ5JTWA.js";
71
+ } from "./chunk-QVQPIFBV.js";
72
72
  import "./chunk-WDRMZKVB.js";
73
73
  import "./chunk-JT7R45JB.js";
74
- import "./chunk-6I5YQTNK.js";
74
+ import "./chunk-CXTIOJRX.js";
75
75
  import "./chunk-224IXQOM.js";
76
76
  import "./chunk-77WWLBCI.js";
77
77
  import "./chunk-A4JGXX2F.js";
@@ -5,6 +5,7 @@ import {
5
5
  HARNESS_ENV_KEYS,
6
6
  ISSUE_SOURCE_LABELS,
7
7
  PROFILE_NOTES_MAX,
8
+ REVIEW_LABEL_MAX,
8
9
  USAGE_ON_LIMIT_VALUES,
9
10
  agentDoneSound,
10
11
  appSettingsPath,
@@ -61,6 +62,7 @@ import {
61
62
  issueSourceLabel,
62
63
  loadAppSettings,
63
64
  maxConcurrentAgents,
65
+ normalizeReviewLabel,
64
66
  orchestrationQuotaFallbackAgent,
65
67
  orchestrationQuotaOnLimit,
66
68
  readViewerContext,
@@ -72,6 +74,7 @@ import {
72
74
  resolveNewOrchestratorOptions,
73
75
  resolveNewThreadOptions,
74
76
  resolveOrchestratorDefaults,
77
+ resolveProjectReviewLabel,
75
78
  resolveThreadDefaults,
76
79
  resolveUsageOnLimit,
77
80
  resolveViewerProfile,
@@ -95,7 +98,7 @@ import {
95
98
  updateProjectProfileSettings,
96
99
  usageOnLimit,
97
100
  writeViewerContext
98
- } from "./chunk-PPJ5JTWA.js";
101
+ } from "./chunk-QVQPIFBV.js";
99
102
  import "./chunk-WDRMZKVB.js";
100
103
  import "./chunk-JT7R45JB.js";
101
104
  import "./chunk-77WWLBCI.js";
@@ -108,6 +111,7 @@ export {
108
111
  HARNESS_ENV_KEYS,
109
112
  ISSUE_SOURCE_LABELS,
110
113
  PROFILE_NOTES_MAX,
114
+ REVIEW_LABEL_MAX,
111
115
  USAGE_ON_LIMIT_VALUES,
112
116
  agentDoneSound,
113
117
  appSettingsPath,
@@ -164,6 +168,7 @@ export {
164
168
  issueSourceLabel,
165
169
  loadAppSettings,
166
170
  maxConcurrentAgents,
171
+ normalizeReviewLabel,
167
172
  orchestrationQuotaFallbackAgent,
168
173
  orchestrationQuotaOnLimit,
169
174
  readViewerContext,
@@ -175,6 +180,7 @@ export {
175
180
  resolveNewOrchestratorOptions,
176
181
  resolveNewThreadOptions,
177
182
  resolveOrchestratorDefaults,
183
+ resolveProjectReviewLabel,
178
184
  resolveThreadDefaults,
179
185
  resolveUsageOnLimit,
180
186
  resolveViewerProfile,
@@ -7,6 +7,7 @@ import {
7
7
  HARNESS_ENV_KEYS,
8
8
  ISSUE_SOURCE_LABELS,
9
9
  PROFILE_NOTES_MAX,
10
+ REVIEW_LABEL_MAX,
10
11
  USAGE_ON_LIMIT_VALUES,
11
12
  agentDoneSound,
12
13
  appSettingsPath,
@@ -63,6 +64,7 @@ import {
63
64
  issueSourceLabel,
64
65
  loadAppSettings,
65
66
  maxConcurrentAgents,
67
+ normalizeReviewLabel,
66
68
  orchestrationQuotaFallbackAgent,
67
69
  orchestrationQuotaOnLimit,
68
70
  readViewerContext,
@@ -74,6 +76,7 @@ import {
74
76
  resolveNewOrchestratorOptions,
75
77
  resolveNewThreadOptions,
76
78
  resolveOrchestratorDefaults,
79
+ resolveProjectReviewLabel,
77
80
  resolveThreadDefaults,
78
81
  resolveUsageOnLimit,
79
82
  resolveViewerProfile,
@@ -97,7 +100,7 @@ import {
97
100
  updateProjectProfileSettings,
98
101
  usageOnLimit,
99
102
  writeViewerContext
100
- } from "./chunk-YLGBQVRK.js";
103
+ } from "./chunk-XEBQRCDW.js";
101
104
  import "./chunk-NSTQ6QKD.js";
102
105
  import "./chunk-KGZBYWZ3.js";
103
106
  import "./chunk-KK63BFYN.js";
@@ -110,6 +113,7 @@ export {
110
113
  HARNESS_ENV_KEYS,
111
114
  ISSUE_SOURCE_LABELS,
112
115
  PROFILE_NOTES_MAX,
116
+ REVIEW_LABEL_MAX,
113
117
  USAGE_ON_LIMIT_VALUES,
114
118
  agentDoneSound,
115
119
  appSettingsPath,
@@ -166,6 +170,7 @@ export {
166
170
  issueSourceLabel,
167
171
  loadAppSettings,
168
172
  maxConcurrentAgents,
173
+ normalizeReviewLabel,
169
174
  orchestrationQuotaFallbackAgent,
170
175
  orchestrationQuotaOnLimit,
171
176
  readViewerContext,
@@ -177,6 +182,7 @@ export {
177
182
  resolveNewOrchestratorOptions,
178
183
  resolveNewThreadOptions,
179
184
  resolveOrchestratorDefaults,
185
+ resolveProjectReviewLabel,
180
186
  resolveThreadDefaults,
181
187
  resolveUsageOnLimit,
182
188
  resolveViewerProfile,
@@ -8,7 +8,7 @@ import {
8
8
  resolveRepoRoot,
9
9
  takenSlugsFromThread,
10
10
  teamSlugFromName
11
- } from "./chunk-5ZFULOTC.js";
11
+ } from "./chunk-XM4UIFQU.js";
12
12
  import {
13
13
  ATTACHMENTS_DIR,
14
14
  attachmentsGitignoreBody
@@ -18,7 +18,7 @@ import {
18
18
  listThreads,
19
19
  updateThread,
20
20
  writeThread
21
- } from "./chunk-7HOKP4GR.js";
21
+ } from "./chunk-PELMZRDB.js";
22
22
  import {
23
23
  assertOrchestratorCapableAgent,
24
24
  formatAccountProfilePlaybookLine,
@@ -31,7 +31,7 @@ import {
31
31
  resolveThreadDefaults,
32
32
  resolveViewerProfile,
33
33
  resolveViewerProfileForRepo
34
- } from "./chunk-YLGBQVRK.js";
34
+ } from "./chunk-XEBQRCDW.js";
35
35
  import {
36
36
  appDataDir,
37
37
  globalAgentCwd,
@@ -338,7 +338,7 @@ var COORDINATOR_TOOL_PLAYBOOK = [
338
338
  "Discover:",
339
339
  "- list_workspaces \u2014 registered repos (path + github slug + project context when set). Use account / project context to pick the right repo for tickets or reviews.",
340
340
  "- list_board \u2014 Home Kanban of worktrees (New / Draft / Review / Merged; one card per checkout). Path to merge: no PR \u2192 draft PR \u2192 open PR \u2192 merged. Archive removes the card to Settings \u2192 History. Queued/running are activity on the card, not columns. Orchestration chats are not on the board. Filters: query, repoPath, kind, column, limit.",
341
- '- list_branches / list_prs / list_issues \u2014 pass repoPath from list_workspaces. Review is PRs (the surface for assigned ticket work), not the tickets: "Get me N tickets to review" \u2192 list_prs(queue=review, limit=N) then create_thread sourceType=pr. That is open non-draft PRs labeled eng-review with no individual user reviewer yet. A team request (engineering-team) is not a claim \u2014 the viewer is on that team and can pick it up; claimed means an individual account is the reviewer. Bots ignored. Use Settings \u2192 Agents / Projects context (roles, teams, labels \u2014 freeform text; project adds to account) to prefer the right queues. queue=mine is review-requested:@me; queue=approved|changes uses those labels. Also: state, label, reviewer=me|unassigned|login, query, limit default 40 max 250; raise limit or tighten when truncated. list_issues (query, assignee=me|unassigned|all|user, limit default 40 max 250) lists Linear, AbleTime, or GitHub tickets \u2014 do not use it for that review-inbox ask. When they ask for tickets to work on, follow their context (assignee=me or unassigned as it says).',
341
+ `- list_branches / list_prs / list_issues \u2014 pass repoPath from list_workspaces. Review is PRs (the surface for assigned ticket work), not the tickets: "Get me N tickets to review" \u2192 list_prs(queue=review, limit=N) then create_thread sourceType=pr. That is open non-draft PRs labeled with this project's ready-for-review GitHub label (Settings \u2192 Projects; default eng-review) with no individual user reviewer yet. A team request (engineering-team) is not a claim \u2014 the viewer is on that team and can pick it up; claimed means an individual account is the reviewer. Bots ignored. Use Settings \u2192 Agents / Projects context (roles, teams, labels \u2014 freeform text; project adds to account) to prefer the right queues. queue=mine is review-requested:@me; queue=approved|changes uses those labels. Also: state, label, reviewer=me|unassigned|login, query, limit default 40 max 250; raise limit or tighten when truncated. list_issues (query, assignee=me|unassigned|all|user, limit default 40 max 250) lists Linear, AbleTime, or GitHub tickets \u2014 do not use it for that review-inbox ask. When they ask for tickets to work on, follow their context (assignee=me or unassigned as it says).`,
342
342
  "- Find work: when they ask to find work, pick up tickets, or list reviews, use Settings \u2192 Agents (account) plus Settings \u2192 Projects (per-repo) context. Tickets \u2192 Sideboard list_issues / linear_* (Account Linear). Reviews \u2192 list_prs(queue=review). Do not call Claude Linear MCP or any other vendor Linear MCP \u2014 those HTTP connectors hang or flap on the first turn. If a vendor MCP is down or reconnecting, ignore it and keep going with Sideboard tools. Show the options \u2014 do not create_thread or start unless they also asked to start (e.g. \u201Cfind me work and start it\u201D). Do not start this unprompted. To change that context, show the proposed text, ask_user (Save this context / Do not save), wait, then update_viewer_context with confirmed=true. Never write it without confirmation.",
343
343
  "- Ticket updates: list_issues / linear_search_issues / github_search_issues with updatedSince (yesterday, 2d, or ISO). One call returns new assignments, ticket edits, and new comments \u2014 do not get_issue every ticket just to check for comments. kind=created vs updated distinguishes new tickets from existing ones.",
344
344
  "- linear_* (when Linear is connected) \u2014 list_teams for team key/states; get/create/update/comment with ENG-123. Worktree agents have the same Account tools \u2014 prefer they comment, update status, and create spin-offs (parent=) on their own ticket when they were asked to do the work. When reviewing a PR or ticket, do not comment or update until the user types a next step \u2014 they should work through the feedback in chat first. Do not tell the child to ask_user after the review. Scope errors: reconnect Linear in Account settings. Prefer these over any Linear MCP the CLI may still list.",
@@ -6,14 +6,14 @@ import {
6
6
  normalizeAbleTimeCredential,
7
7
  normalizeAbleTimeHost,
8
8
  rewriteAbleTimeError
9
- } from "./chunk-WURF67ID.js";
9
+ } from "./chunk-BEQE7VOE.js";
10
10
  import {
11
11
  httpFetch
12
12
  } from "./chunk-VKQGAWHY.js";
13
13
  import {
14
14
  getAbleTimeAccessToken,
15
15
  getAbleTimeHost
16
- } from "./chunk-YLGBQVRK.js";
16
+ } from "./chunk-XEBQRCDW.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-YLGBQVRK.js";
9
+ } from "./chunk-XEBQRCDW.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-CHVTUZBR.js").then((m) => m.ensureAbleTimeAccessToken());
158
+ const rawToken = opts?.token ?? await import("./abletime-oauth-G6ZPGVAE.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-CHVTUZBR.js").then((m) => m.ensureAbleTimeAccessToken());
229
+ const rawToken = opts?.token ?? await import("./abletime-oauth-G6ZPGVAE.js").then((m) => m.ensureAbleTimeAccessToken());
230
230
  if (rawToken && ableTimeUsesRest(rawToken)) {
231
- const { callAbleTimeRestTool } = await import("./abletime-rest-APJUKFKL.js");
231
+ const { callAbleTimeRestTool } = await import("./abletime-rest-M2D2NELV.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-APJUKFKL.js");
247
+ const { callAbleTimeRestTool } = await import("./abletime-rest-M2D2NELV.js");
248
248
  return callAbleTimeRestTool(name, args, { ...opts, token: rawToken });
249
249
  }
250
250
  throw err instanceof Error ? new Error(rewriteAbleTimeError(err.message)) : err;
@@ -66,6 +66,12 @@ function normalizeThread(raw) {
66
66
  prTitle: raw.prTitle ?? null,
67
67
  prState: raw.prState ?? null,
68
68
  prIsDraft: Boolean(raw.prIsDraft),
69
+ prReviewDecision: raw.prReviewDecision ?? null,
70
+ prMergeable: raw.prMergeable ?? null,
71
+ prMergeStateStatus: raw.prMergeStateStatus ?? null,
72
+ prIsInMergeQueue: Boolean(raw.prIsInMergeQueue),
73
+ prLabels: Array.isArray(raw.prLabels) ? raw.prLabels : [],
74
+ prChecksFailed: typeof raw.prChecksFailed === "boolean" ? raw.prChecksFailed : void 0,
69
75
  skipAutoArchiveOnMerge: Boolean(raw.skipAutoArchiveOnMerge),
70
76
  cowboy: Boolean(raw.cowboy),
71
77
  stackId: raw.stackId ?? null,
@@ -101,6 +107,12 @@ function createEmptyThread(partial) {
101
107
  prIsDraft: Boolean(partial.prIsDraft),
102
108
  prAuthorLogin: partial.prAuthorLogin?.trim() || null,
103
109
  prReviewerLogins: partial.prReviewerLogins ?? [],
110
+ prReviewDecision: partial.prReviewDecision ?? null,
111
+ prMergeable: partial.prMergeable ?? null,
112
+ prMergeStateStatus: partial.prMergeStateStatus ?? null,
113
+ prIsInMergeQueue: Boolean(partial.prIsInMergeQueue),
114
+ prLabels: partial.prLabels ?? [],
115
+ prChecksFailed: partial.prChecksFailed,
104
116
  skipAutoArchiveOnMerge: partial.skipAutoArchiveOnMerge ?? false,
105
117
  cowboy: Boolean(partial.cowboy),
106
118
  stackId: partial.stackId ?? null,
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  isOrchestratorThread
3
- } from "./chunk-GFRC6JQN.js";
3
+ } from "./chunk-U2ZZMGPV.js";
4
4
  import {
5
5
  codexUnattendedGitConfigArgs,
6
6
  mergeAgentGitAuthEnv,
7
7
  resolveAgentGitAuthEnv,
8
8
  resolveCodexGitWritableRoots
9
- } from "./chunk-E6C5NR46.js";
9
+ } from "./chunk-W4F7JKXF.js";
10
10
  import {
11
11
  applyConnectedTeamToCli,
12
12
  brightsyMcpServerName,
@@ -45,7 +45,7 @@ import {
45
45
  loadAppSettings,
46
46
  resolveAgentExecutable,
47
47
  resolveClaudeExecutable
48
- } from "./chunk-PPJ5JTWA.js";
48
+ } from "./chunk-QVQPIFBV.js";
49
49
  import {
50
50
  appDataDir
51
51
  } from "./chunk-A4JGXX2F.js";
@@ -2533,7 +2533,7 @@ var claudeAdapter = {
2533
2533
  );
2534
2534
  }
2535
2535
  const mode = permissionMode(thread);
2536
- const { isOrchestratorThread: isOrchestratorThread2 } = await import("./global-workspace-2N6KISDO.js");
2536
+ const { isOrchestratorThread: isOrchestratorThread2 } = await import("./global-workspace-RLCICVQE.js");
2537
2537
  const isOrchestrator = isOrchestratorThread2(thread);
2538
2538
  const injectedServers = await buildInjectedMcpServers({
2539
2539
  includeSideboard: true,