@chatpanel/events 0.103.1 → 0.105.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/entitlement.js CHANGED
@@ -1 +1 @@
1
- class x extends Error{constructor(t){super(t),this.name="EntitlementError"}}const f=Object.freeze(["free","pro","team"]),i=Object.freeze({free:0,pro:1,team:2}),c="https://api.chatpanel.net",k=Object.freeze({verify:`${c}/license/verify`,entitlement:`${c}/entitlement`,claim:`${c}/entitlement/claim`,release:`${c}/entitlement/release`,restore:`${c}/restore`}),d=Object.freeze({kty:"EC",crv:"P-256",x:"CmgKLC4e3xDMvwhbjVqF7jbDe1JhC1KKQi8JN3qVX_4",y:"r40l6fQiyCcJYqW-SvB4VoSyn4F36yhSt82ZAOSo78E"}),T="https://chatpanel.net/#pricing";function P(e="pro",t="",n=""){const r=new URL("https://chatpanel.net/");return t&&r.searchParams.set("install_id",t),e&&r.searchParams.set("plan",e),n&&r.searchParams.set("client",n),r.hash="pricing",r.toString()}const m=Object.freeze({localAgents:"free",byoModels:"free",urlContext:"free",liveMeetings:"free",multiTab:"pro",unlimitedAgents:"pro",customSkills:"pro",customAgents:"pro",advancedAgent:"pro",unlimitedNotes:"pro",unlimitedMeetings:"pro",structuredInsert:"pro",exportChats:"pro",autoBackup:"pro",promptLibrary:"pro",fileAttachments:"pro",watch:"pro",cloudSync:"team",sharedLibrary:"team",hostedBridge:"team",sso:"team"}),v=Object.freeze({unlimitedNotes:"Unlimited notes — Free keeps your first 10",unlimitedMeetings:"Unlimited meetings — Free keeps your first 10",multiTab:"Attach several tabs at once",unlimitedAgents:"Unlimited custom agents",customSkills:"Create & edit your own skills",advancedAgent:"Per-agent system prompts & working directories",structuredInsert:"Clean diagrams on Excalidraw, draw.io & tldraw — shapes placed as data, not pixel-drawn",exportChats:"Export conversations as Markdown",autoBackup:"Automatic daily backup of all your data to disk",watch:"Watch a page & act on changes — the agent reacts as the page updates"}),C=Object.freeze({cloudSync:"Sync chats across your devices",sharedLibrary:"Shared team agents & skills",hostedBridge:"Hosted agents — no local bridge to run",sso:"SSO & admin controls"}),h=Object.freeze({notes:10,meetings:10,apiEndpoints:1,bridgeAgents:1,customAgents:1,attachmentsPerMessage:1,mcpServers:1,gatewayDestinations:1,webSearchEngines:3,webSearchesPerDay:50,fullRedactions:25});function u(e,t=Date.now()){return!e||!f.includes(e.plan)||e.expiresAt&&t>e.expiresAt?"free":e.plan}function D(e,t=Date.now()){return{free:"Free",pro:"Pro",team:"Team"}[u(e,t)]}function y(e,t=Date.now()){return i[u(e,t)]>=i.pro}function _(e,t=Date.now()){return u(e,t)==="team"}function O(e,t,n=0,r=Date.now()){const o=u(e,r);if(t==="unlimitedAgents"&&i[o]<i.pro)return n<h.customAgents;const a=m[t]||"free";return i[o]>=i[a]}function N(e){return m[e]||"free"}function R(e,t,n,r=Date.now()){if(y(e,r))return!0;const o=h[t];return typeof o!="number"||n<o}function g(e){const t="=".repeat((4-String(e).length%4)%4),n=String(e).replace(/-/g,"+").replace(/_/g,"/")+t;if(typeof Buffer<"u")return new Uint8Array(Buffer.from(n,"base64"));const r=atob(n),o=new Uint8Array(r.length);for(let a=0;a<r.length;a++)o[a]=r.charCodeAt(a);return o}function E(e){try{return JSON.parse(new TextDecoder().decode(g(e)))}catch{return null}}let l=null;async function A(e){const t=e||globalThis.crypto?.subtle;if(!t)throw new x("no WebCrypto available on this runtime");return e?t.importKey("jwk",d,{name:"ECDSA",namedCurve:"P-256"},!1,["verify"]):(l||(l=t.importKey("jwk",d,{name:"ECDSA",namedCurve:"P-256"},!1,["verify"])),l)}const b="ent";async function L(e,t,{subtle:n=null,now:r=Date.now()}={}){if(!e||typeof e!="string"||e.indexOf(".")<0)return null;const[o,a]=e.split(".");if(!o||!a)return null;let p=!1;try{p=await(n||globalThis.crypto?.subtle).verify({name:"ECDSA",hash:"SHA-256"},await A(n),g(a),new TextEncoder().encode(o))}catch{return null}if(!p)return null;const s=E(o);return!s||s.typ!==b||s.exp&&r>Number(s.exp)||!s.install_id||t&&s.install_id!==t||!f.includes(s.plan)?null:s}function U(e,{at:t=Date.now(),expiresAt:n=0}={}){return e?{plan:e.plan,expiresAt:Number(n)||0,tokenExp:Number(e.exp)||0,installId:e.install_id||"",sub:e.sub||null,checkedAt:t,source:"entitlement"}:{plan:"free"}}const w=720*60*1e3;function j(e,{now:t=Date.now(),interval:n=w}={}){if(!e||!e.checkedAt||t-e.checkedAt>n)return!0;const r=1440*60*1e3;return!!(e.expiresAt&&e.expiresAt-t<r||e.tokenExp&&e.tokenExp-t<r)}export{c as API_BASE,k as ENDPOINTS,d as ENTITLEMENT_PUBLIC_JWK,x as EntitlementError,m as FEATURE_TIER,h as FREE_LIMITS,f as PLANS,v as PRO_FEATURES,w as RECHECK_INTERVAL_MS,C as TEAM_FEATURES,b as TOKEN_TYPE,T as UPGRADE_URL,O as can,P as checkoutUrl,y as isPro,_ as isTeam,U as licenseFromPayload,j as needsRecheck,D as planLabel,u as planOf,N as tierFor,L as verifyEntitlement,R as withinFreeLimit};
1
+ class w extends Error{constructor(t){super(t),this.name="EntitlementError"}}const f=Object.freeze(["free","pro","team"]),l=Object.freeze({free:0,pro:1,team:2}),u="https://api.chatpanel.net",P=Object.freeze({verify:`${u}/license/verify`,entitlement:`${u}/entitlement`,claim:`${u}/entitlement/claim`,release:`${u}/entitlement/release`,restore:`${u}/restore`}),y=Object.freeze({kty:"EC",crv:"P-256",x:"CmgKLC4e3xDMvwhbjVqF7jbDe1JhC1KKQi8JN3qVX_4",y:"r40l6fQiyCcJYqW-SvB4VoSyn4F36yhSt82ZAOSo78E"}),k="https://chatpanel.net/#pricing";function v(e="pro",t="",n=""){const r=new URL("https://chatpanel.net/");return t&&r.searchParams.set("install_id",t),e&&r.searchParams.set("plan",e),n&&r.searchParams.set("client",n),r.hash="pricing",r.toString()}const g=Object.freeze({localAgents:"free",byoModels:"free",urlContext:"free",liveMeetings:"free",multiTab:"pro",unlimitedAgents:"pro",customSkills:"pro",customAgents:"pro",advancedAgent:"pro",unlimitedNotes:"pro",unlimitedMeetings:"pro",structuredInsert:"pro",exportChats:"pro",autoBackup:"pro",promptLibrary:"pro",fileAttachments:"pro",watch:"pro",unlimitedPoolAgents:"pro",unlimitedTeams:"pro",unlimitedTeamRuns:"pro",unlimitedProjects:"pro",unlimitedBoardPosts:"pro",fullObservability:"pro",unlimitedRecipes:"pro",unlimitedSkills:"pro",unlimitedWidgets:"pro",unlimitedMcpTools:"pro",cloudSync:"team",sharedLibrary:"team",hostedBridge:"team",sso:"team"}),D=Object.freeze({unlimitedNotes:"Unlimited notes — Free keeps your first 10",unlimitedMeetings:"Unlimited meetings — Free keeps your first 10",multiTab:"Attach several tabs at once",unlimitedAgents:"Unlimited custom agents",customSkills:"Create & edit your own skills",advancedAgent:"Per-agent system prompts & working directories",structuredInsert:"Clean diagrams on Excalidraw, draw.io & tldraw — shapes placed as data, not pixel-drawn",exportChats:"Export conversations as Markdown",autoBackup:"Automatic daily backup of all your data to disk",watch:"Watch a page & act on changes — the agent reacts as the page updates",unlimitedPoolAgents:"Unlimited agents in your roster — Free keeps 2 of your own",unlimitedTeams:"Unlimited agent teams and runs — Free keeps 1 team, 3 runs a day",unlimitedProjects:"Unlimited projects — Free keeps 1",fullObservability:"The whole run history in Observe — Free sees the last 24 hours",unlimitedRecipes:"Unlimited saved recipes — Free keeps 2",unlimitedSkills:"Unlimited skills — Free uses 3 at a time",unlimitedWidgets:"Unlimited widgets — Free keeps 3",unlimitedMcpTools:"Unlimited MCP tools — Free enables 10"}),C=Object.freeze({cloudSync:"Sync chats across your devices",sharedLibrary:"Shared team agents & skills",hostedBridge:"Hosted agents — no local bridge to run",sso:"SSO & admin controls"}),c=Object.freeze({notes:10,meetings:10,apiEndpoints:1,bridgeAgents:1,customAgents:1,attachmentsPerMessage:1,mcpServers:1,gatewayDestinations:1,webSearchEngines:3,webSearchesPerDay:50,fullRedactions:25,poolAgents:2,teams:1,teamRunsPerDay:3,projects:1,boardPostsPerDay:10,observeDays:1,recipes:2,skills:3,widgets:3,mcpTools:10}),h=Object.freeze({unlimitedAgents:"customAgents",customSkills:"skills",unlimitedPoolAgents:"poolAgents",unlimitedTeams:"teams",unlimitedTeamRuns:"teamRunsPerDay",unlimitedProjects:"projects",unlimitedBoardPosts:"boardPostsPerDay",unlimitedRecipes:"recipes",unlimitedSkills:"skills",unlimitedWidgets:"widgets",unlimitedMcpTools:"mcpTools"});function p(e,t=Date.now()){return!e||!f.includes(e.plan)||e.expiresAt&&t>e.expiresAt?"free":e.plan}function O(e,t=Date.now()){return{free:"Free",pro:"Pro",team:"Team"}[p(e,t)]}function x(e,t=Date.now()){return l[p(e,t)]>=l.pro}function R(e,t=Date.now()){return p(e,t)==="team"}function U(e,t,n=0,r=Date.now()){const i=p(e,r),s=h[t];if(s&&l[i]<l.pro)return n<c[s];const a=g[t]||"free";return l[i]>=l[a]}function F(e){const t=h[e];return t?c[t]:null}function _(e,t=Date.now()){return x(e,t)?0:t-c.observeDays*864e5}function j(e){return g[e]||"free"}function N(e,t,n,r=Date.now()){if(x(e,r))return!0;const i=c[t];return typeof i!="number"||n<i}function d(e){const t="=".repeat((4-String(e).length%4)%4),n=String(e).replace(/-/g,"+").replace(/_/g,"/")+t;if(typeof Buffer<"u")return new Uint8Array(Buffer.from(n,"base64"));const r=atob(n),i=new Uint8Array(r.length);for(let s=0;s<r.length;s++)i[s]=r.charCodeAt(s);return i}function b(e){try{return JSON.parse(new TextDecoder().decode(d(e)))}catch{return null}}let m=null;async function A(e){const t=e||globalThis.crypto?.subtle;if(!t)throw new w("no WebCrypto available on this runtime");return e?t.importKey("jwk",y,{name:"ECDSA",namedCurve:"P-256"},!1,["verify"]):(m||(m=t.importKey("jwk",y,{name:"ECDSA",namedCurve:"P-256"},!1,["verify"])),m)}const S="ent";async function M(e,{typ:t=null,subtle:n=null,now:r=Date.now()}={}){if(!e||typeof e!="string"||e.indexOf(".")<0)return null;const[i,s]=e.split(".");if(!i||!s)return null;let a=!1;try{a=await(n||globalThis.crypto?.subtle).verify({name:"ECDSA",hash:"SHA-256"},await A(n),d(s),new TextEncoder().encode(i))}catch{return null}if(!a)return null;const o=b(i);return!o||t&&o.typ!==t||o.exp&&r>Number(o.exp)?null:o}async function L(e,t,{subtle:n=null,now:r=Date.now()}={}){if(!e||typeof e!="string"||e.indexOf(".")<0)return null;const[i,s]=e.split(".");if(!i||!s)return null;let a=!1;try{a=await(n||globalThis.crypto?.subtle).verify({name:"ECDSA",hash:"SHA-256"},await A(n),d(s),new TextEncoder().encode(i))}catch{return null}if(!a)return null;const o=b(i);return!o||o.typ!==S||o.exp&&r>Number(o.exp)||!o.install_id||t&&o.install_id!==t||!f.includes(o.plan)?null:o}function B(e,{at:t=Date.now(),expiresAt:n=0}={}){return e?{plan:e.plan,expiresAt:Number(n)||0,tokenExp:Number(e.exp)||0,installId:e.install_id||"",sub:e.sub||null,checkedAt:t,source:"entitlement"}:{plan:"free"}}const T=720*60*1e3;function K(e,{now:t=Date.now(),interval:n=T}={}){if(!e||!e.checkedAt||t-e.checkedAt>n)return!0;const r=1440*60*1e3;return!!(e.expiresAt&&e.expiresAt-t<r||e.tokenExp&&e.tokenExp-t<r)}export{u as API_BASE,h as COUNTED,P as ENDPOINTS,y as ENTITLEMENT_PUBLIC_JWK,w as EntitlementError,g as FEATURE_TIER,c as FREE_LIMITS,f as PLANS,D as PRO_FEATURES,T as RECHECK_INTERVAL_MS,C as TEAM_FEATURES,S as TOKEN_TYPE,k as UPGRADE_URL,U as can,v as checkoutUrl,F as freeCap,x as isPro,R as isTeam,B as licenseFromPayload,K as needsRecheck,_ as observeSince,O as planLabel,p as planOf,j as tierFor,L as verifyEntitlement,M as verifySignedToken,N as withinFreeLimit};
package/index.js CHANGED
@@ -1 +1 @@
1
- import{CURRENT_VERSION as o,EVENT_TYPES as t,ALL_TYPES as a,ACTOR_KINDS as i,SCOPE_KINDS as n,CLASSES as s,EFFECTS as S,EGRESS as E,EventError as T,validateEvent as l,isValidEvent as m,createAppender as c}from"./event.js";import{REF_KINDS as _,RESOLUTION as R,makeRef as A,isRef as d,resolveRef as f}from"./ref.js";import{linearize as O,compareEvents as u,causesAreWellFormed as N}from"./order.js";import{pendingQueue as g,isQueued as C,dequeue as L,moveQueued as P,promoteQueued as x}from"./queue.js";import{groupModels as D,filterSections as h,defaultModelId as y,modelSummary as U}from"./model-picker.js";import{NOTE_ACTIONS as b,NOTE_ACTION_ORDER as v,NOTE_ACTION_TEMPERATURE as G,NOTE_ACTION_ERRORS as K,NOTE_COMMANDS as B,NOTE_COMMAND_TEMPERATURE as H,NOTE_COMMAND_MAX_TOKENS as w,frameNoteAction as V,noteActionLabel as X,noteActionItems as W,filterNoteActions as J,commandLineAt as z,triggerQueryAt as Y}from"./note-actions.js";import{parseAgentMention as Q,agentMentionAt as q,parseSkillMention as Z,mergeSkillPrompt as $,findSkillByName as ee,findTargetByName as re,mentionAnswerPrefix as oe}from"./note-mentions.js";import{wikiQueryAt as ae,rankLinkTargets as ie}from"./note-links.js";import{SWARM_ROLES as se,roleById as Se,classifyModel as Ee,supportsSubagents as Te,appoint as le,routeTeam as me}from"./cowriter-router.js";import{SEARCH_ENGINES as pe,RESULTS_PER_ENGINE as _e,buildSearchUrl as Re,unwrapRedirect as Ae,isResultHost as de,pickResults as fe,mergeEngineResults as Ie,engineOrder as Oe}from"./web-search.js";import{MAX_GRAPH_NODES as Ne,buildNoteGraph as Me,egoGraph as ge,trimGraph as Ce,graphStats as Le}from"./note-graph.js";import{lintText as xe,wordDiff as Fe,filterTypoEdits as De,editKey as he,applyEdits as ye,COWRITER_SYSTEM as Ue,COWRITER_TEMPERATURE as ke}from"./cowriter.js";import{salientTerms as ve,topicTerms as Ge,researchRelevance as Ke,webQuery as Be,researchSnippet as He,rankResearchCards as we,mergeResearchLanes as Ve}from"./note-research.js";import{PLAN_ROLES as We,PLAN_AUTHORS as Je,PLAN_DECOMPOSE_SYSTEM as ze,PLAN_DECOMPOSE_MAX_TOKENS as Ye,PLAN_DECOMPOSE_TEMPERATURE as je,PLAN_SECTION_MAX_TOKENS as Qe,PLAN_SECTION_TEMPERATURE as qe,planSectionSystem as Ze,parsePlanTasks as $e,planTitleFor as er,planParts as rr,planBody as or,planAttribution as tr}from"./note-plan.js";import{REACH as ir,reachRank as nr,reachSatisfies as sr}from"./reach.js";import{UPCASTERS as Er,upcast as Tr,upcastAll as lr}from"./upcast.js";import{validateCapability as cr,validateInvocation as pr,canSatisfy as _r,toModelSchema as Rr,toModelSchemas as Ar}from"./capability.js";import{checkInvariants as fr,INVARIANTS as Ir}from"./invariants.js";import{createMemoryAdapter as ur,createLogStore as Nr,createBlobStore as Mr}from"./store.js";import{createRegistry as Cr,REGISTRY_STATES as Lr}from"./registry.js";import{defineSearchEngine as xr,reconcileEngines as Fr,attemptOrder as Dr,ENGINE_KINDS as hr,SearchEngineError as yr}from"./search-engines.js";import{getWeather as kr,weatherUrl as br,parseWeather as vr,formatWeather as Gr,areaLabel as Kr,isAmbiguousLocation as Br,WEATHER_HOST as Hr,WEATHER_TIMEOUT_MS as wr,WeatherError as Vr}from"./weather.js";import{defineToolGroup as Wr,createToolGroupRegistry as Jr,ToolGroupError as zr}from"./tool-groups.js";import{toolNeedFor as jr,grantsNeededFor as Qr}from"./tool-need.js";import{parseFlowchart as Zr,layoutFlowchart as $r,renderFlowchartSvg as eo}from"./flowchart.js";import{validateView as oo,validateViewInvocation as to,viewResult as ao}from"./view.js";import{validateWidget as no,validateWidgetMessage as so,effectiveGrants as So,widgetIcon as Eo,WIDGET_SURFACES as To}from"./widget.js";import{fuseRRF as mo,planQueries as co,multiSearch as po}from"./rrf.js";import{SUBJECT_KINDS as Ro,DEFAULT_THRESHOLD as Ao,MAX_SUBJECTS as fo,MAX_SUBJECT_CHARS as Io,normalizeSubject as Oo,subjectKey as uo,subjectTokens as No,isSubjectCandidate as Mo,aliasMap as go,resolveSubjects as Co,earnsBrief as Lo,rankSubjects as Po,REDACTION_TOKEN_TYPES as xo,isRedactionToken as Fo,SELF_LABELS as Do,isSelfLabel as ho,stripQualifiers as yo,suggestMerges as Uo}from"./entity.js";import{BRIEF_STATES as bo,CLAIM_KINDS as vo,MAX_CLAIMS as Go,MAX_CLAIM_REFS as Ko,MAX_BRIEF_RECORDS as Bo,MAX_BRIEF_CHARS as Ho,contentHash as wo,briefId as Vo,briefToText as Xo,briefTerms as Wo,briefLinks as Jo,checkKnowledgeInvariants as zo,parseBriefText as Yo}from"./knowledge.js";import{deriveBrief as Qo,deriveBriefs as qo,driftedRefs as Zo}from"./knowledge-derive.js";import{SYNTHESIS_SCHEMA as et,synthesisPrompt as rt,claimsFromSynthesis as ot,MAX_SYNTHESIS_CLAIMS as tt,MAX_EXCERPTS as at,MAX_EXCERPT_CHARS as it}from"./synthesis.js";import{PROPOSAL_STATES as st,SUPERSEDE_OVERLAP as St,propose as Et,accept as Tt,reject as lt,diffProposal as mt,converge as ct,linkClaims as pt}from"./promotion.js";import{normalizeRecord as Rt,normalizeRecords as At,wikilinksIn as dt,redactedTokensIn as ft,redactionCost as It,wantedPages as Ot,orphanRecords as ut,duplicateTitles as Nt,vocabularyDrift as Mt,mentionsFrom as gt,spanningQuestions as Ct,surveyCorpus as Lt,thresholdSweep as Pt,formatSurvey as xt,NEAR_TITLE_DISTANCE as Ft,SPAN_MIN_TERMS as Dt}from"./curate.js";import{PDF_MAX_CHARS as yt,linesFromItems as Ut,orderLines as kt,paragraphsFromLines as bt,pageTextFromItems as vt,looksScanned as Gt,buildPdfDocument as Kt}from"./pdf-layout.js";import{YOUTUBE_HOSTS as Ht,TRANSCRIPT_MAX_CHARS as wt,parseYouTubeUrl as Vt,isYouTubeUrl as Xt,captionTracksFromPlayerResponse as Wt,videoMetaFromPlayerResponse as Jt,pickCaptionTrack as zt,timedTextUrl as Yt,parseTimedText as jt,groupSegments as Qt,formatTimestamp as qt,formatTranscript as Zt,buildTranscriptDocument as $t,transcriptFromTracks as ea}from"./media-transcript.js";import{ACCESS_LOG_VERSION as oa,ACCESS_LOG_MAX as ta,redactAccessArgs as aa,makeAccessEvent as ia,createAccessLog as na,makeStorageTier as sa,formatBytes as Sa}from"./observability.js";import{routeGraph as Ta,projectChain as la}from"./route-graph.js";import{defineAdapter as ca,createAdapterRegistry as pa,AdapterError as _a}from"./adapters.js";import{linkifyCitations as Aa,sourcesFromToolText as da,createCitationCollector as fa,RETRIEVAL_TOOLS as Ia}from"./citations.js";import{buildTrajectory as ua,phasesOf as Na,lanesOf as Ma,filterEntries as ga,displayName as Ca,ENTRY_KINDS as La,threadsOf as Pa,threadTitle as xa,promptEntries as Fa,turnsOf as Da,threadTree as ha}from"./trajectory.js";import{createTurnRunner as Ua,defineLoop as ka,LOOP_KINDS as ba,LoopError as va}from"./loop.js";import{defineModel as Ka,defineMiddleware as Ba,defineRouteStrategy as Ha,createModelRouter as wa,signalsFrom as Va,requirementsFor as Xa,requirementsForStep as Wa,preferenceFor as Ja,failoverOrder as za,pinnedOrderOf as Ya,FAILOVER_CLASS_GAP as ja,FAILOVER_CAPABILITY_GAP as Qa,sameModelKey as qa,RouterError as Za}from"./router.js";import{makeSourceStore as ei,manifestText as ri,shortUrl as oi,readSource as ti,sourceId as ai}from"./sources-retrieval.js";import{classifySource as ni,extractUrls as si,hostMatches as Si,meetReach as Ei,sourcePolicyFor as Ti,sourceUrlsOf as li,DEFAULT_INTERNAL_PATTERNS as mi,INTERNAL_PATTERN_CATALOG as ci}from"./sources.js";import{defineRule as _i,createRuleEngine as Ri,SUPPRESSED as Ai,RuleError as di}from"./rules.js";import{VAULT_VERSION as Ii,KDF_ITERATIONS as Oi,KDF_HASH as ui,DEFAULT_LOCK_MS as Ni,VaultError as Mi,MAX_TITLE_CHARS as gi,MAX_NOTE_CHARS as Ci,MAX_SECRET_CHARS as Li,MAX_ENTRIES as Pi,createVault as xi,unlockVault as Fi,deriveKey as Di,sealEntry as hi,openEntry as yi,validateEntry as Ui,entryMeta as ki,searchEntries as bi,isLocked as vi,lockedSummary as Gi,canAddEntry as Ki,toB64 as Bi,fromB64 as Hi}from"./vault.js";import{SCHEDULE_KINDS as Vi,TRIGGER_KINDS as Xi,JOB_ACTIONS as Wi,MISSED_POLICIES as Ji,ScheduleError as zi,validateSchedule as Yi,nextFireAt as ji,occurrencesBetween as Qi,nextWakeAt as qi,defineTrigger as Zi,createTriggerRegistry as $i,BUILTIN_TRIGGERS as en,timerTrigger as rn,meetingStartedTrigger as on,meetingEndedTrigger as tn,personJoinedTrigger as an,phraseTrigger as nn,topicTrigger as sn,questionTrigger as Sn,voiceCommandTrigger as En,defineJob as Tn,dueJobs as ln,jobsForEvent as mn,occurrenceKey as cn,clipText as pn,matchSummary as _n}from"./schedule.js";import{defineMeetingAnalyzer as An,createAnalyzerRegistry as dn,CADENCES as fn,AnalyzerError as In}from"./meeting-analyzers.js";import{DEFAULT_WAKE as un,MAX_COMMANDS_PER_DELTA as Nn,DAYPART_HOUR as Mn,VoiceIntentError as gn,compileWake as Cn,findWakeCommand as Ln,parseCommand as Pn,commandsFromSegments as xn,parseDuration as Fn,parseClock as Dn,parseWhen as hn,parseNumberWords as yn,normalizeSpeech as Un,tokenize as kn,editDistance as bn,defineVoiceIntent as vn,createVoiceIntentRegistry as Gn,defaultVoiceIntents as Kn,BUILTIN_VOICE_INTENTS as Bn,timerIntent as Hn,reminderIntent as wn,scheduleIntent as Vn,noteIntent as Xn,monitorIntent as Wn,REFINEMENT_SCHEMA as Jn,refinementPrompt as zn,refinementFormat as Yn,parseRefinement as jn,refinementStream as Qn,settleRefinement as qn,refineSpokenCommand as Zn,isFillerSentence as $n,gistText as es,gistOpening as rs,commandLooksFinished as os,sameUtterance as ts,createUtteranceGate as as,UTTERANCE_SETTLE_MS as is,UTTERANCE_DANGLING_MS as ns}from"./voice-intents.js";import{MAX_TOPICS as Ss,MAX_TOPIC_CHARS as Es,TOPICS_SCHEMA as Ts,topicsSchema as ls,topicsPrompt as ms,topicsFormat as cs,parseTopics as ps,normalizeTopic as _s,normalizeTopics as Rs,topicsStream as As,ENTITY_TYPES as ds,ENTITIES_SCHEMA as fs,entitiesPrompt as Is,entitiesFormat as Os,parseEntities as us,coerceEntities as Ns,entitiesStream as Ms,MAX_SUGGESTIONS as gs,MAX_SUGGESTION_CHARS as Cs,SUGGESTIONS_SCHEMA as Ls,suggestionsPrompt as Ps,suggestionsFormat as xs,parseSuggestions as Fs,suggestionsStream as Ds}from"./extraction.js";import{FIELD_TYPES as ys,RESPONSE_MODES as Us,StructuredError as ks,defineSchema as bs,describeSchema as vs,toJsonSchema as Gs,responseFormat as Ks,unfence as Bs,findJson as Hs,rewriteJson as ws,repairJson as Vs,isNothing as Xs,coerce as Ws,parseStructured as Js,createStructuredStream as zs}from"./structured.js";import{explainMcpError as js,packageFromArgs as Qs,isStaleMcpSession as qs}from"./mcp-errors.js";import{toolTraits as $s,bareToolName as eS,canRunConcurrently as rS,isCacheable as oS,needsConfirmation as tS,traitsIndex as aS,effectiveToolName as iS,parallelEligible as nS,PARALLEL_LOCAL_RE as sS}from"./tool-traits.js";import{planToolRound as ES,runToolRound as TS}from"./tool-round.js";import{createToolLoopGuard as mS,roundSignature as cS,stableToolCallKey as pS,toolMadeProgress as _S,isLoopableTool as RS,blockedToolResult as AS,OBSERVATION_TOOLS as dS,INPUT_PROGRESS_TOOLS as fS}from"./tool-loop-guard.js";import{classifyFailure as OS,createModelHealth as uS,COOLDOWN_MS as NS,UNAVAILABLE_REASONS as MS,normModelName as gS}from"./model-health.js";import{runWithFailover as LS,failoverExhausted as PS,FAILOVER_MAX_ATTEMPTS as xS}from"./failover.js";import{sourcePolicySettings as DS,sourceGuardFor as hS,sourceGate as yS,isSourceGateError as US,withinReach as kS}from"./source-gate.js";import{runTurnLoop as vS,createCallRunner as GS,roundCap as KS,withToolSystem as BS,describeCall as HS,stepResultText as wS,addUsage as VS,normalizeUsage as XS,openAiTranscript as WS,anthropicTranscript as JS,DEFAULT_MAX_ROUNDS as zS,DEFAULT_MAX_FINISH_TRIES as YS,FINISH_NUDGES as jS,LOOPING_NUDGE as QS,EXHAUSTED_NOTE as qS,ROUND_SEPARATOR as ZS}from"./turn-loop.js";import{createResultStore as eE,shieldToolResult as rE,runResultQuery as oE,withResultShield as tE,describeShape as aE,compactValue as iE,resultToolSpec as nE,RESULT_TOOL_NAME as sE,DEFAULT_SHIELD as SE,DEFAULT_STORE as EE}from"./tool-result.js";import{findTools as lE,findToolsResult as mE,findActionArgs as cE,oneLiner as pE,overlapRank as _E,FIND_ACTION as RE}from"./tool-discovery.js";import{buildToolset as dE}from"./toolset.js";import{DESCRIBE_ACTION as IE,actionMenu as OE,buildGroupDispatchSpec as uE,validateAction as NE,makeGroupDispatchExecutor as ME,withGuidance as gE,makeDispatchProvider as CE,estimateTokens as LE}from"./tool-dispatch.js";import{FIND_TOOL_NAME as xE,FIND_DESCRIPTION as FE,FIND_RESIDENT as DE,findDispatchProvider as hE}from"./find-tool.js";import{WEB_SEARCH_TOOL_NAME as UE,WEB_SEARCH_TOOL_SYSTEM as kE,WEB_SEARCH_SPEC as bE,searchResultsToText as vE,webSearchToolProvider as GE}from"./web-search-tool.js";import{compressToolSpec as BE,compressToolSpecs as HE,compressionStats as wE,trimDescription as VE,COMPRESSION_MODES as XE,DEFAULT_COMPRESSION as WE}from"./tool-schema.js";import{validateRecipe as zE,expandRecipe as YE,recipeParams as jE,mapInput as QE,dryRunRecipe as qE,runPlan as ZE,runRecipe as $E,RecipeError as eT,RECIPE_MODES as rT}from"./recipe.js";import{recipeToolProvider as tT,recipeToolSpec as aT,describeRecipeForApproval as iT,RECIPE_TOOL_NAME as nT}from"./recipe-tool.js";import{createBudget as ST,validateBudget as ET,normalizeBudget as TT,usageOf as lT,BudgetError as mT,BUDGET_DIMENSIONS as cT}from"./budget.js";import{defineTeam as _T,validateTeam as RT,normalizeTeam as AT,normalizeGrants as dT,grantAllows as fT,scmAllows as IT,describeRole as OT,TeamError as uT,ROLE_MODES as NT,MERGE_POLICIES as MT,PLAN_MODES as gT,GRANTABLE as CT,WORK_GRANTS as LT,GRANT_RE as PT,AGENT_REF_RE as xT,STARTER_TEAMS as FT,starterTeams as DT,blankTeam as hT,teamFromForm as yT,slugTeamName as UT}from"./team.js";import{fixedPlan as bT,parsePlan as vT,plannerPrompt as GT,waves as KT,breakCycles as BT,TEAM_PLAN_SCHEMA as HT}from"./team-plan.js";import{createBoard as VT,parseFindings as XT,boardText as WT,findingsInstruction as JT,toBriefClaims as zT,FINDINGS_SCHEMA as YT,FINDING_KINDS as jT,THREAD_KINDS as QT,THREAD_STATUSES as qT,POST_KINDS as ZT,POST_STATUSES as $T,ASK_TYPES as el,emptyBoardState as rl,foldBoard as ol,findingsOf as tl}from"./team-board.js";import{boardToolProvider as il,boardToolSpec as nl,createAnswerBox as sl,withBoardTool as Sl,BOARD_TOOL_NAME as El,DEFAULT_ASK_TIMEOUT_MS as Tl}from"./board-tool.js";import{createRunCache as ml,withRunCache as cl}from"./team-cache.js";import{emptyRun as _l,foldRun as Rl,runFromEvents as Al,checkpointFrom as dl,isResumable as fl,LIVE_RUN_STATUSES as Il,RESUMABLE_RUN_STATUSES as Ol,spendOf as ul,describeSpend as Nl,runState as Ml,priorWorkFor as gl,STALLED_AFTER_MS as Cl}from"./team-record.js";import{validateProject as Pl,normalizeProject as xl,defineProject as Fl,canTransition as Dl,blankProject as hl,projectFromForm as yl,emptyProjectRecord as Ul,foldProject as kl,projectProgress as bl,ProjectError as vl,PROJECT_STATUSES as Gl,PROJECT_ID_RE as Kl}from"./project.js";import{validateJob as Hl,normalizeJob as wl,defineJob as Vl,canTransition as Xl,applyAll as Wl,jobToRole as Jl,readyJobs as zl,blankJob as Yl,jobFromForm as jl,JobError as Ql,JOB_STATUSES as ql,JOB_ID_RE as Zl}from"./job.js";import{validateGate as em,normalizeGate as rm,effectiveGate as om,gateAllows as tm,DEFAULT_GATE as am,AUTONOMY as im,HUMAN_FLAGS as nm,CHECKS as sm}from"./gate.js";import{runProject as Em,roundJobs as Tm,teamForRound as lm,jobResults as mm,roundBudget as cm,parseJobs as pm,parseReview as _m,jobsPrompt as Rm,reviewPrompt as Am,PROJECT_JOBS_SCHEMA as dm,PROJECT_REVIEW_SCHEMA as fm,ProjectRunError as Im,EXECUTIVE as Om,MAX_JOBS_PER_ROUND as um,MAX_ROUNDS as Nm,PROJECT_RUN_STATUSES as Mm}from"./project-run.js";import{canonical as Cm,sha256 as Lm,makeEntry as Pm,verifyChain as xm,attest as Fm,verifyAttested as Dm,summarize as hm,fit as ym,adjustSummary as Um,normalizeEngine as km,engineKey as bm,normalizeScm as vm,SCORECARD_ENTRY_KINDS as Gm,ROLE_KINDS as Km,SCORECARD_VERSION as Bm,ENGINE_KINDS as Hm}from"./scorecard.js";import{ENGINE_KINDS as Vm,ROUTE_PREFERS as Xm,normalizePolicy as Wm,normalizeEngineSpec as Jm,validateEngineSpec as zm,engineRef as Ym,engineKeyOf as jm,describeEngine as Qm,tierOf as qm}from"./engine.js";import{AGENT_ID_RE as $m,APPLIES_TO as ec,EGRESS_CLASSES as rc,ASSISTANT_ID as oc,AgentError as tc,validateAgent as ac,normalizeAgent as ic,defineAgent as nc,assistantAgent as sc,engineOf as Sc,describeAgent as Ec,slugAgentId as Tc,resolveTeam as lc,STARTER_AGENTS as mc,starterAgents as cc,blankAgent as pc,agentFromForm as _c,poolFor as Rc}from"./agent.js";import{LEDGER_VERSION as dc,LEDGER_ENTRY_KINDS as fc,DECLINE_REASONS as Ic,WITHDRAW_AFTER as Oc,ledgerKey as uc,normalizeCall as Nc,makeLedgerEntry as Mc,summarizeEngine as gc}from"./model-ledger.js";import{RECRUIT_SCHEMA as Lc,MIN_FIT as Pc,engineRow as xc,engineRows as Fc,needForJob as Dc,routeFor as hc,engineWorth as yc,applications as Uc,evaluatorPrompt as kc,parseEvaluation as bc,decide as vc,recruitForRun as Gc,proposalFromNeeds as Kc,proposalToAgent as Bc,carveBudget as Hc,recruitEvents as wc,recruitJob as Vc}from"./recruit.js";import{DEFAULT_MIN_CALLS as Wc,cardOverride as Jc,applyCard as zc}from"./model-candidates.js";import{SCM_KINDS as jc,validateConnection as Qc,normalizeConnection as qc,parseRemote as Zc,connectionFor as $c,branchFor as ep,worktreeDirFor as rp,credentialEnv as op,describeConnection as tp,blankConnection as ap,connectionFromForm as ip}from"./scm-connection.js";import{messagesFor as sp,mergeTranscript as Sp,clipTranscript as Ep,clipMessage as Tp,newSteps as lp,continuationNote as mp,createControl as cp,STEP_MAX_CHARS as pp,TASK_TRANSCRIPT_MAX_CHARS as _p}from"./team-task.js";import{runTeam as Ap,resumeTeam as dp,dryRunTeam as fp,isModelUnavailable as Ip,TeamRunError as Op,RUN_STATUSES as up}from"./team-run.js";import{teamToolProvider as Mp,teamToolSpec as gp,teamToolTimeoutMs as Cp,describeTeamForApproval as Lp,TEAM_TOOL_NAME as Pp}from"./team-tool.js";import{workLogFor as Fp,workLogText as Dp,workLogEvidence as hp,describeCall as yp,WORKLOG_KINDS as Up}from"./team-worklog.js";import{normalizeRequest as bp,subtaskFromRequest as vp,takeUp as Gp,takeUpLine as Kp,holdsGrants as Bp,jobFromSubtask as Hp,extendDependents as wp,taskTree as Vp,threadRows as Xp,MAX_SUBTASKS as Wp,MAX_DEPTH as Jp,MIN_TAKEUP_FIT as zp}from"./team-subtask.js";import{teamLine as jp,teamLanes as Qp}from"./team-trail.js";import{promoteRoles as Zp,starterTeam as $p,missingStarters as e_,teamHealth as r_,teamShape as o_,describeTeamShape as t_,whereItWorks as a_,rosterRows as i_,agentKind as n_,agentHue as s_,agentColor as S_,agentInitials as E_,roleCardId as T_,cardNumbers as l_,upsertAgents as m_,soloTeam as c_,teamsWithSolos as p_,builtinOrg as __,isBuiltin as R_,grantChoices as A_,grantsFromChoices as d_,skillChoices as f_,GRANT_INFO as I_,SOLO_BUDGET as O_,TEAM_SHAPES as u_,ROSTER_KINDS as N_}from"./team-org.js";import{observeInbox as g_,observeStrip as C_,runLanes as L_,spendRows as P_,engineStrip as x_}from"./team-observe.js";import{mcpDispatchProvider as D_,MCP_TOOL_NAME as h_}from"./mcp-dispatch.js";import{createManifest as U_,ManifestError as k_,SOURCES as b_}from"./manifest.js";import{createKernel as G_,meetDecisions as K_,KernelError as B_,REQUIRED_PLUGINS as H_,ALLOW_ALL as w_}from"./kernel.js";import{replay as X_,formatReport as W_,parseJsonl as J_,toJsonl as z_}from"./harness.js";import{compileQuery as j_,findMatches as Q_,matchIndexFor as q_,expandReplacement as Z_,replaceMatch as $_,replaceAll as eR,replaceAllInRange as rR,MAX_MATCHES as oR}from"./text-search.js";import{DATA_SCOPES as aR}from"./scopes.js";import{MEMORY_VERSION as nR,MEMORY_KINDS as sR,MEMORY_KIND_NAMES as SR,AMBIENT_KINDS as ER,MAX_MEMORY_CHARS as TR,MIN_MEMORY_CHARS as lR,DEFAULT_MAX_MEMORIES as mR,DEFAULT_BLOCK_CHARS as cR,SAME_FACT as pR,MEMORY_TOOL_SPEC as _R,MEMORY_UPCASTERS as RR,MemoryError as AR,normalizeMemory as dR,isValidMemory as fR,memoryKey as IR,slotOf as OR,similarity as uR,containment as NR,candidatesFrom as MR,reconcile as gR,matchForForget as CR,recall as LR,memoryBlock as PR,markUsed as xR,pruneMemories as FR,memoryToolSystem as DR,upcastMemory as hR}from"./memory.js";import{SOURCE_TRUST as UR,SkillSourceError as kR,defineSkillSource as bR,createSkillSourceRegistry as vR}from"./skill-sources.js";import{SKILL_MANIFEST_VERSION as KR,SKILL_CONTEXTS as BR,SKILL_HISTORY_SCOPES as HR,SKILL_MCP_MODES as wR,SKILL_TRUST as VR,SKILL_FILE_KINDS as XR,SKILL_UPCASTERS as WR,SkillManifestError as JR,isSafeSkillPath as zR,originOf as YR,trustOf as jR,skillFiles as QR,needsBridge as qR,declaredAccess as ZR,originLabel as $R,sameSkillOrigin as eA,skillIsStale as rA,validateSkill as oA,upcastSkill as tA,upcastSkills as aA,normalizeSkill as iA}from"./skill-manifest.js";import{SKILL_VARS as sA,SKILL_VAR_NAMES as SA,skillVar as EA,skillVarPattern as TA,parseSkillVars as lA,lintSkillPrompt as mA,suggestSkillVar as cA,substituteSkillVars as pA,expandSkillPrompt as _A,skillVarGuidance as RA,SkillVarError as AA}from"./skill-vars.js";import{lineAt as fA,writerAffordance as IA,INSTRUCTION_RE as OA,instructionOnLine as uA,GOAL_MIN_NEW as NA,goalDraftAllowed as MA,createSpendMeter as gA,writerTail as CA,draftSeparator as LA,groundingBlock as PA,writerRequest as xA,AUTOCOMPLETE_SYSTEM as FA,AUTOCOMPLETE_MAX_TOKENS as DA,AUTOCOMPLETE_TEMPERATURE as hA,clipCompletion as yA,GEARS as UA,WRITER_PREFS as kA,WRITER_PREF_DEFAULTS as bA,normalizeWriterPrefs as vA,normalizeIntent as GA}from"./cowriter-writer.js";import{SLASH_TYPING_RE as BA,enabledSkills as HA,slashCommandItems as wA,matchSlashSkill as VA,matchSlashRecipe as XA,recipeInvocationText as WA,matchSlashTeam as JA,teamInvocationText as zA,slashCommandInsert as YA,skillInvocationOf as jA,skillInvocationLabel as QA}from"./slash-commands.js";import{outlineOf as ZA,parseListItem as $A,continueList as ed,indentSelection as rd,toggleWrap as od,toggleLinePrefix as td,toggleTask as ad,toggleLink as id,docStats as nd,selectionStats as sd}from"./markdown-authoring.js";import{MAX_TAG_LENGTH as Ed,MAX_TAGS as Td,normalizeTag as ld,normalizeTags as md,hasTag as cd,addTag as pd,removeTag as _d,toggleTag as Rd,sameTags as Ad,formatTag as dd,parseTagQuery as fd,hasTagTerms as Id,formatTagQuery as Od,matchesTagFilter as ud,filterByTags as Nd,tagFacets as Md,suggestExistingTags as gd,tagsSearchText as Cd}from"./tags.js";import{UNTITLED_MEETING as Pd,MAX_TITLE_LENGTH as xd,TITLE_RULES_VERSION as Fd,cleanTitle as Dd,isGenericTitle as hd,titleFromSummary as yd,titleFromTopics as Ud,titleFromParticipants as kd,titleFromDate as bd,deriveMeetingTitle as vd,shouldAutoTitle as Gd,isBetterTitleSource as Kd,meetingTitlePrompt as Bd,parseTitleResponse as Hd}from"./titles.js";import{RECORD_KINDS as Vd,MAX_TITLE_LEN as Xd,LibraryError as Wd,parseRecordId as Jd,makeRecordId as zd,isRecordId as Yd,normalizeStoredRecord as jd,isValidStoredRecord as Qd,toSearchRecord as qd,searchTextFor as Zd,toIndexEntry as $d,deriveTitle as ef,snippetOf as rf,wordCount as of}from"./library.js";import{CLOCK_TOLERANCE_MS as af,SyncError as nf,stampOf as sf,decide as Sf,planSync as Ef,isSettled as Tf,forkConflict as lf,advanceBases as mf}from"./sync-plan.js";import{ENCRYPTED_TYPE as pf,COMPRESSIONS as _f,BackupError as Rf,KDF_ITERATIONS as Af,encryptBackup as df,decryptBackup as ff,isEncryptedBackup as If,identityCodec as Of,streamCodec as uf,nodeCodec as Nf,bestCodec as Mf}from"./backup-envelope.js";import{OMNI_MODES as Cf,OMNI_GRAMMAR as Lf,parseOmni as Pf,extractFilters as xf,resolveSince as Ff,wantsModel as Df,isActionable as hf}from"./omni.js";import{THEMES as Uf,LIGHT as kf,DARK as bf,PALETTES as vf,SHAPE as Gf,TOKEN_NAMES as Kf,TOKEN_ROLES as Bf,paletteFor as Hf,cssVarName as wf,toCssVars as Vf,themeStylesheet as Xf,resolveTheme as Wf}from"./theme.js";import{PLANS as zf,API_BASE as Yf,ENDPOINTS as jf,ENTITLEMENT_PUBLIC_JWK as Qf,UPGRADE_URL as qf,FEATURE_TIER as Zf,PRO_FEATURES as $f,TEAM_FEATURES as eI,FREE_LIMITS as rI,RECHECK_INTERVAL_MS as oI,EntitlementError as tI,checkoutUrl as aI,planOf as iI,planLabel as nI,isPro as sI,isTeam as SI,can as EI,tierFor as TI,withinFreeLimit as lI,verifyEntitlement as mI,licenseFromPayload as cI,needsRecheck as pI}from"./entitlement.js";import{renderMarkdown as RI,defaultLinkPolicy as AI}from"./markdown-render.js";import{parseMeetingText as fI,speakerStats as II,densityRibbon as OI}from"./meeting-text.js";import{speakerBreakdown as NI,speakerTimeline as MI,formatTalkTime as gI,SPEAKER_SLOTS as CI}from"./meeting-shape.js";import{isSpeakerImageValue as PI,speakerLabeller as xI}from"./meeting-shape.js";import{SORT_MODES as DI,SORT_LABELS as hI,sortStamp as yI,sortRecords as UI,filterRecords as kI,dayBucket as bI,rowTime as vI,groupRecords as GI}from"./record-list.js";import{INSIGHT_KINDS as BI,summarySections as HI,insightKindOf as wI,meetingInsights as VI,hasInsights as XI}from"./meeting-insights.js";import{demd as JI,NOTE_SECTIONS as zI,noteSectionKind as YI,MOMENT_BADGES as jI,momentBadge as QI,parseMeetingNotes as qI,groupActionsByOwner as ZI}from"./meeting-insights.js";import{PREF_SECTIONS as eO,PREF_SECTION_IDS as rO,sectionValue as oO,pickSections as tO,applySections as aO,sectionHash as iO,mergeStamped as nO,changedSections as sO}from"./client-prefs.js";import{McpClient as EO,mcpProvider as TO}from"./mcp-client.js";import{mcpSharedSystem as mO,mcpInventorySystem as cO,sourceCitationSystem as pO,combineSystemPrompt as _O,toolStatus as RO,widgetAuthoringSystem as AO,vaultWidgetSystem as dO,wantsVaultGuidance as fO}from"./tool-hints.js";import{adaptiveToolRetryHint as OO,createAdaptiveToolPolicy as uO,isInvalidToolParametersResult as NO}from"./adaptive-tool-policy.js";import{getMcpProviders as gO,testMcpServer as CO,resetMcp as LO}from"./mcp-manager.js";import{WEATHER_TOOL_NAME as xO,WEATHER_TOOL_SYSTEM as FO,weatherToolProvider as DO}from"./weather-tool.js";import{renderContent as yO,toChatMessages as UO,toMultimodalMessages as kO,imageAttachmentsOf as bO,deferAttachedSources as vO,withSourceTool as GO,SOURCE_TOOL_SPEC as KO}from"./context-attachments.js";export{ta as ACCESS_LOG_MAX,oa as ACCESS_LOG_VERSION,i as ACTOR_KINDS,$m as AGENT_ID_RE,xT as AGENT_REF_RE,w_ as ALLOW_ALL,a as ALL_TYPES,ER as AMBIENT_KINDS,Yf as API_BASE,ec as APPLIES_TO,el as ASK_TYPES,oc as ASSISTANT_ID,DA as AUTOCOMPLETE_MAX_TOKENS,FA as AUTOCOMPLETE_SYSTEM,hA as AUTOCOMPLETE_TEMPERATURE,im as AUTONOMY,_a as AdapterError,tc as AgentError,In as AnalyzerError,Af as BACKUP_KDF_ITERATIONS,El as BOARD_TOOL_NAME,bo as BRIEF_STATES,cT as BUDGET_DIMENSIONS,en as BUILTIN_TRIGGERS,Bn as BUILTIN_VOICE_INTENTS,Rf as BackupError,mT as BudgetError,fn as CADENCES,sm as CHECKS,vo as CLAIM_KINDS,s as CLASSES,af as CLOCK_TOLERANCE_MS,_f as COMPRESSIONS,XE as COMPRESSION_MODES,NS as COOLDOWN_MS,Ue as COWRITER_SYSTEM,ke as COWRITER_TEMPERATURE,o as CURRENT_VERSION,bf as DARK,aR as DATA_SCOPES,Mn as DAYPART_HOUR,Ic as DECLINE_REASONS,Tl as DEFAULT_ASK_TIMEOUT_MS,cR as DEFAULT_BLOCK_CHARS,WE as DEFAULT_COMPRESSION,am as DEFAULT_GATE,mi as DEFAULT_INTERNAL_PATTERNS,Ni as DEFAULT_LOCK_MS,YS as DEFAULT_MAX_FINISH_TRIES,mR as DEFAULT_MAX_MEMORIES,zS as DEFAULT_MAX_ROUNDS,Wc as DEFAULT_MIN_CALLS,SE as DEFAULT_SHIELD,EE as DEFAULT_STORE,Ao as DEFAULT_THRESHOLD,un as DEFAULT_WAKE,IE as DESCRIBE_ACTION,S as EFFECTS,E as EGRESS,rc as EGRESS_CLASSES,pf as ENCRYPTED_TYPE,jf as ENDPOINTS,hr as ENGINE_KINDS,Vm as ENGINE_SPEC_KINDS,fs as ENTITIES_SCHEMA,Qf as ENTITLEMENT_PUBLIC_JWK,ds as ENTITY_TYPES,La as ENTRY_KINDS,t as EVENT_TYPES,Om as EXECUTIVE,qS as EXHAUSTED_NOTE,tI as EntitlementError,T as EventError,Qa as FAILOVER_CAPABILITY_GAP,ja as FAILOVER_CLASS_GAP,xS as FAILOVER_MAX_ATTEMPTS,Zf as FEATURE_TIER,ys as FIELD_TYPES,YT as FINDINGS_SCHEMA,jT as FINDING_KINDS,RE as FIND_ACTION,FE as FIND_DESCRIPTION,DE as FIND_RESIDENT,xE as FIND_TOOL_NAME,jS as FINISH_NUDGES,rI as FREE_LIMITS,UA as GEARS,NA as GOAL_MIN_NEW,CT as GRANTABLE,I_ as GRANT_INFO,PT as GRANT_RE,nm as HUMAN_FLAGS,fS as INPUT_PROGRESS_TOOLS,BI as INSIGHT_KINDS,OA as INSTRUCTION_RE,ci as INTERNAL_PATTERN_CATALOG,Ir as INVARIANTS,Wi as JOB_ACTIONS,Zl as JOB_POST_ID_RE,ql as JOB_POST_STATUSES,Ql as JobPostError,ui as KDF_HASH,Oi as KDF_ITERATIONS,B_ as KernelError,fc as LEDGER_ENTRY_KINDS,dc as LEDGER_VERSION,kf as LIGHT,Il as LIVE_RUN_STATUSES,QS as LOOPING_NUDGE,ba as LOOP_KINDS,Wd as LibraryError,va as LoopError,Ho as MAX_BRIEF_CHARS,Bo as MAX_BRIEF_RECORDS,Go as MAX_CLAIMS,Ko as MAX_CLAIM_REFS,Nn as MAX_COMMANDS_PER_DELTA,Jp as MAX_DEPTH,Pi as MAX_ENTRIES,at as MAX_EXCERPTS,it as MAX_EXCERPT_CHARS,Ne as MAX_GRAPH_NODES,um as MAX_JOBS_PER_ROUND,oR as MAX_MATCHES,TR as MAX_MEMORY_CHARS,Ci as MAX_NOTE_CHARS,Nm as MAX_ROUNDS,Li as MAX_SECRET_CHARS,fo as MAX_SUBJECTS,Io as MAX_SUBJECT_CHARS,Wp as MAX_SUBTASKS,gs as MAX_SUGGESTIONS,Cs as MAX_SUGGESTION_CHARS,tt as MAX_SYNTHESIS_CLAIMS,Td as MAX_TAGS,Ed as MAX_TAG_LENGTH,gi as MAX_TITLE_CHARS,Xd as MAX_TITLE_LEN,xd as MAX_TITLE_LENGTH,Ss as MAX_TOPICS,Es as MAX_TOPIC_CHARS,h_ as MCP_TOOL_NAME,sR as MEMORY_KINDS,SR as MEMORY_KIND_NAMES,_R as MEMORY_TOOL_SPEC,RR as MEMORY_UPCASTERS,nR as MEMORY_VERSION,MT as MERGE_POLICIES,Pc as MIN_FIT,lR as MIN_MEMORY_CHARS,zp as MIN_TAKEUP_FIT,Ji as MISSED_POLICIES,jI as MOMENT_BADGES,k_ as ManifestError,EO as McpClient,AR as MemoryError,Ft as NEAR_TITLE_DISTANCE,b as NOTE_ACTIONS,K as NOTE_ACTION_ERRORS,v as NOTE_ACTION_ORDER,G as NOTE_ACTION_TEMPERATURE,B as NOTE_COMMANDS,w as NOTE_COMMAND_MAX_TOKENS,H as NOTE_COMMAND_TEMPERATURE,zI as NOTE_SECTIONS,dS as OBSERVATION_TOOLS,Lf as OMNI_GRAMMAR,Cf as OMNI_MODES,vf as PALETTES,sS as PARALLEL_LOCAL_RE,yt as PDF_MAX_CHARS,zf as PLANS,Je as PLAN_AUTHORS,Ye as PLAN_DECOMPOSE_MAX_TOKENS,ze as PLAN_DECOMPOSE_SYSTEM,je as PLAN_DECOMPOSE_TEMPERATURE,gT as PLAN_MODES,We as PLAN_ROLES,Qe as PLAN_SECTION_MAX_TOKENS,qe as PLAN_SECTION_TEMPERATURE,ZT as POST_KINDS,$T as POST_STATUSES,eO as PREF_SECTIONS,rO as PREF_SECTION_IDS,Kl as PROJECT_ID_RE,dm as PROJECT_JOBS_SCHEMA,fm as PROJECT_REVIEW_SCHEMA,Mm as PROJECT_RUN_STATUSES,Gl as PROJECT_STATUSES,st as PROPOSAL_STATES,$f as PRO_FEATURES,vl as ProjectError,Im as ProjectRunError,ir as REACH,oI as RECHECK_INTERVAL_MS,rT as RECIPE_MODES,nT as RECIPE_TOOL_NAME,Hm as RECORD_ENGINE_KINDS,Vd as RECORD_KINDS,Lc as RECRUIT_SCHEMA,xo as REDACTION_TOKEN_TYPES,Jn as REFINEMENT_SCHEMA,_ as REF_KINDS,Lr as REGISTRY_STATES,H_ as REQUIRED_PLUGINS,R as RESOLUTION,Us as RESPONSE_MODES,_e as RESULTS_PER_ENGINE,sE as RESULT_TOOL_NAME,Ol as RESUMABLE_RUN_STATUSES,Ia as RETRIEVAL_TOOLS,Km as ROLE_KINDS,NT as ROLE_MODES,N_ as ROSTER_KINDS,ZS as ROUND_SEPARATOR,Xm as ROUTE_PREFERS,up as RUN_STATUSES,eT as RecipeError,Za as RouterError,di as RuleError,pR as SAME_FACT,Vi as SCHEDULE_KINDS,jc as SCM_KINDS,n as SCOPE_KINDS,Gm as SCORECARD_ENTRY_KINDS,Bm as SCORECARD_VERSION,pe as SEARCH_ENGINES,Do as SELF_LABELS,Gf as SHAPE,BR as SKILL_CONTEXTS,XR as SKILL_FILE_KINDS,HR as SKILL_HISTORY_SCOPES,KR as SKILL_MANIFEST_VERSION,wR as SKILL_MCP_MODES,VR as SKILL_TRUST,WR as SKILL_UPCASTERS,sA as SKILL_VARS,SA as SKILL_VAR_NAMES,BA as SLASH_TYPING_RE,O_ as SOLO_BUDGET,hI as SORT_LABELS,DI as SORT_MODES,b_ as SOURCES,KO as SOURCE_TOOL_SPEC,UR as SOURCE_TRUST,Dt as SPAN_MIN_TERMS,CI as SPEAKER_SLOTS,Cl as STALLED_AFTER_MS,mc as STARTER_AGENTS,FT as STARTER_TEAMS,pp as STEP_MAX_CHARS,Ro as SUBJECT_KINDS,Ls as SUGGESTIONS_SCHEMA,St as SUPERSEDE_OVERLAP,Ai as SUPPRESSED,se as SWARM_ROLES,et as SYNTHESIS_SCHEMA,zi as ScheduleError,yr as SearchEngineError,JR as SkillManifestError,kR as SkillSourceError,AA as SkillVarError,ks as StructuredError,nf as SyncError,_p as TASK_TRANSCRIPT_MAX_CHARS,eI as TEAM_FEATURES,HT as TEAM_PLAN_SCHEMA,u_ as TEAM_SHAPES,Pp as TEAM_TOOL_NAME,Uf as THEMES,QT as THREAD_KINDS,qT as THREAD_STATUSES,Fd as TITLE_RULES_VERSION,Kf as TOKEN_NAMES,Bf as TOKEN_ROLES,Ts as TOPICS_SCHEMA,wt as TRANSCRIPT_MAX_CHARS,Xi as TRIGGER_KINDS,uT as TeamError,Op as TeamRunError,zr as ToolGroupError,MS as UNAVAILABLE_REASONS,Pd as UNTITLED_MEETING,Er as UPCASTERS,qf as UPGRADE_URL,ns as UTTERANCE_DANGLING_MS,is as UTTERANCE_SETTLE_MS,Ii as VAULT_VERSION,Mi as VaultError,gn as VoiceIntentError,Hr as WEATHER_HOST,wr as WEATHER_TIMEOUT_MS,xO as WEATHER_TOOL_NAME,FO as WEATHER_TOOL_SYSTEM,bE as WEB_SEARCH_SPEC,UE as WEB_SEARCH_TOOL_NAME,kE as WEB_SEARCH_TOOL_SYSTEM,To as WIDGET_SURFACES,Oc as WITHDRAW_AFTER,Up as WORKLOG_KINDS,LT as WORK_GRANTS,kA as WRITER_PREFS,bA as WRITER_PREF_DEFAULTS,Vr as WeatherError,Ht as YOUTUBE_HOSTS,Tt as accept,OE as actionMenu,OO as adaptiveToolRetryHint,pd as addTag,VS as addUsage,Um as adjustSummary,mf as advanceBases,S_ as agentColor,_c as agentFromForm,s_ as agentHue,E_ as agentInitials,n_ as agentKind,q as agentMentionAt,go as aliasMap,JS as anthropicTranscript,Wl as applyAll,zc as applyCard,ye as applyEdits,aO as applySections,le as appoint,Kr as areaLabel,sc as assistantAgent,Dr as attemptOrder,Fm as attest,eS as bareToolName,Mf as bestCodec,pc as blankAgent,ap as blankConnection,Yl as blankJobPost,hl as blankProject,hT as blankTeam,AS as blockedToolResult,WT as boardText,il as boardToolProvider,nl as boardToolSpec,ep as branchFor,BT as breakCycles,Vo as briefId,Jo as briefLinks,Wo as briefTerms,Xo as briefToText,uE as buildGroupDispatchSpec,Me as buildNoteGraph,Kt as buildPdfDocument,Re as buildSearchUrl,dE as buildToolset,ua as buildTrajectory,$t as buildTranscriptDocument,__ as builtinOrg,EI as can,Ki as canAddEntry,Xl as canJobPostTransition,Dl as canProjectTransition,rS as canRunConcurrently,_r as canSatisfy,MR as candidatesFrom,Cm as canonical,Wt as captionTracksFromPlayerResponse,l_ as cardNumbers,Jc as cardOverride,Hc as carveBudget,N as causesAreWellFormed,sO as changedSections,fr as checkInvariants,zo as checkKnowledgeInvariants,aI as checkoutUrl,dl as checkpointFrom,ot as claimsFromSynthesis,OS as classifyFailure,Ee as classifyModel,ni as classifySource,Dd as cleanTitle,yA as clipCompletion,Tp as clipMessage,pn as clipText,Ep as clipTranscript,Ws as coerce,Ns as coerceEntities,_O as combineSystemPrompt,z as commandLineAt,os as commandLooksFinished,xn as commandsFromSegments,iE as compactValue,u as compareEvents,j_ as compileQuery,Cn as compileWake,BE as compressToolSpec,HE as compressToolSpecs,wE as compressionStats,$c as connectionFor,ip as connectionFromForm,NR as containment,wo as contentHash,mp as continuationNote,ed as continueList,ct as converge,na as createAccessLog,pa as createAdapterRegistry,uO as createAdaptiveToolPolicy,dn as createAnalyzerRegistry,sl as createAnswerBox,c as createAppender,Mr as createBlobStore,VT as createBoard,ST as createBudget,GS as createCallRunner,fa as createCitationCollector,cp as createControl,G_ as createKernel,Nr as createLogStore,U_ as createManifest,ur as createMemoryAdapter,uS as createModelHealth,wa as createModelRouter,Cr as createRegistry,eE as createResultStore,Ri as createRuleEngine,ml as createRunCache,vR as createSkillSourceRegistry,gA as createSpendMeter,zs as createStructuredStream,Jr as createToolGroupRegistry,mS as createToolLoopGuard,$i as createTriggerRegistry,Ua as createTurnRunner,as as createUtteranceGate,xi as createVault,Gn as createVoiceIntentRegistry,op as credentialEnv,wf as cssVarName,bI as dayBucket,Sf as decide,vc as decideRecruit,ZR as declaredAccess,ff as decryptBackup,AI as defaultLinkPolicy,y as defaultModelId,Kn as defaultVoiceIntents,vO as deferAttachedSources,ca as defineAdapter,nc as defineAgent,Tn as defineJob,Vl as defineJobPost,ka as defineLoop,An as defineMeetingAnalyzer,Ba as defineMiddleware,Ka as defineModel,Fl as defineProject,Ha as defineRouteStrategy,_i as defineRule,bs as defineSchema,xr as defineSearchEngine,bR as defineSkillSource,_T as defineTeam,Wr as defineToolGroup,Zi as defineTrigger,vn as defineVoiceIntent,JI as demd,OI as densityRibbon,L as dequeue,Qo as deriveBrief,qo as deriveBriefs,Di as deriveKey,vd as deriveMeetingTitle,ef as deriveTitle,Ec as describeAgent,yp as describeCall,tp as describeConnection,Qm as describeEngine,iT as describeRecipeForApproval,OT as describeRole,vs as describeSchema,aE as describeShape,Nl as describeSpend,Lp as describeTeamForApproval,t_ as describeTeamShape,HS as describeToolCall,mt as diffProposal,Ca as displayName,nd as docStats,LA as draftSeparator,Zo as driftedRefs,qE as dryRunRecipe,fp as dryRunTeam,ln as dueJobs,Nt as duplicateTitles,Lo as earnsBrief,bn as editDistance,he as editKey,om as effectiveGate,So as effectiveGrants,iS as effectiveToolName,ge as egoGraph,rl as emptyBoardState,Ul as emptyProjectRecord,_l as emptyRun,HA as enabledSkills,df as encryptBackup,bm as engineKey,jm as engineKeyOf,Sc as engineOf,Oe as engineOrder,Ym as engineRef,xc as engineRow,Fc as engineRows,x_ as engineStrip,yc as engineWorth,Os as entitiesFormat,Is as entitiesPrompt,Ms as entitiesStream,ki as entryMeta,LE as estimateTokens,kc as evaluatorPrompt,YE as expandRecipe,Z_ as expandReplacement,_A as expandSkillPrompt,js as explainMcpError,wp as extendDependents,xf as extractFilters,si as extractUrls,PS as failoverExhausted,za as failoverOrder,Nd as filterByTags,ga as filterEntries,J as filterNoteActions,kI as filterRecords,h as filterSections,De as filterTypoEdits,cE as findActionArgs,hE as findDispatchProvider,Hs as findJson,Q_ as findMatches,ee as findSkillByName,re as findTargetByName,lE as findTools,mE as findToolsResult,Ln as findWakeCommand,JT as findingsInstruction,tl as findingsOf,ym as fit,bT as fixedPlan,ol as foldBoard,kl as foldProject,Rl as foldRun,lf as forkConflict,Sa as formatBytes,W_ as formatReport,xt as formatSurvey,dd as formatTag,Od as formatTagQuery,gI as formatTalkTime,qt as formatTimestamp,Zt as formatTranscript,Gr as formatWeather,V as frameNoteAction,Hi as fromB64,mo as fuseRRF,tm as gateAllows,gO as getMcpProviders,kr as getWeather,rs as gistOpening,es as gistText,MA as goalDraftAllowed,fT as grantAllows,A_ as grantChoices,d_ as grantsFromChoices,Qr as grantsNeededFor,Le as graphStats,PA as groundingBlock,ZI as groupActionsByOwner,D as groupModels,GI as groupRecords,Qt as groupSegments,XI as hasInsights,cd as hasTag,Id as hasTagTerms,Bp as holdsGrants,Si as hostMatches,Of as identityCodec,bO as imageAttachmentsOf,rd as indentSelection,wI as insightKindOf,uA as instructionOnLine,hf as isActionable,Br as isAmbiguousLocation,Kd as isBetterTitleSource,R_ as isBuiltin,oS as isCacheable,If as isEncryptedBackup,$n as isFillerSentence,hd as isGenericTitle,NO as isInvalidToolParametersResult,vi as isLocked,RS as isLoopableTool,Ip as isModelUnavailable,Xs as isNothing,sI as isPro,C as isQueued,Yd as isRecordId,Fo as isRedactionToken,d as isRef,de as isResultHost,fl as isResumable,zR as isSafeSkillPath,ho as isSelfLabel,Tf as isSettled,US as isSourceGateError,PI as isSpeakerImageValue,qs as isStaleMcpSession,Mo as isSubjectCandidate,SI as isTeam,m as isValidEvent,fR as isValidMemory,Qd as isValidStoredRecord,Xt as isYouTubeUrl,Uc as jobApplications,Hp as jobFromSubtask,jl as jobPostFromForm,mm as jobResults,Jl as jobToRole,mn as jobsForEvent,Rm as jobsPrompt,Ma as lanesOf,$r as layoutFlowchart,uc as ledgerKey,cI as licenseFromPayload,fA as lineAt,O as linearize,Ut as linesFromItems,pt as linkClaims,Aa as linkifyCitations,mA as lintSkillPrompt,xe as lintText,Gi as lockedSummary,Gt as looksScanned,ia as makeAccessEvent,CE as makeDispatchProvider,Pm as makeEntry,ME as makeGroupDispatchExecutor,Mc as makeLedgerEntry,zd as makeRecordId,A as makeRef,ei as makeSourceStore,sa as makeStorageTier,ri as manifestText,QE as mapInput,xR as markUsed,CR as matchForForget,q_ as matchIndexFor,XA as matchSlashRecipe,VA as matchSlashSkill,JA as matchSlashTeam,_n as matchSummary,ud as matchesTagFilter,D_ as mcpDispatchProvider,cO as mcpInventorySystem,TO as mcpProvider,mO as mcpSharedSystem,K_ as meetDecisions,Ei as meetReach,tn as meetingEndedTrigger,VI as meetingInsights,on as meetingStartedTrigger,Bd as meetingTitlePrompt,PR as memoryBlock,IR as memoryKey,DR as memoryToolSystem,oe as mentionAnswerPrefix,gt as mentionsFrom,Ie as mergeEngineResults,Ve as mergeResearchLanes,$ as mergeSkillPrompt,nO as mergeStamped,Sp as mergeTranscript,sp as messagesFor,e_ as missingStarters,U as modelSummary,QI as momentBadge,Wn as monitorIntent,P as moveQueued,po as multiSearch,Dc as needForJob,qR as needsBridge,tS as needsConfirmation,pI as needsRecheck,lp as newSteps,ji as nextFireAt,qi as nextWakeAt,Nf as nodeCodec,gS as normModelName,ic as normalizeAgent,TT as normalizeBudget,Nc as normalizeCall,qc as normalizeConnection,km as normalizeEngine,Jm as normalizeEngineSpec,rm as normalizeGate,dT as normalizeGrants,GA as normalizeIntent,wl as normalizeJobPost,dR as normalizeMemory,Wm as normalizePolicy,xl as normalizeProject,Rt as normalizeRecord,At as normalizeRecords,bp as normalizeRequest,vm as normalizeScm,iA as normalizeSkill,Un as normalizeSpeech,jd as normalizeStoredRecord,Oo as normalizeSubject,ld as normalizeTag,md as normalizeTags,AT as normalizeTeam,_s as normalizeTopic,Rs as normalizeTopics,XS as normalizeUsage,vA as normalizeWriterPrefs,W as noteActionItems,X as noteActionLabel,Xn as noteIntent,YI as noteSectionKind,g_ as observeInbox,C_ as observeStrip,cn as occurrenceKey,Qi as occurrencesBetween,pE as oneLiner,WS as openAiTranscript,yi as openEntry,kt as orderLines,$R as originLabel,YR as originOf,ut as orphanRecords,ZA as outlineOf,_E as overlapRank,Qs as packageFromArgs,vt as pageTextFromItems,Hf as paletteFor,bt as paragraphsFromLines,nS as parallelEligible,Q as parseAgentMention,Yo as parseBriefText,Dn as parseClock,Pn as parseCommand,Fn as parseDuration,us as parseEntities,bc as parseEvaluation,XT as parseFindings,Zr as parseFlowchart,pm as parseJobs,J_ as parseJsonl,$A as parseListItem,qI as parseMeetingNotes,fI as parseMeetingText,yn as parseNumberWords,Pf as parseOmni,vT as parsePlan,$e as parsePlanTasks,Jd as parseRecordId,jn as parseRefinement,Zc as parseRemote,_m as parseReview,Z as parseSkillMention,lA as parseSkillVars,Js as parseStructured,Fs as parseSuggestions,fd as parseTagQuery,jt as parseTimedText,Hd as parseTitleResponse,ps as parseTopics,vr as parseWeather,hn as parseWhen,Vt as parseYouTubeUrl,g as pendingQueue,an as personJoinedTrigger,Na as phasesOf,nn as phraseTrigger,zt as pickCaptionTrack,fe as pickResults,tO as pickSections,Ya as pinnedOrderOf,tr as planAttribution,or as planBody,nI as planLabel,iI as planOf,rr as planParts,co as planQueries,Ze as planSectionSystem,Ef as planSync,er as planTitleFor,ES as planToolRound,GT as plannerPrompt,Rc as poolFor,Ja as preferenceFor,gl as priorWorkFor,la as projectChain,yl as projectFromForm,bl as projectProgress,x as promoteQueued,Zp as promoteRoles,Fa as promptEntries,Kc as proposalFromNeeds,Bc as proposalToAgent,Et as propose,FR as pruneMemories,Sn as questionTrigger,ie as rankLinkTargets,we as rankResearchCards,Po as rankSubjects,nr as reachRank,sr as reachSatisfies,ti as readSource,zl as readyJobs,LR as recall,WA as recipeInvocationText,jE as recipeParams,tT as recipeToolProvider,aT as recipeToolSpec,gR as reconcile,Fr as reconcileEngines,wc as recruitEvents,Gc as recruitForRun,Vc as recruitJob,aa as redactAccessArgs,ft as redactedTokensIn,It as redactionCost,Zn as refineSpokenCommand,Yn as refinementFormat,zn as refinementPrompt,Qn as refinementStream,lt as reject,wn as reminderIntent,_d as removeTag,yO as renderContent,eo as renderFlowchartSvg,RI as renderMarkdown,Vs as repairJson,eR as replaceAll,rR as replaceAllInRange,$_ as replaceMatch,X_ as replay,Xa as requirementsFor,Wa as requirementsForStep,Ke as researchRelevance,He as researchSnippet,LO as resetMcp,f as resolveRef,Ff as resolveSince,Co as resolveSubjects,lc as resolveTeam,Wf as resolveTheme,Ks as responseFormat,nE as resultToolSpec,dp as resumeTeam,Am as reviewPrompt,ws as rewriteJson,Se as roleById,T_ as roleCardId,i_ as rosterRows,cm as roundBudget,KS as roundCap,Tm as roundJobs,cS as roundSignature,hc as routeFor,Ta as routeGraph,me as routeTeam,vI as rowTime,Al as runFromEvents,L_ as runLanes,ZE as runPlan,Em as runProject,$E as runRecipe,oE as runResultQuery,Ml as runState,Ap as runTeam,TS as runToolRound,vS as runTurnLoop,LS as runWithFailover,ve as salientTerms,qa as sameModelKey,eA as sameSkillOrigin,Ad as sameTags,ts as sameUtterance,Vn as scheduleIntent,IT as scmAllows,hi as sealEntry,bi as searchEntries,vE as searchResultsToText,Zd as searchTextFor,iO as sectionHash,oO as sectionValue,sd as selectionStats,qn as settleRefinement,Lm as sha256,rE as shieldToolResult,oi as shortUrl,Gd as shouldAutoTitle,Va as signalsFrom,uR as similarity,f_ as skillChoices,QR as skillFiles,QA as skillInvocationLabel,jA as skillInvocationOf,rA as skillIsStale,EA as skillVar,RA as skillVarGuidance,TA as skillVarPattern,YA as slashCommandInsert,wA as slashCommandItems,OR as slotOf,Tc as slugAgentId,UT as slugTeamName,rf as snippetOf,c_ as soloTeam,UI as sortRecords,yI as sortStamp,pO as sourceCitationSystem,yS as sourceGate,hS as sourceGuardFor,ai as sourceId,Ti as sourcePolicyFor,DS as sourcePolicySettings,li as sourceUrlsOf,da as sourcesFromToolText,Ct as spanningQuestions,NI as speakerBreakdown,xI as speakerLabeller,II as speakerStats,MI as speakerTimeline,ul as spendOf,P_ as spendRows,pS as stableToolCallKey,sf as stampOf,cc as starterAgents,$p as starterTeam,DT as starterTeams,wS as stepResultText,uf as streamCodec,yo as stripQualifiers,uo as subjectKey,No as subjectTokens,pA as substituteSkillVars,vp as subtaskFromRequest,gd as suggestExistingTags,Uo as suggestMerges,cA as suggestSkillVar,xs as suggestionsFormat,Ps as suggestionsPrompt,Ds as suggestionsStream,hm as summarize,gc as summarizeEngine,HI as summarySections,Te as supportsSubagents,Lt as surveyCorpus,rt as synthesisPrompt,Md as tagFacets,Cd as tagsSearchText,Gp as takeUp,Kp as takeUpLine,Vp as taskTree,lm as teamForRound,yT as teamFromForm,r_ as teamHealth,zA as teamInvocationText,Qp as teamLanes,jp as teamLine,o_ as teamShape,Mp as teamToolProvider,gp as teamToolSpec,Cp as teamToolTimeoutMs,p_ as teamsWithSolos,CO as testMcpServer,Xf as themeStylesheet,Xp as threadRows,xa as threadTitle,ha as threadTree,Pa as threadsOf,Pt as thresholdSweep,TI as tierFor,qm as tierOf,Yt as timedTextUrl,Hn as timerIntent,rn as timerTrigger,bd as titleFromDate,kd as titleFromParticipants,yd as titleFromSummary,Ud as titleFromTopics,Bi as toB64,zT as toBriefClaims,UO as toChatMessages,Vf as toCssVars,$d as toIndexEntry,Gs as toJsonSchema,z_ as toJsonl,Rr as toModelSchema,Ar as toModelSchemas,kO as toMultimodalMessages,qd as toSearchRecord,td as toggleLinePrefix,id as toggleLink,Rd as toggleTag,ad as toggleTask,od as toggleWrap,kn as tokenize,_S as toolMadeProgress,jr as toolNeedFor,RO as toolStatus,$s as toolTraits,Ge as topicTerms,sn as topicTrigger,cs as topicsFormat,ms as topicsPrompt,ls as topicsSchema,As as topicsStream,aS as traitsIndex,ea as transcriptFromTracks,Y as triggerQueryAt,VE as trimDescription,Ce as trimGraph,jR as trustOf,Da as turnsOf,Bs as unfence,Fi as unlockVault,Ae as unwrapRedirect,Tr as upcast,lr as upcastAll,hR as upcastMemory,tA as upcastSkill,aA as upcastSkills,m_ as upsertAgents,lT as usageOf,NE as validateAction,ac as validateAgent,ET as validateBudget,cr as validateCapability,Qc as validateConnection,zm as validateEngineSpec,Ui as validateEntry,l as validateEvent,em as validateGate,pr as validateInvocation,Hl as validateJobPost,Pl as validateProject,zE as validateRecipe,Yi as validateSchedule,oA as validateSkill,RT as validateTeam,oo as validateView,to as validateViewInvocation,no as validateWidget,so as validateWidgetMessage,dO as vaultWidgetSystem,Dm as verifyAttested,xm as verifyChain,mI as verifyEntitlement,Jt as videoMetaFromPlayerResponse,ao as viewResult,Mt as vocabularyDrift,En as voiceCommandTrigger,Ot as wantedPages,Df as wantsModel,fO as wantsVaultGuidance,KT as waves,DO as weatherToolProvider,br as weatherUrl,Be as webQuery,GE as webSearchToolProvider,a_ as whereItWorks,AO as widgetAuthoringSystem,Eo as widgetIcon,ae as wikiQueryAt,dt as wikilinksIn,Sl as withBoardTool,gE as withGuidance,tE as withResultShield,cl as withRunCache,GO as withSourceTool,BS as withToolSystem,lI as withinFreeLimit,kS as withinReach,of as wordCount,Fe as wordDiff,hp as workLogEvidence,Fp as workLogFor,Dp as workLogText,rp as worktreeDirFor,IA as writerAffordance,xA as writerRequest,CA as writerTail};
1
+ import{CURRENT_VERSION as o,EVENT_TYPES as t,ALL_TYPES as a,ACTOR_KINDS as i,SCOPE_KINDS as n,CLASSES as s,EFFECTS as S,EGRESS as E,EventError as l,validateEvent as T,isValidEvent as m,createAppender as c}from"./event.js";import{REF_KINDS as _,RESOLUTION as R,makeRef as A,isRef as d,resolveRef as f}from"./ref.js";import{linearize as I,compareEvents as u,causesAreWellFormed as N}from"./order.js";import{pendingQueue as g,isQueued as C,dequeue as L,moveQueued as P,promoteQueued as x}from"./queue.js";import{groupModels as F,filterSections as h,defaultModelId as y,modelSummary as U}from"./model-picker.js";import{NOTE_ACTIONS as b,NOTE_ACTION_ORDER as v,NOTE_ACTION_TEMPERATURE as G,NOTE_ACTION_ERRORS as K,NOTE_COMMANDS as B,NOTE_COMMAND_TEMPERATURE as H,NOTE_COMMAND_MAX_TOKENS as w,frameNoteAction as V,noteActionLabel as X,noteActionItems as W,filterNoteActions as J,commandLineAt as Y,triggerQueryAt as z}from"./note-actions.js";import{parseAgentMention as Q,agentMentionAt as q,parseSkillMention as Z,mergeSkillPrompt as $,findSkillByName as ee,findTargetByName as re,mentionAnswerPrefix as oe}from"./note-mentions.js";import{wikiQueryAt as ae,rankLinkTargets as ie}from"./note-links.js";import{SWARM_ROLES as se,roleById as Se,classifyModel as Ee,supportsSubagents as le,appoint as Te,routeTeam as me}from"./cowriter-router.js";import{SEARCH_ENGINES as pe,RESULTS_PER_ENGINE as _e,buildSearchUrl as Re,unwrapRedirect as Ae,isResultHost as de,pickResults as fe,mergeEngineResults as Oe,engineOrder as Ie}from"./web-search.js";import{MAX_GRAPH_NODES as Ne,buildNoteGraph as Me,egoGraph as ge,trimGraph as Ce,graphStats as Le}from"./note-graph.js";import{lintText as xe,wordDiff as De,filterTypoEdits as Fe,editKey as he,applyEdits as ye,COWRITER_SYSTEM as Ue,COWRITER_TEMPERATURE as ke}from"./cowriter.js";import{salientTerms as ve,topicTerms as Ge,researchRelevance as Ke,webQuery as Be,researchSnippet as He,rankResearchCards as we,mergeResearchLanes as Ve}from"./note-research.js";import{PLAN_ROLES as We,PLAN_AUTHORS as Je,PLAN_DECOMPOSE_SYSTEM as Ye,PLAN_DECOMPOSE_MAX_TOKENS as ze,PLAN_DECOMPOSE_TEMPERATURE as je,PLAN_SECTION_MAX_TOKENS as Qe,PLAN_SECTION_TEMPERATURE as qe,planSectionSystem as Ze,parsePlanTasks as $e,planTitleFor as er,planParts as rr,planBody as or,planAttribution as tr}from"./note-plan.js";import{REACH as ir,reachRank as nr,reachSatisfies as sr}from"./reach.js";import{UPCASTERS as Er,upcast as lr,upcastAll as Tr}from"./upcast.js";import{validateCapability as cr,validateInvocation as pr,canSatisfy as _r,toModelSchema as Rr,toModelSchemas as Ar}from"./capability.js";import{checkInvariants as fr,INVARIANTS as Or}from"./invariants.js";import{createMemoryAdapter as ur,createLogStore as Nr,createBlobStore as Mr}from"./store.js";import{createRegistry as Cr,REGISTRY_STATES as Lr}from"./registry.js";import{defineSearchEngine as xr,reconcileEngines as Dr,attemptOrder as Fr,ENGINE_KINDS as hr,SearchEngineError as yr}from"./search-engines.js";import{getWeather as kr,weatherUrl as br,parseWeather as vr,formatWeather as Gr,areaLabel as Kr,isAmbiguousLocation as Br,WEATHER_HOST as Hr,WEATHER_TIMEOUT_MS as wr,WeatherError as Vr}from"./weather.js";import{defineToolGroup as Wr,createToolGroupRegistry as Jr,ToolGroupError as Yr}from"./tool-groups.js";import{toolNeedFor as jr,grantsNeededFor as Qr}from"./tool-need.js";import{parseFlowchart as Zr,layoutFlowchart as $r,renderFlowchartSvg as eo}from"./flowchart.js";import{validateView as oo,validateViewInvocation as to,viewResult as ao}from"./view.js";import{validateWidget as no,validateWidgetMessage as so,effectiveGrants as So,widgetIcon as Eo,WIDGET_SURFACES as lo}from"./widget.js";import{fuseRRF as mo,planQueries as co,multiSearch as po}from"./rrf.js";import{SUBJECT_KINDS as Ro,DEFAULT_THRESHOLD as Ao,MAX_SUBJECTS as fo,MAX_SUBJECT_CHARS as Oo,normalizeSubject as Io,subjectKey as uo,subjectTokens as No,isSubjectCandidate as Mo,aliasMap as go,resolveSubjects as Co,earnsBrief as Lo,rankSubjects as Po,REDACTION_TOKEN_TYPES as xo,isRedactionToken as Do,SELF_LABELS as Fo,isSelfLabel as ho,stripQualifiers as yo,suggestMerges as Uo}from"./entity.js";import{BRIEF_STATES as bo,CLAIM_KINDS as vo,MAX_CLAIMS as Go,MAX_CLAIM_REFS as Ko,MAX_BRIEF_RECORDS as Bo,MAX_BRIEF_CHARS as Ho,contentHash as wo,briefId as Vo,briefToText as Xo,briefTerms as Wo,briefLinks as Jo,checkKnowledgeInvariants as Yo,parseBriefText as zo}from"./knowledge.js";import{deriveBrief as Qo,deriveBriefs as qo,driftedRefs as Zo}from"./knowledge-derive.js";import{SYNTHESIS_SCHEMA as et,synthesisPrompt as rt,claimsFromSynthesis as ot,MAX_SYNTHESIS_CLAIMS as tt,MAX_EXCERPTS as at,MAX_EXCERPT_CHARS as it}from"./synthesis.js";import{PROPOSAL_STATES as st,SUPERSEDE_OVERLAP as St,propose as Et,accept as lt,reject as Tt,diffProposal as mt,converge as ct,linkClaims as pt}from"./promotion.js";import{normalizeRecord as Rt,normalizeRecords as At,wikilinksIn as dt,redactedTokensIn as ft,redactionCost as Ot,wantedPages as It,orphanRecords as ut,duplicateTitles as Nt,vocabularyDrift as Mt,mentionsFrom as gt,spanningQuestions as Ct,surveyCorpus as Lt,thresholdSweep as Pt,formatSurvey as xt,NEAR_TITLE_DISTANCE as Dt,SPAN_MIN_TERMS as Ft}from"./curate.js";import{PDF_MAX_CHARS as yt,linesFromItems as Ut,orderLines as kt,paragraphsFromLines as bt,pageTextFromItems as vt,looksScanned as Gt,buildPdfDocument as Kt}from"./pdf-layout.js";import{YOUTUBE_HOSTS as Ht,TRANSCRIPT_MAX_CHARS as wt,parseYouTubeUrl as Vt,isYouTubeUrl as Xt,captionTracksFromPlayerResponse as Wt,videoMetaFromPlayerResponse as Jt,pickCaptionTrack as Yt,timedTextUrl as zt,parseTimedText as jt,groupSegments as Qt,formatTimestamp as qt,formatTranscript as Zt,buildTranscriptDocument as $t,transcriptFromTracks as ea}from"./media-transcript.js";import{ACCESS_LOG_VERSION as oa,ACCESS_LOG_MAX as ta,redactAccessArgs as aa,makeAccessEvent as ia,createAccessLog as na,makeStorageTier as sa,formatBytes as Sa}from"./observability.js";import{routeGraph as la,projectChain as Ta}from"./route-graph.js";import{defineAdapter as ca,createAdapterRegistry as pa,AdapterError as _a}from"./adapters.js";import{linkifyCitations as Aa,sourcesFromToolText as da,createCitationCollector as fa,RETRIEVAL_TOOLS as Oa}from"./citations.js";import{buildTrajectory as ua,phasesOf as Na,lanesOf as Ma,filterEntries as ga,displayName as Ca,ENTRY_KINDS as La,threadsOf as Pa,threadTitle as xa,promptEntries as Da,turnsOf as Fa,threadTree as ha}from"./trajectory.js";import{createTurnRunner as Ua,defineLoop as ka,LOOP_KINDS as ba,LoopError as va}from"./loop.js";import{defineModel as Ka,defineMiddleware as Ba,defineRouteStrategy as Ha,createModelRouter as wa,signalsFrom as Va,requirementsFor as Xa,requirementsForStep as Wa,preferenceFor as Ja,failoverOrder as Ya,pinnedOrderOf as za,FAILOVER_CLASS_GAP as ja,FAILOVER_CAPABILITY_GAP as Qa,sameModelKey as qa,RouterError as Za}from"./router.js";import{makeSourceStore as ei,manifestText as ri,shortUrl as oi,readSource as ti,sourceId as ai}from"./sources-retrieval.js";import{classifySource as ni,extractUrls as si,hostMatches as Si,meetReach as Ei,sourcePolicyFor as li,sourceUrlsOf as Ti,DEFAULT_INTERNAL_PATTERNS as mi,INTERNAL_PATTERN_CATALOG as ci}from"./sources.js";import{defineRule as _i,createRuleEngine as Ri,SUPPRESSED as Ai,RuleError as di}from"./rules.js";import{VAULT_VERSION as Oi,KDF_ITERATIONS as Ii,KDF_HASH as ui,DEFAULT_LOCK_MS as Ni,VaultError as Mi,MAX_TITLE_CHARS as gi,MAX_NOTE_CHARS as Ci,MAX_SECRET_CHARS as Li,MAX_ENTRIES as Pi,createVault as xi,unlockVault as Di,deriveKey as Fi,sealEntry as hi,openEntry as yi,validateEntry as Ui,entryMeta as ki,searchEntries as bi,isLocked as vi,lockedSummary as Gi,canAddEntry as Ki,toB64 as Bi,fromB64 as Hi}from"./vault.js";import{SCHEDULE_KINDS as Vi,TRIGGER_KINDS as Xi,JOB_ACTIONS as Wi,MISSED_POLICIES as Ji,ScheduleError as Yi,validateSchedule as zi,nextFireAt as ji,occurrencesBetween as Qi,nextWakeAt as qi,defineTrigger as Zi,createTriggerRegistry as $i,BUILTIN_TRIGGERS as en,timerTrigger as rn,meetingStartedTrigger as on,meetingEndedTrigger as tn,personJoinedTrigger as an,phraseTrigger as nn,topicTrigger as sn,questionTrigger as Sn,voiceCommandTrigger as En,defineJob as ln,dueJobs as Tn,jobsForEvent as mn,occurrenceKey as cn,clipText as pn,matchSummary as _n}from"./schedule.js";import{defineMeetingAnalyzer as An,createAnalyzerRegistry as dn,CADENCES as fn,AnalyzerError as On}from"./meeting-analyzers.js";import{DEFAULT_WAKE as un,MAX_COMMANDS_PER_DELTA as Nn,DAYPART_HOUR as Mn,VoiceIntentError as gn,compileWake as Cn,findWakeCommand as Ln,parseCommand as Pn,commandsFromSegments as xn,parseDuration as Dn,parseClock as Fn,parseWhen as hn,parseNumberWords as yn,normalizeSpeech as Un,tokenize as kn,editDistance as bn,defineVoiceIntent as vn,createVoiceIntentRegistry as Gn,defaultVoiceIntents as Kn,BUILTIN_VOICE_INTENTS as Bn,timerIntent as Hn,reminderIntent as wn,scheduleIntent as Vn,noteIntent as Xn,monitorIntent as Wn,REFINEMENT_SCHEMA as Jn,refinementPrompt as Yn,refinementFormat as zn,parseRefinement as jn,refinementStream as Qn,settleRefinement as qn,refineSpokenCommand as Zn,isFillerSentence as $n,gistText as es,gistOpening as rs,commandLooksFinished as os,sameUtterance as ts,createUtteranceGate as as,UTTERANCE_SETTLE_MS as is,UTTERANCE_DANGLING_MS as ns}from"./voice-intents.js";import{MAX_TOPICS as Ss,MAX_TOPIC_CHARS as Es,TOPICS_SCHEMA as ls,topicsSchema as Ts,topicsPrompt as ms,topicsFormat as cs,parseTopics as ps,normalizeTopic as _s,normalizeTopics as Rs,topicsStream as As,ENTITY_TYPES as ds,ENTITIES_SCHEMA as fs,entitiesPrompt as Os,entitiesFormat as Is,parseEntities as us,coerceEntities as Ns,entitiesStream as Ms,MAX_SUGGESTIONS as gs,MAX_SUGGESTION_CHARS as Cs,SUGGESTIONS_SCHEMA as Ls,suggestionsPrompt as Ps,suggestionsFormat as xs,parseSuggestions as Ds,suggestionsStream as Fs}from"./extraction.js";import{FIELD_TYPES as ys,RESPONSE_MODES as Us,StructuredError as ks,defineSchema as bs,describeSchema as vs,toJsonSchema as Gs,responseFormat as Ks,unfence as Bs,findJson as Hs,rewriteJson as ws,repairJson as Vs,isNothing as Xs,coerce as Ws,parseStructured as Js,createStructuredStream as Ys}from"./structured.js";import{explainMcpError as js,packageFromArgs as Qs,isStaleMcpSession as qs}from"./mcp-errors.js";import{toolTraits as $s,bareToolName as eS,canRunConcurrently as rS,isCacheable as oS,needsConfirmation as tS,traitsIndex as aS,effectiveToolName as iS,parallelEligible as nS,PARALLEL_LOCAL_RE as sS}from"./tool-traits.js";import{planToolRound as ES,runToolRound as lS}from"./tool-round.js";import{createToolLoopGuard as mS,roundSignature as cS,stableToolCallKey as pS,toolMadeProgress as _S,isLoopableTool as RS,blockedToolResult as AS,OBSERVATION_TOOLS as dS,INPUT_PROGRESS_TOOLS as fS}from"./tool-loop-guard.js";import{classifyFailure as IS,createModelHealth as uS,COOLDOWN_MS as NS,UNAVAILABLE_REASONS as MS,normModelName as gS}from"./model-health.js";import{runWithFailover as LS,failoverExhausted as PS,FAILOVER_MAX_ATTEMPTS as xS}from"./failover.js";import{sourcePolicySettings as FS,sourceGuardFor as hS,sourceGate as yS,isSourceGateError as US,withinReach as kS}from"./source-gate.js";import{runTurnLoop as vS,createCallRunner as GS,roundCap as KS,withToolSystem as BS,describeCall as HS,stepResultText as wS,addUsage as VS,normalizeUsage as XS,openAiTranscript as WS,anthropicTranscript as JS,DEFAULT_MAX_ROUNDS as YS,DEFAULT_MAX_FINISH_TRIES as zS,FINISH_NUDGES as jS,LOOPING_NUDGE as QS,EXHAUSTED_NOTE as qS,ROUND_SEPARATOR as ZS}from"./turn-loop.js";import{createResultStore as eE,shieldToolResult as rE,runResultQuery as oE,withResultShield as tE,describeShape as aE,compactValue as iE,resultToolSpec as nE,RESULT_TOOL_NAME as sE,DEFAULT_SHIELD as SE,DEFAULT_STORE as EE}from"./tool-result.js";import{findTools as TE,findToolsResult as mE,findActionArgs as cE,oneLiner as pE,overlapRank as _E,FIND_ACTION as RE}from"./tool-discovery.js";import{buildToolset as dE}from"./toolset.js";import{DESCRIBE_ACTION as OE,actionMenu as IE,buildGroupDispatchSpec as uE,validateAction as NE,makeGroupDispatchExecutor as ME,withGuidance as gE,makeDispatchProvider as CE,estimateTokens as LE}from"./tool-dispatch.js";import{FIND_TOOL_NAME as xE,FIND_DESCRIPTION as DE,FIND_RESIDENT as FE,findDispatchProvider as hE}from"./find-tool.js";import{WEB_SEARCH_TOOL_NAME as UE,WEB_SEARCH_TOOL_SYSTEM as kE,WEB_SEARCH_SPEC as bE,searchResultsToText as vE,webSearchToolProvider as GE}from"./web-search-tool.js";import{compressToolSpec as BE,compressToolSpecs as HE,compressionStats as wE,trimDescription as VE,COMPRESSION_MODES as XE,DEFAULT_COMPRESSION as WE}from"./tool-schema.js";import{validateRecipe as YE,expandRecipe as zE,recipeParams as jE,mapInput as QE,dryRunRecipe as qE,runPlan as ZE,runRecipe as $E,RecipeError as el,RECIPE_MODES as rl}from"./recipe.js";import{recipeToolProvider as tl,recipeToolSpec as al,describeRecipeForApproval as il,RECIPE_TOOL_NAME as nl}from"./recipe-tool.js";import{createBudget as Sl,validateBudget as El,normalizeBudget as ll,usageOf as Tl,BudgetError as ml,BUDGET_DIMENSIONS as cl}from"./budget.js";import{defineTeam as _l,validateTeam as Rl,normalizeTeam as Al,normalizeGrants as dl,grantAllows as fl,scmAllows as Ol,describeRole as Il,TeamError as ul,ROLE_MODES as Nl,MERGE_POLICIES as Ml,PLAN_MODES as gl,GRANTABLE as Cl,WORK_GRANTS as Ll,GRANT_RE as Pl,AGENT_REF_RE as xl,STARTER_TEAMS as Dl,starterTeams as Fl,blankTeam as hl,teamFromForm as yl,slugTeamName as Ul}from"./team.js";import{fixedPlan as bl,parsePlan as vl,plannerPrompt as Gl,waves as Kl,breakCycles as Bl,TEAM_PLAN_SCHEMA as Hl}from"./team-plan.js";import{createBoard as Vl,parseFindings as Xl,boardText as Wl,findingsInstruction as Jl,toBriefClaims as Yl,FINDINGS_SCHEMA as zl,FINDING_KINDS as jl,THREAD_KINDS as Ql,THREAD_STATUSES as ql,POST_KINDS as Zl,POST_STATUSES as $l,ASK_TYPES as eT,emptyBoardState as rT,foldBoard as oT,findingsOf as tT}from"./team-board.js";import{boardToolProvider as iT,boardToolSpec as nT,createAnswerBox as sT,withBoardTool as ST,BOARD_TOOL_NAME as ET,DEFAULT_ASK_TIMEOUT_MS as lT}from"./board-tool.js";import{createRunCache as mT,withRunCache as cT}from"./team-cache.js";import{emptyRun as _T,foldRun as RT,runFromEvents as AT,checkpointFrom as dT,isResumable as fT,LIVE_RUN_STATUSES as OT,RESUMABLE_RUN_STATUSES as IT,spendOf as uT,describeSpend as NT,runState as MT,priorWorkFor as gT,STALLED_AFTER_MS as CT}from"./team-record.js";import{validateProject as PT,normalizeProject as xT,defineProject as DT,canTransition as FT,blankProject as hT,projectFromForm as yT,emptyProjectRecord as UT,foldProject as kT,projectProgress as bT,ProjectError as vT,PROJECT_STATUSES as GT,PROJECT_ID_RE as KT}from"./project.js";import{validateJob as HT,normalizeJob as wT,defineJob as VT,canTransition as XT,applyAll as WT,jobToRole as JT,readyJobs as YT,blankJob as zT,jobFromForm as jT,JobError as QT,JOB_STATUSES as qT,JOB_ID_RE as ZT}from"./job.js";import{validateGate as em,normalizeGate as rm,effectiveGate as om,gateAllows as tm,DEFAULT_GATE as am,AUTONOMY as im,HUMAN_FLAGS as nm,CHECKS as sm}from"./gate.js";import{runProject as Em,roundJobs as lm,teamForRound as Tm,jobResults as mm,roundBudget as cm,parseJobs as pm,parseReview as _m,jobsPrompt as Rm,reviewPrompt as Am,PROJECT_JOBS_SCHEMA as dm,PROJECT_REVIEW_SCHEMA as fm,ProjectRunError as Om,EXECUTIVE as Im,MAX_JOBS_PER_ROUND as um,MAX_ROUNDS as Nm,PROJECT_RUN_STATUSES as Mm}from"./project-run.js";import{canonical as Cm,sha256 as Lm,makeEntry as Pm,verifyChain as xm,attest as Dm,verifyAttested as Fm,summarize as hm,fit as ym,adjustSummary as Um,normalizeEngine as km,engineKey as bm,normalizeScm as vm,SCORECARD_ENTRY_KINDS as Gm,ROLE_KINDS as Km,SCORECARD_VERSION as Bm,ENGINE_KINDS as Hm}from"./scorecard.js";import{ENGINE_KINDS as Vm,ROUTE_PREFERS as Xm,normalizePolicy as Wm,normalizeEngineSpec as Jm,validateEngineSpec as Ym,engineRef as zm,engineKeyOf as jm,describeEngine as Qm,tierOf as qm}from"./engine.js";import{AGENT_ID_RE as $m,APPLIES_TO as ec,EGRESS_CLASSES as rc,ASSISTANT_ID as oc,AgentError as tc,validateAgent as ac,normalizeAgent as ic,defineAgent as nc,assistantAgent as sc,engineOf as Sc,describeAgent as Ec,slugAgentId as lc,resolveTeam as Tc,STARTER_AGENTS as mc,starterAgents as cc,blankAgent as pc,agentFromForm as _c,poolFor as Rc}from"./agent.js";import{LEDGER_VERSION as dc,LEDGER_ENTRY_KINDS as fc,DECLINE_REASONS as Oc,WITHDRAW_AFTER as Ic,ledgerKey as uc,normalizeCall as Nc,makeLedgerEntry as Mc,summarizeEngine as gc}from"./model-ledger.js";import{RECRUIT_SCHEMA as Lc,MIN_FIT as Pc,engineRow as xc,engineRows as Dc,needForJob as Fc,routeFor as hc,engineWorth as yc,applications as Uc,evaluatorPrompt as kc,parseEvaluation as bc,decide as vc,recruitForRun as Gc,proposalFromNeeds as Kc,proposalToAgent as Bc,carveBudget as Hc,recruitEvents as wc,recruitJob as Vc}from"./recruit.js";import{DEFAULT_MIN_CALLS as Wc,cardOverride as Jc,applyCard as Yc}from"./model-candidates.js";import{SCM_KINDS as jc,validateConnection as Qc,normalizeConnection as qc,parseRemote as Zc,connectionFor as $c,branchFor as ep,worktreeDirFor as rp,credentialEnv as op,describeConnection as tp,blankConnection as ap,connectionFromForm as ip}from"./scm-connection.js";import{messagesFor as sp,mergeTranscript as Sp,clipTranscript as Ep,clipMessage as lp,newSteps as Tp,continuationNote as mp,createControl as cp,STEP_MAX_CHARS as pp,TASK_TRANSCRIPT_MAX_CHARS as _p}from"./team-task.js";import{runTeam as Ap,resumeTeam as dp,dryRunTeam as fp,isModelUnavailable as Op,TeamRunError as Ip,RUN_STATUSES as up}from"./team-run.js";import{teamToolProvider as Mp,teamToolSpec as gp,teamToolTimeoutMs as Cp,describeTeamForApproval as Lp,TEAM_TOOL_NAME as Pp}from"./team-tool.js";import{workLogFor as Dp,workLogText as Fp,workLogEvidence as hp,describeCall as yp,WORKLOG_KINDS as Up}from"./team-worklog.js";import{normalizeRequest as bp,subtaskFromRequest as vp,takeUp as Gp,takeUpLine as Kp,holdsGrants as Bp,jobFromSubtask as Hp,extendDependents as wp,taskTree as Vp,threadRows as Xp,MAX_SUBTASKS as Wp,MAX_DEPTH as Jp,MIN_TAKEUP_FIT as Yp}from"./team-subtask.js";import{teamLine as jp,teamLanes as Qp}from"./team-trail.js";import{promoteRoles as Zp,starterTeam as $p,missingStarters as e_,teamHealth as r_,teamShape as o_,describeTeamShape as t_,whereItWorks as a_,rosterRows as i_,agentKind as n_,agentHue as s_,agentColor as S_,agentInitials as E_,roleCardId as l_,cardNumbers as T_,upsertAgents as m_,soloTeam as c_,teamsWithSolos as p_,builtinOrg as __,isBuiltin as R_,grantChoices as A_,grantsFromChoices as d_,skillChoices as f_,GRANT_INFO as O_,SOLO_BUDGET as I_,TEAM_SHAPES as u_,ROSTER_KINDS as N_}from"./team-org.js";import{observeInbox as g_,observeStrip as C_,runLanes as L_,spendRows as P_,engineStrip as x_}from"./team-observe.js";import{mcpDispatchProvider as F_,MCP_TOOL_NAME as h_}from"./mcp-dispatch.js";import{createManifest as U_,ManifestError as k_,SOURCES as b_}from"./manifest.js";import{createKernel as G_,meetDecisions as K_,KernelError as B_,REQUIRED_PLUGINS as H_,ALLOW_ALL as w_}from"./kernel.js";import{replay as X_,formatReport as W_,parseJsonl as J_,toJsonl as Y_}from"./harness.js";import{compileQuery as j_,findMatches as Q_,matchIndexFor as q_,expandReplacement as Z_,replaceMatch as $_,replaceAll as eR,replaceAllInRange as rR,MAX_MATCHES as oR}from"./text-search.js";import{DATA_SCOPES as aR}from"./scopes.js";import{MEMORY_VERSION as nR,MEMORY_KINDS as sR,MEMORY_KIND_NAMES as SR,AMBIENT_KINDS as ER,MAX_MEMORY_CHARS as lR,MIN_MEMORY_CHARS as TR,DEFAULT_MAX_MEMORIES as mR,DEFAULT_BLOCK_CHARS as cR,SAME_FACT as pR,MEMORY_TOOL_SPEC as _R,MEMORY_UPCASTERS as RR,MemoryError as AR,normalizeMemory as dR,isValidMemory as fR,memoryKey as OR,slotOf as IR,similarity as uR,containment as NR,candidatesFrom as MR,reconcile as gR,matchForForget as CR,recall as LR,memoryBlock as PR,markUsed as xR,pruneMemories as DR,memoryToolSystem as FR,upcastMemory as hR}from"./memory.js";import{SOURCE_TRUST as UR,SkillSourceError as kR,defineSkillSource as bR,createSkillSourceRegistry as vR}from"./skill-sources.js";import{SKILL_MANIFEST_VERSION as KR,SKILL_CONTEXTS as BR,SKILL_HISTORY_SCOPES as HR,SKILL_MCP_MODES as wR,SKILL_TRUST as VR,SKILL_FILE_KINDS as XR,SKILL_UPCASTERS as WR,SkillManifestError as JR,isSafeSkillPath as YR,originOf as zR,trustOf as jR,skillFiles as QR,needsBridge as qR,declaredAccess as ZR,originLabel as $R,sameSkillOrigin as eA,skillIsStale as rA,validateSkill as oA,upcastSkill as tA,upcastSkills as aA,normalizeSkill as iA}from"./skill-manifest.js";import{SKILL_VARS as sA,SKILL_VAR_NAMES as SA,skillVar as EA,skillVarPattern as lA,parseSkillVars as TA,lintSkillPrompt as mA,suggestSkillVar as cA,substituteSkillVars as pA,expandSkillPrompt as _A,skillVarGuidance as RA,SkillVarError as AA}from"./skill-vars.js";import{lineAt as fA,writerAffordance as OA,INSTRUCTION_RE as IA,instructionOnLine as uA,GOAL_MIN_NEW as NA,goalDraftAllowed as MA,createSpendMeter as gA,writerTail as CA,draftSeparator as LA,groundingBlock as PA,writerRequest as xA,AUTOCOMPLETE_SYSTEM as DA,AUTOCOMPLETE_MAX_TOKENS as FA,AUTOCOMPLETE_TEMPERATURE as hA,clipCompletion as yA,GEARS as UA,WRITER_PREFS as kA,WRITER_PREF_DEFAULTS as bA,normalizeWriterPrefs as vA,normalizeIntent as GA}from"./cowriter-writer.js";import{SLASH_TYPING_RE as BA,enabledSkills as HA,slashCommandItems as wA,matchSlashSkill as VA,matchSlashRecipe as XA,recipeInvocationText as WA,matchSlashTeam as JA,teamInvocationText as YA,slashCommandInsert as zA,skillInvocationOf as jA,skillInvocationLabel as QA}from"./slash-commands.js";import{outlineOf as ZA,parseListItem as $A,continueList as ed,indentSelection as rd,toggleWrap as od,toggleLinePrefix as td,toggleTask as ad,toggleLink as id,docStats as nd,selectionStats as sd}from"./markdown-authoring.js";import{MAX_TAG_LENGTH as Ed,MAX_TAGS as ld,normalizeTag as Td,normalizeTags as md,hasTag as cd,addTag as pd,removeTag as _d,toggleTag as Rd,sameTags as Ad,formatTag as dd,parseTagQuery as fd,hasTagTerms as Od,formatTagQuery as Id,matchesTagFilter as ud,filterByTags as Nd,tagFacets as Md,suggestExistingTags as gd,tagsSearchText as Cd}from"./tags.js";import{UNTITLED_MEETING as Pd,MAX_TITLE_LENGTH as xd,TITLE_RULES_VERSION as Dd,cleanTitle as Fd,isGenericTitle as hd,titleFromSummary as yd,titleFromTopics as Ud,titleFromParticipants as kd,titleFromDate as bd,deriveMeetingTitle as vd,shouldAutoTitle as Gd,isBetterTitleSource as Kd,meetingTitlePrompt as Bd,parseTitleResponse as Hd}from"./titles.js";import{RECORD_KINDS as Vd,MAX_TITLE_LEN as Xd,LibraryError as Wd,parseRecordId as Jd,makeRecordId as Yd,isRecordId as zd,normalizeStoredRecord as jd,isValidStoredRecord as Qd,toSearchRecord as qd,searchTextFor as Zd,toIndexEntry as $d,deriveTitle as ef,snippetOf as rf,wordCount as of}from"./library.js";import{CLOCK_TOLERANCE_MS as af,SyncError as nf,stampOf as sf,decide as Sf,planSync as Ef,isSettled as lf,forkConflict as Tf,advanceBases as mf}from"./sync-plan.js";import{ENCRYPTED_TYPE as pf,COMPRESSIONS as _f,BackupError as Rf,KDF_ITERATIONS as Af,encryptBackup as df,decryptBackup as ff,isEncryptedBackup as Of,identityCodec as If,streamCodec as uf,nodeCodec as Nf,bestCodec as Mf}from"./backup-envelope.js";import{OMNI_MODES as Cf,OMNI_GRAMMAR as Lf,parseOmni as Pf,extractFilters as xf,resolveSince as Df,wantsModel as Ff,isActionable as hf}from"./omni.js";import{THEMES as Uf,LIGHT as kf,DARK as bf,PALETTES as vf,SHAPE as Gf,TOKEN_NAMES as Kf,TOKEN_ROLES as Bf,paletteFor as Hf,cssVarName as wf,toCssVars as Vf,themeStylesheet as Xf,resolveTheme as Wf}from"./theme.js";import{PLANS as Yf,API_BASE as zf,ENDPOINTS as jf,ENTITLEMENT_PUBLIC_JWK as Qf,UPGRADE_URL as qf,FEATURE_TIER as Zf,PRO_FEATURES as $f,TEAM_FEATURES as eO,FREE_LIMITS as rO,COUNTED as oO,freeCap as tO,observeSince as aO,RECHECK_INTERVAL_MS as iO,EntitlementError as nO,checkoutUrl as sO,planOf as SO,planLabel as EO,isPro as lO,isTeam as TO,can as mO,tierFor as cO,withinFreeLimit as pO,verifyEntitlement as _O,verifySignedToken as RO,licenseFromPayload as AO,needsRecheck as dO}from"./entitlement.js";import{renderMarkdown as OO,defaultLinkPolicy as IO}from"./markdown-render.js";import{parseMeetingText as NO,speakerStats as MO,densityRibbon as gO}from"./meeting-text.js";import{speakerBreakdown as LO,speakerTimeline as PO,formatTalkTime as xO,SPEAKER_SLOTS as DO}from"./meeting-shape.js";import{isSpeakerImageValue as hO,speakerLabeller as yO}from"./meeting-shape.js";import{SORT_MODES as kO,SORT_LABELS as bO,sortStamp as vO,sortRecords as GO,filterRecords as KO,dayBucket as BO,rowTime as HO,groupRecords as wO}from"./record-list.js";import{INSIGHT_KINDS as XO,summarySections as WO,insightKindOf as JO,meetingInsights as YO,hasInsights as zO}from"./meeting-insights.js";import{demd as QO,NOTE_SECTIONS as qO,noteSectionKind as ZO,MOMENT_BADGES as $O,momentBadge as eI,parseMeetingNotes as rI,groupActionsByOwner as oI}from"./meeting-insights.js";import{PREF_SECTIONS as aI,PREF_SECTION_IDS as iI,sectionValue as nI,pickSections as sI,applySections as SI,sectionHash as EI,mergeStamped as lI,changedSections as TI}from"./client-prefs.js";import{McpClient as cI,mcpProvider as pI}from"./mcp-client.js";import{mcpSharedSystem as RI,mcpInventorySystem as AI,sourceCitationSystem as dI,combineSystemPrompt as fI,toolStatus as OI,widgetAuthoringSystem as II,vaultWidgetSystem as uI,wantsVaultGuidance as NI}from"./tool-hints.js";import{adaptiveToolRetryHint as gI,createAdaptiveToolPolicy as CI,isInvalidToolParametersResult as LI}from"./adaptive-tool-policy.js";import{getMcpProviders as xI,testMcpServer as DI,resetMcp as FI}from"./mcp-manager.js";import{WEATHER_TOOL_NAME as yI,WEATHER_TOOL_SYSTEM as UI,weatherToolProvider as kI}from"./weather-tool.js";import{renderContent as vI,toChatMessages as GI,toMultimodalMessages as KI,imageAttachmentsOf as BI,deferAttachedSources as HI,withSourceTool as wI,SOURCE_TOOL_SPEC as VI}from"./context-attachments.js";import{PolicyError as WI,POLICY_VERSION as JI,POLICY_TOKEN_TYPE as YI,REDACTION_TIERS as zI,LOCKABLE as jI,FEATURES as QI,PERMISSION_MODES as qI,PRODUCT_HOSTS as ZI,normalizeOrgPolicy as $I,endpointAllowed as eu,modelAllowed as ru,agentAllowed as ou,permissionMode as tu,routeAllowed as au,redactionTier as iu,egressAllowed as nu,settingLocked as su,featureEnabled as Su,applyPolicyToSettings as Eu,policyLabel as lu,policyHash as Tu,verifyPolicyToken as mu,globToRegExp as cu}from"./policy.js";export{ta as ACCESS_LOG_MAX,oa as ACCESS_LOG_VERSION,i as ACTOR_KINDS,$m as AGENT_ID_RE,xl as AGENT_REF_RE,w_ as ALLOW_ALL,a as ALL_TYPES,ER as AMBIENT_KINDS,zf as API_BASE,ec as APPLIES_TO,eT as ASK_TYPES,oc as ASSISTANT_ID,FA as AUTOCOMPLETE_MAX_TOKENS,DA as AUTOCOMPLETE_SYSTEM,hA as AUTOCOMPLETE_TEMPERATURE,im as AUTONOMY,_a as AdapterError,tc as AgentError,On as AnalyzerError,Af as BACKUP_KDF_ITERATIONS,ET as BOARD_TOOL_NAME,bo as BRIEF_STATES,cl as BUDGET_DIMENSIONS,en as BUILTIN_TRIGGERS,Bn as BUILTIN_VOICE_INTENTS,Rf as BackupError,ml as BudgetError,fn as CADENCES,sm as CHECKS,vo as CLAIM_KINDS,s as CLASSES,af as CLOCK_TOLERANCE_MS,_f as COMPRESSIONS,XE as COMPRESSION_MODES,NS as COOLDOWN_MS,oO as COUNTED,Ue as COWRITER_SYSTEM,ke as COWRITER_TEMPERATURE,o as CURRENT_VERSION,bf as DARK,aR as DATA_SCOPES,Mn as DAYPART_HOUR,Oc as DECLINE_REASONS,lT as DEFAULT_ASK_TIMEOUT_MS,cR as DEFAULT_BLOCK_CHARS,WE as DEFAULT_COMPRESSION,am as DEFAULT_GATE,mi as DEFAULT_INTERNAL_PATTERNS,Ni as DEFAULT_LOCK_MS,zS as DEFAULT_MAX_FINISH_TRIES,mR as DEFAULT_MAX_MEMORIES,YS as DEFAULT_MAX_ROUNDS,Wc as DEFAULT_MIN_CALLS,SE as DEFAULT_SHIELD,EE as DEFAULT_STORE,Ao as DEFAULT_THRESHOLD,un as DEFAULT_WAKE,OE as DESCRIBE_ACTION,S as EFFECTS,E as EGRESS,rc as EGRESS_CLASSES,pf as ENCRYPTED_TYPE,jf as ENDPOINTS,hr as ENGINE_KINDS,Vm as ENGINE_SPEC_KINDS,fs as ENTITIES_SCHEMA,Qf as ENTITLEMENT_PUBLIC_JWK,ds as ENTITY_TYPES,La as ENTRY_KINDS,t as EVENT_TYPES,Im as EXECUTIVE,qS as EXHAUSTED_NOTE,nO as EntitlementError,l as EventError,Qa as FAILOVER_CAPABILITY_GAP,ja as FAILOVER_CLASS_GAP,xS as FAILOVER_MAX_ATTEMPTS,QI as FEATURES,Zf as FEATURE_TIER,ys as FIELD_TYPES,zl as FINDINGS_SCHEMA,jl as FINDING_KINDS,RE as FIND_ACTION,DE as FIND_DESCRIPTION,FE as FIND_RESIDENT,xE as FIND_TOOL_NAME,jS as FINISH_NUDGES,rO as FREE_LIMITS,UA as GEARS,NA as GOAL_MIN_NEW,Cl as GRANTABLE,O_ as GRANT_INFO,Pl as GRANT_RE,nm as HUMAN_FLAGS,fS as INPUT_PROGRESS_TOOLS,XO as INSIGHT_KINDS,IA as INSTRUCTION_RE,ci as INTERNAL_PATTERN_CATALOG,Or as INVARIANTS,Wi as JOB_ACTIONS,ZT as JOB_POST_ID_RE,qT as JOB_POST_STATUSES,QT as JobPostError,ui as KDF_HASH,Ii as KDF_ITERATIONS,B_ as KernelError,fc as LEDGER_ENTRY_KINDS,dc as LEDGER_VERSION,kf as LIGHT,OT as LIVE_RUN_STATUSES,jI as LOCKABLE,QS as LOOPING_NUDGE,ba as LOOP_KINDS,Wd as LibraryError,va as LoopError,Ho as MAX_BRIEF_CHARS,Bo as MAX_BRIEF_RECORDS,Go as MAX_CLAIMS,Ko as MAX_CLAIM_REFS,Nn as MAX_COMMANDS_PER_DELTA,Jp as MAX_DEPTH,Pi as MAX_ENTRIES,at as MAX_EXCERPTS,it as MAX_EXCERPT_CHARS,Ne as MAX_GRAPH_NODES,um as MAX_JOBS_PER_ROUND,oR as MAX_MATCHES,lR as MAX_MEMORY_CHARS,Ci as MAX_NOTE_CHARS,Nm as MAX_ROUNDS,Li as MAX_SECRET_CHARS,fo as MAX_SUBJECTS,Oo as MAX_SUBJECT_CHARS,Wp as MAX_SUBTASKS,gs as MAX_SUGGESTIONS,Cs as MAX_SUGGESTION_CHARS,tt as MAX_SYNTHESIS_CLAIMS,ld as MAX_TAGS,Ed as MAX_TAG_LENGTH,gi as MAX_TITLE_CHARS,Xd as MAX_TITLE_LEN,xd as MAX_TITLE_LENGTH,Ss as MAX_TOPICS,Es as MAX_TOPIC_CHARS,h_ as MCP_TOOL_NAME,sR as MEMORY_KINDS,SR as MEMORY_KIND_NAMES,_R as MEMORY_TOOL_SPEC,RR as MEMORY_UPCASTERS,nR as MEMORY_VERSION,Ml as MERGE_POLICIES,Pc as MIN_FIT,TR as MIN_MEMORY_CHARS,Yp as MIN_TAKEUP_FIT,Ji as MISSED_POLICIES,$O as MOMENT_BADGES,k_ as ManifestError,cI as McpClient,AR as MemoryError,Dt as NEAR_TITLE_DISTANCE,b as NOTE_ACTIONS,K as NOTE_ACTION_ERRORS,v as NOTE_ACTION_ORDER,G as NOTE_ACTION_TEMPERATURE,B as NOTE_COMMANDS,w as NOTE_COMMAND_MAX_TOKENS,H as NOTE_COMMAND_TEMPERATURE,qO as NOTE_SECTIONS,dS as OBSERVATION_TOOLS,Lf as OMNI_GRAMMAR,Cf as OMNI_MODES,vf as PALETTES,sS as PARALLEL_LOCAL_RE,yt as PDF_MAX_CHARS,qI as PERMISSION_MODES,Yf as PLANS,Je as PLAN_AUTHORS,ze as PLAN_DECOMPOSE_MAX_TOKENS,Ye as PLAN_DECOMPOSE_SYSTEM,je as PLAN_DECOMPOSE_TEMPERATURE,gl as PLAN_MODES,We as PLAN_ROLES,Qe as PLAN_SECTION_MAX_TOKENS,qe as PLAN_SECTION_TEMPERATURE,YI as POLICY_TOKEN_TYPE,JI as POLICY_VERSION,Zl as POST_KINDS,$l as POST_STATUSES,aI as PREF_SECTIONS,iI as PREF_SECTION_IDS,ZI as PRODUCT_HOSTS,KT as PROJECT_ID_RE,dm as PROJECT_JOBS_SCHEMA,fm as PROJECT_REVIEW_SCHEMA,Mm as PROJECT_RUN_STATUSES,GT as PROJECT_STATUSES,st as PROPOSAL_STATES,$f as PRO_FEATURES,WI as PolicyError,vT as ProjectError,Om as ProjectRunError,ir as REACH,iO as RECHECK_INTERVAL_MS,rl as RECIPE_MODES,nl as RECIPE_TOOL_NAME,Hm as RECORD_ENGINE_KINDS,Vd as RECORD_KINDS,Lc as RECRUIT_SCHEMA,zI as REDACTION_TIERS,xo as REDACTION_TOKEN_TYPES,Jn as REFINEMENT_SCHEMA,_ as REF_KINDS,Lr as REGISTRY_STATES,H_ as REQUIRED_PLUGINS,R as RESOLUTION,Us as RESPONSE_MODES,_e as RESULTS_PER_ENGINE,sE as RESULT_TOOL_NAME,IT as RESUMABLE_RUN_STATUSES,Oa as RETRIEVAL_TOOLS,Km as ROLE_KINDS,Nl as ROLE_MODES,N_ as ROSTER_KINDS,ZS as ROUND_SEPARATOR,Xm as ROUTE_PREFERS,up as RUN_STATUSES,el as RecipeError,Za as RouterError,di as RuleError,pR as SAME_FACT,Vi as SCHEDULE_KINDS,jc as SCM_KINDS,n as SCOPE_KINDS,Gm as SCORECARD_ENTRY_KINDS,Bm as SCORECARD_VERSION,pe as SEARCH_ENGINES,Fo as SELF_LABELS,Gf as SHAPE,BR as SKILL_CONTEXTS,XR as SKILL_FILE_KINDS,HR as SKILL_HISTORY_SCOPES,KR as SKILL_MANIFEST_VERSION,wR as SKILL_MCP_MODES,VR as SKILL_TRUST,WR as SKILL_UPCASTERS,sA as SKILL_VARS,SA as SKILL_VAR_NAMES,BA as SLASH_TYPING_RE,I_ as SOLO_BUDGET,bO as SORT_LABELS,kO as SORT_MODES,b_ as SOURCES,VI as SOURCE_TOOL_SPEC,UR as SOURCE_TRUST,Ft as SPAN_MIN_TERMS,DO as SPEAKER_SLOTS,CT as STALLED_AFTER_MS,mc as STARTER_AGENTS,Dl as STARTER_TEAMS,pp as STEP_MAX_CHARS,Ro as SUBJECT_KINDS,Ls as SUGGESTIONS_SCHEMA,St as SUPERSEDE_OVERLAP,Ai as SUPPRESSED,se as SWARM_ROLES,et as SYNTHESIS_SCHEMA,Yi as ScheduleError,yr as SearchEngineError,JR as SkillManifestError,kR as SkillSourceError,AA as SkillVarError,ks as StructuredError,nf as SyncError,_p as TASK_TRANSCRIPT_MAX_CHARS,eO as TEAM_FEATURES,Hl as TEAM_PLAN_SCHEMA,u_ as TEAM_SHAPES,Pp as TEAM_TOOL_NAME,Uf as THEMES,Ql as THREAD_KINDS,ql as THREAD_STATUSES,Dd as TITLE_RULES_VERSION,Kf as TOKEN_NAMES,Bf as TOKEN_ROLES,ls as TOPICS_SCHEMA,wt as TRANSCRIPT_MAX_CHARS,Xi as TRIGGER_KINDS,ul as TeamError,Ip as TeamRunError,Yr as ToolGroupError,MS as UNAVAILABLE_REASONS,Pd as UNTITLED_MEETING,Er as UPCASTERS,qf as UPGRADE_URL,ns as UTTERANCE_DANGLING_MS,is as UTTERANCE_SETTLE_MS,Oi as VAULT_VERSION,Mi as VaultError,gn as VoiceIntentError,Hr as WEATHER_HOST,wr as WEATHER_TIMEOUT_MS,yI as WEATHER_TOOL_NAME,UI as WEATHER_TOOL_SYSTEM,bE as WEB_SEARCH_SPEC,UE as WEB_SEARCH_TOOL_NAME,kE as WEB_SEARCH_TOOL_SYSTEM,lo as WIDGET_SURFACES,Ic as WITHDRAW_AFTER,Up as WORKLOG_KINDS,Ll as WORK_GRANTS,kA as WRITER_PREFS,bA as WRITER_PREF_DEFAULTS,Vr as WeatherError,Ht as YOUTUBE_HOSTS,lt as accept,IE as actionMenu,gI as adaptiveToolRetryHint,pd as addTag,VS as addUsage,Um as adjustSummary,mf as advanceBases,ou as agentAllowed,S_ as agentColor,_c as agentFromForm,s_ as agentHue,E_ as agentInitials,n_ as agentKind,q as agentMentionAt,go as aliasMap,JS as anthropicTranscript,WT as applyAll,Yc as applyCard,ye as applyEdits,Eu as applyPolicyToSettings,SI as applySections,Te as appoint,Kr as areaLabel,sc as assistantAgent,Fr as attemptOrder,Dm as attest,eS as bareToolName,Mf as bestCodec,pc as blankAgent,ap as blankConnection,zT as blankJobPost,hT as blankProject,hl as blankTeam,AS as blockedToolResult,Wl as boardText,iT as boardToolProvider,nT as boardToolSpec,ep as branchFor,Bl as breakCycles,Vo as briefId,Jo as briefLinks,Wo as briefTerms,Xo as briefToText,uE as buildGroupDispatchSpec,Me as buildNoteGraph,Kt as buildPdfDocument,Re as buildSearchUrl,dE as buildToolset,ua as buildTrajectory,$t as buildTranscriptDocument,__ as builtinOrg,mO as can,Ki as canAddEntry,XT as canJobPostTransition,FT as canProjectTransition,rS as canRunConcurrently,_r as canSatisfy,MR as candidatesFrom,Cm as canonical,Wt as captionTracksFromPlayerResponse,T_ as cardNumbers,Jc as cardOverride,Hc as carveBudget,N as causesAreWellFormed,TI as changedSections,fr as checkInvariants,Yo as checkKnowledgeInvariants,sO as checkoutUrl,dT as checkpointFrom,ot as claimsFromSynthesis,IS as classifyFailure,Ee as classifyModel,ni as classifySource,Fd as cleanTitle,yA as clipCompletion,lp as clipMessage,pn as clipText,Ep as clipTranscript,Ws as coerce,Ns as coerceEntities,fI as combineSystemPrompt,Y as commandLineAt,os as commandLooksFinished,xn as commandsFromSegments,iE as compactValue,u as compareEvents,j_ as compileQuery,Cn as compileWake,BE as compressToolSpec,HE as compressToolSpecs,wE as compressionStats,$c as connectionFor,ip as connectionFromForm,NR as containment,wo as contentHash,mp as continuationNote,ed as continueList,ct as converge,na as createAccessLog,pa as createAdapterRegistry,CI as createAdaptiveToolPolicy,dn as createAnalyzerRegistry,sT as createAnswerBox,c as createAppender,Mr as createBlobStore,Vl as createBoard,Sl as createBudget,GS as createCallRunner,fa as createCitationCollector,cp as createControl,G_ as createKernel,Nr as createLogStore,U_ as createManifest,ur as createMemoryAdapter,uS as createModelHealth,wa as createModelRouter,Cr as createRegistry,eE as createResultStore,Ri as createRuleEngine,mT as createRunCache,vR as createSkillSourceRegistry,gA as createSpendMeter,Ys as createStructuredStream,Jr as createToolGroupRegistry,mS as createToolLoopGuard,$i as createTriggerRegistry,Ua as createTurnRunner,as as createUtteranceGate,xi as createVault,Gn as createVoiceIntentRegistry,op as credentialEnv,wf as cssVarName,BO as dayBucket,Sf as decide,vc as decideRecruit,ZR as declaredAccess,ff as decryptBackup,IO as defaultLinkPolicy,y as defaultModelId,Kn as defaultVoiceIntents,HI as deferAttachedSources,ca as defineAdapter,nc as defineAgent,ln as defineJob,VT as defineJobPost,ka as defineLoop,An as defineMeetingAnalyzer,Ba as defineMiddleware,Ka as defineModel,DT as defineProject,Ha as defineRouteStrategy,_i as defineRule,bs as defineSchema,xr as defineSearchEngine,bR as defineSkillSource,_l as defineTeam,Wr as defineToolGroup,Zi as defineTrigger,vn as defineVoiceIntent,QO as demd,gO as densityRibbon,L as dequeue,Qo as deriveBrief,qo as deriveBriefs,Fi as deriveKey,vd as deriveMeetingTitle,ef as deriveTitle,Ec as describeAgent,yp as describeCall,tp as describeConnection,Qm as describeEngine,il as describeRecipeForApproval,Il as describeRole,vs as describeSchema,aE as describeShape,NT as describeSpend,Lp as describeTeamForApproval,t_ as describeTeamShape,HS as describeToolCall,mt as diffProposal,Ca as displayName,nd as docStats,LA as draftSeparator,Zo as driftedRefs,qE as dryRunRecipe,fp as dryRunTeam,Tn as dueJobs,Nt as duplicateTitles,Lo as earnsBrief,bn as editDistance,he as editKey,om as effectiveGate,So as effectiveGrants,iS as effectiveToolName,ge as egoGraph,nu as egressAllowed,rT as emptyBoardState,UT as emptyProjectRecord,_T as emptyRun,HA as enabledSkills,df as encryptBackup,eu as endpointAllowed,bm as engineKey,jm as engineKeyOf,Sc as engineOf,Ie as engineOrder,zm as engineRef,xc as engineRow,Dc as engineRows,x_ as engineStrip,yc as engineWorth,Is as entitiesFormat,Os as entitiesPrompt,Ms as entitiesStream,ki as entryMeta,LE as estimateTokens,kc as evaluatorPrompt,zE as expandRecipe,Z_ as expandReplacement,_A as expandSkillPrompt,js as explainMcpError,wp as extendDependents,xf as extractFilters,si as extractUrls,PS as failoverExhausted,Ya as failoverOrder,Su as featureEnabled,Nd as filterByTags,ga as filterEntries,J as filterNoteActions,KO as filterRecords,h as filterSections,Fe as filterTypoEdits,cE as findActionArgs,hE as findDispatchProvider,Hs as findJson,Q_ as findMatches,ee as findSkillByName,re as findTargetByName,TE as findTools,mE as findToolsResult,Ln as findWakeCommand,Jl as findingsInstruction,tT as findingsOf,ym as fit,bl as fixedPlan,oT as foldBoard,kT as foldProject,RT as foldRun,Tf as forkConflict,Sa as formatBytes,W_ as formatReport,xt as formatSurvey,dd as formatTag,Id as formatTagQuery,xO as formatTalkTime,qt as formatTimestamp,Zt as formatTranscript,Gr as formatWeather,V as frameNoteAction,tO as freeCap,Hi as fromB64,mo as fuseRRF,tm as gateAllows,xI as getMcpProviders,kr as getWeather,rs as gistOpening,es as gistText,cu as globToRegExp,MA as goalDraftAllowed,fl as grantAllows,A_ as grantChoices,d_ as grantsFromChoices,Qr as grantsNeededFor,Le as graphStats,PA as groundingBlock,oI as groupActionsByOwner,F as groupModels,wO as groupRecords,Qt as groupSegments,zO as hasInsights,cd as hasTag,Od as hasTagTerms,Bp as holdsGrants,Si as hostMatches,If as identityCodec,BI as imageAttachmentsOf,rd as indentSelection,JO as insightKindOf,uA as instructionOnLine,hf as isActionable,Br as isAmbiguousLocation,Kd as isBetterTitleSource,R_ as isBuiltin,oS as isCacheable,Of as isEncryptedBackup,$n as isFillerSentence,hd as isGenericTitle,LI as isInvalidToolParametersResult,vi as isLocked,RS as isLoopableTool,Op as isModelUnavailable,Xs as isNothing,lO as isPro,C as isQueued,zd as isRecordId,Do as isRedactionToken,d as isRef,de as isResultHost,fT as isResumable,YR as isSafeSkillPath,ho as isSelfLabel,lf as isSettled,US as isSourceGateError,hO as isSpeakerImageValue,qs as isStaleMcpSession,Mo as isSubjectCandidate,TO as isTeam,m as isValidEvent,fR as isValidMemory,Qd as isValidStoredRecord,Xt as isYouTubeUrl,Uc as jobApplications,Hp as jobFromSubtask,jT as jobPostFromForm,mm as jobResults,JT as jobToRole,mn as jobsForEvent,Rm as jobsPrompt,Ma as lanesOf,$r as layoutFlowchart,uc as ledgerKey,AO as licenseFromPayload,fA as lineAt,I as linearize,Ut as linesFromItems,pt as linkClaims,Aa as linkifyCitations,mA as lintSkillPrompt,xe as lintText,Gi as lockedSummary,Gt as looksScanned,ia as makeAccessEvent,CE as makeDispatchProvider,Pm as makeEntry,ME as makeGroupDispatchExecutor,Mc as makeLedgerEntry,Yd as makeRecordId,A as makeRef,ei as makeSourceStore,sa as makeStorageTier,ri as manifestText,QE as mapInput,xR as markUsed,CR as matchForForget,q_ as matchIndexFor,XA as matchSlashRecipe,VA as matchSlashSkill,JA as matchSlashTeam,_n as matchSummary,ud as matchesTagFilter,F_ as mcpDispatchProvider,AI as mcpInventorySystem,pI as mcpProvider,RI as mcpSharedSystem,K_ as meetDecisions,Ei as meetReach,tn as meetingEndedTrigger,YO as meetingInsights,on as meetingStartedTrigger,Bd as meetingTitlePrompt,PR as memoryBlock,OR as memoryKey,FR as memoryToolSystem,oe as mentionAnswerPrefix,gt as mentionsFrom,Oe as mergeEngineResults,Ve as mergeResearchLanes,$ as mergeSkillPrompt,lI as mergeStamped,Sp as mergeTranscript,sp as messagesFor,e_ as missingStarters,ru as modelAllowed,U as modelSummary,eI as momentBadge,Wn as monitorIntent,P as moveQueued,po as multiSearch,Fc as needForJob,qR as needsBridge,tS as needsConfirmation,dO as needsRecheck,Tp as newSteps,ji as nextFireAt,qi as nextWakeAt,Nf as nodeCodec,gS as normModelName,ic as normalizeAgent,ll as normalizeBudget,Nc as normalizeCall,qc as normalizeConnection,km as normalizeEngine,Jm as normalizeEngineSpec,rm as normalizeGate,dl as normalizeGrants,GA as normalizeIntent,wT as normalizeJobPost,dR as normalizeMemory,$I as normalizeOrgPolicy,Wm as normalizePolicy,xT as normalizeProject,Rt as normalizeRecord,At as normalizeRecords,bp as normalizeRequest,vm as normalizeScm,iA as normalizeSkill,Un as normalizeSpeech,jd as normalizeStoredRecord,Io as normalizeSubject,Td as normalizeTag,md as normalizeTags,Al as normalizeTeam,_s as normalizeTopic,Rs as normalizeTopics,XS as normalizeUsage,vA as normalizeWriterPrefs,W as noteActionItems,X as noteActionLabel,Xn as noteIntent,ZO as noteSectionKind,g_ as observeInbox,aO as observeSince,C_ as observeStrip,cn as occurrenceKey,Qi as occurrencesBetween,pE as oneLiner,WS as openAiTranscript,yi as openEntry,kt as orderLines,$R as originLabel,zR as originOf,ut as orphanRecords,ZA as outlineOf,_E as overlapRank,Qs as packageFromArgs,vt as pageTextFromItems,Hf as paletteFor,bt as paragraphsFromLines,nS as parallelEligible,Q as parseAgentMention,zo as parseBriefText,Fn as parseClock,Pn as parseCommand,Dn as parseDuration,us as parseEntities,bc as parseEvaluation,Xl as parseFindings,Zr as parseFlowchart,pm as parseJobs,J_ as parseJsonl,$A as parseListItem,rI as parseMeetingNotes,NO as parseMeetingText,yn as parseNumberWords,Pf as parseOmni,vl as parsePlan,$e as parsePlanTasks,Jd as parseRecordId,jn as parseRefinement,Zc as parseRemote,_m as parseReview,Z as parseSkillMention,TA as parseSkillVars,Js as parseStructured,Ds as parseSuggestions,fd as parseTagQuery,jt as parseTimedText,Hd as parseTitleResponse,ps as parseTopics,vr as parseWeather,hn as parseWhen,Vt as parseYouTubeUrl,g as pendingQueue,tu as permissionMode,an as personJoinedTrigger,Na as phasesOf,nn as phraseTrigger,Yt as pickCaptionTrack,fe as pickResults,sI as pickSections,za as pinnedOrderOf,tr as planAttribution,or as planBody,EO as planLabel,SO as planOf,rr as planParts,co as planQueries,Ze as planSectionSystem,Ef as planSync,er as planTitleFor,ES as planToolRound,Gl as plannerPrompt,Tu as policyHash,lu as policyLabel,Rc as poolFor,Ja as preferenceFor,gT as priorWorkFor,Ta as projectChain,yT as projectFromForm,bT as projectProgress,x as promoteQueued,Zp as promoteRoles,Da as promptEntries,Kc as proposalFromNeeds,Bc as proposalToAgent,Et as propose,DR as pruneMemories,Sn as questionTrigger,ie as rankLinkTargets,we as rankResearchCards,Po as rankSubjects,nr as reachRank,sr as reachSatisfies,ti as readSource,YT as readyJobs,LR as recall,WA as recipeInvocationText,jE as recipeParams,tl as recipeToolProvider,al as recipeToolSpec,gR as reconcile,Dr as reconcileEngines,wc as recruitEvents,Gc as recruitForRun,Vc as recruitJob,aa as redactAccessArgs,ft as redactedTokensIn,Ot as redactionCost,iu as redactionTier,Zn as refineSpokenCommand,zn as refinementFormat,Yn as refinementPrompt,Qn as refinementStream,Tt as reject,wn as reminderIntent,_d as removeTag,vI as renderContent,eo as renderFlowchartSvg,OO as renderMarkdown,Vs as repairJson,eR as replaceAll,rR as replaceAllInRange,$_ as replaceMatch,X_ as replay,Xa as requirementsFor,Wa as requirementsForStep,Ke as researchRelevance,He as researchSnippet,FI as resetMcp,f as resolveRef,Df as resolveSince,Co as resolveSubjects,Tc as resolveTeam,Wf as resolveTheme,Ks as responseFormat,nE as resultToolSpec,dp as resumeTeam,Am as reviewPrompt,ws as rewriteJson,Se as roleById,l_ as roleCardId,i_ as rosterRows,cm as roundBudget,KS as roundCap,lm as roundJobs,cS as roundSignature,au as routeAllowed,hc as routeFor,la as routeGraph,me as routeTeam,HO as rowTime,AT as runFromEvents,L_ as runLanes,ZE as runPlan,Em as runProject,$E as runRecipe,oE as runResultQuery,MT as runState,Ap as runTeam,lS as runToolRound,vS as runTurnLoop,LS as runWithFailover,ve as salientTerms,qa as sameModelKey,eA as sameSkillOrigin,Ad as sameTags,ts as sameUtterance,Vn as scheduleIntent,Ol as scmAllows,hi as sealEntry,bi as searchEntries,vE as searchResultsToText,Zd as searchTextFor,EI as sectionHash,nI as sectionValue,sd as selectionStats,su as settingLocked,qn as settleRefinement,Lm as sha256,rE as shieldToolResult,oi as shortUrl,Gd as shouldAutoTitle,Va as signalsFrom,uR as similarity,f_ as skillChoices,QR as skillFiles,QA as skillInvocationLabel,jA as skillInvocationOf,rA as skillIsStale,EA as skillVar,RA as skillVarGuidance,lA as skillVarPattern,zA as slashCommandInsert,wA as slashCommandItems,IR as slotOf,lc as slugAgentId,Ul as slugTeamName,rf as snippetOf,c_ as soloTeam,GO as sortRecords,vO as sortStamp,dI as sourceCitationSystem,yS as sourceGate,hS as sourceGuardFor,ai as sourceId,li as sourcePolicyFor,FS as sourcePolicySettings,Ti as sourceUrlsOf,da as sourcesFromToolText,Ct as spanningQuestions,LO as speakerBreakdown,yO as speakerLabeller,MO as speakerStats,PO as speakerTimeline,uT as spendOf,P_ as spendRows,pS as stableToolCallKey,sf as stampOf,cc as starterAgents,$p as starterTeam,Fl as starterTeams,wS as stepResultText,uf as streamCodec,yo as stripQualifiers,uo as subjectKey,No as subjectTokens,pA as substituteSkillVars,vp as subtaskFromRequest,gd as suggestExistingTags,Uo as suggestMerges,cA as suggestSkillVar,xs as suggestionsFormat,Ps as suggestionsPrompt,Fs as suggestionsStream,hm as summarize,gc as summarizeEngine,WO as summarySections,le as supportsSubagents,Lt as surveyCorpus,rt as synthesisPrompt,Md as tagFacets,Cd as tagsSearchText,Gp as takeUp,Kp as takeUpLine,Vp as taskTree,Tm as teamForRound,yl as teamFromForm,r_ as teamHealth,YA as teamInvocationText,Qp as teamLanes,jp as teamLine,o_ as teamShape,Mp as teamToolProvider,gp as teamToolSpec,Cp as teamToolTimeoutMs,p_ as teamsWithSolos,DI as testMcpServer,Xf as themeStylesheet,Xp as threadRows,xa as threadTitle,ha as threadTree,Pa as threadsOf,Pt as thresholdSweep,cO as tierFor,qm as tierOf,zt as timedTextUrl,Hn as timerIntent,rn as timerTrigger,bd as titleFromDate,kd as titleFromParticipants,yd as titleFromSummary,Ud as titleFromTopics,Bi as toB64,Yl as toBriefClaims,GI as toChatMessages,Vf as toCssVars,$d as toIndexEntry,Gs as toJsonSchema,Y_ as toJsonl,Rr as toModelSchema,Ar as toModelSchemas,KI as toMultimodalMessages,qd as toSearchRecord,td as toggleLinePrefix,id as toggleLink,Rd as toggleTag,ad as toggleTask,od as toggleWrap,kn as tokenize,_S as toolMadeProgress,jr as toolNeedFor,OI as toolStatus,$s as toolTraits,Ge as topicTerms,sn as topicTrigger,cs as topicsFormat,ms as topicsPrompt,Ts as topicsSchema,As as topicsStream,aS as traitsIndex,ea as transcriptFromTracks,z as triggerQueryAt,VE as trimDescription,Ce as trimGraph,jR as trustOf,Fa as turnsOf,Bs as unfence,Di as unlockVault,Ae as unwrapRedirect,lr as upcast,Tr as upcastAll,hR as upcastMemory,tA as upcastSkill,aA as upcastSkills,m_ as upsertAgents,Tl as usageOf,NE as validateAction,ac as validateAgent,El as validateBudget,cr as validateCapability,Qc as validateConnection,Ym as validateEngineSpec,Ui as validateEntry,T as validateEvent,em as validateGate,pr as validateInvocation,HT as validateJobPost,PT as validateProject,YE as validateRecipe,zi as validateSchedule,oA as validateSkill,Rl as validateTeam,oo as validateView,to as validateViewInvocation,no as validateWidget,so as validateWidgetMessage,uI as vaultWidgetSystem,Fm as verifyAttested,xm as verifyChain,_O as verifyEntitlement,mu as verifyPolicyToken,RO as verifySignedToken,Jt as videoMetaFromPlayerResponse,ao as viewResult,Mt as vocabularyDrift,En as voiceCommandTrigger,It as wantedPages,Ff as wantsModel,NI as wantsVaultGuidance,Kl as waves,kI as weatherToolProvider,br as weatherUrl,Be as webQuery,GE as webSearchToolProvider,a_ as whereItWorks,II as widgetAuthoringSystem,Eo as widgetIcon,ae as wikiQueryAt,dt as wikilinksIn,ST as withBoardTool,gE as withGuidance,tE as withResultShield,cT as withRunCache,wI as withSourceTool,BS as withToolSystem,pO as withinFreeLimit,kS as withinReach,of as wordCount,De as wordDiff,hp as workLogEvidence,Dp as workLogFor,Fp as workLogText,rp as worktreeDirFor,OA as writerAffordance,xA as writerRequest,CA as writerTail};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chatpanel/events",
3
- "version": "0.103.1",
3
+ "version": "0.105.0",
4
4
  "description": "The canonical ChatPanel event-log and capability contracts — typed durable facts, clock-free deterministic linearization, schema upcasting, and the invariants the replay harness asserts. Pure, dependency-free ESM shared by the ChatPanel extension, gateway and bridge.",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -141,7 +141,8 @@
