@standards/schema 1.0.0-alpha.403 → 1.0.0-alpha.405

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.
@@ -148,6 +148,20 @@ export interface PageAudience {
148
148
  /** Pages only carry manual grants (screens spec § 8). */
149
149
  grants: ResourceAccessGrant<RecordAccessRole, "manual">[];
150
150
  }
151
+ /** Roles a conversation share carries (spec 2026-10-27 §4.5): it is read, never written. */
152
+ export declare const AGENT_SESSION_ACCESS_ROLES: readonly ["reader"];
153
+ export type AgentSessionAccessRole = (typeof AGENT_SESSION_ACCESS_ROLES)[number];
154
+ /** Who reads a root conversation beyond its creator (`GET /agents/sessions/:id/access`). */
155
+ export interface AgentSessionAudience {
156
+ sessionId: string;
157
+ /** Always `private`: a conversation is its creator's. */
158
+ visibility: ResourceVisibility;
159
+ /** The conversation's creator, the only one who shares it. */
160
+ ownedBy: Uuid | null;
161
+ viewerAccess: ViewerAccess;
162
+ /** Conversations only carry manual `reader` grants. */
163
+ grants: ResourceAccessGrant<AgentSessionAccessRole, "manual">[];
164
+ }
151
165
  /** The resource an access operation addresses. */
152
166
  export type ResourceAccessTarget = {
153
167
  kind: "record";
@@ -159,6 +173,9 @@ export type ResourceAccessTarget = {
159
173
  } | {
160
174
  kind: "page";
161
175
  id: string;
176
+ } | {
177
+ kind: "agent_session";
178
+ id: string;
162
179
  };
163
180
  /** Narrow an untrusted value (HTTP body, CLI flag) to a record grant role. */
164
181
  export declare function parseRecordAccessRole(value: unknown): RecordAccessRole;
@@ -166,6 +183,8 @@ export declare function parseRecordAccessRole(value: unknown): RecordAccessRole;
166
183
  export declare function parseAgentDefinitionAccessRole(value: unknown): AccessRole;
167
184
  /** Narrow an untrusted value to a page grant role: a page is read or edited, never "used". */
168
185
  export declare function parsePageAccessRole(value: unknown): RecordAccessRole;
186
+ /** Narrow an untrusted value to a conversation grant role: only `reader`. */
187
+ export declare function parseAgentSessionAccessRole(value: unknown): AgentSessionAccessRole;
169
188
  /**
170
189
  * The single derivation of `viewerAccess`, from the row's owner and the
171
190
  * `viewer_grant` storage computed FOR this viewer. A private resource that is
@@ -148,6 +148,20 @@ export interface PageAudience {
148
148
  /** Pages only carry manual grants (screens spec § 8). */
149
149
  grants: ResourceAccessGrant<RecordAccessRole, "manual">[];
150
150
  }
151
+ /** Roles a conversation share carries (spec 2026-10-27 §4.5): it is read, never written. */
152
+ export declare const AGENT_SESSION_ACCESS_ROLES: readonly ["reader"];
153
+ export type AgentSessionAccessRole = (typeof AGENT_SESSION_ACCESS_ROLES)[number];
154
+ /** Who reads a root conversation beyond its creator (`GET /agents/sessions/:id/access`). */
155
+ export interface AgentSessionAudience {
156
+ sessionId: string;
157
+ /** Always `private`: a conversation is its creator's. */
158
+ visibility: ResourceVisibility;
159
+ /** The conversation's creator, the only one who shares it. */
160
+ ownedBy: Uuid | null;
161
+ viewerAccess: ViewerAccess;
162
+ /** Conversations only carry manual `reader` grants. */
163
+ grants: ResourceAccessGrant<AgentSessionAccessRole, "manual">[];
164
+ }
151
165
  /** The resource an access operation addresses. */
