@rallycry/conveyor-agent 11.0.43 → 11.0.45

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.
@@ -1267,12 +1267,20 @@ var AgentConnection = class _AgentConnection {
1267
1267
  * limited and hand back the best remaining key's credential env (or a
1268
1268
  * requeue confirmation when none is left). Awaited: the caller swaps
1269
1269
  * credentials and resumes on success, so it needs the real response.
1270
+ *
1271
+ * Names the key this pod is running so the server stamps THAT key: the
1272
+ * session's own attribution can lag the credential a wake handed out, and
1273
+ * stamping it blindly is how one key's cap landed on another. Read from the
1274
+ * env at call time on purpose — `applyCycledKeyEnv` rewrites the var after a
1275
+ * successful cycle, so a second cap names the replacement.
1270
1276
  */
1271
1277
  async cycleCodingAgentKey(rateLimitType, resetsAt) {
1278
+ const codingAgentKeyId = process.env.CONVEYOR_CODING_AGENT_KEY_ID;
1272
1279
  return await this.call("cycleCodingAgentKey", {
1273
1280
  sessionId: this.config.sessionId,
1274
1281
  rateLimitType,
1275
- ...resetsAt ? { resetsAt } : {}
1282
+ ...resetsAt ? { resetsAt } : {},
1283
+ ...codingAgentKeyId ? { codingAgentKeyId } : {}
1276
1284
  });
1277
1285
  }
1278
1286
  // ── Question handling ──────────────────────────────────────────────