141
141
  "./weather.js": "./weather.js",
142
142
  "./web-search-tool.js": "./web-search-tool.js",
143
143
  "./web-search.js": "./web-search.js",
144
- "./widget.js": "./widget.js"
144
+ "./widget.js": "./widget.js",
145
+ "./policy.js": "./policy.js"
145
146
  },
146
147
  "files": [
147
148
  "LICENSE",
@@ -204,6 +205,7 @@
204
205
  "omni.js",
205
206
  "order.js",
206
207
  "pdf-layout.js",
208
+ "policy.js",
207
209
  "promotion.js",
208
210
  "queue.js",
209
211
  "reach.js",
package/policy.js ADDED
@@ -0,0 +1 @@
1
+ class a extends Error{constructor(n){super(n),this.name="PolicyError"}}const x=1,C="policy",d=Object.freeze(["off","basic","full"]),A=Object.freeze({off:0,basic:1,full:2}),O=Object.freeze(["gateway","endpoints","redaction","features","agents"]),k=Object.freeze(["webllm","meetings","channels","agents"]),w=Object.freeze(["plan","default","acceptEdits","bypassPermissions"]),U=Object.freeze({plan:0,default:1,acceptEdits:2,bypassPermissions:3}),T=Object.freeze(["api.chatpanel.net","dl.chatpanel.net","huggingface.co","registry.npmjs.org","api.github.com"]),f=e=>typeof e=="string"?e.trim():"",c=e=>Array.isArray(e)?e.map(f).filter(Boolean):[];function y(e){const n=f(e).toLowerCase().replace(/^https?:\/\//,"").replace(/\/.*$/,"");if(!n)return"";if(!/^(\*\.)?[a-z0-9.-]+(:\d{1,5})?$/.test(n)&&!/^\[[0-9a-f:]+\](:\d{1,5})?$/.test(n)&&n!=="*")throw new a(`invalid host pattern "${e}"`);return n}function h(e){if(e==null)return h({});if(typeof e!="object"||Array.isArray(e))throw new a("policy must be an object");const n=e.v==null?x:Number(e.v);if(n!==x)throw new a(`unsupported policy version ${e.v}`);const t={v:n};if(e.org!=null){const r=f(e.org.id);if(!r||!/^[a-z0-9][a-z0-9._-]{0,63}$/i.test(r))throw new a("org.id must be a short identifier");t.org={id:r,name:f(e.org.name)||r}}const o=(r,l)=>{if(r==null)return;if(typeof r!="object")throw new a(`${l} must be an object`);const u={};return r.allow!=null&&(u.allow=c(r.allow).map(y).filter(Boolean)),r.deny!=null&&(u.deny=c(r.deny).map(y).filter(Boolean)),u},i=o(e.endpoints,"endpoints");i&&(t.endpoints=i);const s=o(e.egress,"egress");if(s&&(t.egress=s),e.models!=null){if(typeof e.models!="object")throw new a("models must be an object");t.models={},e.models.allow!=null&&(t.models.allow=c(e.models.allow)),e.models.deny!=null&&(t.models.deny=c(e.models.deny))}if(e.agents!=null){if(typeof e.agents!="object")throw new a("agents must be an object");const r={};if(e.agents.allow!=null&&(r.allow=c(e.agents.allow).map(l=>l.toLowerCase())),e.agents.deny!=null&&(r.deny=c(e.agents.deny).map(l=>l.toLowerCase())),e.agents.permissionModeCap!=null){const l=f(e.agents.permissionModeCap);if(!w.includes(l))throw new a(`agents.permissionModeCap must be one of ${w.join(", ")}`);r.permissionModeCap=l}t.agents=r}if(e.routing!=null){if(typeof e.routing!="object")throw new a("routing must be an object");const r=Array.isArray(e.routing.rules)?e.routing.rules:[];t.routing={rules:r.map((l,u)=>{if(!l||typeof l!="object")throw new a(`routing.rules[${u}] must be an object`);const j=c(l.models),$=c(l.endpoints).map(y).filter(Boolean);if(!j.length)throw new a(`routing.rules[${u}] needs at least one model pattern`);if(!$.length)throw new a(`routing.rules[${u}] needs at least one endpoint`);return{models:j,endpoints:$}})}}if(e.redaction!=null){if(typeof e.redaction!="object")throw new a("redaction must be an object");const r={};if(e.redaction.floor!=null){const l=f(e.redaction.floor).toLowerCase();if(!d.includes(l))throw new a(`redaction.floor must be one of ${d.join(", ")}`);r.floor=l}e.redaction.dictionary!=null&&(r.dictionary=c(e.redaction.dictionary)),e.redaction.requireBeforeCloud!=null&&(r.requireBeforeCloud=!!e.redaction.requireBeforeCloud),t.redaction=r}if(e.client!=null){if(typeof e.client!="object")throw new a("client must be an object");const r={};if(e.client.gatewayUrl!=null){const l=f(e.client.gatewayUrl);if(l&&!/^https?:\/\/[^\s/]+(\/.*)?$/.test(l))throw new a("client.gatewayUrl must be an http(s) URL");r.gatewayUrl=l.replace(/\/+$/,"")}if(e.client.managedRequired!=null&&(r.managedRequired=!!e.client.managedRequired),e.client.lock!=null){const l=c(e.client.lock);for(const u of l)if(!O.includes(u))throw new a(`client.lock: unknown setting "${u}" (one of ${O.join(", ")})`);r.lock=[...new Set(l)]}if(e.client.features!=null){if(typeof e.client.features!="object")throw new a("client.features must be an object");r.features={};for(const[l,u]of Object.entries(e.client.features)){if(!k.includes(l))throw new a(`client.features: unknown feature "${l}" (one of ${k.join(", ")})`);r.features[l]=!!u}}t.client=r}return t}function p(e){const n=f(e).toLowerCase();if(!n)return{host:"",port:""};try{const t=new URL(/^[a-z][a-z0-9+.-]*:\/\//.test(n)?n:`http://${n}`);return{host:t.hostname.replace(/^\[|\]$/g,""),port:t.port||(t.protocol==="https:"?"443":t.protocol==="http:"?"80":"")}}catch{return{host:n.split(":")[0],port:""}}}function S(e,n,t){if(e==="*")return!0;const[o,i]=e.startsWith("[")?[e.replace(/^\[([^\]]+)\].*$/,"$1"),e.replace(/^\[[^\]]+\]:?/,"")]:(()=>{const s=e.lastIndexOf(":");return s>0?[e.slice(0,s),e.slice(s+1)]:[e,""]})();if(i&&i!==t)return!1;if(o.startsWith("*.")){const s=o.slice(1);return n.endsWith(s)&&n.length>s.length}return n===o}function g(e,n,t){return(e||[]).some(o=>S(o,n,t))}function m(e){return new RegExp(`^${String(e).split("*").map(n=>n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join(".*")}$`,"i")}function E(e,n){const t=e?.endpoints;if(!t)return!0;const{host:o,port:i}=p(n);return!o||g(t.deny,o,i)?!1:t.allow&&t.allow.length?g(t.allow,o,i):!0}function R(e,n){const t=e?.models;if(!t)return!0;const o=f(n);return(t.deny||[]).some(i=>m(i).test(o))?!1:t.allow&&t.allow.length?t.allow.some(i=>m(i).test(o)):!0}function z(e,n){const t=e?.agents;if(!t)return!0;const o=f(n).toLowerCase();return(t.deny||[]).includes(o)?!1:t.allow&&t.allow.length?t.allow.includes(o):!0}function M(e,n){const t=e?.agents?.permissionModeCap,o=w.includes(n)?n:"default";return t?U[o]<=U[t]?o:t:o}function I(e,{model:n="",endpoint:t=""}={}){if(!e)return{ok:!0,reason:""};if(n&&!R(e,n))return{ok:!1,reason:`model "${n}" is not allowed by your organisation's policy`};if(t&&!E(e,t))return{ok:!1,reason:`endpoint ${p(t).host} is not allowed by your organisation's policy`};const o=e.routing?.rules||[];if(n&&t&&o.length){const i=o.find(s=>s.models.some(r=>m(r).test(n)));if(i){const{host:s,port:r}=p(t);if(!g(i.endpoints,s,r))return{ok:!1,reason:`model "${n}" may only be sent to ${i.endpoints.join(", ")} under your organisation's policy`}}}return{ok:!0,reason:""}}function L(e,n){const t=e?.redaction?.floor,o=d.includes(n)?n:"basic";return t?A[o]>=A[t]?o:t:o}function N(e,n,{local:t=!1}={}){const o=e?.egress;if(!o)return!0;const{host:i,port:s}=p(n);return!i||g(o.deny,i,s)?!1:t||T.includes(i)||e.endpoints?.allow?.length&&g(e.endpoints.allow,i,s)&&!g(e.endpoints?.deny,i,s)?!0:g(o.allow,i,s)}function _(e,n){return!!e?.client?.lock?.includes(n)}function P(e,n){const t=e?.client?.features;return!t||t[n]==null?!0:!!t[n]}function B(e,n){const t={...n||{}},o=[];if(!e)return{settings:t,changed:o};const i=e.client||{};if(i.gatewayUrl&&t.gatewayUrl!==i.gatewayUrl&&(t.gatewayUrl=i.gatewayUrl,o.push("gatewayUrl")),Array.isArray(t.endpoints)&&e.endpoints){const s=t.endpoints.filter(r=>!r||typeof r!="object"?!1:!r.baseUrl||i.gatewayUrl&&p(r.baseUrl).host===p(i.gatewayUrl).host&&p(r.baseUrl).port===p(i.gatewayUrl).port?!0:E(e,r.baseUrl));s.length!==t.endpoints.length&&(t.endpoints=s,o.push("endpoints"))}if(Array.isArray(t.endpoints)&&e.agents){const s=t.endpoints.filter(r=>r?.kind!=="bridge"||z(e,r.bridgeAgent||r.agent||r.id));s.length!==t.endpoints.length&&(t.endpoints=s,o.push("agents"))}if(Array.isArray(t.endpoints)&&!P(e,"webllm")){const s=t.endpoints.filter(r=>r?.kind!=="webllm");s.length!==t.endpoints.length&&(t.endpoints=s,o.push("webllm"))}if(e.redaction?.floor&&(t.redaction?.tier!=null||t.redactionTier!=null)){const s=t.redaction?.tier!=null?t.redaction.tier:t.redactionTier,r=L(e,s);r!==s&&(t.redaction?.tier!=null?t.redaction={...t.redaction,tier:r}:t.redactionTier=r,o.push("redaction"))}return{settings:t,changed:o}}function q(e){const n=e?.org?.name||e?.org?.id;return n?`Managed by ${n}`:"Managed"}function b(e){return Array.isArray(e)?`[${e.map(b).join(",")}]`:e&&typeof e=="object"?`{${Object.keys(e).sort().map(n=>`${JSON.stringify(n)}:${b(e[n])}`).join(",")}}`:JSON.stringify(e)}async function H(e,{subtle:n=null}={}){const t=n||globalThis.crypto?.subtle;if(!t)throw new a("no WebCrypto available on this runtime");const o=new TextEncoder().encode(b(h(e))),i=await t.digest("SHA-256",o);return[...new Uint8Array(i)].map(s=>s.toString(16).padStart(2,"0")).join("")}async function D(e,{verify:n,...t}={}){if(typeof n!="function")throw new a("verifyPolicyToken needs a verify function (entitlement.js verifySignedToken)");const o=await n(e,{...t,typ:C});if(!o||!o.policy)return null;try{return h(o.policy)}catch{return null}}export{k as FEATURES,O as LOCKABLE,w as PERMISSION_MODES,C as POLICY_TOKEN_TYPE,x as POLICY_VERSION,T as PRODUCT_HOSTS,a as PolicyError,d as REDACTION_TIERS,z as agentAllowed,B as applyPolicyToSettings,N as egressAllowed,E as endpointAllowed,P as featureEnabled,m as globToRegExp,R as modelAllowed,h as normalizeOrgPolicy,M as permissionMode,H as policyHash,q as policyLabel,L as redactionTier,I as routeAllowed,_ as settingLocked,D as verifyPolicyToken};