152
166
  export type ResourceAccessTarget = {
153
167
  kind: "record";
@@ -159,6 +173,9 @@ export type ResourceAccessTarget = {
159
173
  } | {
160
174
  kind: "page";
161
175
  id: string;
176
+ } | {
177
+ kind: "agent_session";
178
+ id: string;
162
179
  };
163
180
  /** Narrow an untrusted value (HTTP body, CLI flag) to a record grant role. */
164
181
  export declare function parseRecordAccessRole(value: unknown): RecordAccessRole;
@@ -166,6 +183,8 @@ export declare function parseRecordAccessRole(value: unknown): RecordAccessRole;
166
183
  export declare function parseAgentDefinitionAccessRole(value: unknown): AccessRole;
167
184
  /** Narrow an untrusted value to a page grant role: a page is read or edited, never "used". */
168
185
  export declare function parsePageAccessRole(value: unknown): RecordAccessRole;
186
+ /** Narrow an untrusted value to a conversation grant role: only `reader`. */
187
+ export declare function parseAgentSessionAccessRole(value: unknown): AgentSessionAccessRole;
169
188
  /**
170
189
  * The single derivation of `viewerAccess`, from the row's owner and the
171
190
  * `viewer_grant` storage computed FOR this viewer. A private resource that is
@@ -0,0 +1,2 @@
1
+ /*! © 2025-2026 AND YOU CREATE SAS (RCS Paris 940 190 614). Proprietary — see LICENSE (Standards SDK License 1.0). */
2
+ const e=require("./rolldown-runtime-DETHMehu.js"),t=require("./exceptions.js");require("./zod-locale.js");const n=require("./primitives-BBtVhLdq.js");let r=require("zod");r=e.__toESM(r);let i=require("@standards/constants");const a=[`completed`,`failed`,`cancelled`];function invalidSessionState(e){throw new t.SchemaError(e,t.SchemaErrorCode.INVARIANT_VIOLATION)}function assertSessionState(e){e.phase===`running`?e.runningTurnId===void 0&&invalidSessionState(`running session without runningTurnId`):e.runningTurnId!==void 0&&invalidSessionState(`runningTurnId present on a ${e.phase} session`),e.phase===`parked`?e.parkedOn===void 0&&invalidSessionState(`parked session without parkedOn`):e.parkedOn!==void 0&&invalidSessionState(`parkedOn present on a ${e.phase} session`),e.parkedOn===`human`?e.humanRequestIds===void 0&&invalidSessionState(`human-parked session without humanRequestIds`):e.humanRequestIds!==void 0&&invalidSessionState(`humanRequestIds present on a session not parked on a human`)}const ee=[`createdAt`,`lastActivity`],te=[`mine`,`shared`,`team`],o=Object.freeze({mutation:`ask`,destructive:`ask`,outward:`ask`}),ne=[`active`,`completed`,`abandoned`],re=[`openai`,`anthropic`,`google`,`spacexai`,`deepseek`,`moonshotai`,`alibaba`,`mistral`,`minimax`,`meta`,`zai`,`cursor`],ie=[`standard`,`fast`],s=[`none`,`minimal`,`low`,`medium`,`high`,`xhigh`],c=[`conversation`,`writing`,`coding`,`analysis`,`extraction`],l=[`light`,`standard`,`heavy`],u=[`manual`,`auto`],ae={interactive:{inputPerMillionUsd:5,outputPerMillionUsd:25},delegated:{inputPerMillionUsd:2,outputPerMillionUsd:12}},d=[`model`,`speed`,`reasoning`,`imageModel`,`routing`];function mergeSessionInferencePatch(e,t){let n={...e};for(let e of d){let r=t[e];r===null?delete n[e]:r!==void 0&&Object.assign(n,{[e]:r})}return t.model&&t.routing===void 0&&(n.routing=`manual`),n}function isRoutineActorMetadata(e){return e?.kind===`routine`}const f=[`octopus`,`clover`,`flower`,`triangle`,`square`,`blob`,`circle`,`drop`,`hexagon`,`pill`,`pebble`,`puddle`],p=[`relaxed`,`neutral`];function agentDisplayName(e){return e.label?.trim()||e.name}const m=[`approval-requested`,`approval-responded`,`approval-dispatched`],oe=[`streaming`,`running`,`pending`,...m];function isOpenToolPartState(e){return oe.includes(e)}function isToolApprovalState(e){return m.includes(e)}const h=[`CREDITS_EXHAUSTED`];function isSystemPartCode(e){return typeof e==`string`&&h.includes(e)}function compareAgentSessionMessages(e,t){let n=e.createdAt.getTime()-t.createdAt.getTime();return n===0?e.id.localeCompare(t.id):n}function orderAgentSessionMessages(e){return[...e].sort(compareAgentSessionMessages)}const se=`agent-notification`;function isAgentNotificationMetadata(e){return e?.kind===se}const ce=`agent-message`;function isAgentMessageMetadata(e){return e?.kind===ce}const le=`architect-publication`;function isArchitectPublicationMetadata(e){return e?.kind===le}const ue=[`pending`,`in_progress`,`completed`,`blocked`],de=[`objects`,`fields`,`relations`,`views`,`samples`],g=[`sandbox`,`web`,`image`,`memory`,`bulk`,`activity`,`orchestration`,`host`,`cloud-browser`,`notifications`],_=[`mcp`,`email.read`,`email.send`,`calendar.read`,`github`,`slack.read`,`slack.write`,`device`,`browser`,`browser-profile`,`login`],fe=[`definition`,`default`,`child`,`inline`],pe=[`manual`,`name-asc`,`name-desc`,`date-desc`,`date-asc`],me=[`reader`,`runner`,`editor`],v=[`reader`,`editor`],he=[`manual`,`meeting_attendee`],ge=new Set([`memory`,`skill`]),_e=[`reader`];function parseRole(e,n){if(typeof n==`string`&&e.includes(n))return n;let r=`role must be one of: ${e.join(`, `)}`;throw new t.ValidationError(r,[{path:[`role`],message:r}])}function parseRecordAccessRole(e){return parseRole(v,e)}function parseAgentDefinitionAccessRole(e){return parseRole(me,e)}function parsePageAccessRole(e){return parseRole(v,e)}function parseAgentSessionAccessRole(e){return parseRole(_e,e)}function deriveViewerAccess(e,t){return e.visibility===`workspace`?`workspace`:e.ownedBy!==null&&t.includes(e.ownedBy)?`owner`:e.viewerGrant===`editor`?`editor`:e.viewerGrant===`runner`?`runner`:`reader`}const ve=[`fr`,`en`],y=[`none`,`estimated`,`exact`];function parseCountMode(e){if(typeof e==`string`&&y.includes(e))return e;throw new t.ValidationError(`countMode must be one of: ${y.join(`, `)} (received: ${String(e)})`,[])}function parseOptionalCountMode(e){return e===void 0?void 0:parseCountMode(e)}const ye=[`record`,`object`,`attribute`,`view`,`user`,`role`,`settings`,`file`,`agent`,`bundle`,`tenant_invitation`,`api_key`,`agent_session`],be=`record.created,record.updated,record.deleted,record.restored,record.purged,record.access_changed,agent.access_changed,agent_session.supervised_read,object.created,object.updated,object.deleted,attribute.created,attribute.updated,attribute.deleted,view.created,view.updated,view.deleted,bundle.synced,bundle.removed,bundle.added,user.created,user.invited,user.updated,user.deleted,user.login,user.logout,tenant_invitation.created,tenant_invitation.delivery_failed,tenant_invitation.resent,tenant_invitation.revoked,tenant_invitation.accepted,role.created,role.updated,role.deleted,role.assigned,role.revoked,api_key.detached,settings.updated,file.uploaded,file.updated,file.deleted`.split(`,`);function isAgentWrittenAuditEntry(e){return e.actorType===`agent`||typeof e.metadata?.agentSessionId==`string`}const xe=[`draft_schema`],b=`request_design_review`,x=`ask_questions`,S=`request_setup`,Se=new Set([x,b,S]),C=new Set([x,S]),w=new Set([b]),Ce=r.union([r.object({value:r.string(),label:r.string()}).strict(),r.object({values:r.array(r.string()),labels:r.array(r.string()),text:r.string().optional()}).strict(),r.object({text:r.string()}).strict()]),T=r.object({skipped:r.boolean().describe(`True if the person skipped all questions`),answers:r.record(r.string(),Ce).describe(`Map of question ID to the answer given, with each chosen option's value and label`)});function readAskQuestionsResult(e){let t=T.safeParse(e);return t.success?t.data:null}function humanRequestKind(e){return e.approvalId==null?C.has(e.name)?`question`:w.has(e.name)?`review`:null:`approval`}function isAwaitingHuman(e){return humanRequestKind(e)===null||e.state===`streaming`||!isOpenToolPartState(e.state)||e.result!==void 0||e.error!==void 0?!1:e.approvalId==null||e.state===`approval-requested`&&e.approved===void 0}function isBlocking(e){let t=humanRequestKind(e);return t===`review`?isOpenToolPartState(e.state):t===`approval`&&e.state===`approval-requested`&&e.approved===void 0}function humanRequestId(e){return e.approvalId??e.toolCallId}function openRequests(e,t){let n=t.blocking?isBlocking:isAwaitingHuman,r=[];for(let t of e)for(let e of t.parts??[])isToolRequestPart(e)&&n(e)&&r.push({part:e,id:humanRequestId(e),requestedAt:t.createdAt});return r}function isToolRequestPart(e){return e.type===`tool`}function isParkedOnHuman(e){return e?.phase===`parked`&&e.parkedOn===`human`}function recentActivityEntryKey(e){return e.kind===`record`?JSON.stringify([`record`,e.objectName,e.recordId]):JSON.stringify([`conversation`,`sessionId`in e?e.sessionId:e.session.id])}const E=`Notetaker`,we=/^\d{1,9}(\.\d{1,6})?$/,Te={meetingRecordingPolicy:`none`,meetingBotDisplayName:E,memoryPersonMonthlyLimitUsd:null,memoryTenantMonthlyLimitUsd:null,findImages:!0},Ee=[`active`,`suspended`],De=[`architect`,`manual`,`auto`],Oe=[`panel`,`fullscreen`],ke=r.discriminatedUnion(`type`,[r.strictObject({type:r.literal(`record`),object:r.string().min(1),id:r.guid()}),r.strictObject({type:r.literal(`user`),id:r.guid()})]),Ae=r.strictObject({nodes:r.array(ke).min(1).max(50),limitPerNode:r.number().int().min(1).max(200).default(50)});function recordGraphNodeKey(e){return e.type===`record`?`record:${e.object}:${e.id}`:`user:${e.id}`}const D=`work`,O=`/vercel/sandbox/${D}`,k=`/workspace`;function environmentWorkdir(e){return e?O:k}const A=[{id:`claude-code`,label:`Claude Code`,provider:`anthropic`,apiKeyEnv:`ANTHROPIC_API_KEY`,models:[{id:`sonnet`,label:`Claude Sonnet`},{id:`opus`,label:`Claude Opus`},{id:`haiku`,label:`Claude Haiku`}],defaultModel:`sonnet`},{id:`codex`,label:`Codex`,provider:`openai`,apiKeyEnv:`OPENAI_API_KEY`,models:[{id:`gpt-6.1-sol`,label:`GPT-6.1 Sol`},{id:`gpt-6-luna`,label:`GPT-6 Luna`},{id:`gpt-6-astra`,label:`GPT-6 Astra`}],defaultModel:`gpt-6.1-sol`},{id:`cursor`,label:`Cursor`,provider:`cursor`,apiKeyEnv:`CURSOR_API_KEY`,models:[{id:`auto`,label:`Auto`,cliDefault:!0},{id:`composer-2.5`,label:`Composer 2.5`}],defaultModel:`auto`}],j=new Map(A.map(e=>[e.id,e]));function isEnvironmentHarnessId(e){return j.has(e)}function findEnvironmentHarness(e){return j.get(e)}function environmentHarness(e){let n=j.get(e);if(!n)throw new t.SchemaError(`Unknown harness "${e}"`,t.SchemaErrorCode.INVARIANT_VIOLATION);return n}function cliDefaultModelOf(e){return environmentHarness(e).models.find(e=>e.cliDefault)?.id}function compiledHarnessModels(e){let t=environmentHarness(e);return t.models.map(e=>({id:e.id,label:e.label,...e.id===t.defaultModel?{isDefault:!0}:{}}))}function harnessModelChoices(e,t){let{provider:n}=environmentHarness(e);return t.map(e=>({id:e.id,provider:n,label:e.label,...e.isDefault?{isDefault:!0}:{}}))}const M=[`search`,`query`,`read`,`write`,`delete`,`organize`,`copy`,`send`],N=[...M,`edit_content`],P=[...N,`ask_questions`,`compact_context`,`request_work_mode`,`write_todos`],F=[`browser_autopilot`,`browser_batch`,`browser_computer`,`browser_find`,`browser_form_input`,`browser_get_text`,`browser_javascript`,`browser_navigate`,`browser_read_page`,`browser_sign_in`,`browser_tabs`],je=[`record`,`document`,`file`,`skill`,`schema`,`guide`],I={memory:{kinds:[`memory`],capabilities:[],tools:[`propose_memory`]},bulk:{kinds:[],capabilities:[`bulk`],tools:[]},activity:{kinds:[],capabilities:[`activity`],tools:[]},"email.read":{kinds:[`email`,`thread`],capabilities:[`copy_email`],tools:[]},"email.send":{kinds:[`email`,`thread`,`draft`],capabilities:[`copy_email`],tools:[]},"calendar.read":{kinds:[`event`],capabilities:[`transcript`],tools:[]}},L={sandbox:{icon:`terminal`,tools:[`exec_command`,`publish_artifact`,`sandbox_validate_payload`]},web:{icon:`globe`,tools:[`read_webpage`,`web_search`]},image:{icon:`image`,tools:[`generate_image`]},memory:{icon:`book-open`,tools:I.memory.tools},bulk:{icon:`layers-two`,tools:I.bulk.tools},activity:{icon:`activity`,tools:I.activity.tools},orchestration:{icon:`git-branch`,tools:[`message_agent`,`spawn_agent`]},host:{icon:`wrench`,tools:[]},"cloud-browser":{icon:`globe`,tools:[`browser_launch`]},notifications:{icon:`bell`,tools:[`notify`]}},R={mcp:{icon:`puzzle`,tools:[]},"email.read":{icon:`envelope`,tools:I[`email.read`].tools},"email.send":{icon:`send`,tools:I[`email.send`].tools},"calendar.read":{icon:`calendar`,tools:I[`calendar.read`].tools},github:{icon:`brand-github`,tools:[]},"slack.read":{icon:`brand-slack`,tools:[`slack_read`,`slack_find`,`slack_download_file`]},"slack.write":{icon:`brand-slack`,tools:[`slack_send`,`slack_react`,`slack_set_status`]},device:{icon:`desktop`,tools:[`exec_command`]},browser:{icon:`link`,tools:F},"browser-profile":{icon:`globe`,tools:[`browser_launch`,...F]},login:{icon:`key`,tools:[]}},Me={sandbox:{kinds:[],capabilities:[],tools:L.sandbox.tools},web:{kinds:[],capabilities:[],tools:L.web.tools},image:{kinds:[],capabilities:[],tools:L.image.tools},memory:I.memory,bulk:I.bulk,activity:I.activity,orchestration:{kinds:[],capabilities:[],tools:L.orchestration.tools},host:{kinds:[],capabilities:[],tools:L.host.tools},"cloud-browser":{kinds:[],capabilities:[],tools:L[`cloud-browser`].tools},notifications:{kinds:[],capabilities:[],tools:L.notifications.tools},mcp:{kinds:[],capabilities:[],tools:R.mcp.tools},"email.read":I[`email.read`],"email.send":I[`email.send`],"calendar.read":I[`calendar.read`],github:{kinds:[],capabilities:[],tools:R.github.tools},"slack.read":{kinds:[],capabilities:[],tools:R[`slack.read`].tools},"slack.write":{kinds:[],capabilities:[],tools:R[`slack.write`].tools},device:{kinds:[],capabilities:[],tools:R.device.tools},browser:{kinds:[],capabilities:[],tools:R.browser.tools},"browser-profile":{kinds:[],capabilities:[],tools:R[`browser-profile`].tools},login:{kinds:[],capabilities:[],tools:R.login.tools}},Ne={schema:[`discard_architect_draft`,`draft_schema`,`get_architect_draft`,`get_schema_history`,`request_design_review`,`search_icons`],"agent-config":[`get_agents`,`upsert_agent`],setup:[`request_setup`],internal:[`load_toolset`]},Pe=[...new Set([...P,...g.flatMap(e=>L[e].tools),..._.flatMap(e=>R[e].tools)])],Fe={"email.read":[`gmail`,`outlook`],"email.send":[`gmail`,`outlook`],"calendar.read":[`google-calendar`,`outlook-calendar`]};function connectionGrantKindsOf(e){switch(e){case`github`:return[`github`];case`slack`:return[`slack.read`,`slack.write`];case`google-calendar`:case`outlook-calendar`:return[`calendar.read`];case`gmail`:case`outlook`:return[`email.read`,`email.send`]}}const Ie=[`activity`,`bulk`,`image`,`memory`,`orchestration`,`sandbox`,`web`],Le=[`memory`],Re=new Set([`sandbox`,`host`,`cloud-browser`]);function needsManageWhenUnattended(e){return Re.has(e)||isResourceGrant(e)}function isNativeToolGroup(e){return g.includes(e)}function parseToolGroupGrant(e){if(isNativeToolGroup(e))return{type:`native`,group:e};let t=e.indexOf(`:`);if(t<=0)return null;let n=e.slice(0,t),r=e.slice(t+1);return r.length===0||!_.includes(n)?null:{type:`resource`,kind:n,id:r}}function grantKindOf(e){let t=parseToolGroupGrant(e);return t?.type===`resource`?t.kind:null}function isResourceGrant(e){return parseToolGroupGrant(e)?.type===`resource`}function resourceGrant(e,t){return`${e}:${t}`}function canonicalToolGroups(e){return[...new Set(e)].sort()}const ze=[{key:`direct`,icon:`message`,color:`ink`,description:`A message a person wrote to this mailbox: a conversation, a question, a request, a reply.`},{key:`transactional`,icon:`credit-card`,color:`terra`,description:`An automated message about an account or an operation: receipt, invoice, payment, order, shipping, booking, password reset, security alert.`},{key:`notifications`,icon:`bell`,color:`ochre`,description:`An automated alert from a tool or a service: activity on GitHub, Slack, a calendar, a CRM, a monitoring system.`},{key:`newsletters`,icon:`book-open`,color:`stone`,description:`Editorial content the mailbox subscribed to: newsletters, digests, articles, community updates.`},{key:`marketing`,icon:`percentage`,color:`iris`,description:`Promotion or prospecting: offers, discounts, product announcements, cold sales outreach.`}],Be={direct:{en:`Direct`,fr:`Direct`},transactional:{en:`Transactional`,fr:`Transactionnel`},notifications:{en:`Notifications`,fr:`Notifications`},newsletters:{en:`Newsletters`,fr:`Newsletters`},marketing:{en:`Marketing`,fr:`Marketing`}},Ve=`stone`,He=new Set(`gmail.com,googlemail.com,outlook.com,hotmail.com,hotmail.fr,outlook.fr,live.com,live.fr,msn.com,yahoo.com,yahoo.fr,icloud.com,me.com,mac.com,proton.me,protonmail.com,gmx.com,gmx.fr,orange.fr,wanadoo.fr,free.fr,laposte.net,sfr.fr,bbox.fr,numericable.fr,aol.com`.split(`,`)),Ue=new Set(ze.map(e=>e.key)),We=new Set(Object.entries(Be).flatMap(([e,t])=>[e,t.en,t.fr].map(e=>e.toLowerCase())));function isSystemEmailCategory(e){return Ue.has(e)}function isSystemEmailCategoryName(e){return We.has(e.trim().toLowerCase())}function isPublicMailDomain(e){return He.has(e.toLowerCase())}const z={maxConcurrentRuns:3,retryPolicy:{maxRetries:3,backoffMs:1e3,backoffMultiplier:2}};var AgentBuilder=class{constructor(e){if(!e.name||e.name.trim().length===0)throw new t.ValidationError(`Agent name is required`,[]);this.bp={name:e.name,system:!0,visibility:`workspace`,triggers:[]}}description(e){return this.bp.description=e,this}label(e){return this.bp.label=e,this}avatar(e){return this.bp.avatar={type:e.type,color:e.color,expression:e.expression??`relaxed`},this}starters(e){return e.length===0?delete this.bp.starters:this.bp.starters=[...e],this}systemPrompt(e){return this.bp.systemPrompt=e,this}model(e,t,n){return this.bp.model={provider:e,model:t,...n},this}toolGroups(e){let n=e.find(e=>!isNativeToolGroup(e));if(n!==void 0)throw new t.ToolGroupGrantError(t.SchemaErrorCode.AGENT_TOOL_GROUP_UNKNOWN,n,`Agent "${this.bp.name}": "${n}" is not a native tool group (blueprints cannot grant tenant resources)`);return this.bp.toolGroups=canonicalToolGroups(e),this}schedule(e){return this.bp.schedule={...e,enabled:e.enabled??!0},this}config(e){let t=this.bp.config??z,n=e.inference===void 0?t.inference:{...t.inference,...e.inference};return this.bp.config={...t,...e,...n===void 0?{}:{inference:n}},this}delegation(e){return Object.assign(this.bp,e),this}approval(e){return this.bp.approval={...o,...this.bp.approval,...e},this}visibility(e){return this.bp.visibility=e,this}trigger(e,t,n){return this.bp.triggers.push({name:e,eventType:t,...n,enabled:n?.enabled??!0}),this}runtime(){return this.bp.system=!1,this}build(){if(!this.bp.systemPrompt)throw new t.ValidationError(`Agent "${this.bp.name}": systemPrompt is required`,[]);if(!this.bp.model)throw new t.ValidationError(`Agent "${this.bp.name}": model is required`,[]);if(this.bp.system&&this.bp.visibility===`private`)throw new t.ValidationError(`Agent "${this.bp.name}": system agents must use workspace visibility`,[]);return n.assertUniqueBy(this.bp.triggers,e=>e.name,e=>new t.ValidationError(`Agent "${this.bp.name}": duplicate trigger name "${e}"`,[])),{...this.bp,visibility:this.bp.visibility??`workspace`,toolGroups:this.bp.toolGroups??[...Le],config:this.bp.config??z,systemPrompt:this.bp.systemPrompt,model:this.bp.model}}};function agent(e){return new AgentBuilder(e)}const B={issue:{events:[`issues`],actions:[`opened`,`edited`,`closed`,`reopened`,`labeled`,`unlabeled`,`assigned`,`unassigned`,`milestoned`,`demilestoned`,`transferred`,`pinned`],conditions:[`label`,`issueLabels`,`assignees`,`milestone`,`issueType`,`text`]},pull_request:{events:[`pull_request`],actions:[`opened`,`ready_for_review`,`synchronize`,`review_requested`,`merged`,`closed`,`reopened`,`converted_to_draft`,`labeled`,`assigned`,`edited`],conditions:[`baseBranch`,`headBranch`,`draft`,`issueLabels`,`changedPaths`,`prAuthor`]},review:{events:[`pull_request_review`],actions:[`submitted`,`edited`,`dismissed`],conditions:[`reviewState`,`prAuthor`]},comment:{events:[`issue_comment`,`pull_request_review_comment`,`commit_comment`],actions:[`created`,`edited`,`deleted`],conditions:[`text`,`issueAuthor`,`prAuthor`]},push:{events:[`push`],actions:[`pushed`],conditions:[`branch`,`changedPaths`,`forced`]},ref:{events:[`create`,`delete`],actions:[`created`,`deleted`],conditions:[`refType`,`branch`,`tag`]},workflow:{events:[`workflow_run`],actions:[`requested`,`in_progress`,`completed`],conditions:[`workflowName`,`conclusion`,`branch`,`originEvent`]},check:{events:[`check_suite`,`check_run`],actions:[`completed`,`rerequested`],conditions:[`checkApp`,`checkName`,`conclusion`]},project_item:{events:[`projects_v2_item`],actions:[`created`,`edited`,`archived`,`restored`,`deleted`],conditions:[`project`,`projectField`,`from`,`to`,`itemType`]},release:{events:[`release`],actions:[`published`,`created`,`edited`,`prereleased`,`deleted`],conditions:[`prerelease`,`tag`]},discussion:{events:[`discussion`,`discussion_comment`],actions:[`created`,`commented`,`answered`,`labeled`,`closed`],conditions:[`category`,`issueLabels`,`text`]},repository:{events:[`star`,`fork`,`repository`],actions:[`starred`,`forked`,`created`,`archived`],conditions:[]}},Ge={mention:{events:[`app_mention`],conditions:[`text`]},message:{events:[`message`],conditions:[`position`,`text`,`hasFile`]},dm:{events:[`message`],conditions:[`text`,`hasFile`]},reaction:{events:[`reaction_added`],conditions:[`messageAuthor`]},member_joined:{events:[`member_joined_channel`],conditions:[]}},Ke=r.object({field:r.literal(`text`),operator:r.enum([`contains`,`starts_with`]),value:r.string().min(1)}).strict();function stringCondition(e){return r.object({field:r.literal(e),value:r.string().min(1)}).strict()}function booleanCondition(e){return r.object({field:r.literal(e),value:r.boolean()}).strict()}function listCondition(e){return r.object({field:r.literal(e),operator:r.enum([`any`,`all`]).default(`any`),value:r.array(r.string().min(1)).min(1)}).strict()}const qe=r.discriminatedUnion(`field`,[Ke,stringCondition(`label`),listCondition(`issueLabels`),listCondition(`assignees`),stringCondition(`milestone`),stringCondition(`issueType`),stringCondition(`baseBranch`),stringCondition(`headBranch`),stringCondition(`branch`),booleanCondition(`draft`),stringCondition(`changedPaths`),booleanCondition(`forced`),stringCondition(`prAuthor`),stringCondition(`issueAuthor`),r.object({field:r.literal(`reviewState`),value:r.enum([`approved`,`changes_requested`,`commented`])}).strict(),stringCondition(`workflowName`),stringCondition(`checkApp`),stringCondition(`checkName`),stringCondition(`conclusion`),stringCondition(`originEvent`),stringCondition(`project`),stringCondition(`projectField`),r.object({field:r.literal(`from`),value:r.string().nullable()}).strict(),r.object({field:r.literal(`to`),value:r.string().nullable()}).strict(),r.object({field:r.literal(`itemType`),value:r.enum([`issue`,`pull_request`,`draft`])}).strict(),booleanCondition(`prerelease`),stringCondition(`tag`),r.object({field:r.literal(`refType`),value:r.enum([`branch`,`tag`])}).strict(),stringCondition(`category`)]),Je=r.discriminatedUnion(`field`,[Ke,r.object({field:r.literal(`position`),value:r.enum([`top_level`,`reply`])}).strict(),booleanCondition(`hasFile`),stringCondition(`messageAuthor`)]),Ye=r.string().regex(/^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/),Xe=r.enum([`human`,`me`,`any`]),Ze=r.object({family:r.enum(Object.keys(B)),actions:r.array(r.string()).default([]),repositories:r.array(Ye).default([]),sender:r.union([Xe,r.object({logins:r.array(r.string().min(1)).min(1)}).strict()]).default(`human`),conditions:r.array(qe).default([])}).strict().superRefine((e,t)=>{let n=B[e.family];e.actions.forEach((r,i)=>{n.actions.includes(r)||t.addIssue({code:`custom`,path:[`actions`,i],message:`Action ${r} is not supported by ${e.family}`})}),e.conditions.forEach((r,i)=>{n.conditions.includes(r.field)||t.addIssue({code:`custom`,path:[`conditions`,i,`field`],message:`Condition ${r.field} is not supported by ${e.family}`})})}).transform(e=>e),Qe=r.object({on:r.enum([`mention`,`message`,`dm`,`reaction`,`member_joined`]),channels:r.array(r.string().min(1)).default([]),reactions:r.array(r.string().min(1)).optional(),sender:r.union([Xe,r.object({users:r.array(r.string().min(1)).min(1)}).strict()]).default(`human`),conditions:r.array(Je).default([])}).strict().superRefine((e,t)=>{e.conditions.forEach((n,r)=>{Ge[e.on].conditions.includes(n.field)||t.addIssue({code:`custom`,path:[`conditions`,r,`field`],message:`Condition ${n.field} is not supported by ${e.on}`})}),e.reactions!==void 0&&e.on!==`reaction`&&t.addIssue({code:`custom`,path:[`reactions`],message:`reactions requires on=reaction`})}).transform(e=>e),$e=r.union([Ze,Qe]),et=[`read`,`write`,`full`],tt=[`accepted`,`declined`,`tentative`],nt=[`force`,`skip`],rt=[`none`,`all`,`external_only`],it={override:null,status:`none`,failureReason:null,botId:null},at=r.object({speaker:r.string().nullable(),startsAtMs:r.number(),endsAtMs:r.number(),text:r.string()}),ot=r.object({fullText:r.string(),segments:r.array(at),language:r.string().nullable(),startedAt:r.string().nullable(),endedAt:r.string().nullable()}),st={width:1280,height:720,maxBytes:13e5,mimeType:`image/jpeg`},ct=Math.ceil(st.maxBytes/3)*4,lt=r.object({conferenceJoinUrl:r.string().min(1),botDisplayName:r.string().min(1),startsAt:r.string().nullable(),callbackUrl:r.url(),botImageJpeg:r.string().max(ct).optional()}),ut=r.object({botId:r.string().min(1)}),dt=r.discriminatedUnion(`kind`,[r.object({kind:r.literal(`transcript-ready`),botId:r.string().min(1)}),r.object({kind:r.literal(`failure`),botId:r.string().min(1),reason:r.string()})]);let ft=function(e){return e.Desktop=`desktop`,e}({});function isMailProvider(e){return e===`gmail`||e===`outlook`}const pt=`DRAFT`;function isProviderDraft(e){return e.includes(pt)}const mt=[`read`,`unread`,`archive`,`trash`,`restore`],ht=[`threads`,`messages`];function isMailboxListMode(e){return ht.includes(e)}const gt=[`reply`,`reply_all`];function isReplyMode(e){return gt.includes(e)}const _t=/^[A-Za-z0-9_-]+$/,vt=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,6})?Z$/,yt=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function encodeAgentSessionListCursor(e){return btoa(`${e.at}|${e.id}`).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``)}function decodeAgentSessionListCursor(e){if(e.length>256||!_t.test(e))return null;let t;try{t=atob(e.replace(/-/g,`+`).replace(/_/g,`/`))}catch{return null}let[n,r,...i]=t.split(`|`);return i.length>0||!n||!r||!vt.test(n)||!yt.test(r)?null:isRealInstant(n)?{at:n,id:r}:null}function isRealInstant(e){let t=new Date(e);return!Number.isNaN(t.getTime())&&t.toISOString().slice(0,19)===e.slice(0,19)}const V=r.number().finite().nonnegative(),H=r.enum(re),U=r.enum(ie),W=r.enum(s),G=r.enum(u),K=r.object({provider:H,model:r.string().min(1)}).strict(),bt=r.object({speed:U.optional(),reasoning:W.optional(),routing:G.optional()}).strict(),q=r.string().regex(/^[a-z0-9][a-z0-9-]*\/[a-z0-9][a-z0-9._-]*$/),xt=r.object({model:K.optional(),speed:U.optional(),reasoning:W.optional(),imageModel:q.optional(),routing:G.optional()}).strict(),St=xt.refine(e=>d.some(t=>e[t]!==void 0),{message:`At least one inference override is required`});function isSessionInferencePatch(e){return Object.keys(e).length>0&&Object.values(e).every(e=>e!==void 0)}const Ct=r.object({model:K.nullable().optional(),speed:U.nullable().optional(),reasoning:W.nullable().optional(),imageModel:q.nullable().optional(),routing:G.nullable().optional()}).strict().refine(isSessionInferencePatch,{message:`At least one inference override is required`}),wt=r.object({model:r.string().min(1),routing:r.object({mode:r.literal(`auto`),tasks:r.array(r.enum(c)).optional(),demand:r.enum(l).optional(),reason:r.enum([`selected`,`retained`,`fallback`]).optional(),relation:r.enum([`continue`,`modify`,`new`,`aside`,`unknown`]).optional(),anchorMessageId:r.string().min(1).optional()})}),J=r.object({label:r.string(),denied:r.boolean().optional(),deletion:r.object({target:r.string().optional(),count:V.optional(),restorableDays:V.optional()}).strict().optional(),record:r.object({objectName:r.string(),id:r.string(),label:r.string(),objectIcon:r.string().optional()}).strict().optional(),object:r.object({name:r.string(),label:r.string()}).strict().optional(),email:r.object({from:r.string(),to:r.array(r.string()),cc:r.array(r.string()),bcc:r.array(r.string()),subject:r.string().nullable(),text:r.string(),truncatedChars:V,outsideThread:r.array(r.string()),attachments:r.array(r.object({name:r.string(),size:V}).strict()),updatedAt:r.string(),forwarded:r.object({from:r.string(),subject:r.string().nullable(),quote:r.string(),quoteTruncatedChars:V}).strict().optional()}).strict().optional(),counts:r.record(r.string(),V).optional(),warnings:r.array(r.string()).optional()}).strict(),Tt=r.union([r.object({type:r.literal(`text`),text:r.string()}).strict(),r.object({type:r.literal(`reasoning`),text:r.string()}).strict(),r.object({type:r.literal(`system`),code:r.enum(h)}).strict(),r.object({type:r.literal(`error`),error:r.string(),errorClass:r.string().optional()}).strict(),r.object({type:r.literal(`tool`),toolCallId:r.string(),name:r.string(),args:r.record(r.string(),r.unknown()),result:r.unknown().optional(),error:r.string().optional(),errorCode:r.enum([`output_limit_reached`,`interrupted`,t.SchemaErrorCode.INVALID_TOOL_INPUT,`external_outcome_unknown`,`external_not_dispatched`]).optional(),state:r.enum([`streaming`,`running`,`completed`,`error`,`pending`,`approval-requested`,`approval-responded`,`approval-dispatched`]),durationMs:V.optional(),approvalId:r.string().optional(),approvalImpact:J.optional(),approved:r.boolean().optional(),approvalReason:r.string().optional(),approvalDecidedBy:r.string().optional(),approvalDecidedAt:r.string().optional(),approvalRelaxableByAuto:r.boolean().optional()}).strict(),r.object({type:r.literal(`file`),fileId:r.string(),name:r.string(),mimeType:r.string()}).strict(),r.object({type:r.literal(`compaction`),state:r.literal(`in-progress`),reason:r.enum([`preflight_threshold`,`overflow_recovery`]),estimatedTokens:V.optional(),reportedTokens:V.optional()}).strict(),r.object({type:r.literal(`compaction`),state:r.literal(`completed`),tokensBefore:V,tokensAfter:V,tokensSaved:V,strategy:r.enum([`no-op`,`summary`,`truncation`]),durationMs:V,summary:r.string().optional()}).strict(),r.object({type:r.literal(`compaction`),state:r.literal(`failed`),reason:r.string(),durationMs:V.optional()}).strict()]),Et=r.object({id:r.string(),name:r.string(),mimeType:r.string(),size:V}).strict(),Dt=r.object({id:r.string(),artifactId:r.string(),revision:r.number().int().min(1),selectedText:r.string()}).strict(),Ot=r.object({id:r.string(),type:r.string().transform(e=>e),entityId:r.string(),label:r.string(),objectName:r.string().optional(),startIndex:V,endIndex:V}).strict(),kt=r.object({provider:H,model:r.string(),maxTokens:V.optional(),contextWindow:V.optional()}).strict(),At=r.union([r.date(),r.string().datetime({offset:!0}).transform(e=>new Date(e))]),jt=r.object({id:r.string(),sessionId:r.string(),tenantId:r.string().optional(),runId:r.string().optional(),role:r.enum([`user`,`assistant`,`system`,`tool`]),parts:r.array(Tt),attachments:r.array(Et).optional(),mentions:r.array(Ot).optional(),quotes:r.array(Dt).optional(),model:kt.optional(),tokenUsage:r.object({input:V,output:V}).strict().optional(),metadata:r.record(r.string(),r.unknown()).optional(),createdAt:At}).strict(),Mt=r.object({id:r.string(),description:r.string(),status:r.enum([`pending`,`in_progress`,`completed`,`blocked`]),result:r.string().optional(),updatedAt:V.optional(),target:r.object({phase:r.enum(de)}).strict().optional()}).strict(),Nt=r.object({id:r.string(),sessionId:r.string(),status:r.enum([`active`,`completed`,`abandoned`]),todos:r.array(Mt),version:V,createdAt:r.string(),updatedAt:r.string(),completedAt:r.string().optional()}).strict(),Y={"compaction-start":r.object({reason:r.enum([`preflight_threshold`,`overflow_recovery`]),estimatedTokens:V.optional(),reportedTokens:V.optional()}).strict(),"compaction-end":r.object({tokensBefore:V,tokensAfter:V,tokensSaved:V,strategy:r.enum([`no-op`,`summary`,`truncation`]),durationMs:V,summary:r.string().optional()}).strict(),"compaction-failed":r.object({reason:r.string()}).strict(),usage:r.object({messageId:r.string().min(1).optional(),inputTokens:V,outputTokens:V,totalTokens:V,cacheReadTokens:V.optional(),cacheCreationTokens:V.optional(),contextWindow:V,residentTokens:V,utilization:r.number().finite().min(0).max(1),costUsd:V.optional()}).strict(),"message-updated":r.object({message:jt}).strict(),"approval-context":r.object({approvalId:r.string(),toolCallId:r.string(),impact:J.optional(),relaxableByAuto:r.boolean().optional()}).strict()};function isAgentUIDataName(e){return e in Y}function agentUIValidationError(e){return new t.ValidationError(`Invalid agent UI message chunk`,e.map(e=>({path:e.path.map(String),message:e.message,code:e.code})))}function assertCustomAgentUIMessageChunk(e){if(typeof e!=`object`||!e||typeof e.type!=`string`)throw new t.ValidationError(`Invalid agent UI message chunk`,[{path:[`type`],message:`Expected UI message chunk type`,code:`invalid_type`}]);let n=e.type;if(!n.startsWith(`data-`))throw new t.ValidationError(`Invalid agent UI message chunk`,[{path:[`type`],message:`Expected agent data chunk type`,code:`invalid_value`}]);let i=n.slice(5);if(!isAgentUIDataName(i))throw new t.ValidationError(`Invalid agent UI message chunk`,[{path:[`type`],message:`Unknown agent UI data type: ${i}`,code:`invalid_value`}]);let a=r.object({type:r.literal(`data-${i}`),id:r.string().optional(),data:Y[i],transient:r.boolean().optional()}).strict().safeParse(e);if(!a.success)throw agentUIValidationError(a.error.issues);return a.data}function agentDataChunk(e,t,n){return assertCustomAgentUIMessageChunk({type:`data-${e}`,...n?.id===void 0?{}:{id:n.id},data:t,...n?.transient===void 0?{}:{transient:n.transient}})}const Pt=r.string().trim().min(1).max(24),Ft=r.string().trim().min(10).max(500),It=r.enum([`address`,`domain`]),Lt=r.object({scope:r.enum([`personal`,`workspace`]),name:Pt,description:Ft,icon:n.iconNameSchema.default(`tag`),color:n.colorIdSchema.default(Ve)}),Rt=r.object({name:Pt.optional(),description:Ft.optional(),icon:n.iconNameSchema.optional(),color:n.colorIdSchema.optional()}).refine(e=>Object.values(e).some(e=>e!==void 0),{message:`Nothing to update`}),zt=r.object({moveTo:r.string().min(1).nullable().default(null)}),Bt=r.object({category:r.string().min(1).optional(),important:r.boolean().optional()}).refine(e=>e.category!==void 0||e.important!==void 0,{message:`Nothing to classify`}),Vt=r.object({verdict:r.object({category:r.string().min(1).nullable(),important:r.boolean(),classifiedBy:r.enum([`model`,`rule`,`manual`]).nullable()}),ruleId:r.string().uuid().nullable(),previousRule:r.object({scope:It,match:r.string().trim().toLowerCase().min(1),category:r.string().min(1)}).nullable()}).refine(e=>e.ruleId!==null||e.previousRule===null,{message:`A previous rule needs the rule it restores`}),Ht=r.object({scope:r.literal(`domain`)}),Ut=r.object({scope:r.enum([`personal`,`workspace`])}),Wt=r.object({type:r.enum(f),color:r.enum(i.AVATAR_COLOR_IDS),expression:r.enum(p).default(`relaxed`)}).strict(),Gt=r.array(r.string().trim().min(1).max(200)).max(4);function agentAvatarFromMetadata(e){let t=Wt.safeParse(e);return t.success?t.data:void 0}const Kt=[`record.created`,`record.updated`,`record.deleted`,`form.submitted`,`webhook`,`github`,`slack`],qt=new Set([`record.created`,`record.updated`,`record.deleted`]),Jt=/^[A-Z_][A-Z0-9_]*$/,Yt=r.object({cron:r.string().min(9),timezone:r.string().optional(),enabled:r.boolean(),input:r.record(r.string(),r.unknown()).optional(),runFor:r.enum([`armer`,`audience`]).optional(),audience:r.object({workspace:r.boolean(),roleIds:r.array(r.uuid()),actorIds:r.array(r.uuid())}).optional(),continueConversation:r.boolean().optional()}),Xt=/^[A-Za-z0-9_$-]+(\.[A-Za-z0-9_$-]+)*$/,X=r.object({name:r.string().max(120).optional(),eventType:r.enum(Kt),objectId:r.guid().optional(),watchedFields:r.array(r.string()).max(50).optional(),debounceMs:r.number().int().min(0).max(3e5).optional(),filter:r.object({combinator:r.enum([`and`,`or`]).default(`and`),rules:r.array(r.object({attribute:r.string(),operator:r.string(),value:r.unknown().optional()}))}).optional(),formDefinitionId:r.string().optional(),continuationKey:r.string().max(200).regex(Xt).nullable().optional(),connectionId:r.guid().optional(),match:$e.optional(),continueConversation:r.boolean().optional(),enabled:r.boolean().optional()});function refineTrigger(e){return e.refine(e=>!e.watchedFields?.length||e.eventType===`record.updated`,{message:`watchedFields requires eventType=record.updated`,path:[`watchedFields`]}).refine(e=>!(e.eventType&&qt.has(e.eventType))||!!e.objectId,{message:`objectId is required for record.* triggers`,path:[`objectId`]}).refine(e=>!(e.continuationKey&&e.eventType)||e.eventType===`webhook`,{message:`continuationKey requires eventType=webhook`,path:[`continuationKey`]}).superRefine((e,t)=>{let n=e.eventType===`github`||e.eventType===`slack`;if(n&&!e.connectionId&&t.addIssue({code:`custom`,path:[`connectionId`],message:`connectionId is required for native connector triggers`}),n&&!e.match&&t.addIssue({code:`custom`,path:[`match`],message:`match is required for native connector triggers`}),e.match&&e.eventType&&((e.eventType===`github`?`family`in e.match:e.eventType===`slack`&&`on`in e.match)||t.addIssue({code:`custom`,path:[`match`],message:`match must belong to the trigger provider`})),e.eventType&&!n)for(let n of[`connectionId`,`continueConversation`])e[n]!==void 0&&t.addIssue({code:`custom`,path:[n],message:`${n} requires a native connector trigger`})})}const Zt=refineTrigger(X).transform(e=>({...e,...e.eventType===`github`||e.eventType===`slack`?{continueConversation:e.continueConversation??!0}:{}})),Qt=X.partial();function parseMergedAgentTrigger(e,t){let n=Qt.safeParse(t);if(!n.success)throw triggerValidationError(n.error);let r=Object.fromEntries(Object.entries(n.data).filter(([,e])=>e!==void 0)),i=Zt.safeParse({...e,...r});if(!i.success)throw triggerValidationError(i.error);return i.data}function triggerValidationError(e){return new t.ValidationError(`Invalid agent trigger`,e.issues.map(e=>({path:e.path.map(String),message:e.message})))}const Z=r.uuid(),Q=r.record(r.string(),r.unknown()),$t=r.strictObject({objectName:r.string(),recordId:Z,attribute:r.string(),base:r.unknown(),props:Q.optional()}),en=r.strictObject({kind:r.literal(`record.set`),objectId:Z,recordId:Z,values:Q,base:Q.optional()}),tn=r.strictObject({kind:r.literal(`record.create`),objectId:Z,recordId:Z,values:Q,options:r.strictObject({visibility:r.enum([`workspace`,`private`]).optional(),allowDraft:r.boolean().optional(),linkTo:$t.optional()}).optional()}),nn=r.strictObject({kind:r.literal(`record.delete`),objectId:Z,recordId:Z}),rn=r.strictObject({kind:r.literal(`record.restore`),objectId:Z,recordId:Z}),$=r.string().min(1),an=r.discriminatedUnion(`command`,[r.strictObject({command:r.literal(`replace`),oldText:$,newText:r.string(),replaceAll:r.boolean().optional()}),r.strictObject({command:r.literal(`insert`),text:$,after:$.optional()})]),on=r.strictObject({kind:r.literal(`record.patch`),objectId:Z,recordId:Z,attribute:r.string(),edit:an}),sn=r.discriminatedUnion(`kind`,[en,tn,nn,rn,on]),cn=r.strictObject({opId:Z,steps:r.array(sn).min(1).max(100)}).superRefine((e,t)=>{let n=new Set;for(let r of e.steps){if(n.has(r.recordId)){t.addIssue({code:`custom`,message:`one step per record`,path:[`steps`]});return}n.add(r.recordId)}});Object.defineProperty(exports,"ACCESS_LEVELS",{enumerable:!0,get:function(){return et}}),Object.defineProperty(exports,"ACCESS_ROLES",{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,"AGENT_ASIDE_ANSWER_MAX_LENGTH",{enumerable:!0,get:function(){return 32e3}}),Object.defineProperty(exports,"AGENT_ASIDE_HISTORY_LIMIT",{enumerable:!0,get:function(){return 20}}),Object.defineProperty(exports,"AGENT_ASIDE_QUESTION_MAX_LENGTH",{enumerable:!0,get:function(){return 4e3}}),Object.defineProperty(exports,"AGENT_AVATAR_EXPRESSIONS",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"AGENT_AVATAR_TYPES",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"AGENT_MESSAGE_KIND",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,"AGENT_NOTIFICATION_KIND",{enumerable:!0,get:function(){return se}}),Object.defineProperty(exports,"AGENT_SESSION_ACCESS_ROLES",{enumerable:!0,get:function(){return _e}}),Object.defineProperty(exports,"AGENT_SESSION_LIST_ORDERS",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(exports,"AGENT_SESSION_ORIGINS",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,"AGENT_SESSION_PROVENANCES",{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,"AGENT_STARTERS_MAX",{enumerable:!0,get:function(){return 4}}),Object.defineProperty(exports,"AGENT_STARTER_MAX_LENGTH",{enumerable:!0,get:function(){return 200}}),Object.defineProperty(exports,"AGENT_TASK_KINDS",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"ALL_CATALOG_TOOL_NAMES",{enumerable:!0,get:function(){return Pe}}),Object.defineProperty(exports,"ALWAYS_KINDS",{enumerable:!0,get:function(){return je}}),Object.defineProperty(exports,"APPROVAL_FAMILY_TOOL_NAMES",{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,"ARCHITECT_PUBLICATION_KIND",{enumerable:!0,get:function(){return le}}),Object.defineProperty(exports,"ASK_QUESTIONS_ANSWER_MAX_LENGTH",{enumerable:!0,get:function(){return 2e3}}),Object.defineProperty(exports,"ASK_QUESTIONS_ANSWER_MAX_VALUES",{enumerable:!0,get:function(){return 50}}),Object.defineProperty(exports,"ASK_QUESTIONS_MAX_BATCH",{enumerable:!0,get:function(){return 4}}),Object.defineProperty(exports,"ASK_QUESTIONS_TOOL_NAME",{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,"AUDIT_ACTIONS",{enumerable:!0,get:function(){return be}}),Object.defineProperty(exports,"AUDIT_AGENT_SESSION_METADATA_KEY",{enumerable:!0,get:function(){return`agentSessionId`}}),Object.defineProperty(exports,"AUDIT_RESOURCE_TYPES",{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,"AgentBuilder",{enumerable:!0,get:function(){return AgentBuilder}}),Object.defineProperty(exports,"BROWSER_LAUNCH_TOOL_NAME",{enumerable:!0,get:function(){return`browser_launch`}}),Object.defineProperty(exports,"BUNDLE_LOCALES",{enumerable:!0,get:function(){return ve}}),Object.defineProperty(exports,"CONNECTION_GRANT_PROVIDERS",{enumerable:!0,get:function(){return Fe}}),Object.defineProperty(exports,"CONTINUATION_KEY_PATTERN",{enumerable:!0,get:function(){return Xt}}),Object.defineProperty(exports,"CONVERSATION_SURFACES",{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(exports,"CORE_RECORD_TOOL_NAMES",{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,"CORE_TOOL_NAMES",{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,"COUNT_MODES",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"DEFAULT_AGENT_EXECUTION_CONFIG",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"DEFAULT_AGENT_TOOL_GROUPS",{enumerable:!0,get:function(){return Ie}}),Object.defineProperty(exports,"DEFAULT_APPROVAL_POLICY",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"DEFAULT_BLUEPRINT_TOOL_GROUPS",{enumerable:!0,get:function(){return Le}}),Object.defineProperty(exports,"DEFAULT_DAILY_ACTIVITY_DAYS",{enumerable:!0,get:function(){return 182}}),Object.defineProperty(exports,"DEFAULT_MEETING_BOT_DISPLAY_NAME",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"DEFAULT_TENANT_SETTINGS",{enumerable:!0,get:function(){return Te}}),Object.defineProperty(exports,"DISCARD_ARCHITECT_DRAFT_TOOL_NAME",{enumerable:!0,get:function(){return`discard_architect_draft`}}),Object.defineProperty(exports,"DOCUMENT_SORT_MODES",{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,"DRAFT_WRITE_TOOL_NAMES",{enumerable:!0,get:function(){return xe}}),Object.defineProperty(exports,"EMAIL_CATEGORY_DEFAULT_COLOR",{enumerable:!0,get:function(){return Ve}}),Object.defineProperty(exports,"EMAIL_CATEGORY_DEFAULT_ICON",{enumerable:!0,get:function(){return`tag`}}),Object.defineProperty(exports,"EMAIL_CATEGORY_DESCRIPTION_MAX",{enumerable:!0,get:function(){return 500}}),Object.defineProperty(exports,"EMAIL_CATEGORY_DESCRIPTION_MIN",{enumerable:!0,get:function(){return 10}}),Object.defineProperty(exports,"EMAIL_CATEGORY_LIMIT",{enumerable:!0,get:function(){return 8}}),Object.defineProperty(exports,"EMAIL_CATEGORY_NAME_MAX",{enumerable:!0,get:function(){return 24}}),Object.defineProperty(exports,"ENVIRONMENT_HARNESSES",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"ENVIRONMENT_HARNESS_SANDBOX_WORKDIR",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"ENVIRONMENT_HARNESS_WORKDIR",{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,"ENVIRONMENT_NAME_MAX_CHARS",{enumerable:!0,get:function(){return 100}}),Object.defineProperty(exports,"ENVIRONMENT_STANDARDS_WORKDIR",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"ENV_VAR_KEY_PATTERN",{enumerable:!0,get:function(){return Jt}}),Object.defineProperty(exports,"ESTIMATED_COUNT_CAP",{enumerable:!0,get:function(){return 1e4}}),Object.defineProperty(exports,"FILE_URLS_MAX_IDS",{enumerable:!0,get:function(){return 200}}),Object.defineProperty(exports,"GET_ARCHITECT_DRAFT_TOOL_NAME",{enumerable:!0,get:function(){return`get_architect_draft`}}),Object.defineProperty(exports,"GITHUB_TRIGGER_CATALOG",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"GRANT_ENABLES",{enumerable:!0,get:function(){return Me}}),Object.defineProperty(exports,"HITL_TOOL_NAMES",{enumerable:!0,get:function(){return Se}}),Object.defineProperty(exports,"INFERENCE_REASONING_OPTIONS",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"INFERENCE_ROUTING_MODES",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"INFERENCE_SPEEDS",{enumerable:!0,get:function(){return ie}}),Object.defineProperty(exports,"LAST_RUN_ERROR_MAX_LENGTH",{enumerable:!0,get:function(){return 200}}),Object.defineProperty(exports,"MAILBOX_LIST_MODES",{enumerable:!0,get:function(){return ht}}),Object.defineProperty(exports,"MAIL_DRAFT_BODY_MAX_CHARS",{enumerable:!0,get:function(){return 2e5}}),Object.defineProperty(exports,"MAIL_SIGNATURE_MAX_CHARS",{enumerable:!0,get:function(){return 2e4}}),Object.defineProperty(exports,"MAIL_SUBJECT_MAX_CHARS",{enumerable:!0,get:function(){return 998}}),Object.defineProperty(exports,"MAX_DAILY_ACTIVITY_DAYS",{enumerable:!0,get:function(){return 366}}),Object.defineProperty(exports,"MAX_TODOS",{enumerable:!0,get:function(){return 50}}),Object.defineProperty(exports,"MAX_TODO_DESCRIPTION_CHARS",{enumerable:!0,get:function(){return 500}}),Object.defineProperty(exports,"MAX_TODO_ID_CHARS",{enumerable:!0,get:function(){return 80}}),Object.defineProperty(exports,"MCP_SERVER_NAME_MAX_LENGTH",{enumerable:!0,get:function(){return 100}}),Object.defineProperty(exports,"MEETING_BOT_IMAGE",{enumerable:!0,get:function(){return st}}),Object.defineProperty(exports,"MEETING_BOT_IMAGE_BASE64_MAX_LENGTH",{enumerable:!0,get:function(){return ct}}),Object.defineProperty(exports,"MEETING_RESPONSES",{enumerable:!0,get:function(){return tt}}),Object.defineProperty(exports,"MEMORY_SPEND_LIMIT_PATTERN",{enumerable:!0,get:function(){return we}}),Object.defineProperty(exports,"McpOAuthCompletionMode",{enumerable:!0,get:function(){return ft}}),Object.defineProperty(exports,"NATIVE_TOOL_GROUPS",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"NATIVE_TOOL_GROUP_CATALOG",{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,"NO_RECORDING",{enumerable:!0,get:function(){return it}}),Object.defineProperty(exports,"OPEN_TOOL_PART_STATES",{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,"OPERATION_MAX_STEPS",{enumerable:!0,get:function(){return 100}}),Object.defineProperty(exports,"PROVIDER_DRAFT_LABEL",{enumerable:!0,get:function(){return pt}}),Object.defineProperty(exports,"PROVIDER_NAMES",{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,"PUBLIC_MAIL_DOMAINS",{enumerable:!0,get:function(){return He}}),Object.defineProperty(exports,"QUESTION_FAMILY_TOOL_NAMES",{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,"RECENT_ACTIVITY_LEDGER_LIMIT",{enumerable:!0,get:function(){return 50}}),Object.defineProperty(exports,"RECIPIENT_IDENTITIES_MAX",{enumerable:!0,get:function(){return 100}}),Object.defineProperty(exports,"RECORDING_OVERRIDES",{enumerable:!0,get:function(){return nt}}),Object.defineProperty(exports,"RECORDING_POLICIES",{enumerable:!0,get:function(){return rt}}),Object.defineProperty(exports,"RECORD_ACCESS_ROLES",{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,"RECORD_ACCESS_SOURCES",{enumerable:!0,get:function(){return he}}),Object.defineProperty(exports,"RECORD_DRIVE_CURSOR_MAX_LENGTH",{enumerable:!0,get:function(){return 2048}}),Object.defineProperty(exports,"RECORD_DRIVE_PAGE_DEFAULT_LIMIT",{enumerable:!0,get:function(){return 100}}),Object.defineProperty(exports,"RECORD_DRIVE_PAGE_MAX_LIMIT",{enumerable:!0,get:function(){return 500}}),Object.defineProperty(exports,"RECORD_GRAPH_DEFAULT_LIMIT_PER_NODE",{enumerable:!0,get:function(){return 50}}),Object.defineProperty(exports,"RECORD_GRAPH_MAX_LIMIT_PER_NODE",{enumerable:!0,get:function(){return 200}}),Object.defineProperty(exports,"RECORD_GRAPH_MAX_NODES",{enumerable:!0,get:function(){return 50}}),Object.defineProperty(exports,"RECORD_IMAGE_MAX_BYTES",{enumerable:!0,get:function(){return 5242880}}),Object.defineProperty(exports,"REPLY_MODES",{enumerable:!0,get:function(){return gt}}),Object.defineProperty(exports,"REQUEST_DESIGN_REVIEW_TOOL_NAME",{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,"REQUEST_SETUP_TOOL_NAME",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"RESOURCE_GRANT_KINDS",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"RESOURCE_KIND_CATALOG",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"ROUTING_PRICE_CEILINGS",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(exports,"SESSION_INFERENCE_PATCH_KEYS",{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,"SETUP_SCRIPT_MAX_CHARS",{enumerable:!0,get:function(){return 64e3}}),Object.defineProperty(exports,"SLACK_TRIGGER_CATALOG",{enumerable:!0,get:function(){return Ge}}),Object.defineProperty(exports,"SURFACE_TOOL_NAMES",{enumerable:!0,get:function(){return Ne}}),Object.defineProperty(exports,"SYSTEM_EMAIL_CATEGORIES",{enumerable:!0,get:function(){return ze}}),Object.defineProperty(exports,"SYSTEM_EMAIL_CATEGORY_NAMES",{enumerable:!0,get:function(){return Be}}),Object.defineProperty(exports,"SYSTEM_PART_CODES",{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,"TASK_DEMAND_LEVELS",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"TODO_PHASES",{enumerable:!0,get:function(){return de}}),Object.defineProperty(exports,"TODO_PLAN_STATUSES",{enumerable:!0,get:function(){return ne}}),Object.defineProperty(exports,"TODO_STATUSES",{enumerable:!0,get:function(){return ue}}),Object.defineProperty(exports,"TOOL_APPROVAL_STATES",{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,"TRIAGE_ACTIONS",{enumerable:!0,get:function(){return mt}}),Object.defineProperty(exports,"TRIGGER_EVENT_TYPES",{enumerable:!0,get:function(){return Kt}}),Object.defineProperty(exports,"TURN_OUTCOMES",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"UNSHAREABLE_OBJECT_NAMES",{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,"USER_STATUSES",{enumerable:!0,get:function(){return Ee}}),Object.defineProperty(exports,"USER_WORK_POSTURES",{enumerable:!0,get:function(){return De}}),Object.defineProperty(exports,"VERB_NAMES",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"agent",{enumerable:!0,get:function(){return agent}}),Object.defineProperty(exports,"agentAvatarFromMetadata",{enumerable:!0,get:function(){return agentAvatarFromMetadata}}),Object.defineProperty(exports,"agentAvatarSchema",{enumerable:!0,get:function(){return Wt}}),Object.defineProperty(exports,"agentDataChunk",{enumerable:!0,get:function(){return agentDataChunk}}),Object.defineProperty(exports,"agentDisplayName",{enumerable:!0,get:function(){return agentDisplayName}}),Object.defineProperty(exports,"agentInferencePreferencesSchema",{enumerable:!0,get:function(){return bt}}),Object.defineProperty(exports,"agentMessageAttachmentSchema",{enumerable:!0,get:function(){return Et}}),Object.defineProperty(exports,"agentMessagePartSchema",{enumerable:!0,get:function(){return Tt}}),Object.defineProperty(exports,"agentScheduleSchema",{enumerable:!0,get:function(){return Yt}}),Object.defineProperty(exports,"agentSessionInferenceOverridesInputSchema",{enumerable:!0,get:function(){return xt}}),Object.defineProperty(exports,"agentSessionInferenceOverridesSchema",{enumerable:!0,get:function(){return St}}),Object.defineProperty(exports,"agentSessionMessageSchema",{enumerable:!0,get:function(){return jt}}),Object.defineProperty(exports,"agentStartersSchema",{enumerable:!0,get:function(){return Gt}}),Object.defineProperty(exports,"agentTriggerBaseSchema",{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,"agentTriggerPatchSchema",{enumerable:!0,get:function(){return Qt}}),Object.defineProperty(exports,"agentTriggerSchema",{enumerable:!0,get:function(){return Zt}}),Object.defineProperty(exports,"agentUIValidationError",{enumerable:!0,get:function(){return agentUIValidationError}}),Object.defineProperty(exports,"artifactQuoteSchema",{enumerable:!0,get:function(){return Dt}}),Object.defineProperty(exports,"askQuestionsOutputSchema",{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,"assertCustomAgentUIMessageChunk",{enumerable:!0,get:function(){return assertCustomAgentUIMessageChunk}}),Object.defineProperty(exports,"assertSessionState",{enumerable:!0,get:function(){return assertSessionState}}),Object.defineProperty(exports,"canonicalToolGroups",{enumerable:!0,get:function(){return canonicalToolGroups}}),Object.defineProperty(exports,"classificationRestoreSchema",{enumerable:!0,get:function(){return Vt}}),Object.defineProperty(exports,"classifyEmailSchema",{enumerable:!0,get:function(){return Bt}}),Object.defineProperty(exports,"cliDefaultModelOf",{enumerable:!0,get:function(){return cliDefaultModelOf}}),Object.defineProperty(exports,"compareAgentSessionMessages",{enumerable:!0,get:function(){return compareAgentSessionMessages}}),Object.defineProperty(exports,"compiledHarnessModels",{enumerable:!0,get:function(){return compiledHarnessModels}}),Object.defineProperty(exports,"connectionGrantKindsOf",{enumerable:!0,get:function(){return connectionGrantKindsOf}}),Object.defineProperty(exports,"connectorTriggerMatchSchema",{enumerable:!0,get:function(){return $e}}),Object.defineProperty(exports,"customDataChunkSchemas",{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,"decodeAgentSessionListCursor",{enumerable:!0,get:function(){return decodeAgentSessionListCursor}}),Object.defineProperty(exports,"deriveViewerAccess",{enumerable:!0,get:function(){return deriveViewerAccess}}),Object.defineProperty(exports,"durableDateSchema",{enumerable:!0,get:function(){return At}}),Object.defineProperty(exports,"emailCategoryCreateSchema",{enumerable:!0,get:function(){return Lt}}),Object.defineProperty(exports,"emailCategoryDeleteSchema",{enumerable:!0,get:function(){return zt}}),Object.defineProperty(exports,"emailCategoryScopeQuerySchema",{enumerable:!0,get:function(){return Ut}}),Object.defineProperty(exports,"emailCategoryUpdateSchema",{enumerable:!0,get:function(){return Rt}}),Object.defineProperty(exports,"emailRuleScopeSchema",{enumerable:!0,get:function(){return Ht}}),Object.defineProperty(exports,"encodeAgentSessionListCursor",{enumerable:!0,get:function(){return encodeAgentSessionListCursor}}),Object.defineProperty(exports,"environmentHarness",{enumerable:!0,get:function(){return environmentHarness}}),Object.defineProperty(exports,"environmentWorkdir",{enumerable:!0,get:function(){return environmentWorkdir}}),Object.defineProperty(exports,"findEnvironmentHarness",{enumerable:!0,get:function(){return findEnvironmentHarness}}),Object.defineProperty(exports,"githubConditionSchema",{enumerable:!0,get:function(){return qe}}),Object.defineProperty(exports,"githubTriggerMatchSchema",{enumerable:!0,get:function(){return Ze}}),Object.defineProperty(exports,"grantKindOf",{enumerable:!0,get:function(){return grantKindOf}}),Object.defineProperty(exports,"harnessModelChoices",{enumerable:!0,get:function(){return harnessModelChoices}}),Object.defineProperty(exports,"humanRequestId",{enumerable:!0,get:function(){return humanRequestId}}),Object.defineProperty(exports,"humanRequestKind",{enumerable:!0,get:function(){return humanRequestKind}}),Object.defineProperty(exports,"imageModelIdSchema",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"inferenceReasoningSchema",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"inferenceRoutingSchema",{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,"inferenceSpeedSchema",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"isAgentMessageMetadata",{enumerable:!0,get:function(){return isAgentMessageMetadata}}),Object.defineProperty(exports,"isAgentNotificationMetadata",{enumerable:!0,get:function(){return isAgentNotificationMetadata}}),Object.defineProperty(exports,"isAgentUIDataName",{enumerable:!0,get:function(){return isAgentUIDataName}}),Object.defineProperty(exports,"isAgentWrittenAuditEntry",{enumerable:!0,get:function(){return isAgentWrittenAuditEntry}}),Object.defineProperty(exports,"isArchitectPublicationMetadata",{enumerable:!0,get:function(){return isArchitectPublicationMetadata}}),Object.defineProperty(exports,"isAwaitingHuman",{enumerable:!0,get:function(){return isAwaitingHuman}}),Object.defineProperty(exports,"isBlocking",{enumerable:!0,get:function(){return isBlocking}}),Object.defineProperty(exports,"isEnvironmentHarnessId",{enumerable:!0,get:function(){return isEnvironmentHarnessId}}),Object.defineProperty(exports,"isMailProvider",{enumerable:!0,get:function(){return isMailProvider}}),Object.defineProperty(exports,"isMailboxListMode",{enumerable:!0,get:function(){return isMailboxListMode}}),Object.defineProperty(exports,"isNativeToolGroup",{enumerable:!0,get:function(){return isNativeToolGroup}}),Object.defineProperty(exports,"isOpenToolPartState",{enumerable:!0,get:function(){return isOpenToolPartState}}),Object.defineProperty(exports,"isParkedOnHuman",{enumerable:!0,get:function(){return isParkedOnHuman}}),Object.defineProperty(exports,"isProviderDraft",{enumerable:!0,get:function(){return isProviderDraft}}),Object.defineProperty(exports,"isPublicMailDomain",{enumerable:!0,get:function(){return isPublicMailDomain}}),Object.defineProperty(exports,"isReplyMode",{enumerable:!0,get:function(){return isReplyMode}}),Object.defineProperty(exports,"isResourceGrant",{enumerable:!0,get:function(){return isResourceGrant}}),Object.defineProperty(exports,"isRoutineActorMetadata",{enumerable:!0,get:function(){return isRoutineActorMetadata}}),Object.defineProperty(exports,"isSessionInferencePatch",{enumerable:!0,get:function(){return isSessionInferencePatch}}),Object.defineProperty(exports,"isSystemEmailCategory",{enumerable:!0,get:function(){return isSystemEmailCategory}}),Object.defineProperty(exports,"isSystemEmailCategoryName",{enumerable:!0,get:function(){return isSystemEmailCategoryName}}),Object.defineProperty(exports,"isSystemPartCode",{enumerable:!0,get:function(){return isSystemPartCode}}),Object.defineProperty(exports,"isToolApprovalState",{enumerable:!0,get:function(){return isToolApprovalState}}),Object.defineProperty(exports,"meetingBotDispatchRequestSchema",{enumerable:!0,get:function(){return lt}}),Object.defineProperty(exports,"meetingBotDispatchResponseSchema",{enumerable:!0,get:function(){return ut}}),Object.defineProperty(exports,"meetingBotNotificationSchema",{enumerable:!0,get:function(){return dt}}),Object.defineProperty(exports,"meetingTranscriptSegmentSchema",{enumerable:!0,get:function(){return at}}),Object.defineProperty(exports,"mentionReferenceSchema",{enumerable:!0,get:function(){return Ot}}),Object.defineProperty(exports,"mergeSessionInferencePatch",{enumerable:!0,get:function(){return mergeSessionInferencePatch}}),Object.defineProperty(exports,"modelDefinitionSchema",{enumerable:!0,get:function(){return kt}}),Object.defineProperty(exports,"modelReferenceSchema",{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,"needsManageWhenUnattended",{enumerable:!0,get:function(){return needsManageWhenUnattended}}),Object.defineProperty(exports,"normalizedMeetingTranscriptSchema",{enumerable:!0,get:function(){return ot}}),Object.defineProperty(exports,"openRequests",{enumerable:!0,get:function(){return openRequests}}),Object.defineProperty(exports,"orderAgentSessionMessages",{enumerable:!0,get:function(){return orderAgentSessionMessages}}),Object.defineProperty(exports,"parseAgentDefinitionAccessRole",{enumerable:!0,get:function(){return parseAgentDefinitionAccessRole}}),Object.defineProperty(exports,"parseAgentSessionAccessRole",{enumerable:!0,get:function(){return parseAgentSessionAccessRole}}),Object.defineProperty(exports,"parseCountMode",{enumerable:!0,get:function(){return parseCountMode}}),Object.defineProperty(exports,"parseMergedAgentTrigger",{enumerable:!0,get:function(){return parseMergedAgentTrigger}}),Object.defineProperty(exports,"parseOptionalCountMode",{enumerable:!0,get:function(){return parseOptionalCountMode}}),Object.defineProperty(exports,"parsePageAccessRole",{enumerable:!0,get:function(){return parsePageAccessRole}}),Object.defineProperty(exports,"parseRecordAccessRole",{enumerable:!0,get:function(){return parseRecordAccessRole}}),Object.defineProperty(exports,"parseToolGroupGrant",{enumerable:!0,get:function(){return parseToolGroupGrant}}),Object.defineProperty(exports,"providerNameSchema",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"readAskQuestionsResult",{enumerable:!0,get:function(){return readAskQuestionsResult}}),Object.defineProperty(exports,"recentActivityEntryKey",{enumerable:!0,get:function(){return recentActivityEntryKey}}),Object.defineProperty(exports,"recordGraphNodeKey",{enumerable:!0,get:function(){return recordGraphNodeKey}}),Object.defineProperty(exports,"recordGraphRequestSchema",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(exports,"recordOperationSchema",{enumerable:!0,get:function(){return cn}}),Object.defineProperty(exports,"refineTrigger",{enumerable:!0,get:function(){return refineTrigger}}),Object.defineProperty(exports,"resourceGrant",{enumerable:!0,get:function(){return resourceGrant}}),Object.defineProperty(exports,"routedMessageInferenceSchema",{enumerable:!0,get:function(){return wt}}),Object.defineProperty(exports,"sessionInferencePatchSchema",{enumerable:!0,get:function(){return Ct}}),Object.defineProperty(exports,"slackConditionSchema",{enumerable:!0,get:function(){return Je}}),Object.defineProperty(exports,"slackTriggerMatchSchema",{enumerable:!0,get:function(){return Qe}}),Object.defineProperty(exports,"todoItemSchema",{enumerable:!0,get:function(){return Mt}}),Object.defineProperty(exports,"todoPlanSchema",{enumerable:!0,get:function(){return Nt}}),Object.defineProperty(exports,"toolImpactSchema",{enumerable:!0,get:function(){return J}});
@@ -0,0 +1,2 @@
1
+ /*! © 2025-2026 AND YOU CREATE SAS (RCS Paris 940 190 614). Proprietary — see LICENSE (Standards SDK License 1.0). */
2
+ import{SchemaError as e,SchemaErrorCode as t,ToolGroupGrantError as n,ValidationError as r}from"./exceptions.mjs";import"./zod-locale.mjs";import{assertUniqueBy as i,colorIdSchema as ee,iconNameSchema as te}from"./primitives-D9A6pmXV.mjs";import*as a from"zod";import{AVATAR_COLOR_IDS as ne}from"@standards/constants";const re=[`completed`,`failed`,`cancelled`];function invalidSessionState(n){throw new e(n,t.INVARIANT_VIOLATION)}function assertSessionState(e){e.phase===`running`?e.runningTurnId===void 0&&invalidSessionState(`running session without runningTurnId`):e.runningTurnId!==void 0&&invalidSessionState(`runningTurnId present on a ${e.phase} session`),e.phase===`parked`?e.parkedOn===void 0&&invalidSessionState(`parked session without parkedOn`):e.parkedOn!==void 0&&invalidSessionState(`parkedOn present on a ${e.phase} session`),e.parkedOn===`human`?e.humanRequestIds===void 0&&invalidSessionState(`human-parked session without humanRequestIds`):e.humanRequestIds!==void 0&&invalidSessionState(`humanRequestIds present on a session not parked on a human`)}const ie=[`createdAt`,`lastActivity`],ae=[`mine`,`shared`,`team`],o=Object.freeze({mutation:`ask`,destructive:`ask`,outward:`ask`}),oe=[`active`,`completed`,`abandoned`],s=[`openai`,`anthropic`,`google`,`spacexai`,`deepseek`,`moonshotai`,`alibaba`,`mistral`,`minimax`,`meta`,`zai`,`cursor`],c=[`standard`,`fast`],l=[`none`,`minimal`,`low`,`medium`,`high`,`xhigh`],se=[`conversation`,`writing`,`coding`,`analysis`,`extraction`],ce=[`light`,`standard`,`heavy`],le=[`manual`,`auto`],ue={interactive:{inputPerMillionUsd:5,outputPerMillionUsd:25},delegated:{inputPerMillionUsd:2,outputPerMillionUsd:12}},u=[`model`,`speed`,`reasoning`,`imageModel`,`routing`];function mergeSessionInferencePatch(e,t){let n={...e};for(let e of u){let r=t[e];r===null?delete n[e]:r!==void 0&&Object.assign(n,{[e]:r})}return t.model&&t.routing===void 0&&(n.routing=`manual`),n}function isRoutineActorMetadata(e){return e?.kind===`routine`}const de=[`octopus`,`clover`,`flower`,`triangle`,`square`,`blob`,`circle`,`drop`,`hexagon`,`pill`,`pebble`,`puddle`],fe=[`relaxed`,`neutral`],pe=4,me=200;function agentDisplayName(e){return e.label?.trim()||e.name}const d=[`approval-requested`,`approval-responded`,`approval-dispatched`],he=[`streaming`,`running`,`pending`,...d];function isOpenToolPartState(e){return he.includes(e)}function isToolApprovalState(e){return d.includes(e)}const f=[`CREDITS_EXHAUSTED`];function isSystemPartCode(e){return typeof e==`string`&&f.includes(e)}const ge=20,_e=4e3,ve=32e3;function compareAgentSessionMessages(e,t){let n=e.createdAt.getTime()-t.createdAt.getTime();return n===0?e.id.localeCompare(t.id):n}function orderAgentSessionMessages(e){return[...e].sort(compareAgentSessionMessages)}const ye=200,be=182,xe=366,Se=`agent-notification`;function isAgentNotificationMetadata(e){return e?.kind===Se}const Ce=`agent-message`;function isAgentMessageMetadata(e){return e?.kind===Ce}const we=`architect-publication`;function isArchitectPublicationMetadata(e){return e?.kind===we}const Te=[`pending`,`in_progress`,`completed`,`blocked`],p=[`objects`,`fields`,`relations`,`views`,`samples`],Ee=50,De=80,Oe=500,m=[`sandbox`,`web`,`image`,`memory`,`bulk`,`activity`,`orchestration`,`host`,`cloud-browser`,`notifications`],ke=`browser_launch`,h=[`mcp`,`email.read`,`email.send`,`calendar.read`,`github`,`slack.read`,`slack.write`,`device`,`browser`,`browser-profile`,`login`],Ae=[`definition`,`default`,`child`,`inline`],je=[`manual`,`name-asc`,`name-desc`,`date-desc`,`date-asc`],Me=100,Ne=500,Pe=2048,g=[`reader`,`runner`,`editor`],_=[`reader`,`editor`],Fe=[`manual`,`meeting_attendee`],Ie=new Set([`memory`,`skill`]),v=[`reader`];function parseRole(e,t){if(typeof t==`string`&&e.includes(t))return t;let n=`role must be one of: ${e.join(`, `)}`;throw new r(n,[{path:[`role`],message:n}])}function parseRecordAccessRole(e){return parseRole(_,e)}function parseAgentDefinitionAccessRole(e){return parseRole(g,e)}function parsePageAccessRole(e){return parseRole(_,e)}function parseAgentSessionAccessRole(e){return parseRole(v,e)}function deriveViewerAccess(e,t){return e.visibility===`workspace`?`workspace`:e.ownedBy!==null&&t.includes(e.ownedBy)?`owner`:e.viewerGrant===`editor`?`editor`:e.viewerGrant===`runner`?`runner`:`reader`}const Le=[`fr`,`en`],y=[`none`,`estimated`,`exact`];function parseCountMode(e){if(typeof e==`string`&&y.includes(e))return e;throw new r(`countMode must be one of: ${y.join(`, `)} (received: ${String(e)})`,[])}function parseOptionalCountMode(e){return e===void 0?void 0:parseCountMode(e)}const Re=1e4,ze=[`record`,`object`,`attribute`,`view`,`user`,`role`,`settings`,`file`,`agent`,`bundle`,`tenant_invitation`,`api_key`,`agent_session`],Be=`record.created,record.updated,record.deleted,record.restored,record.purged,record.access_changed,agent.access_changed,agent_session.supervised_read,object.created,object.updated,object.deleted,attribute.created,attribute.updated,attribute.deleted,view.created,view.updated,view.deleted,bundle.synced,bundle.removed,bundle.added,user.created,user.invited,user.updated,user.deleted,user.login,user.logout,tenant_invitation.created,tenant_invitation.delivery_failed,tenant_invitation.resent,tenant_invitation.revoked,tenant_invitation.accepted,role.created,role.updated,role.deleted,role.assigned,role.revoked,api_key.detached,settings.updated,file.uploaded,file.updated,file.deleted`.split(`,`),Ve=`agentSessionId`;function isAgentWrittenAuditEntry(e){return e.actorType===`agent`||typeof e.metadata?.agentSessionId==`string`}const He=[`draft_schema`],Ue=`discard_architect_draft`,b=`request_design_review`,We=`get_architect_draft`,x=`ask_questions`,S=`request_setup`,Ge=new Set([x,b,S]),C=new Set([x,S]),w=new Set([b]),Ke=4,qe=2e3,Je=50,Ye=a.union([a.object({value:a.string(),label:a.string()}).strict(),a.object({values:a.array(a.string()),labels:a.array(a.string()),text:a.string().optional()}).strict(),a.object({text:a.string()}).strict()]),T=a.object({skipped:a.boolean().describe(`True if the person skipped all questions`),answers:a.record(a.string(),Ye).describe(`Map of question ID to the answer given, with each chosen option's value and label`)});function readAskQuestionsResult(e){let t=T.safeParse(e);return t.success?t.data:null}function humanRequestKind(e){return e.approvalId==null?C.has(e.name)?`question`:w.has(e.name)?`review`:null:`approval`}function isAwaitingHuman(e){return humanRequestKind(e)===null||e.state===`streaming`||!isOpenToolPartState(e.state)||e.result!==void 0||e.error!==void 0?!1:e.approvalId==null||e.state===`approval-requested`&&e.approved===void 0}function isBlocking(e){let t=humanRequestKind(e);return t===`review`?isOpenToolPartState(e.state):t===`approval`&&e.state===`approval-requested`&&e.approved===void 0}function humanRequestId(e){return e.approvalId??e.toolCallId}function openRequests(e,t){let n=t.blocking?isBlocking:isAwaitingHuman,r=[];for(let t of e)for(let e of t.parts??[])isToolRequestPart(e)&&n(e)&&r.push({part:e,id:humanRequestId(e),requestedAt:t.createdAt});return r}function isToolRequestPart(e){return e.type===`tool`}function isParkedOnHuman(e){return e?.phase===`parked`&&e.parkedOn===`human`}const Xe=50;function recentActivityEntryKey(e){return e.kind===`record`?JSON.stringify([`record`,e.objectName,e.recordId]):JSON.stringify([`conversation`,`sessionId`in e?e.sessionId:e.session.id])}const Ze=200,Qe=5242880,E=`Notetaker`,$e=/^\d{1,9}(\.\d{1,6})?$/,et={meetingRecordingPolicy:`none`,meetingBotDisplayName:E,memoryPersonMonthlyLimitUsd:null,memoryTenantMonthlyLimitUsd:null,findImages:!0},tt=[`active`,`suspended`],nt=[`architect`,`manual`,`auto`],rt=[`panel`,`fullscreen`],it=50,at=200,ot=50,st=a.discriminatedUnion(`type`,[a.strictObject({type:a.literal(`record`),object:a.string().min(1),id:a.guid()}),a.strictObject({type:a.literal(`user`),id:a.guid()})]),ct=a.strictObject({nodes:a.array(st).min(1).max(50),limitPerNode:a.number().int().min(1).max(200).default(50)});function recordGraphNodeKey(e){return e.type===`record`?`record:${e.object}:${e.id}`:`user:${e.id}`}const lt=100,ut=64e3,D=`work`,O=`/vercel/sandbox/${D}`,k=`/workspace`;function environmentWorkdir(e){return e?O:k}const A=[{id:`claude-code`,label:`Claude Code`,provider:`anthropic`,apiKeyEnv:`ANTHROPIC_API_KEY`,models:[{id:`sonnet`,label:`Claude Sonnet`},{id:`opus`,label:`Claude Opus`},{id:`haiku`,label:`Claude Haiku`}],defaultModel:`sonnet`},{id:`codex`,label:`Codex`,provider:`openai`,apiKeyEnv:`OPENAI_API_KEY`,models:[{id:`gpt-6.1-sol`,label:`GPT-6.1 Sol`},{id:`gpt-6-luna`,label:`GPT-6 Luna`},{id:`gpt-6-astra`,label:`GPT-6 Astra`}],defaultModel:`gpt-6.1-sol`},{id:`cursor`,label:`Cursor`,provider:`cursor`,apiKeyEnv:`CURSOR_API_KEY`,models:[{id:`auto`,label:`Auto`,cliDefault:!0},{id:`composer-2.5`,label:`Composer 2.5`}],defaultModel:`auto`}],j=new Map(A.map(e=>[e.id,e]));function isEnvironmentHarnessId(e){return j.has(e)}function findEnvironmentHarness(e){return j.get(e)}function environmentHarness(n){let r=j.get(n);if(!r)throw new e(`Unknown harness "${n}"`,t.INVARIANT_VIOLATION);return r}function cliDefaultModelOf(e){return environmentHarness(e).models.find(e=>e.cliDefault)?.id}function compiledHarnessModels(e){let t=environmentHarness(e);return t.models.map(e=>({id:e.id,label:e.label,...e.id===t.defaultModel?{isDefault:!0}:{}}))}function harnessModelChoices(e,t){let{provider:n}=environmentHarness(e);return t.map(e=>({id:e.id,provider:n,label:e.label,...e.isDefault?{isDefault:!0}:{}}))}const M=[`search`,`query`,`read`,`write`,`delete`,`organize`,`copy`,`send`],N=[...M,`edit_content`],P=[...N,`ask_questions`,`compact_context`,`request_work_mode`,`write_todos`],dt=[`browser_autopilot`,`browser_batch`,`browser_computer`,`browser_find`,`browser_form_input`,`browser_get_text`,`browser_javascript`,`browser_navigate`,`browser_read_page`,`browser_sign_in`,`browser_tabs`],ft=[`record`,`document`,`file`,`skill`,`schema`,`guide`],F={memory:{kinds:[`memory`],capabilities:[],tools:[`propose_memory`]},bulk:{kinds:[],capabilities:[`bulk`],tools:[]},activity:{kinds:[],capabilities:[`activity`],tools:[]},"email.read":{kinds:[`email`,`thread`],capabilities:[`copy_email`],tools:[]},"email.send":{kinds:[`email`,`thread`,`draft`],capabilities:[`copy_email`],tools:[]},"calendar.read":{kinds:[`event`],capabilities:[`transcript`],tools:[]}},I={sandbox:{icon:`terminal`,tools:[`exec_command`,`publish_artifact`,`sandbox_validate_payload`]},web:{icon:`globe`,tools:[`read_webpage`,`web_search`]},image:{icon:`image`,tools:[`generate_image`]},memory:{icon:`book-open`,tools:F.memory.tools},bulk:{icon:`layers-two`,tools:F.bulk.tools},activity:{icon:`activity`,tools:F.activity.tools},orchestration:{icon:`git-branch`,tools:[`message_agent`,`spawn_agent`]},host:{icon:`wrench`,tools:[]},"cloud-browser":{icon:`globe`,tools:[`browser_launch`]},notifications:{icon:`bell`,tools:[`notify`]}},L={mcp:{icon:`puzzle`,tools:[]},"email.read":{icon:`envelope`,tools:F[`email.read`].tools},"email.send":{icon:`send`,tools:F[`email.send`].tools},"calendar.read":{icon:`calendar`,tools:F[`calendar.read`].tools},github:{icon:`brand-github`,tools:[]},"slack.read":{icon:`brand-slack`,tools:[`slack_read`,`slack_find`,`slack_download_file`]},"slack.write":{icon:`brand-slack`,tools:[`slack_send`,`slack_react`,`slack_set_status`]},device:{icon:`desktop`,tools:[`exec_command`]},browser:{icon:`link`,tools:dt},"browser-profile":{icon:`globe`,tools:[`browser_launch`,...dt]},login:{icon:`key`,tools:[]}},pt={sandbox:{kinds:[],capabilities:[],tools:I.sandbox.tools},web:{kinds:[],capabilities:[],tools:I.web.tools},image:{kinds:[],capabilities:[],tools:I.image.tools},memory:F.memory,bulk:F.bulk,activity:F.activity,orchestration:{kinds:[],capabilities:[],tools:I.orchestration.tools},host:{kinds:[],capabilities:[],tools:I.host.tools},"cloud-browser":{kinds:[],capabilities:[],tools:I[`cloud-browser`].tools},notifications:{kinds:[],capabilities:[],tools:I.notifications.tools},mcp:{kinds:[],capabilities:[],tools:L.mcp.tools},"email.read":F[`email.read`],"email.send":F[`email.send`],"calendar.read":F[`calendar.read`],github:{kinds:[],capabilities:[],tools:L.github.tools},"slack.read":{kinds:[],capabilities:[],tools:L[`slack.read`].tools},"slack.write":{kinds:[],capabilities:[],tools:L[`slack.write`].tools},device:{kinds:[],capabilities:[],tools:L.device.tools},browser:{kinds:[],capabilities:[],tools:L.browser.tools},"browser-profile":{kinds:[],capabilities:[],tools:L[`browser-profile`].tools},login:{kinds:[],capabilities:[],tools:L.login.tools}},mt={schema:[`discard_architect_draft`,`draft_schema`,`get_architect_draft`,`get_schema_history`,`request_design_review`,`search_icons`],"agent-config":[`get_agents`,`upsert_agent`],setup:[`request_setup`],internal:[`load_toolset`]},ht=[...new Set([...P,...m.flatMap(e=>I[e].tools),...h.flatMap(e=>L[e].tools)])],gt={"email.read":[`gmail`,`outlook`],"email.send":[`gmail`,`outlook`],"calendar.read":[`google-calendar`,`outlook-calendar`]};function connectionGrantKindsOf(e){switch(e){case`github`:return[`github`];case`slack`:return[`slack.read`,`slack.write`];case`google-calendar`:case`outlook-calendar`:return[`calendar.read`];case`gmail`:case`outlook`:return[`email.read`,`email.send`]}}const _t=[`activity`,`bulk`,`image`,`memory`,`orchestration`,`sandbox`,`web`],vt=[`memory`],yt=new Set([`sandbox`,`host`,`cloud-browser`]);function needsManageWhenUnattended(e){return yt.has(e)||isResourceGrant(e)}function isNativeToolGroup(e){return m.includes(e)}function parseToolGroupGrant(e){if(isNativeToolGroup(e))return{type:`native`,group:e};let t=e.indexOf(`:`);if(t<=0)return null;let n=e.slice(0,t),r=e.slice(t+1);return r.length===0||!h.includes(n)?null:{type:`resource`,kind:n,id:r}}function grantKindOf(e){let t=parseToolGroupGrant(e);return t?.type===`resource`?t.kind:null}function isResourceGrant(e){return parseToolGroupGrant(e)?.type===`resource`}function resourceGrant(e,t){return`${e}:${t}`}function canonicalToolGroups(e){return[...new Set(e)].sort()}const bt=[{key:`direct`,icon:`message`,color:`ink`,description:`A message a person wrote to this mailbox: a conversation, a question, a request, a reply.`},{key:`transactional`,icon:`credit-card`,color:`terra`,description:`An automated message about an account or an operation: receipt, invoice, payment, order, shipping, booking, password reset, security alert.`},{key:`notifications`,icon:`bell`,color:`ochre`,description:`An automated alert from a tool or a service: activity on GitHub, Slack, a calendar, a CRM, a monitoring system.`},{key:`newsletters`,icon:`book-open`,color:`stone`,description:`Editorial content the mailbox subscribed to: newsletters, digests, articles, community updates.`},{key:`marketing`,icon:`percentage`,color:`iris`,description:`Promotion or prospecting: offers, discounts, product announcements, cold sales outreach.`}],xt={direct:{en:`Direct`,fr:`Direct`},transactional:{en:`Transactional`,fr:`Transactionnel`},notifications:{en:`Notifications`,fr:`Notifications`},newsletters:{en:`Newsletters`,fr:`Newsletters`},marketing:{en:`Marketing`,fr:`Marketing`}},St=8,Ct=24,wt=10,Tt=500,Et=`tag`,Dt=`stone`,Ot=new Set(`gmail.com,googlemail.com,outlook.com,hotmail.com,hotmail.fr,outlook.fr,live.com,live.fr,msn.com,yahoo.com,yahoo.fr,icloud.com,me.com,mac.com,proton.me,protonmail.com,gmx.com,gmx.fr,orange.fr,wanadoo.fr,free.fr,laposte.net,sfr.fr,bbox.fr,numericable.fr,aol.com`.split(`,`)),kt=new Set(bt.map(e=>e.key)),At=new Set(Object.entries(xt).flatMap(([e,t])=>[e,t.en,t.fr].map(e=>e.toLowerCase())));function isSystemEmailCategory(e){return kt.has(e)}function isSystemEmailCategoryName(e){return At.has(e.trim().toLowerCase())}function isPublicMailDomain(e){return Ot.has(e.toLowerCase())}const R={maxConcurrentRuns:3,retryPolicy:{maxRetries:3,backoffMs:1e3,backoffMultiplier:2}};var AgentBuilder=class{constructor(e){if(!e.name||e.name.trim().length===0)throw new r(`Agent name is required`,[]);this.bp={name:e.name,system:!0,visibility:`workspace`,triggers:[]}}description(e){return this.bp.description=e,this}label(e){return this.bp.label=e,this}avatar(e){return this.bp.avatar={type:e.type,color:e.color,expression:e.expression??`relaxed`},this}starters(e){return e.length===0?delete this.bp.starters:this.bp.starters=[...e],this}systemPrompt(e){return this.bp.systemPrompt=e,this}model(e,t,n){return this.bp.model={provider:e,model:t,...n},this}toolGroups(e){let r=e.find(e=>!isNativeToolGroup(e));if(r!==void 0)throw new n(t.AGENT_TOOL_GROUP_UNKNOWN,r,`Agent "${this.bp.name}": "${r}" is not a native tool group (blueprints cannot grant tenant resources)`);return this.bp.toolGroups=canonicalToolGroups(e),this}schedule(e){return this.bp.schedule={...e,enabled:e.enabled??!0},this}config(e){let t=this.bp.config??R,n=e.inference===void 0?t.inference:{...t.inference,...e.inference};return this.bp.config={...t,...e,...n===void 0?{}:{inference:n}},this}delegation(e){return Object.assign(this.bp,e),this}approval(e){return this.bp.approval={...o,...this.bp.approval,...e},this}visibility(e){return this.bp.visibility=e,this}trigger(e,t,n){return this.bp.triggers.push({name:e,eventType:t,...n,enabled:n?.enabled??!0}),this}runtime(){return this.bp.system=!1,this}build(){if(!this.bp.systemPrompt)throw new r(`Agent "${this.bp.name}": systemPrompt is required`,[]);if(!this.bp.model)throw new r(`Agent "${this.bp.name}": model is required`,[]);if(this.bp.system&&this.bp.visibility===`private`)throw new r(`Agent "${this.bp.name}": system agents must use workspace visibility`,[]);return i(this.bp.triggers,e=>e.name,e=>new r(`Agent "${this.bp.name}": duplicate trigger name "${e}"`,[])),{...this.bp,visibility:this.bp.visibility??`workspace`,toolGroups:this.bp.toolGroups??[...vt],config:this.bp.config??R,systemPrompt:this.bp.systemPrompt,model:this.bp.model}}};function agent(e){return new AgentBuilder(e)}const z={issue:{events:[`issues`],actions:[`opened`,`edited`,`closed`,`reopened`,`labeled`,`unlabeled`,`assigned`,`unassigned`,`milestoned`,`demilestoned`,`transferred`,`pinned`],conditions:[`label`,`issueLabels`,`assignees`,`milestone`,`issueType`,`text`]},pull_request:{events:[`pull_request`],actions:[`opened`,`ready_for_review`,`synchronize`,`review_requested`,`merged`,`closed`,`reopened`,`converted_to_draft`,`labeled`,`assigned`,`edited`],conditions:[`baseBranch`,`headBranch`,`draft`,`issueLabels`,`changedPaths`,`prAuthor`]},review:{events:[`pull_request_review`],actions:[`submitted`,`edited`,`dismissed`],conditions:[`reviewState`,`prAuthor`]},comment:{events:[`issue_comment`,`pull_request_review_comment`,`commit_comment`],actions:[`created`,`edited`,`deleted`],conditions:[`text`,`issueAuthor`,`prAuthor`]},push:{events:[`push`],actions:[`pushed`],conditions:[`branch`,`changedPaths`,`forced`]},ref:{events:[`create`,`delete`],actions:[`created`,`deleted`],conditions:[`refType`,`branch`,`tag`]},workflow:{events:[`workflow_run`],actions:[`requested`,`in_progress`,`completed`],conditions:[`workflowName`,`conclusion`,`branch`,`originEvent`]},check:{events:[`check_suite`,`check_run`],actions:[`completed`,`rerequested`],conditions:[`checkApp`,`checkName`,`conclusion`]},project_item:{events:[`projects_v2_item`],actions:[`created`,`edited`,`archived`,`restored`,`deleted`],conditions:[`project`,`projectField`,`from`,`to`,`itemType`]},release:{events:[`release`],actions:[`published`,`created`,`edited`,`prereleased`,`deleted`],conditions:[`prerelease`,`tag`]},discussion:{events:[`discussion`,`discussion_comment`],actions:[`created`,`commented`,`answered`,`labeled`,`closed`],conditions:[`category`,`issueLabels`,`text`]},repository:{events:[`star`,`fork`,`repository`],actions:[`starred`,`forked`,`created`,`archived`],conditions:[]}},jt={mention:{events:[`app_mention`],conditions:[`text`]},message:{events:[`message`],conditions:[`position`,`text`,`hasFile`]},dm:{events:[`message`],conditions:[`text`,`hasFile`]},reaction:{events:[`reaction_added`],conditions:[`messageAuthor`]},member_joined:{events:[`member_joined_channel`],conditions:[]}},Mt=a.object({field:a.literal(`text`),operator:a.enum([`contains`,`starts_with`]),value:a.string().min(1)}).strict();function stringCondition(e){return a.object({field:a.literal(e),value:a.string().min(1)}).strict()}function booleanCondition(e){return a.object({field:a.literal(e),value:a.boolean()}).strict()}function listCondition(e){return a.object({field:a.literal(e),operator:a.enum([`any`,`all`]).default(`any`),value:a.array(a.string().min(1)).min(1)}).strict()}const Nt=a.discriminatedUnion(`field`,[Mt,stringCondition(`label`),listCondition(`issueLabels`),listCondition(`assignees`),stringCondition(`milestone`),stringCondition(`issueType`),stringCondition(`baseBranch`),stringCondition(`headBranch`),stringCondition(`branch`),booleanCondition(`draft`),stringCondition(`changedPaths`),booleanCondition(`forced`),stringCondition(`prAuthor`),stringCondition(`issueAuthor`),a.object({field:a.literal(`reviewState`),value:a.enum([`approved`,`changes_requested`,`commented`])}).strict(),stringCondition(`workflowName`),stringCondition(`checkApp`),stringCondition(`checkName`),stringCondition(`conclusion`),stringCondition(`originEvent`),stringCondition(`project`),stringCondition(`projectField`),a.object({field:a.literal(`from`),value:a.string().nullable()}).strict(),a.object({field:a.literal(`to`),value:a.string().nullable()}).strict(),a.object({field:a.literal(`itemType`),value:a.enum([`issue`,`pull_request`,`draft`])}).strict(),booleanCondition(`prerelease`),stringCondition(`tag`),a.object({field:a.literal(`refType`),value:a.enum([`branch`,`tag`])}).strict(),stringCondition(`category`)]),Pt=a.discriminatedUnion(`field`,[Mt,a.object({field:a.literal(`position`),value:a.enum([`top_level`,`reply`])}).strict(),booleanCondition(`hasFile`),stringCondition(`messageAuthor`)]),Ft=a.string().regex(/^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/),It=a.enum([`human`,`me`,`any`]),Lt=a.object({family:a.enum(Object.keys(z)),actions:a.array(a.string()).default([]),repositories:a.array(Ft).default([]),sender:a.union([It,a.object({logins:a.array(a.string().min(1)).min(1)}).strict()]).default(`human`),conditions:a.array(Nt).default([])}).strict().superRefine((e,t)=>{let n=z[e.family];e.actions.forEach((r,i)=>{n.actions.includes(r)||t.addIssue({code:`custom`,path:[`actions`,i],message:`Action ${r} is not supported by ${e.family}`})}),e.conditions.forEach((r,i)=>{n.conditions.includes(r.field)||t.addIssue({code:`custom`,path:[`conditions`,i,`field`],message:`Condition ${r.field} is not supported by ${e.family}`})})}).transform(e=>e),Rt=a.object({on:a.enum([`mention`,`message`,`dm`,`reaction`,`member_joined`]),channels:a.array(a.string().min(1)).default([]),reactions:a.array(a.string().min(1)).optional(),sender:a.union([It,a.object({users:a.array(a.string().min(1)).min(1)}).strict()]).default(`human`),conditions:a.array(Pt).default([])}).strict().superRefine((e,t)=>{e.conditions.forEach((n,r)=>{jt[e.on].conditions.includes(n.field)||t.addIssue({code:`custom`,path:[`conditions`,r,`field`],message:`Condition ${n.field} is not supported by ${e.on}`})}),e.reactions!==void 0&&e.on!==`reaction`&&t.addIssue({code:`custom`,path:[`reactions`],message:`reactions requires on=reaction`})}).transform(e=>e),zt=a.union([Lt,Rt]),Bt=[`read`,`write`,`full`],Vt=[`accepted`,`declined`,`tentative`],Ht=[`force`,`skip`],Ut=[`none`,`all`,`external_only`],Wt={override:null,status:`none`,failureReason:null,botId:null},Gt=a.object({speaker:a.string().nullable(),startsAtMs:a.number(),endsAtMs:a.number(),text:a.string()}),Kt=a.object({fullText:a.string(),segments:a.array(Gt),language:a.string().nullable(),startedAt:a.string().nullable(),endedAt:a.string().nullable()}),qt={width:1280,height:720,maxBytes:13e5,mimeType:`image/jpeg`},Jt=Math.ceil(qt.maxBytes/3)*4,Yt=a.object({conferenceJoinUrl:a.string().min(1),botDisplayName:a.string().min(1),startsAt:a.string().nullable(),callbackUrl:a.url(),botImageJpeg:a.string().max(Jt).optional()}),Xt=a.object({botId:a.string().min(1)}),Zt=a.discriminatedUnion(`kind`,[a.object({kind:a.literal(`transcript-ready`),botId:a.string().min(1)}),a.object({kind:a.literal(`failure`),botId:a.string().min(1),reason:a.string()})]),Qt=100;let $t=function(e){return e.Desktop=`desktop`,e}({});function isMailProvider(e){return e===`gmail`||e===`outlook`}const en=`DRAFT`;function isProviderDraft(e){return e.includes(en)}const tn=[`read`,`unread`,`archive`,`trash`,`restore`],nn=[`threads`,`messages`];function isMailboxListMode(e){return nn.includes(e)}const rn=[`reply`,`reply_all`];function isReplyMode(e){return rn.includes(e)}const an=2e5,on=2e4,sn=998,cn=100,ln=/^[A-Za-z0-9_-]+$/,un=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,6})?Z$/,dn=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function encodeAgentSessionListCursor(e){return btoa(`${e.at}|${e.id}`).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``)}function decodeAgentSessionListCursor(e){if(e.length>256||!ln.test(e))return null;let t;try{t=atob(e.replace(/-/g,`+`).replace(/_/g,`/`))}catch{return null}let[n,r,...i]=t.split(`|`);return i.length>0||!n||!r||!un.test(n)||!dn.test(r)?null:isRealInstant(n)?{at:n,id:r}:null}function isRealInstant(e){let t=new Date(e);return!Number.isNaN(t.getTime())&&t.toISOString().slice(0,19)===e.slice(0,19)}const B=a.number().finite().nonnegative(),V=a.enum(s),H=a.enum(c),U=a.enum(l),W=a.enum(le),G=a.object({provider:V,model:a.string().min(1)}).strict(),fn=a.object({speed:H.optional(),reasoning:U.optional(),routing:W.optional()}).strict(),K=a.string().regex(/^[a-z0-9][a-z0-9-]*\/[a-z0-9][a-z0-9._-]*$/),pn=a.object({model:G.optional(),speed:H.optional(),reasoning:U.optional(),imageModel:K.optional(),routing:W.optional()}).strict(),mn=pn.refine(e=>u.some(t=>e[t]!==void 0),{message:`At least one inference override is required`});function isSessionInferencePatch(e){return Object.keys(e).length>0&&Object.values(e).every(e=>e!==void 0)}const hn=a.object({model:G.nullable().optional(),speed:H.nullable().optional(),reasoning:U.nullable().optional(),imageModel:K.nullable().optional(),routing:W.nullable().optional()}).strict().refine(isSessionInferencePatch,{message:`At least one inference override is required`}),gn=a.object({model:a.string().min(1),routing:a.object({mode:a.literal(`auto`),tasks:a.array(a.enum(se)).optional(),demand:a.enum(ce).optional(),reason:a.enum([`selected`,`retained`,`fallback`]).optional(),relation:a.enum([`continue`,`modify`,`new`,`aside`,`unknown`]).optional(),anchorMessageId:a.string().min(1).optional()})}),q=a.object({label:a.string(),denied:a.boolean().optional(),deletion:a.object({target:a.string().optional(),count:B.optional(),restorableDays:B.optional()}).strict().optional(),record:a.object({objectName:a.string(),id:a.string(),label:a.string(),objectIcon:a.string().optional()}).strict().optional(),object:a.object({name:a.string(),label:a.string()}).strict().optional(),email:a.object({from:a.string(),to:a.array(a.string()),cc:a.array(a.string()),bcc:a.array(a.string()),subject:a.string().nullable(),text:a.string(),truncatedChars:B,outsideThread:a.array(a.string()),attachments:a.array(a.object({name:a.string(),size:B}).strict()),updatedAt:a.string(),forwarded:a.object({from:a.string(),subject:a.string().nullable(),quote:a.string(),quoteTruncatedChars:B}).strict().optional()}).strict().optional(),counts:a.record(a.string(),B).optional(),warnings:a.array(a.string()).optional()}).strict(),_n=a.union([a.object({type:a.literal(`text`),text:a.string()}).strict(),a.object({type:a.literal(`reasoning`),text:a.string()}).strict(),a.object({type:a.literal(`system`),code:a.enum(f)}).strict(),a.object({type:a.literal(`error`),error:a.string(),errorClass:a.string().optional()}).strict(),a.object({type:a.literal(`tool`),toolCallId:a.string(),name:a.string(),args:a.record(a.string(),a.unknown()),result:a.unknown().optional(),error:a.string().optional(),errorCode:a.enum([`output_limit_reached`,`interrupted`,t.INVALID_TOOL_INPUT,`external_outcome_unknown`,`external_not_dispatched`]).optional(),state:a.enum([`streaming`,`running`,`completed`,`error`,`pending`,`approval-requested`,`approval-responded`,`approval-dispatched`]),durationMs:B.optional(),approvalId:a.string().optional(),approvalImpact:q.optional(),approved:a.boolean().optional(),approvalReason:a.string().optional(),approvalDecidedBy:a.string().optional(),approvalDecidedAt:a.string().optional(),approvalRelaxableByAuto:a.boolean().optional()}).strict(),a.object({type:a.literal(`file`),fileId:a.string(),name:a.string(),mimeType:a.string()}).strict(),a.object({type:a.literal(`compaction`),state:a.literal(`in-progress`),reason:a.enum([`preflight_threshold`,`overflow_recovery`]),estimatedTokens:B.optional(),reportedTokens:B.optional()}).strict(),a.object({type:a.literal(`compaction`),state:a.literal(`completed`),tokensBefore:B,tokensAfter:B,tokensSaved:B,strategy:a.enum([`no-op`,`summary`,`truncation`]),durationMs:B,summary:a.string().optional()}).strict(),a.object({type:a.literal(`compaction`),state:a.literal(`failed`),reason:a.string(),durationMs:B.optional()}).strict()]),vn=a.object({id:a.string(),name:a.string(),mimeType:a.string(),size:B}).strict(),yn=a.object({id:a.string(),artifactId:a.string(),revision:a.number().int().min(1),selectedText:a.string()}).strict(),bn=a.object({id:a.string(),type:a.string().transform(e=>e),entityId:a.string(),label:a.string(),objectName:a.string().optional(),startIndex:B,endIndex:B}).strict(),xn=a.object({provider:V,model:a.string(),maxTokens:B.optional(),contextWindow:B.optional()}).strict(),Sn=a.union([a.date(),a.string().datetime({offset:!0}).transform(e=>new Date(e))]),Cn=a.object({id:a.string(),sessionId:a.string(),tenantId:a.string().optional(),runId:a.string().optional(),role:a.enum([`user`,`assistant`,`system`,`tool`]),parts:a.array(_n),attachments:a.array(vn).optional(),mentions:a.array(bn).optional(),quotes:a.array(yn).optional(),model:xn.optional(),tokenUsage:a.object({input:B,output:B}).strict().optional(),metadata:a.record(a.string(),a.unknown()).optional(),createdAt:Sn}).strict(),wn=a.object({id:a.string(),description:a.string(),status:a.enum([`pending`,`in_progress`,`completed`,`blocked`]),result:a.string().optional(),updatedAt:B.optional(),target:a.object({phase:a.enum(p)}).strict().optional()}).strict(),Tn=a.object({id:a.string(),sessionId:a.string(),status:a.enum([`active`,`completed`,`abandoned`]),todos:a.array(wn),version:B,createdAt:a.string(),updatedAt:a.string(),completedAt:a.string().optional()}).strict(),J={"compaction-start":a.object({reason:a.enum([`preflight_threshold`,`overflow_recovery`]),estimatedTokens:B.optional(),reportedTokens:B.optional()}).strict(),"compaction-end":a.object({tokensBefore:B,tokensAfter:B,tokensSaved:B,strategy:a.enum([`no-op`,`summary`,`truncation`]),durationMs:B,summary:a.string().optional()}).strict(),"compaction-failed":a.object({reason:a.string()}).strict(),usage:a.object({messageId:a.string().min(1).optional(),inputTokens:B,outputTokens:B,totalTokens:B,cacheReadTokens:B.optional(),cacheCreationTokens:B.optional(),contextWindow:B,residentTokens:B,utilization:a.number().finite().min(0).max(1),costUsd:B.optional()}).strict(),"message-updated":a.object({message:Cn}).strict(),"approval-context":a.object({approvalId:a.string(),toolCallId:a.string(),impact:q.optional(),relaxableByAuto:a.boolean().optional()}).strict()};function isAgentUIDataName(e){return e in J}function agentUIValidationError(e){return new r(`Invalid agent UI message chunk`,e.map(e=>({path:e.path.map(String),message:e.message,code:e.code})))}function assertCustomAgentUIMessageChunk(e){if(typeof e!=`object`||!e||typeof e.type!=`string`)throw new r(`Invalid agent UI message chunk`,[{path:[`type`],message:`Expected UI message chunk type`,code:`invalid_type`}]);let t=e.type;if(!t.startsWith(`data-`))throw new r(`Invalid agent UI message chunk`,[{path:[`type`],message:`Expected agent data chunk type`,code:`invalid_value`}]);let n=t.slice(5);if(!isAgentUIDataName(n))throw new r(`Invalid agent UI message chunk`,[{path:[`type`],message:`Unknown agent UI data type: ${n}`,code:`invalid_value`}]);let i=a.object({type:a.literal(`data-${n}`),id:a.string().optional(),data:J[n],transient:a.boolean().optional()}).strict().safeParse(e);if(!i.success)throw agentUIValidationError(i.error.issues);return i.data}function agentDataChunk(e,t,n){return assertCustomAgentUIMessageChunk({type:`data-${e}`,...n?.id===void 0?{}:{id:n.id},data:t,...n?.transient===void 0?{}:{transient:n.transient}})}const En=a.string().trim().min(1).max(24),Dn=a.string().trim().min(10).max(500),On=a.enum([`address`,`domain`]),kn=a.object({scope:a.enum([`personal`,`workspace`]),name:En,description:Dn,icon:te.default(`tag`),color:ee.default(Dt)}),An=a.object({name:En.optional(),description:Dn.optional(),icon:te.optional(),color:ee.optional()}).refine(e=>Object.values(e).some(e=>e!==void 0),{message:`Nothing to update`}),jn=a.object({moveTo:a.string().min(1).nullable().default(null)}),Mn=a.object({category:a.string().min(1).optional(),important:a.boolean().optional()}).refine(e=>e.category!==void 0||e.important!==void 0,{message:`Nothing to classify`}),Nn=a.object({verdict:a.object({category:a.string().min(1).nullable(),important:a.boolean(),classifiedBy:a.enum([`model`,`rule`,`manual`]).nullable()}),ruleId:a.string().uuid().nullable(),previousRule:a.object({scope:On,match:a.string().trim().toLowerCase().min(1),category:a.string().min(1)}).nullable()}).refine(e=>e.ruleId!==null||e.previousRule===null,{message:`A previous rule needs the rule it restores`}),Pn=a.object({scope:a.literal(`domain`)}),Fn=a.object({scope:a.enum([`personal`,`workspace`])}),In=a.object({type:a.enum(de),color:a.enum(ne),expression:a.enum(fe).default(`relaxed`)}).strict(),Ln=a.array(a.string().trim().min(1).max(200)).max(4);function agentAvatarFromMetadata(e){let t=In.safeParse(e);return t.success?t.data:void 0}const Y=[`record.created`,`record.updated`,`record.deleted`,`form.submitted`,`webhook`,`github`,`slack`],Rn=new Set([`record.created`,`record.updated`,`record.deleted`]),zn=/^[A-Z_][A-Z0-9_]*$/,Bn=a.object({cron:a.string().min(9),timezone:a.string().optional(),enabled:a.boolean(),input:a.record(a.string(),a.unknown()).optional(),runFor:a.enum([`armer`,`audience`]).optional(),audience:a.object({workspace:a.boolean(),roleIds:a.array(a.uuid()),actorIds:a.array(a.uuid())}).optional(),continueConversation:a.boolean().optional()}),Vn=/^[A-Za-z0-9_$-]+(\.[A-Za-z0-9_$-]+)*$/,X=a.object({name:a.string().max(120).optional(),eventType:a.enum(Y),objectId:a.guid().optional(),watchedFields:a.array(a.string()).max(50).optional(),debounceMs:a.number().int().min(0).max(3e5).optional(),filter:a.object({combinator:a.enum([`and`,`or`]).default(`and`),rules:a.array(a.object({attribute:a.string(),operator:a.string(),value:a.unknown().optional()}))}).optional(),formDefinitionId:a.string().optional(),continuationKey:a.string().max(200).regex(Vn).nullable().optional(),connectionId:a.guid().optional(),match:zt.optional(),continueConversation:a.boolean().optional(),enabled:a.boolean().optional()});function refineTrigger(e){return e.refine(e=>!e.watchedFields?.length||e.eventType===`record.updated`,{message:`watchedFields requires eventType=record.updated`,path:[`watchedFields`]}).refine(e=>!(e.eventType&&Rn.has(e.eventType))||!!e.objectId,{message:`objectId is required for record.* triggers`,path:[`objectId`]}).refine(e=>!(e.continuationKey&&e.eventType)||e.eventType===`webhook`,{message:`continuationKey requires eventType=webhook`,path:[`continuationKey`]}).superRefine((e,t)=>{let n=e.eventType===`github`||e.eventType===`slack`;if(n&&!e.connectionId&&t.addIssue({code:`custom`,path:[`connectionId`],message:`connectionId is required for native connector triggers`}),n&&!e.match&&t.addIssue({code:`custom`,path:[`match`],message:`match is required for native connector triggers`}),e.match&&e.eventType&&((e.eventType===`github`?`family`in e.match:e.eventType===`slack`&&`on`in e.match)||t.addIssue({code:`custom`,path:[`match`],message:`match must belong to the trigger provider`})),e.eventType&&!n)for(let n of[`connectionId`,`continueConversation`])e[n]!==void 0&&t.addIssue({code:`custom`,path:[n],message:`${n} requires a native connector trigger`})})}const Hn=refineTrigger(X).transform(e=>({...e,...e.eventType===`github`||e.eventType===`slack`?{continueConversation:e.continueConversation??!0}:{}})),Un=X.partial();function parseMergedAgentTrigger(e,t){let n=Un.safeParse(t);if(!n.success)throw triggerValidationError(n.error);let r=Object.fromEntries(Object.entries(n.data).filter(([,e])=>e!==void 0)),i=Hn.safeParse({...e,...r});if(!i.success)throw triggerValidationError(i.error);return i.data}function triggerValidationError(e){return new r(`Invalid agent trigger`,e.issues.map(e=>({path:e.path.map(String),message:e.message})))}const Wn=100,Z=a.uuid(),Q=a.record(a.string(),a.unknown()),Gn=a.strictObject({objectName:a.string(),recordId:Z,attribute:a.string(),base:a.unknown(),props:Q.optional()}),Kn=a.strictObject({kind:a.literal(`record.set`),objectId:Z,recordId:Z,values:Q,base:Q.optional()}),qn=a.strictObject({kind:a.literal(`record.create`),objectId:Z,recordId:Z,values:Q,options:a.strictObject({visibility:a.enum([`workspace`,`private`]).optional(),allowDraft:a.boolean().optional(),linkTo:Gn.optional()}).optional()}),Jn=a.strictObject({kind:a.literal(`record.delete`),objectId:Z,recordId:Z}),Yn=a.strictObject({kind:a.literal(`record.restore`),objectId:Z,recordId:Z}),$=a.string().min(1),Xn=a.discriminatedUnion(`command`,[a.strictObject({command:a.literal(`replace`),oldText:$,newText:a.string(),replaceAll:a.boolean().optional()}),a.strictObject({command:a.literal(`insert`),text:$,after:$.optional()})]),Zn=a.strictObject({kind:a.literal(`record.patch`),objectId:Z,recordId:Z,attribute:a.string(),edit:Xn}),Qn=a.discriminatedUnion(`kind`,[Kn,qn,Jn,Yn,Zn]),$n=a.strictObject({opId:Z,steps:a.array(Qn).min(1).max(100)}).superRefine((e,t)=>{let n=new Set;for(let r of e.steps){if(n.has(r.recordId)){t.addIssue({code:`custom`,message:`one step per record`,path:[`steps`]});return}n.add(r.recordId)}});export{Bt as ACCESS_LEVELS,g as ACCESS_ROLES,ve as AGENT_ASIDE_ANSWER_MAX_LENGTH,ge as AGENT_ASIDE_HISTORY_LIMIT,_e as AGENT_ASIDE_QUESTION_MAX_LENGTH,fe as AGENT_AVATAR_EXPRESSIONS,de as AGENT_AVATAR_TYPES,Ce as AGENT_MESSAGE_KIND,Se as AGENT_NOTIFICATION_KIND,v as AGENT_SESSION_ACCESS_ROLES,ie as AGENT_SESSION_LIST_ORDERS,Ae as AGENT_SESSION_ORIGINS,ae as AGENT_SESSION_PROVENANCES,pe as AGENT_STARTERS_MAX,me as AGENT_STARTER_MAX_LENGTH,se as AGENT_TASK_KINDS,ht as ALL_CATALOG_TOOL_NAMES,ft as ALWAYS_KINDS,w as APPROVAL_FAMILY_TOOL_NAMES,we as ARCHITECT_PUBLICATION_KIND,qe as ASK_QUESTIONS_ANSWER_MAX_LENGTH,Je as ASK_QUESTIONS_ANSWER_MAX_VALUES,Ke as ASK_QUESTIONS_MAX_BATCH,x as ASK_QUESTIONS_TOOL_NAME,Be as AUDIT_ACTIONS,Ve as AUDIT_AGENT_SESSION_METADATA_KEY,ze as AUDIT_RESOURCE_TYPES,AgentBuilder,ke as BROWSER_LAUNCH_TOOL_NAME,Le as BUNDLE_LOCALES,gt as CONNECTION_GRANT_PROVIDERS,Vn as CONTINUATION_KEY_PATTERN,rt as CONVERSATION_SURFACES,N as CORE_RECORD_TOOL_NAMES,P as CORE_TOOL_NAMES,y as COUNT_MODES,R as DEFAULT_AGENT_EXECUTION_CONFIG,_t as DEFAULT_AGENT_TOOL_GROUPS,o as DEFAULT_APPROVAL_POLICY,vt as DEFAULT_BLUEPRINT_TOOL_GROUPS,be as DEFAULT_DAILY_ACTIVITY_DAYS,E as DEFAULT_MEETING_BOT_DISPLAY_NAME,et as DEFAULT_TENANT_SETTINGS,Ue as DISCARD_ARCHITECT_DRAFT_TOOL_NAME,je as DOCUMENT_SORT_MODES,He as DRAFT_WRITE_TOOL_NAMES,Dt as EMAIL_CATEGORY_DEFAULT_COLOR,Et as EMAIL_CATEGORY_DEFAULT_ICON,Tt as EMAIL_CATEGORY_DESCRIPTION_MAX,wt as EMAIL_CATEGORY_DESCRIPTION_MIN,St as EMAIL_CATEGORY_LIMIT,Ct as EMAIL_CATEGORY_NAME_MAX,A as ENVIRONMENT_HARNESSES,D as ENVIRONMENT_HARNESS_SANDBOX_WORKDIR,O as ENVIRONMENT_HARNESS_WORKDIR,lt as ENVIRONMENT_NAME_MAX_CHARS,k as ENVIRONMENT_STANDARDS_WORKDIR,zn as ENV_VAR_KEY_PATTERN,Re as ESTIMATED_COUNT_CAP,Ze as FILE_URLS_MAX_IDS,We as GET_ARCHITECT_DRAFT_TOOL_NAME,z as GITHUB_TRIGGER_CATALOG,pt as GRANT_ENABLES,Ge as HITL_TOOL_NAMES,l as INFERENCE_REASONING_OPTIONS,le as INFERENCE_ROUTING_MODES,c as INFERENCE_SPEEDS,ye as LAST_RUN_ERROR_MAX_LENGTH,nn as MAILBOX_LIST_MODES,an as MAIL_DRAFT_BODY_MAX_CHARS,on as MAIL_SIGNATURE_MAX_CHARS,sn as MAIL_SUBJECT_MAX_CHARS,xe as MAX_DAILY_ACTIVITY_DAYS,Ee as MAX_TODOS,Oe as MAX_TODO_DESCRIPTION_CHARS,De as MAX_TODO_ID_CHARS,Qt as MCP_SERVER_NAME_MAX_LENGTH,qt as MEETING_BOT_IMAGE,Jt as MEETING_BOT_IMAGE_BASE64_MAX_LENGTH,Vt as MEETING_RESPONSES,$e as MEMORY_SPEND_LIMIT_PATTERN,$t as McpOAuthCompletionMode,m as NATIVE_TOOL_GROUPS,I as NATIVE_TOOL_GROUP_CATALOG,Wt as NO_RECORDING,he as OPEN_TOOL_PART_STATES,Wn as OPERATION_MAX_STEPS,en as PROVIDER_DRAFT_LABEL,s as PROVIDER_NAMES,Ot as PUBLIC_MAIL_DOMAINS,C as QUESTION_FAMILY_TOOL_NAMES,Xe as RECENT_ACTIVITY_LEDGER_LIMIT,cn as RECIPIENT_IDENTITIES_MAX,Ht as RECORDING_OVERRIDES,Ut as RECORDING_POLICIES,_ as RECORD_ACCESS_ROLES,Fe as RECORD_ACCESS_SOURCES,Pe as RECORD_DRIVE_CURSOR_MAX_LENGTH,Me as RECORD_DRIVE_PAGE_DEFAULT_LIMIT,Ne as RECORD_DRIVE_PAGE_MAX_LIMIT,ot as RECORD_GRAPH_DEFAULT_LIMIT_PER_NODE,at as RECORD_GRAPH_MAX_LIMIT_PER_NODE,it as RECORD_GRAPH_MAX_NODES,Qe as RECORD_IMAGE_MAX_BYTES,rn as REPLY_MODES,b as REQUEST_DESIGN_REVIEW_TOOL_NAME,S as REQUEST_SETUP_TOOL_NAME,h as RESOURCE_GRANT_KINDS,L as RESOURCE_KIND_CATALOG,ue as ROUTING_PRICE_CEILINGS,u as SESSION_INFERENCE_PATCH_KEYS,ut as SETUP_SCRIPT_MAX_CHARS,jt as SLACK_TRIGGER_CATALOG,mt as SURFACE_TOOL_NAMES,bt as SYSTEM_EMAIL_CATEGORIES,xt as SYSTEM_EMAIL_CATEGORY_NAMES,f as SYSTEM_PART_CODES,ce as TASK_DEMAND_LEVELS,p as TODO_PHASES,oe as TODO_PLAN_STATUSES,Te as TODO_STATUSES,d as TOOL_APPROVAL_STATES,tn as TRIAGE_ACTIONS,Y as TRIGGER_EVENT_TYPES,re as TURN_OUTCOMES,Ie as UNSHAREABLE_OBJECT_NAMES,tt as USER_STATUSES,nt as USER_WORK_POSTURES,M as VERB_NAMES,agent,agentAvatarFromMetadata,In as agentAvatarSchema,agentDataChunk,agentDisplayName,fn as agentInferencePreferencesSchema,vn as agentMessageAttachmentSchema,_n as agentMessagePartSchema,Bn as agentScheduleSchema,pn as agentSessionInferenceOverridesInputSchema,mn as agentSessionInferenceOverridesSchema,Cn as agentSessionMessageSchema,Ln as agentStartersSchema,X as agentTriggerBaseSchema,Un as agentTriggerPatchSchema,Hn as agentTriggerSchema,agentUIValidationError,yn as artifactQuoteSchema,T as askQuestionsOutputSchema,assertCustomAgentUIMessageChunk,assertSessionState,canonicalToolGroups,Nn as classificationRestoreSchema,Mn as classifyEmailSchema,cliDefaultModelOf,compareAgentSessionMessages,compiledHarnessModels,connectionGrantKindsOf,zt as connectorTriggerMatchSchema,J as customDataChunkSchemas,decodeAgentSessionListCursor,deriveViewerAccess,Sn as durableDateSchema,kn as emailCategoryCreateSchema,jn as emailCategoryDeleteSchema,Fn as emailCategoryScopeQuerySchema,An as emailCategoryUpdateSchema,Pn as emailRuleScopeSchema,encodeAgentSessionListCursor,environmentHarness,environmentWorkdir,findEnvironmentHarness,Nt as githubConditionSchema,Lt as githubTriggerMatchSchema,grantKindOf,harnessModelChoices,humanRequestId,humanRequestKind,K as imageModelIdSchema,U as inferenceReasoningSchema,W as inferenceRoutingSchema,H as inferenceSpeedSchema,isAgentMessageMetadata,isAgentNotificationMetadata,isAgentUIDataName,isAgentWrittenAuditEntry,isArchitectPublicationMetadata,isAwaitingHuman,isBlocking,isEnvironmentHarnessId,isMailProvider,isMailboxListMode,isNativeToolGroup,isOpenToolPartState,isParkedOnHuman,isProviderDraft,isPublicMailDomain,isReplyMode,isResourceGrant,isRoutineActorMetadata,isSessionInferencePatch,isSystemEmailCategory,isSystemEmailCategoryName,isSystemPartCode,isToolApprovalState,Yt as meetingBotDispatchRequestSchema,Xt as meetingBotDispatchResponseSchema,Zt as meetingBotNotificationSchema,Gt as meetingTranscriptSegmentSchema,bn as mentionReferenceSchema,mergeSessionInferencePatch,xn as modelDefinitionSchema,G as modelReferenceSchema,needsManageWhenUnattended,Kt as normalizedMeetingTranscriptSchema,openRequests,orderAgentSessionMessages,parseAgentDefinitionAccessRole,parseAgentSessionAccessRole,parseCountMode,parseMergedAgentTrigger,parseOptionalCountMode,parsePageAccessRole,parseRecordAccessRole,parseToolGroupGrant,V as providerNameSchema,readAskQuestionsResult,recentActivityEntryKey,recordGraphNodeKey,ct as recordGraphRequestSchema,$n as recordOperationSchema,refineTrigger,resourceGrant,gn as routedMessageInferenceSchema,hn as sessionInferencePatchSchema,Pt as slackConditionSchema,Rt as slackTriggerMatchSchema,wn as todoItemSchema,Tn as todoPlanSchema,q as toolImpactSchema};
@@ -1,6 +1,6 @@
1
1
 
2
- import { SCHEMA_LIMITS, collectionContentSourceSchema, colorIdSchema, contentViewDefinitionSchema, draftContentViewDefinitionSchema, iconNameSchema, publishedViewContentDefinitionSchema } from "../all-Y3tO-bfa.mjs";
3
- import { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys } from "../index-ColQV1OG.mjs";
2
+ import { SCHEMA_LIMITS, collectionContentSourceSchema, colorIdSchema, contentViewDefinitionSchema, draftContentViewDefinitionSchema, iconNameSchema, publishedViewContentDefinitionSchema } from "../all-Biqbc9qo.mjs";
3
+ import { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys } from "../index-DL2EgSvl.mjs";
4
4
  import { DEFAULT_VALIDATION_MESSAGES, ValidationMessages, ValidationResult, formatZodErrors } from "../index-CiKELB3w.mjs";
5
- import { createAttributeValidator, createFormAttributeValidator, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from "../index-BC5mEVkb.mjs";
5
+ import { createAttributeValidator, createFormAttributeValidator, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from "../index-DIIGKwsP.mjs";
6
6
  export { DEFAULT_VALIDATION_MESSAGES, SCHEMA_LIMITS, SIMPLE_PROPERTY_TYPES, type ValidationMessages, type ValidationResult, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, collectionContentSourceSchema, colorIdSchema, contentViewDefinitionSchema, createAttributeValidator, createFormAttributeValidator, draftContentViewDefinitionSchema, formatZodErrors, getAttributeConfigSchema, getAttributeConfigWriteSchema, iconNameSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, publishedViewContentDefinitionSchema, refuseForeignKeys, rejectUnknownAttributesOrThrow, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys };
@@ -1,6 +1,6 @@
1
1
 
2
- import { SCHEMA_LIMITS, collectionContentSourceSchema, colorIdSchema, contentViewDefinitionSchema, draftContentViewDefinitionSchema, iconNameSchema, publishedViewContentDefinitionSchema } from "../all-o498zQ_Z.js";
3
- import { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys } from "../index-BsOZnVmp.js";
2
+ import { SCHEMA_LIMITS, collectionContentSourceSchema, colorIdSchema, contentViewDefinitionSchema, draftContentViewDefinitionSchema, iconNameSchema, publishedViewContentDefinitionSchema } from "../all-BLtv6oP5.js";
3
+ import { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys } from "../index-DkKyC4KB.js";
4
4
  import { DEFAULT_VALIDATION_MESSAGES, ValidationMessages, ValidationResult, formatZodErrors } from "../index-CFXgKvOC.js";
5
- import { createAttributeValidator, createFormAttributeValidator, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from "../index-DMBl9Ahc.js";
5
+ import { createAttributeValidator, createFormAttributeValidator, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from "../index-W1VZ8fn0.js";
6
6
  export { DEFAULT_VALIDATION_MESSAGES, SCHEMA_LIMITS, SIMPLE_PROPERTY_TYPES, type ValidationMessages, type ValidationResult, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, collectionContentSourceSchema, colorIdSchema, contentViewDefinitionSchema, createAttributeValidator, createFormAttributeValidator, draftContentViewDefinitionSchema, formatZodErrors, getAttributeConfigSchema, getAttributeConfigWriteSchema, iconNameSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, publishedViewContentDefinitionSchema, refuseForeignKeys, rejectUnknownAttributesOrThrow, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys };
@@ -1,3 +1,3 @@
1
1
 
2
- import { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, datePrecisionIssues, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys } from "../../index-ColQV1OG.mjs";
2
+ import { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, datePrecisionIssues, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys } from "../../index-DL2EgSvl.mjs";
3
3
  export { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, datePrecisionIssues, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys };
@@ -1,3 +1,3 @@
1
1
 
2
- import { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, datePrecisionIssues, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys } from "../../index-BsOZnVmp.js";
2
+ import { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, datePrecisionIssues, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys } from "../../index-DkKyC4KB.js";
3
3
  export { SIMPLE_PROPERTY_TYPES, WIRE_OFFERED_BASE_CONFIG, WIRE_OMITTED_CONFIG_KEYS, attributeConfigSchemas, datePrecisionIssues, getAttributeConfigSchema, getAttributeConfigWriteSchema, multiselectOptionWriteSchema, parseAttributeConfig, parseAttributeConfigForCreate, parseAttributeConfigForUpdate, propertyAttributeSchema, propertyAttributeWireSchema, propertySchemaSchema, propertySchemaWireSchema, refuseForeignKeys, selectOptionWriteSchema, statusGroupSchema, statusOptionWriteSchema, wireHiddenTypeConfigMask, wireOmittedConfigKeysFor, withoutUnknownOptionKeys };
@@ -1,3 +1,3 @@
1
1
 
2
- import { createAttributeValidator, createDraftValidator, createFormAttributeValidator, createObjectValidator, getMissingRequiredAttributes, isRecordComplete, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from "../../index-BC5mEVkb.mjs";
2
+ import { createAttributeValidator, createDraftValidator, createFormAttributeValidator, createObjectValidator, getMissingRequiredAttributes, isRecordComplete, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from "../../index-DIIGKwsP.mjs";
3
3
  export { createAttributeValidator, createDraftValidator, createFormAttributeValidator, createObjectValidator, getMissingRequiredAttributes, isRecordComplete, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow };
@@ -1,3 +1,3 @@
1
1
 
2
- import { createAttributeValidator, createDraftValidator, createFormAttributeValidator, createObjectValidator, getMissingRequiredAttributes, isRecordComplete, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from "../../index-DMBl9Ahc.js";
2
+ import { createAttributeValidator, createDraftValidator, createFormAttributeValidator, createObjectValidator, getMissingRequiredAttributes, isRecordComplete, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from "../../index-W1VZ8fn0.js";
3
3
  export { createAttributeValidator, createDraftValidator, createFormAttributeValidator, createObjectValidator, getMissingRequiredAttributes, isRecordComplete, rejectUnknownAttributesOrThrow, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@standards/schema",
3
- "version": "1.0.0-alpha.403",
3
+ "version": "1.0.0-alpha.405",
4
4
  "description": "Standard schema definitions and utilities",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -251,7 +251,7 @@
251
251
  "@standard-schema/spec": "^1.1.0",
252
252
  "libphonenumber-js": "^1.12.31",
253
253
  "zod": "^4.6.6",
254
- "@standards/constants": "1.0.0-alpha.403"
254
+ "@standards/constants": "1.0.0-alpha.405"
255
255
  },
256
256
  "devDependencies": {
257
257
  "@types/node": "^25.0.3",
@@ -1,2 +0,0 @@
1
- /*! © 2025-2026 AND YOU CREATE SAS (RCS Paris 940 190 614). Proprietary — see LICENSE (Standards SDK License 1.0). */
2
- import{SchemaError as e,SchemaErrorCode as t,ToolGroupGrantError as n,ValidationError as r}from"./exceptions.mjs";import"./zod-locale.mjs";import{assertUniqueBy as i,colorIdSchema as a,iconNameSchema as ee}from"./primitives-D9A6pmXV.mjs";import*as o from"zod";import{AVATAR_COLOR_IDS as te}from"@standards/constants";const ne=[`completed`,`failed`,`cancelled`];function invalidSessionState(n){throw new e(n,t.INVARIANT_VIOLATION)}function assertSessionState(e){e.phase===`running`?e.runningTurnId===void 0&&invalidSessionState(`running session without runningTurnId`):e.runningTurnId!==void 0&&invalidSessionState(`runningTurnId present on a ${e.phase} session`),e.phase===`parked`?e.parkedOn===void 0&&invalidSessionState(`parked session without parkedOn`):e.parkedOn!==void 0&&invalidSessionState(`parkedOn present on a ${e.phase} session`),e.parkedOn===`human`?e.humanRequestIds===void 0&&invalidSessionState(`human-parked session without humanRequestIds`):e.humanRequestIds!==void 0&&invalidSessionState(`humanRequestIds present on a session not parked on a human`)}const re=[`createdAt`,`lastActivity`],s=Object.freeze({mutation:`ask`,destructive:`ask`,outward:`ask`}),ie=[`active`,`completed`,`abandoned`],ae=[`openai`,`anthropic`,`google`,`spacexai`,`deepseek`,`moonshotai`,`alibaba`,`mistral`,`minimax`,`meta`,`zai`,`cursor`],oe=[`standard`,`fast`],se=[`none`,`minimal`,`low`,`medium`,`high`,`xhigh`],ce=[`conversation`,`writing`,`coding`,`analysis`,`extraction`],le=[`light`,`standard`,`heavy`],ue=[`manual`,`auto`],de={interactive:{inputPerMillionUsd:5,outputPerMillionUsd:25},delegated:{inputPerMillionUsd:2,outputPerMillionUsd:12}},c=[`model`,`speed`,`reasoning`,`imageModel`,`routing`];function mergeSessionInferencePatch(e,t){let n={...e};for(let e of c){let r=t[e];r===null?delete n[e]:r!==void 0&&Object.assign(n,{[e]:r})}return t.model&&t.routing===void 0&&(n.routing=`manual`),n}function isRoutineActorMetadata(e){return e?.kind===`routine`}const l=[`octopus`,`clover`,`flower`,`triangle`,`square`,`blob`,`circle`,`drop`,`hexagon`,`pill`,`pebble`,`puddle`],u=[`relaxed`,`neutral`],fe=4,pe=200;function agentDisplayName(e){return e.label?.trim()||e.name}const d=[`approval-requested`,`approval-responded`,`approval-dispatched`],f=[`streaming`,`running`,`pending`,...d];function isOpenToolPartState(e){return f.includes(e)}function isToolApprovalState(e){return d.includes(e)}const p=[`CREDITS_EXHAUSTED`];function isSystemPartCode(e){return typeof e==`string`&&p.includes(e)}const me=20,he=4e3,ge=32e3;function compareAgentSessionMessages(e,t){let n=e.createdAt.getTime()-t.createdAt.getTime();return n===0?e.id.localeCompare(t.id):n}function orderAgentSessionMessages(e){return[...e].sort(compareAgentSessionMessages)}const _e=200,ve=182,ye=366,m=`agent-notification`;function isAgentNotificationMetadata(e){return e?.kind===m}const h=`agent-message`;function isAgentMessageMetadata(e){return e?.kind===h}const be=`architect-publication`;function isArchitectPublicationMetadata(e){return e?.kind===be}const xe=[`pending`,`in_progress`,`completed`,`blocked`],Se=[`objects`,`fields`,`relations`,`views`,`samples`],Ce=50,we=80,Te=500,g=[`sandbox`,`web`,`image`,`memory`,`bulk`,`activity`,`orchestration`,`host`,`cloud-browser`,`notifications`],Ee=`browser_launch`,_=[`mcp`,`email.read`,`email.send`,`calendar.read`,`github`,`slack.read`,`slack.write`,`device`,`browser`,`browser-profile`,`login`],De=[`definition`,`default`,`child`,`inline`],Oe=[`manual`,`name-asc`,`name-desc`,`date-desc`,`date-asc`],ke=100,Ae=500,je=2048,Me=[`reader`,`runner`,`editor`],v=[`reader`,`editor`],Ne=[`manual`,`meeting_attendee`],Pe=new Set([`memory`,`skill`]);function parseRole(e,t){if(typeof t==`string`&&e.includes(t))return t;let n=`role must be one of: ${e.join(`, `)}`;throw new r(n,[{path:[`role`],message:n}])}function parseRecordAccessRole(e){return parseRole(v,e)}function parseAgentDefinitionAccessRole(e){return parseRole(Me,e)}function parsePageAccessRole(e){return parseRole(v,e)}function deriveViewerAccess(e,t){return e.visibility===`workspace`?`workspace`:e.ownedBy!==null&&t.includes(e.ownedBy)?`owner`:e.viewerGrant===`editor`?`editor`:e.viewerGrant===`runner`?`runner`:`reader`}const Fe=[`fr`,`en`],y=[`none`,`estimated`,`exact`];function parseCountMode(e){if(typeof e==`string`&&y.includes(e))return e;throw new r(`countMode must be one of: ${y.join(`, `)} (received: ${String(e)})`,[])}function parseOptionalCountMode(e){return e===void 0?void 0:parseCountMode(e)}const Ie=1e4,Le=[`record`,`object`,`attribute`,`view`,`user`,`role`,`settings`,`file`,`agent`,`bundle`,`tenant_invitation`,`api_key`],Re=`record.created,record.updated,record.deleted,record.restored,record.purged,record.access_changed,agent.access_changed,object.created,object.updated,object.deleted,attribute.created,attribute.updated,attribute.deleted,view.created,view.updated,view.deleted,bundle.synced,bundle.removed,bundle.added,user.created,user.invited,user.updated,user.deleted,user.login,user.logout,tenant_invitation.created,tenant_invitation.delivery_failed,tenant_invitation.resent,tenant_invitation.revoked,tenant_invitation.accepted,role.created,role.updated,role.deleted,role.assigned,role.revoked,api_key.detached,settings.updated,file.uploaded,file.updated,file.deleted`.split(`,`),ze=`agentSessionId`;function isAgentWrittenAuditEntry(e){return e.actorType===`agent`||typeof e.metadata?.agentSessionId==`string`}const Be=[`draft_schema`],Ve=`discard_architect_draft`,b=`request_design_review`,He=`get_architect_draft`,x=`ask_questions`,S=`request_setup`,Ue=new Set([x,b,S]),We=new Set([x,S]),Ge=new Set([b]),Ke=4,qe=2e3,Je=50,Ye=o.union([o.object({value:o.string(),label:o.string()}).strict(),o.object({values:o.array(o.string()),labels:o.array(o.string()),text:o.string().optional()}).strict(),o.object({text:o.string()}).strict()]),Xe=o.object({skipped:o.boolean().describe(`True if the person skipped all questions`),answers:o.record(o.string(),Ye).describe(`Map of question ID to the answer given, with each chosen option's value and label`)});function readAskQuestionsResult(e){let t=Xe.safeParse(e);return t.success?t.data:null}function humanRequestKind(e){return e.approvalId==null?We.has(e.name)?`question`:Ge.has(e.name)?`review`:null:`approval`}function isAwaitingHuman(e){return humanRequestKind(e)===null||e.state===`streaming`||!isOpenToolPartState(e.state)||e.result!==void 0||e.error!==void 0?!1:e.approvalId==null||e.state===`approval-requested`&&e.approved===void 0}function isBlocking(e){let t=humanRequestKind(e);return t===`review`?isOpenToolPartState(e.state):t===`approval`&&e.state===`approval-requested`&&e.approved===void 0}function humanRequestId(e){return e.approvalId??e.toolCallId}function openRequests(e,t){let n=t.blocking?isBlocking:isAwaitingHuman,r=[];for(let t of e)for(let e of t.parts??[])isToolRequestPart(e)&&n(e)&&r.push({part:e,id:humanRequestId(e),requestedAt:t.createdAt});return r}function isToolRequestPart(e){return e.type===`tool`}function isParkedOnHuman(e){return e?.phase===`parked`&&e.parkedOn===`human`}const Ze=50;function recentActivityEntryKey(e){return e.kind===`record`?JSON.stringify([`record`,e.objectName,e.recordId]):JSON.stringify([`conversation`,`sessionId`in e?e.sessionId:e.session.id])}const Qe=200,$e=5242880,et=`Notetaker`,tt=/^\d{1,9}(\.\d{1,6})?$/,nt={meetingRecordingPolicy:`none`,meetingBotDisplayName:et,memoryPersonMonthlyLimitUsd:null,memoryTenantMonthlyLimitUsd:null,findImages:!0},rt=[`active`,`suspended`],it=[`architect`,`manual`,`auto`],at=[`panel`,`fullscreen`],ot=50,st=200,ct=50,lt=o.discriminatedUnion(`type`,[o.strictObject({type:o.literal(`record`),object:o.string().min(1),id:o.guid()}),o.strictObject({type:o.literal(`user`),id:o.guid()})]),ut=o.strictObject({nodes:o.array(lt).min(1).max(50),limitPerNode:o.number().int().min(1).max(200).default(50)});function recordGraphNodeKey(e){return e.type===`record`?`record:${e.object}:${e.id}`:`user:${e.id}`}const dt=100,ft=64e3,pt=`work`,C=`/vercel/sandbox/${pt}`,w=`/workspace`;function environmentWorkdir(e){return e?C:w}const T=[{id:`claude-code`,label:`Claude Code`,provider:`anthropic`,apiKeyEnv:`ANTHROPIC_API_KEY`,models:[{id:`sonnet`,label:`Claude Sonnet`},{id:`opus`,label:`Claude Opus`},{id:`haiku`,label:`Claude Haiku`}],defaultModel:`sonnet`},{id:`codex`,label:`Codex`,provider:`openai`,apiKeyEnv:`OPENAI_API_KEY`,models:[{id:`gpt-6.1-sol`,label:`GPT-6.1 Sol`},{id:`gpt-6-luna`,label:`GPT-6 Luna`},{id:`gpt-6-astra`,label:`GPT-6 Astra`}],defaultModel:`gpt-6.1-sol`},{id:`cursor`,label:`Cursor`,provider:`cursor`,apiKeyEnv:`CURSOR_API_KEY`,models:[{id:`auto`,label:`Auto`,cliDefault:!0},{id:`composer-2.5`,label:`Composer 2.5`}],defaultModel:`auto`}],E=new Map(T.map(e=>[e.id,e]));function isEnvironmentHarnessId(e){return E.has(e)}function findEnvironmentHarness(e){return E.get(e)}function environmentHarness(n){let r=E.get(n);if(!r)throw new e(`Unknown harness "${n}"`,t.INVARIANT_VIOLATION);return r}function cliDefaultModelOf(e){return environmentHarness(e).models.find(e=>e.cliDefault)?.id}function compiledHarnessModels(e){let t=environmentHarness(e);return t.models.map(e=>({id:e.id,label:e.label,...e.id===t.defaultModel?{isDefault:!0}:{}}))}function harnessModelChoices(e,t){let{provider:n}=environmentHarness(e);return t.map(e=>({id:e.id,provider:n,label:e.label,...e.isDefault?{isDefault:!0}:{}}))}const D=[`search`,`query`,`read`,`write`,`delete`,`organize`,`copy`,`send`],O=[...D,`edit_content`],k=[...O,`ask_questions`,`compact_context`,`request_work_mode`,`write_todos`],A=[`browser_autopilot`,`browser_batch`,`browser_computer`,`browser_find`,`browser_form_input`,`browser_get_text`,`browser_javascript`,`browser_navigate`,`browser_read_page`,`browser_sign_in`,`browser_tabs`],mt=[`record`,`document`,`file`,`skill`,`schema`,`guide`],j={memory:{kinds:[`memory`],capabilities:[],tools:[`propose_memory`]},bulk:{kinds:[],capabilities:[`bulk`],tools:[]},activity:{kinds:[],capabilities:[`activity`],tools:[]},"email.read":{kinds:[`email`,`thread`],capabilities:[`copy_email`],tools:[]},"email.send":{kinds:[`email`,`thread`,`draft`],capabilities:[`copy_email`],tools:[]},"calendar.read":{kinds:[`event`],capabilities:[`transcript`],tools:[]}},M={sandbox:{icon:`terminal`,tools:[`exec_command`,`publish_artifact`,`sandbox_validate_payload`]},web:{icon:`globe`,tools:[`read_webpage`,`web_search`]},image:{icon:`image`,tools:[`generate_image`]},memory:{icon:`book-open`,tools:j.memory.tools},bulk:{icon:`layers-two`,tools:j.bulk.tools},activity:{icon:`activity`,tools:j.activity.tools},orchestration:{icon:`git-branch`,tools:[`message_agent`,`spawn_agent`]},host:{icon:`wrench`,tools:[]},"cloud-browser":{icon:`globe`,tools:[`browser_launch`]},notifications:{icon:`bell`,tools:[`notify`]}},N={mcp:{icon:`puzzle`,tools:[]},"email.read":{icon:`envelope`,tools:j[`email.read`].tools},"email.send":{icon:`send`,tools:j[`email.send`].tools},"calendar.read":{icon:`calendar`,tools:j[`calendar.read`].tools},github:{icon:`brand-github`,tools:[]},"slack.read":{icon:`brand-slack`,tools:[`slack_read`,`slack_find`,`slack_download_file`]},"slack.write":{icon:`brand-slack`,tools:[`slack_send`,`slack_react`,`slack_set_status`]},device:{icon:`desktop`,tools:[`exec_command`]},browser:{icon:`link`,tools:A},"browser-profile":{icon:`globe`,tools:[`browser_launch`,...A]},login:{icon:`key`,tools:[]}},ht={sandbox:{kinds:[],capabilities:[],tools:M.sandbox.tools},web:{kinds:[],capabilities:[],tools:M.web.tools},image:{kinds:[],capabilities:[],tools:M.image.tools},memory:j.memory,bulk:j.bulk,activity:j.activity,orchestration:{kinds:[],capabilities:[],tools:M.orchestration.tools},host:{kinds:[],capabilities:[],tools:M.host.tools},"cloud-browser":{kinds:[],capabilities:[],tools:M[`cloud-browser`].tools},notifications:{kinds:[],capabilities:[],tools:M.notifications.tools},mcp:{kinds:[],capabilities:[],tools:N.mcp.tools},"email.read":j[`email.read`],"email.send":j[`email.send`],"calendar.read":j[`calendar.read`],github:{kinds:[],capabilities:[],tools:N.github.tools},"slack.read":{kinds:[],capabilities:[],tools:N[`slack.read`].tools},"slack.write":{kinds:[],capabilities:[],tools:N[`slack.write`].tools},device:{kinds:[],capabilities:[],tools:N.device.tools},browser:{kinds:[],capabilities:[],tools:N.browser.tools},"browser-profile":{kinds:[],capabilities:[],tools:N[`browser-profile`].tools},login:{kinds:[],capabilities:[],tools:N.login.tools}},gt={schema:[`discard_architect_draft`,`draft_schema`,`get_architect_draft`,`get_schema_history`,`request_design_review`,`search_icons`],"agent-config":[`get_agents`,`upsert_agent`],setup:[`request_setup`],internal:[`load_toolset`]},_t=[...new Set([...k,...g.flatMap(e=>M[e].tools),..._.flatMap(e=>N[e].tools)])],vt={"email.read":[`gmail`,`outlook`],"email.send":[`gmail`,`outlook`],"calendar.read":[`google-calendar`,`outlook-calendar`]};function connectionGrantKindsOf(e){switch(e){case`github`:return[`github`];case`slack`:return[`slack.read`,`slack.write`];case`google-calendar`:case`outlook-calendar`:return[`calendar.read`];case`gmail`:case`outlook`:return[`email.read`,`email.send`]}}const yt=[`activity`,`bulk`,`image`,`memory`,`orchestration`,`sandbox`,`web`],P=[`memory`],bt=new Set([`sandbox`,`host`,`cloud-browser`]);function needsManageWhenUnattended(e){return bt.has(e)||isResourceGrant(e)}function isNativeToolGroup(e){return g.includes(e)}function parseToolGroupGrant(e){if(isNativeToolGroup(e))return{type:`native`,group:e};let t=e.indexOf(`:`);if(t<=0)return null;let n=e.slice(0,t),r=e.slice(t+1);return r.length===0||!_.includes(n)?null:{type:`resource`,kind:n,id:r}}function grantKindOf(e){let t=parseToolGroupGrant(e);return t?.type===`resource`?t.kind:null}function isResourceGrant(e){return parseToolGroupGrant(e)?.type===`resource`}function resourceGrant(e,t){return`${e}:${t}`}function canonicalToolGroups(e){return[...new Set(e)].sort()}const F=[{key:`direct`,icon:`message`,color:`ink`,description:`A message a person wrote to this mailbox: a conversation, a question, a request, a reply.`},{key:`transactional`,icon:`credit-card`,color:`terra`,description:`An automated message about an account or an operation: receipt, invoice, payment, order, shipping, booking, password reset, security alert.`},{key:`notifications`,icon:`bell`,color:`ochre`,description:`An automated alert from a tool or a service: activity on GitHub, Slack, a calendar, a CRM, a monitoring system.`},{key:`newsletters`,icon:`book-open`,color:`stone`,description:`Editorial content the mailbox subscribed to: newsletters, digests, articles, community updates.`},{key:`marketing`,icon:`percentage`,color:`iris`,description:`Promotion or prospecting: offers, discounts, product announcements, cold sales outreach.`}],I={direct:{en:`Direct`,fr:`Direct`},transactional:{en:`Transactional`,fr:`Transactionnel`},notifications:{en:`Notifications`,fr:`Notifications`},newsletters:{en:`Newsletters`,fr:`Newsletters`},marketing:{en:`Marketing`,fr:`Marketing`}},xt=8,St=24,Ct=10,wt=500,Tt=`tag`,L=`stone`,R=new Set(`gmail.com,googlemail.com,outlook.com,hotmail.com,hotmail.fr,outlook.fr,live.com,live.fr,msn.com,yahoo.com,yahoo.fr,icloud.com,me.com,mac.com,proton.me,protonmail.com,gmx.com,gmx.fr,orange.fr,wanadoo.fr,free.fr,laposte.net,sfr.fr,bbox.fr,numericable.fr,aol.com`.split(`,`)),Et=new Set(F.map(e=>e.key)),Dt=new Set(Object.entries(I).flatMap(([e,t])=>[e,t.en,t.fr].map(e=>e.toLowerCase())));function isSystemEmailCategory(e){return Et.has(e)}function isSystemEmailCategoryName(e){return Dt.has(e.trim().toLowerCase())}function isPublicMailDomain(e){return R.has(e.toLowerCase())}const z={maxConcurrentRuns:3,retryPolicy:{maxRetries:3,backoffMs:1e3,backoffMultiplier:2}};var AgentBuilder=class{constructor(e){if(!e.name||e.name.trim().length===0)throw new r(`Agent name is required`,[]);this.bp={name:e.name,system:!0,visibility:`workspace`,triggers:[]}}description(e){return this.bp.description=e,this}label(e){return this.bp.label=e,this}avatar(e){return this.bp.avatar={type:e.type,color:e.color,expression:e.expression??`relaxed`},this}starters(e){return e.length===0?delete this.bp.starters:this.bp.starters=[...e],this}systemPrompt(e){return this.bp.systemPrompt=e,this}model(e,t,n){return this.bp.model={provider:e,model:t,...n},this}toolGroups(e){let r=e.find(e=>!isNativeToolGroup(e));if(r!==void 0)throw new n(t.AGENT_TOOL_GROUP_UNKNOWN,r,`Agent "${this.bp.name}": "${r}" is not a native tool group (blueprints cannot grant tenant resources)`);return this.bp.toolGroups=canonicalToolGroups(e),this}schedule(e){return this.bp.schedule={...e,enabled:e.enabled??!0},this}config(e){let t=this.bp.config??z,n=e.inference===void 0?t.inference:{...t.inference,...e.inference};return this.bp.config={...t,...e,...n===void 0?{}:{inference:n}},this}delegation(e){return Object.assign(this.bp,e),this}approval(e){return this.bp.approval={...s,...this.bp.approval,...e},this}visibility(e){return this.bp.visibility=e,this}trigger(e,t,n){return this.bp.triggers.push({name:e,eventType:t,...n,enabled:n?.enabled??!0}),this}runtime(){return this.bp.system=!1,this}build(){if(!this.bp.systemPrompt)throw new r(`Agent "${this.bp.name}": systemPrompt is required`,[]);if(!this.bp.model)throw new r(`Agent "${this.bp.name}": model is required`,[]);if(this.bp.system&&this.bp.visibility===`private`)throw new r(`Agent "${this.bp.name}": system agents must use workspace visibility`,[]);return i(this.bp.triggers,e=>e.name,e=>new r(`Agent "${this.bp.name}": duplicate trigger name "${e}"`,[])),{...this.bp,visibility:this.bp.visibility??`workspace`,toolGroups:this.bp.toolGroups??[...P],config:this.bp.config??z,systemPrompt:this.bp.systemPrompt,model:this.bp.model}}};function agent(e){return new AgentBuilder(e)}const B={issue:{events:[`issues`],actions:[`opened`,`edited`,`closed`,`reopened`,`labeled`,`unlabeled`,`assigned`,`unassigned`,`milestoned`,`demilestoned`,`transferred`,`pinned`],conditions:[`label`,`issueLabels`,`assignees`,`milestone`,`issueType`,`text`]},pull_request:{events:[`pull_request`],actions:[`opened`,`ready_for_review`,`synchronize`,`review_requested`,`merged`,`closed`,`reopened`,`converted_to_draft`,`labeled`,`assigned`,`edited`],conditions:[`baseBranch`,`headBranch`,`draft`,`issueLabels`,`changedPaths`,`prAuthor`]},review:{events:[`pull_request_review`],actions:[`submitted`,`edited`,`dismissed`],conditions:[`reviewState`,`prAuthor`]},comment:{events:[`issue_comment`,`pull_request_review_comment`,`commit_comment`],actions:[`created`,`edited`,`deleted`],conditions:[`text`,`issueAuthor`,`prAuthor`]},push:{events:[`push`],actions:[`pushed`],conditions:[`branch`,`changedPaths`,`forced`]},ref:{events:[`create`,`delete`],actions:[`created`,`deleted`],conditions:[`refType`,`branch`,`tag`]},workflow:{events:[`workflow_run`],actions:[`requested`,`in_progress`,`completed`],conditions:[`workflowName`,`conclusion`,`branch`,`originEvent`]},check:{events:[`check_suite`,`check_run`],actions:[`completed`,`rerequested`],conditions:[`checkApp`,`checkName`,`conclusion`]},project_item:{events:[`projects_v2_item`],actions:[`created`,`edited`,`archived`,`restored`,`deleted`],conditions:[`project`,`projectField`,`from`,`to`,`itemType`]},release:{events:[`release`],actions:[`published`,`created`,`edited`,`prereleased`,`deleted`],conditions:[`prerelease`,`tag`]},discussion:{events:[`discussion`,`discussion_comment`],actions:[`created`,`commented`,`answered`,`labeled`,`closed`],conditions:[`category`,`issueLabels`,`text`]},repository:{events:[`star`,`fork`,`repository`],actions:[`starred`,`forked`,`created`,`archived`],conditions:[]}},Ot={mention:{events:[`app_mention`],conditions:[`text`]},message:{events:[`message`],conditions:[`position`,`text`,`hasFile`]},dm:{events:[`message`],conditions:[`text`,`hasFile`]},reaction:{events:[`reaction_added`],conditions:[`messageAuthor`]},member_joined:{events:[`member_joined_channel`],conditions:[]}},kt=o.object({field:o.literal(`text`),operator:o.enum([`contains`,`starts_with`]),value:o.string().min(1)}).strict();function stringCondition(e){return o.object({field:o.literal(e),value:o.string().min(1)}).strict()}function booleanCondition(e){return o.object({field:o.literal(e),value:o.boolean()}).strict()}function listCondition(e){return o.object({field:o.literal(e),operator:o.enum([`any`,`all`]).default(`any`),value:o.array(o.string().min(1)).min(1)}).strict()}const At=o.discriminatedUnion(`field`,[kt,stringCondition(`label`),listCondition(`issueLabels`),listCondition(`assignees`),stringCondition(`milestone`),stringCondition(`issueType`),stringCondition(`baseBranch`),stringCondition(`headBranch`),stringCondition(`branch`),booleanCondition(`draft`),stringCondition(`changedPaths`),booleanCondition(`forced`),stringCondition(`prAuthor`),stringCondition(`issueAuthor`),o.object({field:o.literal(`reviewState`),value:o.enum([`approved`,`changes_requested`,`commented`])}).strict(),stringCondition(`workflowName`),stringCondition(`checkApp`),stringCondition(`checkName`),stringCondition(`conclusion`),stringCondition(`originEvent`),stringCondition(`project`),stringCondition(`projectField`),o.object({field:o.literal(`from`),value:o.string().nullable()}).strict(),o.object({field:o.literal(`to`),value:o.string().nullable()}).strict(),o.object({field:o.literal(`itemType`),value:o.enum([`issue`,`pull_request`,`draft`])}).strict(),booleanCondition(`prerelease`),stringCondition(`tag`),o.object({field:o.literal(`refType`),value:o.enum([`branch`,`tag`])}).strict(),stringCondition(`category`)]),jt=o.discriminatedUnion(`field`,[kt,o.object({field:o.literal(`position`),value:o.enum([`top_level`,`reply`])}).strict(),booleanCondition(`hasFile`),stringCondition(`messageAuthor`)]),Mt=o.string().regex(/^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/),Nt=o.enum([`human`,`me`,`any`]),Pt=o.object({family:o.enum(Object.keys(B)),actions:o.array(o.string()).default([]),repositories:o.array(Mt).default([]),sender:o.union([Nt,o.object({logins:o.array(o.string().min(1)).min(1)}).strict()]).default(`human`),conditions:o.array(At).default([])}).strict().superRefine((e,t)=>{let n=B[e.family];e.actions.forEach((r,i)=>{n.actions.includes(r)||t.addIssue({code:`custom`,path:[`actions`,i],message:`Action ${r} is not supported by ${e.family}`})}),e.conditions.forEach((r,i)=>{n.conditions.includes(r.field)||t.addIssue({code:`custom`,path:[`conditions`,i,`field`],message:`Condition ${r.field} is not supported by ${e.family}`})})}).transform(e=>e),Ft=o.object({on:o.enum([`mention`,`message`,`dm`,`reaction`,`member_joined`]),channels:o.array(o.string().min(1)).default([]),reactions:o.array(o.string().min(1)).optional(),sender:o.union([Nt,o.object({users:o.array(o.string().min(1)).min(1)}).strict()]).default(`human`),conditions:o.array(jt).default([])}).strict().superRefine((e,t)=>{e.conditions.forEach((n,r)=>{Ot[e.on].conditions.includes(n.field)||t.addIssue({code:`custom`,path:[`conditions`,r,`field`],message:`Condition ${n.field} is not supported by ${e.on}`})}),e.reactions!==void 0&&e.on!==`reaction`&&t.addIssue({code:`custom`,path:[`reactions`],message:`reactions requires on=reaction`})}).transform(e=>e),It=o.union([Pt,Ft]),Lt=[`read`,`write`,`full`],Rt=[`accepted`,`declined`,`tentative`],zt=[`force`,`skip`],Bt=[`none`,`all`,`external_only`],Vt={override:null,status:`none`,failureReason:null,botId:null},Ht=o.object({speaker:o.string().nullable(),startsAtMs:o.number(),endsAtMs:o.number(),text:o.string()}),Ut=o.object({fullText:o.string(),segments:o.array(Ht),language:o.string().nullable(),startedAt:o.string().nullable(),endedAt:o.string().nullable()}),Wt={width:1280,height:720,maxBytes:13e5,mimeType:`image/jpeg`},Gt=Math.ceil(Wt.maxBytes/3)*4,Kt=o.object({conferenceJoinUrl:o.string().min(1),botDisplayName:o.string().min(1),startsAt:o.string().nullable(),callbackUrl:o.url(),botImageJpeg:o.string().max(Gt).optional()}),qt=o.object({botId:o.string().min(1)}),Jt=o.discriminatedUnion(`kind`,[o.object({kind:o.literal(`transcript-ready`),botId:o.string().min(1)}),o.object({kind:o.literal(`failure`),botId:o.string().min(1),reason:o.string()})]),Yt=100;let Xt=function(e){return e.Desktop=`desktop`,e}({});function isMailProvider(e){return e===`gmail`||e===`outlook`}const Zt=`DRAFT`;function isProviderDraft(e){return e.includes(Zt)}const Qt=[`read`,`unread`,`archive`,`trash`,`restore`],$t=[`threads`,`messages`];function isMailboxListMode(e){return $t.includes(e)}const en=[`reply`,`reply_all`];function isReplyMode(e){return en.includes(e)}const tn=2e5,nn=2e4,rn=998,an=100,V=o.number().finite().nonnegative(),H=o.enum(ae),U=o.enum(oe),W=o.enum(se),G=o.enum(ue),K=o.object({provider:H,model:o.string().min(1)}).strict(),on=o.object({speed:U.optional(),reasoning:W.optional(),routing:G.optional()}).strict(),q=o.string().regex(/^[a-z0-9][a-z0-9-]*\/[a-z0-9][a-z0-9._-]*$/),sn=o.object({model:K.optional(),speed:U.optional(),reasoning:W.optional(),imageModel:q.optional(),routing:G.optional()}).strict(),cn=sn.refine(e=>c.some(t=>e[t]!==void 0),{message:`At least one inference override is required`});function isSessionInferencePatch(e){return Object.keys(e).length>0&&Object.values(e).every(e=>e!==void 0)}const ln=o.object({model:K.nullable().optional(),speed:U.nullable().optional(),reasoning:W.nullable().optional(),imageModel:q.nullable().optional(),routing:G.nullable().optional()}).strict().refine(isSessionInferencePatch,{message:`At least one inference override is required`}),un=o.object({model:o.string().min(1),routing:o.object({mode:o.literal(`auto`),tasks:o.array(o.enum(ce)).optional(),demand:o.enum(le).optional(),reason:o.enum([`selected`,`retained`,`fallback`]).optional(),relation:o.enum([`continue`,`modify`,`new`,`aside`,`unknown`]).optional(),anchorMessageId:o.string().min(1).optional()})}),J=o.object({label:o.string(),denied:o.boolean().optional(),deletion:o.object({target:o.string().optional(),count:V.optional(),restorableDays:V.optional()}).strict().optional(),record:o.object({objectName:o.string(),id:o.string(),label:o.string(),objectIcon:o.string().optional()}).strict().optional(),object:o.object({name:o.string(),label:o.string()}).strict().optional(),email:o.object({from:o.string(),to:o.array(o.string()),cc:o.array(o.string()),bcc:o.array(o.string()),subject:o.string().nullable(),text:o.string(),truncatedChars:V,outsideThread:o.array(o.string()),attachments:o.array(o.object({name:o.string(),size:V}).strict()),updatedAt:o.string(),forwarded:o.object({from:o.string(),subject:o.string().nullable(),quote:o.string(),quoteTruncatedChars:V}).strict().optional()}).strict().optional(),counts:o.record(o.string(),V).optional(),warnings:o.array(o.string()).optional()}).strict(),dn=o.union([o.object({type:o.literal(`text`),text:o.string()}).strict(),o.object({type:o.literal(`reasoning`),text:o.string()}).strict(),o.object({type:o.literal(`system`),code:o.enum(p)}).strict(),o.object({type:o.literal(`error`),error:o.string(),errorClass:o.string().optional()}).strict(),o.object({type:o.literal(`tool`),toolCallId:o.string(),name:o.string(),args:o.record(o.string(),o.unknown()),result:o.unknown().optional(),error:o.string().optional(),errorCode:o.enum([`output_limit_reached`,`interrupted`,t.INVALID_TOOL_INPUT,`external_outcome_unknown`,`external_not_dispatched`]).optional(),state:o.enum([`streaming`,`running`,`completed`,`error`,`pending`,`approval-requested`,`approval-responded`,`approval-dispatched`]),durationMs:V.optional(),approvalId:o.string().optional(),approvalImpact:J.optional(),approved:o.boolean().optional(),approvalReason:o.string().optional(),approvalDecidedBy:o.string().optional(),approvalDecidedAt:o.string().optional(),approvalRelaxableByAuto:o.boolean().optional()}).strict(),o.object({type:o.literal(`file`),fileId:o.string(),name:o.string(),mimeType:o.string()}).strict(),o.object({type:o.literal(`compaction`),state:o.literal(`in-progress`),reason:o.enum([`preflight_threshold`,`overflow_recovery`]),estimatedTokens:V.optional(),reportedTokens:V.optional()}).strict(),o.object({type:o.literal(`compaction`),state:o.literal(`completed`),tokensBefore:V,tokensAfter:V,tokensSaved:V,strategy:o.enum([`no-op`,`summary`,`truncation`]),durationMs:V,summary:o.string().optional()}).strict(),o.object({type:o.literal(`compaction`),state:o.literal(`failed`),reason:o.string(),durationMs:V.optional()}).strict()]),fn=o.object({id:o.string(),name:o.string(),mimeType:o.string(),size:V}).strict(),pn=o.object({id:o.string(),artifactId:o.string(),revision:o.number().int().min(1),selectedText:o.string()}).strict(),mn=o.object({id:o.string(),type:o.string().transform(e=>e),entityId:o.string(),label:o.string(),objectName:o.string().optional(),startIndex:V,endIndex:V}).strict(),hn=o.object({provider:H,model:o.string(),maxTokens:V.optional(),contextWindow:V.optional()}).strict(),gn=o.union([o.date(),o.string().datetime({offset:!0}).transform(e=>new Date(e))]),_n=o.object({id:o.string(),sessionId:o.string(),tenantId:o.string().optional(),runId:o.string().optional(),role:o.enum([`user`,`assistant`,`system`,`tool`]),parts:o.array(dn),attachments:o.array(fn).optional(),mentions:o.array(mn).optional(),quotes:o.array(pn).optional(),model:hn.optional(),tokenUsage:o.object({input:V,output:V}).strict().optional(),metadata:o.record(o.string(),o.unknown()).optional(),createdAt:gn}).strict(),vn=o.object({id:o.string(),description:o.string(),status:o.enum([`pending`,`in_progress`,`completed`,`blocked`]),result:o.string().optional(),updatedAt:V.optional(),target:o.object({phase:o.enum(Se)}).strict().optional()}).strict(),yn=o.object({id:o.string(),sessionId:o.string(),status:o.enum([`active`,`completed`,`abandoned`]),todos:o.array(vn),version:V,createdAt:o.string(),updatedAt:o.string(),completedAt:o.string().optional()}).strict(),Y={"compaction-start":o.object({reason:o.enum([`preflight_threshold`,`overflow_recovery`]),estimatedTokens:V.optional(),reportedTokens:V.optional()}).strict(),"compaction-end":o.object({tokensBefore:V,tokensAfter:V,tokensSaved:V,strategy:o.enum([`no-op`,`summary`,`truncation`]),durationMs:V,summary:o.string().optional()}).strict(),"compaction-failed":o.object({reason:o.string()}).strict(),usage:o.object({messageId:o.string().min(1).optional(),inputTokens:V,outputTokens:V,totalTokens:V,cacheReadTokens:V.optional(),cacheCreationTokens:V.optional(),contextWindow:V,residentTokens:V,utilization:o.number().finite().min(0).max(1),costUsd:V.optional()}).strict(),"message-updated":o.object({message:_n}).strict(),"approval-context":o.object({approvalId:o.string(),toolCallId:o.string(),impact:J.optional(),relaxableByAuto:o.boolean().optional()}).strict()};function isAgentUIDataName(e){return e in Y}function agentUIValidationError(e){return new r(`Invalid agent UI message chunk`,e.map(e=>({path:e.path.map(String),message:e.message,code:e.code})))}function assertCustomAgentUIMessageChunk(e){if(typeof e!=`object`||!e||typeof e.type!=`string`)throw new r(`Invalid agent UI message chunk`,[{path:[`type`],message:`Expected UI message chunk type`,code:`invalid_type`}]);let t=e.type;if(!t.startsWith(`data-`))throw new r(`Invalid agent UI message chunk`,[{path:[`type`],message:`Expected agent data chunk type`,code:`invalid_value`}]);let n=t.slice(5);if(!isAgentUIDataName(n))throw new r(`Invalid agent UI message chunk`,[{path:[`type`],message:`Unknown agent UI data type: ${n}`,code:`invalid_value`}]);let i=o.object({type:o.literal(`data-${n}`),id:o.string().optional(),data:Y[n],transient:o.boolean().optional()}).strict().safeParse(e);if(!i.success)throw agentUIValidationError(i.error.issues);return i.data}function agentDataChunk(e,t,n){return assertCustomAgentUIMessageChunk({type:`data-${e}`,...n?.id===void 0?{}:{id:n.id},data:t,...n?.transient===void 0?{}:{transient:n.transient}})}const bn=o.string().trim().min(1).max(24),xn=o.string().trim().min(10).max(500),Sn=o.enum([`address`,`domain`]),Cn=o.object({scope:o.enum([`personal`,`workspace`]),name:bn,description:xn,icon:ee.default(`tag`),color:a.default(L)}),wn=o.object({name:bn.optional(),description:xn.optional(),icon:ee.optional(),color:a.optional()}).refine(e=>Object.values(e).some(e=>e!==void 0),{message:`Nothing to update`}),Tn=o.object({moveTo:o.string().min(1).nullable().default(null)}),En=o.object({category:o.string().min(1).optional(),important:o.boolean().optional()}).refine(e=>e.category!==void 0||e.important!==void 0,{message:`Nothing to classify`}),Dn=o.object({verdict:o.object({category:o.string().min(1).nullable(),important:o.boolean(),classifiedBy:o.enum([`model`,`rule`,`manual`]).nullable()}),ruleId:o.string().uuid().nullable(),previousRule:o.object({scope:Sn,match:o.string().trim().toLowerCase().min(1),category:o.string().min(1)}).nullable()}).refine(e=>e.ruleId!==null||e.previousRule===null,{message:`A previous rule needs the rule it restores`}),On=o.object({scope:o.literal(`domain`)}),kn=o.object({scope:o.enum([`personal`,`workspace`])}),An=o.object({type:o.enum(l),color:o.enum(te),expression:o.enum(u).default(`relaxed`)}).strict(),jn=o.array(o.string().trim().min(1).max(200)).max(4);function agentAvatarFromMetadata(e){let t=An.safeParse(e);return t.success?t.data:void 0}const Mn=[`record.created`,`record.updated`,`record.deleted`,`form.submitted`,`webhook`,`github`,`slack`],Nn=new Set([`record.created`,`record.updated`,`record.deleted`]),Pn=/^[A-Z_][A-Z0-9_]*$/,Fn=o.object({cron:o.string().min(9),timezone:o.string().optional(),enabled:o.boolean(),input:o.record(o.string(),o.unknown()).optional(),runFor:o.enum([`armer`,`audience`]).optional(),continueConversation:o.boolean().optional()}),In=/^[A-Za-z0-9_$-]+(\.[A-Za-z0-9_$-]+)*$/,X=o.object({name:o.string().max(120).optional(),eventType:o.enum(Mn),objectId:o.guid().optional(),watchedFields:o.array(o.string()).max(50).optional(),debounceMs:o.number().int().min(0).max(3e5).optional(),filter:o.object({combinator:o.enum([`and`,`or`]).default(`and`),rules:o.array(o.object({attribute:o.string(),operator:o.string(),value:o.unknown().optional()}))}).optional(),formDefinitionId:o.string().optional(),continuationKey:o.string().max(200).regex(In).nullable().optional(),connectionId:o.guid().optional(),match:It.optional(),continueConversation:o.boolean().optional(),enabled:o.boolean().optional()});function refineTrigger(e){return e.refine(e=>!e.watchedFields?.length||e.eventType===`record.updated`,{message:`watchedFields requires eventType=record.updated`,path:[`watchedFields`]}).refine(e=>!(e.eventType&&Nn.has(e.eventType))||!!e.objectId,{message:`objectId is required for record.* triggers`,path:[`objectId`]}).refine(e=>!(e.continuationKey&&e.eventType)||e.eventType===`webhook`,{message:`continuationKey requires eventType=webhook`,path:[`continuationKey`]}).superRefine((e,t)=>{let n=e.eventType===`github`||e.eventType===`slack`;if(n&&!e.connectionId&&t.addIssue({code:`custom`,path:[`connectionId`],message:`connectionId is required for native connector triggers`}),n&&!e.match&&t.addIssue({code:`custom`,path:[`match`],message:`match is required for native connector triggers`}),e.match&&e.eventType&&((e.eventType===`github`?`family`in e.match:e.eventType===`slack`&&`on`in e.match)||t.addIssue({code:`custom`,path:[`match`],message:`match must belong to the trigger provider`})),e.eventType&&!n)for(let n of[`connectionId`,`continueConversation`])e[n]!==void 0&&t.addIssue({code:`custom`,path:[n],message:`${n} requires a native connector trigger`})})}const Ln=refineTrigger(X).transform(e=>({...e,...e.eventType===`github`||e.eventType===`slack`?{continueConversation:e.continueConversation??!0}:{}})),Rn=X.partial();function parseMergedAgentTrigger(e,t){let n=Rn.safeParse(t);if(!n.success)throw triggerValidationError(n.error);let r=Object.fromEntries(Object.entries(n.data).filter(([,e])=>e!==void 0)),i=Ln.safeParse({...e,...r});if(!i.success)throw triggerValidationError(i.error);return i.data}function triggerValidationError(e){return new r(`Invalid agent trigger`,e.issues.map(e=>({path:e.path.map(String),message:e.message})))}const zn=100,Z=o.uuid(),Q=o.record(o.string(),o.unknown()),Bn=o.strictObject({objectName:o.string(),recordId:Z,attribute:o.string(),base:o.unknown(),props:Q.optional()}),Vn=o.strictObject({kind:o.literal(`record.set`),objectId:Z,recordId:Z,values:Q,base:Q.optional()}),Hn=o.strictObject({kind:o.literal(`record.create`),objectId:Z,recordId:Z,values:Q,options:o.strictObject({visibility:o.enum([`workspace`,`private`]).optional(),allowDraft:o.boolean().optional(),linkTo:Bn.optional()}).optional()}),Un=o.strictObject({kind:o.literal(`record.delete`),objectId:Z,recordId:Z}),Wn=o.strictObject({kind:o.literal(`record.restore`),objectId:Z,recordId:Z}),$=o.string().min(1),Gn=o.discriminatedUnion(`command`,[o.strictObject({command:o.literal(`replace`),oldText:$,newText:o.string(),replaceAll:o.boolean().optional()}),o.strictObject({command:o.literal(`insert`),text:$,after:$.optional()})]),Kn=o.strictObject({kind:o.literal(`record.patch`),objectId:Z,recordId:Z,attribute:o.string(),edit:Gn}),qn=o.discriminatedUnion(`kind`,[Vn,Hn,Un,Wn,Kn]),Jn=o.strictObject({opId:Z,steps:o.array(qn).min(1).max(100)}).superRefine((e,t)=>{let n=new Set;for(let r of e.steps){if(n.has(r.recordId)){t.addIssue({code:`custom`,message:`one step per record`,path:[`steps`]});return}n.add(r.recordId)}});export{Lt as ACCESS_LEVELS,Me as ACCESS_ROLES,ge as AGENT_ASIDE_ANSWER_MAX_LENGTH,me as AGENT_ASIDE_HISTORY_LIMIT,he as AGENT_ASIDE_QUESTION_MAX_LENGTH,u as AGENT_AVATAR_EXPRESSIONS,l as AGENT_AVATAR_TYPES,h as AGENT_MESSAGE_KIND,m as AGENT_NOTIFICATION_KIND,re as AGENT_SESSION_LIST_ORDERS,De as AGENT_SESSION_ORIGINS,fe as AGENT_STARTERS_MAX,pe as AGENT_STARTER_MAX_LENGTH,ce as AGENT_TASK_KINDS,_t as ALL_CATALOG_TOOL_NAMES,mt as ALWAYS_KINDS,Ge as APPROVAL_FAMILY_TOOL_NAMES,be as ARCHITECT_PUBLICATION_KIND,qe as ASK_QUESTIONS_ANSWER_MAX_LENGTH,Je as ASK_QUESTIONS_ANSWER_MAX_VALUES,Ke as ASK_QUESTIONS_MAX_BATCH,x as ASK_QUESTIONS_TOOL_NAME,Re as AUDIT_ACTIONS,ze as AUDIT_AGENT_SESSION_METADATA_KEY,Le as AUDIT_RESOURCE_TYPES,AgentBuilder,Ee as BROWSER_LAUNCH_TOOL_NAME,Fe as BUNDLE_LOCALES,vt as CONNECTION_GRANT_PROVIDERS,In as CONTINUATION_KEY_PATTERN,at as CONVERSATION_SURFACES,O as CORE_RECORD_TOOL_NAMES,k as CORE_TOOL_NAMES,y as COUNT_MODES,z as DEFAULT_AGENT_EXECUTION_CONFIG,yt as DEFAULT_AGENT_TOOL_GROUPS,s as DEFAULT_APPROVAL_POLICY,P as DEFAULT_BLUEPRINT_TOOL_GROUPS,ve as DEFAULT_DAILY_ACTIVITY_DAYS,et as DEFAULT_MEETING_BOT_DISPLAY_NAME,nt as DEFAULT_TENANT_SETTINGS,Ve as DISCARD_ARCHITECT_DRAFT_TOOL_NAME,Oe as DOCUMENT_SORT_MODES,Be as DRAFT_WRITE_TOOL_NAMES,L as EMAIL_CATEGORY_DEFAULT_COLOR,Tt as EMAIL_CATEGORY_DEFAULT_ICON,wt as EMAIL_CATEGORY_DESCRIPTION_MAX,Ct as EMAIL_CATEGORY_DESCRIPTION_MIN,xt as EMAIL_CATEGORY_LIMIT,St as EMAIL_CATEGORY_NAME_MAX,T as ENVIRONMENT_HARNESSES,pt as ENVIRONMENT_HARNESS_SANDBOX_WORKDIR,C as ENVIRONMENT_HARNESS_WORKDIR,dt as ENVIRONMENT_NAME_MAX_CHARS,w as ENVIRONMENT_STANDARDS_WORKDIR,Pn as ENV_VAR_KEY_PATTERN,Ie as ESTIMATED_COUNT_CAP,Qe as FILE_URLS_MAX_IDS,He as GET_ARCHITECT_DRAFT_TOOL_NAME,B as GITHUB_TRIGGER_CATALOG,ht as GRANT_ENABLES,Ue as HITL_TOOL_NAMES,se as INFERENCE_REASONING_OPTIONS,ue as INFERENCE_ROUTING_MODES,oe as INFERENCE_SPEEDS,_e as LAST_RUN_ERROR_MAX_LENGTH,$t as MAILBOX_LIST_MODES,tn as MAIL_DRAFT_BODY_MAX_CHARS,nn as MAIL_SIGNATURE_MAX_CHARS,rn as MAIL_SUBJECT_MAX_CHARS,ye as MAX_DAILY_ACTIVITY_DAYS,Ce as MAX_TODOS,Te as MAX_TODO_DESCRIPTION_CHARS,we as MAX_TODO_ID_CHARS,Yt as MCP_SERVER_NAME_MAX_LENGTH,Wt as MEETING_BOT_IMAGE,Gt as MEETING_BOT_IMAGE_BASE64_MAX_LENGTH,Rt as MEETING_RESPONSES,tt as MEMORY_SPEND_LIMIT_PATTERN,Xt as McpOAuthCompletionMode,g as NATIVE_TOOL_GROUPS,M as NATIVE_TOOL_GROUP_CATALOG,Vt as NO_RECORDING,f as OPEN_TOOL_PART_STATES,zn as OPERATION_MAX_STEPS,Zt as PROVIDER_DRAFT_LABEL,ae as PROVIDER_NAMES,R as PUBLIC_MAIL_DOMAINS,We as QUESTION_FAMILY_TOOL_NAMES,Ze as RECENT_ACTIVITY_LEDGER_LIMIT,an as RECIPIENT_IDENTITIES_MAX,zt as RECORDING_OVERRIDES,Bt as RECORDING_POLICIES,v as RECORD_ACCESS_ROLES,Ne as RECORD_ACCESS_SOURCES,je as RECORD_DRIVE_CURSOR_MAX_LENGTH,ke as RECORD_DRIVE_PAGE_DEFAULT_LIMIT,Ae as RECORD_DRIVE_PAGE_MAX_LIMIT,ct as RECORD_GRAPH_DEFAULT_LIMIT_PER_NODE,st as RECORD_GRAPH_MAX_LIMIT_PER_NODE,ot as RECORD_GRAPH_MAX_NODES,$e as RECORD_IMAGE_MAX_BYTES,en as REPLY_MODES,b as REQUEST_DESIGN_REVIEW_TOOL_NAME,S as REQUEST_SETUP_TOOL_NAME,_ as RESOURCE_GRANT_KINDS,N as RESOURCE_KIND_CATALOG,de as ROUTING_PRICE_CEILINGS,c as SESSION_INFERENCE_PATCH_KEYS,ft as SETUP_SCRIPT_MAX_CHARS,Ot as SLACK_TRIGGER_CATALOG,gt as SURFACE_TOOL_NAMES,F as SYSTEM_EMAIL_CATEGORIES,I as SYSTEM_EMAIL_CATEGORY_NAMES,p as SYSTEM_PART_CODES,le as TASK_DEMAND_LEVELS,Se as TODO_PHASES,ie as TODO_PLAN_STATUSES,xe as TODO_STATUSES,d as TOOL_APPROVAL_STATES,Qt as TRIAGE_ACTIONS,Mn as TRIGGER_EVENT_TYPES,ne as TURN_OUTCOMES,Pe as UNSHAREABLE_OBJECT_NAMES,rt as USER_STATUSES,it as USER_WORK_POSTURES,D as VERB_NAMES,agent,agentAvatarFromMetadata,An as agentAvatarSchema,agentDataChunk,agentDisplayName,on as agentInferencePreferencesSchema,fn as agentMessageAttachmentSchema,dn as agentMessagePartSchema,Fn as agentScheduleSchema,sn as agentSessionInferenceOverridesInputSchema,cn as agentSessionInferenceOverridesSchema,_n as agentSessionMessageSchema,jn as agentStartersSchema,X as agentTriggerBaseSchema,Rn as agentTriggerPatchSchema,Ln as agentTriggerSchema,agentUIValidationError,pn as artifactQuoteSchema,Xe as askQuestionsOutputSchema,assertCustomAgentUIMessageChunk,assertSessionState,canonicalToolGroups,Dn as classificationRestoreSchema,En as classifyEmailSchema,cliDefaultModelOf,compareAgentSessionMessages,compiledHarnessModels,connectionGrantKindsOf,It as connectorTriggerMatchSchema,Y as customDataChunkSchemas,deriveViewerAccess,gn as durableDateSchema,Cn as emailCategoryCreateSchema,Tn as emailCategoryDeleteSchema,kn as emailCategoryScopeQuerySchema,wn as emailCategoryUpdateSchema,On as emailRuleScopeSchema,environmentHarness,environmentWorkdir,findEnvironmentHarness,At as githubConditionSchema,Pt as githubTriggerMatchSchema,grantKindOf,harnessModelChoices,humanRequestId,humanRequestKind,q as imageModelIdSchema,W as inferenceReasoningSchema,G as inferenceRoutingSchema,U as inferenceSpeedSchema,isAgentMessageMetadata,isAgentNotificationMetadata,isAgentUIDataName,isAgentWrittenAuditEntry,isArchitectPublicationMetadata,isAwaitingHuman,isBlocking,isEnvironmentHarnessId,isMailProvider,isMailboxListMode,isNativeToolGroup,isOpenToolPartState,isParkedOnHuman,isProviderDraft,isPublicMailDomain,isReplyMode,isResourceGrant,isRoutineActorMetadata,isSessionInferencePatch,isSystemEmailCategory,isSystemEmailCategoryName,isSystemPartCode,isToolApprovalState,Kt as meetingBotDispatchRequestSchema,qt as meetingBotDispatchResponseSchema,Jt as meetingBotNotificationSchema,Ht as meetingTranscriptSegmentSchema,mn as mentionReferenceSchema,mergeSessionInferencePatch,hn as modelDefinitionSchema,K as modelReferenceSchema,needsManageWhenUnattended,Ut as normalizedMeetingTranscriptSchema,openRequests,orderAgentSessionMessages,parseAgentDefinitionAccessRole,parseCountMode,parseMergedAgentTrigger,parseOptionalCountMode,parsePageAccessRole,parseRecordAccessRole,parseToolGroupGrant,H as providerNameSchema,readAskQuestionsResult,recentActivityEntryKey,recordGraphNodeKey,ut as recordGraphRequestSchema,Jn as recordOperationSchema,refineTrigger,resourceGrant,un as routedMessageInferenceSchema,ln as sessionInferencePatchSchema,jt as slackConditionSchema,Ft as slackTriggerMatchSchema,vn as todoItemSchema,yn as todoPlanSchema,J as toolImpactSchema};