@@ -1846,9 +1854,9 @@ async function runQueryGrafanaLogs(port, params, now = Date.now) {
1846
1854
  // ../shared/dist/index.js
1847
1855
  import { z as z3 } from "zod";
1848
1856
  import { z as z22 } from "zod";
1849
- import { z as z4 } from "zod";
1850
1857
  import { z as z32 } from "zod";
1851
1858
  import { z as z5 } from "zod";
1859
+ import { z as z4 } from "zod";
1852
1860
  import { z as z6 } from "zod";
1853
1861
  import { z as z7 } from "zod";
1854
1862
  import { z as z8 } from "zod";
@@ -1858,6 +1866,7 @@ import { z as z11 } from "zod";
1858
1866
  import { z as z12 } from "zod";
1859
1867
  import { z as z13 } from "zod";
1860
1868
  import { z as z14 } from "zod";
1869
+ import { z as z15 } from "zod";
1861
1870
  var EXTERNAL_AGENT_MESSAGE_SOURCE = "external_agent";
1862
1871
  var TUI_KINDS = ["claude-code", "opencode", "codex"];
1863
1872
  var ACHIEVEMENT_RARITIES = [
@@ -1980,182 +1989,191 @@ var RUNNER_MODES = [
1980
1989
  "shell",
1981
1990
  "serving"
1982
1991
  ];
1983
- var TurnEndToolCallSchema = z22.object({
1984
- tool: z22.string(),
1985
- input: z22.string().optional(),
1986
- output: z22.string().optional(),
1987
- timestamp: z22.string().optional()
1992
+ var siteAssetExtension = z22.string().regex(/^[a-z0-9]{1,10}$/);
1993
+ var RequestSiteAssetUploadRequestSchema = z22.object({
1994
+ projectId: z22.string(),
1995
+ siteId: z22.string().min(1).max(100),
1996
+ sha256: z22.string().regex(/^[a-f0-9]{64}$/),
1997
+ ext: siteAssetExtension,
1998
+ sizeBytes: z22.number().int().positive()
1999
+ });
2000
+ var ListSiteAssetTargetsRequestSchema = z22.object({ projectId: z22.string() });
2001
+ var TurnEndToolCallSchema = z32.object({
2002
+ tool: z32.string(),
2003
+ input: z32.string().optional(),
2004
+ output: z32.string().optional(),
2005
+ timestamp: z32.string().optional()
1988
2006
  }).passthrough();
1989
- var AgentTurnUsageSchema = z22.object({
1990
- inputTokens: z22.number(),
1991
- outputTokens: z22.number(),
1992
- cacheReadInputTokens: z22.number(),
1993
- cacheCreationInputTokens: z22.number(),
1994
- totalTokens: z22.number()
1995
- });
1996
- var KnownAgentEventSchema = z22.discriminatedUnion("type", [
2007
+ var AgentTurnUsageSchema = z32.object({
2008
+ inputTokens: z32.number(),
2009
+ outputTokens: z32.number(),
2010
+ cacheReadInputTokens: z32.number(),
2011
+ cacheCreationInputTokens: z32.number(),
2012
+ totalTokens: z32.number()
2013
+ });
2014
+ var KnownAgentEventSchema = z32.discriminatedUnion("type", [
1997
2015
  // ── Lifecycle / connection ────────────────────────────────────────────
1998
- z22.object({
1999
- type: z22.literal("connected"),
2000
- sessionId: z22.string(),
2001
- projectId: z22.string().optional()
2016
+ z32.object({
2017
+ type: z32.literal("connected"),
2018
+ sessionId: z32.string(),
2019
+ projectId: z32.string().optional()
2002
2020
  }).passthrough(),
2003
2021
  // Open-ended context snapshot spread from buildInitializationContext().
2004
- z22.object({ type: z22.literal("session_manifest") }).passthrough(),
2005
- z22.object({
2006
- type: z22.literal("agent_runner_status"),
2007
- reason: z22.string(),
2008
- attempt: z22.number().optional(),
2009
- attempts: z22.number().optional()
2022
+ z32.object({ type: z32.literal("session_manifest") }).passthrough(),
2023
+ z32.object({
2024
+ type: z32.literal("agent_runner_status"),
2025
+ reason: z32.string(),
2026
+ attempt: z32.number().optional(),
2027
+ attempts: z32.number().optional()
2010
2028
  }).passthrough(),
2011
- z22.object({ type: z22.literal("shutdown"), reason: z22.string().optional() }).passthrough(),
2012
- z22.object({ type: z22.literal("mode_changed"), agentMode: z22.string() }).passthrough(),
2013
- z22.object({ type: z22.literal("mode_transition"), from: z22.string(), to: z22.string() }).passthrough(),
2029
+ z32.object({ type: z32.literal("shutdown"), reason: z32.string().optional() }).passthrough(),
2030
+ z32.object({ type: z32.literal("mode_changed"), agentMode: z32.string() }).passthrough(),
2031
+ z32.object({ type: z32.literal("mode_transition"), from: z32.string(), to: z32.string() }).passthrough(),
2014
2032
  // ── Turn stream ───────────────────────────────────────────────────────
2015
- z22.object({ type: z22.literal("message"), content: z22.string() }).passthrough(),
2016
- z22.object({ type: z22.literal("thinking"), message: z22.string() }).passthrough(),
2017
- z22.object({
2018
- type: z22.literal("tool_use"),
2019
- tool: z22.string(),
2033
+ z32.object({ type: z32.literal("message"), content: z32.string() }).passthrough(),
2034
+ z32.object({ type: z32.literal("thinking"), message: z32.string() }).passthrough(),
2035
+ z32.object({
2036
+ type: z32.literal("tool_use"),
2037
+ tool: z32.string(),
2020
2038
  // Producers send JSON.stringify(input); consumers defend against
2021
2039
  // object inputs from older agents, so the wire stays permissive here.
2022
- input: z22.unknown().optional()
2040
+ input: z32.unknown().optional()
2023
2041
  }).passthrough(),
2024
- z22.object({
2025
- type: z22.literal("tool_result"),
2026
- tool: z22.string(),
2027
- output: z22.unknown().optional(),
2028
- isError: z22.boolean().optional(),
2029
- redactedCount: z22.number().optional()
2042
+ z32.object({
2043
+ type: z32.literal("tool_result"),
2044
+ tool: z32.string(),
2045
+ output: z32.unknown().optional(),
2046
+ isError: z32.boolean().optional(),
2047
+ redactedCount: z32.number().optional()
2030
2048
  }).passthrough(),
2031
- z22.object({ type: z22.literal("turn_end"), toolCalls: z22.array(TurnEndToolCallSchema) }).passthrough(),
2032
- z22.object({
2033
- type: z22.literal("completed"),
2034
- summary: z22.string().optional(),
2035
- durationMs: z22.number().optional(),
2049
+ z32.object({ type: z32.literal("turn_end"), toolCalls: z32.array(TurnEndToolCallSchema) }).passthrough(),
2050
+ z32.object({
2051
+ type: z32.literal("completed"),
2052
+ summary: z32.string().optional(),
2053
+ durationMs: z32.number().optional(),
2036
2054
  /** Tokens this turn consumed, summed from the transcript's assistant
2037
2055
  * records. Optional: an older agent build sends none, and the server
2038
2056
  * then records nothing rather than zeroing the session's totals. */
2039
2057
  usage: AgentTurnUsageSchema.optional()
2040
2058
  }).passthrough(),
2041
- z22.object({ type: z22.literal("error"), message: z22.string() }).passthrough(),
2042
- z22.object({ type: z22.literal("agent_typing_start") }).passthrough(),
2043
- z22.object({ type: z22.literal("agent_typing_stop") }).passthrough(),
2059
+ z32.object({ type: z32.literal("error"), message: z32.string() }).passthrough(),
2060
+ z32.object({ type: z32.literal("agent_typing_start") }).passthrough(),
2061
+ z32.object({ type: z32.literal("agent_typing_stop") }).passthrough(),
2044
2062
  // ── Telemetry ─────────────────────────────────────────────────────────
2045
2063
  // heartbeat/typing: legacy telemetry the server still classifies as
2046
2064
  // transient (TRANSIENT_EVENT_TYPES) — kept in the vocabulary.
2047
- z22.object({ type: z22.literal("heartbeat") }).passthrough(),
2048
- z22.object({ type: z22.literal("typing") }).passthrough(),
2049
- z22.object({
2050
- type: z22.literal("context_update"),
2051
- contextTokens: z22.number(),
2052
- contextWindow: z22.number(),
2053
- inputTokens: z22.number().optional(),
2054
- cacheReadInputTokens: z22.number().optional(),
2055
- cacheCreationInputTokens: z22.number().optional(),
2056
- totalTokensUsed: z22.number().optional()
2065
+ z32.object({ type: z32.literal("heartbeat") }).passthrough(),
2066
+ z32.object({ type: z32.literal("typing") }).passthrough(),
2067
+ z32.object({
2068
+ type: z32.literal("context_update"),
2069
+ contextTokens: z32.number(),
2070
+ contextWindow: z32.number(),
2071
+ inputTokens: z32.number().optional(),
2072
+ cacheReadInputTokens: z32.number().optional(),
2073
+ cacheCreationInputTokens: z32.number().optional(),
2074
+ totalTokensUsed: z32.number().optional()
2057
2075
  }).passthrough(),
2058
2076
  // Four producer shapes share this type: {rateLimitType, utilization, status}
2059
2077
  // (SDK rate_limit_event), {resetsAt} (agent-connection resume notice), the
2060
2078
  // usage-sampler ({rateLimitType, utilization, status, resetsAt, gauges}
2061
2079
  // — resetsAt matches rateLimitType; gauges survives via .passthrough()), and
2062
2080
  // {unmeasurable, reason} (the sampler reporting it cannot read this key).
2063
- z22.object({
2064
- type: z22.literal("rate_limit_update"),
2065
- rateLimitType: z22.string().optional(),
2066
- utilization: z22.number().optional(),
2067
- status: z22.string().optional(),
2068
- resetsAt: z22.string().optional(),
2069
- unmeasurable: z22.boolean().optional(),
2070
- reason: z22.string().optional()
2081
+ z32.object({
2082
+ type: z32.literal("rate_limit_update"),
2083
+ rateLimitType: z32.string().optional(),
2084
+ utilization: z32.number().optional(),
2085
+ status: z32.string().optional(),
2086
+ resetsAt: z32.string().optional(),
2087
+ unmeasurable: z32.boolean().optional(),
2088
+ reason: z32.string().optional()
2071
2089
  }).passthrough(),
2072
- z22.object({
2073
- type: z22.literal("context_compacted"),
2074
- trigger: z22.string().optional(),
2075
- preTokens: z22.number().optional()
2090
+ z32.object({
2091
+ type: z32.literal("context_compacted"),
2092
+ trigger: z32.string().optional(),
2093
+ preTokens: z32.number().optional()
2076
2094
  }).passthrough(),
2077
- z22.object({
2078
- type: z22.literal("tool_progress"),
2079
- toolName: z22.string().optional(),
2080
- elapsedSeconds: z22.number().optional()
2095
+ z32.object({
2096
+ type: z32.literal("tool_progress"),
2097
+ toolName: z32.string().optional(),
2098
+ elapsedSeconds: z32.number().optional()
2081
2099
  }).passthrough(),
2082
- z22.object({
2083
- type: z22.literal("subagent_started"),
2084
- sdkTaskId: z22.string().optional(),
2085
- description: z22.string().optional()
2100
+ z32.object({
2101
+ type: z32.literal("subagent_started"),
2102
+ sdkTaskId: z32.string().optional(),
2103
+ description: z32.string().optional()
2086
2104
  }).passthrough(),
2087
- z22.object({
2088
- type: z22.literal("subagent_progress"),
2089
- sdkTaskId: z22.string().optional(),
2090
- description: z22.string().optional(),
2091
- toolUses: z22.number().optional(),
2092
- durationMs: z22.number().optional()
2105
+ z32.object({
2106
+ type: z32.literal("subagent_progress"),
2107
+ sdkTaskId: z32.string().optional(),
2108
+ description: z32.string().optional(),
2109
+ toolUses: z32.number().optional(),
2110
+ durationMs: z32.number().optional()
2093
2111
  }).passthrough(),
2094
2112
  // ── Work products ─────────────────────────────────────────────────────
2095
- z22.object({ type: z22.literal("pr_created"), url: z22.string(), number: z22.number() }).passthrough(),
2096
- z22.object({
2097
- type: z22.literal("code_review_complete"),
2098
- result: z22.enum(["approved", "changes_requested"]),
2099
- summary: z22.string().optional(),
2100
- issues: z22.array(
2101
- z22.object({
2102
- file: z22.string(),
2103
- line: z22.number().optional(),
2104
- severity: z22.string().optional(),
2105
- description: z22.string().optional()
2113
+ z32.object({ type: z32.literal("pr_created"), url: z32.string(), number: z32.number() }).passthrough(),
2114
+ z32.object({
2115
+ type: z32.literal("code_review_complete"),
2116
+ result: z32.enum(["approved", "changes_requested"]),
2117
+ summary: z32.string().optional(),
2118
+ issues: z32.array(
2119
+ z32.object({
2120
+ file: z32.string(),
2121
+ line: z32.number().optional(),
2122
+ severity: z32.string().optional(),
2123
+ description: z32.string().optional()
2106
2124
  }).passthrough()
2107
2125
  ).optional()
2108
2126
  }).passthrough(),
2109
2127
  // ── Environment setup / start command ─────────────────────────────────
2110
- z22.object({ type: z22.literal("setup_output"), stream: z22.string(), data: z22.string() }).passthrough(),
2111
- z22.object({
2112
- type: z22.literal("setup_complete"),
2113
- startCommandRunning: z22.boolean().optional(),
2114
- startCommandConfigured: z22.boolean().optional(),
2128
+ z32.object({ type: z32.literal("setup_output"), stream: z32.string(), data: z32.string() }).passthrough(),
2129
+ z32.object({
2130
+ type: z32.literal("setup_complete"),
2131
+ startCommandRunning: z32.boolean().optional(),
2132
+ startCommandConfigured: z32.boolean().optional(),
2115
2133
  // Sanitized server-side by sanitizeSessionPreviewPorts — stays unknown.
2116
- previewPorts: z22.unknown().optional(),
2134
+ previewPorts: z32.unknown().optional(),
2117
2135
  // Sanitized server-side by sanitizeSessionPreviewLinks — stays unknown.
2118
- previewLinks: z22.unknown().optional()
2136
+ previewLinks: z32.unknown().optional()
2119
2137
  }).passthrough(),
2120
- z22.object({ type: z22.literal("setup_error"), message: z22.string() }).passthrough(),
2121
- z22.object({ type: z22.literal("start_command_started") }).passthrough(),
2122
- z22.object({ type: z22.literal("start_command_output"), stream: z22.string(), data: z22.string() }).passthrough(),
2123
- z22.object({
2124
- type: z22.literal("start_command_exited"),
2125
- code: z22.number().nullable().optional(),
2126
- signal: z22.string().nullable().optional(),
2127
- message: z22.string().optional()
2138
+ z32.object({ type: z32.literal("setup_error"), message: z32.string() }).passthrough(),
2139
+ z32.object({ type: z32.literal("start_command_started") }).passthrough(),
2140
+ z32.object({ type: z32.literal("start_command_output"), stream: z32.string(), data: z32.string() }).passthrough(),
2141
+ z32.object({
2142
+ type: z32.literal("start_command_exited"),
2143
+ code: z32.number().nullable().optional(),
2144
+ signal: z32.string().nullable().optional(),
2145
+ message: z32.string().optional()
2128
2146
  }).passthrough(),
2129
- z22.object({ type: z22.literal("start_command_error"), message: z22.string() }).passthrough()
2147
+ z32.object({ type: z32.literal("start_command_error"), message: z32.string() }).passthrough()
2130
2148
  ]);
2131
- var AgentEventSchema = z22.union([
2149
+ var AgentEventSchema = z32.union([
2132
2150
  KnownAgentEventSchema,
2133
- z22.object({ type: z22.string().min(1) }).catchall(z22.unknown())
2151
+ z32.object({ type: z32.string().min(1) }).catchall(z32.unknown())
2134
2152
  ]);
2135
- var PtyChatAtSchema = z32.string().max(40).optional();
2136
- var PtyChatTurnUsageSchema = z32.object({
2137
- input: z32.number().int().nonnegative(),
2138
- output: z32.number().int().nonnegative(),
2139
- cacheRead: z32.number().int().nonnegative(),
2140
- cacheWrite: z32.number().int().nonnegative()
2141
- });
2142
- var PtyChatTurnFileSchema = z32.object({
2143
- path: z32.string().max(500),
2144
- added: z32.number().int(),
2145
- removed: z32.number().int()
2153
+ var PtyChatAtSchema = z4.string().max(40).optional();
2154
+ var PtyChatTurnUsageSchema = z4.object({
2155
+ input: z4.number().int().nonnegative(),
2156
+ output: z4.number().int().nonnegative(),
2157
+ cacheRead: z4.number().int().nonnegative(),
2158
+ cacheWrite: z4.number().int().nonnegative()
2159
+ });
2160
+ var PtyChatTurnFileSchema = z4.object({
2161
+ path: z4.string().max(500),
2162
+ added: z4.number().int(),
2163
+ removed: z4.number().int()
2146
2164
  });
2147
2165
  var PTY_CHAT_TURN_FILES_MAX = 50;
2148
- var PtyChatEventPayloadSchema = z32.discriminatedUnion("kind", [
2149
- z32.object({
2150
- kind: z32.literal("init"),
2166
+ var PtyChatEventPayloadSchema = z4.discriminatedUnion("kind", [
2167
+ z4.object({
2168
+ kind: z4.literal("init"),
2151
2169
  at: PtyChatAtSchema,
2152
- model: z32.string().max(200),
2153
- claudeSessionId: z32.string().max(100).optional()
2170
+ model: z4.string().max(200),
2171
+ claudeSessionId: z4.string().max(100).optional()
2154
2172
  }),
2155
- z32.object({
2156
- kind: z32.literal("user_text"),
2173
+ z4.object({
2174
+ kind: z4.literal("user_text"),
2157
2175
  at: PtyChatAtSchema,
2158
- text: z32.string().max(16384),
2176
+ text: z4.string().max(16384),
2159
2177
  // Set by the SERVER (never the agent) when this prompt was injected by
2160
2178
  // Conveyor rather than typed by a human — the routed message's `source`
2161
2179
  // (`ci_success`, `review_trigger`, `automated_feedback`, …). The agent
@@ -2164,88 +2182,88 @@ var PtyChatEventPayloadSchema = z32.discriminatedUnion("kind", [
2164
2182
  // builder chat renders "All CI checks passed on your PR." as the human's
2165
2183
  // own bubble. Absent ⇒ a genuine human prompt. Exception: the AGENT sets
2166
2184
  // `model_switch` on the notice it emits after a live model/effort switch.
2167
- source: z32.string().max(60).optional()
2185
+ source: z4.string().max(60).optional()
2168
2186
  }),
2169
- z32.object({
2170
- kind: z32.literal("assistant_text"),
2187
+ z4.object({
2188
+ kind: z4.literal("assistant_text"),
2171
2189
  at: PtyChatAtSchema,
2172
- text: z32.string().max(16384),
2173
- model: z32.string().max(200).optional()
2190
+ text: z4.string().max(16384),
2191
+ model: z4.string().max(200).optional()
2174
2192
  }),
2175
- z32.object({
2176
- kind: z32.literal("tool_use"),
2193
+ z4.object({
2194
+ kind: z4.literal("tool_use"),
2177
2195
  at: PtyChatAtSchema,
2178
- name: z32.string().max(200),
2196
+ name: z4.string().max(200),
2179
2197
  // Compact preview: JSON.stringify(input) truncated agent-side. The cap
2180
2198
  // matches the text events because AskUserQuestion payloads ride this field
2181
2199
  // and the web lifts them into an interactive card — a tight cap forced
2182
2200
  // option descriptions down to 80 chars, making them unreadable. Every
2183
2201
  // other tool keeps a far smaller agent-side budget (`TOOL_INPUT_MAX` in
2184
2202
  // `chat-record-mapper.ts`), so the ring does not grow for normal calls.
2185
- input: z32.string().max(16384),
2203
+ input: z4.string().max(16384),
2186
2204
  // Transcript tool_use block id — lets the client pair the tool_result.
2187
- id: z32.string().max(100).optional()
2205
+ id: z4.string().max(100).optional()
2188
2206
  }),
2189
- z32.object({
2190
- kind: z32.literal("tool_result"),
2207
+ z4.object({
2208
+ kind: z4.literal("tool_result"),
2191
2209
  at: PtyChatAtSchema,
2192
2210
  // tool_use block id this result answers (absent on malformed records).
2193
- toolUseId: z32.string().max(100).optional(),
2211
+ toolUseId: z4.string().max(100).optional(),
2194
2212
  // Compact output preview, truncated agent-side.
2195
- output: z32.string().max(2e3),
2196
- isError: z32.boolean().optional()
2213
+ output: z4.string().max(2e3),
2214
+ isError: z4.boolean().optional()
2197
2215
  }),
2198
- z32.object({
2199
- kind: z32.literal("turn_end"),
2216
+ z4.object({
2217
+ kind: z4.literal("turn_end"),
2200
2218
  at: PtyChatAtSchema,
2201
2219
  // Wall-clock turn length as the CLI measured it ("Worked for 23s").
2202
- durationMs: z32.number().int().nonnegative().optional(),
2220
+ durationMs: z4.number().int().nonnegative().optional(),
2203
2221
  // Last model that answered in this turn.
2204
- model: z32.string().max(200).optional(),
2222
+ model: z4.string().max(200).optional(),
2205
2223
  // Token usage summed over the turn's API responses.
2206
2224
  usage: PtyChatTurnUsageSchema.optional(),
2207
2225
  // Files the turn edited, with line counts. Absent when nothing was edited.
2208
- files: z32.array(PtyChatTurnFileSchema).max(PTY_CHAT_TURN_FILES_MAX).optional()
2226
+ files: z4.array(PtyChatTurnFileSchema).max(PTY_CHAT_TURN_FILES_MAX).optional()
2209
2227
  })
2210
2228
  ]);
2211
- var PtyChatEventRequestSchema = z32.object({
2212
- sessionId: z32.string(),
2229
+ var PtyChatEventRequestSchema = z4.object({
2230
+ sessionId: z4.string(),
2213
2231
  event: PtyChatEventPayloadSchema
2214
2232
  });
2215
- var PtyChatAttachRequestSchema = z32.object({
2216
- sessionId: z32.string()
2233
+ var PtyChatAttachRequestSchema = z4.object({
2234
+ sessionId: z4.string()
2217
2235
  });
2218
2236
  var PTY_EFFORT_LEVELS = ["low", "medium", "high", "xhigh", "max"];
2219
- var SetPtyModelEffortRequestSchema = z32.object({
2220
- sessionId: z32.string(),
2221
- model: z32.string().min(1).max(200).optional(),
2222
- effort: z32.enum(PTY_EFFORT_LEVELS).optional()
2237
+ var SetPtyModelEffortRequestSchema = z4.object({
2238
+ sessionId: z4.string(),
2239
+ model: z4.string().min(1).max(200).optional(),
2240
+ effort: z4.enum(PTY_EFFORT_LEVELS).optional()
2223
2241
  }).refine((p) => p.model !== void 0 || p.effort !== void 0, {
2224
2242
  message: "model or effort is required"
2225
2243
  });
2226
- var cardDescription = z4.string().max(CARD_DESCRIPTION_MAX, CARD_DESCRIPTION_LIMIT_MESSAGE).optional();
2227
- var AgentHeartbeatSchema = z4.object({
2228
- sessionId: z4.string().optional(),
2229
- timestamp: z4.string(),
2230
- status: z4.enum(["active", "idle", "building"]),
2231
- currentAction: z4.string().optional(),
2244
+ var cardDescription = z5.string().max(CARD_DESCRIPTION_MAX, CARD_DESCRIPTION_LIMIT_MESSAGE).optional();
2245
+ var AgentHeartbeatSchema = z5.object({
2246
+ sessionId: z5.string().optional(),
2247
+ timestamp: z5.string(),
2248
+ status: z5.enum(["active", "idle", "building"]),
2249
+ currentAction: z5.string().optional(),
2232
2250
  /** Sender-observed main event-loop lag (ms) — see AgentHeartbeat.loopLagMs. */
2233
- loopLagMs: z4.number().nonnegative().optional()
2251
+ loopLagMs: z5.number().nonnegative().optional()
2234
2252
  });
2235
- var CreatePRInputSchema = z4.object({
2236
- title: z4.string().min(1),
2237
- body: z4.string(),
2238
- head: z4.string().optional(),
2239
- base: z4.string().optional()
2253
+ var CreatePRInputSchema = z5.object({
2254
+ title: z5.string().min(1),
2255
+ body: z5.string(),
2256
+ head: z5.string().optional(),
2257
+ base: z5.string().optional()
2240
2258
  });
2241
- var PostToChatInputSchema = z4.object({
2242
- message: z4.string().min(1),
2243
- type: z4.enum(["message", "question", "update"]).optional().default("message"),
2244
- milestone: z4.enum(["plan_ready", "implementation_complete", "blocked"]).optional()
2259
+ var PostToChatInputSchema = z5.object({
2260
+ message: z5.string().min(1),
2261
+ type: z5.enum(["message", "question", "update"]).optional().default("message"),
2262
+ milestone: z5.enum(["plan_ready", "implementation_complete", "blocked"]).optional()
2245
2263
  });
2246
- var GetTaskContextRequestSchema = z4.object({
2247
- sessionId: z4.string(),
2248
- includeHistory: z4.boolean().optional().default(false),
2264
+ var GetTaskContextRequestSchema = z5.object({
2265
+ sessionId: z5.string(),
2266
+ includeHistory: z5.boolean().optional().default(false),
2249
2267
  /**
2250
2268
  * Read the plan-revised marker WITHOUT consuming it. Bookkeeping fetches
2251
2269
  * (the session-identity check, the branch refresh) pass true so they cannot
@@ -2253,293 +2271,293 @@ var GetTaskContextRequestSchema = z4.object({
2253
2271
  * Defaults to false — consuming — so a pod running an older agent build still
2254
2272
  * clears the marker instead of showing the notice on every boot forever.
2255
2273
  */
2256
- peekPlanRevision: z4.boolean().optional().default(false)
2274
+ peekPlanRevision: z5.boolean().optional().default(false)
2257
2275
  });
2258
- var GetChatMessagesRequestSchema = z4.object({
2259
- sessionId: z4.string(),
2260
- limit: z4.number().int().positive().optional().default(50),
2261
- offset: z4.number().int().nonnegative().optional().default(0),
2276
+ var GetChatMessagesRequestSchema = z5.object({
2277
+ sessionId: z5.string(),
2278
+ limit: z5.number().int().positive().optional().default(50),
2279
+ offset: z5.number().int().nonnegative().optional().default(0),
2262
2280
  /** Task id or slug to read chat from. Omit for the session's own task. Only
2263
2281
  * the session's own task or one of its children resolves — anything else is
2264
2282
  * an error, never a silent fallback to the caller's own chat. */
2265
- taskId: z4.string().optional()
2283
+ taskId: z5.string().optional()
2266
2284
  });
2267
- var GetTaskFilesRequestSchema = z4.object({
2268
- sessionId: z4.string(),
2269
- taskId: z4.string().optional()
2285
+ var GetTaskFilesRequestSchema = z5.object({
2286
+ sessionId: z5.string(),
2287
+ taskId: z5.string().optional()
2270
2288
  });
2271
- var GetTaskFileRequestSchema = z4.object({
2272
- sessionId: z4.string(),
2273
- fileId: z4.string(),
2274
- taskId: z4.string().optional()
2289
+ var GetTaskFileRequestSchema = z5.object({
2290
+ sessionId: z5.string(),
2291
+ fileId: z5.string(),
2292
+ taskId: z5.string().optional()
2275
2293
  });
2276
- var DeleteTaskFileRequestSchema = z4.object({
2277
- sessionId: z4.string(),
2278
- fileId: z4.string()
2294
+ var DeleteTaskFileRequestSchema = z5.object({
2295
+ sessionId: z5.string(),
2296
+ fileId: z5.string()
2279
2297
  });
2280
- var SetTaskFileShowcaseRequestSchema = z4.object({
2281
- sessionId: z4.string(),
2282
- fileId: z4.string(),
2283
- showcase: z4.boolean()
2298
+ var SetTaskFileShowcaseRequestSchema = z5.object({
2299
+ sessionId: z5.string(),
2300
+ fileId: z5.string(),
2301
+ showcase: z5.boolean()
2284
2302
  });
2285
- var GetTaskRequestSchema = z4.object({
2286
- sessionId: z4.string(),
2287
- taskSlugOrId: z4.string()
2303
+ var GetTaskRequestSchema = z5.object({
2304
+ sessionId: z5.string(),
2305
+ taskSlugOrId: z5.string()
2288
2306
  });
2289
- var GetCliHistoryRequestSchema = z4.object({
2290
- sessionId: z4.string(),
2291
- limit: z4.number().int().positive().optional().default(100),
2292
- source: z4.enum(["agent", "application"]).optional(),
2307
+ var GetCliHistoryRequestSchema = z5.object({
2308
+ sessionId: z5.string(),
2309
+ limit: z5.number().int().positive().optional().default(100),
2310
+ source: z5.enum(["agent", "application"]).optional(),
2293
2311
  /** Task id or slug to read logs from. Omit for the session's own task. Only
2294
2312
  * the session's own task or one of its children resolves — anything else is
2295
2313
  * an error, never a silent fallback to the caller's own logs. */
2296
- taskId: z4.string().optional()
2314
+ taskId: z5.string().optional()
2297
2315
  });
2298
- var ListSubtasksRequestSchema = z4.object({
2299
- sessionId: z4.string(),
2316
+ var ListSubtasksRequestSchema = z5.object({
2317
+ sessionId: z5.string(),
2300
2318
  /** "compact" returns the slim orchestration view (ListSubtasksCompactResponse:
2301
2319
  * per-child status, agent, story points, PR state, dependencies); "full" (default — wire-compat with older
2302
2320
  * agents) returns the verbose SubtaskSummaryDTO[] including description/plan. */
2303
- view: z4.enum(["compact", "full"]).optional()
2321
+ view: z5.enum(["compact", "full"]).optional()
2304
2322
  });
2305
- var GetDependenciesRequestSchema = z4.object({
2306
- sessionId: z4.string()
2323
+ var GetDependenciesRequestSchema = z5.object({
2324
+ sessionId: z5.string()
2307
2325
  });
2308
- var GetSuggestionsRequestSchema = z4.object({
2309
- sessionId: z4.string(),
2310
- status: z4.string().optional(),
2311
- limit: z4.number().int().min(1).max(100).optional()
2326
+ var GetSuggestionsRequestSchema = z5.object({
2327
+ sessionId: z5.string(),
2328
+ status: z5.string().optional(),
2329
+ limit: z5.number().int().min(1).max(100).optional()
2312
2330
  });
2313
- var ListManualTestsRequestSchema = z4.object({
2314
- sessionId: z4.string()
2331
+ var ListManualTestsRequestSchema = z5.object({
2332
+ sessionId: z5.string()
2315
2333
  });
2316
- var QueryManualTestsRequestSchema = z4.object({
2317
- sessionId: z4.string(),
2318
- cardStatuses: z4.array(z4.string()).optional(),
2319
- testStatuses: z4.array(z4.enum(["open", "approved", "rejected"])).optional()
2334
+ var QueryManualTestsRequestSchema = z5.object({
2335
+ sessionId: z5.string(),
2336
+ cardStatuses: z5.array(z5.string()).optional(),
2337
+ testStatuses: z5.array(z5.enum(["open", "approved", "rejected"])).optional()
2320
2338
  });
2321
- var CreatePullRequestRequestSchema = CreatePRInputSchema.extend({ sessionId: z4.string() });
2322
- var RequestFileUploadRequestSchema = z4.object({
2323
- sessionId: z4.string(),
2324
- fileName: z4.string().min(1).max(255),
2325
- mimeType: z4.string().min(1).max(128),
2326
- fileSize: z4.number().int().positive().max(MAX_FILE_SIZE_BYTES)
2339
+ var CreatePullRequestRequestSchema = CreatePRInputSchema.extend({ sessionId: z5.string() });
2340
+ var RequestFileUploadRequestSchema = z5.object({
2341
+ sessionId: z5.string(),
2342
+ fileName: z5.string().min(1).max(255),
2343
+ mimeType: z5.string().min(1).max(128),
2344
+ fileSize: z5.number().int().positive().max(MAX_FILE_SIZE_BYTES)
2327
2345
  });
2328
- var ConfirmFileUploadRequestSchema = z4.object({
2329
- sessionId: z4.string(),
2330
- fileId: z4.string(),
2331
- title: z4.string().max(500).optional(),
2346
+ var ConfirmFileUploadRequestSchema = z5.object({
2347
+ sessionId: z5.string(),
2348
+ fileId: z5.string(),
2349
+ title: z5.string().max(500).optional(),
2332
2350
  /** Glossary tag names (or ids) this file is an example of. */
2333
- tags: z4.array(z4.string().min(1).max(MAX_FILE_TAG_LENGTH)).max(MAX_FILE_TAGS).optional(),
2351
+ tags: z5.array(z5.string().min(1).max(MAX_FILE_TAG_LENGTH)).max(MAX_FILE_TAGS).optional(),
2334
2352
  /** Mark the file as the card's showcase (the deliverable). */
2335
- showcase: z4.boolean().optional(),
2353
+ showcase: z5.boolean().optional(),
2336
2354
  /** Id of an older file on the same card this upload replaces. */
2337
- supersedes: z4.string().min(1).max(64).optional()
2355
+ supersedes: z5.string().min(1).max(64).optional()
2338
2356
  });
2339
- var UpdateTaskStatusRequestSchema = z4.object({
2340
- sessionId: z4.string(),
2341
- status: z4.string(),
2342
- force: z4.boolean().optional().default(false)
2357
+ var UpdateTaskStatusRequestSchema = z5.object({
2358
+ sessionId: z5.string(),
2359
+ status: z5.string(),
2360
+ force: z5.boolean().optional().default(false)
2343
2361
  });
2344
- var StoreSessionIdRequestSchema = z4.object({
2345
- sessionId: z4.string(),
2346
- sdkSessionId: z4.string()
2362
+ var StoreSessionIdRequestSchema = z5.object({
2363
+ sessionId: z5.string(),
2364
+ sdkSessionId: z5.string()
2347
2365
  });
2348
- var SetManualTestsRequestSchema = z4.object({
2349
- sessionId: z4.string(),
2366
+ var SetManualTestsRequestSchema = z5.object({
2367
+ sessionId: z5.string(),
2350
2368
  items: ManualTestItemsSchema
2351
2369
  });
2352
- var EditManualTestRequestSchema = z4.object({
2353
- sessionId: z4.string(),
2354
- title: z4.string().min(1),
2355
- newTitle: z4.string().min(1)
2370
+ var EditManualTestRequestSchema = z5.object({
2371
+ sessionId: z5.string(),
2372
+ title: z5.string().min(1),
2373
+ newTitle: z5.string().min(1)
2356
2374
  });
2357
- var RemoveManualTestRequestSchema = z4.object({
2358
- sessionId: z4.string(),
2359
- title: z4.string().min(1)
2375
+ var RemoveManualTestRequestSchema = z5.object({
2376
+ sessionId: z5.string(),
2377
+ title: z5.string().min(1)
2360
2378
  });
2361
- var ApproveManualTestRequestSchema = z4.object({
2362
- sessionId: z4.string(),
2363
- title: z4.string().min(1)
2379
+ var ApproveManualTestRequestSchema = z5.object({
2380
+ sessionId: z5.string(),
2381
+ title: z5.string().min(1)
2364
2382
  });
2365
- var RejectManualTestRequestSchema = z4.object({
2366
- sessionId: z4.string(),
2367
- title: z4.string().min(1),
2368
- reason: z4.string().min(1).max(2e3)
2383
+ var RejectManualTestRequestSchema = z5.object({
2384
+ sessionId: z5.string(),
2385
+ title: z5.string().min(1),
2386
+ reason: z5.string().min(1).max(2e3)
2369
2387
  });
2370
- var SessionStartRequestSchema = z4.object({
2371
- sessionId: z4.string(),
2372
- agentVersion: z4.string(),
2373
- capabilities: z4.array(z4.string())
2388
+ var SessionStartRequestSchema = z5.object({
2389
+ sessionId: z5.string(),
2390
+ agentVersion: z5.string(),
2391
+ capabilities: z5.array(z5.string())
2374
2392
  });
2375
- var SessionStopRequestSchema = z4.object({
2376
- sessionId: z4.string(),
2377
- reason: z4.string().optional()
2393
+ var SessionStopRequestSchema = z5.object({
2394
+ sessionId: z5.string(),
2395
+ reason: z5.string().optional()
2378
2396
  });
2379
- var EndReviewSessionRequestSchema = z4.object({
2380
- sessionId: z4.string(),
2381
- reason: z4.enum(["approved", "changes_requested", "finished"]).optional()
2397
+ var EndReviewSessionRequestSchema = z5.object({
2398
+ sessionId: z5.string(),
2399
+ reason: z5.enum(["approved", "changes_requested", "finished"]).optional()
2382
2400
  });
2383
- var ConnectAgentRequestSchema = z4.object({
2384
- sessionId: z4.string()
2401
+ var ConnectAgentRequestSchema = z5.object({
2402
+ sessionId: z5.string()
2385
2403
  });
2386
- var ReportAgentStatusRequestSchema = z4.object({
2387
- sessionId: z4.string(),
2388
- status: z4.string(),
2404
+ var ReportAgentStatusRequestSchema = z5.object({
2405
+ sessionId: z5.string(),
2406
+ status: z5.string(),
2389
2407
  /** Why the agent reports this status (e.g. "user_question" while an AskUserQuestion questionnaire is pending in the TUI). */
2390
- reason: z4.string().optional(),
2408
+ reason: z5.string().optional(),
2391
2409
  /**
2392
2410
  * The pending question text, sent only alongside `reason: "user_question"`
2393
2411
  * so the server can surface it in the user-question notification body (and
2394
2412
  * thus the Attention feed) instead of a generic string. Optional: older
2395
2413
  * agents omit it and the server falls back to the generic wording.
2396
2414
  */
2397
- questionText: z4.string().optional()
2415
+ questionText: z5.string().optional()
2398
2416
  });
2399
- var NotifyAgentVersionRequestSchema = z4.object({
2400
- sessionId: z4.string(),
2401
- agentVersion: z4.string()
2417
+ var NotifyAgentVersionRequestSchema = z5.object({
2418
+ sessionId: z5.string(),
2419
+ agentVersion: z5.string()
2402
2420
  });
2403
- var DiscoveredPortSchema = z4.object({
2404
- port: z4.number().int().min(1).max(65535),
2405
- label: z4.string().min(1).max(64).optional(),
2406
- protocol: z4.enum(["http", "tcp"]).optional(),
2407
- detectedAt: z4.string(),
2408
- hidden: z4.boolean().optional()
2421
+ var DiscoveredPortSchema = z5.object({
2422
+ port: z5.number().int().min(1).max(65535),
2423
+ label: z5.string().min(1).max(64).optional(),
2424
+ protocol: z5.enum(["http", "tcp"]).optional(),
2425
+ detectedAt: z5.string(),
2426
+ hidden: z5.boolean().optional()
2409
2427
  });
2410
- var ReportDiscoveredPortsRequestSchema = z4.object({
2411
- sessionId: z4.string(),
2412
- ports: z4.array(DiscoveredPortSchema).max(64)
2428
+ var ReportDiscoveredPortsRequestSchema = z5.object({
2429
+ sessionId: z5.string(),
2430
+ ports: z5.array(DiscoveredPortSchema).max(64)
2413
2431
  });
2414
- var ReportBootMilestoneRequestSchema = z4.object({
2415
- sessionId: z4.string(),
2416
- key: z4.string().max(64)
2432
+ var ReportBootMilestoneRequestSchema = z5.object({
2433
+ sessionId: z5.string(),
2434
+ key: z5.string().max(64)
2417
2435
  });
2418
- var CreateSubtaskRequestSchema = z4.object({
2419
- sessionId: z4.string(),
2420
- title: z4.string().min(1),
2436
+ var CreateSubtaskRequestSchema = z5.object({
2437
+ sessionId: z5.string(),
2438
+ title: z5.string().min(1),
2421
2439
  description: cardDescription,
2422
- plan: z4.string().optional(),
2423
- storyPointValue: z4.number().int().positive().optional(),
2424
- ordinal: z4.number().int().nonnegative().optional(),
2425
- followParentStatus: z4.boolean().optional(),
2440
+ plan: z5.string().optional(),
2441
+ storyPointValue: z5.number().int().positive().optional(),
2442
+ ordinal: z5.number().int().nonnegative().optional(),
2443
+ followParentStatus: z5.boolean().optional(),
2426
2444
  /** Sibling subtask ids or slugs this subtask blocks on (explicit dependency
2427
2445
  * metadata — preferred over encoding order in plan text / ordinal). */
2428
- dependsOn: z4.array(z4.string().min(1)).max(32).optional(),
2446
+ dependsOn: z5.array(z5.string().min(1)).max(32).optional(),
2429
2447
  /** Glossary tag names to assign to the child. Unmatched names come back in
2430
2448
  * the response rather than failing the create. */
2431
- tags: z4.array(z4.string().min(1)).max(10).optional()
2449
+ tags: z5.array(z5.string().min(1)).max(10).optional()
2432
2450
  });
2433
- var UpdateSubtaskRequestSchema = z4.object({
2434
- sessionId: z4.string(),
2435
- subtaskId: z4.string(),
2436
- title: z4.string().min(1).optional(),
2451
+ var UpdateSubtaskRequestSchema = z5.object({
2452
+ sessionId: z5.string(),
2453
+ subtaskId: z5.string(),
2454
+ title: z5.string().min(1).optional(),
2437
2455
  description: cardDescription,
2438
- plan: z4.string().optional(),
2456
+ plan: z5.string().optional(),
2439
2457
  /** Orchestration statuses only ("Planning" | "Open") — the pack parent's
2440
2458
  * sanctioned promotion path. Execution statuses stay with the build
2441
2459
  * pipeline / force_update_task_status. Enforced server-side. */
2442
- status: z4.string().optional(),
2460
+ status: z5.string().optional(),
2443
2461
  /** Assign a project agent to the child — accepts the agent's id or exact
2444
2462
  * name; resolved against the parent task's project server-side. */
2445
- agentIdOrName: z4.string().min(1).optional(),
2446
- storyPointValue: z4.number().int().positive().optional(),
2447
- followParentStatus: z4.boolean().optional(),
2463
+ agentIdOrName: z5.string().min(1).optional(),
2464
+ storyPointValue: z5.number().int().positive().optional(),
2465
+ followParentStatus: z5.boolean().optional(),
2448
2466
  /** Replace this subtask's dependency edges with these sibling ids/slugs.
2449
2467
  * Empty array clears all. Omit to leave dependencies unchanged. */
2450
- dependsOn: z4.array(z4.string().min(1)).max(32).optional()
2468
+ dependsOn: z5.array(z5.string().min(1)).max(32).optional()
2451
2469
  });
2452
- var DeleteSubtaskRequestSchema = z4.object({
2453
- sessionId: z4.string(),
2454
- subtaskId: z4.string()
2470
+ var DeleteSubtaskRequestSchema = z5.object({
2471
+ sessionId: z5.string(),
2472
+ subtaskId: z5.string()
2455
2473
  });
2456
- var SetSubtaskParentRequestSchema = z4.object({
2457
- sessionId: z4.string(),
2458
- taskId: z4.string().min(1),
2459
- detach: z4.boolean().optional(),
2460
- ordinal: z4.number().int().nonnegative().optional(),
2461
- followParentStatus: z4.boolean().optional()
2474
+ var SetSubtaskParentRequestSchema = z5.object({
2475
+ sessionId: z5.string(),
2476
+ taskId: z5.string().min(1),
2477
+ detach: z5.boolean().optional(),
2478
+ ordinal: z5.number().int().nonnegative().optional(),
2479
+ followParentStatus: z5.boolean().optional()
2462
2480
  });
2463
- var GetTaskPropertiesRequestSchema = z4.object({
2464
- sessionId: z4.string()
2481
+ var GetTaskPropertiesRequestSchema = z5.object({
2482
+ sessionId: z5.string()
2465
2483
  });
2466
- var UpdateTaskFieldsRequestSchema = z4.object({
2467
- sessionId: z4.string(),
2468
- plan: z4.string().optional(),
2484
+ var UpdateTaskFieldsRequestSchema = z5.object({
2485
+ sessionId: z5.string(),
2486
+ plan: z5.string().optional(),
2469
2487
  description: cardDescription
2470
2488
  });
2471
- var UpdateTaskPropertiesRequestSchema = z4.object({
2472
- sessionId: z4.string(),
2473
- title: z4.string().optional(),
2474
- storyPointValue: z4.number().int().positive().optional(),
2475
- tagIds: z4.array(z4.string()).optional(),
2476
- tagNames: z4.array(z4.string()).optional(),
2477
- githubPRUrl: z4.string().url().optional(),
2478
- githubBranch: z4.string().optional(),
2489
+ var UpdateTaskPropertiesRequestSchema = z5.object({
2490
+ sessionId: z5.string(),
2491
+ title: z5.string().optional(),
2492
+ storyPointValue: z5.number().int().positive().optional(),
2493
+ tagIds: z5.array(z5.string()).optional(),
2494
+ tagNames: z5.array(z5.string()).optional(),
2495
+ githubPRUrl: z5.string().url().optional(),
2496
+ githubBranch: z5.string().optional(),
2479
2497
  // Canonical risk level, or null to clear — same semantics as the headless
2480
2498
  // update_task boundary (resolved to the project's Risk row in the handler).
2481
2499
  risk: riskLevelSchema.nullable().optional()
2482
2500
  });
2483
- var ListIconsRequestSchema = z4.object({
2484
- sessionId: z4.string()
2501
+ var ListIconsRequestSchema = z5.object({
2502
+ sessionId: z5.string()
2485
2503
  });
2486
- var GenerateTaskIconRequestSchema = z4.object({
2487
- sessionId: z4.string(),
2488
- prompt: z4.string().min(1),
2489
- aspectRatio: z4.string().optional()
2504
+ var GenerateTaskIconRequestSchema = z5.object({
2505
+ sessionId: z5.string(),
2506
+ prompt: z5.string().min(1),
2507
+ aspectRatio: z5.string().optional()
2490
2508
  });
2491
- var SearchFaIconsRequestSchema = z4.object({
2492
- sessionId: z4.string(),
2493
- query: z4.string().min(1),
2494
- first: z4.number().int().positive().optional()
2509
+ var SearchFaIconsRequestSchema = z5.object({
2510
+ sessionId: z5.string(),
2511
+ query: z5.string().min(1),
2512
+ first: z5.number().int().positive().optional()
2495
2513
  });
2496
- var PickFaIconRequestSchema = z4.object({
2497
- sessionId: z4.string(),
2498
- fontAwesomeId: z4.string().min(1),
2499
- fontAwesomeStyle: z4.string().optional()
2514
+ var PickFaIconRequestSchema = z5.object({
2515
+ sessionId: z5.string(),
2516
+ fontAwesomeId: z5.string().min(1),
2517
+ fontAwesomeStyle: z5.string().optional()
2500
2518
  });
2501
- var CreateFollowUpTaskRequestSchema = z4.object({
2502
- sessionId: z4.string(),
2503
- title: z4.string().min(1),
2519
+ var CreateFollowUpTaskRequestSchema = z5.object({
2520
+ sessionId: z5.string(),
2521
+ title: z5.string().min(1),
2504
2522
  description: cardDescription,
2505
- plan: z4.string().optional(),
2506
- storyPointValue: z4.number().int().positive().optional()
2523
+ plan: z5.string().optional(),
2524
+ storyPointValue: z5.number().int().positive().optional()
2507
2525
  });
2508
- var AddDependencyRequestSchema = z4.object({
2509
- sessionId: z4.string(),
2510
- dependsOnSlugOrId: z4.string()
2526
+ var AddDependencyRequestSchema = z5.object({
2527
+ sessionId: z5.string(),
2528
+ dependsOnSlugOrId: z5.string()
2511
2529
  });
2512
- var RemoveDependencyRequestSchema = z4.object({
2513
- sessionId: z4.string(),
2514
- dependsOnSlugOrId: z4.string()
2530
+ var RemoveDependencyRequestSchema = z5.object({
2531
+ sessionId: z5.string(),
2532
+ dependsOnSlugOrId: z5.string()
2515
2533
  });
2516
- var CreateSuggestionRequestSchema = z4.object({
2517
- sessionId: z4.string(),
2518
- title: z4.string().min(1),
2534
+ var CreateSuggestionRequestSchema = z5.object({
2535
+ sessionId: z5.string(),
2536
+ title: z5.string().min(1),
2519
2537
  description: cardDescription,
2520
- tagNames: z4.array(z4.string()).optional()
2538
+ tagNames: z5.array(z5.string()).optional()
2521
2539
  });
2522
- var VoteSuggestionRequestSchema = z4.object({
2523
- sessionId: z4.string(),
2524
- suggestionId: z4.string(),
2525
- value: z4.union([z4.literal(1), z4.literal(-1)])
2540
+ var VoteSuggestionRequestSchema = z5.object({
2541
+ sessionId: z5.string(),
2542
+ suggestionId: z5.string(),
2543
+ value: z5.union([z5.literal(1), z5.literal(-1)])
2526
2544
  });
2527
- var TriggerIdentificationRequestSchema = z4.object({
2528
- sessionId: z4.string()
2545
+ var TriggerIdentificationRequestSchema = z5.object({
2546
+ sessionId: z5.string()
2529
2547
  });
2530
- var HandoffToImplementerRequestSchema = z4.object({
2531
- sessionId: z4.string(),
2548
+ var HandoffToImplementerRequestSchema = z5.object({
2549
+ sessionId: z5.string(),
2532
2550
  // Optional difficulty sizing — sets the task's story points before resolving
2533
2551
  // the matched implementer agent. Omit to hand off using the task's current
2534
2552
  // story points (or the project's default task agent when unsized).
2535
- storyPoints: z4.number().int().positive().optional(),
2553
+ storyPoints: z5.number().int().positive().optional(),
2536
2554
  // Optional kickoff note posted to the task chat alongside the handoff notice.
2537
- message: z4.string().optional()
2555
+ message: z5.string().optional()
2538
2556
  });
2539
- var SubmitCodeReviewResultRequestSchema = z4.object({
2540
- sessionId: z4.string(),
2541
- approved: z4.boolean(),
2542
- content: z4.string(),
2557
+ var SubmitCodeReviewResultRequestSchema = z5.object({
2558
+ sessionId: z5.string(),
2559
+ approved: z5.boolean(),
2560
+ content: z5.string(),
2543
2561
  // Canonical risk level the reviewer assigned to this change. Required on every
2544
2562
  // verdict — the reviewer must judge it. Applied authoritatively server-side
2545
2563
  // (may raise OR lower an already-set value; the reviewer has that authority).
@@ -2547,195 +2565,199 @@ var SubmitCodeReviewResultRequestSchema = z4.object({
2547
2565
  // The commit SHA the reviewer actually reviewed. When present, the verdict is
2548
2566
  // rejected unless the task is still at this SHA (guards against a late
2549
2567
  // old-SHA verdict overwriting a newer review cycle).
2550
- reviewedSha: z4.string().optional()
2568
+ reviewedSha: z5.string().optional()
2551
2569
  });
2552
- var CycleCodingAgentKeyRequestSchema = z4.object({
2553
- sessionId: z4.string(),
2554
- rateLimitType: z4.string(),
2555
- resetsAt: z4.string().optional()
2556
- });
2557
- var PostChildChatMessageRequestSchema = z4.object({
2558
- sessionId: z4.string(),
2559
- childTaskId: z4.string(),
2560
- message: z4.string().min(1)
2570
+ var CycleCodingAgentKeyRequestSchema = z5.object({
2571
+ sessionId: z5.string(),
2572
+ rateLimitType: z5.string(),
2573
+ resetsAt: z5.string().optional(),
2574
+ // The key the pod is actually running (CONVEYOR_CODING_AGENT_KEY_ID). Wins
2575
+ // over the session's attribution stamp after owner validation; optional so
2576
+ // older agents keep the session fallback.
2577
+ codingAgentKeyId: z5.string().optional()
2578
+ });
2579
+ var PostChildChatMessageRequestSchema = z5.object({
2580
+ sessionId: z5.string(),
2581
+ childTaskId: z5.string(),
2582
+ message: z5.string().min(1)
2561
2583
  });
2562
- var UpdateChildStatusRequestSchema = z4.object({
2563
- sessionId: z4.string(),
2564
- childTaskId: z4.string(),
2565
- status: z4.string()
2584
+ var UpdateChildStatusRequestSchema = z5.object({
2585
+ sessionId: z5.string(),
2586
+ childTaskId: z5.string(),
2587
+ status: z5.string()
2566
2588
  });
2567
- var GetAgentStatusRequestSchema = z4.object({
2568
- taskId: z4.string()
2589
+ var GetAgentStatusRequestSchema = z5.object({
2590
+ taskId: z5.string()
2569
2591
  });
2570
- var GetUiCliHistoryRequestSchema = z4.object({
2571
- taskId: z4.string()
2592
+ var GetUiCliHistoryRequestSchema = z5.object({
2593
+ taskId: z5.string()
2572
2594
  });
2573
- var GetActivePtySessionRequestSchema = z4.object({
2574
- taskId: z4.string()
2595
+ var GetActivePtySessionRequestSchema = z5.object({
2596
+ taskId: z5.string()
2575
2597
  });
2576
- var ListActivePtySessionsRequestSchema = z4.object({
2577
- taskId: z4.string()
2598
+ var ListActivePtySessionsRequestSchema = z5.object({
2599
+ taskId: z5.string()
2578
2600
  });
2579
- var SendSoftStopRequestSchema = z4.object({
2580
- taskId: z4.string()
2601
+ var SendSoftStopRequestSchema = z5.object({
2602
+ taskId: z5.string()
2581
2603
  });
2582
- var StopTaskSessionRequestSchema = z4.object({
2583
- taskId: z4.string(),
2584
- sessionId: z4.string()
2604
+ var StopTaskSessionRequestSchema = z5.object({
2605
+ taskId: z5.string(),
2606
+ sessionId: z5.string()
2585
2607
  });
2586
- var FlushTaskQueueRequestSchema = z4.object({
2587
- taskId: z4.string(),
2588
- softStop: z4.boolean().optional()
2608
+ var FlushTaskQueueRequestSchema = z5.object({
2609
+ taskId: z5.string(),
2610
+ softStop: z5.boolean().optional()
2589
2611
  });
2590
- var CancelTaskQueuedMessageRequestSchema = z4.object({
2591
- taskId: z4.string(),
2592
- messageId: z4.string()
2612
+ var CancelTaskQueuedMessageRequestSchema = z5.object({
2613
+ taskId: z5.string(),
2614
+ messageId: z5.string()
2593
2615
  });
2594
- var FlushSingleQueuedMessageRequestSchema = z4.object({
2595
- taskId: z4.string(),
2596
- messageId: z4.string(),
2597
- softStop: z4.boolean().optional()
2616
+ var FlushSingleQueuedMessageRequestSchema = z5.object({
2617
+ taskId: z5.string(),
2618
+ messageId: z5.string(),
2619
+ softStop: z5.boolean().optional()
2598
2620
  });
2599
- var AnswerAgentQuestionRequestSchema = z4.object({
2600
- taskId: z4.string(),
2601
- requestId: z4.string(),
2602
- answers: z4.record(z4.string(), z4.string())
2621
+ var AnswerAgentQuestionRequestSchema = z5.object({
2622
+ taskId: z5.string(),
2623
+ requestId: z5.string(),
2624
+ answers: z5.record(z5.string(), z5.string())
2603
2625
  });
2604
- var ClearAgentTodosRequestSchema = z4.object({
2605
- taskId: z4.string()
2626
+ var ClearAgentTodosRequestSchema = z5.object({
2627
+ taskId: z5.string()
2606
2628
  });
2607
- var AgentQuestionOptionSchema = z4.object({
2608
- label: z4.string(),
2609
- description: z4.string(),
2610
- preview: z4.string().optional()
2629
+ var AgentQuestionOptionSchema = z5.object({
2630
+ label: z5.string(),
2631
+ description: z5.string(),
2632
+ preview: z5.string().optional()
2611
2633
  });
2612
- var AgentQuestionSchema = z4.object({
2613
- question: z4.string(),
2614
- header: z4.string(),
2615
- options: z4.array(AgentQuestionOptionSchema),
2616
- multiSelect: z4.boolean().optional()
2634
+ var AgentQuestionSchema = z5.object({
2635
+ question: z5.string(),
2636
+ header: z5.string(),
2637
+ options: z5.array(AgentQuestionOptionSchema),
2638
+ multiSelect: z5.boolean().optional()
2617
2639
  });
2618
- var AskUserQuestionRequestSchema = z4.object({
2619
- sessionId: z4.string(),
2620
- question: z4.string().min(1),
2621
- requestId: z4.string().min(1),
2622
- questions: z4.array(AgentQuestionSchema).min(1)
2640
+ var AskUserQuestionRequestSchema = z5.object({
2641
+ sessionId: z5.string(),
2642
+ question: z5.string().min(1),
2643
+ requestId: z5.string().min(1),
2644
+ questions: z5.array(AgentQuestionSchema).min(1)
2623
2645
  });
2624
- var PostAgentMessageRequestSchema = z4.object({
2625
- sessionId: z4.string().min(1),
2626
- content: z4.string(),
2627
- milestone: z4.enum(["plan_ready", "implementation_complete", "blocked"]).optional()
2646
+ var PostAgentMessageRequestSchema = z5.object({
2647
+ sessionId: z5.string().min(1),
2648
+ content: z5.string(),
2649
+ milestone: z5.enum(["plan_ready", "implementation_complete", "blocked"]).optional()
2628
2650
  });
2629
- var EmitAgentEventRequestSchema = z4.object({
2630
- sessionId: z4.string(),
2631
- events: z4.array(AgentEventSchema).max(500)
2651
+ var EmitAgentEventRequestSchema = z5.object({
2652
+ sessionId: z5.string(),
2653
+ events: z5.array(AgentEventSchema).max(500)
2632
2654
  });
2633
- var RefreshGithubTokenRequestSchema = z4.object({
2634
- sessionId: z4.string(),
2635
- forceFresh: z4.boolean().optional()
2655
+ var RefreshGithubTokenRequestSchema = z5.object({
2656
+ sessionId: z5.string(),
2657
+ forceFresh: z5.boolean().optional()
2636
2658
  });
2637
- var ReportCredentialFailureRequestSchema = z4.object({
2638
- sessionId: z4.string(),
2639
- error: z4.string().max(2e3).optional(),
2640
- tokenShape: z4.string().max(500).optional(),
2641
- healed: z4.boolean().optional()
2659
+ var ReportCredentialFailureRequestSchema = z5.object({
2660
+ sessionId: z5.string(),
2661
+ error: z5.string().max(2e3).optional(),
2662
+ tokenShape: z5.string().max(500).optional(),
2663
+ healed: z5.boolean().optional()
2642
2664
  });
2643
- var ReportReviewSpawnFailureRequestSchema = z4.object({
2644
- sessionId: z4.string(),
2645
- reviewSessionId: z4.string(),
2646
- error: z4.string().max(2e3).optional()
2665
+ var ReportReviewSpawnFailureRequestSchema = z5.object({
2666
+ sessionId: z5.string(),
2667
+ reviewSessionId: z5.string(),
2668
+ error: z5.string().max(2e3).optional()
2647
2669
  });
2648
2670
  var ReportBuilderSpawnFailureRequestSchema = ReportReviewSpawnFailureRequestSchema.omit({
2649
2671
  reviewSessionId: true
2650
- }).extend({ buildSessionId: z4.string() });
2651
- var SpawnTaskSessionRequestSchema = z4.object({
2652
- taskId: z4.string(),
2653
- kind: z4.enum(["tui", "shell"])
2672
+ }).extend({ buildSessionId: z5.string() });
2673
+ var SpawnTaskSessionRequestSchema = z5.object({
2674
+ taskId: z5.string(),
2675
+ kind: z5.enum(["tui", "shell"])
2654
2676
  });
2655
- var StartCodeReviewRequestSchema = z4.object({
2656
- taskId: z4.string(),
2657
- force: z4.boolean().optional()
2677
+ var StartCodeReviewRequestSchema = z5.object({
2678
+ taskId: z5.string(),
2679
+ force: z5.boolean().optional()
2658
2680
  });
2659
- var StopCodeReviewRequestSchema = z4.object({
2660
- taskId: z4.string()
2681
+ var StopCodeReviewRequestSchema = z5.object({
2682
+ taskId: z5.string()
2661
2683
  });
2662
- var ReportSessionSpawnFailureRequestSchema = z4.object({
2663
- sessionId: z4.string(),
2664
- spawnedSessionId: z4.string(),
2665
- error: z4.string().max(2e3).optional()
2684
+ var ReportSessionSpawnFailureRequestSchema = z5.object({
2685
+ sessionId: z5.string(),
2686
+ spawnedSessionId: z5.string(),
2687
+ error: z5.string().max(2e3).optional()
2666
2688
  });
2667
- var RefreshGithubTokenResponseSchema = z4.object({
2668
- token: z4.string()
2689
+ var RefreshGithubTokenResponseSchema = z5.object({
2690
+ token: z5.string()
2669
2691
  });
2670
2692
  var PTY_FRAME_MAX_CHARS = 256 * 1024;
2671
2693
  var PTY_MAX_DIMENSION = 1e3;
2672
- var PtyOutputRequestSchema = z4.object({
2673
- sessionId: z4.string(),
2674
- data: z4.string().max(PTY_FRAME_MAX_CHARS),
2675
- cols: z4.number().int().positive().max(PTY_MAX_DIMENSION).optional(),
2676
- rows: z4.number().int().positive().max(PTY_MAX_DIMENSION).optional()
2694
+ var PtyOutputRequestSchema = z5.object({
2695
+ sessionId: z5.string(),
2696
+ data: z5.string().max(PTY_FRAME_MAX_CHARS),
2697
+ cols: z5.number().int().positive().max(PTY_MAX_DIMENSION).optional(),
2698
+ rows: z5.number().int().positive().max(PTY_MAX_DIMENSION).optional()
2677
2699
  });
2678
- var PtyEndedRequestSchema = z4.object({
2679
- sessionId: z4.string()
2700
+ var PtyEndedRequestSchema = z5.object({
2701
+ sessionId: z5.string()
2680
2702
  });
2681
- var PtyInputRequestSchema = z4.object({
2682
- sessionId: z4.string(),
2683
- data: z4.string().max(PTY_FRAME_MAX_CHARS)
2703
+ var PtyInputRequestSchema = z5.object({
2704
+ sessionId: z5.string(),
2705
+ data: z5.string().max(PTY_FRAME_MAX_CHARS)
2684
2706
  });
2685
- var PtyResizeRequestSchema = z4.object({
2686
- sessionId: z4.string(),
2687
- cols: z4.number().int().positive().max(PTY_MAX_DIMENSION),
2688
- rows: z4.number().int().positive().max(PTY_MAX_DIMENSION)
2707
+ var PtyResizeRequestSchema = z5.object({
2708
+ sessionId: z5.string(),
2709
+ cols: z5.number().int().positive().max(PTY_MAX_DIMENSION),
2710
+ rows: z5.number().int().positive().max(PTY_MAX_DIMENSION)
2689
2711
  });
2690
- var PtyAttachRequestSchema = z4.object({
2691
- sessionId: z4.string()
2712
+ var PtyAttachRequestSchema = z5.object({
2713
+ sessionId: z5.string()
2692
2714
  });
2693
- var ReportPtyStreamRequestSchema = z4.object({
2694
- sessionId: z4.string(),
2695
- port: z4.number().int().positive().max(65535).nullable()
2715
+ var ReportPtyStreamRequestSchema = z5.object({
2716
+ sessionId: z5.string(),
2717
+ port: z5.number().int().positive().max(65535).nullable()
2696
2718
  });
2697
- var ReportPtyInputRequestSchema = z4.object({
2698
- sessionId: z4.string()
2719
+ var ReportPtyInputRequestSchema = z5.object({
2720
+ sessionId: z5.string()
2699
2721
  });
2700
- var GetPtyStreamEndpointRequestSchema = z4.object({
2701
- sessionId: z4.string()
2722
+ var GetPtyStreamEndpointRequestSchema = z5.object({
2723
+ sessionId: z5.string()
2702
2724
  });
2703
- var CreatePRResponseSchema = z4.object({
2704
- prNumber: z4.number().int().positive(),
2705
- prUrl: z4.string().url(),
2725
+ var CreatePRResponseSchema = z5.object({
2726
+ prNumber: z5.number().int().positive(),
2727
+ prUrl: z5.string().url(),
2706
2728
  /** Advisory glossary-upkeep note derived from the PR's changed files matched
2707
2729
  * against tag contextPaths — rendered into the tool result, never stored. */
2708
- glossaryNote: z4.string().optional()
2730
+ glossaryNote: z5.string().optional()
2709
2731
  });
2710
- var PostToChatResponseSchema = z4.object({
2711
- messageId: z4.string()
2732
+ var PostToChatResponseSchema = z5.object({
2733
+ messageId: z5.string()
2712
2734
  });
2713
- var UpdateTaskStatusResponseSchema = z4.object({
2714
- taskId: z4.string(),
2715
- status: z4.string()
2735
+ var UpdateTaskStatusResponseSchema = z5.object({
2736
+ taskId: z5.string(),
2737
+ status: z5.string()
2716
2738
  });
2717
- var StoreSessionIdResponseSchema = z4.object({
2718
- success: z4.boolean()
2739
+ var StoreSessionIdResponseSchema = z5.object({
2740
+ success: z5.boolean()
2719
2741
  });
2720
- var HeartbeatResponseSchema = z4.object({
2721
- acknowledged: z4.boolean()
2742
+ var HeartbeatResponseSchema = z5.object({
2743
+ acknowledged: z5.boolean()
2722
2744
  });
2723
- var SessionStartResponseSchema = z4.object({
2724
- sessionId: z4.string(),
2725
- startedAt: z4.string()
2745
+ var SessionStartResponseSchema = z5.object({
2746
+ sessionId: z5.string(),
2747
+ startedAt: z5.string()
2726
2748
  });
2727
- var SessionStopResponseSchema = z4.object({
2728
- sessionId: z4.string(),
2729
- stoppedAt: z4.string()
2749
+ var SessionStopResponseSchema = z5.object({
2750
+ sessionId: z5.string(),
2751
+ stoppedAt: z5.string()
2730
2752
  });
2731
- var DeleteSubtaskResponseSchema = z4.object({
2732
- deleted: z4.boolean()
2753
+ var DeleteSubtaskResponseSchema = z5.object({
2754
+ deleted: z5.boolean()
2733
2755
  });
2734
- var ParkOnCheckResultRequestSchema = z5.object({
2735
- sessionId: z5.string(),
2736
- sha: z5.string().regex(/^[0-9a-f]{7,40}$/i).optional(),
2737
- prNumber: z5.number().int().positive().optional(),
2738
- timeoutMinutes: z5.number().int().min(1).max(MAX_CI_WAIT_TIMEOUT_MINUTES).optional()
2756
+ var ParkOnCheckResultRequestSchema = z6.object({
2757
+ sessionId: z6.string(),
2758
+ sha: z6.string().regex(/^[0-9a-f]{7,40}$/i).optional(),
2759
+ prNumber: z6.number().int().positive().optional(),
2760
+ timeoutMinutes: z6.number().int().min(1).max(MAX_CI_WAIT_TIMEOUT_MINUTES).optional()
2739
2761
  });
2740
2762
  var GIT_BRANCH_NAME_MAX = 255;
2741
2763
  var GIT_BRANCH_NAME_MESSAGE = "Invalid git branch name \u2014 use only letters, numbers, '.', '_', '/' and '-', starting with a letter or number, with no '..', '@{' or '//', and no trailing '/', '-', '.' or '.lock'";
@@ -2749,97 +2771,97 @@ function isValidGitBranchName(name) {
2749
2771
  if (name.endsWith(".") || name.endsWith(".lock")) return false;
2750
2772
  return true;
2751
2773
  }
2752
- var cardDescription2 = z6.string().max(CARD_DESCRIPTION_MAX, CARD_DESCRIPTION_LIMIT_MESSAGE).optional();
2753
- var ListAccessibleProjectsRequestSchema = z6.object({
2754
- pageSize: z6.number().int().positive().max(100).optional().default(100)
2774
+ var cardDescription2 = z7.string().max(CARD_DESCRIPTION_MAX, CARD_DESCRIPTION_LIMIT_MESSAGE).optional();
2775
+ var ListAccessibleProjectsRequestSchema = z7.object({
2776
+ pageSize: z7.number().int().positive().max(100).optional().default(100)
2755
2777
  });
2756
- var ListProjectTasksRequestSchema = z6.object({
2757
- projectId: z6.string(),
2758
- status: z6.string().optional(),
2778
+ var ListProjectTasksRequestSchema = z7.object({
2779
+ projectId: z7.string(),
2780
+ status: z7.string().optional(),
2759
2781
  // Card types to include. Omitted/empty → defaults to ["task"] in the handler
2760
2782
  // (mirrors searchProjectTasks) so listing doesn't surface incidents/suggestions
2761
2783
  // unless asked. Enum validation lives at the MCP tool layer.
2762
- typeFilters: z6.array(z6.string()).optional(),
2763
- assigneeId: z6.string().optional(),
2764
- unassigned: z6.boolean().optional(),
2784
+ typeFilters: z7.array(z7.string()).optional(),
2785
+ assigneeId: z7.string().optional(),
2786
+ unassigned: z7.boolean().optional(),
2765
2787
  // Scope to a sub-project board when provided. Unlike the board layer's `?? null`
2766
2788
  // semantics, agents default to seeing the whole project when omitted.
2767
- subProjectId: z6.string().nullable().optional(),
2789
+ subProjectId: z7.string().nullable().optional(),
2768
2790
  // Plain equality on the on-hold flag: true = only parked cards, false =
2769
2791
  // exclude them, omitted = both. Deliberately NOT the board's
2770
2792
  // includeOnHold/surfaceActiveWork bucketing — an agent sweeping a backlog
2771
2793
  // needs the raw column, not a column projection.
2772
- onHold: z6.boolean().optional(),
2773
- limit: z6.number().int().positive().optional().default(50)
2794
+ onHold: z7.boolean().optional(),
2795
+ limit: z7.number().int().positive().optional().default(50)
2774
2796
  }).refine((p) => !(p.unassigned && p.assigneeId), {
2775
2797
  message: "Pass either assigneeId or unassigned, not both"
2776
2798
  });
2777
- var GetProjectTaskRequestSchema = z6.object({
2778
- projectId: z6.string(),
2779
- taskId: z6.string()
2799
+ var GetProjectTaskRequestSchema = z7.object({
2800
+ projectId: z7.string(),
2801
+ taskId: z7.string()
2780
2802
  });
2781
- var SearchProjectTasksRequestSchema = z6.object({
2782
- projectId: z6.string(),
2803
+ var SearchProjectTasksRequestSchema = z7.object({
2804
+ projectId: z7.string(),
2783
2805
  // Tag names, matched case-insensitively against the project glossary.
2784
- tagNames: z6.array(z6.string()).optional(),
2806
+ tagNames: z7.array(z7.string()).optional(),
2785
2807
  // How to combine tagNames: "any" (default) = carries at least one,
2786
2808
  // "all" = carries every one.
2787
- tagMatch: z6.enum(["any", "all"]).optional(),
2809
+ tagMatch: z7.enum(["any", "all"]).optional(),
2788
2810
  // Expand each named tag to its descendants in the tag DAG before matching,
2789
2811
  // so a parent tag sweeps its whole area. Default false.
2790
- includeChildTags: z6.boolean().optional(),
2791
- searchQuery: z6.string().optional(),
2792
- statusFilters: z6.array(z6.string()).optional(),
2812
+ includeChildTags: z7.boolean().optional(),
2813
+ searchQuery: z7.string().optional(),
2814
+ statusFilters: z7.array(z7.string()).optional(),
2793
2815
  // Card types to include. Omitted/empty → defaults to ["task"] in the handler so
2794
2816
  // search doesn't surface incidents/suggestions unless asked. Enum validation lives
2795
2817
  // at the MCP tool layer (mirrors statusFilters).
2796
- typeFilters: z6.array(z6.string()).optional(),
2797
- assigneeId: z6.string().optional(),
2798
- unassigned: z6.boolean().optional(),
2818
+ typeFilters: z7.array(z7.string()).optional(),
2819
+ assigneeId: z7.string().optional(),
2820
+ unassigned: z7.boolean().optional(),
2799
2821
  // Scope to a sub-project board when provided. Unlike the board layer's `?? null`
2800
2822
  // semantics, agents default to seeing the whole project when omitted.
2801
- subProjectId: z6.string().nullable().optional(),
2802
- limit: z6.number().int().positive().optional().default(20)
2823
+ subProjectId: z7.string().nullable().optional(),
2824
+ limit: z7.number().int().positive().optional().default(20)
2803
2825
  }).refine((p) => !(p.unassigned && p.assigneeId), {
2804
2826
  message: "Pass either assigneeId or unassigned, not both"
2805
2827
  });
2806
- var ListProjectTagsRequestSchema = z6.object({
2807
- projectId: z6.string(),
2828
+ var ListProjectTagsRequestSchema = z7.object({
2829
+ projectId: z7.string(),
2808
2830
  /** "summary" (default) omits inline context links; "full" includes them. */
2809
- detail: z6.enum(["summary", "full"]).optional()
2831
+ detail: z7.enum(["summary", "full"]).optional()
2810
2832
  });
2811
- var GetProjectTagRequestSchema = z6.object({
2812
- projectId: z6.string(),
2833
+ var GetProjectTagRequestSchema = z7.object({
2834
+ projectId: z7.string(),
2813
2835
  /** Tag id or exact (case-insensitive) tag name. */
2814
- tag: z6.string().min(1).max(100)
2836
+ tag: z7.string().min(1).max(100)
2815
2837
  });
2816
- var ListProjectTagAttachmentsRequestSchema = z6.object({
2817
- projectId: z6.string(),
2838
+ var ListProjectTagAttachmentsRequestSchema = z7.object({
2839
+ projectId: z7.string(),
2818
2840
  /** Tag id or exact (case-insensitive) tag name. */
2819
- tag: z6.string().min(1).max(100),
2820
- limit: z6.number().int().min(1).max(60).optional(),
2821
- offset: z6.number().int().min(0).optional()
2841
+ tag: z7.string().min(1).max(100),
2842
+ limit: z7.number().int().min(1).max(60).optional(),
2843
+ offset: z7.number().int().min(0).optional()
2822
2844
  });
2823
- var SetProjectFileTagsRequestSchema = z6.object({
2824
- projectId: z6.string(),
2825
- taskId: z6.string(),
2826
- fileId: z6.string(),
2827
- tags: z6.array(z6.string().min(1).max(MAX_FILE_TAG_LENGTH)).max(MAX_FILE_TAGS),
2828
- requestingUserId: z6.string().optional()
2845
+ var SetProjectFileTagsRequestSchema = z7.object({
2846
+ projectId: z7.string(),
2847
+ taskId: z7.string(),
2848
+ fileId: z7.string(),
2849
+ tags: z7.array(z7.string().min(1).max(MAX_FILE_TAG_LENGTH)).max(MAX_FILE_TAGS),
2850
+ requestingUserId: z7.string().optional()
2829
2851
  });
2830
- var GetProjectSummaryRequestSchema = z6.object({
2831
- projectId: z6.string()
2852
+ var GetProjectSummaryRequestSchema = z7.object({
2853
+ projectId: z7.string()
2832
2854
  });
2833
- var GetProjectOnboardingStatusRequestSchema = z6.object({
2834
- projectId: z6.string()
2855
+ var GetProjectOnboardingStatusRequestSchema = z7.object({
2856
+ projectId: z7.string()
2835
2857
  });
2836
- var GetProjectOnboardingStepRequestSchema = z6.object({
2837
- projectId: z6.string()
2858
+ var GetProjectOnboardingStepRequestSchema = z7.object({
2859
+ projectId: z7.string()
2838
2860
  });
2839
- var GetProjectConnectUrlsRequestSchema = z6.object({
2840
- projectId: z6.string()
2861
+ var GetProjectConnectUrlsRequestSchema = z7.object({
2862
+ projectId: z7.string()
2841
2863
  });
2842
- var conveyorCapabilitySchema = z6.enum([
2864
+ var conveyorCapabilitySchema = z7.enum([
2843
2865
  "read",
2844
2866
  "create",
2845
2867
  "update",
@@ -2847,493 +2869,493 @@ var conveyorCapabilitySchema = z6.enum([
2847
2869
  "files",
2848
2870
  "build"
2849
2871
  ]);
2850
- var GetConnectionContextRequestSchema = z6.object({
2851
- projectId: z6.string(),
2872
+ var GetConnectionContextRequestSchema = z7.object({
2873
+ projectId: z7.string(),
2852
2874
  // Optional board scope (CONVEYOR_SUBPROJECT_ID). Validated to belong to the
2853
2875
  // project in the handler; an invalid/foreign id is reported, not silently
2854
2876
  // dropped, so a mis-scoped connection is never presented as board-specific.
2855
- subProjectId: z6.string().nullable().optional()
2877
+ subProjectId: z7.string().nullable().optional()
2856
2878
  });
2857
- var VerifyConnectionRequestSchema = z6.object({
2858
- projectId: z6.string(),
2859
- subProjectId: z6.string().nullable().optional(),
2860
- intendedActions: z6.array(conveyorCapabilitySchema).optional()
2879
+ var VerifyConnectionRequestSchema = z7.object({
2880
+ projectId: z7.string(),
2881
+ subProjectId: z7.string().nullable().optional(),
2882
+ intendedActions: z7.array(conveyorCapabilitySchema).optional()
2861
2883
  });
2862
- var ListAccessibleSubprojectsRequestSchema = z6.object({
2863
- projectId: z6.string()
2884
+ var ListAccessibleSubprojectsRequestSchema = z7.object({
2885
+ projectId: z7.string()
2864
2886
  });
2865
- var CreateProjectTaskRequestSchema = z6.object({
2866
- projectId: z6.string(),
2867
- title: z6.string().min(1),
2887
+ var CreateProjectTaskRequestSchema = z7.object({
2888
+ projectId: z7.string(),
2889
+ title: z7.string().min(1),
2868
2890
  description: cardDescription2,
2869
- plan: z6.string().optional(),
2870
- status: z6.string().optional(),
2891
+ plan: z7.string().optional(),
2892
+ status: z7.string().optional(),
2871
2893
  // Assign to a sub-project board. Validated to belong to `projectId` in the handler.
2872
- subProjectId: z6.string().nullable().optional(),
2894
+ subProjectId: z7.string().nullable().optional(),
2873
2895
  // Priority value. Resolved to the project's configured Priority row in the
2874
2896
  // handler, which rejects an unconfigured value before the card is written.
2875
- priorityValue: z6.number().int().positive().optional(),
2876
- requestingUserId: z6.string().optional()
2897
+ priorityValue: z7.number().int().positive().optional(),
2898
+ requestingUserId: z7.string().optional()
2877
2899
  });
2878
- var SetProjectTaskParentRequestSchema = z6.object({
2879
- projectId: z6.string(),
2900
+ var SetProjectTaskParentRequestSchema = z7.object({
2901
+ projectId: z7.string(),
2880
2902
  /** Card to move — id or slug. */
2881
- taskId: z6.string().min(1),
2903
+ taskId: z7.string().min(1),
2882
2904
  /** New parent (id or slug), or null to detach. */
2883
- parentTaskId: z6.string().min(1).nullable(),
2884
- ordinal: z6.number().int().nonnegative().optional(),
2885
- followParentStatus: z6.boolean().optional(),
2886
- requestingUserId: z6.string().optional()
2905
+ parentTaskId: z7.string().min(1).nullable(),
2906
+ ordinal: z7.number().int().nonnegative().optional(),
2907
+ followParentStatus: z7.boolean().optional(),
2908
+ requestingUserId: z7.string().optional()
2887
2909
  }).strict();
2888
- var UpdateProjectTaskRequestSchema = z6.object({
2889
- projectId: z6.string(),
2890
- taskId: z6.string(),
2891
- title: z6.string().optional(),
2910
+ var UpdateProjectTaskRequestSchema = z7.object({
2911
+ projectId: z7.string(),
2912
+ taskId: z7.string(),
2913
+ title: z7.string().optional(),
2892
2914
  description: cardDescription2,
2893
- plan: z6.string().optional(),
2915
+ plan: z7.string().optional(),
2894
2916
  // Enum validation lives at the MCP tool layer (mirrors createProjectTask);
2895
2917
  // the handler routes through the shared updateStatus core (InProgress
2896
2918
  // dependency check + cleanup/board/Slack side effects), not the stricter
2897
2919
  // card-type-validating path the Socket.IO updateTaskStatus mutation uses.
2898
- status: z6.string().optional(),
2920
+ status: z7.string().optional(),
2899
2921
  // Canonical risk level, or null to clear. Resolved to the project's
2900
2922
  // configured Risk row (by rank) in the handler.
2901
2923
  risk: riskLevelSchema.nullable().optional(),
2902
2924
  // Story-point value, or null to clear. Resolved to the project's configured
2903
2925
  // StoryPoint row in the handler, which rejects an unconfigured value.
2904
- storyPointValue: z6.number().int().positive().nullable().optional(),
2926
+ storyPointValue: z7.number().int().positive().nullable().optional(),
2905
2927
  // Priority value, or null to clear. Resolved to the project's configured
2906
2928
  // Priority row in the handler, which rejects an unconfigured value.
2907
- priorityValue: z6.number().int().positive().nullable().optional(),
2908
- assignedUserId: z6.string().nullish(),
2929
+ priorityValue: z7.number().int().positive().nullable().optional(),
2930
+ assignedUserId: z7.string().nullish(),
2909
2931
  // Move to a different sub-project board, or null to move to the parent board.
2910
2932
  // Validated to belong to `projectId` in the handler.
2911
- subProjectId: z6.string().nullable().optional(),
2933
+ subProjectId: z7.string().nullable().optional(),
2912
2934
  // Record the task's ACTUAL working branch (e.g. a locally-driven pack's
2913
2935
  // branch, so identification never mints a competing name and pack-child
2914
2936
  // merge handling matches reality), or null to detach. Guarded in the
2915
2937
  // handler: the ref must exist on origin and no live workspace may be bound
2916
2938
  // to a different branch.
2917
- githubBranch: z6.string().min(1).max(GIT_BRANCH_NAME_MAX).refine(isValidGitBranchName, { message: GIT_BRANCH_NAME_MESSAGE }).nullable().optional(),
2939
+ githubBranch: z7.string().min(1).max(GIT_BRANCH_NAME_MAX).refine(isValidGitBranchName, { message: GIT_BRANCH_NAME_MESSAGE }).nullable().optional(),
2918
2940
  // Park the card on hold (true) or return it to the active board (false).
2919
2941
  // The handler mirrors the web path's two side effects: a board re-bucket
2920
2942
  // event, and demotion to Open when an active-work card is parked.
2921
- onHold: z6.boolean().optional(),
2922
- requestingUserId: z6.string().optional()
2943
+ onHold: z7.boolean().optional(),
2944
+ requestingUserId: z7.string().optional()
2923
2945
  }).strict().refine(
2924
2946
  (v) => v.title !== void 0 || v.description !== void 0 || v.plan !== void 0 || v.status !== void 0 || v.risk !== void 0 || v.storyPointValue !== void 0 || v.priorityValue !== void 0 || v.assignedUserId !== void 0 || v.subProjectId !== void 0 || v.githubBranch !== void 0 || v.onHold !== void 0,
2925
2947
  {
2926
2948
  message: "update_task requires at least one field to change (title, description, plan, status, risk, storyPointValue, priorityValue, assignedUserId, subProjectId, githubBranch, or onHold)"
2927
2949
  }
2928
2950
  );
2929
- var TransitionProjectTaskStatusRequestSchema = z6.object({
2930
- projectId: z6.string(),
2931
- taskId: z6.string(),
2932
- toStatus: z6.string(),
2933
- expectedFromStatus: z6.string().optional(),
2951
+ var TransitionProjectTaskStatusRequestSchema = z7.object({
2952
+ projectId: z7.string(),
2953
+ taskId: z7.string(),
2954
+ toStatus: z7.string(),
2955
+ expectedFromStatus: z7.string().optional(),
2934
2956
  // Optional raise-only risk to attempt alongside the transition
2935
2957
  // (approve → low, request_changes → medium by default).
2936
2958
  risk: riskLevelSchema.optional(),
2937
- requestingUserId: z6.string().optional()
2938
- });
2939
- var MoveProjectCardRequestSchema = z6.object({
2940
- projectId: z6.string(),
2941
- taskId: z6.string(),
2942
- destinationProjectId: z6.string(),
2943
- requestingUserId: z6.string().optional()
2944
- });
2945
- var PostToProjectTaskChatRequestSchema = z6.object({
2946
- projectId: z6.string(),
2947
- taskId: z6.string(),
2948
- content: z6.string(),
2949
- requestingUserId: z6.string().optional()
2950
- });
2951
- var GetProjectTaskCliRequestSchema = z6.object({
2952
- projectId: z6.string(),
2953
- taskId: z6.string(),
2954
- limit: z6.number().int().positive().optional().default(50),
2955
- source: z6.string().optional()
2956
- });
2957
- var GetProjectTaskSessionsRequestSchema = z6.object({
2958
- projectId: z6.string(),
2959
- taskId: z6.string()
2960
- });
2961
- var QueryProjectGcpLogsRequestSchema = z6.object({
2962
- projectId: z6.string(),
2963
- env: z6.enum(["prod", "dev", "claudespace"]).optional(),
2964
- severity: z6.enum(["DEBUG", "INFO", "NOTICE", "WARNING", "ERROR", "CRITICAL", "ALERT", "EMERGENCY"]).optional(),
2965
- services: z6.array(z6.string().min(1).max(200)).max(25).optional(),
2966
- sqlInstances: z6.array(z6.string().min(1).max(200)).max(25).optional(),
2967
- allServices: z6.boolean().optional(),
2968
- search: z6.string().max(256).optional(),
2969
- filter: z6.string().max(2e3).optional(),
2970
- startTime: z6.string().optional(),
2971
- endTime: z6.string().optional(),
2972
- limit: z6.number().int().min(1).max(200).optional().default(50),
2973
- pageToken: z6.string().max(4096).optional(),
2974
- full: z6.boolean().optional()
2975
- });
2976
- var QueryProjectGrafanaLogsRequestSchema = z6.object({
2977
- projectId: z6.string(),
2978
- env: z6.enum(["prod", "dev"]).optional(),
2979
- services: z6.array(z6.string().min(1).max(200)).max(25).optional(),
2980
- level: z6.enum(["debug", "info", "warn", "error", "fatal"]).optional(),
2981
- search: z6.string().max(256).optional(),
2982
- logql: z6.string().max(2e3).optional(),
2983
- startTime: z6.string().optional(),
2984
- endTime: z6.string().optional(),
2985
- limit: z6.number().int().min(1).max(200).optional().default(50)
2986
- });
2987
- var driveFileNameSchema = z6.string().min(1).max(255).regex(/^[^/\\\r\n]+$/, "File names cannot contain slashes or line breaks");
2959
+ requestingUserId: z7.string().optional()
2960
+ });
2961
+ var MoveProjectCardRequestSchema = z7.object({
2962
+ projectId: z7.string(),
2963
+ taskId: z7.string(),
2964
+ destinationProjectId: z7.string(),
2965
+ requestingUserId: z7.string().optional()
2966
+ });
2967
+ var PostToProjectTaskChatRequestSchema = z7.object({
2968
+ projectId: z7.string(),
2969
+ taskId: z7.string(),
2970
+ content: z7.string(),
2971
+ requestingUserId: z7.string().optional()
2972
+ });
2973
+ var GetProjectTaskCliRequestSchema = z7.object({
2974
+ projectId: z7.string(),
2975
+ taskId: z7.string(),
2976
+ limit: z7.number().int().positive().optional().default(50),
2977
+ source: z7.string().optional()
2978
+ });
2979
+ var GetProjectTaskSessionsRequestSchema = z7.object({
2980
+ projectId: z7.string(),
2981
+ taskId: z7.string()
2982
+ });
2983
+ var QueryProjectGcpLogsRequestSchema = z7.object({
2984
+ projectId: z7.string(),
2985
+ env: z7.enum(["prod", "dev", "claudespace"]).optional(),
2986
+ severity: z7.enum(["DEBUG", "INFO", "NOTICE", "WARNING", "ERROR", "CRITICAL", "ALERT", "EMERGENCY"]).optional(),
2987
+ services: z7.array(z7.string().min(1).max(200)).max(25).optional(),
2988
+ sqlInstances: z7.array(z7.string().min(1).max(200)).max(25).optional(),
2989
+ allServices: z7.boolean().optional(),
2990
+ search: z7.string().max(256).optional(),
2991
+ filter: z7.string().max(2e3).optional(),
2992
+ startTime: z7.string().optional(),
2993
+ endTime: z7.string().optional(),
2994
+ limit: z7.number().int().min(1).max(200).optional().default(50),
2995
+ pageToken: z7.string().max(4096).optional(),
2996
+ full: z7.boolean().optional()
2997
+ });
2998
+ var QueryProjectGrafanaLogsRequestSchema = z7.object({
2999
+ projectId: z7.string(),
3000
+ env: z7.enum(["prod", "dev"]).optional(),
3001
+ services: z7.array(z7.string().min(1).max(200)).max(25).optional(),
3002
+ level: z7.enum(["debug", "info", "warn", "error", "fatal"]).optional(),
3003
+ search: z7.string().max(256).optional(),
3004
+ logql: z7.string().max(2e3).optional(),
3005
+ startTime: z7.string().optional(),
3006
+ endTime: z7.string().optional(),
3007
+ limit: z7.number().int().min(1).max(200).optional().default(50)
3008
+ });
3009
+ var driveFileNameSchema = z7.string().min(1).max(255).regex(/^[^/\\\r\n]+$/, "File names cannot contain slashes or line breaks");
2988
3010
  var DRIVE_MAX_CONTENT_CHARS = 1e6;
2989
- var ListProjectDriveFilesRequestSchema = z6.object({
2990
- projectId: z6.string(),
2991
- folderId: z6.string().max(200).optional(),
2992
- search: z6.string().max(200).optional(),
2993
- limit: z6.number().int().min(1).max(200).optional()
2994
- });
2995
- var ReadProjectDriveFileRequestSchema = z6.object({
2996
- projectId: z6.string(),
2997
- fileId: z6.string().min(1).max(200)
2998
- });
2999
- var CreateProjectDriveFileRequestSchema = z6.object({
3000
- projectId: z6.string(),
3011
+ var ListProjectDriveFilesRequestSchema = z7.object({
3012
+ projectId: z7.string(),
3013
+ folderId: z7.string().max(200).optional(),
3014
+ search: z7.string().max(200).optional(),
3015
+ limit: z7.number().int().min(1).max(200).optional()
3016
+ });
3017
+ var ReadProjectDriveFileRequestSchema = z7.object({
3018
+ projectId: z7.string(),
3019
+ fileId: z7.string().min(1).max(200)
3020
+ });
3021
+ var CreateProjectDriveFileRequestSchema = z7.object({
3022
+ projectId: z7.string(),
3001
3023
  name: driveFileNameSchema,
3002
- content: z6.string().max(DRIVE_MAX_CONTENT_CHARS),
3003
- mimeType: z6.string().max(200).optional(),
3004
- folderId: z6.string().max(200).optional()
3005
- });
3006
- var UpdateProjectDriveFileRequestSchema = z6.object({
3007
- projectId: z6.string(),
3008
- fileId: z6.string().min(1).max(200),
3009
- content: z6.string().max(DRIVE_MAX_CONTENT_CHARS),
3010
- mimeType: z6.string().max(200).optional()
3011
- });
3012
- var DeleteProjectDriveFileRequestSchema = z6.object({
3013
- projectId: z6.string(),
3014
- fileId: z6.string().min(1).max(200)
3015
- });
3016
- var CreateProjectDriveFolderRequestSchema = z6.object({
3017
- projectId: z6.string(),
3024
+ content: z7.string().max(DRIVE_MAX_CONTENT_CHARS),
3025
+ mimeType: z7.string().max(200).optional(),
3026
+ folderId: z7.string().max(200).optional()
3027
+ });
3028
+ var UpdateProjectDriveFileRequestSchema = z7.object({
3029
+ projectId: z7.string(),
3030
+ fileId: z7.string().min(1).max(200),
3031
+ content: z7.string().max(DRIVE_MAX_CONTENT_CHARS),
3032
+ mimeType: z7.string().max(200).optional()
3033
+ });
3034
+ var DeleteProjectDriveFileRequestSchema = z7.object({
3035
+ projectId: z7.string(),
3036
+ fileId: z7.string().min(1).max(200)
3037
+ });
3038
+ var CreateProjectDriveFolderRequestSchema = z7.object({
3039
+ projectId: z7.string(),
3018
3040
  name: driveFileNameSchema,
3019
- folderId: z6.string().max(200).optional()
3041
+ folderId: z7.string().max(200).optional()
3020
3042
  });
3021
- var StartProjectBuildRequestSchema = z6.object({
3022
- projectId: z6.string(),
3023
- taskId: z6.string(),
3024
- requestingUserId: z6.string().optional()
3043
+ var StartProjectBuildRequestSchema = z7.object({
3044
+ projectId: z7.string(),
3045
+ taskId: z7.string(),
3046
+ requestingUserId: z7.string().optional()
3025
3047
  });
3026
- var StopProjectBuildRequestSchema = z6.object({
3027
- projectId: z6.string(),
3028
- taskId: z6.string(),
3029
- requestingUserId: z6.string().optional()
3048
+ var StopProjectBuildRequestSchema = z7.object({
3049
+ projectId: z7.string(),
3050
+ taskId: z7.string(),
3051
+ requestingUserId: z7.string().optional()
3030
3052
  });
3031
- var StartProjectWorkspaceRequestSchema = z6.object({
3032
- projectId: z6.string(),
3033
- requestingUserId: z6.string().optional()
3053
+ var StartProjectWorkspaceRequestSchema = z7.object({
3054
+ projectId: z7.string(),
3055
+ requestingUserId: z7.string().optional()
3034
3056
  });
3035
- var StopProjectWorkspaceRequestSchema = z6.object({
3036
- projectId: z6.string(),
3037
- destroy: z6.boolean().optional(),
3038
- requestingUserId: z6.string().optional()
3057
+ var StopProjectWorkspaceRequestSchema = z7.object({
3058
+ projectId: z7.string(),
3059
+ destroy: z7.boolean().optional(),
3060
+ requestingUserId: z7.string().optional()
3039
3061
  });
3040
- var ListMyLiveSessionsRequestSchema = z6.object({
3041
- projectId: z6.string(),
3062
+ var ListMyLiveSessionsRequestSchema = z7.object({
3063
+ projectId: z7.string(),
3042
3064
  /** Admin-only: list another member's sessions instead of the caller's. */
3043
- targetUserId: z6.string().optional()
3065
+ targetUserId: z7.string().optional()
3044
3066
  });
3045
- var ListProjectSessionGroupsRequestSchema = z6.object({
3046
- projectId: z6.string()
3067
+ var ListProjectSessionGroupsRequestSchema = z7.object({
3068
+ projectId: z7.string()
3047
3069
  });
3048
- var ListMyLiveSessionsAcrossProjectsRequestSchema = z6.object({});
3049
- var ListSessionGroupsAcrossProjectsRequestSchema = z6.object({});
3050
- var GetProjectAvailableTuisRequestSchema = z6.object({
3051
- projectId: z6.string()
3070
+ var ListMyLiveSessionsAcrossProjectsRequestSchema = z7.object({});
3071
+ var ListSessionGroupsAcrossProjectsRequestSchema = z7.object({});
3072
+ var GetProjectAvailableTuisRequestSchema = z7.object({
3073
+ projectId: z7.string()
3052
3074
  });
3053
- var StartAdhocSessionRequestSchema = z6.object({
3054
- projectId: z6.string(),
3055
- label: z6.string().max(200).optional(),
3075
+ var StartAdhocSessionRequestSchema = z7.object({
3076
+ projectId: z7.string(),
3077
+ label: z7.string().max(200).optional(),
3056
3078
  /** Coding-agent key to launch under — validated pick-time (ownership + TUI availability) in the handler. */
3057
- codingAgentKeyId: z6.string().optional(),
3079
+ codingAgentKeyId: z7.string().optional(),
3058
3080
  /** Model override (Claude model id) — overrides the launch key's own model. */
3059
- model: z6.string().max(200).optional(),
3081
+ model: z7.string().max(200).optional(),
3060
3082
  /**
3061
3083
  * Session role. Constrained: other task-less modes fall through to the pm
3062
3084
  * runner in the pod entrypoint, and "review" would crash without a task.
3063
3085
  */
3064
- mode: z6.enum(["adhoc", "pm"]).optional(),
3086
+ mode: z7.enum(["adhoc", "pm"]).optional(),
3065
3087
  /** Base branch to check out (defaults to the project's dev branch). */
3066
- branch: z6.string().max(300).optional(),
3088
+ branch: z7.string().max(300).optional(),
3067
3089
  /**
3068
3090
  * Server-assembled instructions the pod's TUI auto-submits once on first boot
3069
3091
  * (headless kickoff). Used by the onboarding "Set it up for me" flow to seed a
3070
3092
  * setup-driver prompt; the session stays watchable/interactive in the Sessions
3071
3093
  * view. `ensureAdhocWorkspace` persists it and clears it after first submit.
3072
3094
  */
3073
- initialPrompt: z6.string().max(2e4).optional(),
3074
- requestingUserId: z6.string().optional()
3075
- });
3076
- var StopAdhocSessionRequestSchema = z6.object({
3077
- projectId: z6.string(),
3078
- workspaceId: z6.string(),
3079
- destroy: z6.boolean().optional(),
3080
- requestingUserId: z6.string().optional()
3081
- });
3082
- var ResumeAdhocSessionRequestSchema = z6.object({
3083
- projectId: z6.string(),
3084
- workspaceId: z6.string(),
3085
- requestingUserId: z6.string().optional()
3086
- });
3087
- var RefreshCodingAgentKeyUsageRequestSchema = z6.object({
3088
- projectId: z6.string(),
3089
- keyId: z6.string().optional(),
3090
- requestingUserId: z6.string().optional()
3091
- });
3092
- var ListKeysToProbeRequestSchema = z6.object({
3093
- sessionId: z6.string()
3094
- });
3095
- var CreateProjectReleaseRequestSchema = z6.object({
3096
- projectId: z6.string(),
3097
- taskIds: z6.array(z6.string()).optional(),
3098
- requestingUserId: z6.string().optional()
3099
- });
3100
- var AddTasksToProjectReleaseRequestSchema = z6.object({
3101
- projectId: z6.string(),
3102
- taskIds: z6.array(z6.string()).min(1),
3103
- requestingUserId: z6.string().optional()
3104
- });
3105
- var ApproveProjectMergePRRequestSchema = z6.object({
3106
- projectId: z6.string(),
3107
- childTaskId: z6.string(),
3108
- requestingUserId: z6.string().optional()
3109
- });
3110
- var ListProjectSubtasksRequestSchema = z6.object({
3111
- projectId: z6.string(),
3112
- taskId: z6.string()
3113
- });
3114
- var CreateProjectSubtaskRequestSchema = z6.object({
3115
- projectId: z6.string(),
3116
- parentTaskId: z6.string(),
3117
- title: z6.string().min(1),
3095
+ initialPrompt: z7.string().max(2e4).optional(),
3096
+ requestingUserId: z7.string().optional()
3097
+ });
3098
+ var StopAdhocSessionRequestSchema = z7.object({
3099
+ projectId: z7.string(),
3100
+ workspaceId: z7.string(),
3101
+ destroy: z7.boolean().optional(),
3102
+ requestingUserId: z7.string().optional()
3103
+ });
3104
+ var ResumeAdhocSessionRequestSchema = z7.object({
3105
+ projectId: z7.string(),
3106
+ workspaceId: z7.string(),
3107
+ requestingUserId: z7.string().optional()
3108
+ });
3109
+ var RefreshCodingAgentKeyUsageRequestSchema = z7.object({
3110
+ projectId: z7.string(),
3111
+ keyId: z7.string().optional(),
3112
+ requestingUserId: z7.string().optional()
3113
+ });
3114
+ var ListKeysToProbeRequestSchema = z7.object({
3115
+ sessionId: z7.string()
3116
+ });
3117
+ var CreateProjectReleaseRequestSchema = z7.object({
3118
+ projectId: z7.string(),
3119
+ taskIds: z7.array(z7.string()).optional(),
3120
+ requestingUserId: z7.string().optional()
3121
+ });
3122
+ var AddTasksToProjectReleaseRequestSchema = z7.object({
3123
+ projectId: z7.string(),
3124
+ taskIds: z7.array(z7.string()).min(1),
3125
+ requestingUserId: z7.string().optional()
3126
+ });
3127
+ var ApproveProjectMergePRRequestSchema = z7.object({
3128
+ projectId: z7.string(),
3129
+ childTaskId: z7.string(),
3130
+ requestingUserId: z7.string().optional()
3131
+ });
3132
+ var ListProjectSubtasksRequestSchema = z7.object({
3133
+ projectId: z7.string(),
3134
+ taskId: z7.string()
3135
+ });
3136
+ var CreateProjectSubtaskRequestSchema = z7.object({
3137
+ projectId: z7.string(),
3138
+ parentTaskId: z7.string(),
3139
+ title: z7.string().min(1),
3118
3140
  description: cardDescription2,
3119
- plan: z6.string().optional(),
3120
- ordinal: z6.number().int().nonnegative().optional(),
3121
- storyPointValue: z6.number().int().positive().optional(),
3122
- followParentStatus: z6.boolean().optional(),
3141
+ plan: z7.string().optional(),
3142
+ ordinal: z7.number().int().nonnegative().optional(),
3143
+ storyPointValue: z7.number().int().positive().optional(),
3144
+ followParentStatus: z7.boolean().optional(),
3123
3145
  /** Sibling subtask ids or slugs this subtask blocks on (explicit dependency
3124
3146
  * metadata — preferred over encoding order in plan text / ordinal). */
3125
- dependsOn: z6.array(z6.string().min(1)).max(32).optional(),
3126
- requestingUserId: z6.string().optional()
3147
+ dependsOn: z7.array(z7.string().min(1)).max(32).optional(),
3148
+ requestingUserId: z7.string().optional()
3127
3149
  });
3128
- var UpdateProjectSubtaskRequestSchema = z6.object({
3129
- projectId: z6.string(),
3130
- subtaskId: z6.string(),
3131
- title: z6.string().optional(),
3150
+ var UpdateProjectSubtaskRequestSchema = z7.object({
3151
+ projectId: z7.string(),
3152
+ subtaskId: z7.string(),
3153
+ title: z7.string().optional(),
3132
3154
  description: cardDescription2,
3133
- plan: z6.string().optional(),
3134
- status: z6.string().optional(),
3135
- ordinal: z6.number().int().nonnegative().optional(),
3136
- storyPointValue: z6.number().int().positive().optional(),
3137
- followParentStatus: z6.boolean().optional(),
3155
+ plan: z7.string().optional(),
3156
+ status: z7.string().optional(),
3157
+ ordinal: z7.number().int().nonnegative().optional(),
3158
+ storyPointValue: z7.number().int().positive().optional(),
3159
+ followParentStatus: z7.boolean().optional(),
3138
3160
  /** Replace-set of sibling subtask ids/slugs this subtask blocks on ([] clears).
3139
3161
  * Mirrors the in-pod updateSubtask semantics. */
3140
- dependsOn: z6.array(z6.string().min(1)).max(32).optional(),
3141
- requestingUserId: z6.string().optional()
3142
- });
3143
- var DeleteProjectSubtaskRequestSchema = z6.object({
3144
- projectId: z6.string(),
3145
- subtaskId: z6.string(),
3146
- requestingUserId: z6.string().optional()
3147
- });
3148
- var GetProjectTaskChatRequestSchema = z6.object({
3149
- projectId: z6.string(),
3150
- taskId: z6.string(),
3151
- limit: z6.number().int().positive().optional().default(20)
3152
- });
3153
- var AddProjectTaskDependencyRequestSchema = z6.object({
3154
- projectId: z6.string(),
3155
- taskId: z6.string(),
3156
- dependsOnSlugOrId: z6.string(),
3157
- requestingUserId: z6.string().optional()
3158
- });
3159
- var RemoveProjectTaskDependencyRequestSchema = z6.object({
3160
- projectId: z6.string(),
3161
- taskId: z6.string(),
3162
- dependsOnSlugOrId: z6.string(),
3163
- requestingUserId: z6.string().optional()
3164
- });
3165
- var VoteProjectSuggestionRequestSchema = z6.object({
3166
- projectId: z6.string(),
3167
- suggestionId: z6.string(),
3168
- value: z6.union([z6.literal(1), z6.literal(-1)]),
3169
- requestingUserId: z6.string().optional()
3170
- });
3171
- var GetProjectTaskDependenciesRequestSchema = z6.object({
3172
- projectId: z6.string(),
3173
- taskId: z6.string()
3174
- });
3175
- var CreateProjectPullRequestRequestSchema = z6.object({
3176
- projectId: z6.string(),
3177
- taskId: z6.string(),
3178
- title: z6.string().min(1),
3179
- body: z6.string(),
3180
- head: z6.string().optional(),
3181
- base: z6.string().optional(),
3182
- requestingUserId: z6.string().optional()
3183
- });
3184
- var ListProjectMembersRequestSchema = z6.object({
3185
- projectId: z6.string()
3186
- });
3187
- var AddProjectTaskReviewerRequestSchema = z6.object({
3188
- projectId: z6.string(),
3189
- taskId: z6.string(),
3190
- userId: z6.string(),
3191
- requestingUserId: z6.string().optional()
3192
- });
3193
- var RemoveProjectTaskReviewerRequestSchema = z6.object({
3194
- projectId: z6.string(),
3195
- taskId: z6.string(),
3196
- userId: z6.string(),
3197
- requestingUserId: z6.string().optional()
3198
- });
3199
- var ListProjectManualTestsRequestSchema = z6.object({
3200
- projectId: z6.string(),
3201
- taskId: z6.string()
3202
- });
3203
- var QueryProjectManualTestsRequestSchema = z6.object({
3204
- projectId: z6.string(),
3205
- cardStatuses: z6.array(z6.string()).optional(),
3206
- testStatuses: z6.array(z6.enum(["open", "approved", "rejected"])).optional()
3207
- });
3208
- var SetProjectManualTestsRequestSchema = z6.object({
3209
- projectId: z6.string(),
3210
- taskId: z6.string(),
3162
+ dependsOn: z7.array(z7.string().min(1)).max(32).optional(),
3163
+ requestingUserId: z7.string().optional()
3164
+ });
3165
+ var DeleteProjectSubtaskRequestSchema = z7.object({
3166
+ projectId: z7.string(),
3167
+ subtaskId: z7.string(),
3168
+ requestingUserId: z7.string().optional()
3169
+ });
3170
+ var GetProjectTaskChatRequestSchema = z7.object({
3171
+ projectId: z7.string(),
3172
+ taskId: z7.string(),
3173
+ limit: z7.number().int().positive().optional().default(20)
3174
+ });
3175
+ var AddProjectTaskDependencyRequestSchema = z7.object({
3176
+ projectId: z7.string(),
3177
+ taskId: z7.string(),
3178
+ dependsOnSlugOrId: z7.string(),
3179
+ requestingUserId: z7.string().optional()
3180
+ });
3181
+ var RemoveProjectTaskDependencyRequestSchema = z7.object({
3182
+ projectId: z7.string(),
3183
+ taskId: z7.string(),
3184
+ dependsOnSlugOrId: z7.string(),
3185
+ requestingUserId: z7.string().optional()
3186
+ });
3187
+ var VoteProjectSuggestionRequestSchema = z7.object({
3188
+ projectId: z7.string(),
3189
+ suggestionId: z7.string(),
3190
+ value: z7.union([z7.literal(1), z7.literal(-1)]),
3191
+ requestingUserId: z7.string().optional()
3192
+ });
3193
+ var GetProjectTaskDependenciesRequestSchema = z7.object({
3194
+ projectId: z7.string(),
3195
+ taskId: z7.string()
3196
+ });
3197
+ var CreateProjectPullRequestRequestSchema = z7.object({
3198
+ projectId: z7.string(),
3199
+ taskId: z7.string(),
3200
+ title: z7.string().min(1),
3201
+ body: z7.string(),
3202
+ head: z7.string().optional(),
3203
+ base: z7.string().optional(),
3204
+ requestingUserId: z7.string().optional()
3205
+ });
3206
+ var ListProjectMembersRequestSchema = z7.object({
3207
+ projectId: z7.string()
3208
+ });
3209
+ var AddProjectTaskReviewerRequestSchema = z7.object({
3210
+ projectId: z7.string(),
3211
+ taskId: z7.string(),
3212
+ userId: z7.string(),
3213
+ requestingUserId: z7.string().optional()
3214
+ });
3215
+ var RemoveProjectTaskReviewerRequestSchema = z7.object({
3216
+ projectId: z7.string(),
3217
+ taskId: z7.string(),
3218
+ userId: z7.string(),
3219
+ requestingUserId: z7.string().optional()
3220
+ });
3221
+ var ListProjectManualTestsRequestSchema = z7.object({
3222
+ projectId: z7.string(),
3223
+ taskId: z7.string()
3224
+ });
3225
+ var QueryProjectManualTestsRequestSchema = z7.object({
3226
+ projectId: z7.string(),
3227
+ cardStatuses: z7.array(z7.string()).optional(),
3228
+ testStatuses: z7.array(z7.enum(["open", "approved", "rejected"])).optional()
3229
+ });
3230
+ var SetProjectManualTestsRequestSchema = z7.object({
3231
+ projectId: z7.string(),
3232
+ taskId: z7.string(),
3211
3233
  items: ManualTestItemsSchema,
3212
- requestingUserId: z6.string().optional()
3213
- });
3214
- var EditProjectManualTestRequestSchema = z6.object({
3215
- projectId: z6.string(),
3216
- taskId: z6.string(),
3217
- title: z6.string().min(1),
3218
- newTitle: z6.string().min(1),
3219
- requestingUserId: z6.string().optional()
3220
- });
3221
- var RemoveProjectManualTestRequestSchema = z6.object({
3222
- projectId: z6.string(),
3223
- taskId: z6.string(),
3224
- title: z6.string().min(1),
3225
- requestingUserId: z6.string().optional()
3226
- });
3227
- var ApproveProjectManualTestRequestSchema = z6.object({
3228
- projectId: z6.string(),
3229
- taskId: z6.string(),
3230
- title: z6.string().min(1),
3231
- requestingUserId: z6.string().optional()
3232
- });
3233
- var RejectProjectManualTestRequestSchema = z6.object({
3234
- projectId: z6.string(),
3235
- taskId: z6.string(),
3236
- title: z6.string().min(1),
3237
- reason: z6.string().min(1).max(2e3),
3238
- requestingUserId: z6.string().optional()
3239
- });
3240
- var CreateProjectSuggestionRequestSchema = z6.object({
3241
- projectId: z6.string(),
3242
- title: z6.string().min(1),
3234
+ requestingUserId: z7.string().optional()
3235
+ });
3236
+ var EditProjectManualTestRequestSchema = z7.object({
3237
+ projectId: z7.string(),
3238
+ taskId: z7.string(),
3239
+ title: z7.string().min(1),
3240
+ newTitle: z7.string().min(1),
3241
+ requestingUserId: z7.string().optional()
3242
+ });
3243
+ var RemoveProjectManualTestRequestSchema = z7.object({
3244
+ projectId: z7.string(),
3245
+ taskId: z7.string(),
3246
+ title: z7.string().min(1),
3247
+ requestingUserId: z7.string().optional()
3248
+ });
3249
+ var ApproveProjectManualTestRequestSchema = z7.object({
3250
+ projectId: z7.string(),
3251
+ taskId: z7.string(),
3252
+ title: z7.string().min(1),
3253
+ requestingUserId: z7.string().optional()
3254
+ });
3255
+ var RejectProjectManualTestRequestSchema = z7.object({
3256
+ projectId: z7.string(),
3257
+ taskId: z7.string(),
3258
+ title: z7.string().min(1),
3259
+ reason: z7.string().min(1).max(2e3),
3260
+ requestingUserId: z7.string().optional()
3261
+ });
3262
+ var CreateProjectSuggestionRequestSchema = z7.object({
3263
+ projectId: z7.string(),
3264
+ title: z7.string().min(1),
3243
3265
  description: cardDescription2,
3244
- tagNames: z6.array(z6.string()).optional(),
3245
- requestingUserId: z6.string().optional()
3266
+ tagNames: z7.array(z7.string()).optional(),
3267
+ requestingUserId: z7.string().optional()
3246
3268
  });
3247
- var ListProjectChannelsRequestSchema = z7.object({
3248
- projectId: z7.string()
3269
+ var ListProjectChannelsRequestSchema = z8.object({
3270
+ projectId: z8.string()
3249
3271
  });
3250
3272
  var READ_CHANNEL_MESSAGES_MAX_LIMIT = 50;
3251
- var ReadChannelMessagesRequestSchema = z7.object({
3252
- projectId: z7.string(),
3253
- channelId: z7.string().min(1).max(200),
3254
- limit: z7.number().int().min(1).max(READ_CHANNEL_MESSAGES_MAX_LIMIT).optional(),
3273
+ var ReadChannelMessagesRequestSchema = z8.object({
3274
+ projectId: z8.string(),
3275
+ channelId: z8.string().min(1).max(200),
3276
+ limit: z8.number().int().min(1).max(READ_CHANNEL_MESSAGES_MAX_LIMIT).optional(),
3255
3277
  /** Provider-native cursor: return messages OLDER than this one. */
3256
- before: z7.string().max(100).optional(),
3278
+ before: z8.string().max(100).optional(),
3257
3279
  /** Provider-native cursor: return messages NEWER than this one. */
3258
- after: z7.string().max(100).optional(),
3280
+ after: z8.string().max(100).optional(),
3259
3281
  /**
3260
3282
  * Read one thread instead of the channel surface. Slack calls this a
3261
3283
  * `thread_ts`; on Discord it is the thread channel's id. One field for both,
3262
3284
  * because a caller holding a `threadTs` from a previous read should not have
3263
3285
  * to know which provider produced it.
3264
3286
  */
3265
- threadTs: z7.string().max(100).optional()
3287
+ threadTs: z8.string().max(100).optional()
3266
3288
  });
3267
3289
  var POST_CHANNEL_MESSAGE_MAX_CHARS = 1800;
3268
- var PostChannelMessageRequestSchema = z7.object({
3269
- projectId: z7.string(),
3270
- channelId: z7.string().min(1).max(200),
3271
- text: z7.string().min(1).max(POST_CHANNEL_MESSAGE_MAX_CHARS),
3290
+ var PostChannelMessageRequestSchema = z8.object({
3291
+ projectId: z8.string(),
3292
+ channelId: z8.string().min(1).max(200),
3293
+ text: z8.string().min(1).max(POST_CHANNEL_MESSAGE_MAX_CHARS),
3272
3294
  /** Reply inside a thread rather than to the channel. */
3273
- threadTs: z7.string().max(100).optional()
3295
+ threadTs: z8.string().max(100).optional()
3274
3296
  });
3275
3297
  var GET_ANALYTICS_SUMMARY_MAX_RANGE_DAYS = 90;
3276
- var GetProjectAnalyticsSummaryRequestSchema = z7.object({
3277
- projectId: z7.string(),
3278
- rangeDays: z7.number().int().min(1).max(GET_ANALYTICS_SUMMARY_MAX_RANGE_DAYS).optional(),
3279
- campaign: z7.string().max(200).optional()
3280
- });
3281
- var ListProjectTaskFilesRequestSchema = z8.object({
3298
+ var GetProjectAnalyticsSummaryRequestSchema = z8.object({
3282
3299
  projectId: z8.string(),
3283
- taskId: z8.string()
3300
+ rangeDays: z8.number().int().min(1).max(GET_ANALYTICS_SUMMARY_MAX_RANGE_DAYS).optional(),
3301
+ campaign: z8.string().max(200).optional()
3284
3302
  });
3285
- var GetProjectAttachmentRequestSchema = z8.object({
3286
- projectId: z8.string(),
3287
- taskId: z8.string(),
3288
- fileId: z8.string(),
3303
+ var ListProjectTaskFilesRequestSchema = z9.object({
3304
+ projectId: z9.string(),
3305
+ taskId: z9.string()
3306
+ });
3307
+ var GetProjectAttachmentRequestSchema = z9.object({
3308
+ projectId: z9.string(),
3309
+ taskId: z9.string(),
3310
+ fileId: z9.string(),
3289
3311
  /** Byte offset into text content (paging large logs/JSON). Default 0. */
3290
- offset: z8.number().int().nonnegative().optional(),
3312
+ offset: z9.number().int().nonnegative().optional(),
3291
3313
  /** Max bytes of text content to return from `offset`. Server default applies. */
3292
- maxBytes: z8.number().int().positive().optional()
3293
- });
3294
- var DeleteProjectTaskFileRequestSchema = z8.object({
3295
- projectId: z8.string(),
3296
- taskId: z8.string(),
3297
- fileId: z8.string(),
3298
- requestingUserId: z8.string().optional()
3299
- });
3300
- var SetProjectTaskFileShowcaseRequestSchema = z8.object({
3301
- projectId: z8.string(),
3302
- taskId: z8.string(),
3303
- fileId: z8.string(),
3304
- showcase: z8.boolean(),
3305
- requestingUserId: z8.string().optional()
3306
- });
3307
- var RequestProjectFileUploadRequestSchema = z8.object({
3308
- projectId: z8.string(),
3309
- taskId: z8.string(),
3310
- fileName: z8.string().min(1).max(255),
3311
- mimeType: z8.string().min(1).max(128),
3312
- fileSize: z8.number().int().positive().max(MAX_FILE_SIZE_BYTES),
3313
- requestingUserId: z8.string().optional()
3314
- });
3315
- var ConfirmProjectFileUploadRequestSchema = z8.object({
3316
- projectId: z8.string(),
3317
- taskId: z8.string(),
3318
- fileId: z8.string(),
3314
+ maxBytes: z9.number().int().positive().optional()
3315
+ });
3316
+ var DeleteProjectTaskFileRequestSchema = z9.object({
3317
+ projectId: z9.string(),
3318
+ taskId: z9.string(),
3319
+ fileId: z9.string(),
3320
+ requestingUserId: z9.string().optional()
3321
+ });
3322
+ var SetProjectTaskFileShowcaseRequestSchema = z9.object({
3323
+ projectId: z9.string(),
3324
+ taskId: z9.string(),
3325
+ fileId: z9.string(),
3326
+ showcase: z9.boolean(),
3327
+ requestingUserId: z9.string().optional()
3328
+ });
3329
+ var RequestProjectFileUploadRequestSchema = z9.object({
3330
+ projectId: z9.string(),
3331
+ taskId: z9.string(),
3332
+ fileName: z9.string().min(1).max(255),
3333
+ mimeType: z9.string().min(1).max(128),
3334
+ fileSize: z9.number().int().positive().max(MAX_FILE_SIZE_BYTES),
3335
+ requestingUserId: z9.string().optional()
3336
+ });
3337
+ var ConfirmProjectFileUploadRequestSchema = z9.object({
3338
+ projectId: z9.string(),
3339
+ taskId: z9.string(),
3340
+ fileId: z9.string(),
3319
3341
  /** When set, the attachment is also posted to the task chat with this text. */
3320
- comment: z8.string().max(2e3).optional(),
3342
+ comment: z9.string().max(2e3).optional(),
3321
3343
  /** Glossary tag names (or ids) this file is an example of. */
3322
- tags: z8.array(z8.string().min(1).max(MAX_FILE_TAG_LENGTH)).max(MAX_FILE_TAGS).optional(),
3344
+ tags: z9.array(z9.string().min(1).max(MAX_FILE_TAG_LENGTH)).max(MAX_FILE_TAGS).optional(),
3323
3345
  /** The card's showcase (its deliverable); always posts to chat, even with no `comment`. */
3324
- showcase: z8.boolean().optional(),
3346
+ showcase: z9.boolean().optional(),
3325
3347
  /** Id of an older file on the same card this upload replaces. */
3326
- supersedes: z8.string().min(1).max(64).optional(),
3327
- requestingUserId: z8.string().optional()
3348
+ supersedes: z9.string().min(1).max(64).optional(),
3349
+ requestingUserId: z9.string().optional()
3328
3350
  });
3329
- var RequestWorkspaceRecycleRequestSchema = z9.object({
3330
- sessionId: z9.string(),
3331
- reason: z9.string().max(2e3)
3351
+ var RequestWorkspaceRecycleRequestSchema = z10.object({
3352
+ sessionId: z10.string(),
3353
+ reason: z10.string().max(2e3)
3332
3354
  });
3333
- var ReportApiOutageRequestSchema = z9.object({
3334
- sessionId: z9.string(),
3335
- detail: z9.string().max(2e3),
3336
- attempts: z9.number().int().min(0).max(100)
3355
+ var ReportApiOutageRequestSchema = z10.object({
3356
+ sessionId: z10.string(),
3357
+ detail: z10.string().max(2e3),
3358
+ attempts: z10.number().int().min(0).max(100)
3337
3359
  });
3338
3360
  var CONTEXT_LINK_LOCATOR_MAX = 300;
3339
3361
  var TEST_TITLE = /\b(?:it|test|describe)(?:\.\w+)?\s*\(\s*(['"`])((?:(?!\1)[\s\S])*)\1/g;
@@ -3350,130 +3372,130 @@ function locatorMatchesContent(content, locatorType, locator) {
3350
3372
  var TAG_DESCRIPTION_MAX = CARD_DESCRIPTION_MAX;
3351
3373
  var TAG_OVERVIEW_MAX = 32e3;
3352
3374
  var TAG_REASON_MAX = 500;
3353
- var ProjectTagContextPathSchema = z10.object({
3354
- type: z10.enum(["rule", "doc", "file", "folder"]),
3355
- path: z10.string().min(1).max(500),
3356
- label: z10.string().max(100).optional(),
3375
+ var ProjectTagContextPathSchema = z11.object({
3376
+ type: z11.enum(["rule", "doc", "file", "folder"]),
3377
+ path: z11.string().min(1).max(500),
3378
+ label: z11.string().max(100).optional(),
3357
3379
  /** Verified-link tether — text that must keep existing in the file. */
3358
- locator: z10.string().min(1).max(CONTEXT_LINK_LOCATOR_MAX).regex(/^[^\r\n]*$/, "Locator cannot contain line breaks").optional(),
3380
+ locator: z11.string().min(1).max(CONTEXT_LINK_LOCATOR_MAX).regex(/^[^\r\n]*$/, "Locator cannot contain line breaks").optional(),
3359
3381
  /** test = must appear in a real test/describe title; code = any substring. */
3360
- locatorType: z10.enum(["test", "code"]).optional()
3382
+ locatorType: z11.enum(["test", "code"]).optional()
3361
3383
  }).refine((link) => link.locator === void 0 === (link.locatorType === void 0), {
3362
3384
  message: "locator and locatorType must be provided together"
3363
3385
  }).refine((link) => link.locator === void 0 || link.type !== "folder", {
3364
3386
  message: "folder links cannot carry a locator"
3365
3387
  });
3366
- var hexColor = z10.string().regex(/^#[0-9a-fA-F]{6}$/, "Expected #RRGGBB hex color");
3367
- var overviewPathSchema = z10.string().min(1).max(500).regex(/^[^\r\n]*$/, "Overview path cannot contain line breaks");
3368
- var CreateProjectTagRequestSchema = z10.object({
3369
- projectId: z10.string(),
3370
- name: z10.string().min(1).max(50),
3388
+ var hexColor = z11.string().regex(/^#[0-9a-fA-F]{6}$/, "Expected #RRGGBB hex color");
3389
+ var overviewPathSchema = z11.string().min(1).max(500).regex(/^[^\r\n]*$/, "Overview path cannot contain line breaks");
3390
+ var CreateProjectTagRequestSchema = z11.object({
3391
+ projectId: z11.string(),
3392
+ name: z11.string().min(1).max(50),
3371
3393
  color: hexColor.optional(),
3372
- description: z10.string().max(TAG_DESCRIPTION_MAX).optional(),
3373
- overview: z10.string().max(TAG_OVERVIEW_MAX).optional(),
3394
+ description: z11.string().max(TAG_DESCRIPTION_MAX).optional(),
3395
+ overview: z11.string().max(TAG_OVERVIEW_MAX).optional(),
3374
3396
  /** Source the overview from this repo file (stored overview stays as the pending fallback). */
3375
3397
  overviewPath: overviewPathSchema.optional(),
3376
- contextPaths: z10.array(ProjectTagContextPathSchema).max(20).optional(),
3398
+ contextPaths: z11.array(ProjectTagContextPathSchema).max(20).optional(),
3377
3399
  /** Parents to link at create time (multi-parent DAG). */
3378
- parentTagIds: z10.array(z10.string()).max(25).optional(),
3379
- requestingUserId: z10.string().optional()
3400
+ parentTagIds: z11.array(z11.string()).max(25).optional(),
3401
+ requestingUserId: z11.string().optional()
3380
3402
  });
3381
- var UpdateProjectTagRequestSchema = z10.object({
3382
- projectId: z10.string(),
3383
- tagId: z10.string(),
3384
- name: z10.string().min(1).max(50).optional(),
3403
+ var UpdateProjectTagRequestSchema = z11.object({
3404
+ projectId: z11.string(),
3405
+ tagId: z11.string(),
3406
+ name: z11.string().min(1).max(50).optional(),
3385
3407
  color: hexColor.optional(),
3386
- description: z10.string().max(TAG_DESCRIPTION_MAX).optional(),
3408
+ description: z11.string().max(TAG_DESCRIPTION_MAX).optional(),
3387
3409
  /** Full markdown glossary body; null clears it. Rejected while overviewPath is set. */
3388
- overview: z10.string().max(TAG_OVERVIEW_MAX).nullable().optional(),
3410
+ overview: z11.string().max(TAG_OVERVIEW_MAX).nullable().optional(),
3389
3411
  /** Repo file to source the overview from; null clears back to the stored overview. */
3390
3412
  overviewPath: overviewPathSchema.nullable().optional(),
3391
3413
  /** Full replacement of the tag's context links when provided. */
3392
- contextPaths: z10.array(ProjectTagContextPathSchema).max(20).optional(),
3414
+ contextPaths: z11.array(ProjectTagContextPathSchema).max(20).optional(),
3393
3415
  /** Full-set replacement of the tag's parent tags (multi-parent DAG). */
3394
- parentTagIds: z10.array(z10.string()).max(25).optional(),
3416
+ parentTagIds: z11.array(z11.string()).max(25).optional(),
3395
3417
  /** One-line revision provenance, recorded in the tag's history. */
3396
- reason: z10.string().max(TAG_REASON_MAX).optional(),
3418
+ reason: z11.string().max(TAG_REASON_MAX).optional(),
3397
3419
  /** Card the caller was working in — stamped into the revision history. */
3398
- taskId: z10.string().optional(),
3399
- requestingUserId: z10.string().optional()
3420
+ taskId: z11.string().optional(),
3421
+ requestingUserId: z11.string().optional()
3400
3422
  });
3401
- var PostToProjectChatRequestSchema = z10.object({
3402
- projectId: z10.string(),
3403
- content: z10.string().min(1).max(2e4),
3404
- requestingUserId: z10.string().optional(),
3423
+ var PostToProjectChatRequestSchema = z11.object({
3424
+ projectId: z11.string(),
3425
+ content: z11.string().min(1).max(2e4),
3426
+ requestingUserId: z11.string().optional(),
3405
3427
  /** Marks the post so the server can persist it beyond chat (tag-audit summaries land in tag history). */
3406
- kind: z10.enum(["tag_audit_summary"]).optional()
3407
- });
3408
- var StartTagAuditRequestSchema = z10.object({
3409
- projectId: z10.string(),
3410
- requestingUserId: z10.string().optional()
3411
- });
3412
- var StartTaskAuditRequestSchema = z10.object({
3413
- projectId: z10.string(),
3414
- taskIds: z10.array(z10.string()).min(1).max(20),
3415
- requestingUserId: z10.string().optional()
3416
- });
3417
- var GetActiveAuditSessionsRequestSchema = z10.object({
3418
- projectId: z10.string()
3419
- });
3420
- var ReportTaskAuditResultRequestSchema = z10.object({
3421
- projectId: z10.string(),
3422
- taskId: z10.string(),
3423
- summary: z10.string(),
3424
- turnGrades: z10.array(
3425
- z10.object({
3426
- turnIndex: z10.number(),
3427
- phase: z10.enum(["planning", "building", "human"]),
3428
- grade: z10.enum(["correct", "neutral", "blunder"]),
3429
- reasoning: z10.string(),
3430
- eventType: z10.string(),
3431
- eventSummary: z10.string()
3428
+ kind: z11.enum(["tag_audit_summary"]).optional()
3429
+ });
3430
+ var StartTagAuditRequestSchema = z11.object({
3431
+ projectId: z11.string(),
3432
+ requestingUserId: z11.string().optional()
3433
+ });
3434
+ var StartTaskAuditRequestSchema = z11.object({
3435
+ projectId: z11.string(),
3436
+ taskIds: z11.array(z11.string()).min(1).max(20),
3437
+ requestingUserId: z11.string().optional()
3438
+ });
3439
+ var GetActiveAuditSessionsRequestSchema = z11.object({
3440
+ projectId: z11.string()
3441
+ });
3442
+ var ReportTaskAuditResultRequestSchema = z11.object({
3443
+ projectId: z11.string(),
3444
+ taskId: z11.string(),
3445
+ summary: z11.string(),
3446
+ turnGrades: z11.array(
3447
+ z11.object({
3448
+ turnIndex: z11.number(),
3449
+ phase: z11.enum(["planning", "building", "human"]),
3450
+ grade: z11.enum(["correct", "neutral", "blunder"]),
3451
+ reasoning: z11.string(),
3452
+ eventType: z11.string(),
3453
+ eventSummary: z11.string()
3432
3454
  })
3433
3455
  ),
3434
- planningAccuracy: z10.number().nullable(),
3435
- buildingAccuracy: z10.number().nullable(),
3436
- humanAccuracy: z10.number().nullable(),
3437
- planningCorrect: z10.number(),
3438
- planningNeutral: z10.number(),
3439
- planningBlunder: z10.number(),
3440
- buildingCorrect: z10.number(),
3441
- buildingNeutral: z10.number(),
3442
- buildingBlunder: z10.number(),
3443
- humanCorrect: z10.number(),
3444
- humanNeutral: z10.number(),
3445
- humanBlunder: z10.number(),
3446
- humanEvaluations: z10.array(
3447
- z10.object({
3448
- messageIndex: z10.number(),
3449
- rating: z10.union([z10.literal(-1), z10.literal(0), z10.literal(1)]),
3450
- reasoning: z10.string()
3456
+ planningAccuracy: z11.number().nullable(),
3457
+ buildingAccuracy: z11.number().nullable(),
3458
+ humanAccuracy: z11.number().nullable(),
3459
+ planningCorrect: z11.number(),
3460
+ planningNeutral: z11.number(),
3461
+ planningBlunder: z11.number(),
3462
+ buildingCorrect: z11.number(),
3463
+ buildingNeutral: z11.number(),
3464
+ buildingBlunder: z11.number(),
3465
+ humanCorrect: z11.number(),
3466
+ humanNeutral: z11.number(),
3467
+ humanBlunder: z11.number(),
3468
+ humanEvaluations: z11.array(
3469
+ z11.object({
3470
+ messageIndex: z11.number(),
3471
+ rating: z11.union([z11.literal(-1), z11.literal(0), z11.literal(1)]),
3472
+ reasoning: z11.string()
3451
3473
  })
3452
3474
  ).optional(),
3453
- suggestionIds: z10.array(z10.string()),
3454
- auditCostUsd: z10.number().nullable(),
3455
- model: z10.string().nullable(),
3475
+ suggestionIds: z11.array(z11.string()),
3476
+ auditCostUsd: z11.number().nullable(),
3477
+ model: z11.string().nullable(),
3456
3478
  /** When set, the audit is marked failed with this message instead. */
3457
- error: z10.string().optional()
3479
+ error: z11.string().optional()
3458
3480
  });
3459
- var GetTaskAuditsRequestSchema = z10.object({
3460
- projectId: z10.string(),
3461
- limit: z10.number().int().positive().max(200).optional().default(50)
3481
+ var GetTaskAuditsRequestSchema = z11.object({
3482
+ projectId: z11.string(),
3483
+ limit: z11.number().int().positive().max(200).optional().default(50)
3462
3484
  });
3463
- var GetTaskAuditRequestSchema = z10.object({
3464
- projectId: z10.string(),
3465
- auditId: z10.string()
3485
+ var GetTaskAuditRequestSchema = z11.object({
3486
+ projectId: z11.string(),
3487
+ auditId: z11.string()
3466
3488
  });
3467
- var GetTaskAuditAggregatesRequestSchema = z10.object({
3468
- projectId: z10.string()
3489
+ var GetTaskAuditAggregatesRequestSchema = z11.object({
3490
+ projectId: z11.string()
3469
3491
  });
3470
- var DeleteTaskAuditRequestSchema = z10.object({
3471
- projectId: z10.string(),
3472
- auditId: z10.string(),
3473
- requestingUserId: z10.string().optional()
3492
+ var DeleteTaskAuditRequestSchema = z11.object({
3493
+ projectId: z11.string(),
3494
+ auditId: z11.string(),
3495
+ requestingUserId: z11.string().optional()
3474
3496
  });
3475
- var MarkInitialPromptSubmittedRequestSchema = z10.object({
3476
- sessionId: z10.string()
3497
+ var MarkInitialPromptSubmittedRequestSchema = z11.object({
3498
+ sessionId: z11.string()
3477
3499
  });
3478
3500
  var CRITICAL_AUTOMATED_SOURCES = /* @__PURE__ */ new Set([
3479
3501
  "ci_failure",
@@ -3527,165 +3549,165 @@ var DECISION_DEADLINE_MIN_HOURS = 1;
3527
3549
  var DECISION_DEADLINE_MAX_DAYS = 30;
3528
3550
  var DECISION_DEADLINE_MAX_HOURS = DECISION_DEADLINE_MAX_DAYS * 24;
3529
3551
  var DECISION_LIST_MAX_LIMIT = 200;
3530
- var decisionIdSchema = z11.string().cuid("Invalid decision ID");
3531
- var optionInputSchema = z11.object({
3532
- label: z11.string().min(1, "Option label is required").max(DECISION_OPTION_LABEL_MAX),
3533
- description: z11.string().min(1, "Describe the option as GIVEN / WHEN / THEN"),
3534
- kind: z11.enum(DECISION_OPTION_KINDS).optional()
3552
+ var decisionIdSchema = z12.string().cuid("Invalid decision ID");
3553
+ var optionInputSchema = z12.object({
3554
+ label: z12.string().min(1, "Option label is required").max(DECISION_OPTION_LABEL_MAX),
3555
+ description: z12.string().min(1, "Describe the option as GIVEN / WHEN / THEN"),
3556
+ kind: z12.enum(DECISION_OPTION_KINDS).optional()
3535
3557
  });
3536
- var optionsArraySchema = z11.array(optionInputSchema).min(DECISION_OPTIONS_MIN, `A decision needs at least ${DECISION_OPTIONS_MIN} options`).max(
3558
+ var optionsArraySchema = z12.array(optionInputSchema).min(DECISION_OPTIONS_MIN, `A decision needs at least ${DECISION_OPTIONS_MIN} options`).max(
3537
3559
  DECISION_OPTIONS_MAX,
3538
3560
  `A decision takes at most ${DECISION_OPTIONS_MAX} options \u2014 more than that means the question is not framed yet`
3539
3561
  );
3540
- var CreateDecisionRequestSchema = z11.object({
3541
- projectId: z11.string().cuid("Invalid project ID"),
3562
+ var CreateDecisionRequestSchema = z12.object({
3563
+ projectId: z12.string().cuid("Invalid project ID"),
3542
3564
  /** The question, as one plain sentence. */
3543
- title: z11.string().min(1, "A decision needs a question").max(DECISION_QUESTION_MAX),
3544
- description: z11.string().max(CARD_DESCRIPTION_MAX).optional(),
3545
- context: z11.string().min(1, "Context is required \u2014 say why this is being asked now"),
3565
+ title: z12.string().min(1, "A decision needs a question").max(DECISION_QUESTION_MAX),
3566
+ description: z12.string().max(CARD_DESCRIPTION_MAX).optional(),
3567
+ context: z12.string().min(1, "Context is required \u2014 say why this is being asked now"),
3546
3568
  options: optionsArraySchema,
3547
3569
  /** 1-based position of the option that wins on silence. */
3548
- defaultOptionOrdinal: z11.number().int().min(1).max(DECISION_OPTIONS_MAX),
3549
- deadlineHours: z11.number().min(DECISION_DEADLINE_MIN_HOURS).max(DECISION_DEADLINE_MAX_HOURS).optional(),
3570
+ defaultOptionOrdinal: z12.number().int().min(1).max(DECISION_OPTIONS_MAX),
3571
+ deadlineHours: z12.number().min(DECISION_DEADLINE_MIN_HOURS).max(DECISION_DEADLINE_MAX_HOURS).optional(),
3550
3572
  /** Cards this decision blocks, by cuid or slug. */
3551
- impactedCardRefs: z11.array(z11.string().min(1)).max(50).optional(),
3552
- tagNames: z11.array(z11.string().min(1)).max(10).optional(),
3553
- raisedByTaskId: z11.string().min(1).optional(),
3554
- raisedByPrNumber: z11.number().int().positive().optional()
3573
+ impactedCardRefs: z12.array(z12.string().min(1)).max(50).optional(),
3574
+ tagNames: z12.array(z12.string().min(1)).max(10).optional(),
3575
+ raisedByTaskId: z12.string().min(1).optional(),
3576
+ raisedByPrNumber: z12.number().int().positive().optional()
3555
3577
  });
3556
- var VoteDecisionRequestSchema = z11.object({
3578
+ var VoteDecisionRequestSchema = z12.object({
3557
3579
  decisionId: decisionIdSchema,
3558
- optionId: z11.string().cuid("Invalid option ID"),
3559
- reason: z11.string().max(DECISION_VOTE_REASON_MAX).optional(),
3560
- source: z11.enum(DECISION_VOTE_SOURCES).optional()
3580
+ optionId: z12.string().cuid("Invalid option ID"),
3581
+ reason: z12.string().max(DECISION_VOTE_REASON_MAX).optional(),
3582
+ source: z12.enum(DECISION_VOTE_SOURCES).optional()
3561
3583
  });
3562
- var RemoveDecisionVoteRequestSchema = z11.object({
3584
+ var RemoveDecisionVoteRequestSchema = z12.object({
3563
3585
  decisionId: decisionIdSchema
3564
3586
  });
3565
- var ResolveDecisionRequestSchema = z11.object({
3587
+ var ResolveDecisionRequestSchema = z12.object({
3566
3588
  decisionId: decisionIdSchema,
3567
- chosenOptionId: z11.string().cuid("Invalid option ID"),
3568
- resolution: z11.string().min(1, "A resolution is required \u2014 say what was decided").max(DECISION_RESOLUTION_MAX),
3569
- resolutionNotes: z11.string().optional()
3589
+ chosenOptionId: z12.string().cuid("Invalid option ID"),
3590
+ resolution: z12.string().min(1, "A resolution is required \u2014 say what was decided").max(DECISION_RESOLUTION_MAX),
3591
+ resolutionNotes: z12.string().optional()
3570
3592
  });
3571
- var CancelDecisionRequestSchema = z11.object({
3593
+ var CancelDecisionRequestSchema = z12.object({
3572
3594
  decisionId: decisionIdSchema,
3573
3595
  /** Why it is being dropped. Posted to the decision thread. */
3574
- reason: z11.string().max(DECISION_RESOLUTION_MAX).optional()
3596
+ reason: z12.string().max(DECISION_RESOLUTION_MAX).optional()
3575
3597
  });
3576
- var BulkDecisionIdsRequestSchema = z11.object({
3577
- projectId: z11.string().cuid("Invalid project ID"),
3578
- decisionIds: z11.array(z11.string().cuid()).min(1).max(200)
3598
+ var BulkDecisionIdsRequestSchema = z12.object({
3599
+ projectId: z12.string().cuid("Invalid project ID"),
3600
+ decisionIds: z12.array(z12.string().cuid()).min(1).max(200)
3579
3601
  });
3580
- var ReopenDecisionRequestSchema = z11.object({
3602
+ var ReopenDecisionRequestSchema = z12.object({
3581
3603
  decisionId: decisionIdSchema,
3582
- deadlineHours: z11.number().min(DECISION_DEADLINE_MIN_HOURS).max(DECISION_DEADLINE_MAX_HOURS).optional()
3604
+ deadlineHours: z12.number().min(DECISION_DEADLINE_MIN_HOURS).max(DECISION_DEADLINE_MAX_HOURS).optional()
3583
3605
  });
3584
- var UpdateDecisionRequestSchema = z11.object({
3606
+ var UpdateDecisionRequestSchema = z12.object({
3585
3607
  decisionId: decisionIdSchema,
3586
- title: z11.string().min(1).max(200).optional(),
3587
- description: z11.string().max(CARD_DESCRIPTION_MAX).optional(),
3588
- context: z11.string().min(1).optional(),
3589
- deadlineAt: z11.string().datetime().optional(),
3608
+ title: z12.string().min(1).max(200).optional(),
3609
+ description: z12.string().max(CARD_DESCRIPTION_MAX).optional(),
3610
+ context: z12.string().min(1).optional(),
3611
+ deadlineAt: z12.string().datetime().optional(),
3590
3612
  /** Only accepted while the decision has zero votes. */
3591
3613
  options: optionsArraySchema.optional(),
3592
- defaultOptionOrdinal: z11.number().int().min(1).max(DECISION_OPTIONS_MAX).optional(),
3593
- addImpactedCardRefs: z11.array(z11.string().min(1)).max(50).optional(),
3594
- removeImpactedCardIds: z11.array(z11.string().min(1)).max(50).optional()
3614
+ defaultOptionOrdinal: z12.number().int().min(1).max(DECISION_OPTIONS_MAX).optional(),
3615
+ addImpactedCardRefs: z12.array(z12.string().min(1)).max(50).optional(),
3616
+ removeImpactedCardIds: z12.array(z12.string().min(1)).max(50).optional()
3595
3617
  });
3596
- var GetDecisionRequestSchema = z11.object({
3618
+ var GetDecisionRequestSchema = z12.object({
3597
3619
  /** cuid or slug. A slug needs `projectId` to resolve unambiguously. */
3598
- decisionId: z11.string().min(1),
3599
- projectId: z11.string().cuid().optional()
3620
+ decisionId: z12.string().min(1),
3621
+ projectId: z12.string().cuid().optional()
3600
3622
  });
3601
- var ListDecisionsRequestSchema = z11.object({
3602
- projectId: z11.string().cuid("Invalid project ID"),
3603
- status: z11.enum(DECISION_STATUS_LABELS).optional(),
3623
+ var ListDecisionsRequestSchema = z12.object({
3624
+ projectId: z12.string().cuid("Invalid project ID"),
3625
+ status: z12.enum(DECISION_STATUS_LABELS).optional(),
3604
3626
  /** Tag name, not id — an agent knows the tag it is working under. */
3605
- tag: z11.string().min(1).optional(),
3627
+ tag: z12.string().min(1).optional(),
3606
3628
  /** Decisions that this card is blocked by (cuid or slug). */
3607
- cardId: z11.string().min(1).optional(),
3608
- query: z11.string().min(1).optional(),
3609
- limit: z11.number().int().min(1).max(DECISION_LIST_MAX_LIMIT).optional()
3629
+ cardId: z12.string().min(1).optional(),
3630
+ query: z12.string().min(1).optional(),
3631
+ limit: z12.number().int().min(1).max(DECISION_LIST_MAX_LIMIT).optional()
3610
3632
  });
3611
- var optionInput = z12.object({
3612
- label: z12.string().min(1).max(DECISION_OPTION_LABEL_MAX),
3613
- description: z12.string().min(1),
3614
- kind: z12.enum(DECISION_OPTION_KINDS).optional()
3633
+ var optionInput = z13.object({
3634
+ label: z13.string().min(1).max(DECISION_OPTION_LABEL_MAX),
3635
+ description: z13.string().min(1),
3636
+ kind: z13.enum(DECISION_OPTION_KINDS).optional()
3615
3637
  });
3616
- var optionsInput = z12.array(optionInput).min(DECISION_OPTIONS_MIN).max(DECISION_OPTIONS_MAX);
3617
- var deadlineHours = z12.number().min(DECISION_DEADLINE_MIN_HOURS).max(DECISION_DEADLINE_MAX_HOURS).optional();
3618
- var CreateProjectDecisionRequestSchema = z12.object({
3619
- projectId: z12.string(),
3620
- question: z12.string().min(1).max(200),
3621
- summary: z12.string().max(CARD_DESCRIPTION_MAX).optional(),
3622
- context: z12.string().min(1),
3638
+ var optionsInput = z13.array(optionInput).min(DECISION_OPTIONS_MIN).max(DECISION_OPTIONS_MAX);
3639
+ var deadlineHours = z13.number().min(DECISION_DEADLINE_MIN_HOURS).max(DECISION_DEADLINE_MAX_HOURS).optional();
3640
+ var CreateProjectDecisionRequestSchema = z13.object({
3641
+ projectId: z13.string(),
3642
+ question: z13.string().min(1).max(200),
3643
+ summary: z13.string().max(CARD_DESCRIPTION_MAX).optional(),
3644
+ context: z13.string().min(1),
3623
3645
  options: optionsInput,
3624
- defaultOption: z12.number().int().min(1).max(DECISION_OPTIONS_MAX),
3646
+ defaultOption: z13.number().int().min(1).max(DECISION_OPTIONS_MAX),
3625
3647
  deadlineHours,
3626
- impactedCards: z12.array(z12.string().min(1)).max(50).optional(),
3648
+ impactedCards: z13.array(z13.string().min(1)).max(50).optional(),
3627
3649
  /**
3628
3650
  * Pod surface only: also block the card this session is working on. The
3629
3651
  * session's task id is resolved SERVER-side from `sessionId` — a
3630
3652
  * client-supplied card id would let a pod block any card in the project.
3631
3653
  */
3632
- includeCurrentCard: z12.boolean().optional(),
3633
- sessionId: z12.string().optional(),
3634
- tagNames: z12.array(z12.string().min(1)).max(10).optional(),
3635
- raisedByPr: z12.number().int().positive().optional(),
3654
+ includeCurrentCard: z13.boolean().optional(),
3655
+ sessionId: z13.string().optional(),
3656
+ tagNames: z13.array(z13.string().min(1)).max(10).optional(),
3657
+ raisedByPr: z13.number().int().positive().optional(),
3636
3658
  /** Slug or id of the card that raised the question. A link back, not a block. */
3637
- raisedByCard: z12.string().min(1).optional(),
3659
+ raisedByCard: z13.string().min(1).optional(),
3638
3660
  /** Absolute deadline (ISO 8601). Wins over `deadlineHours` when both are sent. */
3639
- deadlineAt: z12.string().datetime({ offset: true }).optional(),
3640
- requestingUserId: z12.string().optional()
3661
+ deadlineAt: z13.string().datetime({ offset: true }).optional(),
3662
+ requestingUserId: z13.string().optional()
3641
3663
  });
3642
- var ListProjectDecisionsRequestSchema = z12.object({
3643
- projectId: z12.string(),
3644
- status: z12.enum(DECISION_STATUS_LABELS).optional(),
3645
- tag: z12.string().min(1).optional(),
3646
- card: z12.string().min(1).optional(),
3647
- query: z12.string().min(1).optional(),
3648
- limit: z12.number().int().min(1).max(DECISION_LIST_MAX_LIMIT).optional(),
3649
- requestingUserId: z12.string().optional()
3650
- });
3651
- var GetProjectDecisionRequestSchema = z12.object({
3652
- projectId: z12.string(),
3653
- decision: z12.string().min(1),
3654
- requestingUserId: z12.string().optional()
3664
+ var ListProjectDecisionsRequestSchema = z13.object({
3665
+ projectId: z13.string(),
3666
+ status: z13.enum(DECISION_STATUS_LABELS).optional(),
3667
+ tag: z13.string().min(1).optional(),
3668
+ card: z13.string().min(1).optional(),
3669
+ query: z13.string().min(1).optional(),
3670
+ limit: z13.number().int().min(1).max(DECISION_LIST_MAX_LIMIT).optional(),
3671
+ requestingUserId: z13.string().optional()
3672
+ });
3673
+ var GetProjectDecisionRequestSchema = z13.object({
3674
+ projectId: z13.string(),
3675
+ decision: z13.string().min(1),
3676
+ requestingUserId: z13.string().optional()
3655
3677
  });
3656
- var VoteProjectDecisionRequestSchema = z12.object({
3657
- projectId: z12.string(),
3658
- decision: z12.string().min(1),
3678
+ var VoteProjectDecisionRequestSchema = z13.object({
3679
+ projectId: z13.string(),
3680
+ decision: z13.string().min(1),
3659
3681
  /** An option id, or its 1-based position. */
3660
- option: z12.string().min(1),
3661
- reason: z12.string().max(CARD_DESCRIPTION_MAX).optional(),
3662
- requestingUserId: z12.string().optional()
3663
- });
3664
- var ResolveProjectDecisionRequestSchema = z12.object({
3665
- projectId: z12.string(),
3666
- decision: z12.string().min(1),
3667
- option: z12.string().min(1),
3668
- resolution: z12.string().min(1).max(DECISION_RESOLUTION_MAX),
3669
- notes: z12.string().optional(),
3670
- requestingUserId: z12.string().optional()
3671
- });
3672
- var UpdateProjectDecisionRequestSchema = z12.object({
3673
- projectId: z12.string(),
3674
- decision: z12.string().min(1),
3675
- question: z12.string().min(1).max(200).optional(),
3676
- summary: z12.string().max(CARD_DESCRIPTION_MAX).optional(),
3677
- context: z12.string().min(1).optional(),
3682
+ option: z13.string().min(1),
3683
+ reason: z13.string().max(CARD_DESCRIPTION_MAX).optional(),
3684
+ requestingUserId: z13.string().optional()
3685
+ });
3686
+ var ResolveProjectDecisionRequestSchema = z13.object({
3687
+ projectId: z13.string(),
3688
+ decision: z13.string().min(1),
3689
+ option: z13.string().min(1),
3690
+ resolution: z13.string().min(1).max(DECISION_RESOLUTION_MAX),
3691
+ notes: z13.string().optional(),
3692
+ requestingUserId: z13.string().optional()
3693
+ });
3694
+ var UpdateProjectDecisionRequestSchema = z13.object({
3695
+ projectId: z13.string(),
3696
+ decision: z13.string().min(1),
3697
+ question: z13.string().min(1).max(200).optional(),
3698
+ summary: z13.string().max(CARD_DESCRIPTION_MAX).optional(),
3699
+ context: z13.string().min(1).optional(),
3678
3700
  /** Accepted only while nobody has voted. */
3679
3701
  options: optionsInput.optional(),
3680
- defaultOption: z12.number().int().min(1).max(DECISION_OPTIONS_MAX).optional(),
3681
- tagNames: z12.array(z12.string().min(1)).max(10).optional(),
3702
+ defaultOption: z13.number().int().min(1).max(DECISION_OPTIONS_MAX).optional(),
3703
+ tagNames: z13.array(z13.string().min(1)).max(10).optional(),
3682
3704
  deadlineHours,
3683
3705
  /** Absolute deadline (ISO 8601). Wins over `deadlineHours` when both are sent. */
3684
- deadlineAt: z12.string().datetime({ offset: true }).optional(),
3685
- addImpactedCards: z12.array(z12.string().min(1)).max(50).optional(),
3686
- removeImpactedCards: z12.array(z12.string().min(1)).max(50).optional(),
3687
- status: z12.enum(["Cancelled", "Open"]).optional(),
3688
- requestingUserId: z12.string().optional()
3706
+ deadlineAt: z13.string().datetime({ offset: true }).optional(),
3707
+ addImpactedCards: z13.array(z13.string().min(1)).max(50).optional(),
3708
+ removeImpactedCards: z13.array(z13.string().min(1)).max(50).optional(),
3709
+ status: z13.enum(["Cancelled", "Open"]).optional(),
3710
+ requestingUserId: z13.string().optional()
3689
3711
  });
3690
3712
  var EVALUATE_MAX_QUESTIONS = 32;
3691
3713
  var EVALUATE_MAX_ITEMS = 100;
@@ -3693,29 +3715,29 @@ var EVALUATE_ITEM_MAX_CHARS = 8e3;
3693
3715
  var EVALUATE_REQUEST_MAX_CHARS = 4e5;
3694
3716
  var TEXT_MAX = 1e3;
3695
3717
  var QUESTION_KEY = /^[A-Za-z0-9_-]{1,64}$/;
3696
- var EvaluateQuestionSchema = z13.object({
3697
- key: z13.string().regex(QUESTION_KEY, "key must be 1-64 letters, digits, _ or -"),
3698
- type: z13.enum(["noul", "choice", "score"]),
3699
- instructions: z13.string().min(1).max(4e3),
3700
- options: z13.array(
3701
- z13.object({
3702
- key: z13.string().min(1).max(200),
3703
- description: z13.string().min(1).max(TEXT_MAX)
3718
+ var EvaluateQuestionSchema = z14.object({
3719
+ key: z14.string().regex(QUESTION_KEY, "key must be 1-64 letters, digits, _ or -"),
3720
+ type: z14.enum(["noul", "choice", "score"]),
3721
+ instructions: z14.string().min(1).max(4e3),
3722
+ options: z14.array(
3723
+ z14.object({
3724
+ key: z14.string().min(1).max(200),
3725
+ description: z14.string().min(1).max(TEXT_MAX)
3704
3726
  })
3705
3727
  ).optional(),
3706
- levels: z13.array(z13.string().min(1).max(TEXT_MAX)).optional()
3728
+ levels: z14.array(z14.string().min(1).max(TEXT_MAX)).optional()
3707
3729
  }).superRefine((q, ctx) => {
3708
3730
  if (q.type === "choice") {
3709
3731
  const n = q.options?.length ?? 0;
3710
3732
  if (n < 2 || n > 255) {
3711
3733
  ctx.addIssue({
3712
- code: z13.ZodIssueCode.custom,
3734
+ code: z14.ZodIssueCode.custom,
3713
3735
  path: ["options"],
3714
3736
  message: "a choice question needs 2-255 options"
3715
3737
  });
3716
3738
  } else if (new Set(q.options?.map((o) => o.key)).size !== n) {
3717
3739
  ctx.addIssue({
3718
- code: z13.ZodIssueCode.custom,
3740
+ code: z14.ZodIssueCode.custom,
3719
3741
  path: ["options"],
3720
3742
  message: "option keys must be unique"
3721
3743
  });
@@ -3725,36 +3747,36 @@ var EvaluateQuestionSchema = z13.object({
3725
3747
  const n = q.levels?.length ?? 0;
3726
3748
  if (n < 2 || n > 10) {
3727
3749
  ctx.addIssue({
3728
- code: z13.ZodIssueCode.custom,
3750
+ code: z14.ZodIssueCode.custom,
3729
3751
  path: ["levels"],
3730
3752
  message: "a score question needs 2-10 levels"
3731
3753
  });
3732
3754
  }
3733
3755
  }
3734
3756
  });
3735
- var EvaluateQuestionsRequestSchema = z13.object({
3736
- projectId: z13.string(),
3737
- state: z13.string().max(JEV_STATE_MAX_CHARS).optional(),
3738
- items: z13.array(z13.string().max(EVALUATE_ITEM_MAX_CHARS)).max(EVALUATE_MAX_ITEMS).optional(),
3739
- questions: z13.array(EvaluateQuestionSchema).min(1).max(EVALUATE_MAX_QUESTIONS)
3757
+ var EvaluateQuestionsRequestSchema = z14.object({
3758
+ projectId: z14.string(),
3759
+ state: z14.string().max(JEV_STATE_MAX_CHARS).optional(),
3760
+ items: z14.array(z14.string().max(EVALUATE_ITEM_MAX_CHARS)).max(EVALUATE_MAX_ITEMS).optional(),
3761
+ questions: z14.array(EvaluateQuestionSchema).min(1).max(EVALUATE_MAX_QUESTIONS)
3740
3762
  }).superRefine((req, ctx) => {
3741
3763
  if (req.state === void 0 && (!req.items || req.items.length === 0)) {
3742
3764
  ctx.addIssue({
3743
- code: z13.ZodIssueCode.custom,
3765
+ code: z14.ZodIssueCode.custom,
3744
3766
  path: ["state"],
3745
3767
  message: "pass state, or a non-empty items array"
3746
3768
  });
3747
3769
  }
3748
3770
  if (JSON.stringify(req).length > EVALUATE_REQUEST_MAX_CHARS) {
3749
3771
  ctx.addIssue({
3750
- code: z13.ZodIssueCode.custom,
3772
+ code: z14.ZodIssueCode.custom,
3751
3773
  path: [],
3752
3774
  message: `the request is over ${EVALUATE_REQUEST_MAX_CHARS} characters; split the items across calls`
3753
3775
  });
3754
3776
  }
3755
3777
  if (new Set(req.questions.map((q) => q.key)).size !== req.questions.length) {
3756
3778
  ctx.addIssue({
3757
- code: z13.ZodIssueCode.custom,
3779
+ code: z14.ZodIssueCode.custom,
3758
3780
  path: ["questions"],
3759
3781
  message: "question keys must be unique"
3760
3782
  });
@@ -3792,129 +3814,129 @@ var MEETING_TITLE_MAX = 200;
3792
3814
  var MEETING_OCCURRED_AT_MIN_YEAR = 2e3;
3793
3815
  var MEETING_OCCURRED_AT_MAX_FUTURE_MS = 48 * 60 * 60 * 1e3;
3794
3816
  var OCCURRED_AT_RANGE_MESSAGE = `occurredAt must be a real date: no earlier than ${MEETING_OCCURRED_AT_MIN_YEAR}, and no more than 48 hours in the future.`;
3795
- var MeetingOccurredAtSchema = z14.string().datetime().refine((value) => {
3817
+ var MeetingOccurredAtSchema = z15.string().datetime().refine((value) => {
3796
3818
  const ms = Date.parse(value);
3797
3819
  if (Number.isNaN(ms)) return false;
3798
3820
  if (ms > Date.now() + MEETING_OCCURRED_AT_MAX_FUTURE_MS) return false;
3799
3821
  return new Date(ms).getUTCFullYear() >= MEETING_OCCURRED_AT_MIN_YEAR;
3800
3822
  }, OCCURRED_AT_RANGE_MESSAGE);
3801
- var CreateMeetingFromTranscriptRequestSchema = z14.object({
3802
- projectId: z14.string().cuid(),
3803
- rawText: z14.string().min(1).max(MEETING_TRANSCRIPT_MAX_CHARS),
3804
- title: z14.string().min(1).max(MEETING_TITLE_MAX).optional(),
3823
+ var CreateMeetingFromTranscriptRequestSchema = z15.object({
3824
+ projectId: z15.string().cuid(),
3825
+ rawText: z15.string().min(1).max(MEETING_TRANSCRIPT_MAX_CHARS),
3826
+ title: z15.string().min(1).max(MEETING_TITLE_MAX).optional(),
3805
3827
  /** ISO 8601. Defaults to now when the source carries no date. */
3806
3828
  occurredAt: MeetingOccurredAtSchema.optional(),
3807
3829
  /** Override auto-detection. Rarely needed; detection handles the three formats. */
3808
- format: z14.enum(["text", "vtt", "srt"]).optional(),
3809
- source: z14.enum(["manual", "slack"]).optional()
3830
+ format: z15.enum(["text", "vtt", "srt"]).optional(),
3831
+ source: z15.enum(["manual", "slack"]).optional()
3810
3832
  });
3811
- var GetMeetingRequestSchema = z14.object({
3812
- projectId: z14.string().cuid(),
3813
- meetingId: z14.string().cuid()
3833
+ var GetMeetingRequestSchema = z15.object({
3834
+ projectId: z15.string().cuid(),
3835
+ meetingId: z15.string().cuid()
3814
3836
  });
3815
- var UpdateMeetingRequestSchema = z14.object({
3816
- projectId: z14.string().cuid(),
3817
- meetingId: z14.string().cuid(),
3818
- title: z14.string().min(1).max(MEETING_TITLE_MAX).optional(),
3837
+ var UpdateMeetingRequestSchema = z15.object({
3838
+ projectId: z15.string().cuid(),
3839
+ meetingId: z15.string().cuid(),
3840
+ title: z15.string().min(1).max(MEETING_TITLE_MAX).optional(),
3819
3841
  occurredAt: MeetingOccurredAtSchema.optional()
3820
3842
  });
3821
- var RegenerateMeetingSummaryRequestSchema = z14.object({
3822
- projectId: z14.string().cuid(),
3823
- meetingId: z14.string().cuid()
3843
+ var RegenerateMeetingSummaryRequestSchema = z15.object({
3844
+ projectId: z15.string().cuid(),
3845
+ meetingId: z15.string().cuid()
3824
3846
  });
3825
- var DeleteMeetingRequestSchema = z14.object({
3826
- projectId: z14.string().cuid(),
3827
- meetingId: z14.string().cuid()
3847
+ var DeleteMeetingRequestSchema = z15.object({
3848
+ projectId: z15.string().cuid(),
3849
+ meetingId: z15.string().cuid()
3828
3850
  });
3829
- var checklistTitle = z14.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX);
3830
- var ListMeetingChecklistRequestSchema = z14.object({
3831
- projectId: z14.string().cuid(),
3832
- meetingId: z14.string().cuid()
3851
+ var checklistTitle = z15.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX);
3852
+ var ListMeetingChecklistRequestSchema = z15.object({
3853
+ projectId: z15.string().cuid(),
3854
+ meetingId: z15.string().cuid()
3833
3855
  });
3834
- var AddMeetingChecklistItemsRequestSchema = z14.object({
3835
- projectId: z14.string().cuid(),
3836
- meetingId: z14.string().cuid(),
3837
- items: z14.array(z14.object({ title: checklistTitle })).min(1).max(50)
3856
+ var AddMeetingChecklistItemsRequestSchema = z15.object({
3857
+ projectId: z15.string().cuid(),
3858
+ meetingId: z15.string().cuid(),
3859
+ items: z15.array(z15.object({ title: checklistTitle })).min(1).max(50)
3838
3860
  });
3839
- var UpdateMeetingChecklistItemRequestSchema = z14.object({
3840
- projectId: z14.string().cuid(),
3841
- meetingId: z14.string().cuid(),
3842
- itemId: z14.string().cuid(),
3861
+ var UpdateMeetingChecklistItemRequestSchema = z15.object({
3862
+ projectId: z15.string().cuid(),
3863
+ meetingId: z15.string().cuid(),
3864
+ itemId: z15.string().cuid(),
3843
3865
  title: checklistTitle.optional(),
3844
- ordinal: z14.number().int().min(0).optional(),
3866
+ ordinal: z15.number().int().min(0).optional(),
3845
3867
  /** Explicit null clears the link; undefined leaves it alone. */
3846
- linkedTaskId: z14.string().cuid().nullable().optional()
3868
+ linkedTaskId: z15.string().cuid().nullable().optional()
3847
3869
  }).refine(
3848
3870
  (v) => v.title !== void 0 || v.ordinal !== void 0 || v.linkedTaskId !== void 0,
3849
3871
  "Pass at least one of title, ordinal, or linkedTaskId."
3850
3872
  );
3851
- var DeleteMeetingChecklistItemRequestSchema = z14.object({
3852
- projectId: z14.string().cuid(),
3853
- meetingId: z14.string().cuid(),
3854
- itemId: z14.string().cuid()
3855
- });
3856
- var SetMeetingChecklistItemCheckedRequestSchema = z14.object({
3857
- projectId: z14.string().cuid(),
3858
- meetingId: z14.string().cuid(),
3859
- itemId: z14.string().cuid(),
3860
- checked: z14.boolean(),
3873
+ var DeleteMeetingChecklistItemRequestSchema = z15.object({
3874
+ projectId: z15.string().cuid(),
3875
+ meetingId: z15.string().cuid(),
3876
+ itemId: z15.string().cuid()
3877
+ });
3878
+ var SetMeetingChecklistItemCheckedRequestSchema = z15.object({
3879
+ projectId: z15.string().cuid(),
3880
+ meetingId: z15.string().cuid(),
3881
+ itemId: z15.string().cuid(),
3882
+ checked: z15.boolean(),
3861
3883
  /** Attach the card in the same call that ticks the item. */
3862
- linkedTaskId: z14.string().cuid().nullable().optional()
3884
+ linkedTaskId: z15.string().cuid().nullable().optional()
3863
3885
  });
3864
- var ListMeetingsRequestSchema = z14.object({
3865
- projectId: z14.string().cuid(),
3866
- limit: z14.number().int().min(1).max(50).optional(),
3867
- search: z14.string().max(200).optional()
3886
+ var ListMeetingsRequestSchema = z15.object({
3887
+ projectId: z15.string().cuid(),
3888
+ limit: z15.number().int().min(1).max(50).optional(),
3889
+ search: z15.string().max(200).optional()
3868
3890
  });
3869
- var ReadMeetingTranscriptRequestSchema = z14.object({
3870
- projectId: z14.string().cuid(),
3871
- meetingId: z14.string().cuid(),
3872
- offset: z14.number().int().min(0).optional(),
3873
- limit: z14.number().int().min(1).max(500).optional()
3891
+ var ReadMeetingTranscriptRequestSchema = z15.object({
3892
+ projectId: z15.string().cuid(),
3893
+ meetingId: z15.string().cuid(),
3894
+ offset: z15.number().int().min(0).optional(),
3895
+ limit: z15.number().int().min(1).max(500).optional()
3874
3896
  });
3875
3897
  var MEETING_SUMMARY_MAX_CHARS = 5e4;
3876
- var AddProjectMeetingChecklistItemsRequestSchema = z14.object({
3877
- projectId: z14.string().cuid(),
3878
- meetingId: z14.string().cuid(),
3879
- items: z14.array(z14.object({ title: z14.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX) })).min(1).max(50),
3880
- requestingUserId: z14.string().optional()
3881
- });
3882
- var CheckProjectMeetingChecklistItemRequestSchema = z14.object({
3883
- projectId: z14.string().cuid(),
3884
- meetingId: z14.string().cuid(),
3885
- title: z14.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX),
3886
- checked: z14.boolean(),
3898
+ var AddProjectMeetingChecklistItemsRequestSchema = z15.object({
3899
+ projectId: z15.string().cuid(),
3900
+ meetingId: z15.string().cuid(),
3901
+ items: z15.array(z15.object({ title: z15.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX) })).min(1).max(50),
3902
+ requestingUserId: z15.string().optional()
3903
+ });
3904
+ var CheckProjectMeetingChecklistItemRequestSchema = z15.object({
3905
+ projectId: z15.string().cuid(),
3906
+ meetingId: z15.string().cuid(),
3907
+ title: z15.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX),
3908
+ checked: z15.boolean(),
3887
3909
  /** Card id or slug. Resolved server-side and required to be in the project. */
3888
- linkedTask: z14.string().min(1).optional(),
3889
- requestingUserId: z14.string().optional()
3890
- });
3891
- var EditProjectMeetingChecklistItemRequestSchema = z14.object({
3892
- projectId: z14.string().cuid(),
3893
- meetingId: z14.string().cuid(),
3894
- title: z14.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX),
3895
- newTitle: z14.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX),
3896
- requestingUserId: z14.string().optional()
3897
- });
3898
- var RemoveProjectMeetingChecklistItemRequestSchema = z14.object({
3899
- projectId: z14.string().cuid(),
3900
- meetingId: z14.string().cuid(),
3901
- title: z14.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX),
3902
- requestingUserId: z14.string().optional()
3903
- });
3904
- var CreateProjectMeetingRequestSchema = z14.object({
3905
- projectId: z14.string().cuid(),
3906
- rawText: z14.string().min(1).max(MEETING_TRANSCRIPT_MAX_CHARS),
3907
- title: z14.string().min(1).max(MEETING_TITLE_MAX).optional(),
3910
+ linkedTask: z15.string().min(1).optional(),
3911
+ requestingUserId: z15.string().optional()
3912
+ });
3913
+ var EditProjectMeetingChecklistItemRequestSchema = z15.object({
3914
+ projectId: z15.string().cuid(),
3915
+ meetingId: z15.string().cuid(),
3916
+ title: z15.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX),
3917
+ newTitle: z15.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX),
3918
+ requestingUserId: z15.string().optional()
3919
+ });
3920
+ var RemoveProjectMeetingChecklistItemRequestSchema = z15.object({
3921
+ projectId: z15.string().cuid(),
3922
+ meetingId: z15.string().cuid(),
3923
+ title: z15.string().min(1).max(MEETING_CHECKLIST_TITLE_MAX),
3924
+ requestingUserId: z15.string().optional()
3925
+ });
3926
+ var CreateProjectMeetingRequestSchema = z15.object({
3927
+ projectId: z15.string().cuid(),
3928
+ rawText: z15.string().min(1).max(MEETING_TRANSCRIPT_MAX_CHARS),
3929
+ title: z15.string().min(1).max(MEETING_TITLE_MAX).optional(),
3908
3930
  occurredAt: MeetingOccurredAtSchema.optional(),
3909
- requestingUserId: z14.string().optional()
3931
+ requestingUserId: z15.string().optional()
3910
3932
  });
3911
- var UpdateProjectMeetingRequestSchema = z14.object({
3912
- projectId: z14.string().cuid(),
3913
- meetingId: z14.string().cuid(),
3914
- title: z14.string().min(1).max(MEETING_TITLE_MAX).optional(),
3933
+ var UpdateProjectMeetingRequestSchema = z15.object({
3934
+ projectId: z15.string().cuid(),
3935
+ meetingId: z15.string().cuid(),
3936
+ title: z15.string().min(1).max(MEETING_TITLE_MAX).optional(),
3915
3937
  occurredAt: MeetingOccurredAtSchema.optional(),
3916
- summary: z14.string().min(1).max(MEETING_SUMMARY_MAX_CHARS).optional(),
3917
- requestingUserId: z14.string().optional()
3938
+ summary: z15.string().min(1).max(MEETING_SUMMARY_MAX_CHARS).optional(),
3939
+ requestingUserId: z15.string().optional()
3918
3940
  }).refine(
3919
3941
  (v) => v.title !== void 0 || v.occurredAt !== void 0 || v.summary !== void 0,
3920
3942
  "Pass at least one of title, occurredAt, or summary."