@aventurevc/aventure-cli 0.8.135 → 0.8.139
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/dist/aventure-cli/command-catalog.compact.txt +1 -0
- package/dist/aventure-cli/index.js +1 -1
- package/dist/aventure-cli/unified-operations.json +21 -2
- package/dist/chunks/{aventure-cli-YN3NirzF.js → aventure-cli-CrtDpcMg.js} +3 -3
- package/dist/chunks/{cli-help-policy-DXZ7Rp0Z.js → cli-help-policy-DRmLdjkv.js} +1 -1
- package/dist/chunks/contract-CyZFpEKp.js +22 -0
- package/dist/chunks/{dist-BctE42Qr.js → dist-CWRAVYI2.js} +2 -2
- package/dist/chunks/mcp-generation-contract-BFzpNdY_.js +1 -0
- package/dist/chunks/mcp-generation-contract-CNWCVcE7.js +1 -0
- package/dist/chunks/oauth-bearer-credential-Bn5TsLCi.js +1 -0
- package/dist/chunks/{oauth-bearer-credential-BD87CkCq.js → oauth-bearer-credential-yt-keHYC.js} +2 -2
- package/dist/chunks/oauth-login-CyRLsGQT.js +1 -0
- package/dist/chunks/{oauth-login-Dzb4sr6O.js → oauth-login-X4yJJqWk.js} +1 -1
- package/dist/chunks/openapi-commands-CAi96CdE.js +1 -0
- package/dist/chunks/openapi-commands-mpponhJt.js +1 -0
- package/dist/chunks/provider-catalog-CpLFNzTb.js +1 -0
- package/dist/chunks/startup-auth-BleH09FU.js +1 -0
- package/dist/chunks/{startup-auth-BT4OVJi7.js → startup-auth-D4eK0l7V.js} +1 -1
- package/dist/chunks/tool-policy-Dhw9BMIT.js +1 -0
- package/package.json +3 -3
- package/dist/chunks/contract-FQ8_V_na.js +0 -22
- package/dist/chunks/mcp-generation-contract-DlZAcvAv.js +0 -1
- package/dist/chunks/mcp-generation-contract-yv0qwarU.js +0 -1
- package/dist/chunks/oauth-bearer-credential-C5xHnmRJ.js +0 -1
- package/dist/chunks/oauth-login-tngdoQwK.js +0 -1
- package/dist/chunks/openapi-commands-BFYa0HJp.js +0 -1
- package/dist/chunks/openapi-commands-JLtgVrtj.js +0 -1
- package/dist/chunks/provider-catalog-DvK2d-Kc.js +0 -1
- package/dist/chunks/startup-auth-JOsquggV.js +0 -1
- package/dist/chunks/tool-policy-CHLep0O4.js +0 -1
|
@@ -38,6 +38,7 @@ aventure billing plan-changes create · Change the Subscription Plan · --plan
|
|
|
38
38
|
aventure billing plans list · List Subscription Tiers and Plans · -
|
|
39
39
|
aventure billing portal-sessions create · Create a Hosted Billing Portal Session · -
|
|
40
40
|
aventure billing subscription get · Read the Current Billing Subscription · -
|
|
41
|
+
aventure billing subscription update · Cancel or Resume the Subscription · -
|
|
41
42
|
aventure entities acquisitions get · Get One Company Acquisition · --entity-id --relationship-id
|
|
42
43
|
aventure entities acquisitions list · List a Company's Acquisitions · --entity-id
|
|
43
44
|
aventure entities addresses get · Get One Company Address · --entity-id --address-join-id
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{enableCompileCache as e}from"node:module";e();var{CommanderError:t}=await import(`../chunks/commander-Cj79cOD4.js`),{logWarn:n,setStderrLogging:r}=await import(`../chunks/logging-vmjaOcxn.js`),{readRuntimePackage:i}=await import(`../chunks/package-DjDmfBch.js`),{locateRuntimeManifest:a}=await import(`../chunks/runtime-identity-Bva_KyCh.js`),{materializeCliOAuthBearerCredential:o,materializeSavedCliOAuthBearerCredential:s}=await import(`../chunks/oauth-bearer-credential-
|
|
2
|
+
import{enableCompileCache as e}from"node:module";e();var{CommanderError:t}=await import(`../chunks/commander-Cj79cOD4.js`),{logWarn:n,setStderrLogging:r}=await import(`../chunks/logging-vmjaOcxn.js`),{readRuntimePackage:i}=await import(`../chunks/package-DjDmfBch.js`),{locateRuntimeManifest:a}=await import(`../chunks/runtime-identity-Bva_KyCh.js`),{materializeCliOAuthBearerCredential:o,materializeSavedCliOAuthBearerCredential:s}=await import(`../chunks/oauth-bearer-credential-Bn5TsLCi.js`),{materializeCliApiKeyBearerCredential:c}=await import(`../chunks/api-key-bearer-credential-DAgm6bTo.js`),{commandAuthMaterializationMode:l}=await import(`../chunks/startup-auth-BleH09FU.js`),{setTextAllFields:u}=await import(`../chunks/text-field-CJvckkTy.js`),{cliMachineOutputSelected:d}=await import(`../chunks/output-mode-D1d-NDhY.js`),{GENERATED_OPENAPI_COMMAND_SPECS:f}=await import(`../chunks/openapi-commands-CAi96CdE.js`),p=process.argv.slice(2);d(p)&&r(!1),p.includes(`--all-fields`)&&u(!0);try{a();let e=l(p,f);if(e===`stored`||e===`optional`)try{await(e===`stored`?s():o()),await c()}catch(e){n({component:i().bin[0],event:`optional_auth_materialization_failed`,message:`saved credential unavailable; continuing with credential-optional command`,error:e})}await import(`../chunks/aventure-cli-CrtDpcMg.js`)}catch(e){if(!(e instanceof t))throw e;process.stderr.write(`${e.message}\n`),process.exitCode=e.exitCode}export{};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"generatedFrom": "MCP_GENERATION_CONTRACT",
|
|
4
|
-
"generatedAt": "2026-10-
|
|
5
|
-
"totalOperations":
|
|
4
|
+
"generatedAt": "2026-10-10T10:20:29.380Z",
|
|
5
|
+
"totalOperations": 141,
|
|
6
6
|
"note": "Projection of MCP_GENERATION_CONTRACT - see mcp/scripts/build-unified-operations.ts header for SSOT rules.",
|
|
7
7
|
"operations": [
|
|
8
8
|
{
|
|
@@ -216,6 +216,25 @@
|
|
|
216
216
|
"scope": "read",
|
|
217
217
|
"destructive": false
|
|
218
218
|
},
|
|
219
|
+
{
|
|
220
|
+
"operationId": "updateBillingSubscription",
|
|
221
|
+
"method": "PATCH",
|
|
222
|
+
"path": "/v1/billing/subscription",
|
|
223
|
+
"resource": "billing",
|
|
224
|
+
"intent": "write",
|
|
225
|
+
"cliCommand": "billing subscription update",
|
|
226
|
+
"cliPath": [
|
|
227
|
+
"billing",
|
|
228
|
+
"subscription",
|
|
229
|
+
"update"
|
|
230
|
+
],
|
|
231
|
+
"mcpTool": "aventure_write",
|
|
232
|
+
"bodySchemaName": "BillingSubscriptionMutationSchema",
|
|
233
|
+
"bodySchemaImport": "@aventurevc/api-schemas/billing/subscription-mutation",
|
|
234
|
+
"auth": "bearer",
|
|
235
|
+
"scope": "write",
|
|
236
|
+
"destructive": false
|
|
237
|
+
},
|
|
219
238
|
{
|
|
220
239
|
"operationId": "enrichRecords",
|
|
221
240
|
"method": "POST",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,o as t,r as n,t as r}from"./commander-BB7CDPLs.js";import{i,o as a}from"./logging-wfRjU4GX.js";import{M as o,O as s,i as c,o as l,v as u,w as d,y as f}from"./person-owner-BJgNYLKX.js";import{Ar as p,Dr as m,Er as h,Ir as g,Lr as _,Mr as ee,Or as te,kr as ne}from"./dist-BctE42Qr.js";import{n as re,r as v,s as y,u as ie}from"./result-envelope-BE0edu_S.js";import{i as ae,l as b,o as oe,r as se,s as ce,t as x}from"./env-CeJYsGWg.js";import{i as S,t as le}from"./package-DfJq3Rui.js";import{S as ue,d as de,f as fe,o as pe,p as me,r as he,s as ge,t as _e}from"./tool-policy-CHLep0O4.js";import{i as ve,r as ye}from"./response-problem-BGqj-WZj.js";import{n as be}from"./output-spill-dDabuyH-.js";import{_ as xe,a as Se,c as Ce,d as we,f as Te,i as Ee,l as De,m as Oe,n as C,o as ke,r as Ae,s as je,u as Me}from"./contract-FQ8_V_na.js";import{a as Ne,c as Pe,i as Fe,l as Ie,n as Le,s as Re,t as ze}from"./cli-help-policy-DXZ7Rp0Z.js";import{S as Be,_ as Ve,a as He,g as w,h as Ue,i as We,m as Ge,n as Ke,p as qe,r as Je,s as Ye,t as Xe,v as Ze,x as T,y as Qe}from"./api-key-bearer-credential-CMEYkaoR.js";import{a as $e,c as et,d as tt,g as nt,l as rt,m as it,o as at,s as ot,t as st,u as ct}from"./oauth-bearer-credential-BD87CkCq.js";import{n as lt,r as ut,t as dt}from"./oauth-login-Dzb4sr6O.js";import{a as ft,c as pt,d as mt,i as ht,l as gt,n as _t,o as vt,s as yt,t as bt,u as xt}from"./startup-auth-BT4OVJi7.js";import{n as St,t as E}from"./openapi-commands-JLtgVrtj.js";import{i as D,r as Ct,t as O}from"./output-mode-BG_5P6MR.js";import{spawnSync as wt}from"node:child_process";import{basename as Tt,dirname as k,relative as Et,resolve as A,sep as j}from"node:path";import{copyFileSync as Dt,existsSync as M,lstatSync as Ot,mkdirSync as kt,readFileSync as At,readdirSync as jt,realpathSync as Mt,renameSync as Nt,rmSync as Pt,symlinkSync as Ft,writeFileSync as It}from"node:fs";import N,{stderr as P,stdin as Lt}from"node:process";import{TextDecoder as Rt,inspect as zt}from"node:util";import{homedir as Bt,hostname as Vt,platform as Ht}from"node:os";import{fileURLToPath as Ut}from"node:url";import{setTimeout as Wt}from"node:timers/promises";import{webcrypto as Gt}from"node:crypto";import{readFile as Kt}from"node:fs/promises";import{createInterface as qt}from"node:readline/promises";function Jt(e,t,n){let r={...n};for(let n of t.parameter){let t=n.envName;if(t===void 0)continue;let i=process.env[t]?.trim();if(i===void 0||i.length===0)continue;let a=r[n.optionKey];if(a!==void 0&&(typeof a!=`string`||a!==i))return{...v(`${e} ${n.flag.split(` `)[0]??n.name} conflicts with ${t}; omit the flag or use ${i}.`),data:r};a===void 0&&(r[n.optionKey]=i)}return y(`Environment-bound options applied`,r)}function Yt(e,t,n){if(!F(n))return null;for(let r of t.parameter){let t=r.envName,i=t===void 0?void 0:process.env[t]?.trim();if(t===void 0||i===void 0||i.length===0||!un(n,r.name))continue;let a=ln(n,r.name);if(typeof a!=`string`||a!==i)return`${e} ${r.name} in --from-file conflicts with ${t}; omit the field or use ${i}.`}return null}function Xt(e){let t=new Set(e.parameter.map(({name:e})=>e));return e.kind===`multipart`?e.requiredPath:e.requiredPath.filter(e=>!t.has(e))}function Zt(e,t,n,r=!1){if(r||!pn(t)||!Array.isArray(n))return hn(e,t,n);for(let[r,i]of n.entries()){let n=hn(e,t,i,r);if(!n.ok)return n}return y(`Body value assigned`,null)}function Qt(e,t,n,r){return hn(e,t,r,n)}function $t(e){let t=[];for(let n of e.split(`.`)){let e=_n(n);if(t.push(e.key),e.isArray)return t.join(`.`)}return null}function en(e,t){let n=$t(t);if(n===null)return null;let r=cn(e,n.split(`.`));return Array.isArray(r)?{path:n,rowCount:r.length,firstHole:sn(r)}:null}function tn(e,t){if(pn(e.name)||e.schemaType===`array`)return y(`Repeated body option selected`,typeof t==`string`?[t]:t);if(!Array.isArray(t))return y(`Scalar body option selected`,t);let n=e.flag.split(` `)[0]??e.name;return t.length===1?y(`Scalar body option selected`,t[0]):v(`${n} was already given; pass it once.`)}var nn=/^(?<row>\d+):(?<item>.*)$/su;function rn(e,t){let n=$t(e.name);if(e.schemaType!==`array`||n===null||t===void 0||typeof t==`boolean`)return null;let r=new Map,i=[];for(let e of typeof t==`string`?[t]:t){let t=nn.exec(e)?.groups,n=t?.row,a=t?.item;if(n===void 0||a===void 0){i.push(e);continue}let o=r.get(Number(n));o===void 0?r.set(Number(n),[a]):o.push(a)}return r.size===0?null:{container:n,rows:r,plain:i}}function an(e,t,n){let r=0;for(let i of e.parameter){let e=t[i.optionKey];e!==void 0&&typeof e!=`boolean`&&$t(i.name)===n&&(r=Math.max(r,typeof e==`string`?1:e.length))}return r}function on(e,t,n,r){for(let i of t.parameter){let t=n[i.optionKey];if(t===void 0)continue;let a=en(r,i.name);if(a===null)continue;if(a.firstHole!==null)return v(`${e} has no ${a.path}[] row ${a.firstHole} — number ${a.path}[] rows from 0 with no gaps.`);if(i.schemaType!==`array`||a.rowCount<=1||rn(i,t)!==null)continue;let o=i.flag.split(` `)[0]??i.name;return v(`${o} fills one ${a.path}[] row's list, so ${e} cannot also build ${a.rowCount} ${a.path}[] rows from direct options — prefix each value with its 0-based ${a.path}[] row index, as 0:value, or pass the rows with --from-file.`)}return null}function sn(e){for(let t=0;t<e.length;t+=1)if(e[t]===void 0)return t;return null}function cn(e,t){let n=e;for(let e of t){if(!F(n))return;n=n[e]??null}return n}function ln(e,t){if(!pn(t))return cn(e,t.split(`.`))}function un(e,t){return fn(e,t.split(`.`))}function dn(e,t,n){if(!F(n))return null;let r=new Set(t.parameter.map(({name:e})=>e));for(let i of e)if(i!==t){for(let e of i.parameter)if(!r.has(e.name)&&un(n,e.name))return`${e.name} in --from-file requires --content-type ${i.contentType}.`}return null}function fn(e,t){let[n,...r]=t;if(n===void 0)return!0;let i=_n(n);if(!F(e)||!Object.hasOwn(e,i.key))return!1;let a=e[i.key]??null;return i.isArray?Array.isArray(a)&&a.every(e=>fn(e,r)):fn(a,r)}function pn(e){return e.split(`.`).some(e=>_n(e).isArray)}function mn(e,t){return e.parameter.length===0||!F(t)?null:yn(t,[],vn(e.parameter))}function F(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function hn(e,t,n,r=0){let i=t.split(`.`),a=e;for(let[e,o]of i.entries()){let s=_n(o),c=e===i.length-1,l=gn(a,s,t,c,n,r);if(!l.ok||l.data===null)return v(l.summary,l.warnings);if(c)return y(`Body value assigned`,null);a=l.data}return v(`${t} is not a valid body option path.`)}function gn(e,t,n,r,i,a){let o=()=>v(`${n} cannot be combined with another body option at ${t.key}.`),s=e[t.key];if(t.isArray){if(s!==void 0&&!Array.isArray(s))return o();let n=s??[];if(s===void 0&&(e[t.key]=n),r)return n[a]===void 0?(n[a]=i,y(`Body value assigned`,e)):o();let c=n[a];if(c===void 0){let e={};return n[a]=e,y(`Body path created`,e)}return F(c)?y(`Body path stepped`,c):o()}if(r)return s===void 0?(e[t.key]=i,y(`Body value assigned`,e)):o();if(s===void 0){let n={};return e[t.key]=n,y(`Body path created`,n)}return F(s)?y(`Body path stepped`,s):o()}function _n(e){let t=e.endsWith(`[]`);return{key:t?e.slice(0,-2):e,isArray:t}}function vn(e){let t=new Set,n=new Set;for(let r of e){let e=`${r.name}${r.schemaType===`array`?`[]`:``}`;t.add(e);let i=e.split(`.`);for(let e=1;e<i.length;e+=1)n.add(i.slice(0,e).join(`.`))}return{leaf:t,prefix:n}}function yn(e,t,n){if(Array.isArray(e)){if(e.length===0)return null;for(let r of e){let e=yn(r,t,n);if(e!==null)return e}return null}if(!F(e))return null;for(let[r,i]of Object.entries(e)){let e=[...t,Array.isArray(i)?`${r}[]`:r],a=e.join(`.`);if(!bn(a,n)){if(!xn(e))continue;return{path:a,suggestion:Sn(e,n)}}let o=yn(i,e,n);if(o!==null)return o}return null}function bn(e,t){return t.prefix.has(e)||t.leaf.has(e)}function xn(e){return e.slice(0,-1).some(e=>e.endsWith(`[]`))}function Sn(e,t){let n=e.slice(0,-1).join(`.`),r=e.at(-1)?.replace(/\[\]$/u,``).toLowerCase()??``;return[...t.leaf].filter(e=>e.split(`.`).slice(0,-1).join(`.`)===n).map(e=>({path:e,score:Cn(r,e.split(`.`).at(-1)??``)})).filter(({score:e})=>e<1/0).toSorted((e,t)=>e.score-t.score||e.path.localeCompare(t.path))[0]?.path}function Cn(e,t){let n=t.replace(/\[\]$/u,``).toLowerCase();return n===e?0:n.endsWith(e)||e.endsWith(n)?1:n.includes(e)||e.includes(n)?2:1/0}function wn(e,t){let n=new Map;for(let e of t){let t=e.flag?.split(` `)[0];t!==void 0&&n.set(t,t===`--from-file`?{...e,inputType:`file`}:e)}for(let t of e){let e=t.long===void 0?void 0:n.get(t.long);e!==void 0&&(t.helpGroup(Pe(e)),t.description=ee(t.description,{...e,hasParseDefault:t.defaultValue!==void 0}))}e.sort((e,t)=>{let r=e.long===void 0?void 0:n.get(e.long),i=t.long===void 0?void 0:n.get(t.long);return r!==void 0&&i!==void 0?Mn(r,i):r===void 0?i===void 0?0:1:-1})}function Tn(e){let t=new Map;for(let n of e)for(let e of n.parameter){let r=e.flag.split(` `)[0]??e.flag,i=t.get(r);i===void 0?t.set(r,{variant:[{descriptor:n,parameter:e}]}):t.set(r,{variant:[...i.variant,{descriptor:n,parameter:e}]})}return[...t.values()]}function En(e){let{flag:t}=e.variant[0].parameter;return e.variant.every(({parameter:e})=>e.flag===t)?t:`${t.split(` `)[0]??t} <value>`}function Dn(e){let t=e.variant.map(({descriptor:e,parameter:t})=>({contentType:e.contentType,text:An(e,t)})),n=t[0];return n===void 0?``:t.every(({text:e})=>e===n.text)?`${n.text===``?``:`${n.text} `}Request content: ${t.map(({contentType:e})=>e).join(`, `)}.`:t.map(({contentType:e,text:t})=>`${e}: ${t}`).join(` `)}function On(e,t){return[...new Set((e.cliConflicts??[]).filter(e=>e.includes(t)).flatMap(e=>e.filter(e=>e!==t)))]}function kn(e,t){let n=e.kind===`multipart`?`Read a JSON object keyed by multipart part name from a file, or use - for stdin`:`Read the JSON request body from a file, or use - for stdin`,r=t.filter(e=>!t.some(t=>t.startsWith(`${e}.`)||t.startsWith(`${e}[].`)));return r.length===0?Ie(n):`${Ie(n)} Required JSON paths: ${r.join(`, `)}.`}function An(e,t){let n=Ne(t.description,void 0),r=e.kind!==`multipart`&&pn(t.name),i=e.kind!==`multipart`&&t.optionKey!==t.name&&/^\w+$/u.test(t.name);return`${n}${r?` Repeat to add another value.`:``}${i?` --from-file JSON key: ${t.name}.`:``}${jn(e,t)}`}function jn(e,t){if(e.kind===`multipart`||t.schemaType!==`array`)return``;let n=$t(t.name);return n===null?``:` Prefix each value with its 0-based ${n}[] row index, as 0:value, to fill more than one ${n}[] row. A leading digits-and-colon is always read as that index, so name the row of a value that starts the same way, as 0:0:00 for the value 0:00.`}function Mn(e,t){return Re(e)-Re(t)||Number(e.required!==!0)-Number(t.required!==!0)}async function Nn(e){let t;try{t=e===`-`?await Pn():await Kt(e,`utf8`)}catch(t){return v(`Could not read input: ${t.message}`,[`path=${e}`])}try{if(t.trim().length===0)return y(`No input provided`,null);let e=JSON.parse(t);return y(`Input parsed`,e)}catch(e){return v(`Input is not valid JSON: ${e.message}`)}}async function Pn(){if(process.stdin.isTTY)throw Error(`--from-file - requires JSON on stdin, but stdin is a TTY`);process.stdin.setEncoding(`utf8`);let e=``;for await(let t of process.stdin)e+=t;return e}var Fn=`--content-type`;function In(t,n,r){let i=e=>!r?.has(e)&&(r?.add(e),!0),a=n.requestBody??[];if(a.length>1&&i(Fn)){let n=a.map(({contentType:e})=>e);t.addOption(new e(`${Fn} <media-type>`,`Select the request body encoding, never an uploaded file's media type; omit for ${n[0]}.`).choices(n).argParser(Rn(a)))}if(nr(n)&&i(`--from-file`)){let r=a[0];if(r===void 0)throw Error(`${n.operationId} has no request body`);t.addOption(new e(`--from-file <path>`,kn(r,r.requiredPath)).argParser(Bn(`--from-file`)))}let o=Tn(a).filter(e=>i(I(e.variant[0].parameter)));for(let n of o.toSorted((e,t)=>Mn(e.variant[0].parameter,t.variant[0].parameter))){let{descriptor:r,parameter:i}=n.variant[0],o=new e(En(n),a.length>1?Dn(n):An(r,i));a.length===1&&i.envName!==void 0&&o.env(i.envName);let s=a.length===1?On(r,i.optionKey):[];s.length>0&&o.conflicts(s),a.length>1?o.argParser(Ln):pn(i.name)||i.schemaType===`array`?o.argParser(zn):o.argParser(Bn(i.flag)),t.addOption(o),o.envVar!==void 0&&t.on(`optionEnv:${o.name()}`,()=>{let e=t.opts()[i.optionKey];typeof e==`string`&&e.trim()&&t.setOptionValueWithSource(i.optionKey,e.trim(),`env`)})}tr(t,n,o)}function Ln(e,t){return t===void 0?e:typeof t==`string`?[t,e]:[...t,e]}function Rn(e){return(n,r)=>{if(r!==void 0)throw new t(`${Fn} was already given; pass it once.`);let i=ue(e,n);if(!i.ok)throw new t(i.summary);return n}}function zn(e,t){return[...t??[],e]}function Bn(e){let n=e.split(/\s+/u)[0]??e;return(e,r)=>{if(r!==void 0)throw new t(`${n} was already given; pass it once.`);return e}}async function Vn(e,t){let n=vt(e,t),r=ue(e.requestBody??[],n);if(!r.ok||r.data===null)return v(r.summary,r.warnings);let i=r.data;if(i===void 0)return y(`No body`,void 0);let a=Hn(e,i,t);if(a!==null)return v(a);let o=Jt(e.operationId,i,t);if(!o.ok)return v(o.summary,o.warnings);t=o.data;let s=Un(i,t);if(s!==null)return v(s);let c=await qn(t);if(!c.ok)return v(c.summary,c.warnings);let l=dn(e.requestBody??[],i,c.data);if(l!==null)return v(l);let u=Kn(e.operationId,i,c.data);if(!u.ok)return u;let d=Yt(e.operationId,i,c.data);if(d!==null)return v(d);let f=Jn(e.operationId,i,t);if(!f.ok)return f;if(c.data===void 0&&f.data===void 0)return i.required?v(er(e.operationId,i)):y(`No body`,void 0);let p=Xn(e.operationId,i,c.data,f.data);if(!p.ok||p.data===void 0)return p;if(i.schemaType===`array`&&!Array.isArray(p.data))return v(`${e.operationId} requires a JSON array body.`);if(i.parameter.length>0&&!F(p.data)){let t=i.kind===`multipart`?` keyed by multipart part name`:` body`;return v(`${e.operationId} requires a JSON object${t}.`)}let m=Gn(i,p.data);if(m.length>0)return v(`${e.operationId} requires body option(s): ${m.join(`, `)}`);let h=p.data,g=F(h)?Xt(i).filter(e=>!un(h,e)):[];return g.length>0?v(Wn(e.operationId,i,g)):p}function Hn(e,t,n){let r=new Set(t.parameter.map(({optionKey:e})=>e));for(let i of e.requestBody??[])if(i!==t)for(let t of i.parameter){if(r.has(t.optionKey)||n[t.optionKey]===void 0)continue;let i=(e.requestBody??[]).filter(e=>e.parameter.some(({optionKey:e})=>e===t.optionKey)).map(({contentType:e})=>e);return`${I(t)} requires ${Fn} ${i.join(` or `)}.`}return null}function Un(e,t){for(let n of e.cliConflicts??[]){let e=n.filter(e=>t[e]!==void 0);if(e.length>1)return`Options ${e.join(`, `)} cannot be used together.`}return null}function Wn(e,t,n){let r=`${e} requires JSON body path(s): ${n.join(`, `)}`;return t.kind===`multipart`?`${r}. ${n.includes(`body`)?`For multipart --from-file, wrap the endpoint JSON under top-level "body".`:`For multipart --from-file, put the missing nested path(s) inside top-level "body".`}`:r}function Gn(e,t){return F(t)?e.parameter.filter(e=>e.required&&!un(t,e.name)).map(I):[]}function Kn(e,t,n){let r=mn(t,n);if(r===null)return y(`Body file paths validated`,null);let i=r.suggestion===void 0?``:` Use ${r.suggestion}.`;return v(`${e} --from-file contains unknown JSON path ${r.path}.${i}`)}async function qn(e){let t=typeof e.fromFile==`string`?e.fromFile:void 0;if(t===void 0)return y(`No body file`,void 0);let n=await Nn(t);if(!n.ok)return v(n.summary,n.warnings);let r=ie.safeParse(n.data);return r.success?y(`Input parsed`,r.data):v(`Input is not valid JSON value: ${r.error.message}`)}function Jn(e,t,n){let r={},i=!1;for(let e of t.parameter){let a=tn(e,n[e.optionKey]);if(!a.ok||a.data===null)return v(a.summary,a.warnings);let o=a.data;if(o===void 0)continue;let s=Yn(t,n,r,e,o);if(!s.ok)return v(s.summary,s.warnings);i=!0}if(!i)return y(`No direct body options`,void 0);let a=on(e,t,n,r);return a===null?y(`Direct body options parsed`,r):a}function Yn(e,t,n,r,i){let a=rn(r,i);if(a===null){let e=Qn(r,i);return e.ok?Zt(n,r.name,e.data,r.schemaType===`array`):v(e.summary,e.warnings)}if(a.plain.length>0)return v(`${I(r)} mixes row-form values with plain value(s): ${a.plain.join(`, `)} — prefix every value with its 0-based ${a.container}[] row index, as 0:value.`);let o=an(e,t,a.container);for(let e of a.rows.keys())if(!(e<o))return v(`${I(r)} names ${a.container}[] row ${e}, but these options build at most ${o} ${a.container}[] row(s) — number rows from 0, and name the row of a value that itself starts with digits and a colon, as 0:0:00 for the value 0:00.`);for(let[e,t]of a.rows){let i=[];for(let e of t){let t=$n(r.name,r.itemSchemaType,e);if(!t.ok)return v(t.summary,t.warnings);i.push(t.data)}let a=Qt(n,r.name,e,i);if(!a.ok)return a}return y(`Body value assigned`,null)}var I=e=>e.flag.split(` `)[0]??e.name;function Xn(e,t,n,r){if(n===void 0)return y(`Direct body parsed`,r);if(r===void 0)return y(`Input parsed`,n);if(F(n)&&F(r))try{return y(`Input parsed`,Zn(t,n,r))}catch(t){return v(`${e} ${t.message}`)}return v(`${e} cannot combine --from-file with direct body options unless the file body is an object.`)}function Zn(e,t,n,r=``){let i={...t};for(let[t,a]of Object.entries(n)){let n=i[t],o=`${r}${t}`;if(F(n)&&F(a))i[t]=Zn(e,n,a,`${o}.`);else if(n===void 0||n===a)i[t]=a;else throw Error(`sets JSON key '${o}' both in --from-file and with ${e.parameter.find(({name:e})=>e===o)?.flag.split(` `)[0]??`body options`} — set it in one place${Array.isArray(n)?`: move the per-item fields inside the matching '${o}[]' object(s) in the file body`:je.test(o)?`; keep multi-line text in the --from-file body`:``}.`)}return i}function Qn(e,t){if(typeof t==`boolean`)return y(`Body value parsed`,t);if(t===void 0||typeof t==`string`)return $n(e.name,e.schemaType,t??``);let n=[],r=pn(e.name)&&e.schemaType!==`array`?e.schemaType:e.itemSchemaType;for(let i of t){let t=$n(e.name,r,i);if(!t.ok)return t;n.push(t.data)}return y(`Body value parsed`,n)}function $n(e,t,n){if(t===`boolean`)return n===`true`?y(`Body value parsed`,!0):n===`false`?y(`Body value parsed`,!1):v(`${e} must be true or false.`);if(t===`number`||t===`integer`){let r=n.trim(),i=Number(r);return r===``||!Number.isFinite(i)?v(`${e} must be a finite ${t}.`):t===`integer`&&!Number.isInteger(i)?v(`${e} must be an integer.`):y(`Body value parsed`,i)}return y(`Body value parsed`,n)}function er(e,t){let n=t.parameter.filter(e=>e.required);if(n.length>0&&t.requiredPath.every(e=>n.some(({name:t})=>t===e||t.startsWith(`${e}.`))))return`${e} requires body option(s): ${n.map(I).join(`, `)}`;let r=Xt(t);if(r.length>0)return`${e} requires --from-file with JSON body path(s): ${r.join(`, `)}`;let i=t.parameter.map(I).join(`, `);return i.length===0?`${e} requires --from-file`:`${e} requires --from-file or body option(s): ${i}`}function tr(e,t,n){let r=[...t.parameters,...n.map(({variant:e})=>e[0].parameter)];(t.requestBody?.length??0)>1&&r.push({optionKey:`contentType`,flag:Fn,location:`body`}),nr(t)&&r.push({optionKey:`fromFile`,flag:`--from-file`,location:`body`}),wn(e.options,r)}function nr(e){return(e.requestBody??[]).some(e=>e.kind!==`multipart`||e.parameter.some(e=>e.schemaFormat!==`binary`))}function rr(e){let t=re(e,Ae(e,E));return fr(t),process.stdout.write(`${JSON.stringify(t)}\n`),t}function ir(e){let t=re(e,Ae(e,E));fr(t);let n=Ee(E,t.data,t.summary),r=[];if(t.ok&&n!==null){let e=ar(t);r.push(n.endsWith(`
|
|
1
|
+
import{n as e,o as t,r as n,t as r}from"./commander-BB7CDPLs.js";import{i,o as a}from"./logging-wfRjU4GX.js";import{M as o,O as s,i as c,o as l,v as u,w as d,y as f}from"./person-owner-BJgNYLKX.js";import{Ar as p,Dr as m,Er as h,Ir as g,Lr as _,Mr as ee,Or as te,kr as ne}from"./dist-CWRAVYI2.js";import{n as re,r as v,s as y,u as ie}from"./result-envelope-BE0edu_S.js";import{i as ae,l as b,o as oe,r as se,s as ce,t as x}from"./env-CeJYsGWg.js";import{i as S,t as le}from"./package-DfJq3Rui.js";import{S as ue,d as de,f as fe,o as pe,p as me,r as he,s as ge,t as _e}from"./tool-policy-Dhw9BMIT.js";import{i as ve,r as ye}from"./response-problem-BGqj-WZj.js";import{n as be}from"./output-spill-dDabuyH-.js";import{_ as xe,a as Se,c as Ce,d as we,f as Te,i as Ee,l as De,m as Oe,n as C,o as ke,r as Ae,s as je,u as Me}from"./contract-CyZFpEKp.js";import{a as Ne,c as Pe,i as Fe,l as Ie,n as Le,s as Re,t as ze}from"./cli-help-policy-DRmLdjkv.js";import{S as Be,_ as Ve,a as He,g as w,h as Ue,i as We,m as Ge,n as Ke,p as qe,r as Je,s as Ye,t as Xe,v as Ze,x as T,y as Qe}from"./api-key-bearer-credential-CMEYkaoR.js";import{a as $e,c as et,d as tt,g as nt,l as rt,m as it,o as at,s as ot,t as st,u as ct}from"./oauth-bearer-credential-yt-keHYC.js";import{n as lt,r as ut,t as dt}from"./oauth-login-X4yJJqWk.js";import{a as ft,c as pt,d as mt,i as ht,l as gt,n as _t,o as vt,s as yt,t as bt,u as xt}from"./startup-auth-D4eK0l7V.js";import{n as St,t as E}from"./openapi-commands-mpponhJt.js";import{i as D,r as Ct,t as O}from"./output-mode-BG_5P6MR.js";import{spawnSync as wt}from"node:child_process";import{basename as Tt,dirname as k,relative as Et,resolve as A,sep as j}from"node:path";import{copyFileSync as Dt,existsSync as M,lstatSync as Ot,mkdirSync as kt,readFileSync as At,readdirSync as jt,realpathSync as Mt,renameSync as Nt,rmSync as Pt,symlinkSync as Ft,writeFileSync as It}from"node:fs";import N,{stderr as P,stdin as Lt}from"node:process";import{TextDecoder as Rt,inspect as zt}from"node:util";import{homedir as Bt,hostname as Vt,platform as Ht}from"node:os";import{fileURLToPath as Ut}from"node:url";import{setTimeout as Wt}from"node:timers/promises";import{webcrypto as Gt}from"node:crypto";import{readFile as Kt}from"node:fs/promises";import{createInterface as qt}from"node:readline/promises";function Jt(e,t,n){let r={...n};for(let n of t.parameter){let t=n.envName;if(t===void 0)continue;let i=process.env[t]?.trim();if(i===void 0||i.length===0)continue;let a=r[n.optionKey];if(a!==void 0&&(typeof a!=`string`||a!==i))return{...v(`${e} ${n.flag.split(` `)[0]??n.name} conflicts with ${t}; omit the flag or use ${i}.`),data:r};a===void 0&&(r[n.optionKey]=i)}return y(`Environment-bound options applied`,r)}function Yt(e,t,n){if(!F(n))return null;for(let r of t.parameter){let t=r.envName,i=t===void 0?void 0:process.env[t]?.trim();if(t===void 0||i===void 0||i.length===0||!un(n,r.name))continue;let a=ln(n,r.name);if(typeof a!=`string`||a!==i)return`${e} ${r.name} in --from-file conflicts with ${t}; omit the field or use ${i}.`}return null}function Xt(e){let t=new Set(e.parameter.map(({name:e})=>e));return e.kind===`multipart`?e.requiredPath:e.requiredPath.filter(e=>!t.has(e))}function Zt(e,t,n,r=!1){if(r||!pn(t)||!Array.isArray(n))return hn(e,t,n);for(let[r,i]of n.entries()){let n=hn(e,t,i,r);if(!n.ok)return n}return y(`Body value assigned`,null)}function Qt(e,t,n,r){return hn(e,t,r,n)}function $t(e){let t=[];for(let n of e.split(`.`)){let e=_n(n);if(t.push(e.key),e.isArray)return t.join(`.`)}return null}function en(e,t){let n=$t(t);if(n===null)return null;let r=cn(e,n.split(`.`));return Array.isArray(r)?{path:n,rowCount:r.length,firstHole:sn(r)}:null}function tn(e,t){if(pn(e.name)||e.schemaType===`array`)return y(`Repeated body option selected`,typeof t==`string`?[t]:t);if(!Array.isArray(t))return y(`Scalar body option selected`,t);let n=e.flag.split(` `)[0]??e.name;return t.length===1?y(`Scalar body option selected`,t[0]):v(`${n} was already given; pass it once.`)}var nn=/^(?<row>\d+):(?<item>.*)$/su;function rn(e,t){let n=$t(e.name);if(e.schemaType!==`array`||n===null||t===void 0||typeof t==`boolean`)return null;let r=new Map,i=[];for(let e of typeof t==`string`?[t]:t){let t=nn.exec(e)?.groups,n=t?.row,a=t?.item;if(n===void 0||a===void 0){i.push(e);continue}let o=r.get(Number(n));o===void 0?r.set(Number(n),[a]):o.push(a)}return r.size===0?null:{container:n,rows:r,plain:i}}function an(e,t,n){let r=0;for(let i of e.parameter){let e=t[i.optionKey];e!==void 0&&typeof e!=`boolean`&&$t(i.name)===n&&(r=Math.max(r,typeof e==`string`?1:e.length))}return r}function on(e,t,n,r){for(let i of t.parameter){let t=n[i.optionKey];if(t===void 0)continue;let a=en(r,i.name);if(a===null)continue;if(a.firstHole!==null)return v(`${e} has no ${a.path}[] row ${a.firstHole} — number ${a.path}[] rows from 0 with no gaps.`);if(i.schemaType!==`array`||a.rowCount<=1||rn(i,t)!==null)continue;let o=i.flag.split(` `)[0]??i.name;return v(`${o} fills one ${a.path}[] row's list, so ${e} cannot also build ${a.rowCount} ${a.path}[] rows from direct options — prefix each value with its 0-based ${a.path}[] row index, as 0:value, or pass the rows with --from-file.`)}return null}function sn(e){for(let t=0;t<e.length;t+=1)if(e[t]===void 0)return t;return null}function cn(e,t){let n=e;for(let e of t){if(!F(n))return;n=n[e]??null}return n}function ln(e,t){if(!pn(t))return cn(e,t.split(`.`))}function un(e,t){return fn(e,t.split(`.`))}function dn(e,t,n){if(!F(n))return null;let r=new Set(t.parameter.map(({name:e})=>e));for(let i of e)if(i!==t){for(let e of i.parameter)if(!r.has(e.name)&&un(n,e.name))return`${e.name} in --from-file requires --content-type ${i.contentType}.`}return null}function fn(e,t){let[n,...r]=t;if(n===void 0)return!0;let i=_n(n);if(!F(e)||!Object.hasOwn(e,i.key))return!1;let a=e[i.key]??null;return i.isArray?Array.isArray(a)&&a.every(e=>fn(e,r)):fn(a,r)}function pn(e){return e.split(`.`).some(e=>_n(e).isArray)}function mn(e,t){return e.parameter.length===0||!F(t)?null:yn(t,[],vn(e.parameter))}function F(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function hn(e,t,n,r=0){let i=t.split(`.`),a=e;for(let[e,o]of i.entries()){let s=_n(o),c=e===i.length-1,l=gn(a,s,t,c,n,r);if(!l.ok||l.data===null)return v(l.summary,l.warnings);if(c)return y(`Body value assigned`,null);a=l.data}return v(`${t} is not a valid body option path.`)}function gn(e,t,n,r,i,a){let o=()=>v(`${n} cannot be combined with another body option at ${t.key}.`),s=e[t.key];if(t.isArray){if(s!==void 0&&!Array.isArray(s))return o();let n=s??[];if(s===void 0&&(e[t.key]=n),r)return n[a]===void 0?(n[a]=i,y(`Body value assigned`,e)):o();let c=n[a];if(c===void 0){let e={};return n[a]=e,y(`Body path created`,e)}return F(c)?y(`Body path stepped`,c):o()}if(r)return s===void 0?(e[t.key]=i,y(`Body value assigned`,e)):o();if(s===void 0){let n={};return e[t.key]=n,y(`Body path created`,n)}return F(s)?y(`Body path stepped`,s):o()}function _n(e){let t=e.endsWith(`[]`);return{key:t?e.slice(0,-2):e,isArray:t}}function vn(e){let t=new Set,n=new Set;for(let r of e){let e=`${r.name}${r.schemaType===`array`?`[]`:``}`;t.add(e);let i=e.split(`.`);for(let e=1;e<i.length;e+=1)n.add(i.slice(0,e).join(`.`))}return{leaf:t,prefix:n}}function yn(e,t,n){if(Array.isArray(e)){if(e.length===0)return null;for(let r of e){let e=yn(r,t,n);if(e!==null)return e}return null}if(!F(e))return null;for(let[r,i]of Object.entries(e)){let e=[...t,Array.isArray(i)?`${r}[]`:r],a=e.join(`.`);if(!bn(a,n)){if(!xn(e))continue;return{path:a,suggestion:Sn(e,n)}}let o=yn(i,e,n);if(o!==null)return o}return null}function bn(e,t){return t.prefix.has(e)||t.leaf.has(e)}function xn(e){return e.slice(0,-1).some(e=>e.endsWith(`[]`))}function Sn(e,t){let n=e.slice(0,-1).join(`.`),r=e.at(-1)?.replace(/\[\]$/u,``).toLowerCase()??``;return[...t.leaf].filter(e=>e.split(`.`).slice(0,-1).join(`.`)===n).map(e=>({path:e,score:Cn(r,e.split(`.`).at(-1)??``)})).filter(({score:e})=>e<1/0).toSorted((e,t)=>e.score-t.score||e.path.localeCompare(t.path))[0]?.path}function Cn(e,t){let n=t.replace(/\[\]$/u,``).toLowerCase();return n===e?0:n.endsWith(e)||e.endsWith(n)?1:n.includes(e)||e.includes(n)?2:1/0}function wn(e,t){let n=new Map;for(let e of t){let t=e.flag?.split(` `)[0];t!==void 0&&n.set(t,t===`--from-file`?{...e,inputType:`file`}:e)}for(let t of e){let e=t.long===void 0?void 0:n.get(t.long);e!==void 0&&(t.helpGroup(Pe(e)),t.description=ee(t.description,{...e,hasParseDefault:t.defaultValue!==void 0}))}e.sort((e,t)=>{let r=e.long===void 0?void 0:n.get(e.long),i=t.long===void 0?void 0:n.get(t.long);return r!==void 0&&i!==void 0?Mn(r,i):r===void 0?i===void 0?0:1:-1})}function Tn(e){let t=new Map;for(let n of e)for(let e of n.parameter){let r=e.flag.split(` `)[0]??e.flag,i=t.get(r);i===void 0?t.set(r,{variant:[{descriptor:n,parameter:e}]}):t.set(r,{variant:[...i.variant,{descriptor:n,parameter:e}]})}return[...t.values()]}function En(e){let{flag:t}=e.variant[0].parameter;return e.variant.every(({parameter:e})=>e.flag===t)?t:`${t.split(` `)[0]??t} <value>`}function Dn(e){let t=e.variant.map(({descriptor:e,parameter:t})=>({contentType:e.contentType,text:An(e,t)})),n=t[0];return n===void 0?``:t.every(({text:e})=>e===n.text)?`${n.text===``?``:`${n.text} `}Request content: ${t.map(({contentType:e})=>e).join(`, `)}.`:t.map(({contentType:e,text:t})=>`${e}: ${t}`).join(` `)}function On(e,t){return[...new Set((e.cliConflicts??[]).filter(e=>e.includes(t)).flatMap(e=>e.filter(e=>e!==t)))]}function kn(e,t){let n=e.kind===`multipart`?`Read a JSON object keyed by multipart part name from a file, or use - for stdin`:`Read the JSON request body from a file, or use - for stdin`,r=t.filter(e=>!t.some(t=>t.startsWith(`${e}.`)||t.startsWith(`${e}[].`)));return r.length===0?Ie(n):`${Ie(n)} Required JSON paths: ${r.join(`, `)}.`}function An(e,t){let n=Ne(t.description,void 0),r=e.kind!==`multipart`&&pn(t.name),i=e.kind!==`multipart`&&t.optionKey!==t.name&&/^\w+$/u.test(t.name);return`${n}${r?` Repeat to add another value.`:``}${i?` --from-file JSON key: ${t.name}.`:``}${jn(e,t)}`}function jn(e,t){if(e.kind===`multipart`||t.schemaType!==`array`)return``;let n=$t(t.name);return n===null?``:` Prefix each value with its 0-based ${n}[] row index, as 0:value, to fill more than one ${n}[] row. A leading digits-and-colon is always read as that index, so name the row of a value that starts the same way, as 0:0:00 for the value 0:00.`}function Mn(e,t){return Re(e)-Re(t)||Number(e.required!==!0)-Number(t.required!==!0)}async function Nn(e){let t;try{t=e===`-`?await Pn():await Kt(e,`utf8`)}catch(t){return v(`Could not read input: ${t.message}`,[`path=${e}`])}try{if(t.trim().length===0)return y(`No input provided`,null);let e=JSON.parse(t);return y(`Input parsed`,e)}catch(e){return v(`Input is not valid JSON: ${e.message}`)}}async function Pn(){if(process.stdin.isTTY)throw Error(`--from-file - requires JSON on stdin, but stdin is a TTY`);process.stdin.setEncoding(`utf8`);let e=``;for await(let t of process.stdin)e+=t;return e}var Fn=`--content-type`;function In(t,n,r){let i=e=>!r?.has(e)&&(r?.add(e),!0),a=n.requestBody??[];if(a.length>1&&i(Fn)){let n=a.map(({contentType:e})=>e);t.addOption(new e(`${Fn} <media-type>`,`Select the request body encoding, never an uploaded file's media type; omit for ${n[0]}.`).choices(n).argParser(Rn(a)))}if(nr(n)&&i(`--from-file`)){let r=a[0];if(r===void 0)throw Error(`${n.operationId} has no request body`);t.addOption(new e(`--from-file <path>`,kn(r,r.requiredPath)).argParser(Bn(`--from-file`)))}let o=Tn(a).filter(e=>i(I(e.variant[0].parameter)));for(let n of o.toSorted((e,t)=>Mn(e.variant[0].parameter,t.variant[0].parameter))){let{descriptor:r,parameter:i}=n.variant[0],o=new e(En(n),a.length>1?Dn(n):An(r,i));a.length===1&&i.envName!==void 0&&o.env(i.envName);let s=a.length===1?On(r,i.optionKey):[];s.length>0&&o.conflicts(s),a.length>1?o.argParser(Ln):pn(i.name)||i.schemaType===`array`?o.argParser(zn):o.argParser(Bn(i.flag)),t.addOption(o),o.envVar!==void 0&&t.on(`optionEnv:${o.name()}`,()=>{let e=t.opts()[i.optionKey];typeof e==`string`&&e.trim()&&t.setOptionValueWithSource(i.optionKey,e.trim(),`env`)})}tr(t,n,o)}function Ln(e,t){return t===void 0?e:typeof t==`string`?[t,e]:[...t,e]}function Rn(e){return(n,r)=>{if(r!==void 0)throw new t(`${Fn} was already given; pass it once.`);let i=ue(e,n);if(!i.ok)throw new t(i.summary);return n}}function zn(e,t){return[...t??[],e]}function Bn(e){let n=e.split(/\s+/u)[0]??e;return(e,r)=>{if(r!==void 0)throw new t(`${n} was already given; pass it once.`);return e}}async function Vn(e,t){let n=vt(e,t),r=ue(e.requestBody??[],n);if(!r.ok||r.data===null)return v(r.summary,r.warnings);let i=r.data;if(i===void 0)return y(`No body`,void 0);let a=Hn(e,i,t);if(a!==null)return v(a);let o=Jt(e.operationId,i,t);if(!o.ok)return v(o.summary,o.warnings);t=o.data;let s=Un(i,t);if(s!==null)return v(s);let c=await qn(t);if(!c.ok)return v(c.summary,c.warnings);let l=dn(e.requestBody??[],i,c.data);if(l!==null)return v(l);let u=Kn(e.operationId,i,c.data);if(!u.ok)return u;let d=Yt(e.operationId,i,c.data);if(d!==null)return v(d);let f=Jn(e.operationId,i,t);if(!f.ok)return f;if(c.data===void 0&&f.data===void 0)return i.required?v(er(e.operationId,i)):y(`No body`,void 0);let p=Xn(e.operationId,i,c.data,f.data);if(!p.ok||p.data===void 0)return p;if(i.schemaType===`array`&&!Array.isArray(p.data))return v(`${e.operationId} requires a JSON array body.`);if(i.parameter.length>0&&!F(p.data)){let t=i.kind===`multipart`?` keyed by multipart part name`:` body`;return v(`${e.operationId} requires a JSON object${t}.`)}let m=Gn(i,p.data);if(m.length>0)return v(`${e.operationId} requires body option(s): ${m.join(`, `)}`);let h=p.data,g=F(h)?Xt(i).filter(e=>!un(h,e)):[];return g.length>0?v(Wn(e.operationId,i,g)):p}function Hn(e,t,n){let r=new Set(t.parameter.map(({optionKey:e})=>e));for(let i of e.requestBody??[])if(i!==t)for(let t of i.parameter){if(r.has(t.optionKey)||n[t.optionKey]===void 0)continue;let i=(e.requestBody??[]).filter(e=>e.parameter.some(({optionKey:e})=>e===t.optionKey)).map(({contentType:e})=>e);return`${I(t)} requires ${Fn} ${i.join(` or `)}.`}return null}function Un(e,t){for(let n of e.cliConflicts??[]){let e=n.filter(e=>t[e]!==void 0);if(e.length>1)return`Options ${e.join(`, `)} cannot be used together.`}return null}function Wn(e,t,n){let r=`${e} requires JSON body path(s): ${n.join(`, `)}`;return t.kind===`multipart`?`${r}. ${n.includes(`body`)?`For multipart --from-file, wrap the endpoint JSON under top-level "body".`:`For multipart --from-file, put the missing nested path(s) inside top-level "body".`}`:r}function Gn(e,t){return F(t)?e.parameter.filter(e=>e.required&&!un(t,e.name)).map(I):[]}function Kn(e,t,n){let r=mn(t,n);if(r===null)return y(`Body file paths validated`,null);let i=r.suggestion===void 0?``:` Use ${r.suggestion}.`;return v(`${e} --from-file contains unknown JSON path ${r.path}.${i}`)}async function qn(e){let t=typeof e.fromFile==`string`?e.fromFile:void 0;if(t===void 0)return y(`No body file`,void 0);let n=await Nn(t);if(!n.ok)return v(n.summary,n.warnings);let r=ie.safeParse(n.data);return r.success?y(`Input parsed`,r.data):v(`Input is not valid JSON value: ${r.error.message}`)}function Jn(e,t,n){let r={},i=!1;for(let e of t.parameter){let a=tn(e,n[e.optionKey]);if(!a.ok||a.data===null)return v(a.summary,a.warnings);let o=a.data;if(o===void 0)continue;let s=Yn(t,n,r,e,o);if(!s.ok)return v(s.summary,s.warnings);i=!0}if(!i)return y(`No direct body options`,void 0);let a=on(e,t,n,r);return a===null?y(`Direct body options parsed`,r):a}function Yn(e,t,n,r,i){let a=rn(r,i);if(a===null){let e=Qn(r,i);return e.ok?Zt(n,r.name,e.data,r.schemaType===`array`):v(e.summary,e.warnings)}if(a.plain.length>0)return v(`${I(r)} mixes row-form values with plain value(s): ${a.plain.join(`, `)} — prefix every value with its 0-based ${a.container}[] row index, as 0:value.`);let o=an(e,t,a.container);for(let e of a.rows.keys())if(!(e<o))return v(`${I(r)} names ${a.container}[] row ${e}, but these options build at most ${o} ${a.container}[] row(s) — number rows from 0, and name the row of a value that itself starts with digits and a colon, as 0:0:00 for the value 0:00.`);for(let[e,t]of a.rows){let i=[];for(let e of t){let t=$n(r.name,r.itemSchemaType,e);if(!t.ok)return v(t.summary,t.warnings);i.push(t.data)}let a=Qt(n,r.name,e,i);if(!a.ok)return a}return y(`Body value assigned`,null)}var I=e=>e.flag.split(` `)[0]??e.name;function Xn(e,t,n,r){if(n===void 0)return y(`Direct body parsed`,r);if(r===void 0)return y(`Input parsed`,n);if(F(n)&&F(r))try{return y(`Input parsed`,Zn(t,n,r))}catch(t){return v(`${e} ${t.message}`)}return v(`${e} cannot combine --from-file with direct body options unless the file body is an object.`)}function Zn(e,t,n,r=``){let i={...t};for(let[t,a]of Object.entries(n)){let n=i[t],o=`${r}${t}`;if(F(n)&&F(a))i[t]=Zn(e,n,a,`${o}.`);else if(n===void 0||n===a)i[t]=a;else throw Error(`sets JSON key '${o}' both in --from-file and with ${e.parameter.find(({name:e})=>e===o)?.flag.split(` `)[0]??`body options`} — set it in one place${Array.isArray(n)?`: move the per-item fields inside the matching '${o}[]' object(s) in the file body`:je.test(o)?`; keep multi-line text in the --from-file body`:``}.`)}return i}function Qn(e,t){if(typeof t==`boolean`)return y(`Body value parsed`,t);if(t===void 0||typeof t==`string`)return $n(e.name,e.schemaType,t??``);let n=[],r=pn(e.name)&&e.schemaType!==`array`?e.schemaType:e.itemSchemaType;for(let i of t){let t=$n(e.name,r,i);if(!t.ok)return t;n.push(t.data)}return y(`Body value parsed`,n)}function $n(e,t,n){if(t===`boolean`)return n===`true`?y(`Body value parsed`,!0):n===`false`?y(`Body value parsed`,!1):v(`${e} must be true or false.`);if(t===`number`||t===`integer`){let r=n.trim(),i=Number(r);return r===``||!Number.isFinite(i)?v(`${e} must be a finite ${t}.`):t===`integer`&&!Number.isInteger(i)?v(`${e} must be an integer.`):y(`Body value parsed`,i)}return y(`Body value parsed`,n)}function er(e,t){let n=t.parameter.filter(e=>e.required);if(n.length>0&&t.requiredPath.every(e=>n.some(({name:t})=>t===e||t.startsWith(`${e}.`))))return`${e} requires body option(s): ${n.map(I).join(`, `)}`;let r=Xt(t);if(r.length>0)return`${e} requires --from-file with JSON body path(s): ${r.join(`, `)}`;let i=t.parameter.map(I).join(`, `);return i.length===0?`${e} requires --from-file`:`${e} requires --from-file or body option(s): ${i}`}function tr(e,t,n){let r=[...t.parameters,...n.map(({variant:e})=>e[0].parameter)];(t.requestBody?.length??0)>1&&r.push({optionKey:`contentType`,flag:Fn,location:`body`}),nr(t)&&r.push({optionKey:`fromFile`,flag:`--from-file`,location:`body`}),wn(e.options,r)}function nr(e){return(e.requestBody??[]).some(e=>e.kind!==`multipart`||e.parameter.some(e=>e.schemaFormat!==`binary`))}function rr(e){let t=re(e,Ae(e,E));return fr(t),process.stdout.write(`${JSON.stringify(t)}\n`),t}function ir(e){let t=re(e,Ae(e,E));fr(t);let n=Ee(E,t.data,t.summary),r=[];if(t.ok&&n!==null){let e=ar(t);r.push(n.endsWith(`
|
|
2
2
|
`)?n.slice(0,-1):n),r.push(...e),process.stdout.write(Se(r.join(`
|
|
3
3
|
`),!0,!0,e.length));return}let i=t.ok?`OK`:`FAIL`;r.push(`[${i}] ${t.summary}`),!t.ok&&t.problem!==void 0&&r.push(...cr(t.problem)),r.push(...ar(t)),process.stdout.write(Se(r.join(`
|
|
4
4
|
`),!0))}function ar(e){let t=[];e.ids.length>0&&t.push(` ids: ${e.ids.join(`, `)}`);for(let[n,r]of Object.entries(e.counts))t.push(` ${n}: ${r}`);for(let n of e.references)t.push(` ref: ${n}`);if(e.truncation!==void 0){let n=e.truncation.omitted.join(`, `);t.push(` truncated: byteLength=${e.truncation.byteLength} maxBytes=${e.truncation.maxBytes} omitted=${n}`,` recovery: ${e.truncation.recovery}`)}for(let n of e.warnings)t.push(` warn: ${n}`);return t}function L(e,t){let n=be(t);if(e.mode===`data`||e.mode===`data-full`){let t=e.mode===`data`?re(n,Ae(n,E)):n;fr(t),process.stdout.write(`${JSON.stringify(t.ok&&t.truncated!==!0?or(t.data):t)}\n`),t.ok||(process.exitCode=1);return}let r=e.mode===`json`?rr(n):n;e.mode===`text`&&ir(r),r.ok||(process.exitCode=1)}function or(e){return typeof e!=`object`||!e||Array.isArray(e)||!Reflect.has(e,`method`)||!Reflect.has(e,`endpoint`)||!(`response`in e)||e.response===void 0?e:e.response}function sr(e,t){let n=ke(t);if(n===null){process.stderr.write(`explain: the response carried no search interpretation
|
|
@@ -28,7 +28,7 @@ import{n as e,o as t,r as n,t as r}from"./commander-BB7CDPLs.js";import{i,o as a
|
|
|
28
28
|
`).slice(-3).join(` | `);return v(`npm ${e.join(` `)} exited ${a.status}`,[t||`no stderr`])}return y(`npm ok`,a.stdout??``)}function eo(e,t,n){let r=e===null?``:` --prefix ${JSON.stringify(e.installPrefix)}`;return[`Finish by hand: npm uninstall -g${r} ${le}`,`then: npm install -g${r} ${t}@${n} --@aventurevc:registry=`]}function to(e,t,n){let r;try{let n=S(A(e,`lib`,`node_modules`,...t.split(`/`),`package.json`));r=A(e,`bin`,n.bin[0])}catch(e){return v(`updated ${t} verification failed: ${so(e)}`,[`invalid_package_metadata`])}let i=wt(process.execPath,[r,`--version`],{encoding:`utf8`});if(i.error)return v(`updated ${t} verification failed: ${i.error.message}`,[`spawn_error`]);let a=(i.stdout??``).trim();if(i.status!==0||a!==n){let e=(i.stderr??``).trim().split(`
|
|
29
29
|
`).slice(-3).join(` | `);return v(`updated ${t} verification expected ${n} but active bin reported ${a||`empty output`}`,[e||`active bin: ${r}`])}return y(`active CLI version verified`,a)}function no(e){let t=`${j}lib${j}node_modules${j}${e.name.replace(`/`,j)}`,n=e.packageRoot.lastIndexOf(t);if(n<0)return null;let r=e.packageRoot.slice(0,n);return{installPrefix:ro(e)??r}}function ro(e){let t=`${j}${Ya.join(j)}${j}`,n=e.packageRoot.lastIndexOf(t);return n<0?null:e.packageRoot.slice(0,n)}function io(e){return M(e)?Mt(e):null}function ao(e,t){let n=A(t,`bin`);kt(n,{recursive:!0});for(let t of jt(A(e,`bin`))){let r=Mt(A(e,`bin`,t)),i=A(n,`.${t}-${process.pid}`);Ft(Et(n,r),i),Nt(i,A(n,t))}}function oo(e){let t=A(e,`bin`),n=jt(t).flatMap(e=>io(A(t,e))??[]),r=A(e,...Ya),i=jt(r).toSorted((e,t)=>qa.compare(t,e)).slice(Xa).map(e=>A(r,e)).filter(e=>!n.some(t=>t.startsWith(`${e}${j}`)));for(let e of i)Pt(e,{recursive:!0,force:!0})}function so(e){return e instanceof Error?e.message:String(e)}function co(){try{return ja()}catch(e){return{refreshed:!1,message:e instanceof Error?e.message:String(e)}}}var lo=[{name:`cli-version`,purpose:`running CLI against the latest published release`},{name:`api-schemas`,purpose:`the installed @aventurevc/api-schemas contracts resolve`},{name:`api-host`,purpose:`the selected API host answers its generated status operation`},{name:`auth`,purpose:`which credential signs in, as which account and role, never secrets`},{name:`catalog`,purpose:`this CLI knows every operation the API serves`}],uo=`operationFingerprint`;function fo(e,t=S().bin[0]){O(e.command(`doctor`).summary(`One-call selftest: CLI version, schemas, API host, auth scope, command catalog`).description(["Run every environment check in one call and report `{ ok, check: [...] }`:",...lo.map(e=>` - ${e.name}: ${e.purpose}`),``,`Exit code is 0 only when no check failed; a skipped check (no registry reachable) or a`,`warned one (the account read failed) does not fail the run. Each failing message names the command that fixes it.`,"--json always carries the report at `.data`; --data prints the report directly when",`every check passes and the result envelope when one fails, like every other command.`].join(`
|
|
30
30
|
`))).action(async function(e){let n=this.optsWithGlobals();n.environment!==void 0&&(process.env.API_ENV=n.environment),L({mode:D(e)},await po(t))})}async function po(e){let t=ho(),n=go(e),[r,i]=await Promise.all([_o(e),vo(t,e)]),a=[n.check,r,i.check,await bo(e),Do(t,i.servedFingerprint,n.upgradeAvailable,e)],o={pass:mo(a,`pass`),warn:mo(a,`warn`),fail:mo(a,`fail`),skip:mo(a,`skip`)},s=a.filter(e=>e.status===`fail`).map(e=>e.message),c={ok:s.length===0,check:a},l=[`doctor: ${o.pass} pass, ${o.warn} warn, ${o.fail} fail, ${o.skip} skip`,...a.map(e=>` ${e.name} ${e.status} — ${e.message}`)].join(`
|
|
31
|
-
`);return c.ok?y(l,c,{counts:o}):{...v(l,s,{counts:o}),data:c}}function mo(e,t){return e.filter(e=>e.status===t).length}function G(e,t,n){return{name:e,status:t,message:n}}function ho(){return E.find(e=>e.intent===`status`&&e.resource===`status`)}function go(e){let t=S(),n=Qa(t,`check`);if(!n.ok||n.data===null)return{check:G(`cli-version`,`skip`,`Could not compare ${t.version} against the registry (${n.summary}); rerun \`${e} update\` with registry access.`),upgradeAvailable:null};let{targetPackage:r,currentVersion:i,latestVersion:a,upgradeAvailable:o}=n.data;return{check:o?G(`cli-version`,`fail`,`Upgrade ${r} from ${i} to ${a}: run \`${e} update\`.`):G(`cli-version`,`pass`,`${r} ${i} matches the latest published release.`),upgradeAvailable:o}}async function _o(e){try{let{EntityDetailSchema:e}=await import(`./detail-CFSXWI3r.js`);if(typeof e.safeParse!=`function`)throw Error(`EntityDetailSchema does not expose a Zod parser`);return G(`api-schemas`,`pass`,`Installed @aventurevc/api-schemas contracts resolve beyond the CLI startup path.`)}catch(t){return G(`api-schemas`,`fail`,`Reinstall the CLI: run \`${e} update\` — ${w(t)}.`)}}async function vo(e,t){if(e===void 0)return{check:G(`api-host`,`skip`,`No status operation resolved from the generated catalog; fix the catalog check first.`),servedFingerprint:null};let n;try{n=b().host}catch(e){return{check:G(`api-host`,`fail`,`Correct API_ENV or pass \`--environment <name>\` — ${w(e)}.`),servedFingerprint:null}}let r=await p({method:e.method,path:e.path,auth:e.auth,responseFormat:`json`}).catch(e=>v(w(e)));return r.ok?{check:G(`api-host`,`pass`,`${e.method} ${e.path} answered at ${n}.`),servedFingerprint:yo(r.data)}:{check:G(`api-host`,`fail`,r.httpStatus===401?`Replace or unset the credential ${n} rejected, or run \`${t} auth login\`, then rerun \`${t} auth doctor\` — ${e.method} ${e.path} returned ${r.summary}.`:`Point the CLI at a reachable API host with \`--environment <name>\` or API_URL, then rerun \`${t} auth doctor\` — ${e.method} ${e.path} at ${n} returned ${r.summary}.`),servedFingerprint:null}}function yo(e){if(typeof e!=`object`||!e||e instanceof Uint8Array)return null;let{response:t}=e;if(typeof t!=`object`||!t||Array.isArray(t))return null;let n=t[uo];return typeof n==`string`&&n.length>0?n:null}async function bo(e){let t=Ue(),[n,r]=await Promise.all([So(),Co()]);if(r.state===`unavailable`&&r.cause===`environment`)return G(`auth`,`fail`,`Fix the environment configuration first — ${r.summary}.`);let i=t.present,a=r.state===`found`&&r.stored.activation===`active`;if(!i&&n.state===`invalid`)return G(`auth`,`fail`,`Saved OAuth credential is invalid; run \`${e} auth login\` to sign in again after verification — ${n.summary}.`);if(!i&&n.state===`found`&&et(n.stored.credential)&&n.stored.credential.tokens.refresh_token===void 0)return G(`auth`,`fail`,`Saved OAuth access token is expired without a refresh token; run \`${e} auth login\` to sign in again.`);if(!i&&!a&&n.state===`unavailable`)return G(`auth`,`fail`,`Make the OS keyring or the CLI config directory usable before \`${e} auth login\`, or inject ${x.authToken} through the environment — ${n.summary}.`);if(i||n.state===`found`||a){let i=await xo(e,t);return G(`auth`,i.status,`Credential source available: ${wo(t,n,r)}; ${i.text}.`)}return r.state===`unavailable`?G(`auth`,`fail`,`Make the OS keyring or the CLI config directory usable before \`${e} auth login --key\`, or inject ${x.authToken} through the environment — ${r.summary}.`):G(`auth`,`fail`,`Run \`${e} auth login\` for OAuth or \`${e} auth login --key\` for an API key. For non-interactive use, set ${x.authToken} in the environment.`)}async function xo(e,t){let n=T(b().host),r=await ea(e),i=`credential=${t.present?t.source??`env`:r.materialized??`none`}`;try{if(r.failure!==null)throw Error(r.failure);let e=await $i(`write`);if(e===null)return{status:`pass`,text:`${i} host=${n}`};let t=e.rbacRole.length===0?`none`:e.rbacRole.join(`,`);return{status:`pass`,text:`${i} account=${e.email??e.id} role=${t} host=${n}`}}catch(t){return{status:`warn`,text:`${i} account=unread host=${n} — GET /v1/auth/me returned ${w(t,[b().userBearerToken])}; run \`${e} auth status --verify write\``}}}async function So(){let e;try{e=T(b().host)}catch(e){return{state:`unavailable`,summary:w(e)}}return await ot(e)}async function Co(){let e;try{e=T(b().host)}catch(e){return{state:`unavailable`,summary:w(e),cause:`environment`}}try{return await Je(e)}catch(e){return{state:`unavailable`,summary:w(e),cause:`storage`}}}function wo(e,t,n){return[Ca(e),`oauth=${Eo(t)}`,`api-key=${To(n)}`].join(` `)}function To(e){if(e.state!==`found`)return e.state===`missing`?`unset`:`unavailable`;let t=T(b().host);return`${e.stored.activation}${ca(t,e)}`}function Eo(e){switch(e.state){case`found`:return et(e.stored.credential)?`expired`:`stored`;case`missing`:return`unset`;case`invalid`:return`invalid`;case`unavailable`:return`unavailable`;default:throw Error(`Unsupported OAuth credential state`)}}function Do(e,t,n,r){let i=E.length;if(e===void 0)return G(`catalog`,`fail`,`Regenerate the command catalog with \`make mcp-generate-contracts\` and reinstall: none of its ${i} operations is the status operation.`);if(t===null)return G(`catalog`,`skip`,`Could not read the served operation fingerprint, so drift is unproven; this catalog holds ${i} operations at ${St}.`);if(t===`
|
|
31
|
+
`);return c.ok?y(l,c,{counts:o}):{...v(l,s,{counts:o}),data:c}}function mo(e,t){return e.filter(e=>e.status===t).length}function G(e,t,n){return{name:e,status:t,message:n}}function ho(){return E.find(e=>e.intent===`status`&&e.resource===`status`)}function go(e){let t=S(),n=Qa(t,`check`);if(!n.ok||n.data===null)return{check:G(`cli-version`,`skip`,`Could not compare ${t.version} against the registry (${n.summary}); rerun \`${e} update\` with registry access.`),upgradeAvailable:null};let{targetPackage:r,currentVersion:i,latestVersion:a,upgradeAvailable:o}=n.data;return{check:o?G(`cli-version`,`fail`,`Upgrade ${r} from ${i} to ${a}: run \`${e} update\`.`):G(`cli-version`,`pass`,`${r} ${i} matches the latest published release.`),upgradeAvailable:o}}async function _o(e){try{let{EntityDetailSchema:e}=await import(`./detail-CFSXWI3r.js`);if(typeof e.safeParse!=`function`)throw Error(`EntityDetailSchema does not expose a Zod parser`);return G(`api-schemas`,`pass`,`Installed @aventurevc/api-schemas contracts resolve beyond the CLI startup path.`)}catch(t){return G(`api-schemas`,`fail`,`Reinstall the CLI: run \`${e} update\` — ${w(t)}.`)}}async function vo(e,t){if(e===void 0)return{check:G(`api-host`,`skip`,`No status operation resolved from the generated catalog; fix the catalog check first.`),servedFingerprint:null};let n;try{n=b().host}catch(e){return{check:G(`api-host`,`fail`,`Correct API_ENV or pass \`--environment <name>\` — ${w(e)}.`),servedFingerprint:null}}let r=await p({method:e.method,path:e.path,auth:e.auth,responseFormat:`json`}).catch(e=>v(w(e)));return r.ok?{check:G(`api-host`,`pass`,`${e.method} ${e.path} answered at ${n}.`),servedFingerprint:yo(r.data)}:{check:G(`api-host`,`fail`,r.httpStatus===401?`Replace or unset the credential ${n} rejected, or run \`${t} auth login\`, then rerun \`${t} auth doctor\` — ${e.method} ${e.path} returned ${r.summary}.`:`Point the CLI at a reachable API host with \`--environment <name>\` or API_URL, then rerun \`${t} auth doctor\` — ${e.method} ${e.path} at ${n} returned ${r.summary}.`),servedFingerprint:null}}function yo(e){if(typeof e!=`object`||!e||e instanceof Uint8Array)return null;let{response:t}=e;if(typeof t!=`object`||!t||Array.isArray(t))return null;let n=t[uo];return typeof n==`string`&&n.length>0?n:null}async function bo(e){let t=Ue(),[n,r]=await Promise.all([So(),Co()]);if(r.state===`unavailable`&&r.cause===`environment`)return G(`auth`,`fail`,`Fix the environment configuration first — ${r.summary}.`);let i=t.present,a=r.state===`found`&&r.stored.activation===`active`;if(!i&&n.state===`invalid`)return G(`auth`,`fail`,`Saved OAuth credential is invalid; run \`${e} auth login\` to sign in again after verification — ${n.summary}.`);if(!i&&n.state===`found`&&et(n.stored.credential)&&n.stored.credential.tokens.refresh_token===void 0)return G(`auth`,`fail`,`Saved OAuth access token is expired without a refresh token; run \`${e} auth login\` to sign in again.`);if(!i&&!a&&n.state===`unavailable`)return G(`auth`,`fail`,`Make the OS keyring or the CLI config directory usable before \`${e} auth login\`, or inject ${x.authToken} through the environment — ${n.summary}.`);if(i||n.state===`found`||a){let i=await xo(e,t);return G(`auth`,i.status,`Credential source available: ${wo(t,n,r)}; ${i.text}.`)}return r.state===`unavailable`?G(`auth`,`fail`,`Make the OS keyring or the CLI config directory usable before \`${e} auth login --key\`, or inject ${x.authToken} through the environment — ${r.summary}.`):G(`auth`,`fail`,`Run \`${e} auth login\` for OAuth or \`${e} auth login --key\` for an API key. For non-interactive use, set ${x.authToken} in the environment.`)}async function xo(e,t){let n=T(b().host),r=await ea(e),i=`credential=${t.present?t.source??`env`:r.materialized??`none`}`;try{if(r.failure!==null)throw Error(r.failure);let e=await $i(`write`);if(e===null)return{status:`pass`,text:`${i} host=${n}`};let t=e.rbacRole.length===0?`none`:e.rbacRole.join(`,`);return{status:`pass`,text:`${i} account=${e.email??e.id} role=${t} host=${n}`}}catch(t){return{status:`warn`,text:`${i} account=unread host=${n} — GET /v1/auth/me returned ${w(t,[b().userBearerToken])}; run \`${e} auth status --verify write\``}}}async function So(){let e;try{e=T(b().host)}catch(e){return{state:`unavailable`,summary:w(e)}}return await ot(e)}async function Co(){let e;try{e=T(b().host)}catch(e){return{state:`unavailable`,summary:w(e),cause:`environment`}}try{return await Je(e)}catch(e){return{state:`unavailable`,summary:w(e),cause:`storage`}}}function wo(e,t,n){return[Ca(e),`oauth=${Eo(t)}`,`api-key=${To(n)}`].join(` `)}function To(e){if(e.state!==`found`)return e.state===`missing`?`unset`:`unavailable`;let t=T(b().host);return`${e.stored.activation}${ca(t,e)}`}function Eo(e){switch(e.state){case`found`:return et(e.stored.credential)?`expired`:`stored`;case`missing`:return`unset`;case`invalid`:return`invalid`;case`unavailable`:return`unavailable`;default:throw Error(`Unsupported OAuth credential state`)}}function Do(e,t,n,r){let i=E.length;if(e===void 0)return G(`catalog`,`fail`,`Regenerate the command catalog with \`make mcp-generate-contracts\` and reinstall: none of its ${i} operations is the status operation.`);if(t===null)return G(`catalog`,`skip`,`Could not read the served operation fingerprint, so drift is unproven; this catalog holds ${i} operations at ${St}.`);if(t===`2643adab0b44b01f`)return G(`catalog`,`pass`,`${i} generated operations match the set the API serves (${St}).`);let a=`This catalog describes a different operation set than the API serves (${St} vs ${t})`;return n===!0?G(`catalog`,`fail`,`${a}: run \`${r} update\`.`):G(`catalog`,`skip`,n===!1?`${a}, and this CLI is already the latest published release: either the deployed API is older than this CLI, or a newer CLI has not been published yet.`:`${a}, and the registry did not answer, so it is unknown whether a newer release describes it: rerun \`${r} update\` with registry access.`)}var Oo=C(z,`oauth`),ko=[C(z,`start`),C(z,`poll`),C(z,`acknowledge`)],Ao=C(z,`revoke`);function jo(t,n=S().bin[0]){let r=Fo(t);fo(r,n);let i=[`${Oo.description} Default method: OAuth in your browser.`,`With --key: ${ko.map(({description:e})=>e).join(` `)}`].join(`
|
|
32
32
|
`);O(Po(r,[Oo,...ko],i)).action(Mo),O(Po(r,[Ao],Ao.description)).action(No),O(r.command(`status`).summary(`Keep saved credentials current and report them with API build and uptime`).description([`Runs the same credential materialization every command runs, then reports:`,` - auth: whether AUTH_TOKEN was already set in this shell's environment`,` - oauth: the saved OAuth identity and access-token expiry for the selected API host;`,` an expired token is renewed with its refresh token and a token the sign-in service rejects is retired`,` - api-key: the saved aVenture API key, re-verified with aVenture sign-in and its cached metadata updated`,` - selected: the credential the next command sends`,` - providers: GET /v1/auth/providers (browser sign-in and the CLI OAuth client)`,` - api: running CLI package version plus GET /info build metadata`,` - system: GET /v1/status response (uptime SLA)`,``,`Saved credentials are sent only to the selected API host and aVenture sign-in, never printed.`,`--verify read|write additionally runs a live permission probe for that scope; it does not`,`execute or authorize an arbitrary API operation.`].join(`
|
|
33
33
|
`)).addOption(new e(`--verify <scope>`,`verify one permission-probe scope`).choices([`read`,`write`]))).action(async function(e){Io(this),L({mode:D(e)},await Lo(n,e.verify))}),r.command(`token`).summary(`Print the bearer token the next command sends`).description([`Runs the same credential materialization every command runs, then prints the selected`,`bearer token alone on stdout: ${x.authToken} when set, otherwise the saved OAuth`,`access token (renewed when expired) or the saved aVenture API key.`,`Use it where another client needs this CLI's sign-in, such as an MCP client's header helper.`].join(`
|
|
34
34
|
`)).action(async function(){Io(this);let e=await ea(n),t=process.env[x.authToken]?.trim();if(e.failure===null&&t!==void 0&&t.length>0){process.stdout.write(`${t}\n`);return}L({mode:`text`},e.failure===null?Go(`auth token: no credentials resolved`,null,n,{oauth:!0,apiKey:!0}):v(`auth token: ${e.failure}`))})}async function Mo(e){Io(this);let t=D(e);if(e.providers===!0){L({mode:t},await zo());return}L({mode:t},e.key===!0?await Ui({noBrowser:!e.browser,clientLabel:e.clientLabel}):await ut({noBrowser:!e.browser}))}async function No(e){Io(this),L({mode:D(e)},await Mi({forgetLocal:e.forgetLocal===!0}))}function Po(e,t,n){let[r]=t,i=e.command(r.command.slice(r.command.indexOf(` `)+1)).summary(r.summary).description(n),a=new Set;for(let e of t)for(let t of[...e.bodyOption,...e.localOption])a.has(t.flag)||(a.add(t.flag),`required`in t&&t.required?i.requiredOption(t.flag,t.description):i.option(t.flag,t.description));return i}function Fo(e){return(e.commands.find(e=>e.name()===`auth`)??e.command(`auth`)).summary(`Sign in, sign out, and check credentials`).description([`\`${Oo.command}\`: ${Oo.summary}; \`--key\` ${ko[0].summary.toLowerCase()}.`,`\`${Ao.command}\`: ${Ao.summary}.`,"`auth status` reports local credential provenance, sign-in providers, and CLI/API build and uptime.","`auth doctor` runs the one-call selftest and prints `{ ok, check: [...] }`.","`auth token` prints the bearer token the next command sends."].join(`
|
|
@@ -57,7 +57,7 @@ end
|
|
|
57
57
|
(Did you mean `))return;let r=Is(e),i=Ls(e,r);if(i!==void 0)return i;let a=J(e),o=[...a.slice(0,-1),`${a.at(-1)}-${n}`,...r.slice(1)],s=(Vs(o)?o:void 0)??Ps(e,n)??Fs(e,n);if(s!==void 0)return zs(e,s,r)??qs(e,s.join(` `),!1);let c=r.join(` `)||n,l=Bs(e)??qs(e,c),u=[...a,...r.slice(1)];return[l,r.length===a.length+a.length&&a.at(-1)===a.at(0)?zs(e,u,r)?.replace(/^hint: Did you mean: /u,` `)+` · `:u.slice(1,-1).length>0?zs(e,u,r):void 0].filter(e=>e!==void 0).join(`
|
|
58
58
|
`)||void 0}function Xs(e){return t=>{if(t.code===`commander.missingMandatoryOptionValue`){let n=e.options.filter(t=>t.mandatory&&e.getOptionValue(t.attributeName())===void 0);if(n.length>1){let e=n.map(e=>e.flags.split(`, `).at(-1)??e.flags);process.stderr.write(`error: missing required options: ${e.join(`, `)}\n`)}let r=Es(e);for(let e of r)process.stderr.write(`error: unknown option '${e}'\n`);for(let n of[Ds(e)??(r.length>0?Js(e):void 0),bs(e),ws(e,t),...Us(e)])n!==void 0&&process.stderr.write(`${n}\n`)}else if(t.code===`commander.excessArguments`){let t=bs(e)??Ws(e);t!==void 0&&process.stderr.write(`${t}\n`)}else if(t.code===`commander.unknownOption`){let n=Cs(t,`unknown option`),r=Ds(e)??Ms(e,t)??(n!==void 0&&!t.message.includes(`
|
|
59
59
|
(Did you mean `)?Ks(e,n)??Rs(e,[n.replace(/^--/u,``)],process.argv.slice(process.argv.indexOf(n)+1))??Js(e,n)??qs(e,J(e).slice(1).join(` `)||n.replace(/^--/u,``)):void 0);r!==void 0&&process.stderr.write(`${r}\n`)}else if(t.code===`commander.unknownCommand`){let n=Ys(e,t);n!==void 0&&process.stderr.write(`${n}\n`)}process.exit(t.exitCode)}}var Zs=class extends e{group;constructor(e){super(`-h, --help`,`display help for command`),this.group=e}is(e){if(e!==this.short&&e!==this.long)return!1;let t=this.group.args.at(0);return t===void 0||t.startsWith(`-`)?!0:this.group.commands.some(e=>e.name()===t||e.aliases().includes(t))}};function Qs(e){e.showHelpAfterError(!1).exitOverride(Xs(e)),e.commands.length===0?e.hook(`preAction`,ys):e.registeredArguments.length===0&&e.addHelpOption(new Zs(e));for(let t of e.commands)Qs(t)}function $s(e,t=new Date){let n=nc(e);return{schemaVersion:1,generatedFrom:`MCP_GENERATION_CONTRACT`,generatedAt:t.toISOString(),totalOperations:n.length,note:`Projection of MCP_GENERATION_CONTRACT - see mcp/scripts/build-unified-operations.ts header for SSOT rules.`,operations:n}}function ec(e){return`${JSON.stringify(e,null,2)}\n`}function tc(e,t){let n=A(e),r=ec(t);return kt(k(n),{recursive:!0}),It(n,r),{target:n,byteLength:Buffer.byteLength(r,`utf8`),totalOperations:t.totalOperations}}function nc(e){return e.map(e=>({operationId:e.operationId,method:e.method,path:e.path,resource:e.resource,intent:e.intent,cliCommand:e.projection.cliPath.join(` `),cliPath:e.projection.cliPath,mcpTool:ge(e.intent),bodySchemaName:e.requestBody?.[0]?.schemaName??null,bodySchemaImport:e.requestBody?.[0]?.schemaImport??null,auth:e.projection.auth,scope:e.projection.scope,destructive:e.projection.destructive})).toSorted((e,t)=>e.path.localeCompare(t.path)||e.method.localeCompare(t.method)||e.operationId.localeCompare(t.operationId))}var rc=`Match only the first canonical or CLI-alias command segment`,ic=[`text`,`lines`,`compact`,`json`,`ndjson`];function ac(e,t,n=S().bin[0]){let r=e.command(`command-catalog`).summary(`LLM agent only: search generated CLI metadata`).description([`LLM agent only: search and dump generated ${n} command metadata.`,`This is read-only command metadata derived from the generated OpenAPI command specs.`,`Use --format lines for rg/grep/ag/ack and --format ndjson|json for ast-grep/sg/parsers.`,"Use --format compact for one `cli · summary · requiredFlags` row per operation."].join(`
|
|
60
|
-
`));r.addHelpText(`after`,()=>`\nShipped compact catalog of operations callable without an admin grant, greppable without\nrunning this CLI (dump --format compact lists every operation your credential reaches):\n ${Er(n)}\n`),oc(r,t,n),sc(r,t,n),cc(r,t,n),lc(r)}function oc(t,n,r){let i=t.command(`search`).summary(`Search generated operations`).description(`Search generated operation metadata without calling the API.`).argument(`[query...]`,`Search query; same as --q.`).option(`--q <query>`,`Search generated command metadata`).option(`--root <root>`,rc).addOption(new e(`--scope <scope>`,`Filter by required auth scope`).choices([`read`,`write`,`all`]).default(`all`)).addOption(new e(`--mutates <mutates>`,`Filter mutating operations`).choices([`true`,`false`,`any`]).default(`any`)).addOption(new e(`--destructive <destructive>`,`Filter destructive operations`).choices([`true`,`false`,`any`]).default(`any`)).addOption(new e(`--intent <intent>`,`Filter by operation intent`).choices([`read`,`lookup`,`search`,`write`,`delete`,`status`,`all`]).default(`all`)).addOption(new e(`--method <method>`,`Filter by HTTP method`).choices([`GET`,`POST`,`PUT`,`PATCH`,`DELETE`,`all`]).default(`all`)).option(`--limit <count>`,`Maximum rows to return`,`20`).addOption(new e(`--format <format>`,`Text/file render format`).choices(ic)).option(`--output <path>`,`Write rendered output to a file`);O(i),i.action(function(e){let t=this.optsWithGlobals(),i=D(t,`text`);kr(Or(t,e),n,i,r)})}function sc(t,n,r){let i=t.command(`show`).summary(`Show one generated operation`).description(`Show one generated operation by command path or operationId.`).option(`--command <command>`,`CLI command path, with or without ${r} prefix`).option(`--operation-id <operationId>`,`Generated OpenAPI operationId`).addOption(new e(`--format <format>`,`Text/file render format`).choices([`usage`,`lines`,`compact`,`json`,`ndjson`]).default(`usage`)).option(`--output <path>`,`Write rendered output to a file`);O(i),i.action(function(){let e=this.optsWithGlobals();Ar(e,n,D(e,`text`),r)})}function cc(t,n,r){let i=t.command(`dump`).summary(`Dump generated operations`).description(`Dump generated operations for rg/grep/ag/ack or JSON/NDJSON tooling.`).option(`--root <root>`,rc).addOption(new e(`--scope <scope>`,`Filter by required auth scope`).choices([`read`,`write`,`all`]).default(`all`)).addOption(new e(`--mutates <mutates>`,`Filter mutating operations`).choices([`true`,`false`,`any`]).default(`any`)).addOption(new e(`--destructive <destructive>`,`Filter destructive operations`).choices([`true`,`false`,`any`]).default(`any`)).addOption(new e(`--intent <intent>`,`Filter by operation intent`).choices([`read`,`lookup`,`search`,`write`,`delete`,`status`,`all`]).default(`all`)).addOption(new e(`--method <method>`,`Filter by HTTP method`).choices([`GET`,`POST`,`PUT`,`PATCH`,`DELETE`,`all`]).default(`all`)).option(`--limit <count>`,`Maximum rows to return`).addOption(new e(`--format <format>`,`Text/file render format`).choices(ic)).option(`--output <path>`,`Write rendered output to a file`);O(i),i.action(function(){let e=this.optsWithGlobals();kr(e,n,D(e,`text`),r)})}function lc(e){let t=e.command(`unified`).summary(`Dump unified CLI/API/MCP operation JSON`).description(`Dump the flat unified operations JSON projected from MCP_GENERATION_CONTRACT.`).option(`--output <path>`,`Write unified operations JSON to a file`);O(t),t.action(async function(){let e=this.optsWithGlobals(),t=D(e,`text`),{MCP_GENERATION_CONTRACT:n}=await import(`./mcp-generation-contract-
|
|
60
|
+
`));r.addHelpText(`after`,()=>`\nShipped compact catalog of operations callable without an admin grant, greppable without\nrunning this CLI (dump --format compact lists every operation your credential reaches):\n ${Er(n)}\n`),oc(r,t,n),sc(r,t,n),cc(r,t,n),lc(r)}function oc(t,n,r){let i=t.command(`search`).summary(`Search generated operations`).description(`Search generated operation metadata without calling the API.`).argument(`[query...]`,`Search query; same as --q.`).option(`--q <query>`,`Search generated command metadata`).option(`--root <root>`,rc).addOption(new e(`--scope <scope>`,`Filter by required auth scope`).choices([`read`,`write`,`all`]).default(`all`)).addOption(new e(`--mutates <mutates>`,`Filter mutating operations`).choices([`true`,`false`,`any`]).default(`any`)).addOption(new e(`--destructive <destructive>`,`Filter destructive operations`).choices([`true`,`false`,`any`]).default(`any`)).addOption(new e(`--intent <intent>`,`Filter by operation intent`).choices([`read`,`lookup`,`search`,`write`,`delete`,`status`,`all`]).default(`all`)).addOption(new e(`--method <method>`,`Filter by HTTP method`).choices([`GET`,`POST`,`PUT`,`PATCH`,`DELETE`,`all`]).default(`all`)).option(`--limit <count>`,`Maximum rows to return`,`20`).addOption(new e(`--format <format>`,`Text/file render format`).choices(ic)).option(`--output <path>`,`Write rendered output to a file`);O(i),i.action(function(e){let t=this.optsWithGlobals(),i=D(t,`text`);kr(Or(t,e),n,i,r)})}function sc(t,n,r){let i=t.command(`show`).summary(`Show one generated operation`).description(`Show one generated operation by command path or operationId.`).option(`--command <command>`,`CLI command path, with or without ${r} prefix`).option(`--operation-id <operationId>`,`Generated OpenAPI operationId`).addOption(new e(`--format <format>`,`Text/file render format`).choices([`usage`,`lines`,`compact`,`json`,`ndjson`]).default(`usage`)).option(`--output <path>`,`Write rendered output to a file`);O(i),i.action(function(){let e=this.optsWithGlobals();Ar(e,n,D(e,`text`),r)})}function cc(t,n,r){let i=t.command(`dump`).summary(`Dump generated operations`).description(`Dump generated operations for rg/grep/ag/ack or JSON/NDJSON tooling.`).option(`--root <root>`,rc).addOption(new e(`--scope <scope>`,`Filter by required auth scope`).choices([`read`,`write`,`all`]).default(`all`)).addOption(new e(`--mutates <mutates>`,`Filter mutating operations`).choices([`true`,`false`,`any`]).default(`any`)).addOption(new e(`--destructive <destructive>`,`Filter destructive operations`).choices([`true`,`false`,`any`]).default(`any`)).addOption(new e(`--intent <intent>`,`Filter by operation intent`).choices([`read`,`lookup`,`search`,`write`,`delete`,`status`,`all`]).default(`all`)).addOption(new e(`--method <method>`,`Filter by HTTP method`).choices([`GET`,`POST`,`PUT`,`PATCH`,`DELETE`,`all`]).default(`all`)).option(`--limit <count>`,`Maximum rows to return`).addOption(new e(`--format <format>`,`Text/file render format`).choices(ic)).option(`--output <path>`,`Write rendered output to a file`);O(i),i.action(function(){let e=this.optsWithGlobals();kr(e,n,D(e,`text`),r)})}function lc(e){let t=e.command(`unified`).summary(`Dump unified CLI/API/MCP operation JSON`).description(`Dump the flat unified operations JSON projected from MCP_GENERATION_CONTRACT.`).option(`--output <path>`,`Write unified operations JSON to a file`);O(t),t.action(async function(){let e=this.optsWithGlobals(),t=D(e,`text`),{MCP_GENERATION_CONTRACT:n}=await import(`./mcp-generation-contract-CNWCVcE7.js`);if(t===`text`&&e.output===void 0&&(e.text===!0||e.allFields===!0)){L({mode:t},y(`Unified operations JSON`,`Use --output <path> to write the unified operations JSON.`,{counts:{totalOperations:n.length}}));return}let r=$s(n);if(e.output!==void 0){let n=tc(e.output,r);L({mode:t},y(`Unified operations JSON written`,{outputPath:n.target,byteLength:n.byteLength,schemaVersion:r.schemaVersion},{counts:{totalOperations:n.totalOperations}}));return}if(t===`text`){Mr(`Unified operations JSON`,ec(r));return}L({mode:t},y(`Unified operations JSON`,r,{counts:{totalOperations:r.totalOperations}}))})}var uc=S(Ut(import.meta.url)),Q=uc.bin[0];function dc(e,t){i({component:Q,event:`fatal`,message:e.message,error:e}),process.stderr.write(`${Q} fatal (${t}): ${e.stack??e.message}\n`);let n=e instanceof h?{httpStatus:e.problem.status,problem:e.problem}:{};rr({...v(`${Q} ${t}: ${e.message}`,[e.name||`Error`],n),counts:{exitCode:1}}),process.exit(1)}function fc(e){return ze[Fe(e,ft)??`cli`]}function pc(e,t){let n=t.map(e=>{let t=e.cliPath[0]??``;return{spec:e,top:t,rank:fc(t).rank}}).toSorted((e,t)=>e.rank-t.rank||e.top.localeCompare(t.top)).map(e=>e.spec),r=new Set(n.filter(e=>bt(e.cliPath[0])).map(e=>e.cliPath[0]??``)),i=new Set,a=new Set;for(let{cliPath:e,deprecated:t}of n)for(let n=1;n<e.length;n++){let r=e.slice(0,n).join(` `);i.add(r),t!==!0&&a.add(r)}for(let t of n)mc(e,t,r,a,i.has(t.cliPath.join(` `)))}function mc(e,t,n,r,i){let a=t.cliPath,o=e,s=``,c=!n.has(a[0]??``);for(let e of a.slice(0,-1)){s=s===``?e:`${s} ${e}`;let t=c&&s===e||!r.has(s);o=hc(o,e,s,t)}let l=a.at(-1)??t.operationId,u=o.commands.find(e=>e.name()===l)??o.command(l,t.deprecated===!0?{hidden:!0}:{}),d=t.requestBody?.flatMap(({parameter:e})=>e)??[];u.summary(t.summary||t.operationId).description([`${t.method} ${t.path}.`,t.summary||t.description,`Full documentation: ${Q} help ${t.cliPath.join(` `)}`,t.requestBody?.[0]?.kind===`json`||[...t.parameters,...d].some(e=>he(e.schemaType,e.itemSchemaType))?_e:``].filter(Boolean).join(`
|
|
61
61
|
`));let f=xt(t);for(let e of t.parameters)gc(u,e,i||e===f);if(In(u,t),pe(t.intent)&&u.option(`--execute`,`Deprecated; accepted and ignored. This command executes by its verb.`,!1),O(u),u.hook(`preAction`,e=>gt(e,t)),t.explain===!0&&u.option(`--explain`,`Print the search strategy and parsed constraints before the results`),f!==void 0){u.argument(`[text...]`,f.description||`Same as ${yt(f.flag)}.`),u.action(async function(e){let n=this.optsWithGlobals(),r=D(n),i=mt(f,e,n);if(!i.ok||i.data===null)return L({mode:r},i);let a=pt(t,i.data);if(a.length>0)return L({mode:r},v(`missing required options: ${a.join(`, `)}`));let o=await _c(t,i.data,r),s=ei(t,i.data,o);if(s!==null)return L({mode:r},s);n.explain===!0&&o.ok&&sr(r,o.data),o.ok&&o.data instanceof Uint8Array?process.stdout.write(o.data):L({mode:r},o)});return}u.action(async function(){let e=this.optsWithGlobals(),n=D(e),r=pt(t,e);if(r.length>0)return L({mode:n},v(`missing required options: ${r.join(`, `)}`));let i=await _c(t,e,n),a=ei(t,e,i);if(a!==null)return L({mode:n},a);e.explain===!0&&i.ok&&sr(n,i.data),i.ok&&i.data instanceof Uint8Array?process.stdout.write(i.data):L({mode:n},i)})}function hc(e,t,n,r){let i=e.commands.find(e=>e.name()===t);if(i!==void 0)return i;let a=ft[n],o=e.command(t,r?{hidden:!0}:{}).helpCommand(!1);return a!==void 0&&o.summary(a.summary).description(a.summary),o}function gc(t,n,r=!1){let i=n.description||`${n.name} ${n.location} parameter`,a=n.defaultValue===void 0?void 0:typeof n.defaultValue==`string`||typeof n.defaultValue==`boolean`?n.defaultValue:[...n.defaultValue];if(n.legacyFlag!==void 0){let o=new e(n.flag,i);a!==void 0&&o.default(a);let s=new e(n.legacyFlag,i).conflicts(n.optionKey);t.addOption(o).addOption(s),t.hook(`preAction`,e=>{let t=e.opts(),i=t[n.optionKey],a=t[s.attributeName()];if(a!==void 0){(i===void 0||e.getOptionValueSource(n.optionKey)==="default")&&e.setOptionValueWithSource(n.optionKey,a,`cli`);return}!r&&n.required&&i===void 0&&e.error(`error: required option '${o.flags}' not specified`,{code:`commander.missingMandatoryOptionValue`})});return}if(a!==void 0){t.option(n.flag,i,a);return}if(n.required&&!r){t.requiredOption(n.flag,i);return}t.option(n.flag,i)}async function _c(e,t,n){if(t.environment!==void 0){let e=ce(t.environment);if(e===null)return v(`Unknown aVenture environment '${t.environment}'`,[`Use one of: ${oe().join(`, `)}`]);process.env.API_ENV=e}let r=await Vn(e,t);if(!r.ok)return r;let i=Object.fromEntries(e.parameters.filter(e=>e.location===`path`).map(e=>{let n=t[e.optionKey];if(Array.isArray(n))return[e.name,n.at(0)??``];if(n===void 0)throw Error(`Missing required option ${e.optionKey}`);return[e.name,String(n)]})),a=Object.fromEntries(e.parameters.filter(e=>e.location===`query`).flatMap(e=>{let n=t[e.optionKey];if(n===void 0||Array.isArray(n)&&n.length===0)return[];let r=Array.isArray(n)||typeof n==`boolean`?n:String(n);return[[e.name,r]]})),o=Object.fromEntries(e.parameters.filter(e=>e.location===`header`).flatMap(e=>{let n=t[e.optionKey];return n===void 0||Array.isArray(n)&&n.length===0?[]:[[e.name,Array.isArray(n)?n.join(`,`):String(n)]]}));return ni(e,await p({method:e.method,path:m(e.operationId,i),searchParams:a,headers:o,body:r.data,contentType:vt(e,t),auth:e.auth,responseFormat:Ct(n)?`json`:`auto`,responseBytes:e.binaryResponse===!0}))}process.on(`uncaughtException`,e=>dc(e,`uncaughtException`)),process.on(`unhandledRejection`,e=>dc(e instanceof Error?e:Error(String(e)),`unhandledRejection`));var vc=_t(process.argv.slice(2),E),yc=vc===`required`?E:ht(E),$=new r;$.name(Q).usage(`<command> [subcommand] [options]`).configureHelp(Gr).version(uc.version).summary(`CLI for the aVenture API: companies, people, and news, with the funding, publications, and classifications attached to them`).description([`The aVenture research API from your terminal. Three records — companies,`,`people, and news — carry everything else: funding, publications, and tags.
|
|
62
62
|
`,`Mutations execute directly; --execute is a deprecated no-op.
|
|
63
63
|
The aVenture MCP server tools execute through this same CLI.`].join(`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{l as e}from"./tool-policy-
|
|
1
|
+
import{l as e}from"./tool-policy-Dhw9BMIT.js";function t(t,n,r,i){let a=t===`array`?n:t,o=t===`array`?`...`:``;return r===`uuid`||r===`date-time`||r===`date`?`${r}${o}`:a===`boolean`?`true|false${o}`:a===`integer`||a===`number`?`${a}${o}`:`${e(i)}${o}`}function n(e,t){let n=s(e);if(t===void 0||t.length===0)return n;let r=`Allowed values: ${t.join(`, `)}`;return n===``?`${r}.`:`${n} ${r}.`}var r={path:{heading:`Path parameters:`,rank:0},header:{heading:`Request headers:`,rank:1},input:{heading:`Input:`,rank:2},body:{heading:`Body fields:`,rank:3},option:{heading:`Options:`,rank:1/0}};function i(e){return o(e).rank}function a(e){return o(e).heading}function o(e){return e.location===`path`?r.path:e.location===`header`?r.header:e.inputType===`file`||e.schemaFormat===`binary`?r.input:e.location===`body`?r.body:r.option}var s=e=>e===``||/[.!?]$/u.test(e)?e:`${e}.`,c={researchData:{heading:`Research data commands:`,rank:0},account:{heading:`Account commands:`,rank:1},administration:{heading:`Administration commands:`,rank:2},cli:{heading:`CLI commands:`,rank:3}};function l(e,t){return e!==void 0&&u(e,t)===`administration`}function u(e,t){return d[e]??t?.[e]?.section}var d={app:`account`,auth:`account`,entities:`researchData`,people:`researchData`,enrichments:`researchData`,news:`researchData`,search:`researchData`,resolve:`researchData`,lookup:`researchData`,"lookup-jobs":`researchData`,"lookup-mentions":`researchData`,provenance:`administration`,billing:`account`,harness:`administration`,jobs:`administration`,operations:`administration`,metrics:`cli`,inference:`administration`,web:`researchData`,contacts:`administration`,"url-types":`researchData`,"unique-ids":`researchData`,research:`administration`,status:`cli`,agents:`cli`,help:`cli`},f=new Set([`metrics`]);export{n as a,a as c,u as i,s as l,f as n,t as o,l as r,i as s,c as t};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import{C as e,O as t,T as n,i as r,l as i,n as a,o,p as s,r as c,t as l,u,v as d,w as f,y as p}from"./person-owner-BJgNYLKX.js";import{r as m,s as ee,t as h,u as g}from"./result-envelope-BE0edu_S.js";import{i as _}from"./package-DfJq3Rui.js";import{a as te,c as ne,i as re,o as ie,s as ae}from"./tool-policy-Dhw9BMIT.js";import{C as oe,S as se,T as ce,_ as le,a as ue,b as v,c as de,d as fe,f as pe,g as y,h as me,i as b,l as he,m as ge,n as _e,o as ve,p as ye,r as x,s as be,t as S,u as xe,v as Se,w as Ce,x as we,y as Te}from"./detail-D07FzRkx.js";import{a as Ee,n as De,r as C,t as Oe}from"./text-field-r9akQrZl.js";import{a as ke,o as Ae}from"./cli-help-policy-DRmLdjkv.js";import{Buffer as je}from"node:buffer";var w=o([`HIGH`,`MEDIUM`,`LOW`]),Me=n([o([`OPERATION`,`SKILL`,`PROMPT`,`COMPLETION_GATE`,`RESEARCH_DETAIL_TYPE`,`RESEARCH_SNIPPET_TYPE`,`TEXT_TYPE`]),f()]),Ne=p({excerpt:f(),sourceId:f(),sourceType:Me,sourceVersion:f().nullish()}),Pe=p({instruction:f(),operationId:f(),stepKey:f()}),Fe=p({body:f(),expectation:f(),method:i(f()),override:f(),reject:i(f()),typeCatalog:f()}),Ie=p({cliCommand:f(),mcpTool:f().nullish(),step:Pe,writeGuidance:Fe.nullish()}),Le=n([o([`ENTITY`,`TEXT`]),f()]),Re=p({description:f(),key:f(),type:Le}),ze=p({catalogRevision:s(),gateId:i(f()),input:i(Re),step:i(Ie),taskKey:f()}),T=o([`TASK_PLAN`,`OPERATION_ADVICE`,`CLARIFY`,`ABSTAIN`]),Be=p({candidate:i(Ne),operationId:f().nullish(),outcome:T,probability:d().nullish(),taskKey:f().nullish(),taskPlan:ze.nullish()}),Ve=p({answer:f(),citation:i(Ne),confidence:w,resolution:Be.nullish()});function E(e,t,n=t.inputName){if(t.in===`body`)return n;let r=Ze.find(t=>n===t.name&&e.path.includes(t.path));return r===void 0?Xe(D(n!==`id`&&n!==`slug`?n:`${We(e.path)}${qe(n)}`),t):r.inputName}function He(e,t,n=Ke(e)){return Ue(Ge(e,t),new Set(n))}function Ue(e,t){if(!t.has(e))return e;let n=`body${qe(e)}`,r=n;for(let e=2;t.has(r);e+=1)r=`${n}${e}`;return r}function We(e){return Qe.find(([,t])=>t.test(e))?.[0]??`record`}function Ge(e,t){if(t.name===`id`&&e.path===`/v1/app/url-slug-redirects`)return`recordId`;let n=Je(t);return Xe(e.intent===`search`&&(t.name.startsWith(`filter.`)||t.name.startsWith(`search.`))?D(n.replace(/^(?:filter|search)/u,``).replace(/^./u,e=>e.toLowerCase())):n,t)}function Ke(e){return new Set(e.parameter.filter(e=>e.in===`path`||e.in===`query`||e.in===`header`).map(t=>E(e,t)))}function qe(e){return e.replace(/^./u,e=>e.toUpperCase())}function D(e){return e.replace(/^addressAddress/u,`address`).replace(/^arrayFilterAmountInvestedRange/u,`fundraiseAmountInvestedRange`).replace(/^arrayFilterAmountRaisedRange/u,`fundraiseAmountRaisedRange`).replace(/^arrayFilterEntityName$/u,`entityName`).replace(/^arrayFilterInvestedCompany$/u,`fundraiseInvestedCompanyName`).replace(/^arrayFilterPersonTitle$/u,`personTitle`).replace(/^arrayFilterRound$/u,`fundraiseRound`).replace(/^arrayFilterTotalInvestmentCount/u,`totalInvestmentCount`).replace(/^arrayFilterTypeRecord$/u,`typeRecord`).replace(/^createEntity/u,`entity`).replace(/^createUrlLink/u,`urlLink`).replace(/^fundraiseActivity/u,`fundraise`).replace(/FundraiseActivity/gu,`Fundraise`).replace(/^logoOption/u,`logo`).replace(/LogoOption/gu,`Logo`).replace(/^researchDetailTypeResearchDetail$/u,`researchDetailType`).replace(/^researchDetailValueResearchDetail$/u,`researchDetailValue`).replace(/^textText$/u,`text`).replace(/^textTextName$/u,`textName`).replace(/^textTextType$/u,`textType`)}function Je(e){let t=D(e.inputName);return/(?:^|\.)nameAlias\[\]\./u.test(e.name)?t.replace(/^entityNameAlias/u,`alias`):/(?:^|\.)urlLink\[\]\./u.test(e.name)?Ye(t):/(?:^|\.)manualLogo\./u.test(e.name)?t.replace(/^manualLogo/u,`logo`):t}function Ye(e){return e===`urlLinkUrl`?`url`:e===`urlLinkUrlType`?`urlType`:e.replace(/^urlLink/u,`url`)}function Xe(e,t){return e===`text`?/(?:^|\.)text(?:\[\])?\.text$/u.test(t.name)?`textBody`:`inputText`:e}var Ze=[{name:`detailId`,path:`/research-details/{detailId}`,inputName:`researchDetailId`},{name:`version`,path:`/instructions/`,inputName:`instructionVersion`},{name:`detailId`,path:`/financial/valuation/{detailId}`,inputName:`valuationDetailId`},{name:`joinId`,path:`/fundraise-investor-joins`,inputName:`fundraiseInvestorJoinId`}],Qe=[[`entity`,/^\/v1\/entities(?:$|\/detail|\/lookup|\/summary|\/duplicate-check)/u],[`person`,/^\/v1\/people(?:\/detail|\/lookup|\/duplicate-check|\/\{slug\})/u],[`news`,/^\/v1\/(?:news\/|jobs\/news\/)/u],[`screenshot`,/^\/v1\/media\/screenshots\//u],[`media`,/^\/v1\/media/u],[`article`,/^\/v1\/app\/blog\/articles/u],[`page`,/^\/v1\/app\/pages/u],[`contact`,/^\/v1\/contacts\//u],[`provenance`,/^\/v1\/provenance\//u],[`location`,/^\/v1\/addresses\/locations\//u]];function $e(e){let t=e.requestBody?.[0],n=e.parameter.map(t=>et(t,E(e,t))),r=(t?.parameter??[]).map(t=>et(t,He(e,t)));return{selector:n.filter(e=>e.location===`path`||tt(e)),pagination:n.filter(nt),filter:[...n.filter(O),...r.filter(O)],body:r.filter(e=>!O(e))}}function et(e,t){return{name:e.in===`body`?t:e.name,flag:re(t),required:e.required,location:e.in,description:e.description||`${e.name} ${e.in} parameter`}}function tt(e){return/(^|[A-Z])(id|slug)$/u.test(e.name)}function nt(e){return[`page`,`size`,`sort`,`cursor`,`mode`,`projection`].includes(e.name)}function O(e){return e.location!==`path`&&!tt(e)&&!nt(e)}function rt(e,t){let n=e.requestBody?.[0],r={operationId:e.operationId,method:e.method,path:e.path,summary:e.summary,cli:e.projection.cliPath.join(` `),intent:e.intent,scope:e.projection.scope,requiredInput:it(e)};return t?{...r,resource:e.resource,bodySchemaName:n?.schemaName??null,bodyKind:n?.kind??null,bodyRequired:n?.required??!1,requiredBodyPath:n?.requiredPath??[],argument:$e(e)}:{...r,optionalInput:at(e)}}function it(e){return[...e.parameter.filter(({required:e})=>e).map(({name:e})=>e),...e.requestBody?.[0]?.requiredPath??[]]}function at(e){let t=e.requestBody?.[0],n=new Set(t?.requiredPath??[]);return{query:e.parameter.filter(e=>e.in===`query`&&!e.required).map(({name:e})=>e),body:(t?.parameter??[]).filter(({name:e})=>!n.has(e)).map(({name:e})=>e)}}var ot=160;function st(e){return!Array.isArray(e)||e.length===0||!e.every(ct)?null:`Operation catalog matches\n${e.flatMap(e=>[`${e.operationId} ${e.method} ${e.path} (aventure_${e.intent})`,` ${e.summary}`,` required: ${e.requiredInput.length===0?`none`:e.requiredInput.join(`, `)}`,...`optionalInput`in e?Object.entries(e.optionalInput).filter(([,e])=>e.length>0).map(([e,t])=>` optional ${e}: ${t.join(`, `)}`):[],...`argument`in e?Object.values(e.argument).flat().map(e=>` ${e.name} (${e.location}${e.required?`, required`:``}): ${e.description.length<=ot?e.description:`${e.description.slice(0,157)}...`}`):[]]).join(`
|
|
2
|
+
`)}\n`}function ct(e){return typeof e==`object`&&!!e&&`operationId`in e&&typeof e.operationId==`string`&&`requiredInput`in e&&Array.isArray(e.requiredInput)&&`intent`in e&&`summary`in e}function lt(e){let t=t=>{let n=e.parameter.filter(e=>e.in===t&&e.required&&e.schemaDefault===void 0).map(ut);return n.length===0?void 0:Object.fromEntries(n)},n=t(`path`),r=t(`query`),i=[...new Set((e.requestBody?.[0]?.requiredPath??[]).map(e=>e.split(/[.[]/u)[0]))];return{tool:ae(e.intent),operationId:e.operationId,...n===void 0?{}:{pathParams:n},...r===void 0?{}:{query:r},...e.requestBody===void 0?{}:{body:Object.fromEntries(i.map(e=>[e,`<${e}>`]))}}}function ut(e){return[e.name,`<${e.name}>`]}function dt(e){let t=k(e.description);return{useFor:t.useFor||e.summary||e.description||`${e.method} ${e.path}`,notFor:t.notFor}}function k(e){let t=e.match(/USE FOR:\s*([\s\S]*?)(?:NOT FOR:|$)/iu),n=e.match(/NOT FOR:\s*([\s\S]*?)$/iu);return{useFor:t?.[1]?.trim()??``,notFor:n?.[1]?.trim()??``}}var A=2,ft=new Set(`a.an.the.and.or.for.to.of.in.on.at.by.with.from.into.is.are.be.do.does.how.what.which.that.this.these.those.i.me.my.we.our.you.your.it.its.please.want.need.can.could.should.would`.split(`.`));function j(e,t){let n=P(t);n.length!==0&&(e.add(n),(n===`individual`||n===`individuals`)&&j(e,`person`),ht(e,pt(n),n),ht(e,mt(n),n))}function pt(e){if(e===`people`)return`person`;let t=e.endsWith(`ies`)?e.slice(0,-3):``;if(t.length>=A&&!t.endsWith(`v`)&&/[^aeiou]$/u.test(t))return`${e.slice(0,-3)}y`;if(e.length>A&&e.endsWith(`s`)&&!e.endsWith(`ss`)&&!e.endsWith(`us`)&&e!==`news`)return e.slice(0,-1)}function mt(e){return e===`person`?`people`:e.length>=A&&e.endsWith(`y`)&&/[^aeiou]y$/u.test(e)?`${e.slice(0,-1)}ies`:e.endsWith(`s`)?void 0:`${e}s`}function ht(e,t,n){t!==void 0&&t!==n&&t.length>=A&&/^[a-z]+$/u.test(t)&&e.add(t)}function M(e){let t=new Set(N(e)),n=Array.from(t);for(let e of n)j(t,e);return t}function gt(e){return N(e).map(M)}function _t(e,t){if(e.length===0)return!1;let n=M(t.join(` `));return e.every(e=>[...e].some(e=>n.has(e)))}function N(e){return P(e).split(/[^a-z0-9]+/u).filter(e=>e.length>0&&!ft.has(e))}function P(e){return e.trim().replace(/([a-z0-9])([A-Z])/gu,`$1 $2`).replace(/[_-]/gu,` `).replace(/\s+/gu,` `).toLowerCase().replace(/\blook up\b/gu,`lookup`)}var vt=/\b(?:https?:\/\/)?(?:[a-z0-9-]+\.)+[a-z]{2,}(?::\d+)?(?:\/\S*)?/giu,yt=/\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/giu,bt=/^[a-z0-9]+(?:-[a-z0-9]+)+$/u,xt=250,St=40,Ct=100;function wt(e,t){let n=new Set,r=[],i=/\bslugs?\b/iu.test(e);return{text:e.replace(yt,()=>(n.add(`uuid`),` `)).replace(vt,e=>{n.add(`url`);let t=e.replace(/^(?:https?:\/\/)?[^/]+/iu,``).split(/[?#]/u)[0].split(`/`).filter(e=>e.length>0).map(e=>e.toLowerCase()),i=t.at(-1);return i!==void 0&&bt.test(i)&&(n.add(`slug`),t.pop()),r.push(...t.flatMap(e=>e.split(/[^a-z0-9]+/u))),` `}).split(/\s+/u).filter(e=>{let r=e.replace(/^[^a-z0-9]+|[^a-z0-9]+$/giu,``).toLowerCase(),a=bt.test(r)&&!t.has(r)&&(i||/\d/u.test(r));return a&&n.add(`slug`),!a}).join(` `).trim(),kind:n,urlPathWord:r.filter(e=>e.length>0)}}function Tt(e,t,n){return e===`uuid`?/(?:^id|Id)$/u.test(t)&&n.includes(`{${t}}`):t===e}function Et(e,t){let n=new Set;for(let r of e){let e=new Set;j(e,r);let i=t.filter(({cliPath:t})=>e.has(t[0]??``)),a=i.length>0?i:t.filter(({cliPath:t})=>t.some(t=>e.has(t)));for(let{resource:e}of a)n.add(e)}return n}function Dt(e,t,n){if(n.intent!==`read`&&n.intent!==`lookup`)return 0;let r=new Set(N(n.summary)),i=0;for(let t of e.kind)n.directParameterName.some(e=>Tt(t,e,n.path))&&(i+=xt,r.has(t)&&(i+=St));if(i===0)return 0;let a=new Set(N(`${n.summary} ${n.description}`));return(t.size>0?t.has(n.resource):e.urlPathWord.some(e=>{let t=new Set;return j(t,e),[...t].some(e=>a.has(e))}))&&(i+=Ct),i}var Ot=5,kt=.5,At=15,jt=30,Mt=2;function Nt(e,t,n){let r=t.map(e=>({item:e,fields:n(e)})),i=wt(e,new Set(r.flatMap(({fields:e})=>e.cliPath))),a=Et(i.urlPathWord,r.map(({fields:e})=>e)),o=P(i.text);if(o.length===0&&i.kind.size===0)return t.map(e=>({item:e,score:1}));let s=M(o),c=gt(o);return r.map(({item:e,fields:t})=>({item:e,fields:t,score:(o.length===0?0:Lt(o,s,c,t))+Dt(i,a,t)})).filter(({score:e})=>e>0).toSorted((e,t)=>Number(e.fields.deprecated===!0)-Number(t.fields.deprecated===!0)||t.score-e.score||e.fields.cliPath.length-t.fields.cliPath.length||e.fields.cliPath.join(` `).localeCompare(t.fields.cliPath.join(` `))||e.fields.operationId.localeCompare(t.fields.operationId)).map(({item:e,score:t})=>({item:e,score:t}))}function Pt(e){let t=[...e.parameter,...(e.requestBody??[]).flatMap(e=>e.parameter)];return{...e,cliPath:e.projection.cliPath,enumParameter:t.map(e=>({values:e.itemSchemaEnum??e.schemaEnum??[],direct:e.name===e.inputName})),parameterName:t.flatMap(e=>[e.name,e.inputName]),directParameterName:e.parameter.map(e=>e.name),parameterDescription:[...e.parameter,...e.requestBody??[],...(e.requestBody??[]).flatMap(e=>e.parameter)].map(({description:e})=>e)}}function Ft(e,t){let n=Nt(e.q?.trim()??``,t.filter(t=>It(e,t)),Pt),r=(n[0]?.score??0)*kt,i=n.filter(({score:e})=>e>=r),a=e.limit===void 0||!Number.isFinite(e.limit)?Ot:e.limit,o=Math.min(i.length,Math.max(0,Math.trunc(a))),s=i.slice(0,o).map(({item:e})=>e),c=s.map(e=>rt(e,s.length===1));return{summary:`Operation catalog matches`,data:c,counts:{totalOperations:t.length,matched:i.length,returned:c.length}}}function It(e,t){let n=e.root?.trim().toLowerCase();return!(e.method!==void 0&&t.method!==e.method||e.scope!==void 0&&t.projection.scope!==e.scope||n&&t.resource!==n&&t.projection.cliPath[0]!==n)}function Lt(e,t,n,r){let i=Bt(r),a=Rt(r),o=0;i.some(t=>t===e)&&(o+=100),i.some(t=>t.includes(e))&&(o+=40),o+=zt(e,i);let s=new Set(i.flatMap(N));for(let e of t)i.some(t=>t===e)?o+=20:s.has(e)&&(o+=8);for(let e of r.cliPath){let n=new Set;j(n,e),[...n].some(e=>t.has(e))&&(o+=At)}_t(n,a)&&(o+=200),r.parameterName.some(t=>P(t)===e)&&(o+=jt);let c=new Set(r.parameterDescription.flatMap(N));for(let e of t)c.has(e)&&(o+=Mt);return o+=Ht(t,r.enumParameter),[`list`,`search`,`find`,`browse`].some(e=>t.has(e))&&/^(?:list|search)[A-Z]/u.test(r.operationId)&&(o+=30),o-=Vt(e,t,r.description),o}function Rt(e){return[e.operationId,e.cliPath.join(` `),e.summary].map(P).filter(e=>e.length>0)}function zt(e,t){let n=N(e),r=0;for(let e=0;e<n.length-1;e+=1){let i=n.slice(e,e+2).join(` `);t.some(e=>e.includes(i))&&(r+=24)}return r}function Bt(e){return[...new Set([e.operationId,e.method,e.path,e.resource,e.intent,e.cliPath.join(` `),e.summary,k(e.description).useFor||e.description].map(P).filter(e=>e.length>0))]}function Vt(e,t,n){let r=P(k(n).notFor);if(r.length===0)return 0;let i=r.includes(e)?40:0,a=new Set(N(r));for(let e of t)r===e?i+=20:a.has(e)&&(i+=8);return i}function Ht(e,t){let n=0;for(let{values:r,direct:i}of t)r.some(t=>Ut(e,t))&&(n+=i?40:10);return n}function Ut(e,t){let n=N(t);return n.length>0&&n.every(t=>e.has(t))}var Wt=3,Gt=200;function Kt(e,t){let{operationId:n}=e;if(n===void 0||t.some(e=>e.operationId===n))return null;let r=Ft({q:[n,...qt(e)].join(` `),limit:Wt},t),i=r.summary===`Operation catalog matches`?r.data:[],a=i.map(e=>`${e.operationId} (${e.method} ${e.path})`);return m(`Operation ${n} is not in the MCP catalog.${a.length===0?``:` Closest operations: ${a.join(`, `)}.`}`,i.map(e=>`Use operationId ${e.operationId} with aventure_${e.intent}: ${e.method} ${e.path}; required inputs: ${e.requiredInput.length===0?`none`:e.requiredInput.join(`, `)}.`))}function qt(e){let t=e.body,n=typeof t==`object`&&t&&!Array.isArray(t)?Object.entries(t):[];return[...Object.entries(e.pathParams??{}),...Object.entries(e.query??{}),...n].flatMap(([e,t])=>typeof t==`string`&&t.length<=Gt?[e,t]:[e])}function Jt(e){return typeof e.data==`object`&&e.data!==null&&`response`in e.data?e.data.response:void 0}async function Yt(e,t,n,r){let i=e.q?.trim()??``;if(i.length===0)return m(`Provide q to resolve a request to one operation.`);let a=n.find(({resource:e,intent:t,deprecated:n})=>e===`help`&&t===`search`&&n!==!0);if(a===void 0)return m(`This build ships no help resolve operation.`);let o=await r(a,{body:{question:i,resolve:!0,...e.scope===void 0?{}:{scope:e.scope===`read`?`READ`:`WRITE`},includePrivate:!1}});if(!o.ok)return{...o,data:null};let s=Ve.safeParse(Jt(o));if(!s.success||s.data.resolution==null)return m(`The help resolve operation returned no resolution.`);let{answer:c,resolution:l}=s.data,u=e=>t.find(t=>t.operationId===e),d=u(l.operationId),f=l.taskPlan??void 0,p=(f?.step??[]).map(({step:e})=>({step:e,contract:u(e.operationId)})),h=[...new Set([...l.operationId!=null&&d===void 0?[l.operationId]:[],...p.filter(({contract:e})=>e===void 0).map(({step:e})=>e.operationId)])];return ee(h.length===0?`Help resolution`:`Help resolution this connection cannot finish: it cannot run ${h.join(`, `)}.`,{outcome:l.outcome,probability:l.probability,answer:c,candidate:l.candidate.map(({sourceId:e})=>e),...d===void 0?{}:{operation:{operationId:d.operationId,apiRoute:`${d.method} ${d.path}`,...dt(d),bodySchemaName:d.requestBody?.[0]?.schemaName??null,mcpCall:lt(d)}},...l.taskKey==null?{}:{taskKey:l.taskKey},...f===void 0?{}:{taskPlan:{catalogRevision:f.catalogRevision,input:f.input,...f.gateId.length===0?{}:{gateId:f.gateId},step:p.map(({contract:e,step:{stepKey:t,instruction:n,operationId:r}})=>e===void 0?{stepKey:t,instruction:n,operationId:r}:{stepKey:t,instruction:n,mcpCall:lt(e)})}}},{warnings:h.map(e=>n.some(t=>t.operationId===e)?`Operation ${e} is in this server's catalog, but your grant does not allow it.`:`Operation ${e} is outside this server's catalog, so no credential runs it here.`)})}var Xt=p({detail:f(),field:f().nullish(),scope:o([`entity`,`person`,`news`])}),Zt=n([o([`auto`,`exact`,`keyword`,`semantic`,`natural`,`hybrid`]),f()]),F=p({modeRequested:Zt,modeUsed:Zt}),Qt=p({answerUnavailable:u(),entity:F,news:F,person:F,rejection:i(Xt),unavailable:i(o([`entity`,`person`,`news`]))}),$t=p({acceleratorParticipation:i(ye),detail:i(fe)}),I=p({core:v,enrichment:we,fundraiseRound:i(y),research:$t,semanticMatch:ue.nullish()}),en=o([`curated`,`semantic`,`precomputed`,`derived`,`computed`]),tn=p({compositeScore:d().nullish(),cosineScore:d().nullish(),curatedAsOf:c().nullish(),curatedRelationshipType:f().nullish(),curatedSource:f().nullish(),derivedFromEntityId:t().nullish(),matchedSectionWeight:d().nullish(),origin:en,rank:s(),sharedSectionCount:s().nullish()}),nn=p({entity:I,similarity:tn}),rn=o([`aventureBlog`,`personalBlog`,`employerBlog`,`linkedin`,`xTwitter`,`medium`,`substack`,`other`]),an=p({author:f().nullish(),createdAt:r({offset:!0}),externalId:f().nullish(),id:t(),isCurrent:u(),lastFetchedAt:r({offset:!0}).nullish(),mentionedEntityId:i(t()),mentionedPersonId:i(t()),owner:l,publishedAt:r({offset:!0}).nullish(),summary:f().nullish(),summaryGeneratedAt:r({offset:!0}).nullish(),title:f().nullish(),topic:f().nullish(),type:rn,updatedAt:r({offset:!0}),url:f()}),on=o([`low`,`medium`,`high`]),sn=p({asOfDate:r({offset:!0}).nullish(),dataConfidence:on.nullish(),dateValue:r({offset:!0}).nullish(),numericValue:d().nullish(),referenceValue:f().nullish(),source:f().nullish(),textValue:f().nullish(),updatedAt:r({offset:!0}).nullish(),valueType:pe}),cn=p({asOfDate:r({offset:!0}),fact:sn,id:f()}),ln=p({fundraiseInvestorJoin:u(),fundraiseTransaction:u(),operatingStatus:u(),relationship:u()}),un=o([`Acquisition`,`Acquired`,`Acquired Subsidiary`]),dn=o([`Announced`,`Announced; subject to approvals and closing conditions`,`Active`,`Closed`,`Completed`,`In Progress`,`Open`]),fn=p({acquiredEntity:v,acquirerEntity:v,amount:d().int().nullish(),announcedAt:r({offset:!0}).nullish(),asOf:c().nullish(),completedAt:r({offset:!0}).nullish(),createdAt:r({offset:!0}).nullish(),currency:f().nullish(),dataConfidence:Te.nullish(),evidence:ln,fundraiseTransactionId:t().nullish(),investorJoinId:t().nullish(),publicSource:me.nullish(),relationshipId:s(),status:un,transactionStatus:dn.nullish(),updatedAt:r({offset:!0}).nullish()}),pn=o([`SAFE`,`Convertible Note`,`Preferred Stock`,`Common Stock`,`Other Equity`,`Bond`,`Loan`,`Other Debt`,`Grant`,`Token`]),mn=p({amountInvested:d().nullish(),createdAt:r({offset:!0}),financialInstrumentType:pn.nullish(),id:t(),investor:l,leadInvestor:u(),transactionId:t(),updatedAt:r({offset:!0})}),hn=p({entity:S,investorAttribution:i(le),round:i(Se),roundCount:s()}),gn=p({core:v,similarity:tn,urlLink:i(se)}),_n=p({compliance:xe.nullish(),createdAt:r({offset:!0}).nullish(),id:s(),isCurrent:u().nullish(),isPrimary:u().nullish(),language:f().nullish(),owner:l,text:f(),textName:f().nullish(),textType:f(),updatedAt:r({offset:!0}).nullish()}),vn=o([`stored`,`derivedFromPreAndRaised`,`derivedFromPostMinusRaised`,`reportedAssumedPost`]),yn=o([`fundraiseRound`,`researchDetail`]),bn=o([`preMoney`,`postMoney`,`reported`]),xn=p({amountRaised:d().int().nullish(),asOfDate:r({offset:!0}),confidence:on,currency:f(),declaredBasis:bn,derivation:vn,detailId:s().nullish(),label:f().nullish(),source:yn,sourceRef:f(),valuationPostMoney:d().int().nullish(),valuationPreMoney:d().int().nullish()}),Sn=p({createdAt:r({offset:!0}).nullish(),description:f().nullish(),forkCount:s(),githubId:d().int(),homepageUrl:f().nullish(),id:d().int(),isArchived:u(),isFork:u(),language:f().nullish(),license:f().nullish(),name:f(),ownerLogin:f(),repoCreatedAt:r({offset:!0}).nullish(),repoPushedAt:r({offset:!0}).nullish(),stargazerCount:s(),topic:i(f()),updatedAt:r({offset:!0}).nullish(),url:f()}),L=p({empty:u().optional(),sorted:u().optional(),unsorted:u().optional()}),R=p({offset:d().int().optional(),paged:u().optional(),pageNumber:s().optional(),pageSize:s().optional(),sort:L.optional(),unpaged:u().optional()}),Cn=p({investorAttribution:i(le),person:x,round:i(Se),roundCount:s()}),wn=o([`precomputed`,`live`]),Tn=p({compositeScore:d().nullish(),cosineScore:d().nullish(),matchedSectionWeight:d().nullish(),origin:wn,rank:s(),sharedSectionCount:s().nullish()}),En=p({currentRole:be.nullish(),person:b,similarity:Tn}),Dn=o([`by`,`about`]),On=o([`newsArticle`,`blogPost`,`externalSocialPost`,`repositoryOwner`,`repository`,`webSite`,`webPage`,`researchPaper`]),kn=p({canonicalUrl:f().nullish(),contentId:f(),contentType:On,createdAt:r({offset:!0}).nullish(),publishedAt:r({offset:!0}).nullish(),relation:Dn.nullish(),sourceDomain:f().nullish(),sourceName:f().nullish(),summary:f().nullish(),title:f(),topic:f().nullish(),updatedAt:r({offset:!0}).nullish(),url:f().nullish(),year:s().nullish()});p({content:i(an).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(n([ce,Ce])).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(cn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(v).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(fn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(S).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(mn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(y).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(hn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(I).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(be).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(ge).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(fe).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(he).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(nn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(gn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(_n).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(se).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(xn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(Sn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(de).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(b).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(x).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(ve).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(Cn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(En).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()}),p({content:i(kn).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()});var An=p({content:i(I),number:s(),size:s(),totalElements:d().int(),totalPages:s()}),jn=p({content:i(de),number:s(),size:s(),totalElements:d().int(),totalPages:s()}),Mn=p({content:i(b),number:s(),size:s(),totalElements:d().int(),totalPages:s()});p({content:i(_e).optional(),empty:u().optional(),first:u().optional(),last:u().optional(),number:s().optional(),numberOfElements:s().optional(),pageable:R.optional(),size:s().optional(),sort:L.optional(),totalElements:d().int().optional(),totalPages:s().optional()});var Nn=n([o([`entityRecord`,`researchSnippet`,`newsArticle`,`personRecord`,`fundraiseTransaction`]),f()]),Pn=p({entityId:t(),source:Nn,sourceId:f()}),Fn=p({citation:i(Pn),text:f(),topic:f().nullish()}),In=p({citation:i(Pn),confidence:w,description:f().nullish(),heading:f().nullish(),paragraph:i(Fn),relatedQuery:i(f()),shareable:u(),text:f(),title:f().nullish()}),Ln=p({sortPriority:o([`NONE`,`ANY_LOGO_FIRST`,`REAL_LOGO_FIRST`]).optional()}),Rn=p({max:r({offset:!0}).nullish(),min:r({offset:!0}).nullish()}),z=p({max:d().nullish(),min:d().nullish()}),B=p({max:s().nullish(),min:s().nullish()}),zn=p({averageAmountInvestedUsdRange:i(z).optional(),largestAmountInvestedUsdRange:i(z).optional(),smallestAmountInvestedUsdRange:i(z).optional(),totalAmountInvestedUsdRange:i(z).optional(),totalInvestmentRange:i(B).optional()}),Bn=p({amountInvestedRange:i(z).optional(),amountRaisedRange:i(z).optional(),dateAnnouncedRange:Rn.nullish(),investedCompanyName:i(f()).optional(),investedCountry:i(f()).optional(),investedIndustry:i(f()).optional(),investedRound:i(f()).optional(),investorActivity:zn.optional(),investorName:i(f()).optional(),lastRoundYearRange:i(B).optional(),rankByInvestmentActivity:u().nullish(),round:i(f()).optional(),totalRaisedRange:i(z).optional(),valuationRange:i(z).optional()}),Vn=o([`NONE`,`COMPANY_LISTING_READY`]),Hn=o([`Operating`,`Acquired`,`Acquired Subsidiary`,`Closed`,`Closed (Acquihire)`,`Inactive`]),Un=o([`hostPath`,`domain`]),Wn=e({acceleratorBrand:i(f()).optional(),acceleratorCohort:i(f()).optional(),acceleratorName:i(f()).optional(),acceleratorStatus:i(f()).optional(),affinity:i(f()).optional(),closedLast:u().optional(),employeeCountRange:i(B).optional(),entityId:i(t()).optional(),entityName:i(f()).optional(),featured:u().nullish(),fundraiseActivity:Bn.optional(),hasFundraising:u().nullish(),headquartersCity:i(f()).optional(),headquartersCountry:i(f()).optional(),headquartersState:i(f()).optional(),industry:i(f()).optional(),letter:f().nullish(),location:i(f()).optional(),logoOption:Ln.optional(),mainProduct:i(f()).optional(),operatingStatus:i(Hn).optional(),originCountry:i(f()).optional(),person:i(f()).optional(),portfolioHeadquartersCity:i(f()).optional(),portfolioHeadquartersCountry:i(f()).optional(),portfolioHeadquartersState:i(f()).optional(),qualityGate:Vn.optional(),rankByProminence:u().nullish(),semanticQuery:f().nullish(),slug:i(f().regex(/^[a-z0-9_-]+$/).max(255)).optional(),stage:i(f()).optional(),suppressLateStage:u().nullish(),suppressNonOperating:u().nullish(),suppressZeroTotalRaised:u().nullish(),tag:i(f()).optional(),textSearch:f().nullish(),typeCustomer:i(f()).optional(),typeModel:i(f()).optional(),typeOwnership:i(f()).optional(),typeRecord:i(a).optional(),typeRevenue:i(f()).optional(),typeTechnologyUsed:i(f()).optional(),url:f().nullish(),urlDomain:f().nullish(),urlMatchMode:Un.nullish(),urlType:oe.nullish(),yearFoundedRange:i(B).optional()}),Gn=o([`discovery`,`profile`,`peer`,`comparison`]),Kn=o([`keyword`,`semantic`]),qn=n([o([`ID`,`NAME_BRAND`,`YEAR_FOUNDED`,`STATUS_OPERATING`,`UPDATED_AT`,`CREATED_AT`,`NEXT_DUE_AT`,`DATA_COMPLETION_COVERAGE`,`TOTAL_RAISED`,`AMOUNT_INVESTED`,`RECENT_INVESTMENT_AT`,`STAGE`,`MOST_RECENT_AMOUNT`,`LATEST_VALUATION`,`MOST_RECENT_DATE`,`ACCELERATOR_BRAND`,`ACCELERATOR_COHORT`,`HEADQUARTERS_COUNTRY`,`EMPLOYEE_COUNT`]),f()]),Jn=p({descending:u(),field:qn,sortKey:f().nullish()}),Yn=p({order:i(Jn),relevance:Kn.nullish()}),Xn=p({confidence:w,execution:F,fallbackUsed:u(),filter:Wn,intent:Gn,interpretation:f(),sort:Yn,subjectEntityName:i(f()),unsupported:f().nullish()}),Zn=p({changedAt:r({offset:!0}).nullish(),dataSourceUpdatedAt:r({offset:!0}).nullish(),pendingApproval:s().nullish(),sourceId:f().nullish(),status:f().nullish()}),Qn=p({fundManagerRelationshipSource:Zn.nullish(),fundraiseTransaction:y,fundraiseTransactionSource:Zn.nullish(),investorJoinSource:Zn.nullish()}),$n=p({evidence:Qn,investor:l,semanticMatch:ue.nullish()}),er=p({entityId:t(),matchedOffering:v.nullish(),probability:d(),webUrl:i(f())}),tr=p({entityId:t(),label:f(),publishedAt:r({offset:!0}).nullish(),score:d(),source:Nn,sourceId:f(),text:f(),url:f().nullish()}),nr=p({answer:In.nullish(),interpretation:Xn,investment:i($n),judgment:i(er),passage:i(tr),peer:i(nn),pendingWebQuery:i(f()),result:An,searchRequestId:t().nullish(),subject:i(I)}),rr=o([`auto-match`,`needs-review`,`approved`,`rejected`]),ir=p({createdAt:r({offset:!0}),entityId:t(),href:f().nullish(),internal:u(),matchStatus:rr.nullish(),mention:f().nullish(),slug:f().regex(/^[a-z0-9_-]+$/).max(255).nullish(),typeRecord:a.nullish(),updatedAt:r({offset:!0})}),ar=p({entity:i(ir),newsId:s()}),or=e({acceleratorBrand:i(f()).optional(),acceleratorCohort:i(f()).optional(),acceleratorName:i(f()).optional(),acceleratorStatus:i(f()).optional(),affinity:i(f()).optional(),closedLast:u().optional(),employeeCountRange:i(B).optional(),entityId:i(t()).optional(),entityName:i(f()).optional(),featured:u().nullish(),fundraiseActivity:Bn.optional(),hasFundraising:u().nullish(),headquartersCity:i(f()).optional(),headquartersCountry:i(f()).optional(),headquartersState:i(f()).optional(),industry:i(f()).optional(),letter:f().nullish(),location:i(f()).optional(),logoOption:Ln.optional(),mainProduct:i(f()).optional(),operatingStatus:i(Hn).optional(),originCountry:i(f()).optional(),person:i(f()).optional(),portfolioHeadquartersCity:i(f()).optional(),portfolioHeadquartersCountry:i(f()).optional(),portfolioHeadquartersState:i(f()).optional(),qualityGate:Vn.optional(),rankByProminence:u().nullish(),slug:i(f().regex(/^[a-z0-9_-]+$/).max(255)).optional(),stage:i(f()).optional(),suppressLateStage:u().nullish(),suppressNonOperating:u().nullish(),suppressZeroTotalRaised:u().nullish(),tag:i(f()).optional(),textSearch:f().nullish(),typeCustomer:i(f()).optional(),typeModel:i(f()).optional(),typeOwnership:i(f()).optional(),typeRecord:i(a).optional(),typeRevenue:i(f()).optional(),typeTechnologyUsed:i(f()).optional(),url:f().nullish(),urlDomain:f().nullish(),urlMatchMode:Un.nullish(),urlType:oe.nullish(),yearFoundedRange:i(B).optional()}),sr=p({amountInvestedRange:i(z).nullish(),amountRaisedRange:i(z).nullish(),entityName:i(f()).nullish(),investedCompany:i(f()).nullish(),personTitle:i(f()).nullish(),round:i(f()).nullish(),totalInvestmentCount:i(B).nullish(),typeRecord:i(a).nullish()}),cr=p({arrayFilter:sr.optional(),entityFilter:or.optional(),entityId:t().nullish(),entitySlug:f().nullish(),firstName:f().nullish(),includeAddress:u().nullish(),includeUrl:u().nullish(),investorActivity:zn.optional(),isCurrent:u().nullish(),lastName:f().nullish(),letter:f().nullish(),personId:i(t()).max(200).optional(),personName:i(f()).optional(),role:f().nullish(),search:f().nullish(),semanticQuery:f().nullish(),status:f().nullish()}),lr=p({descending:u(),field:o([`ID`,`FIRST_NAME`,`LAST_NAME`,`FULL_NAME`,`SLUG`,`CREATED_AT`,`UPDATED_AT`,`STATUS`,`GENDER`,`AMOUNT_INVESTED`,`TOTAL_INVESTMENTS`]),sortKey:f().nullish()}),ur=p({order:i(lr),relevance:Kn.nullish()}),dr=p({confidence:w,execution:F,fallbackUsed:u(),filter:cr,interpretation:f(),sort:ur,unsupported:f().nullish()}),fr=p({interpretation:dr,investment:i($n),result:Mn,searchRequestId:t().nullish()}),pr=p({label:f(),query:f()}),mr=p({key:f(),option:i(pr),prompt:f()}),hr=p({entity:nr,entityDetail:i(S),news:jn,newsEntityMention:i(ar),person:fr,personDetail:i(x),provenance:Qt,qualifier:mr.nullish()});function gr(e,t){return e.map(e=>{let n=e.requestBody??[],r=[...e.parameters.map(e=>_r(e)),...n.flatMap(e=>e.parameter.map(t=>_r(t,n.length>1?e.contentType:void 0))),...vr(n)],i=[t,...e.cliPath].join(` `),a=ie(e.intent),o=n[0];return{operationId:e.operationId,method:e.method,path:e.path,resource:e.resource,intent:e.intent,scope:e.scope,mutates:a,destructive:te(e.method,e.intent),auth:e.auth,cli:{command:i,path:e.cliPath},mcpTool:e.binaryResponse||!ne(e.path)?null:ae(e.intent),body:{hasBody:o!==void 0,kind:o?.kind??null,...o!==void 0&&n.length>1?{contentType:o.contentType}:{},required:o?.required??!1,description:o?.description??``,requiredPath:o?.requiredPath??[]},flags:r,errorResponse:e.errorResponse,successResponse:e.successResponse,summary:e.summary,description:e.description,deprecated:e.deprecated}})}function _r(e,t){let n=e.flag.split(/\s+/u);return{name:n[0]??e.flag,optionKey:e.optionKey,wireName:e.name,location:e.location,required:e.required,placeholder:n.length<=1?null:n.slice(1).join(` `),description:e.description,choices:e.choices??[],...t===void 0?{}:{contentType:t}}}function vr(e){if((e?.length??0)<=1)return[];let t=e?.map(({contentType:e})=>e)??[];return[{name:`--content-type`,optionKey:`contentType`,wireName:`Content-Type`,location:`body`,required:!1,placeholder:`<media-type>`,description:`Select the request body encoding, never an uploaded file's media type; omit for ${t[0]}.`,choices:t}]}function yr(e){return e.flags.filter(({contentType:t})=>t===void 0||t===e.body.contentType)}var br=[`-id`,`-slug`,`-url`],xr=[`--id`,`--slug`,`--url`],Sr=`/v1/lookup`,Cr=`--from-file "<path>"`;function wr(e,t,n=_().bin[0]){let r=gr(t,n),i=r.find(t=>t.operationId===e);return i===void 0?[]:Or(i,r)}function Tr(e,t,n=_().bin[0]){let r=t.find(t=>t.operationId===e),[i]=r===void 0?[]:gr([r],n);return i&&Dr(i,jr(i,!1))}function Er(e,t,n,r=_().bin[0]){let i=e=>{let t=e.findIndex((e,t)=>n[t]!==e);return t===-1?e.length:t},a=`${n[0]} get`,[o,s]=t.filter(({method:t,path:n,parameters:r,cliPath:o})=>{let s=r.filter(({location:e})=>e===`path`),[c]=s;return t===`GET`&&s.length===1&&c?.flag.split(/\s+/u)[0]===e&&n.endsWith(`/{${c.name}}`)&&(i(o)>1||o.join(` `)===a)}).toSorted((e,t)=>i(t.cliPath)-i(e.cliPath));if(o!==void 0&&(s===void 0||i(s.cliPath)!==i(o.cliPath)))return Tr(o.operationId,t,r)}function Dr(e,t){return[e.cli.command,...t,`--data`].join(` `)}function Or(e,t){return[`example: ${Dr(e,jr(e))}`,...kr(e,t)]}function kr(e,t){return yr(e).flatMap(e=>{if(!e.required||!e.optionKey.endsWith(`Id`))return[];let n=`${e.optionKey.slice(0,-2)}Slug`,r=t.find(e=>e.method===`GET`&&/\/lookup(?:-exact)?$/u.test(e.path)&&e.flags.some(e=>e.optionKey===n)),i=r?.flags.find(e=>e.optionKey===n);if(r===void 0||i===void 0)return[];let a=`${r.cli.command} ${Nr(i)} --data`,o=t.find(e=>e.method===`POST`&&e.path===Sr),s=o?.flags.find(e=>e.optionKey===`name`),c=o?.flags.find(e=>e.optionKey===`kind`),l=c?.choices.find(t=>e.optionKey.toUpperCase().startsWith(t)),u=`lookup: ${e.name} from a slug: ${a}`;return o===void 0||s===void 0||c===void 0||l===void 0?[u]:[u,`lookup: ${e.name} from a name or URL: ${o.cli.command} ${c.name} ${l} ${Nr(s)} --data, then match.owner.${e.optionKey} when status is MATCHED`]})}var Ar=/(?:^|\.)text$/u;function jr(e,t=!0){let n=yr(e).filter(e=>e.required),r=e.body.kind===`json`&&n.some(e=>e.location===`body`&&Ar.test(e.wireName))?n.filter(e=>e.location!==`body`):n,i=(n.length>0||!t?r:Mr(e)).map(Nr);return(e.body.required||e.body.requiredPath.length>0)&&!r.some(e=>e.location===`body`)?[...i,Cr]:i}function Mr(e){let t=new Set;j(t,e.resource);for(let n of br)for(let r of t){let t=e.flags.find(e=>e.name===`--${r}${n}`);if(t!==void 0)return[t]}for(let t of xr){let n=e.flags.find(e=>e.name===t);if(n!==void 0)return[n]}return[]}function Nr(e){return e.placeholder===null?e.name:`${e.name} "${e.placeholder}"`}var Pr=`aventure`;function Fr(e,t){let n=t.find(t=>t.operationId===e)?.cliPath;return n===void 0?void 0:`${Pr} ${n.join(` `)}`}function Ir(e,t,n=e){return Tr(e,t,`aventure`)??n}function Lr(e,t){let n=Ve.safeParse(e);if(!n.success)return null;let{answer:r,citation:i,confidence:a,resolution:o}=n.data;if(o!=null)return Rr(r,o,t);let s=r.trimEnd().split(`
|
|
3
|
+
`),c=new Set(i.flatMap(({sourceType:e,sourceId:n})=>{if(e!==Me.options[0].enum.OPERATION)return[];let r=Fr(n,t);return r===void 0?[]:[r]}));return c.size>0&&s.push(``,`Commands:`,...[...c].map(e=>` ${e}`)),s.push(``,`Confidence: ${a}`),i.length===0?s:(s.push(`Sources (${i.length}):`),s.push(...i.map(({excerpt:e,sourceId:t})=>{let n=e.trim();return n.length>0?` - ${t}: ${n}`:` - ${t}`})),s)}function Rr(e,t,n){let{outcome:r,operationId:i,probability:a,candidate:o,taskKey:s,taskPlan:c}=t,l=[c==null?e.trimEnd():Br(c)],u=[``,`Outcome: ${r}${a==null?``:` (probability ${a.toFixed(2)})`}`];switch(r){case T.enum.TASK_PLAN:return[...l,...c==null?[]:Vr(c,n),...u];case T.enum.OPERATION_ADVICE:{let e=o.filter(({sourceId:e})=>e!==i);return[...l,...i==null?[]:[``,`Command:`,` ${Ir(i,n)}`],...u,...e.length===0?[]:[`Alternatives: ${e.map(({sourceId:e})=>e).join(`, `)}`]]}case T.enum.CLARIFY:return[...l,...s==null?[]:[``,`Leading catalog task: ${s}`],...Ur(`Candidates:`,o,n),...u];case T.enum.ABSTAIN:return[...l,...Ur(`Nearest operations:`,o,n),...u];default:throw Error(`Unhandled help resolution outcome ${String(r)}`)}}function zr(e,t){let n=ze.safeParse(e);return n.success?[Br(n.data),...Vr(n.data,t)]:null}var Br=({taskKey:e,catalogRevision:t})=>`Run catalog task ${e} (catalog revision ${t}).`;function Vr(e,t){return e.step.length===0?[``,`This catalog task has no planned steps yet.`]:[...e.input.length===0?[]:[``,`Inputs:`,...e.input.map(({key:e,type:t,description:n})=>` ${e} (${t}): ${n}`)],``,`Steps:`,...e.step.flatMap(({step:n,cliCommand:r,writeGuidance:i},a)=>[` ${a+1}. ${n.stepKey}: ${Ir(n.operationId,t,r)}`,` ${n.instruction}`,...Hr(e,a,i)]),...e.gateId.length===0?[]:[``,`Completion gates: ${e.gateId.join(`, `)}`]]}function Hr(e,t,n){if(n==null)return[];let r=JSON.stringify(n),i=e.step.findIndex(({writeGuidance:e})=>JSON.stringify(e)===r);return i===t?[` Write guidance:`,` - Expectation: ${n.expectation}`,` - Body: ${n.body}`,` - Read first: ${n.typeCatalog}`,` - Rejected when:`,...n.reject.map(e=>` - ${e}`),` - Override: ${n.override}`,` - Method: ${n.method.join(`; `)}`]:[` Write guidance: as step ${i+1}.`]}function Ur(e,t,n){if(t.length===0)return[];let r=t.map(({sourceId:e,excerpt:t})=>({command:Fr(e,n)??e,excerpt:t})),i=Math.max(...r.map(({command:e})=>e.length));return[``,e,...r.map(({command:e,excerpt:t})=>` ${e.padEnd(i)} # ${t}`)]}var V=120,H=30,Wr=8,U=10,Gr=2,Kr=[`id`,`association.associationId`,`slug`,`name`,`nameBrand`,`nameFull`,`core.nameBrand`,`core.nameFull`,`core.slug`,`core.typeRecord`,`entity.core.nameBrand`,`entity.core.slug`,`title`,`sourceName`,`publishedAt`,`round`,`dateAnnounced`,`amountRaised`,`investorAttribution.amountInvested`,`stage`,`updatedAt`,`createdAt`],qr=new Set([`page`,`size`,`sort`,`cursor`,`mode`,`projection`]),Jr=[`interpretation`,`confidence`,`unsupported`,`execution`,`fallbackUsed`];function Yr(e,t,n){if(typeof t==`string`)return Z(t);let r=st(t);if(r!==null)return Z(r);let i=oi(t);if(i===null)return null;let a=e.find(({operationId:e})=>e===i.operationId),{response:o,hiddenNote:s}=Ee(a?.detailField,i.response),c={...i,response:o},l=Lr(c.response,e)??zr(c.response,e);if(l!==null)return Z(l.join(`
|
|
4
|
+
`),!0);let u=Xr(c.endpoint,c.response);if(u!==null)return Z([...u,...s].join(`
|
|
5
|
+
`),!0,s.length>0);let d=c.summary??n??c.operationId??`OpenAPI call succeeded`,f=ei(c);return Z([...[d,`${c.method} ${c.endpoint}`,...f].filter(e=>e.length>0),...s].join(`
|
|
6
|
+
`),!0,s.length>0)}function Xr(e,t){if(t===void 0||!J(t)||!(`entity`in t&&`person`in t&&`news`in t))return null;let n=hr.safeParse(t);if(!n.success)return null;let{entity:r,person:i,news:a,provenance:o}=n.data;return[...r.answer?Zr(r.answer):[],...o.unavailable.map(e=>`${e} unavailable: retry this scope later`),...o.answerUnavailable?[`answer unavailable: retry this search later`]:[],...o.rejection.map(({scope:e,detail:t})=>C(`${e} rejected: ${t}`)),[`entities:`,...W(r.result,e)].join(`
|
|
7
|
+
`),[`people:`,...W(i.result,e)].join(`
|
|
8
|
+
`),[`news:`,...W(a,e)].join(`
|
|
9
|
+
`)]}function Zr(e){let t=`relatedQuery:\n${e.relatedQuery.map(e=>` - ${C(e)}`).join(`
|
|
10
|
+
`)}`,n=`citations:\n${e.citation.map(({source:e,sourceId:t,entityId:n})=>C(` - ${e}:${t} entity=${n}`)).join(`
|
|
11
|
+
`)}`;return[`answer:\n ${De(e.text).replaceAll(`
|
|
12
|
+
`,`
|
|
13
|
+
`)}`,...e.relatedQuery.length===0?[]:[t],...e.citation.length===0?[]:[n]]}function Qr(e){let t=oi(e)?.response,n=t!==void 0&&J(t)?t.interpretation:void 0;if(n===void 0||!J(n))return null;let r=F.safeParse(n.execution);if(!r.success)return null;let{modeRequested:i,modeUsed:a}=r.data,o=K(n.filter??null),{unsupported:s,fallbackUsed:c}=n;return Z([`strategy: requested=${i} used=${a}`,...o!==void 0&&J(o)?[`constraints:`,...Object.entries(o).map(([e,t])=>` ${e}: ${$r(t)}`)]:[],typeof s==`string`&&s.trim().length>0?`unsupported: ${s}`:``,c===!0?`fallback: semantic search over the original query`:``].filter(Boolean).join(`
|
|
14
|
+
`),!0)}var $r=e=>Y(e)?C(e):Array.isArray(e)&&e.every(Y)?e.map(e=>C(e)).join(`, `):JSON.stringify(e);function ei(e){let{response:t,method:n,endpoint:r,nextCursor:i,httpStatus:a,location:o}=e;if(t===void 0)return o!==void 0&&a!==void 0?[`status=${a} redirect=${o}`]:a===void 0?[]:[`status=${a} no response body`];let s=a===void 0||n===`GET`?``:`status=${a}`,c=J(t)&&!ci(t)?li(t):null,l=c===null?void 0:J(c.context.interpretation)?K(c.context):c.context,u=l!==void 0&&J(l)?Object.entries(l):[],d=u.filter(e=>Array.isArray(e[1])&&e[1].length>0&&e[1].every(J)),f=new Set(d.map(([e])=>e)),p=Object.fromEntries(u.filter(([e])=>!f.has(e)));return[s,...ci(t)?W(t,r,i):c===null?di(t)?ri(t.filter,t.meta):fi(t)?ri([...t.arrayFilterEntry,...t.rangeFilterEntry],t.filtersMeta):mi(t)?ii(t):G(t,``):[...W(c.page,r,i),...Object.keys(p).length===0?[]:G(p,``),...d.flatMap(([e,t])=>[`${e}:`].concat(ti(t)))]].filter(Boolean)}function W(e,t,n){let r=ai(t);return[`rows=${e.numberOfElements??e.content.length}${e.number===void 0?``:` page=${e.number}`}${e.size===void 0?``:` size=${e.size}`}${e.totalElements===void 0?``:` total=${e.totalElements}`}${e.totalPages===void 0?``:` totalPages=${e.totalPages}`}`,r.length>0?`filters: ${r.join(` `)}`:``,n===void 0?``:`next: --cursor ${X(n)}`,...ti(e.content)].filter(Boolean)}function ti(e){let t=e.filter(J);if(t.length===0)return e.length===0?[`(empty)`]:si(e,``);let n=ni(t);if(n.length===0)return si(e.slice(0,H),``);let r=t.slice(0,H).map(e=>{let t=q(e);return n.map(e=>t[e]??``)}),i=n.map(e=>e.split(`.`).at(-1)??e),a=i.map((e,t)=>{let n=r.map(e=>e[t]??``),i=Math.max(e.length,...n.map(e=>e.length));return e===`id`||e.endsWith(`Id`)?i:Math.min(32,i)}),o=e=>e.map((e,t)=>gi(e,a[t]??12).padEnd(a[t]??12)).join(` `),s=[o(i),o(a.map(e=>`-`.repeat(e)))];return r.forEach(e=>s.push(o(e))),t.length>H&&s.push(`... ${t.length-H} more rows`),s}function ni(e){let t=new Set(e.flatMap(e=>Object.keys(q(e)))),n=Kr.filter(e=>t.has(e)),r=[...t].filter(e=>!n.includes(e)).filter(e=>!e.toLowerCase().includes(`logo`)).slice(0,Wr-n.length);return[...n,...r].slice(0,Wr)}function ri(e,t){let n=t!==void 0&&J(t)?t:{},r=[`total`,`limit`].flatMap(e=>typeof n[e]==`number`?[` ${e}=${n[e]}`]:[]).join(``),i=[`filters=${e.length}${r}`];for(let t of e){let e=t.choiceOption.length,n=t.choiceOptionTotal===null?`unknown (degraded)`:t.choiceOptionTotal??e,r=t.choiceOptionTruncated===!0?` truncated`:``;i.push(`- ${t.filterKey} (${t.label}): choices ${e}/${n}${r}`),t.choiceOption.slice(0,U).forEach(e=>{i.push(` ${hi(t.filterKey)} ${X(e.value)}`)}),e>U&&i.push(` ... ${e-U} more shown`)}return i}function ii(e){let t=hi(e.filterKey);return[`${e.filterKey}: ${e.result.length} matches`,...e.result.slice(0,U).map(e=>`${t} ${X(e)}`),e.result.length>U?`... ${e.result.length-U} more matches`:``].filter(Boolean)}function ai(e){let t=e.indexOf(`?`);return t<0?[]:[...new URLSearchParams(e.slice(t+1)).entries()].filter(([e,t])=>!qr.has(e)&&t.length>0).map(([e,t])=>`${hi(e)} ${X(t)}`)}function oi(e){if(typeof e!=`object`||!e||Array.isArray(e))return null;let t=Reflect.get(e,`method`),n=Reflect.get(e,`endpoint`);if(typeof t!=`string`||typeof n!=`string`)return null;let r=Reflect.get(e,`operationId`),i=Reflect.get(e,`summary`),a=Reflect.get(e,`httpStatus`),o=Reflect.get(e,`location`),s=Reflect.get(e,`nextCursor`),c=Reflect.get(e,`response`),l=c===void 0?void 0:g.safeParse(c);return l!==void 0&&!l.success?null:{method:t,endpoint:n,httpStatus:typeof a==`number`?a:void 0,location:typeof o==`string`?o:void 0,operationId:typeof r==`string`?r:void 0,summary:typeof i==`string`?i:void 0,nextCursor:typeof s==`string`&&s.length>0?s:void 0,response:l?.data}}function G(e,t,n){if(e===void 0)return[];if(Y(e))return[`${t}${Oe(e,n)}`];if(Array.isArray(e))return si(e,t,n);let r=[];for(let[n,i]of Object.entries(e)){if(Y(i)){r.push(`${t}${n}: ${Oe(i,n)}`);continue}r.push(`${t}${n}:`);for(let e of G(i,`${t} `,n))r.push(e)}return r.length===0?[`${t}(empty)`]:r}function si(e,t,n){if(e.length===0)return[`${t}(empty)`];let r=[];for(let i of e){if(Y(i)){r.push(`${t}- ${Oe(i,n)}`);continue}r.push(`${t}-`);for(let e of G(i,`${t} `))r.push(e)}return r}function K(e){if(Y(e))return e===null||typeof e==`string`&&e.trim().length===0?void 0:e;if(Array.isArray(e)){let t=e.flatMap(e=>{let t=K(e);return t===void 0?[]:[t]});return t.length===0?void 0:t}let t=Object.entries(e).flatMap(([e,t])=>{let n=K(t);return n===void 0?[]:[[e,n]]});if(t.length!==0)return Object.fromEntries([...Jr.flatMap(e=>t.filter(([t])=>t===e)),...t.filter(([e])=>!Jr.includes(e))])}function q(e,t=``,n=0){return Y(e)?t.length===0?{}:{[t]:C(e,t)}:n>Gr?{}:Array.isArray(e)?e.length===0?{}:q(e[0],t,n+1):Object.fromEntries(Object.entries(e).flatMap(([e,r])=>{let i=t.length===0?e:`${t}.${e}`;return Y(r)?[[i,C(r,i)]]:Object.entries(q(r,i,n+1))}))}var ci=e=>J(e)&&Array.isArray(e.content);function li(e){let[t,...n]=Object.entries(e).filter(e=>ci(e[1])&&typeof e[1].totalElements==`number`);if(t===void 0||n.length>0)return null;let[r,i]=t;return{page:i,context:Object.fromEntries(Object.entries(e).filter(([e])=>e!==r))}}function ui(e){return J(e)&&typeof e.label==`string`&&typeof e.filterKey==`string`&&Array.isArray(e.choiceOption)}var di=e=>J(e)&&pi(e.filter),fi=e=>J(e)&&pi(e.arrayFilterEntry)&&pi(e.rangeFilterEntry),pi=e=>Array.isArray(e)&&e.every(ui),mi=e=>J(e)&&typeof e.filterKey==`string`&&Array.isArray(e.result)&&e.result.every(e=>typeof e==`string`),J=e=>typeof e==`object`&&!!e&&!Array.isArray(e),Y=e=>typeof e!=`object`||!e,hi=e=>`--${e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase()}`,X=e=>/^[A-Za-z0-9._:/@-]+$/.test(e)?e:`'${e.replaceAll(`'`,`'\\''`)}'`,gi=(e,t)=>e.length<=t?e:`${e.slice(0,Math.max(0,t-3))}...`,Z=(e,t=!1,n=!1,r=1)=>{let i=De(e),a=t||i.endsWith(`
|
|
15
|
+
`),o=i.endsWith(`
|
|
16
|
+
`)?i.slice(0,-1):i,s=o.length===0?[]:o.split(`
|
|
17
|
+
`),c=je.byteLength(`${s.join(`
|
|
18
|
+
`)}\n`,`utf8`);if(s.length<=V&&c<=5e4)return`${s.join(`
|
|
19
|
+
`)}${a?`
|
|
20
|
+
`:``}`;let l=n?Math.min(Math.max(1,r),118):0,u=l>0?s.slice(-l):[],d=u.length===0?s:s.slice(0,-u.length),f=[s.length>V?`${V} physical lines`:``,c>5e4?`${h} UTF-8 bytes`:``].filter(Boolean).join(` and `),p=e=>De(`... output truncated: ${e} more lines omitted to stay within ${f}; recover omitted response content with narrower server-side filters, the relevant sub-resource operation (aventure_help names it), or responseFormat json.`),m=(e,t)=>[...e,...u,t].join(`
|
|
21
|
+
`),ee=V-u.length-1,g=d.slice(0,ee),_=p(s.length-g.length-u.length);for(;je.byteLength(`${m(g,_)}\n`,`utf8`)>h;){if(g.length>0)g=g.slice(0,-1);else if(u.length>0)u=u.slice(1);else break;_=p(s.length-g.length-u.length)}return`${m(g,_)}${a?`
|
|
22
|
+
`:``}`},_i=/\{([^}]+)\}/gu;function vi(e,t){let n=t.filter(e=>e.method===`GET`),r=t=>e.endpoint!==void 0&&t.endsWith(e.endpoint),i=t.find(t=>t.operationId===e.operationId),a=e.ok&&i!==void 0&&ie(i.intent),o=[...a&&e.endpoint!==void 0?bi(e.endpoint.split(`?`)[0]??``,n,!1).map(e=>`${e} --data --to-file <path>`):[],...e.references.filter(e=>!r(e)).flatMap(yi).flatMap(e=>bi(e.pathname,n,!0)),...e.references.filter(r).flatMap(yi).flatMap(e=>xi(e,n))];return o.length===0?{write:a}:{exactRecovery:`Read the full result ${o.join(`; `)}.`,write:a}}function yi(e){return URL.canParse(e)?[new URL(e)]:[]}function bi(e,t,n){return t.flatMap(t=>{let r=[...t.path.matchAll(_i)].map(([,e])=>e),i=RegExp(`^${t.path.replace(_i,`([^/]+)`)}$`,`u`),a=n&&r.length===0?null:i.exec(e);if(a===null)return[];let o=r.flatMap((e,n)=>{let r=t.parameters.find(t=>t.name===e);return r===void 0?[]:[Q(r),a[n+1]??``]});return[`${Si(t)}, ${Ci(t,o)}`]})}function xi(e,t){let n=t.find(t=>t.path===e.pathname);return n===void 0?[]:t.flatMap(t=>{if(!t.path.startsWith(`${n.path}/`))return[];let r=t.parameters.find(({name:e})=>e.endsWith(`Offset`)),i=t.parameters.find(({name:e})=>e.endsWith(`Limit`));if(r===void 0||i===void 0)return[];let a=t.parameters.flatMap(t=>{let n=e.searchParams.get(t.name);return t.location!==`query`||n===null?[]:[Q(t),wi(n)]}),o=[Q(r),`<n>`,Q(i),`<n>`];return[`${Si(t)}, in windows: ${Ci(t,[...a,...o])}, advancing ${Q(r)} until a window returns fewer than ${Q(i)} units`]})}function Si(e){return e.auth===`write`?`with admin sign-in`:`with any sign-in`}function Ci(e,t){return[Pr,...e.cliPath,...t].join(` `)}function Q(e){return e.flag.split(/\s+/u)[0]??e.flag}function wi(e){return`'${e.replaceAll(`'`,`'"'"'`)}'`}function Ti(e){return e.toSorted((e,t)=>e.projection.cliPath.length-t.projection.cliPath.length||e.projection.cliPath.join(` `).localeCompare(t.projection.cliPath.join(` `))||e.operationId.localeCompare(t.operationId)).map(e=>{let t=e.parameter.flatMap(t=>{if(t.in!==`path`&&t.in!==`query`&&t.in!==`header`)return[];let n=t.in;return(t.in===`query`&&t.itemProperty!==void 0?t.itemProperty:[t]).map(t=>{let r=$(t,E(e,t),n);if(t.legacyName===void 0)return r;let i=$(t,E(e,t,t.legacyName),n).flag;return i===r.flag?r:Object.assign(r,{legacyFlag:i})})}),n=e.requestBody?.map(n=>{let r=Oi(e,t,n),i=Di(n.cliConflicts,r),a=i.length===0?{}:{cliConflicts:i};return Object.assign({},n,{parameter:r},a)}),r=e.response.find(({status:e})=>e.startsWith(`2`))?.schemaName?.replace(/Schema$/,``);return{operationId:e.operationId,method:e.method,path:e.path,resource:e.resource,intent:e.intent,cliPath:e.projection.cliPath,summary:e.summary,description:e.description,binaryResponse:e.binaryResponse?!0:void 0,explain:e.explain?!0:void 0,deprecated:e.deprecated?!0:void 0,requestBody:n,mutationReadback:e.mutationReadback,scope:e.projection.scope,auth:e.projection.auth,visibility:e.projection.visibility,errorResponse:e.errorResponse,successResponse:r,detailField:e.response.find(e=>e.detailField!==void 0)?.detailField,parameters:t}})}function Ei(e,t){let[n,r]=e.filter(e=>e.role===t);if(n===void 0||r!==void 0)throw Error(`Generated composite CLI role '${t}' is incomplete`);return n}function Di(e,t){let n=new Map(t.map(({name:e,optionKey:t})=>[e,t]));return(e??[]).map(e=>e.map(e=>{let t=n.get(e);if(t===void 0)throw Error(`x-aventure-cli-conflicts field '${e}' was removed from the generated CLI projection`);return t}))}function Oi(e,t,n){let r=new Set(t.map(e=>e.optionKey));(e.requestBody?.length??0)>1&&r.add(`contentType`);let i=new Set(t.filter(e=>e.location===`path`).map(e=>e.name));return n.parameter.toSorted((e,t)=>ki(e.name)-ki(t.name)).flatMap(t=>{if(!t.required&&(r.has(t.inputName)||i.has(t.name)))return[];let n=He(e,t,r);return r.add(n),[$(t,n,`body`)]})}function ki(e){let t=e.split(`.`).at(-1);return t===`min`?0:t===`max`?1:2}function $(e,t,n){let r=e.itemSchemaEnum??e.schemaEnum,i=Ae(e.schemaType,e.itemSchemaType,e.schemaFormat,t);return{name:e.name,optionKey:t,flag:`${re(t)} ${e.schemaType===`boolean`?`[${i}]`:`<${i}>`}`,required:e.required&&e.schemaDefault===void 0,description:ke(e.description,r),schemaType:e.schemaType,schemaFormat:e.schemaFormat,itemSchemaType:e.itemSchemaType,defaultValue:Ai(e.schemaDefault),choices:r,...e.envName===void 0?{}:{envName:e.envName},...e.visibility&&{visibility:e.visibility},location:n}}var Ai=e=>Array.isArray(e)?e.map(String):typeof e==`number`?String(e):e;export{P as _,Z as a,yr as c,Or as d,gr as f,Yt as g,Ft as h,Yr as i,wr as l,Nt as m,Ei as n,Qr as o,Kt as p,vi as r,Ar as s,Ti as t,Er as u};
|