@earlyai/cli 2.21.7 → 2.21.9
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/index.cjs +94 -67
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -17,7 +17,7 @@ Expecting one of '${n.join(`', '`)}'`);return this._lifeCycleHooks[e]?this._life
|
|
|
17
17
|
- if the default executable name is not suitable, use the executableFile option to supply a custom name or path
|
|
18
18
|
- ${t?`searched for local subcommand relative to directory '${t}'`:`no directory for search for local subcommand, use .executableDir() to supply a custom directory`}`;throw Error(r)}_executeSubCommand(e,t){t=t.slice();let o=!1,s=[`.js`,`.ts`,`.tsx`,`.mjs`,`.cjs`];function l(e,t){let n=r.resolve(e,t);if(i.existsSync(n))return n;if(s.includes(r.extname(t)))return;let a=s.find(e=>i.existsSync(`${n}${e}`));if(a)return`${n}${a}`}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let u=e._executableFile||`${this._name}-${e._name}`,d=this._executableDir||``;if(this._scriptPath){let e;try{e=i.realpathSync(this._scriptPath)}catch{e=this._scriptPath}d=r.resolve(r.dirname(e),d)}if(d){let t=l(d,u);if(!t&&!e._executableFile&&this._scriptPath){let n=r.basename(this._scriptPath,r.extname(this._scriptPath));n!==this._name&&(t=l(d,`${n}-${e._name}`))}u=t||u}o=s.includes(r.extname(u));let f;a.platform===`win32`?(this._checkForMissingExecutable(u,d,e._name),t.unshift(u),t=h(a.execArgv).concat(t),f=n.spawn(a.execPath,t,{stdio:`inherit`})):o?(t.unshift(u),t=h(a.execArgv).concat(t),f=n.spawn(a.argv[0],t,{stdio:`inherit`})):f=n.spawn(u,t,{stdio:`inherit`}),f.killed||[`SIGUSR1`,`SIGUSR2`,`SIGTERM`,`SIGINT`,`SIGHUP`].forEach(e=>{a.on(e,()=>{f.killed===!1&&f.exitCode===null&&f.kill(e)})});let p=this._exitCallback;f.on(`close`,e=>{e??=1,p?p(new c(e,`commander.executeSubCommandAsync`,`(close)`)):a.exit(e)}),f.on(`error`,t=>{if(t.code===`ENOENT`)this._checkForMissingExecutable(u,d,e._name);else if(t.code===`EACCES`)throw Error(`'${u}' not executable`);if(!p)a.exit(1);else{let e=new c(1,`commander.executeSubCommandAsync`,`(error)`);e.nestedError=t,p(e)}}),this.runningCommand=f}_dispatchSubcommand(e,t,n){let r=this._findCommand(e);r||this.help({error:!0}),r._prepareForParse();let i;return i=this._chainOrCallSubCommandHook(i,r,`preSubcommand`),i=this._chainOrCall(i,()=>{if(r._executableHandler)this._executeSubCommand(r,t.concat(n));else return r._parseCommand(t,n)}),i}_dispatchHelpCommand(e){e||this.help();let t=this._findCommand(e);return t&&!t._executableHandler&&t.help(),this._dispatchSubcommand(e,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??`--help`])}_checkNumberOfArguments(){this.registeredArguments.forEach((e,t)=>{e.required&&this.args[t]==null&&this.missingArgument(e.name())}),!(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)&&this.args.length>this.registeredArguments.length&&this._excessArguments(this.args)}_processArguments(){let e=(e,t,n)=>{let r=t;if(t!==null&&e.parseArg){let i=`error: command-argument value '${t}' is invalid for argument '${e.name()}'.`;r=this._callParseArg(e,t,n,i)}return r};this._checkNumberOfArguments();let t=[];this.registeredArguments.forEach((n,r)=>{let i=n.defaultValue;n.variadic?r<this.args.length?(i=this.args.slice(r),n.parseArg&&(i=i.reduce((t,r)=>e(n,r,t),n.defaultValue))):i===void 0&&(i=[]):r<this.args.length&&(i=this.args[r],n.parseArg&&(i=e(n,i,n.defaultValue))),t[r]=i}),this.processedArgs=t}_chainOrCall(e,t){return e?.then&&typeof e.then==`function`?e.then(()=>t()):t()}_chainOrCallHooks(e,t){let n=e,r=[];return this._getCommandAndAncestors().reverse().filter(e=>e._lifeCycleHooks[t]!==void 0).forEach(e=>{e._lifeCycleHooks[t].forEach(t=>{r.push({hookedCommand:e,callback:t})})}),t===`postAction`&&r.reverse(),r.forEach(e=>{n=this._chainOrCall(n,()=>e.callback(e.hookedCommand,this))}),n}_chainOrCallSubCommandHook(e,t,n){let r=e;return this._lifeCycleHooks[n]!==void 0&&this._lifeCycleHooks[n].forEach(e=>{r=this._chainOrCall(r,()=>e(this,t))}),r}_parseCommand(e,t){let n=this.parseOptions(t);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(n.operands),t=n.unknown,this.args=e.concat(t),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),t);if(this._getHelpCommand()&&e[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(e[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(t),this._dispatchSubcommand(this._defaultCommandName,e,t);this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName&&this.help({error:!0}),this._outputHelpIfRequested(n.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let r=()=>{n.unknown.length>0&&this.unknownOption(n.unknown[0])},i=`command:${this.name()}`;if(this._actionHandler){r(),this._processArguments();let n;return n=this._chainOrCallHooks(n,`preAction`),n=this._chainOrCall(n,()=>this._actionHandler(this.processedArgs)),this.parent&&(n=this._chainOrCall(n,()=>{this.parent.emit(i,e,t)})),n=this._chainOrCallHooks(n,`postAction`),n}if(this.parent?.listenerCount(i))r(),this._processArguments(),this.parent.emit(i,e,t);else if(e.length){if(this._findCommand(`*`))return this._dispatchSubcommand(`*`,e,t);this.listenerCount(`command:*`)?this.emit(`command:*`,e,t):this.commands.length?this.unknownCommand():(r(),this._processArguments())}else this.commands.length?(r(),this.help({error:!0})):(r(),this._processArguments())}_findCommand(e){if(e)return this.commands.find(t=>t._name===e||t._aliases.includes(e))}_findOption(e){return this.options.find(t=>t.is(e))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(e=>{e.options.forEach(t=>{t.mandatory&&e.getOptionValue(t.attributeName())===void 0&&e.missingMandatoryOptionValue(t)})})}_checkForConflictingLocalOptions(){let e=this.options.filter(e=>{let t=e.attributeName();return this.getOptionValue(t)===void 0?!1:this.getOptionValueSource(t)!==`default`});e.filter(e=>e.conflictsWith.length>0).forEach(t=>{let n=e.find(e=>t.conflictsWith.includes(e.attributeName()));n&&this._conflictingOption(t,n)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(e=>{e._checkForConflictingLocalOptions()})}parseOptions(e){let t=[],n=[],r=t;function i(e){return e.length>1&&e[0]===`-`}let a=e=>/^-\d*\.?\d+(e[+-]?\d+)?$/.test(e)?!this._getCommandAndAncestors().some(e=>e.options.map(e=>e.short).some(e=>/^-\d$/.test(e))):!1,o=null,s=null,c=0;for(;c<e.length||s;){let l=s??e[c++];if(s=null,l===`--`){r===n&&r.push(l),r.push(...e.slice(c));break}if(o&&(!i(l)||a(l))){this.emit(`option:${o.name()}`,l);continue}if(o=null,i(l)){let t=this._findOption(l);if(t){if(t.required){let n=e[c++];n===void 0&&this.optionMissingArgument(t),this.emit(`option:${t.name()}`,n)}else if(t.optional){let n=null;c<e.length&&(!i(e[c])||a(e[c]))&&(n=e[c++]),this.emit(`option:${t.name()}`,n)}else this.emit(`option:${t.name()}`);o=t.variadic?t:null;continue}}if(l.length>2&&l[0]===`-`&&l[1]!==`-`){let e=this._findOption(`-${l[1]}`);if(e){e.required||e.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${e.name()}`,l.slice(2)):(this.emit(`option:${e.name()}`),s=`-${l.slice(2)}`);continue}}if(/^--[^=]+=/.test(l)){let e=l.indexOf(`=`),t=this._findOption(l.slice(0,e));if(t&&(t.required||t.optional)){this.emit(`option:${t.name()}`,l.slice(e+1));continue}}if(r===t&&i(l)&&!(this.commands.length===0&&a(l))&&(r=n),(this._enablePositionalOptions||this._passThroughOptions)&&t.length===0&&n.length===0){if(this._findCommand(l)){t.push(l),n.push(...e.slice(c));break}else if(this._getHelpCommand()&&l===this._getHelpCommand().name()){t.push(l,...e.slice(c));break}else if(this._defaultCommandName){n.push(l,...e.slice(c));break}}if(this._passThroughOptions){r.push(l,...e.slice(c));break}r.push(l)}return{operands:t,unknown:n}}opts(){if(this._storeOptionsAsProperties){let e={},t=this.options.length;for(let n=0;n<t;n++){let t=this.options[n].attributeName();e[t]=t===this._versionOptionName?this._version:this[t]}return e}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((e,t)=>Object.assign(e,t.opts()),{})}error(e,t){this._outputConfiguration.outputError(`${e}\n`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError==`string`?this._outputConfiguration.writeErr(`${this._showHelpAfterError}\n`):this._showHelpAfterError&&(this._outputConfiguration.writeErr(`
|
|
19
19
|
`),this.outputHelp({error:!0}));let n=t||{},r=n.exitCode||1,i=n.code||`commander.error`;this._exit(r,i,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in a.env){let t=e.attributeName();(this.getOptionValue(t)===void 0||[`default`,`config`,`env`].includes(this.getOptionValueSource(t)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,a.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new f(this.options),t=e=>this.getOptionValue(e)!==void 0&&![`default`,`implied`].includes(this.getOptionValueSource(e));this.options.filter(n=>n.implied!==void 0&&t(n.attributeName())&&e.valueFromOption(this.getOptionValue(n.attributeName()),n)).forEach(e=>{Object.keys(e.implied).filter(e=>!t(e)).forEach(t=>{this.setOptionValueWithSource(t,e.implied[t],`implied`)})})}missingArgument(e){let t=`error: missing required argument '${e}'`;this.error(t,{code:`commander.missingArgument`})}optionMissingArgument(e){let t=`error: option '${e.flags}' argument missing`;this.error(t,{code:`commander.optionMissingArgument`})}missingMandatoryOptionValue(e){let t=`error: required option '${e.flags}' not specified`;this.error(t,{code:`commander.missingMandatoryOptionValue`})}_conflictingOption(e,t){let n=e=>{let t=e.attributeName(),n=this.getOptionValue(t),r=this.options.find(e=>e.negate&&t===e.attributeName()),i=this.options.find(e=>!e.negate&&t===e.attributeName());return r&&(r.presetArg===void 0&&n===!1||r.presetArg!==void 0&&n===r.presetArg)?r:i||e},r=e=>{let t=n(e),r=t.attributeName();return this.getOptionValueSource(r)===`env`?`environment variable '${t.envVar}'`:`option '${t.flags}'`},i=`error: ${r(e)} cannot be used with ${r(t)}`;this.error(i,{code:`commander.conflictingOption`})}unknownOption(e){if(this._allowUnknownOption)return;let t=``;if(e.startsWith(`--`)&&this._showSuggestionAfterError){let n=[],r=this;do{let e=r.createHelp().visibleOptions(r).filter(e=>e.long).map(e=>e.long);n=n.concat(e),r=r.parent}while(r&&!r._enablePositionalOptions);t=p(e,n)}let n=`error: unknown option '${e}'${t}`;this.error(n,{code:`commander.unknownOption`})}_excessArguments(e){if(this._allowExcessArguments)return;let t=this.registeredArguments.length,n=t===1?``:`s`,r=`error: too many arguments${this.parent?` for '${this.name()}'`:``}. Expected ${t} argument${n} but got ${e.length}.`;this.error(r,{code:`commander.excessArguments`})}unknownCommand(){let e=this.args[0],t=``;if(this._showSuggestionAfterError){let n=[];this.createHelp().visibleCommands(this).forEach(e=>{n.push(e.name()),e.alias()&&n.push(e.alias())}),t=p(e,n)}let n=`error: unknown command '${e}'${t}`;this.error(n,{code:`commander.unknownCommand`})}version(e,t,n){if(e===void 0)return this._version;this._version=e,t||=`-V, --version`,n||=`output the version number`;let r=this.createOption(t,n);return this._versionOptionName=r.attributeName(),this._registerOption(r),this.on(`option:`+r.name(),()=>{this._outputConfiguration.writeOut(`${e}\n`),this._exit(0,`commander.version`,e)}),this}description(e,t){return e===void 0&&t===void 0?this._description:(this._description=e,t&&(this._argsDescription=t),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let t=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(t=this.commands[this.commands.length-1]),e===t._name)throw Error(`Command alias can't be the same as its name`);let n=this.parent?._findCommand(e);if(n){let t=[n.name()].concat(n.aliases()).join(`|`);throw Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${t}'`)}return t._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(e=>this.alias(e)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let e=this.registeredArguments.map(e=>s(e));return[].concat(this.options.length||this._helpOption!==null?`[options]`:[],this.commands.length?`[command]`:[],this.registeredArguments.length?e:[]).join(` `)}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}helpGroup(e){return e===void 0?this._helpGroupHeading??``:(this._helpGroupHeading=e,this)}commandsGroup(e){return e===void 0?this._defaultCommandGroup??``:(this._defaultCommandGroup=e,this)}optionsGroup(e){return e===void 0?this._defaultOptionGroup??``:(this._defaultOptionGroup=e,this)}_initOptionGroup(e){this._defaultOptionGroup&&!e.helpGroupHeading&&e.helpGroup(this._defaultOptionGroup)}_initCommandGroup(e){this._defaultCommandGroup&&!e.helpGroup()&&e.helpGroup(this._defaultCommandGroup)}nameFromFilename(e){return this._name=r.basename(e,r.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let t=this.createHelp(),n=this._getOutputContext(e);t.prepareContext({error:n.error,helpWidth:n.helpWidth,outputHasColors:n.hasColors});let r=t.formatHelp(this,t);return n.hasColors?r:this._outputConfiguration.stripColor(r)}_getOutputContext(e){e||={};let t=!!e.error,n,r,i;return t?(n=e=>this._outputConfiguration.writeErr(e),r=this._outputConfiguration.getErrHasColors(),i=this._outputConfiguration.getErrHelpWidth()):(n=e=>this._outputConfiguration.writeOut(e),r=this._outputConfiguration.getOutHasColors(),i=this._outputConfiguration.getOutHelpWidth()),{error:t,write:e=>(r||(e=this._outputConfiguration.stripColor(e)),n(e)),hasColors:r,helpWidth:i}}outputHelp(e){let t;typeof e==`function`&&(t=e,e=void 0);let n=this._getOutputContext(e),r={error:n.error,write:n.write,command:this};this._getCommandAndAncestors().reverse().forEach(e=>e.emit(`beforeAllHelp`,r)),this.emit(`beforeHelp`,r);let i=this.helpInformation({error:n.error});if(t&&(i=t(i),typeof i!=`string`&&!Buffer.isBuffer(i)))throw Error(`outputHelp callback must return a string or a Buffer`);n.write(i),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit(`afterHelp`,r),this._getCommandAndAncestors().forEach(e=>e.emit(`afterAllHelp`,r))}helpOption(e,t){return typeof e==`boolean`?(e?(this._helpOption===null&&(this._helpOption=void 0),this._defaultOptionGroup&&this._initOptionGroup(this._getHelpOption())):this._helpOption=null,this):(this._helpOption=this.createOption(e??`-h, --help`,t??`display help for command`),(e||t)&&this._initOptionGroup(this._helpOption),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(e){return this._helpOption=e,this._initOptionGroup(e),this}help(e){this.outputHelp(e);let t=Number(a.exitCode??0);t===0&&e&&typeof e!=`function`&&e.error&&(t=1),this._exit(t,`commander.help`,`(outputHelp)`)}addHelpText(e,t){let n=[`beforeAll`,`before`,`after`,`afterAll`];if(!n.includes(e))throw Error(`Unexpected value for position to addHelpText.
|
|
20
|
-
Expecting one of '${n.join(`', '`)}'`);let r=`${e}Help`;return this.on(r,e=>{let n;n=typeof t==`function`?t({error:e.error,command:e.command}):t,n&&e.write(`${n}\n`)}),this}_outputHelpIfRequested(e){let t=this._getHelpOption();t&&e.find(e=>t.is(e))&&(this.outputHelp(),this._exit(0,`commander.helpDisplayed`,`(outputHelp)`))}};function h(e){return e.map(e=>{if(!e.startsWith(`--inspect`))return e;let t,n=`127.0.0.1`,r=`9229`,i;return(i=e.match(/^(--inspect(-brk)?)$/))===null?(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))===null?(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(t=i[1],n=i[3],r=i[4]):(t=i[1],/^\d+$/.test(i[3])?r=i[3]:n=i[3]):t=i[1],t&&r!==`0`?`${t}=${n}:${parseInt(r)+1}`:e})}function g(){if(a.env.NO_COLOR||a.env.FORCE_COLOR===`0`||a.env.FORCE_COLOR===`false`)return!1;if(a.env.FORCE_COLOR||a.env.CLICOLOR_FORCE!==void 0)return!0}e.Command=m,e.useColor=g}));const{program:M,createCommand:ee,createArgument:N,createOption:te,CommanderError:P,InvalidArgumentError:F,InvalidOptionArgumentError:I,Command:L,Argument:ne,Option:R,Help:z}=u(s((e=>{let{Argument:t}=D(),{Command:n}=j(),{CommanderError:r,InvalidArgumentError:i}=E(),{Help:a}=O(),{Option:o}=k();e.program=new n,e.createCommand=e=>new n(e),e.createOption=(e,t)=>new o(e,t),e.createArgument=(e,n)=>new t(e,n),e.Command=n,e.Option=o,e.Argument=t,e.Help=a,e.CommanderError=r,e.InvalidArgumentError=i,e.InvalidOptionArgumentError=i}))(),1).default;var re=`2.21.7`,ie=s((e=>{let t=e=>e!=null,n=e=>typeof e==`object`&&!!e,r=e=>Array.isArray(e),i=e=>e instanceof Map,a=e=>e instanceof Set,o=e=>e instanceof Date,s=e=>typeof e==`number`,c=e=>typeof e==`string`,l=e=>typeof e==`boolean`,u=e=>e instanceof Error,d=e=>t(e)?c(e)||r(e)?e.length===0:i(e)||a(e)?e.size===0:o(e)?!1:n(e)?Object.keys(e).length===0:!1:!0,f=e=>u(e)?e.message:`error is not Instance of Error`,p=(e,t)=>{let n=new Set(e);for(let e of n)t.includes(e)||n.delete(e);return[...n]},m=async(e,t)=>{let n=await Promise.all(e.map(e=>t(e)));return e.filter((e,t)=>n[t])},h=(e,t)=>{let n=[];for(let r of e)n.some(e=>t(r,e))||n.push(r);return n},g=e=>[...new Set(e)],_=async e=>Promise.all(e.map(e=>new Promise((t,n)=>e().then(e=>e?t(e):n(e)).catch(e=>n(e))))).then(()=>!0).catch(e=>{if(!l(e))throw e;return e}),v=e=>e.trim().replaceAll(/([\da-z])([A-Z])/g,`$1-$2`).replaceAll(/([A-Z])([A-Z][\da-z])/g,`$1-$2`).replaceAll(/[\s_]+/g,`-`).toLowerCase(),y=e=>e.replaceAll(/[\s-]+/g,` `).split(` `).map(e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(``),b=e=>{let t=0;for(let n=0;n<e.length;n++){let r=e.codePointAt(n)??0;t=Math.trunc(t*31+r)}return t>>>0},x=(...e)=>{let n={};for(let r of e)for(let e in r)t(r[e])&&(n[e]=r[e]);return n},S=(e,t)=>r(e)?e.map(e=>S(e,t)):n(e)?Object.fromEntries(Object.entries(e).filter(([e])=>!t.includes(e)).map(([e,n])=>[e,S(n,t)])):e,C=(e,t)=>{let n;return(...r)=>{clearTimeout(n),n=setTimeout(()=>e(...r),t)}},w=(e,t)=>{let n=!1;return(...r)=>{n||(e(...r),n=!0,setTimeout(()=>{n=!1},t))}};var T=class{listeners=[];addListener(e){this.listeners.push(e)}notifyAll(e){for(let t of this.listeners)t(e)}clear(){this.listeners.length=0}},E=class{set=new Set;constructor(e=[]){for(let t of e)this.safeAdd(t)}safeAdd(e){return t(e)?(this.set.add(e),!0):!1}has(e){return t(e)?this.set.has(e):!1}delete(e){return t(e)?this.set.delete(e):!1}clear(){this.set.clear()}get size(){return this.set.size}values(){return this.set.values()}toSet(){return structuredClone(this.set)}[Symbol.iterator](){return this.set[Symbol.iterator]()}concatSet(e){for(let t of e)this.safeAdd(t)}};e.Observer=T,e.SafeSet=E,e.arePromiseFnsTruthy=_,e.debounce=C,e.fastHash=b,e.filterAsync=m,e.getErrorMessage=f,e.intersection=p,e.isArray=r,e.isBoolean=l,e.isDate=o,e.isDefined=t,e.isEmpty=d,e.isError=u,e.isMap=i,e.isNumber=s,e.isObject=n,e.isSet=a,e.isString=c,e.merge=x,e.removeNestedField=S,e.throttle=w,e.toCamelCase=y,e.toKebabCase=v,e.uniq=g,e.uniqWith=h})),B=ie();function V(e,t,n,{key:r=``,prefix:i=`EARLY`,parser:a,def:o,isRequired:s=!1,envName:c}={}){let l=new R(t,n);a&&l.argParser(a),s&&l.makeOptionMandatory(!0);let u=c??(()=>{let n=[];for(let t=e;t&&(0,B.isDefined)(t.name());t=t.parent)t.parent&&n.unshift(t.name());return[i,...n,r||t.split(/[ ,|]/)[1].replace(/^--?/,``)].join(`_`).replaceAll(/[- ]/g,`_`).toUpperCase()})();return l.env(u),(0,B.isDefined)(o)&&l.default(o),e.addOption(l),l}function ae(e){return(typeof e==`object`&&!!e||typeof e==`function`)&&typeof e.then==`function`}function oe(e){switch(typeof e){case`string`:case`symbol`:return e.toString();case`function`:return e.name;default:throw Error(`Unexpected ${typeof e} service id type`)}}const se=Symbol.for(`@inversifyjs/common/islazyServiceIdentifier`);var ce=class{[se];#e;constructor(e){this.#e=e,this[se]=!0}static is(e){return typeof e==`object`&&!!e&&!0===e[se]}unwrap(){return this.#e()}};function le(e,t,n){return Reflect.getOwnMetadata(t,e,n)}function ue(e,t,n,r){Reflect.defineMetadata(t,n,e,r)}function de(e,t,n,r,i){let a=r(le(e,t,i)??n());Reflect.defineMetadata(t,a,e,i)}function fe(e){return Object.getPrototypeOf(e.prototype)?.constructor}const pe=`@inversifyjs/container/bindingId`;function me(){let e=le(Object,pe)??0;return e===2**53-1?ue(Object,pe,-(2**53-1)):de(Object,pe,()=>e,e=>e+1),e}const he={Request:`Request`,Singleton:`Singleton`,Transient:`Transient`},ge={ConstantValue:`ConstantValue`,DynamicValue:`DynamicValue`,Factory:`Factory`,Instance:`Instance`,Provider:`Provider`,ResolvedValue:`ResolvedValue`,ServiceRedirection:`ServiceRedirection`};function*_e(...e){for(let t of e)yield*t}var ve=class e{#e;#t;#n;constructor(e){this.#e=new Map,this.#t={};for(let t of Reflect.ownKeys(e))this.#t[t]=new Map;this.#n=e}add(e,t){this.#a(e).push(t);for(let n of Reflect.ownKeys(t))this.#o(n,t[n]).push(e)}clone(){let e=this.#r(),t=this.#i(),n=Reflect.ownKeys(this.#n),r=this._buildNewInstance(this.#n);this.#u(this.#e,r.#e,e,t);for(let t of n)this.#l(this.#t[t],r.#t[t],e);return r}get(e,t){return this.#t[e].get(t)}getAllKeys(e){return this.#t[e].keys()}removeByRelation(e,t){let n=this.get(e,t);if(n===void 0)return;let r=new Set(n);for(let n of r){let r=this.#e.get(n);if(r===void 0)throw Error(`Expecting model relation, none found`);for(let i of r)i[e]===t&&this.#d(n,i);this.#e.delete(n)}}_buildNewInstance(t){return new e(t)}_cloneModel(e){return e}_cloneRelation(e){return e}#r(){let e=new Map;for(let t of this.#e.keys()){let n=this._cloneModel(t);e.set(t,n)}return e}#i(){let e=new Map;for(let t of this.#e.values())for(let n of t){let t=this._cloneRelation(n);e.set(n,t)}return e}#a(e){let t=this.#e.get(e);return t===void 0&&(t=[],this.#e.set(e,t)),t}#o(e,t){let n=this.#t[e].get(t);return n===void 0&&(n=[],this.#t[e].set(t,n)),n}#s(e,t){let n=t.get(e);if(n===void 0)throw Error(`Expecting model to be cloned, none found`);return n}#c(e,t){let n=t.get(e);if(n===void 0)throw Error(`Expecting relation to be cloned, none found`);return n}#l(e,t,n){for(let[r,i]of e){let e=[];for(let t of i)e.push(this.#s(t,n));t.set(r,e)}}#u(e,t,n,r){for(let[i,a]of e){let e=[];for(let t of a)e.push(this.#c(t,r));t.set(this.#s(i,n),e)}}#d(e,t){for(let n of Reflect.ownKeys(t))this.#f(e,n,t[n])}#f(e,t,n){let r=this.#t[t].get(n);if(r!==void 0){let i=r.indexOf(e);i!==-1&&r.splice(i,1),r.length===0&&this.#t[t].delete(n)}}},ye;(function(e){e.moduleId=`moduleId`,e.serviceId=`serviceId`})(ye||={});var be=class e{#e;#t;constructor(e,t){this.#e=t??new ve({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#t=e}static build(t){return new e(t)}add(e,t){this.#e.add(e,t)}clone(){return new e(this.#t,this.#e.clone())}get(e){let t=[],n=this.#e.get(ye.serviceId,e);n!==void 0&&t.push(n);let r=this.#t()?.get(e);if(r!==void 0&&t.push(r),t.length!==0)return _e(...t)}removeAllByModuleId(e){this.#e.removeByRelation(ye.moduleId,e)}removeAllByServiceId(e){this.#e.removeByRelation(ye.serviceId,e)}};const xe=`@inversifyjs/core/classMetadataReflectKey`;function Se(){return{constructorArguments:[],lifecycle:{postConstructMethodNames:new Set,preDestroyMethodNames:new Set},properties:new Map,scope:void 0}}const Ce=`@inversifyjs/core/pendingClassMetadataCountReflectKey`,we=Symbol.for(`@inversifyjs/core/InversifyCoreError`);var Te=class e extends Error{[we];kind;constructor(e,t,n){super(t,n),this[we]=!0,this.kind=e}static is(e){return typeof e==`object`&&!!e&&!0===e[we]}static isErrorOfKind(t,n){return e.is(t)&&t.kind===n}},Ee,De,Oe,ke,Ae;function je(e){let t=le(e,xe)??Se();if(!function(e){let t=le(e,Ce);return t!==void 0&&t!==0}(e))return function(e,t){let n=[];if(t.length<e.length)throw new Te(Ee.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}". "${e.name}" constructor requires at least ${e.length.toString()} arguments, found ${t.length.toString()} instead.\nAre you using @inject, @multiInject or @unmanaged decorators in every non optional constructor argument?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`);for(let e=0;e<t.length;++e)t[e]===void 0&&n.push(e);if(n.length>0)throw new Te(Ee.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}" at constructor indexes "${n.join(`", "`)}".\n\nAre you using @inject, @multiInject or @unmanaged decorators at those indexes?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}(e,t.constructorArguments),t;(function(e,t){let n=[];for(let r=0;r<t.constructorArguments.length;++r){let i=t.constructorArguments[r];i!==void 0&&i.kind!==De.unknown||n.push(` - Missing or incomplete metadata for type "${e.name}" at constructor argument with index ${r.toString()}.\nEvery constructor parameter must be decorated either with @inject, @multiInject or @unmanaged decorator.`)}for(let[r,i]of t.properties)i.kind===De.unknown&&n.push(` - Missing or incomplete metadata for type "${e.name}" at property "${r.toString()}".\nThis property must be decorated either with @inject or @multiInject decorator.`);throw n.length===0?new Te(Ee.unknown,`Unexpected class metadata for type "${e.name}" with uncompletion traces.\nThis might be caused by one of the following reasons:\n\n1. A third party library is targeting inversify reflection metadata.\n2. A bug is causing the issue. Consider submiting an issue to fix it.`):new Te(Ee.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${n.join(`
|
|
20
|
+
Expecting one of '${n.join(`', '`)}'`);let r=`${e}Help`;return this.on(r,e=>{let n;n=typeof t==`function`?t({error:e.error,command:e.command}):t,n&&e.write(`${n}\n`)}),this}_outputHelpIfRequested(e){let t=this._getHelpOption();t&&e.find(e=>t.is(e))&&(this.outputHelp(),this._exit(0,`commander.helpDisplayed`,`(outputHelp)`))}};function h(e){return e.map(e=>{if(!e.startsWith(`--inspect`))return e;let t,n=`127.0.0.1`,r=`9229`,i;return(i=e.match(/^(--inspect(-brk)?)$/))===null?(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))===null?(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(t=i[1],n=i[3],r=i[4]):(t=i[1],/^\d+$/.test(i[3])?r=i[3]:n=i[3]):t=i[1],t&&r!==`0`?`${t}=${n}:${parseInt(r)+1}`:e})}function g(){if(a.env.NO_COLOR||a.env.FORCE_COLOR===`0`||a.env.FORCE_COLOR===`false`)return!1;if(a.env.FORCE_COLOR||a.env.CLICOLOR_FORCE!==void 0)return!0}e.Command=m,e.useColor=g}));const{program:M,createCommand:ee,createArgument:N,createOption:te,CommanderError:P,InvalidArgumentError:F,InvalidOptionArgumentError:I,Command:L,Argument:ne,Option:R,Help:z}=u(s((e=>{let{Argument:t}=D(),{Command:n}=j(),{CommanderError:r,InvalidArgumentError:i}=E(),{Help:a}=O(),{Option:o}=k();e.program=new n,e.createCommand=e=>new n(e),e.createOption=(e,t)=>new o(e,t),e.createArgument=(e,n)=>new t(e,n),e.Command=n,e.Option=o,e.Argument=t,e.Help=a,e.CommanderError=r,e.InvalidArgumentError=i,e.InvalidOptionArgumentError=i}))(),1).default;var re=`2.21.9`,ie=s((e=>{let t=e=>e!=null,n=e=>typeof e==`object`&&!!e,r=e=>Array.isArray(e),i=e=>e instanceof Map,a=e=>e instanceof Set,o=e=>e instanceof Date,s=e=>typeof e==`number`,c=e=>typeof e==`string`,l=e=>typeof e==`boolean`,u=e=>e instanceof Error,d=e=>t(e)?c(e)||r(e)?e.length===0:i(e)||a(e)?e.size===0:o(e)?!1:n(e)?Object.keys(e).length===0:!1:!0,f=e=>u(e)?e.message:`error is not Instance of Error`,p=(e,t)=>{let n=new Set(e);for(let e of n)t.includes(e)||n.delete(e);return[...n]},m=async(e,t)=>{let n=await Promise.all(e.map(e=>t(e)));return e.filter((e,t)=>n[t])},h=(e,t)=>{let n=[];for(let r of e)n.some(e=>t(r,e))||n.push(r);return n},g=e=>[...new Set(e)],_=async e=>Promise.all(e.map(e=>new Promise((t,n)=>e().then(e=>e?t(e):n(e)).catch(e=>n(e))))).then(()=>!0).catch(e=>{if(!l(e))throw e;return e}),v=e=>e.trim().replaceAll(/([\da-z])([A-Z])/g,`$1-$2`).replaceAll(/([A-Z])([A-Z][\da-z])/g,`$1-$2`).replaceAll(/[\s_]+/g,`-`).toLowerCase(),y=e=>e.replaceAll(/[\s-]+/g,` `).split(` `).map(e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(``),b=e=>{let t=0;for(let n=0;n<e.length;n++){let r=e.codePointAt(n)??0;t=Math.trunc(t*31+r)}return t>>>0},x=(...e)=>{let n={};for(let r of e)for(let e in r)t(r[e])&&(n[e]=r[e]);return n},S=(e,t)=>r(e)?e.map(e=>S(e,t)):n(e)?Object.fromEntries(Object.entries(e).filter(([e])=>!t.includes(e)).map(([e,n])=>[e,S(n,t)])):e,C=(e,t)=>{let n;return(...r)=>{clearTimeout(n),n=setTimeout(()=>e(...r),t)}},w=(e,t)=>{let n=!1;return(...r)=>{n||(e(...r),n=!0,setTimeout(()=>{n=!1},t))}};var T=class{listeners=[];addListener(e){this.listeners.push(e)}notifyAll(e){for(let t of this.listeners)t(e)}clear(){this.listeners.length=0}},E=class{set=new Set;constructor(e=[]){for(let t of e)this.safeAdd(t)}safeAdd(e){return t(e)?(this.set.add(e),!0):!1}has(e){return t(e)?this.set.has(e):!1}delete(e){return t(e)?this.set.delete(e):!1}clear(){this.set.clear()}get size(){return this.set.size}values(){return this.set.values()}toSet(){return structuredClone(this.set)}[Symbol.iterator](){return this.set[Symbol.iterator]()}concatSet(e){for(let t of e)this.safeAdd(t)}};e.Observer=T,e.SafeSet=E,e.arePromiseFnsTruthy=_,e.debounce=C,e.fastHash=b,e.filterAsync=m,e.getErrorMessage=f,e.intersection=p,e.isArray=r,e.isBoolean=l,e.isDate=o,e.isDefined=t,e.isEmpty=d,e.isError=u,e.isMap=i,e.isNumber=s,e.isObject=n,e.isSet=a,e.isString=c,e.merge=x,e.removeNestedField=S,e.throttle=w,e.toCamelCase=y,e.toKebabCase=v,e.uniq=g,e.uniqWith=h})),B=ie();function V(e,t,n,{key:r=``,prefix:i=`EARLY`,parser:a,def:o,isRequired:s=!1,envName:c}={}){let l=new R(t,n);a&&l.argParser(a),s&&l.makeOptionMandatory(!0);let u=c??(()=>{let n=[];for(let t=e;t&&(0,B.isDefined)(t.name());t=t.parent)t.parent&&n.unshift(t.name());return[i,...n,r||t.split(/[ ,|]/)[1].replace(/^--?/,``)].join(`_`).replaceAll(/[- ]/g,`_`).toUpperCase()})();return l.env(u),(0,B.isDefined)(o)&&l.default(o),e.addOption(l),l}function ae(e){return(typeof e==`object`&&!!e||typeof e==`function`)&&typeof e.then==`function`}function oe(e){switch(typeof e){case`string`:case`symbol`:return e.toString();case`function`:return e.name;default:throw Error(`Unexpected ${typeof e} service id type`)}}const se=Symbol.for(`@inversifyjs/common/islazyServiceIdentifier`);var ce=class{[se];#e;constructor(e){this.#e=e,this[se]=!0}static is(e){return typeof e==`object`&&!!e&&!0===e[se]}unwrap(){return this.#e()}};function le(e,t,n){return Reflect.getOwnMetadata(t,e,n)}function ue(e,t,n,r){Reflect.defineMetadata(t,n,e,r)}function de(e,t,n,r,i){let a=r(le(e,t,i)??n());Reflect.defineMetadata(t,a,e,i)}function fe(e){return Object.getPrototypeOf(e.prototype)?.constructor}const pe=`@inversifyjs/container/bindingId`;function me(){let e=le(Object,pe)??0;return e===2**53-1?ue(Object,pe,-(2**53-1)):de(Object,pe,()=>e,e=>e+1),e}const he={Request:`Request`,Singleton:`Singleton`,Transient:`Transient`},ge={ConstantValue:`ConstantValue`,DynamicValue:`DynamicValue`,Factory:`Factory`,Instance:`Instance`,Provider:`Provider`,ResolvedValue:`ResolvedValue`,ServiceRedirection:`ServiceRedirection`};function*_e(...e){for(let t of e)yield*t}var ve=class e{#e;#t;#n;constructor(e){this.#e=new Map,this.#t={};for(let t of Reflect.ownKeys(e))this.#t[t]=new Map;this.#n=e}add(e,t){this.#a(e).push(t);for(let n of Reflect.ownKeys(t))this.#o(n,t[n]).push(e)}clone(){let e=this.#r(),t=this.#i(),n=Reflect.ownKeys(this.#n),r=this._buildNewInstance(this.#n);this.#u(this.#e,r.#e,e,t);for(let t of n)this.#l(this.#t[t],r.#t[t],e);return r}get(e,t){return this.#t[e].get(t)}getAllKeys(e){return this.#t[e].keys()}removeByRelation(e,t){let n=this.get(e,t);if(n===void 0)return;let r=new Set(n);for(let n of r){let r=this.#e.get(n);if(r===void 0)throw Error(`Expecting model relation, none found`);for(let i of r)i[e]===t&&this.#d(n,i);this.#e.delete(n)}}_buildNewInstance(t){return new e(t)}_cloneModel(e){return e}_cloneRelation(e){return e}#r(){let e=new Map;for(let t of this.#e.keys()){let n=this._cloneModel(t);e.set(t,n)}return e}#i(){let e=new Map;for(let t of this.#e.values())for(let n of t){let t=this._cloneRelation(n);e.set(n,t)}return e}#a(e){let t=this.#e.get(e);return t===void 0&&(t=[],this.#e.set(e,t)),t}#o(e,t){let n=this.#t[e].get(t);return n===void 0&&(n=[],this.#t[e].set(t,n)),n}#s(e,t){let n=t.get(e);if(n===void 0)throw Error(`Expecting model to be cloned, none found`);return n}#c(e,t){let n=t.get(e);if(n===void 0)throw Error(`Expecting relation to be cloned, none found`);return n}#l(e,t,n){for(let[r,i]of e){let e=[];for(let t of i)e.push(this.#s(t,n));t.set(r,e)}}#u(e,t,n,r){for(let[i,a]of e){let e=[];for(let t of a)e.push(this.#c(t,r));t.set(this.#s(i,n),e)}}#d(e,t){for(let n of Reflect.ownKeys(t))this.#f(e,n,t[n])}#f(e,t,n){let r=this.#t[t].get(n);if(r!==void 0){let i=r.indexOf(e);i!==-1&&r.splice(i,1),r.length===0&&this.#t[t].delete(n)}}},ye;(function(e){e.moduleId=`moduleId`,e.serviceId=`serviceId`})(ye||={});var be=class e{#e;#t;constructor(e,t){this.#e=t??new ve({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#t=e}static build(t){return new e(t)}add(e,t){this.#e.add(e,t)}clone(){return new e(this.#t,this.#e.clone())}get(e){let t=[],n=this.#e.get(ye.serviceId,e);n!==void 0&&t.push(n);let r=this.#t()?.get(e);if(r!==void 0&&t.push(r),t.length!==0)return _e(...t)}removeAllByModuleId(e){this.#e.removeByRelation(ye.moduleId,e)}removeAllByServiceId(e){this.#e.removeByRelation(ye.serviceId,e)}};const xe=`@inversifyjs/core/classMetadataReflectKey`;function Se(){return{constructorArguments:[],lifecycle:{postConstructMethodNames:new Set,preDestroyMethodNames:new Set},properties:new Map,scope:void 0}}const Ce=`@inversifyjs/core/pendingClassMetadataCountReflectKey`,we=Symbol.for(`@inversifyjs/core/InversifyCoreError`);var Te=class e extends Error{[we];kind;constructor(e,t,n){super(t,n),this[we]=!0,this.kind=e}static is(e){return typeof e==`object`&&!!e&&!0===e[we]}static isErrorOfKind(t,n){return e.is(t)&&t.kind===n}},Ee,De,Oe,ke,Ae;function je(e){let t=le(e,xe)??Se();if(!function(e){let t=le(e,Ce);return t!==void 0&&t!==0}(e))return function(e,t){let n=[];if(t.length<e.length)throw new Te(Ee.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}". "${e.name}" constructor requires at least ${e.length.toString()} arguments, found ${t.length.toString()} instead.\nAre you using @inject, @multiInject or @unmanaged decorators in every non optional constructor argument?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`);for(let e=0;e<t.length;++e)t[e]===void 0&&n.push(e);if(n.length>0)throw new Te(Ee.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}" at constructor indexes "${n.join(`", "`)}".\n\nAre you using @inject, @multiInject or @unmanaged decorators at those indexes?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}(e,t.constructorArguments),t;(function(e,t){let n=[];for(let r=0;r<t.constructorArguments.length;++r){let i=t.constructorArguments[r];i!==void 0&&i.kind!==De.unknown||n.push(` - Missing or incomplete metadata for type "${e.name}" at constructor argument with index ${r.toString()}.\nEvery constructor parameter must be decorated either with @inject, @multiInject or @unmanaged decorator.`)}for(let[r,i]of t.properties)i.kind===De.unknown&&n.push(` - Missing or incomplete metadata for type "${e.name}" at property "${r.toString()}".\nThis property must be decorated either with @inject or @multiInject decorator.`);throw n.length===0?new Te(Ee.unknown,`Unexpected class metadata for type "${e.name}" with uncompletion traces.\nThis might be caused by one of the following reasons:\n\n1. A third party library is targeting inversify reflection metadata.\n2. A bug is causing the issue. Consider submiting an issue to fix it.`):new Te(Ee.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${n.join(`
|
|
21
21
|
|
|
22
22
|
`)}`)})(e,t)}function Me(e,t){let n=je(t).scope??e.scope;return{cache:{isRight:!1,value:void 0},id:me(),implementationType:t,isSatisfiedBy:()=>!0,moduleId:void 0,onActivation:void 0,onDeactivation:void 0,scope:n,serviceIdentifier:t,type:ge.Instance}}function Ne(e){return e.isRight?{isRight:!0,value:e.value}:e}function Pe(e){switch(e.type){case ge.ConstantValue:case ge.DynamicValue:return function(e){return{cache:Ne(e.cache),id:e.id,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type,value:e.value}}(e);case ge.Factory:return function(e){return{cache:Ne(e.cache),factory:e.factory,id:e.id,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type}}(e);case ge.Instance:return function(e){return{cache:Ne(e.cache),id:e.id,implementationType:e.implementationType,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type}}(e);case ge.Provider:return function(e){return{cache:Ne(e.cache),id:e.id,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,provider:e.provider,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type}}(e);case ge.ResolvedValue:return function(e){return{cache:Ne(e.cache),factory:e.factory,id:e.id,isSatisfiedBy:e.isSatisfiedBy,metadata:e.metadata,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type}}(e);case ge.ServiceRedirection:return function(e){return{id:e.id,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,serviceIdentifier:e.serviceIdentifier,targetServiceIdentifier:e.targetServiceIdentifier,type:e.type}}(e)}}(function(e){e[e.injectionDecoratorConflict=0]=`injectionDecoratorConflict`,e[e.missingInjectionDecorator=1]=`missingInjectionDecorator`,e[e.planning=2]=`planning`,e[e.resolution=3]=`resolution`,e[e.unknown=4]=`unknown`})(Ee||={}),function(e){e[e.unknown=32]=`unknown`}(De||={}),function(e){e.id=`id`,e.moduleId=`moduleId`,e.serviceId=`serviceId`}(Oe||={});var Fe=class e extends ve{_buildNewInstance(t){return new e(t)}_cloneModel(e){return Pe(e)}},Ie=class e{#e;#t;#n;constructor(e,t,n){this.#t=n??new Fe({id:{isOptional:!1},moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#n=e,this.#e=t}static build(t,n){return new e(t,n)}clone(){return new e(this.#n,this.#e,this.#t.clone())}get(e){let t=this.getNonParentBindings(e)??this.#n()?.get(e);if(t!==void 0)return t;let n=this.#r(e);return n===void 0?n:[n]}*getChained(e){let t=this.getNonParentBindings(e);t!==void 0&&(yield*t);let n=this.#n();if(n===void 0){if(t===void 0){let t=this.#r(e);t!==void 0&&(yield t)}}else yield*n.getChained(e)}getBoundServices(){let e=new Set(this.#t.getAllKeys(Oe.serviceId)),t=this.#n();if(t!==void 0)for(let n of t.getBoundServices())e.add(n);return e}getById(e){return this.#t.get(Oe.id,e)??this.#n()?.getById(e)}getByModuleId(e){return this.#t.get(Oe.moduleId,e)??this.#n()?.getByModuleId(e)}getNonParentBindings(e){return this.#t.get(Oe.serviceId,e)}getNonParentBoundServices(){return this.#t.getAllKeys(Oe.serviceId)}removeById(e){this.#t.removeByRelation(Oe.id,e)}removeAllByModuleId(e){this.#t.removeByRelation(Oe.moduleId,e)}removeAllByServiceId(e){this.#t.removeByRelation(Oe.serviceId,e)}set(e){let t={[Oe.id]:e.id,[Oe.serviceId]:e.serviceIdentifier};e.moduleId!==void 0&&(t[Oe.moduleId]=e.moduleId),this.#t.add(e,t)}#r(e){if(this.#e===void 0||typeof e!=`function`)return;let t=Me(this.#e,e);return this.set(t),t}};(function(e){e.moduleId=`moduleId`,e.serviceId=`serviceId`})(ke||={});var Le=class e{#e;#t;constructor(e,t){this.#e=t??new ve({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#t=e}static build(t){return new e(t)}add(e,t){this.#e.add(e,t)}clone(){return new e(this.#t,this.#e.clone())}get(e){let t=[],n=this.#e.get(ke.serviceId,e);n!==void 0&&t.push(n);let r=this.#t()?.get(e);if(r!==void 0&&t.push(r),t.length!==0)return _e(...t)}removeAllByModuleId(e){this.#e.removeByRelation(ke.moduleId,e)}removeAllByServiceId(e){this.#e.removeByRelation(ke.serviceId,e)}};function Re(){return 0}function ze(e){return t=>{t!==void 0&&t.kind===De.unknown&&de(e,Ce,Re,e=>e-1)}}function Be(e,t){return(...n)=>r=>{if(r===void 0)return e(...n);if(r.kind===Ae.unmanaged)throw new Te(Ee.injectionDecoratorConflict,`Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found`);return t(r,...n)}}function Ve(e){if(e.kind!==De.unknown&&!0!==e.isFromTypescriptParamType)throw new Te(Ee.injectionDecoratorConflict,`Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found`)}(function(e){e[e.multipleInjection=0]=`multipleInjection`,e[e.singleInjection=1]=`singleInjection`,e[e.unmanaged=2]=`unmanaged`})(Ae||={});const H=Be(function(e,t,n){return e===Ae.multipleInjection?{chained:n?.chained??!1,kind:e,name:void 0,optional:!1,tags:new Map,value:t}:{kind:e,name:void 0,optional:!1,tags:new Map,value:t}},function(e,t,n,r){return Ve(e),t===Ae.multipleInjection?{...e,chained:r?.chained??!1,kind:t,value:n}:{...e,kind:t,value:n}});function He(e,t){return n=>{let r=n.properties.get(t);return n.properties.set(t,e(r)),n}}var Ue;function We(e,t,n,r){if(Te.isErrorOfKind(r,Ee.injectionDecoratorConflict)){let i=function(e,t,n){if(n===void 0){if(t===void 0)throw new Te(Ee.unknown,`Unexpected undefined property and index values`);return{kind:Ue.property,property:t,targetClass:e.constructor}}return typeof n==`number`?{index:n,kind:Ue.parameter,targetClass:e}:{kind:Ue.method,method:t,targetClass:e}}(e,t,n);throw new Te(Ee.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${r.message}\n\nDetails\n\n${function(e){switch(e.kind){case Ue.method:return`[class: "${e.targetClass.name}", method: "${e.method.toString()}"]`;case Ue.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case Ue.property:return`[class: "${e.targetClass.name}", property: "${e.property.toString()}"]`}}(i)}`,{cause:r})}throw r}function Ge(e,t){return(n,r,i)=>{try{i===void 0?function(e,t){let n=Ke(e,t);return(e,t)=>{de(e.constructor,xe,Se,He(n(e),t))}}(e,t)(n,r):typeof i==`number`?function(e,t){let n=Ke(e,t);return(e,t,r)=>{if(!function(e,t){return typeof e==`function`&&t===void 0}(e,t))throw new Te(Ee.injectionDecoratorConflict,`Found an @inject decorator in a non constructor parameter.\nFound @inject decorator at method "${t?.toString()??``}" at class "${e.constructor.name}"`);de(e,xe,Se,function(e,t){return n=>{let r=n.constructorArguments[t];return n.constructorArguments[t]=e(r),n}}(n(e),r))}}(e,t)(n,r,i):function(e,t){let n=Ke(e,t);return(e,t,r)=>{if(!function(e){return e.set!==void 0}(r))throw new Te(Ee.injectionDecoratorConflict,`Found an @inject decorator in a non setter property method.\nFound @inject decorator at method "${t.toString()}" at class "${e.constructor.name}"`);de(e.constructor,xe,Se,He(n(e),t))}}(e,t)(n,r,i)}catch(e){We(n,r,i,e)}}}function Ke(e,t){return n=>{let r=t(n);return t=>(r(t),e(t))}}function qe(e){return Ge(H(Ae.singleInjection,e),ze)}(function(e){e[e.method=0]=`method`,e[e.parameter=1]=`parameter`,e[e.property=2]=`property`})(Ue||={});const Je=`@inversifyjs/core/classIsInjectableFlagReflectKey`,Ye=[Array,BigInt,Boolean,Function,Number,Object,String];function Xe(e){let t=le(e,`design:paramtypes`);t!==void 0&&de(e,xe,Se,function(e){return t=>(e.forEach((e,n)=>{var r;t.constructorArguments[n]!==void 0||(r=e,Ye.includes(r))||(t.constructorArguments[n]=function(e){return{isFromTypescriptParamType:!0,kind:Ae.singleInjection,name:void 0,optional:!1,tags:new Map,value:e}}(e))}),t)}(t))}function Ze(e){return t=>{(function(e){if(le(e,Je)!==void 0)throw new Te(Ee.injectionDecoratorConflict,`Cannot apply @injectable decorator multiple times at class "${e.name}"`);ue(e,Je,!0)})(t),Xe(t),e!==void 0&&de(t,xe,Se,t=>({...t,scope:e}))}}function Qe(e,t,n){let r;return e.extendConstructorArguments??!0?(r=[...t.constructorArguments],n.constructorArguments.map((e,t)=>{r[t]=e})):r=n.constructorArguments,r}function $e(e,t,n){return e?new Set([...t,...n]):n}function et(e,t,n){let r=e.lifecycle?.extendPostConstructMethods??!0,i=$e(e.lifecycle?.extendPreDestroyMethods??!0,t.lifecycle.preDestroyMethodNames,n.lifecycle.preDestroyMethodNames);return{postConstructMethodNames:$e(r,t.lifecycle.postConstructMethodNames,n.lifecycle.postConstructMethodNames),preDestroyMethodNames:i}}function tt(e,t,n){let r;return r=e.extendProperties??!0?new Map(_e(t.properties,n.properties)):n.properties,r}function nt(e){return t=>{de(t,xe,Se,function(e,t){return n=>({constructorArguments:Qe(e,t,n),lifecycle:et(e,t,n),properties:tt(e,t,n),scope:n.scope})}(e,je(e.type)))}}function rt(e){return t=>{let n=fe(t);if(n===void 0)throw new Te(Ee.injectionDecoratorConflict,`Expected base type for type "${t.name}", none found.`);nt({...e,type:n})(t)}}function it(e){return t=>{let n=[],r=fe(t);for(;r!==void 0&&r!==Object;){let e=r;n.push(e),r=fe(e)}n.reverse();for(let r of n)nt({...e,type:r})(t)}}function at(e){return t=>{t===void 0&&de(e,Ce,Re,e=>e+1)}}function ot(e){return t=>{let n=t??{kind:De.unknown,name:void 0,optional:!1,tags:new Map};if(n.kind===Ae.unmanaged)throw new Te(Ee.injectionDecoratorConflict,`Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections`);return e(n)}}function st(e){if(e.optional)throw new Te(Ee.injectionDecoratorConflict,`Unexpected duplicated optional decorator`);return e.optional=!0,e}function U(){return Ge(ot(st),at)}var ct;function lt(e){return e instanceof Error?e instanceof RangeError&&/stack space|call stack|too much recursion/i.test(e.message)||e.name===`InternalError`&&/too much recursion/.test(e.message):!1}function ut(e,t){if(lt(t)){let n=function(e){let t=[...e];return t.length===0?`(No dependency trace)`:t.map(oe).join(` -> `)}(function(e){let t=new Set;for(let n of e.servicesBranch){if(t.has(n))return[...t,n];t.add(n)}return[...t]}(e));throw new Te(Ee.planning,`Circular dependency found: ${n}`,{cause:t})}throw t}(function(e){e[e.multipleInjection=0]=`multipleInjection`,e[e.singleInjection=1]=`singleInjection`})(ct||={});const dt=Symbol.for(`@inversifyjs/core/LazyPlanServiceNode`);var ft=class{[dt];_serviceIdentifier;_serviceNode;constructor(e,t){this[dt]=!0,this._serviceNode=e,this._serviceIdentifier=t}get bindings(){return this._getNode().bindings}get isContextFree(){return this._getNode().isContextFree}get serviceIdentifier(){return this._serviceIdentifier}set bindings(e){this._getNode().bindings=e}set isContextFree(e){this._getNode().isContextFree=e}static is(e){return typeof e==`object`&&!!e&&!0===e[dt]}invalidate(){this._serviceNode=void 0}isExpanded(){return this._serviceNode!==void 0}_getNode(){return this._serviceNode===void 0&&(this._serviceNode=this._buildPlanServiceNode()),this._serviceNode}},pt=class e{#e;constructor(e){this.#e=e}get name(){return this.#e.elem.name}get serviceIdentifier(){return this.#e.elem.serviceIdentifier}get tags(){return this.#e.elem.tags}getAncestor(){if(this.#e.elem.getAncestorsCalled=!0,this.#e.previous!==void 0)return new e(this.#e.previous)}};function mt(e,t,n){let r=n?.customServiceIdentifier??t.serviceIdentifier,i=(!0===n?.chained?[...e.operations.getBindingsChained(r)]:[...e.operations.getBindings(r)??[]]).filter(e=>e.isSatisfiedBy(t));if(i.length===0&&e.autobindOptions!==void 0&&typeof r==`function`){let n=Me(e.autobindOptions,r);e.operations.setBinding(n),n.isSatisfiedBy(t)&&i.push(n)}return i}var ht=class e{last;constructor(e){this.last=e}concat(t){return new e({elem:t,previous:this.last})}[Symbol.iterator](){let e=this.last;return{next:()=>{if(e===void 0)return{done:!0,value:void 0};let t=e.elem;return e=e.previous,{done:!1,value:t}}}}};function gt(e){let t=new Map;return e.rootConstraints.tag!==void 0&&t.set(e.rootConstraints.tag.key,e.rootConstraints.tag.value),new ht({elem:{getAncestorsCalled:!1,name:e.rootConstraints.name,serviceIdentifier:e.rootConstraints.serviceIdentifier,tags:t},previous:void 0})}function _t(e){return e.redirections!==void 0}function vt(e,t,n,r){let i=n.elem.serviceIdentifier,a=n.previous?.elem.serviceIdentifier;Array.isArray(e)?function(e,t,n,r,i,a){if(e.length!==0){let t=`Ambiguous bindings found for service: "${oe(a[a.length-1]??n)}".${St(a)}\n\nRegistered bindings:\n\n${e.map(e=>function(e){switch(e.type){case ge.Instance:return`[ type: "${e.type}", serviceIdentifier: "${oe(e.serviceIdentifier)}", scope: "${e.scope}", implementationType: "${e.implementationType.name}" ]`;case ge.ServiceRedirection:return`[ type: "${e.type}", serviceIdentifier: "${oe(e.serviceIdentifier)}", redirection: "${oe(e.targetServiceIdentifier)}" ]`;default:return`[ type: "${e.type}", serviceIdentifier: "${oe(e.serviceIdentifier)}", scope: "${e.scope}" ]`}}(e.binding)).join(`
|
|
23
23
|
`)}\n\nTrying to resolve bindings for "${bt(n,r)}".${xt(i)}`;throw new Te(Ee.planning,t)}t||yt(n,r,i,a)}(e,t,i,a,n.elem,r):function(e,t,n,r,i,a){e!==void 0||t||yt(n,r,i,a)}(e,t,i,a,n.elem,r)}function yt(e,t,n,r){let i=`No bindings found for service: "${oe(r[r.length-1]??e)}".\n\nTrying to resolve bindings for "${bt(e,t)}".${St(r)}${xt(n)}`;throw new Te(Ee.planning,i)}function bt(e,t){return t===void 0?`${oe(e)} (Root service)`:oe(t)}function xt(e){let t=e.tags.size===0?``:`\n- tags:\n - ${[...e.tags.keys()].map(e=>e.toString()).join(`
|
|
@@ -115,7 +115,7 @@ Binding constraints:
|
|
|
115
115
|
To resolve the conflict:`,(0,r.getConflictResolutionRecipe)(i,e))),a=o):n.diag.warn(`A view or instrument with the name `,e.name,` has already been registered and is incompatible with another registered view.
|
|
116
116
|
`,`Details:
|
|
117
117
|
`,(0,r.getIncompatibilityDetails)(i,e),`To resolve the conflict:
|
|
118
|
-
`,(0,r.getConflictResolutionRecipe)(i,e))}return a}}})),kI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MultiMetricStorage=void 0,e.MultiMetricStorage=class{_backingStorages;constructor(e){this._backingStorages=e}record(e,t,n,r){this._backingStorages.forEach(i=>{i.record(e,t,n,r)})}}})),AI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchObservableResultImpl=e.ObservableResultImpl=void 0;let t=(Jd(),d(Kd)),n=CI(),r=bI();e.ObservableResultImpl=class{_instrumentName;_valueType;_buffer=new n.AttributeHashMap;constructor(e,t){this._instrumentName=e,this._valueType=t}observe(e,n={}){if(typeof e!=`number`){t.diag.warn(`non-number value provided to metric ${this._instrumentName}: ${e}`);return}this._valueType===t.ValueType.INT&&!Number.isInteger(e)&&(t.diag.warn(`INT value type cannot accept a floating-point value for ${this._instrumentName}, ignoring the fractional digits.`),e=Math.trunc(e),!Number.isInteger(e))||this._buffer.set(n,e)}},e.BatchObservableResultImpl=class{_buffer=new Map;observe(e,i,a={}){if(!(0,r.isObservableInstrument)(e))return;let o=this._buffer.get(e);if(o??(o=new n.AttributeHashMap,this._buffer.set(e,o)),typeof i!=`number`){t.diag.warn(`non-number value provided to metric ${e._descriptor.name}: ${i}`);return}e._descriptor.valueType===t.ValueType.INT&&!Number.isInteger(i)&&(t.diag.warn(`INT value type cannot accept a floating-point value for ${e._descriptor.name}, ignoring the fractional digits.`),i=Math.trunc(i),!Number.isInteger(i))||o.set(a,i)}}})),jI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ObservableRegistry=void 0;let t=(Jd(),d(Kd)),n=bI(),r=AI(),i=XF();e.ObservableRegistry=class{_callbacks=[];_batchCallbacks=[];addCallback(e,t){this._findCallback(e,t)>=0||this._callbacks.push({callback:e,instrument:t})}removeCallback(e,t){let n=this._findCallback(e,t);n<0||this._callbacks.splice(n,1)}addBatchCallback(e,r){let i=new Set(r.filter(n.isObservableInstrument));if(i.size===0){t.diag.error(`BatchObservableCallback is not associated with valid instruments`,r);return}this._findBatchCallback(e,i)>=0||this._batchCallbacks.push({callback:e,instruments:i})}removeBatchCallback(e,t){let r=new Set(t.filter(n.isObservableInstrument)),i=this._findBatchCallback(e,r);i<0||this._batchCallbacks.splice(i,1)}async observe(e,t){let n=this._observeCallbacks(e,t),r=this._observeBatchCallbacks(e,t);return(await(0,i.PromiseAllSettled)([...n,...r])).filter(i.isPromiseAllSettledRejectionResult).map(e=>e.reason)}_observeCallbacks(e,t){return this._callbacks.map(async({callback:n,instrument:a})=>{let o=new r.ObservableResultImpl(a._descriptor.name,a._descriptor.valueType),s=Promise.resolve(n(o));t!=null&&(s=(0,i.callWithTimeout)(s,t)),await s,a._metricStorages.forEach(t=>{t.record(o._buffer,e)})})}_observeBatchCallbacks(e,t){return this._batchCallbacks.map(async({callback:n,instruments:a})=>{let o=new r.BatchObservableResultImpl,s=Promise.resolve(n(o));t!=null&&(s=(0,i.callWithTimeout)(s,t)),await s,a.forEach(t=>{let n=o._buffer.get(t);n!=null&&t._metricStorages.forEach(t=>{t.record(n,e)})})})}_findCallback(e,t){return this._callbacks.findIndex(n=>n.callback===e&&n.instrument===t)}_findBatchCallback(e,t){return this._batchCallbacks.findIndex(n=>n.callback===e&&(0,i.setEquals)(n.instruments,t))}}})),MI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.SyncMetricStorage=void 0;let t=SI(),n=wI(),r=TI();e.SyncMetricStorage=class extends t.MetricStorage{_attributesProcessor;_aggregationCardinalityLimit;_deltaMetricStorage;_temporalMetricStorage;constructor(e,t,i,a,o){super(e),this._attributesProcessor=i,this._aggregationCardinalityLimit=o,this._deltaMetricStorage=new n.DeltaMetricProcessor(t,this._aggregationCardinalityLimit),this._temporalMetricStorage=new r.TemporalMetricProcessor(t,a)}record(e,t,n,r){t=this._attributesProcessor.process(t,n),this._deltaMetricStorage.record(e,t,n,r)}collect(e,t){let n=this._deltaMetricStorage.collect();return this._temporalMetricStorage.buildMetrics(e,this._instrumentDescriptor,n,t)}}})),NI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.createDenyListAttributesProcessor=e.createAllowListAttributesProcessor=e.createMultiAttributesProcessor=e.createNoopAttributesProcessor=void 0;var t=class{process(e,t){return e}},n=class{_processors;constructor(e){this._processors=e}process(e,t){let n=e;for(let e of this._processors)n=e.process(n,t);return n}},r=class{_allowedAttributeNames;constructor(e){this._allowedAttributeNames=e}process(e,t){let n={};return Object.keys(e).filter(e=>this._allowedAttributeNames.includes(e)).forEach(t=>n[t]=e[t]),n}},i=class{_deniedAttributeNames;constructor(e){this._deniedAttributeNames=e}process(e,t){let n={};return Object.keys(e).filter(e=>!this._deniedAttributeNames.includes(e)).forEach(t=>n[t]=e[t]),n}};function a(){return l}e.createNoopAttributesProcessor=a;function o(e){return new n(e)}e.createMultiAttributesProcessor=o;function s(e){return new r(e)}e.createAllowListAttributesProcessor=s;function c(e){return new i(e)}e.createDenyListAttributesProcessor=c;let l=new t})),PI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MeterSharedState=void 0;let t=yI(),n=xI(),r=XF(),i=EI(),a=OI(),o=kI(),s=jI(),c=MI(),l=NI();e.MeterSharedState=class{_meterProviderSharedState;_instrumentationScope;metricStorageRegistry=new a.MetricStorageRegistry;observableRegistry=new s.ObservableRegistry;meter;constructor(e,t){this._meterProviderSharedState=e,this._instrumentationScope=t,this.meter=new n.Meter(this)}registerMetricStorage(e){let t=this._registerMetricStorage(e,c.SyncMetricStorage);return t.length===1?t[0]:new o.MultiMetricStorage(t)}registerAsyncMetricStorage(e){return this._registerMetricStorage(e,i.AsyncMetricStorage)}async collect(e,t,n){let i=await this.observableRegistry.observe(t,n?.timeoutMillis),a=this.metricStorageRegistry.getStorages(e);if(a.length===0)return null;let o=a.map(n=>n.collect(e,t)).filter(r.isNotNullish);return o.length===0?{errors:i}:{scopeMetrics:{scope:this._instrumentationScope,metrics:o},errors:i}}_registerMetricStorage(e,n){let r=this._meterProviderSharedState.viewRegistry.findViews(e,this._instrumentationScope).map(r=>{let i=(0,t.createInstrumentDescriptorWithView)(r,e),a=this.metricStorageRegistry.findOrUpdateCompatibleStorage(i);if(a!=null)return a;let o=new n(i,r.aggregation.createAggregator(i),r.attributesProcessor,this._meterProviderSharedState.metricCollectors,r.aggregationCardinalityLimit);return this.metricStorageRegistry.register(o),o});if(r.length===0){let t=this._meterProviderSharedState.selectAggregations(e.type).map(([t,r])=>{let i=this.metricStorageRegistry.findOrUpdateCompatibleCollectorStorage(t,e);if(i!=null)return i;let a=r.createAggregator(e),o=t.selectCardinalityLimit(e.type),s=new n(e,a,(0,l.createNoopAttributesProcessor)(),[t],o);return this.metricStorageRegistry.registerForCollector(t,s),s});r=r.concat(t)}return r}}})),FI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MeterProviderSharedState=void 0;let t=XF(),n=vI(),r=PI(),i=fI();e.MeterProviderSharedState=class{resource;viewRegistry=new n.ViewRegistry;metricCollectors=[];meterSharedStates=new Map;constructor(e){this.resource=e}getMeterSharedState(e){let n=(0,t.instrumentationScopeId)(e),i=this.meterSharedStates.get(n);return i??(i=new r.MeterSharedState(this,e),this.meterSharedStates.set(n,i)),i}selectAggregations(e){let t=[];for(let n of this.metricCollectors)t.push([n,(0,i.toAggregation)(n.selectAggregation(e))]);return t}}})),II=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MetricCollector=void 0;let t=tj();e.MetricCollector=class{_sharedState;_metricReader;constructor(e,t){this._sharedState=e,this._metricReader=t}async collect(e){let n=(0,t.millisToHrTime)(Date.now()),r=[],i=[],a=Array.from(this._sharedState.meterSharedStates.values()).map(async t=>{let a=await t.collect(this,n,e);a?.scopeMetrics!=null&&r.push(a.scopeMetrics),a?.errors!=null&&i.push(...a.errors)});return await Promise.all(a),{resourceMetrics:{resource:this._sharedState.resource,scopeMetrics:r},errors:i}}async forceFlush(e){await this._metricReader.forceFlush(e)}async shutdown(e){await this._metricReader.shutdown(e)}selectAggregationTemporality(e){return this._metricReader.selectAggregationTemporality(e)}selectAggregation(e){return this._metricReader.selectAggregation(e)}selectCardinalityLimit(e){return this._metricReader.selectCardinalityLimit?.(e)??2e3}}})),LI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ExactPredicate=e.PatternPredicate=void 0;let t=/[\^$\\.+?()[\]{}|]/g;e.PatternPredicate=class e{_matchAll;_regexp;constructor(t){t===`*`?(this._matchAll=!0,this._regexp=/.*/):(this._matchAll=!1,this._regexp=new RegExp(e.escapePattern(t)))}match(e){return this._matchAll?!0:this._regexp.test(e)}static escapePattern(e){return`^${e.replace(t,`\\$&`).replace(`*`,`.*`)}$`}static hasWildcard(e){return e.includes(`*`)}},e.ExactPredicate=class{_matchAll;_pattern;constructor(e){this._matchAll=e===void 0,this._pattern=e}match(e){return!!(this._matchAll||e===this._pattern)}}})),oee=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.InstrumentSelector=void 0;let t=LI();e.InstrumentSelector=class{_nameFilter;_type;_unitFilter;constructor(e){this._nameFilter=new t.PatternPredicate(e?.name??`*`),this._type=e?.type,this._unitFilter=new t.ExactPredicate(e?.unit)}getType(){return this._type}getNameFilter(){return this._nameFilter}getUnitFilter(){return this._unitFilter}}})),RI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MeterSelector=void 0;let t=LI();e.MeterSelector=class{_nameFilter;_versionFilter;_schemaUrlFilter;constructor(e){this._nameFilter=new t.ExactPredicate(e?.name),this._versionFilter=new t.ExactPredicate(e?.version),this._schemaUrlFilter=new t.ExactPredicate(e?.schemaUrl)}getNameFilter(){return this._nameFilter}getVersionFilter(){return this._versionFilter}getSchemaUrlFilter(){return this._schemaUrlFilter}}})),zI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.View=void 0;let t=LI(),n=NI(),r=oee(),i=RI(),a=fI();function o(e){return e.instrumentName==null&&e.instrumentType==null&&e.instrumentUnit==null&&e.meterName==null&&e.meterVersion==null&&e.meterSchemaUrl==null}function s(e){if(o(e))throw Error(`Cannot create view with no selector arguments supplied`);if(e.name!=null&&(e?.instrumentName==null||t.PatternPredicate.hasWildcard(e.instrumentName)))throw Error(`Views with a specified name must be declared with an instrument selector that selects at most one instrument per meter.`)}e.View=class{name;description;aggregation;attributesProcessor;instrumentSelector;meterSelector;aggregationCardinalityLimit;constructor(e){s(e),e.attributesProcessors==null?this.attributesProcessor=(0,n.createNoopAttributesProcessor)():this.attributesProcessor=(0,n.createMultiAttributesProcessor)(e.attributesProcessors),this.name=e.name,this.description=e.description,this.aggregation=(0,a.toAggregation)(e.aggregation??{type:a.AggregationType.DEFAULT}),this.instrumentSelector=new r.InstrumentSelector({name:e.instrumentName,type:e.instrumentType,unit:e.instrumentUnit}),this.meterSelector=new i.MeterSelector({name:e.meterName,version:e.meterVersion,schemaUrl:e.meterSchemaUrl}),this.aggregationCardinalityLimit=e.aggregationCardinalityLimit}}})),BI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MeterProvider=void 0;let t=(Jd(),d(Kd)),n=bj(),r=FI(),i=II(),a=zI();e.MeterProvider=class{_sharedState;_shutdown=!1;constructor(e){if(this._sharedState=new r.MeterProviderSharedState(e?.resource??(0,n.defaultResource)()),e?.views!=null&&e.views.length>0)for(let t of e.views)this._sharedState.viewRegistry.addView(new a.View(t));if(e?.readers!=null&&e.readers.length>0)for(let t of e.readers){let e=new i.MetricCollector(this._sharedState,t);t.setMetricProducer(e),this._sharedState.metricCollectors.push(e)}}getMeter(e,n=``,r={}){return this._shutdown?(t.diag.warn(`A shutdown MeterProvider cannot provide a Meter`),(0,t.createNoopMeter)()):this._sharedState.getMeterSharedState({name:e,version:n,schemaUrl:r.schemaUrl}).meter}async shutdown(e){if(this._shutdown){t.diag.warn(`shutdown may only be called once per MeterProvider`);return}this._shutdown=!0,await Promise.all(this._sharedState.metricCollectors.map(t=>t.shutdown(e)))}async forceFlush(e){if(this._shutdown){t.diag.warn(`invalid attempt to force flush after MeterProvider shutdown`);return}await Promise.all(this._sharedState.metricCollectors.map(t=>t.forceFlush(e)))}}})),VI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.TimeoutError=e.createDenyListAttributesProcessor=e.createAllowListAttributesProcessor=e.AggregationType=e.MeterProvider=e.ConsoleMetricExporter=e.InMemoryMetricExporter=e.PeriodicExportingMetricReader=e.MetricReader=e.InstrumentType=e.DataPointType=e.AggregationTemporality=void 0;var t=JF();Object.defineProperty(e,`AggregationTemporality`,{enumerable:!0,get:function(){return t.AggregationTemporality}});var n=YF();Object.defineProperty(e,`DataPointType`,{enumerable:!0,get:function(){return n.DataPointType}}),Object.defineProperty(e,`InstrumentType`,{enumerable:!0,get:function(){return n.InstrumentType}});var r=mI();Object.defineProperty(e,`MetricReader`,{enumerable:!0,get:function(){return r.MetricReader}});var i=hI();Object.defineProperty(e,`PeriodicExportingMetricReader`,{enumerable:!0,get:function(){return i.PeriodicExportingMetricReader}});var a=gI();Object.defineProperty(e,`InMemoryMetricExporter`,{enumerable:!0,get:function(){return a.InMemoryMetricExporter}});var o=_I();Object.defineProperty(e,`ConsoleMetricExporter`,{enumerable:!0,get:function(){return o.ConsoleMetricExporter}});var s=BI();Object.defineProperty(e,`MeterProvider`,{enumerable:!0,get:function(){return s.MeterProvider}});var c=fI();Object.defineProperty(e,`AggregationType`,{enumerable:!0,get:function(){return c.AggregationType}});var l=NI();Object.defineProperty(e,`createAllowListAttributesProcessor`,{enumerable:!0,get:function(){return l.createAllowListAttributesProcessor}}),Object.defineProperty(e,`createDenyListAttributesProcessor`,{enumerable:!0,get:function(){return l.createDenyListAttributesProcessor}});var u=XF();Object.defineProperty(e,`TimeoutError`,{enumerable:!0,get:function(){return u.TimeoutError}})})),HI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.StatsbeatFeatureType=e.EU_ENDPOINTS=e.EU_CONNECTION_STRING=e.NON_EU_CONNECTION_STRING=e.AIMS_FORMAT=e.AIMS_API_VERSION=e.AIMS_URI=e.StatsbeatCounter=e.AttachTypeName=e.StatsbeatResourceProvider=e.MAX_STATSBEAT_FAILURES=e.AZURE_MONITOR_AUTO_ATTACH=e.STATSBEAT_LANGUAGE=e.NetworkStatsbeat=void 0,e.isStatsbeatShutdownStatus=i,e.NetworkStatsbeat=class{constructor(e,t){this.endpoint=e,this.host=t,this.totalRequestCount=0,this.totalSuccessfulRequestCount=0,this.totalReadFailureCount=0,this.totalWriteFailureCount=0,this.totalFailedRequestCount=[],this.retryCount=[],this.exceptionCount=[],this.throttleCount=[],this.intervalRequestExecutionTime=0,this.lastIntervalRequestExecutionTime=0,this.lastTime=+new Date,this.lastRequestCount=0,this.averageRequestExecutionTime=0}},e.STATSBEAT_LANGUAGE=`node`,e.AZURE_MONITOR_AUTO_ATTACH=`AZURE_MONITOR_AUTO_ATTACH`,e.MAX_STATSBEAT_FAILURES=3,e.StatsbeatResourceProvider={appsvc:`appsvc`,aks:`aks`,functions:`functions`,vm:`vm`,unknown:`unknown`};var t;(function(e){e.INTEGRATED_AUTO=`IntegratedAuto`,e.MANUAL=`Manual`})(t||(e.AttachTypeName=t={}));var n;(function(e){e.SUCCESS_COUNT=`Request_Success_Count`,e.FAILURE_COUNT=`Request_Failure_Count`,e.RETRY_COUNT=`Retry_Count`,e.THROTTLE_COUNT=`Throttle_Count`,e.EXCEPTION_COUNT=`Exception_Count`,e.AVERAGE_DURATION=`Request_Duration`,e.READ_FAILURE_COUNT=`Read_Failure_Count`,e.WRITE_FAILURE_COUNT=`Write_Failure_Count`,e.ATTACH=`Attach`,e.FEATURE=`Feature`})(n||(e.StatsbeatCounter=n={})),e.AIMS_URI=`http://169.254.169.254/metadata/instance/compute`,e.AIMS_API_VERSION=`api-version=2017-12-01`,e.AIMS_FORMAT=`format=json`,e.NON_EU_CONNECTION_STRING=`InstrumentationKey=c4a29126-a7cb-47e5-b348-11414998b11e;IngestionEndpoint=https://westus-0.in.applicationinsights.azure.com`,e.EU_CONNECTION_STRING=`InstrumentationKey=7dc56bab-3c0c-4e9f-9ebb-d1acadee8d0f;IngestionEndpoint=https://westeurope-5.in.applicationinsights.azure.com`,e.EU_ENDPOINTS=[`westeurope`,`northeurope`,`francecentral`,`francesouth`,`germanywestcentral`,`norwayeast`,`norwaywest`,`swedencentral`,`switzerlandnorth`,`switzerlandwest`,`uksouth`,`ukwest`];var r;(function(e){e[e.FEATURE=0]=`FEATURE`,e[e.INSTRUMENTATION=1]=`INSTRUMENTATION`})(r||(e.StatsbeatFeatureType=r={}));function i(e){return e===401||e===403||e===503}})),UI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.StatsbeatMetrics=void 0;let t=(kM(),d(Gj)),n=EF(),r=(Jd(),d(Kd)),i=HI(),a=t.__importStar(require(`node:os`));e.StatsbeatMetrics=class{constructor(){this.resourceProvider=i.StatsbeatResourceProvider.unknown,this.vmInfo={},this.os=a.type(),this.resourceIdentifier=``}async getResourceProvider(){this.resourceProvider=i.StatsbeatResourceProvider.unknown,process.env.AKS_ARM_NAMESPACE_ID?(this.resourceProvider=i.StatsbeatResourceProvider.aks,this.resourceIdentifier=process.env.AKS_ARM_NAMESPACE_ID):process.env.WEBSITE_SITE_NAME?(this.resourceProvider=i.StatsbeatResourceProvider.appsvc,this.resourceIdentifier=process.env.WEBSITE_SITE_NAME,process.env.WEBSITE_HOME_STAMPNAME&&(this.resourceIdentifier+=`/`+process.env.WEBSITE_HOME_STAMPNAME)):process.env.FUNCTIONS_WORKER_RUNTIME?(this.resourceProvider=i.StatsbeatResourceProvider.functions,process.env.WEBSITE_HOSTNAME&&(this.resourceIdentifier=process.env.WEBSITE_HOSTNAME)):await this.getAzureComputeMetadata()?(this.resourceProvider=i.StatsbeatResourceProvider.vm,this.resourceIdentifier=this.vmInfo.id+`/`+this.vmInfo.subscriptionId,this.vmInfo.osType&&(this.os=this.vmInfo.osType)):this.resourceProvider=i.StatsbeatResourceProvider.unknown}async getAzureComputeMetadata(){let e=(0,n.createDefaultHttpClient)(),t={url:`${i.AIMS_URI}?${i.AIMS_API_VERSION}&${i.AIMS_FORMAT}`,timeout:5e3,method:`GET`,allowInsecureConnection:!0},a=(0,n.createPipelineRequest)(t);return await e.sendRequest(a).then(e=>{if(e.status===200){this.vmInfo.isVM=!0;let t=``;return e.on(`data`,e=>{t+=e}),e.on(`end`,()=>{try{let e=JSON.parse(t);this.vmInfo.id=e.vmId||``,this.vmInfo.subscriptionId=e.subscriptionId||``,this.vmInfo.osType=e.osType||``}catch(e){r.diag.debug(`Failed to parse JSON: `,e)}}),!0}else return!1}).catch(()=>!1),!1}getConnectionString(e){let t=e;for(let e=0;e<i.EU_ENDPOINTS.length;e++)if(t.includes(i.EU_ENDPOINTS[e]))return i.EU_CONNECTION_STRING;return i.NON_EU_CONNECTION_STRING}}})),WI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.resourceMetricsToEnvelope=l,e.isAksAttach=u,e.shouldSendToOtlp=d,e.isStandardMetric=f,e.getAttachType=p;let t=VI(),n=tL(),r=dN(),i=AM(),a=HI(),o=eL(),s=new Map([[r.OTelPerformanceCounterNames.PRIVATE_BYTES,r.BreezePerformanceCounterNames.PRIVATE_BYTES],[r.OTelPerformanceCounterNames.AVAILABLE_BYTES,r.BreezePerformanceCounterNames.AVAILABLE_BYTES],[r.OTelPerformanceCounterNames.PROCESSOR_TIME,r.BreezePerformanceCounterNames.PROCESSOR_TIME],[r.OTelPerformanceCounterNames.PROCESS_TIME_STANDARD,r.BreezePerformanceCounterNames.PROCESS_TIME_STANDARD],[r.OTelPerformanceCounterNames.PROCESS_TIME_NORMALIZED,r.BreezePerformanceCounterNames.PROCESS_TIME_NORMALIZED],[r.OTelPerformanceCounterNames.REQUEST_RATE,r.BreezePerformanceCounterNames.REQUEST_RATE],[r.OTelPerformanceCounterNames.REQUEST_DURATION,r.BreezePerformanceCounterNames.REQUEST_DURATION],[r.OTelPerformanceCounterNames.EXCEPTION_RATE,r.BreezePerformanceCounterNames.EXCEPTION_RATE]]);function c(e){let t={};if(e)for(let n of Object.keys(e))t[n]=e[n];return t}function l(e,r,a){let l=[],p=new Date,m=r,h,g;if(a){g=`Microsoft.ApplicationInsights.Statsbeat`;let e=(0,o.getInstance)();h=Object.assign({},e.tags)}else g=`Microsoft.ApplicationInsights.Metric`,h=(0,n.createTagsFromResource)(e.resource);return e.scopeMetrics.forEach(e=>{e.metrics.forEach(e=>{e.dataPoints.forEach(n=>{let r={metrics:[],version:2,properties:{}};if(r.properties=c(n.attributes),d()&&u()&&!f(n)&&process.env[i.ENV_APPLICATIONINSIGHTS_METRICS_TO_LOGANALYTICS_ENABLED]===`false`&&!a)return;d()&&u()&&!a?r.properties[`_MS.SentToAMW`]=`True`:u()&&!a&&(r.properties[`_MS.SentToAMW`]=`False`);let o;s.has(e.descriptor.name)&&(o=s.get(e.descriptor.name));let _={name:o||e.descriptor.name,value:0,dataPointType:`Aggregation`};e.dataPointType===t.DataPointType.SUM||e.dataPointType===t.DataPointType.GAUGE?(_.value=n.value,_.count=1):(_.value=n.value.sum||0,_.count=n.value.count,_.max=n.value.max,_.min=n.value.min),r.metrics.push(_);let v={name:g,time:p,sampleRate:100,instrumentationKey:m,tags:h,version:1,data:{baseType:`MetricData`,baseData:Object.assign({},r)}};l.push(v)})})}),l}function u(){return!!(process.env[i.ENV_AZURE_MONITOR_AUTO_ATTACH]===`true`&&process.env.AKS_ARM_NAMESPACE_ID)}function d(){return!!(process.env[i.ENV_OTLP_METRICS_ENDPOINT]&&process.env[i.ENV_OTEL_METRICS_EXPORTER]?.includes(`otlp`))}function f(e){return e.attributes?.[`_MS.IsAutocollected`]===`True`}function p(){return process.env[a.AZURE_MONITOR_AUTO_ATTACH]===`true`?a.AttachTypeName.INTEGRATED_AUTO:a.AttachTypeName.MANUAL}})),GI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AzureMonitorStatsbeatExporter=void 0;let t=(Jd(),d(Kd)),n=uN(),r=WI(),i=MM(),a=eL();e.AzureMonitorStatsbeatExporter=class extends i.AzureMonitorBaseExporter{constructor(e){super(e,!0),this._isShutdown=!1,this._sender=new a.HttpSender({endpointUrl:this.endpointUrl,instrumentationKey:this.instrumentationKey,trackStatsbeat:this.trackStatsbeat,exporterOptions:e,isStatsbeatSender:!0})}async export(e,i){if(this._isShutdown){setTimeout(()=>i({code:n.ExportResultCode.FAILED}),0);return}let a=(0,r.resourceMetricsToEnvelope)(e,this.instrumentationKey,!0);t.context.with((0,n.suppressTracing)(t.context.active()),async()=>{i(await this._sender.exportEnvelopes(a))})}async shutdown(){return this._isShutdown=!0,this._sender.shutdown()}async forceFlush(){return Promise.resolve()}}})),KI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.NetworkStatsbeatMetrics=void 0;let t=(kM(),d(Gj)),n=(Jd(),d(Kd)),r=VI(),i=t.__importStar(Uj()),a=UI(),o=HI(),s=GI(),c=AM(),l=WI();var u=class e extends a.StatsbeatMetrics{constructor(e){super(),this.disableNonEssentialStatsbeat=!!process.env[c.ENV_DISABLE_STATSBEAT],this.isInitialized=!1,this.statsCollectionShortInterval=9e5,this.networkStatsbeatCollection=[],this.attach=(0,l.getAttachType)(),this.connectionString=super.getConnectionString(e.endpointUrl);let t={connectionString:this.connectionString};this.networkAzureExporter=new s.AzureMonitorStatsbeatExporter(t);let n={exporter:this.networkAzureExporter,exportIntervalMillis:e.networkCollectionInterval||this.statsCollectionShortInterval};this.networkStatsbeatMeterProvider=new r.MeterProvider({readers:[new r.PeriodicExportingMetricReader(n)]}),this.networkStatsbeatMeter=this.networkStatsbeatMeterProvider.getMeter(`Azure Monitor Network Statsbeat`),this.endpointUrl=e.endpointUrl,this.runtimeVersion=process.version,this.language=o.STATSBEAT_LANGUAGE,this.version=i.packageVersion,this.host=this.getShortHost(e.endpointUrl),this.cikey=e.instrumentationKey,this.successCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.SUCCESS_COUNT),this.failureCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.FAILURE_COUNT),this.retryCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.RETRY_COUNT),this.throttleCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.THROTTLE_COUNT),this.exceptionCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.EXCEPTION_COUNT),this.averageDurationGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.AVERAGE_DURATION),this.disableNonEssentialStatsbeat||(this.readFailureGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.READ_FAILURE_COUNT),this.writeFailureGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.WRITE_FAILURE_COUNT)),this.isInitialized=!0,this.initialize(),this.commonProperties={os:this.os,rp:this.resourceProvider,cikey:this.cikey,runtimeVersion:this.runtimeVersion,language:this.language,version:this.version,attach:this.attach},this.networkProperties={endpoint:this.endpointUrl,host:this.host}}shutdown(){return this.networkStatsbeatMeterProvider.shutdown()}async initialize(){var e,t;try{await super.getResourceProvider(),this.successCountGauge.addCallback(this.successCallback.bind(this)),this.networkStatsbeatMeter.addBatchObservableCallback(this.failureCallback.bind(this),[this.failureCountGauge]),this.networkStatsbeatMeter.addBatchObservableCallback(this.retryCallback.bind(this),[this.retryCountGauge]),this.networkStatsbeatMeter.addBatchObservableCallback(this.throttleCallback.bind(this),[this.throttleCountGauge]),this.networkStatsbeatMeter.addBatchObservableCallback(this.exceptionCallback.bind(this),[this.exceptionCountGauge]),this.disableNonEssentialStatsbeat||((e=this.readFailureGauge)==null||e.addCallback(this.readFailureCallback.bind(this)),(t=this.writeFailureGauge)==null||t.addCallback(this.writeFailureCallback.bind(this))),this.averageDurationGauge.addCallback(this.durationCallback.bind(this))}catch{n.diag.debug(`Call to get the resource provider failed.`)}}successCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);if(t.totalSuccessfulRequestCount>0){let n=Object.assign(Object.assign({},this.commonProperties),this.networkProperties);e.observe(t.totalSuccessfulRequestCount,n),t.totalSuccessfulRequestCount=0}}failureCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign(Object.assign({},this.networkProperties),this.commonProperties),{statusCode:0});for(let r=0;r<t.totalFailedRequestCount.length;r++)t.totalFailedRequestCount[r].count>0&&(n.statusCode=t.totalFailedRequestCount[r].statusCode,e.observe(this.failureCountGauge,t.totalFailedRequestCount[r].count,Object.assign({},n)),t.totalFailedRequestCount[r].count=0)}retryCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign(Object.assign({},this.networkProperties),this.commonProperties),{statusCode:0});for(let r=0;r<t.retryCount.length;r++)t.retryCount[r].count>0&&(n.statusCode=t.retryCount[r].statusCode,e.observe(this.retryCountGauge,t.retryCount[r].count,Object.assign({},n)),t.retryCount[r].count=0)}throttleCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign(Object.assign({},this.networkProperties),this.commonProperties),{statusCode:0});for(let r=0;r<t.throttleCount.length;r++)t.throttleCount[r].count>0&&(n.statusCode=t.throttleCount[r].statusCode,e.observe(this.throttleCountGauge,t.throttleCount[r].count,Object.assign({},n)),t.throttleCount[r].count=0)}exceptionCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign(Object.assign({},this.networkProperties),this.commonProperties),{exceptionType:``});for(let r=0;r<t.exceptionCount.length;r++)t.exceptionCount[r].count>0&&(n.exceptionType=t.exceptionCount[r].exceptionType,e.observe(this.exceptionCountGauge,t.exceptionCount[r].count,Object.assign({},n)),t.exceptionCount[r].count=0)}durationCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign({},this.networkProperties),this.commonProperties);for(let e=0;e<this.networkStatsbeatCollection.length;e++){let t=this.networkStatsbeatCollection[e];t.time=Number(new Date);let n=t.totalRequestCount-t.lastRequestCount||0;n>0?t.averageRequestExecutionTime=(t.intervalRequestExecutionTime-t.lastIntervalRequestExecutionTime)/n||0:t.averageRequestExecutionTime=0,t.lastIntervalRequestExecutionTime=t.intervalRequestExecutionTime,t.lastRequestCount=t.totalRequestCount,t.lastTime=t.time}t.averageRequestExecutionTime>0&&(e.observe(t.averageRequestExecutionTime,n),t.averageRequestExecutionTime=0)}readFailureCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);if(t.totalReadFailureCount>0){let n=Object.assign(Object.assign({},this.commonProperties),this.networkProperties);e.observe(t.totalReadFailureCount,n),t.totalReadFailureCount=0}}writeFailureCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);if(t.totalWriteFailureCount>0){let n=Object.assign(Object.assign({},this.commonProperties),this.networkProperties);e.observe(t.totalWriteFailureCount,n),t.totalWriteFailureCount=0}}countSuccess(e){if(!this.isInitialized)return;let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);t.totalRequestCount++,t.totalSuccessfulRequestCount++,t.intervalRequestExecutionTime+=e}countFailure(e,t){if(!this.isInitialized)return;let n=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),r=n.totalFailedRequestCount.find(e=>t===e.statusCode);r?r.count++:n.totalFailedRequestCount.push({statusCode:t,count:1}),n.totalRequestCount++,n.intervalRequestExecutionTime+=e}countRetry(e){if(!this.isInitialized)return;let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=t.retryCount.find(t=>e===t.statusCode);n?n.count++:t.retryCount.push({statusCode:e,count:1})}countThrottle(e){if(!this.isInitialized)return;let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=t.throttleCount.find(t=>e===t.statusCode);n?n.count++:t.throttleCount.push({statusCode:e,count:1})}countReadFailure(){if(!this.isInitialized||this.disableNonEssentialStatsbeat)return;let e=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);e.totalReadFailureCount++}countWriteFailure(){if(!this.isInitialized||this.disableNonEssentialStatsbeat)return;let e=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);e.totalWriteFailureCount++}countException(e){if(!this.isInitialized)return;let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=t.exceptionCount.find(t=>e.name===t.exceptionType);n?n.count++:t.exceptionCount.push({exceptionType:e.name,count:1})}getNetworkStatsbeatCounter(e,t){for(let n=0;n<this.networkStatsbeatCollection.length;n++)if(e===this.networkStatsbeatCollection[n].endpoint&&t===this.networkStatsbeatCollection[n].host)return this.networkStatsbeatCollection[n];let n=new o.NetworkStatsbeat(e,t);return this.networkStatsbeatCollection.push(n),n}getShortHost(e){let t=e;try{let n=new RegExp(/^https?:\/\/(?:www\.)?([^/.-]+)/).exec(e);n!==null&&n.length>1&&(t=n[1]),t=t.replace(`.in.applicationinsights.azure.com`,``)}catch{n.diag.debug(`Failed to get the short host name.`)}return t}static getInstance(t){return e.instance||=new e(t),e.instance}};e.NetworkStatsbeatMetrics=u,u.instance=null})),qI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LongIntervalStatsbeatMetrics=void 0;let t=(kM(),d(Gj)),n=(Jd(),d(Kd)),r=uN(),i=VI(),a=t.__importStar(Uj()),o=UI(),s=HI(),c=GI(),l=WI();var u=class e extends o.StatsbeatMetrics{constructor(e){super(),this.statsCollectionLongInterval=864e5,this.attach=(0,l.getAttachType)(),this.feature=0,this.instrumentation=0,this.isInitialized=!1,this.connectionString=super.getConnectionString(e.endpointUrl);let t={connectionString:this.connectionString,disableOfflineStorage:e.disableOfflineStorage};this.setFeatures(),this.longIntervalAzureExporter=new c.AzureMonitorStatsbeatExporter(t);let n={exporter:this.longIntervalAzureExporter,exportIntervalMillis:Number(process.env.LONG_INTERVAL_EXPORT_MILLIS)||this.statsCollectionLongInterval};this.longIntervalMetricReader=new i.PeriodicExportingMetricReader(n),this.longIntervalStatsbeatMeterProvider=new i.MeterProvider({readers:[this.longIntervalMetricReader]}),this.longIntervalStatsbeatMeter=this.longIntervalStatsbeatMeterProvider.getMeter(`Azure Monitor Long Interval Statsbeat`),this.runtimeVersion=process.version,this.language=s.STATSBEAT_LANGUAGE,this.version=a.packageVersion,this.cikey=e.instrumentationKey,this.featureStatsbeatGauge=this.longIntervalStatsbeatMeter.createObservableGauge(s.StatsbeatCounter.FEATURE),this.attachStatsbeatGauge=this.longIntervalStatsbeatMeter.createObservableGauge(s.StatsbeatCounter.ATTACH),this.isInitialized=!0,this.initialize(),this.commonProperties={os:this.os,rp:this.resourceProvider,cikey:this.cikey,runtimeVersion:this.runtimeVersion,language:this.language,version:this.version,attach:this.attach},this.attachProperties={rpId:this.resourceIdentifier}}async initialize(){try{await this.getResourceProvider(),this.attachStatsbeatGauge.addCallback(this.attachCallback.bind(this)),this.longIntervalStatsbeatMeter.addBatchObservableCallback(this.getEnvironmentStatus.bind(this),[this.featureStatsbeatGauge]),setTimeout(async()=>{try{let e=await this.longIntervalMetricReader.collect();e?this.longIntervalAzureExporter.export(e.resourceMetrics,e=>{e.code!==r.ExportResultCode.SUCCESS&&n.diag.debug(`LongIntervalStatsbeat: metrics export failed (error ${e.error})`)}):n.diag.debug(`LongIntervalStatsbeat: No metrics collected`)}catch(e){n.diag.debug(`LongIntervalStatsbeat: Error collecting metrics: ${e}`)}},15e3)}catch{n.diag.debug(`Call to get the resource provider failed.`)}}getEnvironmentStatus(e){this.setFeatures();let t;this.instrumentation>0&&(t=Object.assign(Object.assign({},this.commonProperties),{feature:this.instrumentation,type:s.StatsbeatFeatureType.INSTRUMENTATION}),e.observe(this.featureStatsbeatGauge,1,Object.assign({},t))),this.feature>0&&(t=Object.assign(Object.assign({},this.commonProperties),{feature:this.feature,type:s.StatsbeatFeatureType.FEATURE}),e.observe(this.featureStatsbeatGauge,1,Object.assign({},t)))}setFeatures(){let e=process.env.AZURE_MONITOR_STATSBEAT_FEATURES;if(e)try{this.feature=JSON.parse(e).feature,this.instrumentation=JSON.parse(e).instrumentation}catch(e){n.diag.debug(`LongIntervalStatsbeat: Failed to parse features/instrumentations (error ${e})`)}}attachCallback(e){let t=Object.assign(Object.assign({},this.commonProperties),this.attachProperties);e.observe(1,t)}shutdown(){return this.longIntervalStatsbeatMeterProvider.shutdown()}static getInstance(t){return e.instance||=new e(t),e.instance}};e.LongIntervalStatsbeatMetrics=u,u.instance=null})),JI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isRetriable=t,e.msToTimeSpan=n;function t(e){return e===206||e===401||e===403||e===408||e===429||e===439||e===500||e===502||e===503||e===504}function n(e){(isNaN(e)||e<0)&&(e=0);let t=(e/1e3%60).toFixed(7).replace(/0{0,4}$/,``),n=``+Math.floor(e/(1e3*60))%60,r=``+Math.floor(e/(1e3*60*60))%24,i=Math.floor(e/(1e3*60*60*24));return t=t.indexOf(`.`)<2?`0`+t:t,n=n.length<2?`0`+n:n,r=r.length<2?`0`+r:r,(i>0?i+`.`:``)+r+`:`+n+`:`+t}})),YI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BaseSender=void 0;let t=(Jd(),d(Kd)),n=gN(),r=uN(),i=KI(),a=qI(),o=HI(),s=JI(),c=AM();e.BaseSender=class{constructor(e){this.statsbeatFailureCount=0,this.batchSendRetryIntervalMs=6e4,this.numConsecutiveRedirects=0,this.disableOfflineStorage=e.exporterOptions.disableOfflineStorage||!1,this.persister=new n.FileSystemPersist(e.instrumentationKey,e.exporterOptions),e.trackStatsbeat&&(this.networkStatsbeatMetrics=i.NetworkStatsbeatMetrics.getInstance({instrumentationKey:e.instrumentationKey,endpointUrl:e.endpointUrl,disableOfflineStorage:this.disableOfflineStorage}),this.longIntervalStatsbeatMetrics=a.LongIntervalStatsbeatMetrics.getInstance({instrumentationKey:e.instrumentationKey,endpointUrl:e.endpointUrl,disableOfflineStorage:this.disableOfflineStorage})),this.retryTimer=null,this.isStatsbeatSender=e.isStatsbeatSender||!1}async exportEnvelopes(e){var n,i,a,c,l,u,d,f,p,m;if(t.diag.info(`Exporting ${e.length} envelope(s)`),e.length<1)return{code:r.ExportResultCode.SUCCESS};try{let o=new Date().getTime(),{result:d,statusCode:f}=await this.send(e),p=new Date().getTime()-o;if(this.numConsecutiveRedirects=0,f===200)return this.retryTimer||(this.retryTimer=setTimeout(()=>{this.retryTimer=null,this.sendFirstPersistedFile()},this.batchSendRetryIntervalMs),this.retryTimer.unref()),this.isStatsbeatSender||(n=this.networkStatsbeatMetrics)==null||n.countSuccess(p),{code:r.ExportResultCode.SUCCESS};if(f&&(0,s.isRetriable)(f)){if(f===429||f===439)return this.isStatsbeatSender||(i=this.networkStatsbeatMetrics)==null||i.countThrottle(f),{code:r.ExportResultCode.SUCCESS};if(d){t.diag.info(d);let n=JSON.parse(d),i=[];return n.itemsAccepted>0&&f===206&&!this.isStatsbeatSender&&((a=this.networkStatsbeatMetrics)==null||a.countSuccess(p)),n.errors&&n.errors.forEach(t=>{t.statusCode&&(0,s.isRetriable)(t.statusCode)&&i.push(e[t.index])}),i.length>0?(this.isStatsbeatSender||(c=this.networkStatsbeatMetrics)==null||c.countRetry(f),await this.persist(i)):(this.isStatsbeatSender||(l=this.networkStatsbeatMetrics)==null||l.countFailure(p,f),{code:r.ExportResultCode.FAILED})}else return this.isStatsbeatSender||(u=this.networkStatsbeatMetrics)==null||u.countRetry(f),await this.persist(e)}else return this.networkStatsbeatMetrics&&!this.isStatsbeatSender?f&&this.networkStatsbeatMetrics.countFailure(p,f):this.incrementStatsbeatFailure(),{code:r.ExportResultCode.FAILED}}catch(n){let i=n;if(i.statusCode&&(i.statusCode===307||i.statusCode===308))if(this.numConsecutiveRedirects++,this.numConsecutiveRedirects<10){if(i.response&&i.response.headers){let t=i.response.headers.get(`location`);if(t)return this.handlePermanentRedirect(t),this.exportEnvelopes(e)}}else{let e=Error(`Circular redirect`);return this.isStatsbeatSender||(d=this.networkStatsbeatMetrics)==null||d.countException(e),{code:r.ExportResultCode.FAILED,error:e}}else if(i.statusCode&&(0,s.isRetriable)(i.statusCode)&&!this.isStatsbeatSender)return(f=this.networkStatsbeatMetrics)==null||f.countRetry(i.statusCode),this.persist(e);else if(i.statusCode===400&&i.message.includes(`Invalid instrumentation key`))return this.shutdownStatsbeat(),{code:r.ExportResultCode.SUCCESS};else if(i.statusCode&&this.isStatsbeatSender&&(0,o.isStatsbeatShutdownStatus)(i.statusCode))return this.incrementStatsbeatFailure(),{code:r.ExportResultCode.SUCCESS};return this.isRetriableRestError(i)?(i.statusCode&&!this.isStatsbeatSender&&((p=this.networkStatsbeatMetrics)==null||p.countRetry(i.statusCode)),this.isStatsbeatSender||t.diag.error(`Retrying due to transient client side error. Error message:`,i.message),this.persist(e)):(this.isStatsbeatSender||(m=this.networkStatsbeatMetrics)==null||m.countException(i),this.isStatsbeatSender||t.diag.error(`Envelopes could not be exported and are not retriable. Error message:`,i.message),{code:r.ExportResultCode.FAILED,error:i})}}async persist(e){var t;try{return await this.persister.push(e)?{code:r.ExportResultCode.SUCCESS}:{code:r.ExportResultCode.FAILED,error:Error(`Failed to persist envelope in disk.`)}}catch(e){return this.isStatsbeatSender||(t=this.networkStatsbeatMetrics)==null||t.countWriteFailure(),{code:r.ExportResultCode.FAILED,error:e}}}incrementStatsbeatFailure(){this.statsbeatFailureCount++,this.statsbeatFailureCount>o.MAX_STATSBEAT_FAILURES&&this.shutdownStatsbeat()}shutdownStatsbeat(){var e;this.networkStatsbeatMetrics&&this.networkStatsbeatMetrics.shutdown(),(e=this.longIntervalStatsbeatMetrics)==null||e.shutdown(),this.statsbeatFailureCount=0}async sendFirstPersistedFile(){var e;try{let e=await this.persister.shift();e&&await this.send(e)}catch(n){this.isStatsbeatSender||(e=this.networkStatsbeatMetrics)==null||e.countReadFailure(),t.diag.warn(`Failed to fetch persisted file`,n)}}isRetriableRestError(e){let t=Object.values(c.RetriableRestErrorTypes);return!!(e&&e.code&&t.includes(e.code))}}})),XI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.HttpSender=void 0;let t=(kM(),d(Gj)).__importDefault(require(`node:url`)),n=(Jd(),d(Kd)),r=EF(),i=qF(),a=YI();e.HttpSender=class extends a.BaseSender{constructor(e){super(e),this.appInsightsClientOptions=Object.assign({host:e.endpointUrl},e.exporterOptions),this.appInsightsClientOptions.credential&&(e.aadAudience?this.appInsightsClientOptions.credentialScopes=[e.aadAudience]:this.appInsightsClientOptions.credentialScopes=[`https://monitor.azure.com//.default`]),this.appInsightsClient=new i.ApplicationInsightsClient(this.appInsightsClientOptions),this.appInsightsClient.pipeline.removePolicy({name:r.redirectPolicyName})}async send(e){let t={},n;function r(e,r){n=e,t.onResponse&&t.onResponse(e,r)}return await this.appInsightsClient.track(e,Object.assign(Object.assign({},t),{onResponse:r})),{statusCode:n?.status,result:n?.bodyAsText??``}}async shutdown(){n.diag.info(`HttpSender shutting down`)}handlePermanentRedirect(e){if(e){let n=new t.default.URL(e);n&&n.host&&(this.appInsightsClient.host=`https://`+n.host)}}}})),ZI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Context=void 0,e.getInstance=u;let t=(kM(),d(Gj)),n=t.__importStar(require(`node:os`)),r=uN(),i=(PA(),d(NA)),a=qF(),o=t.__importStar(Uj()),s=AM(),c=null;var l=class e{constructor(){this.tags={},this._loadDeviceContext(),this._loadInternalContext()}_loadDeviceContext(){this.tags[a.KnownContextTagKeys.AiDeviceOsVersion]=n&&`${n.type()} ${n.release()}`}_loadInternalContext(){let{node:t}=process.versions;[e.nodeVersion]=t.split(`.`),e.opentelemetryVersion=r.SDK_INFO[i.ATTR_TELEMETRY_SDK_VERSION],e.sdkVersion=o.packageVersion;let n=process.env[s.ENV_AZURE_MONITOR_PREFIX]?process.env[s.ENV_AZURE_MONITOR_PREFIX]:``,c=this._getVersion(),l=`${n}node${e.nodeVersion}:otel${e.opentelemetryVersion}:${c}`;this.tags[a.KnownContextTagKeys.AiInternalSdkVersion]=l}_getVersion(){return process.env[s.ENV_APPLICATIONINSIGHTS_SHIM_VERSION]?`sha${process.env[s.ENV_APPLICATIONINSIGHTS_SHIM_VERSION]}`:process.env[s.ENV_AZURE_MONITOR_DISTRO_VERSION]?`dst${process.env[s.ENV_AZURE_MONITOR_DISTRO_VERSION]}`:`ext${e.sdkVersion}`}};e.Context=l,l.sdkVersion=null,l.opentelemetryVersion=null,l.nodeVersion=``;function u(){return c||=new l,c}})),QI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),(kM(),d(Gj)).__exportStar(ZI(),e)})),$I=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0});let t=(kM(),d(Gj));t.__exportStar(fN(),e),t.__exportStar(gN(),e),t.__exportStar(XI(),e),t.__exportStar(QI(),e)})),eL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),(kM(),d(Gj)).__exportStar($I(),e)})),tL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.hrTimeToDate=l,e.createTagsFromResource=u,e.isSqlDB=m,e.getUrl=h,e.getDependencyTarget=g,e.createResourceMetricEnvelope=_,e.serializeAttribute=v,e.shouldCreateResourceMetric=y,e.isSyntheticSource=b;let t=(kM(),d(Gj)).__importDefault(require(`node:os`)),n=(PA(),d(NA)),r=dN(),i=eL(),a=qF(),o=uN(),s=AM(),c=iL();function l(e){return new Date((0,o.hrTimeToNanoseconds)(e)/1e6)}function u(e){let t=(0,i.getInstance)(),r=Object.assign({},t.tags);return e&&e.attributes&&(r[a.KnownContextTagKeys.AiCloudRole]=f(e),r[a.KnownContextTagKeys.AiCloudRoleInstance]=p(e),e.attributes[n.SEMRESATTRS_DEVICE_ID]&&(r[a.KnownContextTagKeys.AiDeviceId]=String(e.attributes[n.SEMRESATTRS_DEVICE_ID])),e.attributes[n.SEMRESATTRS_DEVICE_MODEL_NAME]&&(r[a.KnownContextTagKeys.AiDeviceModel]=String(e.attributes[n.SEMRESATTRS_DEVICE_MODEL_NAME])),e.attributes[n.SEMRESATTRS_SERVICE_VERSION]&&(r[a.KnownContextTagKeys.AiApplicationVer]=String(e.attributes[n.SEMRESATTRS_SERVICE_VERSION]))),r}function f(e){let t=``,r=e.attributes[n.SEMRESATTRS_SERVICE_NAME],i=e.attributes[n.SEMRESATTRS_SERVICE_NAMESPACE];if(r)if(String(r).startsWith(`unknown_service`))t=i?`${i}.${r}`:String(r);else return i?`${i}.${r}`:String(r);let a=e.attributes[n.SEMRESATTRS_K8S_DEPLOYMENT_NAME];if(a)return String(a);let o=e.attributes[n.SEMRESATTRS_K8S_REPLICASET_NAME];if(o)return String(o);let s=e.attributes[n.SEMRESATTRS_K8S_STATEFULSET_NAME];if(s)return String(s);let c=e.attributes[n.SEMRESATTRS_K8S_JOB_NAME];if(c)return String(c);let l=e.attributes[n.SEMRESATTRS_K8S_CRONJOB_NAME];if(l)return String(l);let u=e.attributes[n.SEMRESATTRS_K8S_DAEMONSET_NAME];return u?String(u):t}function p(e){let r=e.attributes[n.SEMRESATTRS_K8S_POD_NAME];if(r)return String(r);let i=e.attributes[n.SEMRESATTRS_SERVICE_INSTANCE_ID];return i?String(i):t.default&&t.default.hostname()}function m(e){return e===n.DBSYSTEMVALUES_DB2||e===n.DBSYSTEMVALUES_DERBY||e===n.DBSYSTEMVALUES_MARIADB||e===n.DBSYSTEMVALUES_MSSQL||e===n.DBSYSTEMVALUES_ORACLE||e===n.DBSYSTEMVALUES_SQLITE||e===n.DBSYSTEMVALUES_OTHER_SQL||e===n.DBSYSTEMVALUES_HSQLDB||e===n.DBSYSTEMVALUES_H2}function h(e){if(!e)return``;if((0,c.getHttpMethod)(e)){let t=(0,c.getHttpUrl)(e);if(t)return String(t);{let t=(0,c.getHttpScheme)(e),n=(0,c.getHttpTarget)(e);if(t&&n){let r=(0,c.getHttpHost)(e);if(r)return`${t}://${r}${n}`;{let r=(0,c.getNetPeerPort)(e);if(r){let i=(0,c.getNetPeerName)(e);if(i)return`${t}://${i}:${r}${n}`;{let i=(0,c.getPeerIp)(e);if(i)return`${t}://${i}:${r}${n}`}}}}}}return``}function g(e){if(!e)return``;let t=e[n.SEMATTRS_PEER_SERVICE],r=(0,c.getHttpHost)(e),i=(0,c.getHttpUrl)(e),a=(0,c.getNetPeerName)(e),o=(0,c.getPeerIp)(e);return t?String(t):r?String(r):i?String(i):a?String(a):o?String(o):``}function _(e,t){if(e&&e.attributes){let r=u(e),i={};for(let t of Object.keys(e.attributes))t.startsWith(`_MS.`)||t===n.ATTR_TELEMETRY_SDK_VERSION||t===n.ATTR_TELEMETRY_SDK_LANGUAGE||t===n.ATTR_TELEMETRY_SDK_NAME||(i[t]=e.attributes[t]);if(Object.keys(i).length>0){let e={version:2,metrics:[{name:`_OTELRESOURCE_`,value:1}],properties:i};return{name:`Microsoft.ApplicationInsights.Metric`,time:new Date,sampleRate:100,instrumentationKey:t,version:1,data:{baseType:`MetricData`,baseData:e},tags:r}}}}function v(e){if(typeof e==`object`)if(e instanceof Error)try{return JSON.stringify(e,Object.getOwnPropertyNames(e))}catch{return String(e)}else if(e instanceof Uint8Array)return String(e);else try{return JSON.stringify(e)}catch{return String(e)}return String(e)}function y(){return process.env[s.ENV_OPENTELEMETRY_RESOURCE_METRIC_DISABLED]?.toLowerCase()!==`true`}function b(e){return!!e[r.experimentalOpenTelemetryValues.SYNTHETIC_TYPE]}})),nL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MessageBusDestination=e.MicrosoftEventHub=e.AzNamespace=void 0,e.AzNamespace=`az.namespace`,e.MicrosoftEventHub=`Microsoft.EventHub`,e.MessageBusDestination=`message_bus.destination`})),rL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.parseEventHubSpan=void 0;let t=(Jd(),d(Kd)),n=uN(),r=(PA(),d(NA)),i=Uj(),a=nL(),o=e=>{let t=0,r=0,a=(0,n.hrTimeToMilliseconds)(e.startTime);return e.links.forEach(({attributes:e})=>{let n=e?.[i.ENQUEUED_TIME];n&&(t+=1,r+=a-(parseFloat(n.toString())||0))}),Math.max(r/(t||1),0)};e.parseEventHubSpan=(e,n)=>{let s=e.attributes[a.AzNamespace],c=(e.attributes[r.SEMATTRS_NET_PEER_NAME]||e.attributes[`peer.address`]||`unknown`).replace(/\/$/g,``),l=e.attributes[a.MessageBusDestination]||`unknown`;switch(e.kind){case t.SpanKind.CLIENT:n.type=s,n.target=`${c}/${l}`;break;case t.SpanKind.PRODUCER:n.type=`Queue Message | ${s}`,n.target=`${c}/${l}`;break;case t.SpanKind.CONSUMER:n.type=`Queue Message | ${s}`,n.source=`${c}/${l}`,n.measurements=Object.assign(Object.assign({},n.measurements),{[i.TIME_SINCE_ENQUEUED]:o(e)});break;default:}}})),iL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.readableSpanToEnvelope=_,e.spanEventsToEnvelopes=v,e.getPeerIp=y,e.getLocationIp=b,e.getHttpClientIp=x,e.getUserAgent=S,e.getHttpUrl=C,e.getHttpMethod=w,e.getHttpStatusCode=T,e.getHttpScheme=E,e.getHttpTarget=D,e.getHttpHost=O,e.getNetPeerName=k,e.getNetPeerPort=A;let t=uN(),n=(Jd(),d(Kd)),r=(PA(),d(NA)),i=tL(),a=dN(),o=rL(),s=Uj(),c=nL(),l=qF(),u=JI();function f(e){let t=(0,i.createTagsFromResource)(e.resource);t[l.KnownContextTagKeys.AiOperationId]=e.spanContext().traceId,e.parentSpanContext?.spanId&&(t[l.KnownContextTagKeys.AiOperationParentId]=e.parentSpanContext.spanId);let o=e.attributes[r.SEMATTRS_ENDUSER_ID];o&&(t[l.KnownContextTagKeys.AiUserId]=String(o));let s=S(e.attributes);if(s&&(t[`ai.user.userAgent`]=String(s)),(0,i.isSyntheticSource)(e.attributes)&&(t[l.KnownContextTagKeys.AiOperationSyntheticSource]=`True`),e.kind===n.SpanKind.SERVER){let n=w(e.attributes);if(b(t,e.attributes),n){let i=e.attributes[r.ATTR_HTTP_ROUTE],o=C(e.attributes);if(t[l.KnownContextTagKeys.AiOperationName]=e.name,i)t[l.KnownContextTagKeys.AiOperationName]=String(`${n} ${i}`).substring(0,a.MaxPropertyLengths.TEN_BIT);else if(o)try{let e=new URL(String(o));t[l.KnownContextTagKeys.AiOperationName]=String(`${n} ${e.pathname}`).substring(0,a.MaxPropertyLengths.TEN_BIT)}catch{}}else t[l.KnownContextTagKeys.AiOperationName]=e.name}else e.attributes[l.KnownContextTagKeys.AiOperationName]&&(t[l.KnownContextTagKeys.AiOperationName]=e.attributes[l.KnownContextTagKeys.AiOperationName]);return t}function p(e){let t={};if(e)for(let n of Object.keys(e))n.startsWith(`_MS.`)&&!a.internalMicrosoftAttributes.includes(n)||n.startsWith(`microsoft.`)||a.legacySemanticValues.includes(n)||a.httpSemanticValues.includes(n)||n===l.KnownContextTagKeys.AiOperationName||(t[n]=(0,i.serializeAttribute)(e[n]));return t}function m(e){let t=p(e.attributes),n={},r=e.links.map(e=>({operation_Id:e.context.traceId,id:e.context.spanId}));return r.length>0&&(t[s.MS_LINKS]=JSON.stringify(r)),[t,n]}function h(e){let a={name:e.name,id:`${e.spanContext().spanId}`,success:e.status?.code!==n.SpanStatusCode.ERROR,resultCode:`0`,type:`Dependency`,duration:(0,u.msToTimeSpan)((0,t.hrTimeToMilliseconds)(e.duration)),version:2};e.kind===n.SpanKind.PRODUCER&&(a.type=s.DependencyTypes.QueueMessage),e.kind===n.SpanKind.INTERNAL&&e.parentSpanContext&&(a.type=s.DependencyTypes.InProc);let o=w(e.attributes),c=e.attributes[r.SEMATTRS_DB_SYSTEM],l=e.attributes[r.SEMATTRS_RPC_SYSTEM];if(o){let t=C(e.attributes);if(t)try{a.name=`${o} ${new URL(String(t)).pathname}`}catch{}a.type=s.DependencyTypes.Http,a.data=(0,i.getUrl)(e.attributes);let n=T(e.attributes);n&&(a.resultCode=String(n));let r=(0,i.getDependencyTarget)(e.attributes);if(r){try{let e=new RegExp(/(https?)(:\/\/.*)(:\d+)(\S*)/).exec(r);if(e!==null){let t=e[1],n=e[3];(t===`https`&&n===`:443`||t===`http`&&n===`:80`)&&(r=e[1]+e[2]+e[4])}}catch{}a.target=`${r}`}}else if(c){String(c)===r.DBSYSTEMVALUES_MYSQL?a.type=`mysql`:String(c)===r.DBSYSTEMVALUES_POSTGRESQL?a.type=`postgresql`:String(c)===r.DBSYSTEMVALUES_MONGODB?a.type=`mongodb`:String(c)===r.DBSYSTEMVALUES_REDIS?a.type=`redis`:(0,i.isSqlDB)(String(c))?a.type=`SQL`:a.type=String(c);let t=e.attributes[r.SEMATTRS_DB_STATEMENT],n=e.attributes[r.SEMATTRS_DB_OPERATION];t?a.data=String(t):n&&(a.data=String(n));let o=(0,i.getDependencyTarget)(e.attributes),s=e.attributes[r.SEMATTRS_DB_NAME];o?a.target=s?`${o}|${s}`:`${o}`:a.target=s?`${s}`:`${c}`}else if(l){l===s.DependencyTypes.Wcf?a.type=s.DependencyTypes.Wcf:a.type=s.DependencyTypes.Grpc;let t=e.attributes[r.SEMATTRS_RPC_GRPC_STATUS_CODE];t&&(a.resultCode=String(t));let n=(0,i.getDependencyTarget)(e.attributes);n?a.target=`${n}`:l&&(a.target=String(l))}return a}function g(e){let a={id:`${e.spanContext().spanId}`,success:e.status.code!==n.SpanStatusCode.ERROR&&(Number(T(e.attributes))||0)<400,responseCode:`0`,duration:(0,u.msToTimeSpan)((0,t.hrTimeToMilliseconds)(e.duration)),version:2,source:void 0},o=w(e.attributes),s=e.attributes[r.SEMATTRS_RPC_GRPC_STATUS_CODE];if(o){a.url=(0,i.getUrl)(e.attributes);let t=T(e.attributes);t&&(a.responseCode=String(t))}else s&&(a.responseCode=String(s));return a}function _(e,t){let r,u,d,p=(0,i.hrTimeToDate)(e.startTime),_=t,v=f(e),[y,b]=m(e);switch(e.kind){case n.SpanKind.CLIENT:case n.SpanKind.PRODUCER:case n.SpanKind.INTERNAL:r=`Microsoft.ApplicationInsights.RemoteDependency`,u=`RemoteDependencyData`,d=h(e);break;case n.SpanKind.SERVER:case n.SpanKind.CONSUMER:r=`Microsoft.ApplicationInsights.Request`,u=`RequestData`,d=g(e),d.name=v[l.KnownContextTagKeys.AiOperationName];break;default:throw n.diag.error(`Unsupported span kind ${e.kind}`),Error(`Unsupported span kind ${e.kind}`)}let x=100;if(e.attributes[s.AzureMonitorSampleRate]&&(x=Number(e.attributes[s.AzureMonitorSampleRate])),e.attributes[c.AzNamespace]&&(e.kind===n.SpanKind.INTERNAL&&(d.type=`${s.DependencyTypes.InProc} | ${e.attributes[c.AzNamespace]}`),e.attributes[c.AzNamespace]===c.MicrosoftEventHub&&(0,o.parseEventHubSpan)(e,d)),d.id&&=d.id.substring(0,a.MaxPropertyLengths.NINE_BIT),d.name&&=d.name.substring(0,a.MaxPropertyLengths.TEN_BIT),d.resultCode&&=String(d.resultCode).substring(0,a.MaxPropertyLengths.TEN_BIT),d.data&&=String(d.data).substring(0,a.MaxPropertyLengths.THIRTEEN_BIT),d.type&&=String(d.type).substring(0,a.MaxPropertyLengths.TEN_BIT),d.target&&=String(d.target).substring(0,a.MaxPropertyLengths.TEN_BIT),d.properties)for(let e of Object.keys(d.properties))d.properties[e]=d.properties[e].substring(0,a.MaxPropertyLengths.THIRTEEN_BIT);return{name:r,sampleRate:x,time:p,instrumentationKey:_,tags:v,version:1,data:{baseType:u,baseData:Object.assign(Object.assign({},d),{properties:y,measurements:b})}}}function v(e,t){let n=[];return e.events&&e.events.forEach(o=>{let c,u=(0,i.hrTimeToDate)(o.time),d=``,f,m=p(o.attributes),h=(0,i.createTagsFromResource)(e.resource);h[l.KnownContextTagKeys.AiOperationId]=e.spanContext().traceId;let g=e.spanContext().spanId;if(g&&(h[l.KnownContextTagKeys.AiOperationParentId]=g),o.name===`exception`){d=`Microsoft.ApplicationInsights.Exception`,c=`ExceptionData`;let e=``,t=`Exception`,n=``,i=!1;if(o.attributes){e=String(o.attributes[r.SEMATTRS_EXCEPTION_TYPE]),n=String(o.attributes[r.SEMATTRS_EXCEPTION_STACKTRACE]),n&&(i=!0);let a=o.attributes[r.SEMATTRS_EXCEPTION_MESSAGE];a&&(t=String(a));let s=o.attributes[r.SEMATTRS_EXCEPTION_ESCAPED];s!==void 0&&(m[r.SEMATTRS_EXCEPTION_ESCAPED]=String(s))}f={exceptions:[{typeName:e,message:t,stack:n,hasFullStack:i}],version:2,properties:m}}else d=`Microsoft.ApplicationInsights.Message`,c=`MessageData`,f={message:o.name,version:2,properties:m};let _=100;if(e.attributes[s.AzureMonitorSampleRate]&&(_=Number(e.attributes[s.AzureMonitorSampleRate])),f.message&&=String(f.message).substring(0,a.MaxPropertyLengths.FIFTEEN_BIT),f.properties)for(let e of Object.keys(f.properties))f.properties[e]=f.properties[e].substring(0,a.MaxPropertyLengths.THIRTEEN_BIT);let v={name:d,time:u,instrumentationKey:t,version:1,sampleRate:_,data:{baseType:c,baseData:f},tags:h};n.push(v)}),n}function y(e){if(e)return e[r.ATTR_NETWORK_PEER_ADDRESS]||e[r.SEMATTRS_NET_PEER_IP]}function b(e,t){if(t){let n=x(t),r=y(t);n?e[l.KnownContextTagKeys.AiLocationIp]=String(n):r&&(e[l.KnownContextTagKeys.AiLocationIp]=String(r))}}function x(e){if(e)return e[r.ATTR_CLIENT_ADDRESS]||e[r.SEMATTRS_HTTP_CLIENT_IP]}function S(e){if(e)return e[r.ATTR_USER_AGENT_ORIGINAL]||e[r.SEMATTRS_HTTP_USER_AGENT]}function C(e){if(e)return e[r.ATTR_URL_FULL]||e[r.SEMATTRS_HTTP_URL]}function w(e){if(e)return e[r.ATTR_HTTP_REQUEST_METHOD]||e[r.SEMATTRS_HTTP_METHOD]}function T(e){if(e)return e[r.ATTR_HTTP_RESPONSE_STATUS_CODE]||e[r.SEMATTRS_HTTP_STATUS_CODE]}function E(e){if(e)return e[r.ATTR_URL_SCHEME]||e[r.SEMATTRS_HTTP_SCHEME]}function D(e){if(e)return e[r.ATTR_URL_PATH]?e[r.ATTR_URL_PATH]:e[r.ATTR_URL_QUERY]?e[r.ATTR_URL_QUERY]:e[r.SEMATTRS_HTTP_TARGET]}function O(e){if(e)return e[r.ATTR_SERVER_ADDRESS]||e[r.SEMATTRS_HTTP_HOST]}function k(e){if(e)return e[r.ATTR_CLIENT_ADDRESS]||e[r.SEMATTRS_NET_PEER_NAME]}function A(e){if(e)return e[r.ATTR_CLIENT_PORT]||e[r.ATTR_SERVER_PORT]||e[r.SEMATTRS_NET_PEER_PORT]}})),aL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AzureMonitorTraceExporter=void 0;let t=(Jd(),d(Kd)),n=uN(),r=MM(),i=iL(),a=tL(),o=eL();e.AzureMonitorTraceExporter=class extends r.AzureMonitorBaseExporter{constructor(e={}){super(e),this.isShutdown=!1,this.shouldCreateResourceMetric=(0,a.shouldCreateResourceMetric)(),this.sender=new o.HttpSender({endpointUrl:this.endpointUrl,instrumentationKey:this.instrumentationKey,trackStatsbeat:this.trackStatsbeat,exporterOptions:e,aadAudience:this.aadAudience}),t.diag.debug(`AzureMonitorTraceExporter was successfully setup`)}async export(e,r){if(this.isShutdown){t.diag.info(`Exporter shut down. Failed to export spans.`),setTimeout(()=>r({code:n.ExportResultCode.FAILED}),0);return}if(t.diag.info(`Exporting ${e.length} span(s). Converting to envelopes...`),e.length>0){let t=[],n=(0,a.createResourceMetricEnvelope)(e[0].resource,this.instrumentationKey);n&&this.shouldCreateResourceMetric&&t.push(n),e.forEach(e=>{t.push((0,i.readableSpanToEnvelope)(e,this.instrumentationKey));let n=(0,i.spanEventsToEnvelopes)(e,this.instrumentationKey);n.length>0&&t.push(...n)}),r(await this.sender.exportEnvelopes(t))}r({code:n.ExportResultCode.SUCCESS})}async shutdown(){return this.isShutdown=!0,t.diag.info(`AzureMonitorTraceExporter shutting down`),this.sender.shutdown()}}})),oL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AzureMonitorMetricExporter=void 0;let t=(Jd(),d(Kd)),n=VI(),r=uN(),i=MM(),a=WI(),o=eL();e.AzureMonitorMetricExporter=class extends i.AzureMonitorBaseExporter{constructor(e={}){super(e),this._isShutdown=!1,this._sender=new o.HttpSender({endpointUrl:this.endpointUrl,instrumentationKey:this.instrumentationKey,trackStatsbeat:this.trackStatsbeat,exporterOptions:e,aadAudience:this.aadAudience}),t.diag.debug(`AzureMonitorMetricExporter was successfully setup`)}async export(e,n){if(this._isShutdown){t.diag.info(`Exporter shut down. Failed to export spans.`),setTimeout(()=>n({code:r.ExportResultCode.FAILED}),0);return}t.diag.info(`Exporting ${e.scopeMetrics.length} metrics(s). Converting to envelopes...`);let i=(0,a.resourceMetricsToEnvelope)(e,this.instrumentationKey);await t.context.with((0,r.suppressTracing)(t.context.active()),async()=>{n(await this._sender.exportEnvelopes(i))})}async shutdown(){return this._isShutdown=!0,t.diag.info(`AzureMonitorMetricExporter shutting down`),this._sender.shutdown()}selectAggregationTemporality(e){return e===n.InstrumentType.UP_DOWN_COUNTER||e===n.InstrumentType.OBSERVABLE_UP_DOWN_COUNTER?n.AggregationTemporality.CUMULATIVE:n.AggregationTemporality.DELTA}async forceFlush(){return Promise.resolve()}}})),sL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.logToEnvelope=c;let t=qF(),n=tL(),r=(PA(),d(NA)),i=dN(),a=(Jd(),d(Kd)),o=Uj(),s=iL();function c(e,t){let a=(0,n.hrTimeToDate)(e.hrTime),s=t,c=l(e),[d,g]=u(e),_,v,y,b=e.attributes[r.ATTR_EXCEPTION_STACKTRACE],x=e.attributes[r.ATTR_EXCEPTION_TYPE],S=!!(x&&b)||!1,C=!e.attributes[o.ApplicationInsightsBaseType]&&!e.attributes[o.ApplicationInsightsCustomEventName]&&!x;if(S){let t=e.attributes[r.ATTR_EXCEPTION_MESSAGE];_=o.ApplicationInsightsExceptionName,v=o.ApplicationInsightsExceptionBaseType,y={exceptions:[{typeName:String(x),message:String(t),hasFullStack:!!b,stack:String(b)}],severityLevel:String(f(e.severityNumber)),version:2}}else if(e.attributes[o.ApplicationInsightsCustomEventName])_=o.ApplicationInsightsEventName,v=o.ApplicationInsightsEventBaseType,y={name:String(e.attributes[o.ApplicationInsightsCustomEventName]),version:2},g=m(e);else if(C)_=o.ApplicationInsightsMessageName,v=o.ApplicationInsightsMessageBaseType,y={message:String(e.body),severityLevel:String(f(e.severityNumber)),version:2};else if(v=String(e.attributes[o.ApplicationInsightsBaseType]),_=p(e),y=h(e),g=m(e),!y)return;if(y.message&&=String(y.message).substring(0,i.MaxPropertyLengths.FIFTEEN_BIT),d)for(let e of Object.keys(d))d[e]=String(d[e]).substring(0,i.MaxPropertyLengths.THIRTEEN_BIT);return{name:_,sampleRate:100,time:a,instrumentationKey:s,tags:c,version:1,data:{baseType:v,baseData:Object.assign(Object.assign({},y),{properties:d,measurements:g})}}}function l(e){let r=(0,n.createTagsFromResource)(e.resource);return e.spanContext?.traceId&&(r[t.KnownContextTagKeys.AiOperationId]=e.spanContext.traceId),e.spanContext?.spanId&&(r[t.KnownContextTagKeys.AiOperationParentId]=e.spanContext.spanId),e.attributes[t.KnownContextTagKeys.AiOperationName]&&(r[t.KnownContextTagKeys.AiOperationName]=e.attributes[t.KnownContextTagKeys.AiOperationName]),(0,n.isSyntheticSource)(e.attributes)&&(r[t.KnownContextTagKeys.AiOperationSyntheticSource]=`True`),(0,s.getLocationIp)(r,e.attributes),r}function u(e){let r={},a={};if(e.attributes)for(let r of Object.keys(e.attributes))r.startsWith(`_MS.`)||r.startsWith(`microsoft`)||i.legacySemanticValues.includes(r)||i.httpSemanticValues.includes(r)||r===t.KnownContextTagKeys.AiOperationName||(a[r]=(0,n.serializeAttribute)(e.attributes[r]));return[a,r]}function f(e){if(e){if(e>0&&e<9)return t.KnownSeverityLevel.Verbose;if(e>=9&&e<13)return t.KnownSeverityLevel.Information;if(e>=13&&e<17)return t.KnownSeverityLevel.Warning;if(e>=17&&e<21)return t.KnownSeverityLevel.Error;if(e>=21&&e<25)return t.KnownSeverityLevel.Critical}}function p(e){let t=``;switch(e.attributes[o.ApplicationInsightsBaseType]){case o.ApplicationInsightsAvailabilityBaseType:t=o.ApplicationInsightsAvailabilityName;break;case o.ApplicationInsightsExceptionBaseType:t=o.ApplicationInsightsExceptionName;break;case o.ApplicationInsightsMessageBaseType:t=o.ApplicationInsightsMessageName;break;case o.ApplicationInsightsPageViewBaseType:t=o.ApplicationInsightsPageViewName;break;case o.ApplicationInsightsEventBaseType:t=o.ApplicationInsightsEventName;break}return t}function m(e){let t={};return e.body?.measurements&&(t=Object.assign({},e.body.measurements)),t}function h(e){let t={version:2};if(e.body)try{switch(e.attributes[o.ApplicationInsightsBaseType]){case o.ApplicationInsightsAvailabilityBaseType:t=e.body;break;case o.ApplicationInsightsExceptionBaseType:t=e.body;break;case o.ApplicationInsightsMessageBaseType:t=e.body;break;case o.ApplicationInsightsPageViewBaseType:t=e.body;break;case o.ApplicationInsightsEventBaseType:t=e.body;break}typeof t?.message==`object`&&(t.message=JSON.stringify(t.message))}catch{a.diag.error(`AzureMonitorLogExporter failed to parse Application Insights Telemetry`)}return t}})),cL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AzureMonitorLogExporter=void 0;let t=(Jd(),d(Kd)),n=uN(),r=MM(),i=sL(),a=eL();e.AzureMonitorLogExporter=class extends r.AzureMonitorBaseExporter{constructor(e={}){super(e),this._isShutdown=!1,this._sender=new a.HttpSender({endpointUrl:this.endpointUrl,instrumentationKey:this.instrumentationKey,trackStatsbeat:this.trackStatsbeat,exporterOptions:e,aadAudience:this.aadAudience}),t.diag.debug(`AzureMonitorLogExporter was successfully setup`)}async export(e,r){if(this._isShutdown){t.diag.info(`Exporter shut down. Failed to export spans.`),setTimeout(()=>r({code:n.ExportResultCode.FAILED}),0);return}t.diag.info(`Exporting ${e.length} logs(s). Converting to envelopes...`);let a=[];e.forEach(e=>{let t=(0,i.logToEnvelope)(e,this.instrumentationKey);t&&a.push(t)}),await t.context.with((0,n.suppressTracing)(t.context.active()),async()=>{r(await this._sender.exportEnvelopes(a))})}async shutdown(){return this._isShutdown=!0,t.diag.info(`AzureMonitorLogExporter shutting down`),this._sender.shutdown()}}})),lL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AI_OPERATION_NAME=e.ServiceApiVersion=e.AzureMonitorLogExporter=e.AzureMonitorMetricExporter=e.AzureMonitorTraceExporter=e.AzureMonitorBaseExporter=e.ApplicationInsightsSampler=void 0;var t=Wj();Object.defineProperty(e,`ApplicationInsightsSampler`,{enumerable:!0,get:function(){return t.ApplicationInsightsSampler}});var n=MM();Object.defineProperty(e,`AzureMonitorBaseExporter`,{enumerable:!0,get:function(){return n.AzureMonitorBaseExporter}});var r=aL();Object.defineProperty(e,`AzureMonitorTraceExporter`,{enumerable:!0,get:function(){return r.AzureMonitorTraceExporter}});var i=oL();Object.defineProperty(e,`AzureMonitorMetricExporter`,{enumerable:!0,get:function(){return i.AzureMonitorMetricExporter}});var a=cL();Object.defineProperty(e,`AzureMonitorLogExporter`,{enumerable:!0,get:function(){return a.AzureMonitorLogExporter}});var o=AM();Object.defineProperty(e,`ServiceApiVersion`,{enumerable:!0,get:function(){return o.ServiceApiVersion}});var s=AM();Object.defineProperty(e,`AI_OPERATION_NAME`,{enumerable:!0,get:function(){return s.AI_OPERATION_NAME}})})),uL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isTracingSuppressed=e.unsuppressTracing=e.suppressTracing=void 0;let t=(0,(Jd(),d(Kd)).createContextKey)(`OpenTelemetry SDK Context Key SUPPRESS_TRACING`);function n(e){return e.setValue(t,!0)}e.suppressTracing=n;function r(e){return e.deleteValue(t)}e.unsuppressTracing=r;function i(e){return e.getValue(t)===!0}e.isTracingSuppressed=i})),dL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BAGGAGE_MAX_TOTAL_LENGTH=e.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=e.BAGGAGE_MAX_NAME_VALUE_PAIRS=e.BAGGAGE_HEADER=e.BAGGAGE_ITEMS_SEPARATOR=e.BAGGAGE_PROPERTIES_SEPARATOR=e.BAGGAGE_KEY_PAIR_SEPARATOR=void 0,e.BAGGAGE_KEY_PAIR_SEPARATOR=`=`,e.BAGGAGE_PROPERTIES_SEPARATOR=`;`,e.BAGGAGE_ITEMS_SEPARATOR=`,`,e.BAGGAGE_HEADER=`baggage`,e.BAGGAGE_MAX_NAME_VALUE_PAIRS=180,e.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096,e.BAGGAGE_MAX_TOTAL_LENGTH=8192})),fL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.parseKeyPairsIntoRecord=e.parsePairKeyValue=e.getKeyPairs=e.serializeKeyPairs=void 0;let t=(Jd(),d(Kd)),n=dL();function r(e){return e.reduce((e,t)=>{let r=`${e}${e===``?``:n.BAGGAGE_ITEMS_SEPARATOR}${t}`;return r.length>n.BAGGAGE_MAX_TOTAL_LENGTH?e:r},``)}e.serializeKeyPairs=r;function i(e){return e.getAllEntries().map(([e,t])=>{let r=`${encodeURIComponent(e)}=${encodeURIComponent(t.value)}`;return t.metadata!==void 0&&(r+=n.BAGGAGE_PROPERTIES_SEPARATOR+t.metadata.toString()),r})}e.getKeyPairs=i;function a(e){let r=e.split(n.BAGGAGE_PROPERTIES_SEPARATOR);if(r.length<=0)return;let i=r.shift();if(!i)return;let a=i.indexOf(n.BAGGAGE_KEY_PAIR_SEPARATOR);if(a<=0)return;let o=decodeURIComponent(i.substring(0,a).trim()),s=decodeURIComponent(i.substring(a+1).trim()),c;return r.length>0&&(c=(0,t.baggageEntryMetadataFromString)(r.join(n.BAGGAGE_PROPERTIES_SEPARATOR))),{key:o,value:s,metadata:c}}e.parsePairKeyValue=a;function o(e){let t={};return typeof e==`string`&&e.length>0&&e.split(n.BAGGAGE_ITEMS_SEPARATOR).forEach(e=>{let n=a(e);n!==void 0&&n.value.length>0&&(t[n.key]=n.value)}),t}e.parseKeyPairsIntoRecord=o})),pL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.W3CBaggagePropagator=void 0;let t=(Jd(),d(Kd)),n=uL(),r=dL(),i=fL();e.W3CBaggagePropagator=class{inject(e,a,o){let s=t.propagation.getBaggage(e);if(!s||(0,n.isTracingSuppressed)(e))return;let c=(0,i.getKeyPairs)(s).filter(e=>e.length<=r.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,r.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,i.serializeKeyPairs)(c);l.length>0&&o.set(a,r.BAGGAGE_HEADER,l)}extract(e,n,a){let o=a.get(n,r.BAGGAGE_HEADER),s=Array.isArray(o)?o.join(r.BAGGAGE_ITEMS_SEPARATOR):o;if(!s)return e;let c={};return s.length===0||(s.split(r.BAGGAGE_ITEMS_SEPARATOR).forEach(e=>{let t=(0,i.parsePairKeyValue)(e);if(t){let e={value:t.value};t.metadata&&(e.metadata=t.metadata),c[t.key]=e}}),Object.entries(c).length===0)?e:t.propagation.setBaggage(e,t.propagation.createBaggage(c))}fields(){return[r.BAGGAGE_HEADER]}}})),mL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AnchoredClock=void 0,e.AnchoredClock=class{_monotonicClock;_epochMillis;_performanceMillis;constructor(e,t){this._monotonicClock=t,this._epochMillis=e.now(),this._performanceMillis=t.now()}now(){let e=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+e}}})),hL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isAttributeValue=e.isAttributeKey=e.sanitizeAttributes=void 0;let t=(Jd(),d(Kd));function n(e){let n={};if(typeof e!=`object`||!e)return n;for(let[a,o]of Object.entries(e)){if(!r(a)){t.diag.warn(`Invalid attribute key: ${a}`);continue}if(!i(o)){t.diag.warn(`Invalid attribute value set for key: ${a}`);continue}Array.isArray(o)?n[a]=o.slice():n[a]=o}return n}e.sanitizeAttributes=n;function r(e){return typeof e==`string`&&e.length>0}e.isAttributeKey=r;function i(e){return e==null?!0:Array.isArray(e)?a(e):o(e)}e.isAttributeValue=i;function a(e){let t;for(let n of e)if(n!=null){if(!t){if(o(n)){t=typeof n;continue}return!1}if(typeof n!==t)return!1}return!0}function o(e){switch(typeof e){case`number`:case`boolean`:case`string`:return!0}return!1}})),gL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.loggingErrorHandler=void 0;let t=(Jd(),d(Kd));function n(){return e=>{t.diag.error(r(e))}}e.loggingErrorHandler=n;function r(e){return typeof e==`string`?e:JSON.stringify(i(e))}function i(e){let t={},n=e;for(;n!==null;)Object.getOwnPropertyNames(n).forEach(e=>{if(t[e])return;let r=n[e];r&&(t[e]=String(r))}),n=Object.getPrototypeOf(n);return t}})),_L=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.globalErrorHandler=e.setGlobalErrorHandler=void 0;let t=(0,gL().loggingErrorHandler)();function n(e){t=e}e.setGlobalErrorHandler=n;function r(e){try{t(e)}catch{}}e.globalErrorHandler=r})),see=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.getStringListFromEnv=e.getBooleanFromEnv=e.getStringFromEnv=e.getNumberFromEnv=void 0;let t=(Jd(),d(Kd)),n=require(`util`);function r(e){let r=process.env[e];if(r==null||r.trim()===``)return;let i=Number(r);if(isNaN(i)){t.diag.warn(`Unknown value ${(0,n.inspect)(r)} for ${e}, expected a number, using defaults`);return}return i}e.getNumberFromEnv=r;function i(e){let t=process.env[e];if(!(t==null||t.trim()===``))return t}e.getStringFromEnv=i;function a(e){let r=process.env[e]?.trim().toLowerCase();return r==null||r===``?!1:r===`true`?!0:(r===`false`||t.diag.warn(`Unknown value ${(0,n.inspect)(r)} for ${e}, expected 'true' or 'false', falling back to 'false' (default)`),!1)}e.getBooleanFromEnv=a;function o(e){return i(e)?.split(`,`).map(e=>e.trim()).filter(e=>e!==``)}e.getStringListFromEnv=o})),vL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e._globalThis=void 0,e._globalThis=typeof globalThis==`object`?globalThis:global})),yL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.otperformance=void 0,e.otperformance=require(`perf_hooks`).performance})),bL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.VERSION=void 0,e.VERSION=`2.1.0`})),xL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ATTR_PROCESS_RUNTIME_NAME=void 0,e.ATTR_PROCESS_RUNTIME_NAME=`process.runtime.name`})),SL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.SDK_INFO=void 0;let t=bL(),n=(PA(),d(NA)),r=xL();e.SDK_INFO={[n.ATTR_TELEMETRY_SDK_NAME]:`opentelemetry`,[r.ATTR_PROCESS_RUNTIME_NAME]:`node`,[n.ATTR_TELEMETRY_SDK_LANGUAGE]:n.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS,[n.ATTR_TELEMETRY_SDK_VERSION]:t.VERSION}})),CL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.unrefTimer=void 0;function t(e){e.unref()}e.unrefTimer=t})),wL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.unrefTimer=e.SDK_INFO=e.otperformance=e._globalThis=e.getStringListFromEnv=e.getNumberFromEnv=e.getBooleanFromEnv=e.getStringFromEnv=void 0;var t=see();Object.defineProperty(e,`getStringFromEnv`,{enumerable:!0,get:function(){return t.getStringFromEnv}}),Object.defineProperty(e,`getBooleanFromEnv`,{enumerable:!0,get:function(){return t.getBooleanFromEnv}}),Object.defineProperty(e,`getNumberFromEnv`,{enumerable:!0,get:function(){return t.getNumberFromEnv}}),Object.defineProperty(e,`getStringListFromEnv`,{enumerable:!0,get:function(){return t.getStringListFromEnv}});var n=vL();Object.defineProperty(e,`_globalThis`,{enumerable:!0,get:function(){return n._globalThis}});var r=yL();Object.defineProperty(e,`otperformance`,{enumerable:!0,get:function(){return r.otperformance}});var i=SL();Object.defineProperty(e,`SDK_INFO`,{enumerable:!0,get:function(){return i.SDK_INFO}});var a=CL();Object.defineProperty(e,`unrefTimer`,{enumerable:!0,get:function(){return a.unrefTimer}})})),TL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.getStringListFromEnv=e.getNumberFromEnv=e.getStringFromEnv=e.getBooleanFromEnv=e.unrefTimer=e.otperformance=e._globalThis=e.SDK_INFO=void 0;var t=wL();Object.defineProperty(e,`SDK_INFO`,{enumerable:!0,get:function(){return t.SDK_INFO}}),Object.defineProperty(e,`_globalThis`,{enumerable:!0,get:function(){return t._globalThis}}),Object.defineProperty(e,`otperformance`,{enumerable:!0,get:function(){return t.otperformance}}),Object.defineProperty(e,`unrefTimer`,{enumerable:!0,get:function(){return t.unrefTimer}}),Object.defineProperty(e,`getBooleanFromEnv`,{enumerable:!0,get:function(){return t.getBooleanFromEnv}}),Object.defineProperty(e,`getStringFromEnv`,{enumerable:!0,get:function(){return t.getStringFromEnv}}),Object.defineProperty(e,`getNumberFromEnv`,{enumerable:!0,get:function(){return t.getNumberFromEnv}}),Object.defineProperty(e,`getStringListFromEnv`,{enumerable:!0,get:function(){return t.getStringListFromEnv}})})),EL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.addHrTimes=e.isTimeInput=e.isTimeInputHrTime=e.hrTimeToMicroseconds=e.hrTimeToMilliseconds=e.hrTimeToNanoseconds=e.hrTimeToTimeStamp=e.hrTimeDuration=e.timeInputToHrTime=e.hrTime=e.getTimeOrigin=e.millisToHrTime=void 0;let t=TL(),n=10**6,r=10**9;function i(e){let t=e/1e3;return[Math.trunc(t),Math.round(e%1e3*n)]}e.millisToHrTime=i;function a(){let e=t.otperformance.timeOrigin;if(typeof e!=`number`){let n=t.otperformance;e=n.timing&&n.timing.fetchStart}return e}e.getTimeOrigin=a;function o(e){return h(i(a()),i(typeof e==`number`?e:t.otperformance.now()))}e.hrTime=o;function s(e){if(p(e))return e;if(typeof e==`number`)return e<a()?o(e):i(e);if(e instanceof Date)return i(e.getTime());throw TypeError(`Invalid input type`)}e.timeInputToHrTime=s;function c(e,t){let n=t[0]-e[0],i=t[1]-e[1];return i<0&&(--n,i+=r),[n,i]}e.hrTimeDuration=c;function l(e){let t=`${`0`.repeat(9)}${e[1]}Z`,n=t.substring(t.length-9-1);return new Date(e[0]*1e3).toISOString().replace(`000Z`,n)}e.hrTimeToTimeStamp=l;function u(e){return e[0]*r+e[1]}e.hrTimeToNanoseconds=u;function d(e){return e[0]*1e3+e[1]/1e6}e.hrTimeToMilliseconds=d;function f(e){return e[0]*1e6+e[1]/1e3}e.hrTimeToMicroseconds=f;function p(e){return Array.isArray(e)&&e.length===2&&typeof e[0]==`number`&&typeof e[1]==`number`}e.isTimeInputHrTime=p;function m(e){return p(e)||typeof e==`number`||e instanceof Date}e.isTimeInput=m;function h(e,t){let n=[e[0]+t[0],e[1]+t[1]];return n[1]>=r&&(n[1]-=r,n[0]+=1),n}e.addHrTimes=h})),DL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ExportResultCode=void 0,(function(e){e[e.SUCCESS=0]=`SUCCESS`,e[e.FAILED=1]=`FAILED`})(e.ExportResultCode||={})})),OL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.CompositePropagator=void 0;let t=(Jd(),d(Kd));e.CompositePropagator=class{_propagators;_fields;constructor(e={}){this._propagators=e.propagators??[],this._fields=Array.from(new Set(this._propagators.map(e=>typeof e.fields==`function`?e.fields():[]).reduce((e,t)=>e.concat(t),[])))}inject(e,n,r){for(let i of this._propagators)try{i.inject(e,n,r)}catch(e){t.diag.warn(`Failed to inject with ${i.constructor.name}. Err: ${e.message}`)}}extract(e,n,r){return this._propagators.reduce((e,i)=>{try{return i.extract(e,n,r)}catch(e){t.diag.warn(`Failed to extract with ${i.constructor.name}. Err: ${e.message}`)}return e},e)}fields(){return this._fields.slice()}}})),kL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.validateValue=e.validateKey=void 0;let t=`[_0-9a-z-*/]`,n=`[a-z]${t}{0,255}`,r=`[a-z0-9]${t}{0,240}@[a-z]${t}{0,13}`,i=RegExp(`^(?:${n}|${r})$`),a=/^[ -~]{0,255}[!-~]$/,o=/,|=/;function s(e){return i.test(e)}e.validateKey=s;function c(e){return a.test(e)&&!o.test(e)}e.validateValue=c})),AL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.TraceState=void 0;let t=kL();e.TraceState=class e{_internalState=new Map;constructor(e){e&&this._parse(e)}set(e,t){let n=this._clone();return n._internalState.has(e)&&n._internalState.delete(e),n._internalState.set(e,t),n}unset(e){let t=this._clone();return t._internalState.delete(e),t}get(e){return this._internalState.get(e)}serialize(){return this._keys().reduce((e,t)=>(e.push(t+`=`+this.get(t)),e),[]).join(`,`)}_parse(e){e.length>512||(this._internalState=e.split(`,`).reverse().reduce((e,n)=>{let r=n.trim(),i=r.indexOf(`=`);if(i!==-1){let a=r.slice(0,i),o=r.slice(i+1,n.length);(0,t.validateKey)(a)&&(0,t.validateValue)(o)&&e.set(a,o)}return e},new Map),this._internalState.size>32&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,32))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}}})),jL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.W3CTraceContextPropagator=e.parseTraceParent=e.TRACE_STATE_HEADER=e.TRACE_PARENT_HEADER=void 0;let t=(Jd(),d(Kd)),n=uL(),r=AL();e.TRACE_PARENT_HEADER=`traceparent`,e.TRACE_STATE_HEADER=`tracestate`;let i=RegExp(`^\\s?((?!ff)[\\da-f]{2})-((?![0]{32})[\\da-f]{32})-((?![0]{16})[\\da-f]{16})-([\\da-f]{2})(-.*)?\\s?$`);function a(e){let t=i.exec(e);return!t||t[1]===`00`&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}e.parseTraceParent=a,e.W3CTraceContextPropagator=class{inject(r,i,a){let o=t.trace.getSpanContext(r);if(!o||(0,n.isTracingSuppressed)(r)||!(0,t.isSpanContextValid)(o))return;let s=`00-${o.traceId}-${o.spanId}-0${Number(o.traceFlags||t.TraceFlags.NONE).toString(16)}`;a.set(i,e.TRACE_PARENT_HEADER,s),o.traceState&&a.set(i,e.TRACE_STATE_HEADER,o.traceState.serialize())}extract(n,i,o){let s=o.get(i,e.TRACE_PARENT_HEADER);if(!s)return n;let c=Array.isArray(s)?s[0]:s;if(typeof c!=`string`)return n;let l=a(c);if(!l)return n;l.isRemote=!0;let u=o.get(i,e.TRACE_STATE_HEADER);if(u){let e=Array.isArray(u)?u.join(`,`):u;l.traceState=new r.TraceState(typeof e==`string`?e:void 0)}return t.trace.setSpanContext(n,l)}fields(){return[e.TRACE_PARENT_HEADER,e.TRACE_STATE_HEADER]}}})),ML=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.getRPCMetadata=e.deleteRPCMetadata=e.setRPCMetadata=e.RPCType=void 0;let t=(0,(Jd(),d(Kd)).createContextKey)(`OpenTelemetry SDK Context Key RPC_METADATA`);(function(e){e.HTTP=`http`})(e.RPCType||={});function n(e,n){return e.setValue(t,n)}e.setRPCMetadata=n;function r(e){return e.deleteValue(t)}e.deleteRPCMetadata=r;function i(e){return e.getValue(t)}e.getRPCMetadata=i})),NL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isPlainObject=void 0;let t=Function.prototype.toString,n=t.call(Object),r=Object.getPrototypeOf,i=Object.prototype,a=i.hasOwnProperty,o=Symbol?Symbol.toStringTag:void 0,s=i.toString;function c(e){if(!l(e)||u(e)!==`[object Object]`)return!1;let i=r(e);if(i===null)return!0;let o=a.call(i,`constructor`)&&i.constructor;return typeof o==`function`&&o instanceof o&&t.call(o)===n}e.isPlainObject=c;function l(e){return typeof e==`object`&&!!e}function u(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:o&&o in Object(e)?d(e):f(e)}function d(e){let t=a.call(e,o),n=e[o],r=!1;try{e[o]=void 0,r=!0}catch{}let i=s.call(e);return r&&(t?e[o]=n:delete e[o]),i}function f(e){return s.call(e)}})),PL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.merge=void 0;let t=NL();function n(...e){let t=e.shift(),n=new WeakMap;for(;e.length>0;)t=i(t,e.shift(),0,n);return t}e.merge=n;function r(e){return o(e)?e.slice():e}function i(e,t,n=0,d){let f;if(!(n>20)){if(n++,l(e)||l(t)||s(t))f=r(t);else if(o(e)){if(f=e.slice(),o(t))for(let e=0,n=t.length;e<n;e++)f.push(r(t[e]));else if(c(t)){let e=Object.keys(t);for(let n=0,i=e.length;n<i;n++){let i=e[n];f[i]=r(t[i])}}}else if(c(e))if(c(t)){if(!u(e,t))return t;f=Object.assign({},e);let r=Object.keys(t);for(let o=0,s=r.length;o<s;o++){let s=r[o],u=t[s];if(l(u))u===void 0?delete f[s]:f[s]=u;else{let r=f[s],o=u;if(a(e,s,d)||a(t,s,d))delete f[s];else{if(c(r)&&c(o)){let n=d.get(r)||[],i=d.get(o)||[];n.push({obj:e,key:s}),i.push({obj:t,key:s}),d.set(r,n),d.set(o,i)}f[s]=i(f[s],u,n,d)}}}}else f=t;return f}}function a(e,t,n){let r=n.get(e[t])||[];for(let n=0,i=r.length;n<i;n++){let i=r[n];if(i.key===t&&i.obj===e)return!0}return!1}function o(e){return Array.isArray(e)}function s(e){return typeof e==`function`}function c(e){return!l(e)&&!o(e)&&!s(e)&&typeof e==`object`}function l(e){return typeof e==`string`||typeof e==`number`||typeof e==`boolean`||e===void 0||e instanceof Date||e instanceof RegExp||e===null}function u(e,n){return!(!(0,t.isPlainObject)(e)||!(0,t.isPlainObject)(n))}})),FL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.callWithTimeout=e.TimeoutError=void 0;var t=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};e.TimeoutError=t;function n(e,n){let r,i=new Promise(function(e,i){r=setTimeout(function(){i(new t(`Operation timed out.`))},n)});return Promise.race([e,i]).then(e=>(clearTimeout(r),e),e=>{throw clearTimeout(r),e})}e.callWithTimeout=n})),IL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isUrlIgnored=e.urlMatches=void 0;function t(e,t){return typeof t==`string`?e===t:!!e.match(t)}e.urlMatches=t;function n(e,n){if(!n)return!1;for(let r of n)if(t(e,r))return!0;return!1}e.isUrlIgnored=n})),LL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Deferred=void 0,e.Deferred=class{_promise;_resolve;_reject;constructor(){this._promise=new Promise((e,t)=>{this._resolve=e,this._reject=t})}get promise(){return this._promise}resolve(e){this._resolve(e)}reject(e){this._reject(e)}}})),RL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BindOnceFuture=void 0;let t=LL();e.BindOnceFuture=class{_callback;_that;_isCalled=!1;_deferred=new t.Deferred;constructor(e,t){this._callback=e,this._that=t}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...e){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...e)).then(e=>this._deferred.resolve(e),e=>this._deferred.reject(e))}catch(e){this._deferred.reject(e)}}return this._deferred.promise}}})),zL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.diagLogLevelFromString=void 0;let t=(Jd(),d(Kd)),n={ALL:t.DiagLogLevel.ALL,VERBOSE:t.DiagLogLevel.VERBOSE,DEBUG:t.DiagLogLevel.DEBUG,INFO:t.DiagLogLevel.INFO,WARN:t.DiagLogLevel.WARN,ERROR:t.DiagLogLevel.ERROR,NONE:t.DiagLogLevel.NONE};function r(e){return e==null?void 0:n[e.toUpperCase()]??(t.diag.warn(`Unknown log level "${e}", expected one of ${Object.keys(n)}, using default`),t.DiagLogLevel.INFO)}e.diagLogLevelFromString=r})),BL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e._export=void 0;let t=(Jd(),d(Kd)),n=uL();function r(e,r){return new Promise(i=>{t.context.with((0,n.suppressTracing)(t.context.active()),()=>{e.export(r,e=>{i(e)})})})}e._export=r})),VL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.internal=e.diagLogLevelFromString=e.BindOnceFuture=e.urlMatches=e.isUrlIgnored=e.callWithTimeout=e.TimeoutError=e.merge=e.TraceState=e.unsuppressTracing=e.suppressTracing=e.isTracingSuppressed=e.setRPCMetadata=e.getRPCMetadata=e.deleteRPCMetadata=e.RPCType=e.parseTraceParent=e.W3CTraceContextPropagator=e.TRACE_STATE_HEADER=e.TRACE_PARENT_HEADER=e.CompositePropagator=e.unrefTimer=e.otperformance=e.getStringListFromEnv=e.getNumberFromEnv=e.getBooleanFromEnv=e.getStringFromEnv=e._globalThis=e.SDK_INFO=e.parseKeyPairsIntoRecord=e.ExportResultCode=e.timeInputToHrTime=e.millisToHrTime=e.isTimeInputHrTime=e.isTimeInput=e.hrTimeToTimeStamp=e.hrTimeToNanoseconds=e.hrTimeToMilliseconds=e.hrTimeToMicroseconds=e.hrTimeDuration=e.hrTime=e.getTimeOrigin=e.addHrTimes=e.loggingErrorHandler=e.setGlobalErrorHandler=e.globalErrorHandler=e.sanitizeAttributes=e.isAttributeValue=e.AnchoredClock=e.W3CBaggagePropagator=void 0;var t=pL();Object.defineProperty(e,`W3CBaggagePropagator`,{enumerable:!0,get:function(){return t.W3CBaggagePropagator}});var n=mL();Object.defineProperty(e,`AnchoredClock`,{enumerable:!0,get:function(){return n.AnchoredClock}});var r=hL();Object.defineProperty(e,`isAttributeValue`,{enumerable:!0,get:function(){return r.isAttributeValue}}),Object.defineProperty(e,`sanitizeAttributes`,{enumerable:!0,get:function(){return r.sanitizeAttributes}});var i=_L();Object.defineProperty(e,`globalErrorHandler`,{enumerable:!0,get:function(){return i.globalErrorHandler}}),Object.defineProperty(e,`setGlobalErrorHandler`,{enumerable:!0,get:function(){return i.setGlobalErrorHandler}});var a=gL();Object.defineProperty(e,`loggingErrorHandler`,{enumerable:!0,get:function(){return a.loggingErrorHandler}});var o=EL();Object.defineProperty(e,`addHrTimes`,{enumerable:!0,get:function(){return o.addHrTimes}}),Object.defineProperty(e,`getTimeOrigin`,{enumerable:!0,get:function(){return o.getTimeOrigin}}),Object.defineProperty(e,`hrTime`,{enumerable:!0,get:function(){return o.hrTime}}),Object.defineProperty(e,`hrTimeDuration`,{enumerable:!0,get:function(){return o.hrTimeDuration}}),Object.defineProperty(e,`hrTimeToMicroseconds`,{enumerable:!0,get:function(){return o.hrTimeToMicroseconds}}),Object.defineProperty(e,`hrTimeToMilliseconds`,{enumerable:!0,get:function(){return o.hrTimeToMilliseconds}}),Object.defineProperty(e,`hrTimeToNanoseconds`,{enumerable:!0,get:function(){return o.hrTimeToNanoseconds}}),Object.defineProperty(e,`hrTimeToTimeStamp`,{enumerable:!0,get:function(){return o.hrTimeToTimeStamp}}),Object.defineProperty(e,`isTimeInput`,{enumerable:!0,get:function(){return o.isTimeInput}}),Object.defineProperty(e,`isTimeInputHrTime`,{enumerable:!0,get:function(){return o.isTimeInputHrTime}}),Object.defineProperty(e,`millisToHrTime`,{enumerable:!0,get:function(){return o.millisToHrTime}}),Object.defineProperty(e,`timeInputToHrTime`,{enumerable:!0,get:function(){return o.timeInputToHrTime}});var s=DL();Object.defineProperty(e,`ExportResultCode`,{enumerable:!0,get:function(){return s.ExportResultCode}});var c=fL();Object.defineProperty(e,`parseKeyPairsIntoRecord`,{enumerable:!0,get:function(){return c.parseKeyPairsIntoRecord}});var l=TL();Object.defineProperty(e,`SDK_INFO`,{enumerable:!0,get:function(){return l.SDK_INFO}}),Object.defineProperty(e,`_globalThis`,{enumerable:!0,get:function(){return l._globalThis}}),Object.defineProperty(e,`getStringFromEnv`,{enumerable:!0,get:function(){return l.getStringFromEnv}}),Object.defineProperty(e,`getBooleanFromEnv`,{enumerable:!0,get:function(){return l.getBooleanFromEnv}}),Object.defineProperty(e,`getNumberFromEnv`,{enumerable:!0,get:function(){return l.getNumberFromEnv}}),Object.defineProperty(e,`getStringListFromEnv`,{enumerable:!0,get:function(){return l.getStringListFromEnv}}),Object.defineProperty(e,`otperformance`,{enumerable:!0,get:function(){return l.otperformance}}),Object.defineProperty(e,`unrefTimer`,{enumerable:!0,get:function(){return l.unrefTimer}});var u=OL();Object.defineProperty(e,`CompositePropagator`,{enumerable:!0,get:function(){return u.CompositePropagator}});var d=jL();Object.defineProperty(e,`TRACE_PARENT_HEADER`,{enumerable:!0,get:function(){return d.TRACE_PARENT_HEADER}}),Object.defineProperty(e,`TRACE_STATE_HEADER`,{enumerable:!0,get:function(){return d.TRACE_STATE_HEADER}}),Object.defineProperty(e,`W3CTraceContextPropagator`,{enumerable:!0,get:function(){return d.W3CTraceContextPropagator}}),Object.defineProperty(e,`parseTraceParent`,{enumerable:!0,get:function(){return d.parseTraceParent}});var f=ML();Object.defineProperty(e,`RPCType`,{enumerable:!0,get:function(){return f.RPCType}}),Object.defineProperty(e,`deleteRPCMetadata`,{enumerable:!0,get:function(){return f.deleteRPCMetadata}}),Object.defineProperty(e,`getRPCMetadata`,{enumerable:!0,get:function(){return f.getRPCMetadata}}),Object.defineProperty(e,`setRPCMetadata`,{enumerable:!0,get:function(){return f.setRPCMetadata}});var p=uL();Object.defineProperty(e,`isTracingSuppressed`,{enumerable:!0,get:function(){return p.isTracingSuppressed}}),Object.defineProperty(e,`suppressTracing`,{enumerable:!0,get:function(){return p.suppressTracing}}),Object.defineProperty(e,`unsuppressTracing`,{enumerable:!0,get:function(){return p.unsuppressTracing}});var m=AL();Object.defineProperty(e,`TraceState`,{enumerable:!0,get:function(){return m.TraceState}});var h=PL();Object.defineProperty(e,`merge`,{enumerable:!0,get:function(){return h.merge}});var g=FL();Object.defineProperty(e,`TimeoutError`,{enumerable:!0,get:function(){return g.TimeoutError}}),Object.defineProperty(e,`callWithTimeout`,{enumerable:!0,get:function(){return g.callWithTimeout}});var _=IL();Object.defineProperty(e,`isUrlIgnored`,{enumerable:!0,get:function(){return _.isUrlIgnored}}),Object.defineProperty(e,`urlMatches`,{enumerable:!0,get:function(){return _.urlMatches}});var v=RL();Object.defineProperty(e,`BindOnceFuture`,{enumerable:!0,get:function(){return v.BindOnceFuture}});var y=zL();Object.defineProperty(e,`diagLogLevelFromString`,{enumerable:!0,get:function(){return y.diagLogLevelFromString}}),e.internal={_export:BL()._export}})),HL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultServiceName=void 0;function t(){return`unknown_service:${process.argv0}`}e.defaultServiceName=t})),UL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultServiceName=void 0;var t=HL();Object.defineProperty(e,`defaultServiceName`,{enumerable:!0,get:function(){return t.defaultServiceName}})})),WL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultServiceName=void 0;var t=UL();Object.defineProperty(e,`defaultServiceName`,{enumerable:!0,get:function(){return t.defaultServiceName}})})),GL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.identity=e.isPromiseLike=void 0,e.isPromiseLike=e=>typeof e==`object`&&!!e&&typeof e.then==`function`;function t(e){return e}e.identity=t})),KL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultResource=e.emptyResource=e.resourceFromDetectedResource=e.resourceFromAttributes=void 0;let t=(Jd(),d(Kd)),n=VL(),r=(PA(),d(NA)),i=WL(),a=GL();var o=class e{_rawAttributes;_asyncAttributesPending=!1;_schemaUrl;_memoizedAttributes;static FromAttributeList(t,n){let r=new e({},n);return r._rawAttributes=f(t),r._asyncAttributesPending=t.filter(([e,t])=>(0,a.isPromiseLike)(t)).length>0,r}constructor(e,t){let n=e.attributes??{};this._rawAttributes=Object.entries(n).map(([e,t])=>((0,a.isPromiseLike)(t)&&(this._asyncAttributesPending=!0),[e,t])),this._rawAttributes=f(this._rawAttributes),this._schemaUrl=p(t?.schemaUrl)}get asyncAttributesPending(){return this._asyncAttributesPending}async waitForAsyncAttributes(){if(this.asyncAttributesPending){for(let e=0;e<this._rawAttributes.length;e++){let[t,n]=this._rawAttributes[e];this._rawAttributes[e]=[t,(0,a.isPromiseLike)(n)?await n:n]}this._asyncAttributesPending=!1}}get attributes(){if(this.asyncAttributesPending&&t.diag.error(`Accessing resource attributes before async attributes settled`),this._memoizedAttributes)return this._memoizedAttributes;let e={};for(let[n,r]of this._rawAttributes){if((0,a.isPromiseLike)(r)){t.diag.debug(`Unsettled resource attribute ${n} skipped`);continue}r!=null&&(e[n]??=r)}return this._asyncAttributesPending||(this._memoizedAttributes=e),e}getRawAttributes(){return this._rawAttributes}get schemaUrl(){return this._schemaUrl}merge(t){if(t==null)return this;let n=m(this,t),r=n?{schemaUrl:n}:void 0;return e.FromAttributeList([...t.getRawAttributes(),...this.getRawAttributes()],r)}};function s(e,t){return o.FromAttributeList(Object.entries(e),t)}e.resourceFromAttributes=s;function c(e,t){return new o(e,t)}e.resourceFromDetectedResource=c;function l(){return s({})}e.emptyResource=l;function u(){return s({[r.ATTR_SERVICE_NAME]:(0,i.defaultServiceName)(),[r.ATTR_TELEMETRY_SDK_LANGUAGE]:n.SDK_INFO[r.ATTR_TELEMETRY_SDK_LANGUAGE],[r.ATTR_TELEMETRY_SDK_NAME]:n.SDK_INFO[r.ATTR_TELEMETRY_SDK_NAME],[r.ATTR_TELEMETRY_SDK_VERSION]:n.SDK_INFO[r.ATTR_TELEMETRY_SDK_VERSION]})}e.defaultResource=u;function f(e){return e.map(([e,n])=>(0,a.isPromiseLike)(n)?[e,n.catch(n=>{t.diag.debug(`promise rejection for resource attribute: %s - %s`,e,n)})]:[e,n])}function p(e){if(typeof e==`string`||e===void 0)return e;t.diag.warn(`Schema URL must be string or undefined, got %s. Schema URL will be ignored.`,e)}function m(e,n){let r=e?.schemaUrl,i=n?.schemaUrl,a=r===void 0||r===``,o=i===void 0||i===``;if(a)return i;if(o||r===i)return r;t.diag.warn(`Schema URL merge conflict: old resource has "%s", updating resource has "%s". Resulting resource will have undefined Schema URL.`,r,i)}})),qL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.detectResources=void 0;let t=(Jd(),d(Kd)),n=KL();e.detectResources=(e={})=>(e.detectors||[]).map(r=>{try{let i=(0,n.resourceFromDetectedResource)(r.detect(e));return t.diag.debug(`${r.constructor.name} found resource.`,i),i}catch(e){return t.diag.debug(`${r.constructor.name} failed: ${e.message}`),(0,n.emptyResource)()}}).reduce((e,t)=>e.merge(t),(0,n.emptyResource)())})),JL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.envDetector=void 0;let t=(Jd(),d(Kd)),n=(PA(),d(NA)),r=VL();e.envDetector=new class{_MAX_LENGTH=255;_COMMA_SEPARATOR=`,`;_LABEL_KEY_VALUE_SPLITTER=`=`;_ERROR_MESSAGE_INVALID_CHARS=`should be a ASCII string with a length greater than 0 and not exceed `+this._MAX_LENGTH+` characters.`;_ERROR_MESSAGE_INVALID_VALUE=`should be a ASCII string with a length not exceed `+this._MAX_LENGTH+` characters.`;detect(e){let i={},a=(0,r.getStringFromEnv)(`OTEL_RESOURCE_ATTRIBUTES`),o=(0,r.getStringFromEnv)(`OTEL_SERVICE_NAME`);if(a)try{let e=this._parseResourceAttributes(a);Object.assign(i,e)}catch(e){t.diag.debug(`EnvDetector failed: ${e.message}`)}return o&&(i[n.ATTR_SERVICE_NAME]=o),{attributes:i}}_parseResourceAttributes(e){if(!e)return{};let t={},n=e.split(this._COMMA_SEPARATOR,-1);for(let e of n){let n=e.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(n.length!==2)continue;let[r,i]=n;if(r=r.trim(),i=i.trim().split(/^"|"$/).join(``),!this._isValidAndNotEmpty(r))throw Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(i))throw Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);t[r]=decodeURIComponent(i)}return t}_isValid(e){return e.length<=this._MAX_LENGTH&&this._isBaggageOctetString(e)}_isBaggageOctetString(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<33||n===44||n===59||n===92||n>126)return!1}return!0}_isValidAndNotEmpty(e){return e.length>0&&this._isValid(e)}}})),YL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ATTR_WEBENGINE_VERSION=e.ATTR_WEBENGINE_NAME=e.ATTR_WEBENGINE_DESCRIPTION=e.ATTR_SERVICE_NAMESPACE=e.ATTR_SERVICE_INSTANCE_ID=e.ATTR_PROCESS_RUNTIME_VERSION=e.ATTR_PROCESS_RUNTIME_NAME=e.ATTR_PROCESS_RUNTIME_DESCRIPTION=e.ATTR_PROCESS_PID=e.ATTR_PROCESS_OWNER=e.ATTR_PROCESS_EXECUTABLE_PATH=e.ATTR_PROCESS_EXECUTABLE_NAME=e.ATTR_PROCESS_COMMAND_ARGS=e.ATTR_PROCESS_COMMAND=e.ATTR_OS_VERSION=e.ATTR_OS_TYPE=e.ATTR_K8S_POD_NAME=e.ATTR_K8S_NAMESPACE_NAME=e.ATTR_K8S_DEPLOYMENT_NAME=e.ATTR_K8S_CLUSTER_NAME=e.ATTR_HOST_TYPE=e.ATTR_HOST_NAME=e.ATTR_HOST_IMAGE_VERSION=e.ATTR_HOST_IMAGE_NAME=e.ATTR_HOST_IMAGE_ID=e.ATTR_HOST_ID=e.ATTR_HOST_ARCH=e.ATTR_CONTAINER_NAME=e.ATTR_CONTAINER_IMAGE_TAGS=e.ATTR_CONTAINER_IMAGE_NAME=e.ATTR_CONTAINER_ID=e.ATTR_CLOUD_REGION=e.ATTR_CLOUD_PROVIDER=e.ATTR_CLOUD_AVAILABILITY_ZONE=e.ATTR_CLOUD_ACCOUNT_ID=void 0,e.ATTR_CLOUD_ACCOUNT_ID=`cloud.account.id`,e.ATTR_CLOUD_AVAILABILITY_ZONE=`cloud.availability_zone`,e.ATTR_CLOUD_PROVIDER=`cloud.provider`,e.ATTR_CLOUD_REGION=`cloud.region`,e.ATTR_CONTAINER_ID=`container.id`,e.ATTR_CONTAINER_IMAGE_NAME=`container.image.name`,e.ATTR_CONTAINER_IMAGE_TAGS=`container.image.tags`,e.ATTR_CONTAINER_NAME=`container.name`,e.ATTR_HOST_ARCH=`host.arch`,e.ATTR_HOST_ID=`host.id`,e.ATTR_HOST_IMAGE_ID=`host.image.id`,e.ATTR_HOST_IMAGE_NAME=`host.image.name`,e.ATTR_HOST_IMAGE_VERSION=`host.image.version`,e.ATTR_HOST_NAME=`host.name`,e.ATTR_HOST_TYPE=`host.type`,e.ATTR_K8S_CLUSTER_NAME=`k8s.cluster.name`,e.ATTR_K8S_DEPLOYMENT_NAME=`k8s.deployment.name`,e.ATTR_K8S_NAMESPACE_NAME=`k8s.namespace.name`,e.ATTR_K8S_POD_NAME=`k8s.pod.name`,e.ATTR_OS_TYPE=`os.type`,e.ATTR_OS_VERSION=`os.version`,e.ATTR_PROCESS_COMMAND=`process.command`,e.ATTR_PROCESS_COMMAND_ARGS=`process.command_args`,e.ATTR_PROCESS_EXECUTABLE_NAME=`process.executable.name`,e.ATTR_PROCESS_EXECUTABLE_PATH=`process.executable.path`,e.ATTR_PROCESS_OWNER=`process.owner`,e.ATTR_PROCESS_PID=`process.pid`,e.ATTR_PROCESS_RUNTIME_DESCRIPTION=`process.runtime.description`,e.ATTR_PROCESS_RUNTIME_NAME=`process.runtime.name`,e.ATTR_PROCESS_RUNTIME_VERSION=`process.runtime.version`,e.ATTR_SERVICE_INSTANCE_ID=`service.instance.id`,e.ATTR_SERVICE_NAMESPACE=`service.namespace`,e.ATTR_WEBENGINE_DESCRIPTION=`webengine.description`,e.ATTR_WEBENGINE_NAME=`webengine.name`,e.ATTR_WEBENGINE_VERSION=`webengine.version`})),XL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.getMachineId=void 0;let t=require(`process`),n;async function r(){if(!n)switch(t.platform){case`darwin`:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-darwin-qxG7FDMy.cjs`).default))).getMachineId;break;case`linux`:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-linux-Dnsx6XjV.cjs`).default))).getMachineId;break;case`freebsd`:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-bsd-C6vJ2MI6.cjs`).default))).getMachineId;break;case`win32`:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-win-BDuHxVob.cjs`).default))).getMachineId;break;default:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-unsupported-BE5onnLI.cjs`).default))).getMachineId;break}return n()}e.getMachineId=r})),ZL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.normalizeType=e.normalizeArch=void 0,e.normalizeArch=e=>{switch(e){case`arm`:return`arm32`;case`ppc`:return`ppc32`;case`x64`:return`amd64`;default:return e}},e.normalizeType=e=>{switch(e){case`sunos`:return`solaris`;case`win32`:return`windows`;default:return e}}})),QL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.hostDetector=void 0;let t=YL(),n=require(`os`),r=XL(),i=ZL();e.hostDetector=new class{detect(e){return{attributes:{[t.ATTR_HOST_NAME]:(0,n.hostname)(),[t.ATTR_HOST_ARCH]:(0,i.normalizeArch)((0,n.arch)()),[t.ATTR_HOST_ID]:(0,r.getMachineId)()}}}}})),$L=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.osDetector=void 0;let t=YL(),n=require(`os`),r=ZL();e.osDetector=new class{detect(e){return{attributes:{[t.ATTR_OS_TYPE]:(0,r.normalizeType)((0,n.platform)()),[t.ATTR_OS_VERSION]:(0,n.release)()}}}}})),eR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.processDetector=void 0;let t=(Jd(),d(Kd)),n=YL(),r=require(`os`);e.processDetector=new class{detect(e){let i={[n.ATTR_PROCESS_PID]:process.pid,[n.ATTR_PROCESS_EXECUTABLE_NAME]:process.title,[n.ATTR_PROCESS_EXECUTABLE_PATH]:process.execPath,[n.ATTR_PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[n.ATTR_PROCESS_RUNTIME_VERSION]:process.versions.node,[n.ATTR_PROCESS_RUNTIME_NAME]:`nodejs`,[n.ATTR_PROCESS_RUNTIME_DESCRIPTION]:`Node.js`};process.argv.length>1&&(i[n.ATTR_PROCESS_COMMAND]=process.argv[1]);try{let e=r.userInfo();i[n.ATTR_PROCESS_OWNER]=e.username}catch(e){t.diag.debug(`error obtaining process owner: ${e}`)}return{attributes:i}}}})),tR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.serviceInstanceIdDetector=void 0;let t=YL(),n=require(`crypto`);e.serviceInstanceIdDetector=new class{detect(e){return{attributes:{[t.ATTR_SERVICE_INSTANCE_ID]:(0,n.randomUUID)()}}}}})),nR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.serviceInstanceIdDetector=e.processDetector=e.osDetector=e.hostDetector=void 0;var t=QL();Object.defineProperty(e,`hostDetector`,{enumerable:!0,get:function(){return t.hostDetector}});var n=$L();Object.defineProperty(e,`osDetector`,{enumerable:!0,get:function(){return n.osDetector}});var r=eR();Object.defineProperty(e,`processDetector`,{enumerable:!0,get:function(){return r.processDetector}});var i=tR();Object.defineProperty(e,`serviceInstanceIdDetector`,{enumerable:!0,get:function(){return i.serviceInstanceIdDetector}})})),rR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.serviceInstanceIdDetector=e.processDetector=e.osDetector=e.hostDetector=void 0;var t=nR();Object.defineProperty(e,`hostDetector`,{enumerable:!0,get:function(){return t.hostDetector}}),Object.defineProperty(e,`osDetector`,{enumerable:!0,get:function(){return t.osDetector}}),Object.defineProperty(e,`processDetector`,{enumerable:!0,get:function(){return t.processDetector}}),Object.defineProperty(e,`serviceInstanceIdDetector`,{enumerable:!0,get:function(){return t.serviceInstanceIdDetector}})})),iR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.noopDetector=e.NoopDetector=void 0;var t=class{detect(){return{attributes:{}}}};e.NoopDetector=t,e.noopDetector=new t})),aR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.noopDetector=e.serviceInstanceIdDetector=e.processDetector=e.osDetector=e.hostDetector=e.envDetector=void 0;var t=JL();Object.defineProperty(e,`envDetector`,{enumerable:!0,get:function(){return t.envDetector}});var n=rR();Object.defineProperty(e,`hostDetector`,{enumerable:!0,get:function(){return n.hostDetector}}),Object.defineProperty(e,`osDetector`,{enumerable:!0,get:function(){return n.osDetector}}),Object.defineProperty(e,`processDetector`,{enumerable:!0,get:function(){return n.processDetector}}),Object.defineProperty(e,`serviceInstanceIdDetector`,{enumerable:!0,get:function(){return n.serviceInstanceIdDetector}});var r=iR();Object.defineProperty(e,`noopDetector`,{enumerable:!0,get:function(){return r.noopDetector}})})),oR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultServiceName=e.emptyResource=e.defaultResource=e.resourceFromAttributes=e.serviceInstanceIdDetector=e.processDetector=e.osDetector=e.hostDetector=e.envDetector=e.detectResources=void 0;var t=qL();Object.defineProperty(e,`detectResources`,{enumerable:!0,get:function(){return t.detectResources}});var n=aR();Object.defineProperty(e,`envDetector`,{enumerable:!0,get:function(){return n.envDetector}}),Object.defineProperty(e,`hostDetector`,{enumerable:!0,get:function(){return n.hostDetector}}),Object.defineProperty(e,`osDetector`,{enumerable:!0,get:function(){return n.osDetector}}),Object.defineProperty(e,`processDetector`,{enumerable:!0,get:function(){return n.processDetector}}),Object.defineProperty(e,`serviceInstanceIdDetector`,{enumerable:!0,get:function(){return n.serviceInstanceIdDetector}});var r=KL();Object.defineProperty(e,`resourceFromAttributes`,{enumerable:!0,get:function(){return r.resourceFromAttributes}}),Object.defineProperty(e,`defaultResource`,{enumerable:!0,get:function(){return r.defaultResource}}),Object.defineProperty(e,`emptyResource`,{enumerable:!0,get:function(){return r.emptyResource}});var i=WL();Object.defineProperty(e,`defaultServiceName`,{enumerable:!0,get:function(){return i.defaultServiceName}})})),sR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LogRecordImpl=void 0;let t=(Jd(),d(Kd)),n=VL();e.LogRecordImpl=class{hrTime;hrTimeObserved;spanContext;resource;instrumentationScope;attributes={};_severityText;_severityNumber;_body;_eventName;totalAttributesCount=0;_isReadonly=!1;_logRecordLimits;set severityText(e){this._isLogRecordReadonly()||(this._severityText=e)}get severityText(){return this._severityText}set severityNumber(e){this._isLogRecordReadonly()||(this._severityNumber=e)}get severityNumber(){return this._severityNumber}set body(e){this._isLogRecordReadonly()||(this._body=e)}get body(){return this._body}get eventName(){return this._eventName}set eventName(e){this._isLogRecordReadonly()||(this._eventName=e)}get droppedAttributesCount(){return this.totalAttributesCount-Object.keys(this.attributes).length}constructor(e,r,i){let{timestamp:a,observedTimestamp:o,eventName:s,severityNumber:c,severityText:l,body:u,attributes:d={},context:f}=i,p=Date.now();if(this.hrTime=(0,n.timeInputToHrTime)(a??p),this.hrTimeObserved=(0,n.timeInputToHrTime)(o??p),f){let e=t.trace.getSpanContext(f);e&&t.isSpanContextValid(e)&&(this.spanContext=e)}this.severityNumber=c,this.severityText=l,this.body=u,this.resource=e.resource,this.instrumentationScope=r,this._logRecordLimits=e.logRecordLimits,this._eventName=s,this.setAttributes(d)}setAttribute(e,r){return this._isLogRecordReadonly()||r===null?this:e.length===0?(t.diag.warn(`Invalid attribute key: ${e}`),this):!(0,n.isAttributeValue)(r)&&!(typeof r==`object`&&!Array.isArray(r)&&Object.keys(r).length>0)?(t.diag.warn(`Invalid attribute value set for key: ${e}`),this):(this.totalAttributesCount+=1,Object.keys(this.attributes).length>=this._logRecordLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,e)?(this.droppedAttributesCount===1&&t.diag.warn(`Dropping extra attributes.`),this):((0,n.isAttributeValue)(r)?this.attributes[e]=this._truncateToSize(r):this.attributes[e]=r,this))}setAttributes(e){for(let[t,n]of Object.entries(e))this.setAttribute(t,n);return this}setBody(e){return this.body=e,this}setEventName(e){return this.eventName=e,this}setSeverityNumber(e){return this.severityNumber=e,this}setSeverityText(e){return this.severityText=e,this}_makeReadonly(){this._isReadonly=!0}_truncateToSize(e){let n=this._logRecordLimits.attributeValueLengthLimit;return n<=0?(t.diag.warn(`Attribute value limit must be positive, got ${n}`),e):typeof e==`string`?this._truncateToLimitUtil(e,n):Array.isArray(e)?e.map(e=>typeof e==`string`?this._truncateToLimitUtil(e,n):e):e}_truncateToLimitUtil(e,t){return e.length<=t?e:e.substring(0,t)}_isLogRecordReadonly(){return this._isReadonly&&t.diag.warn(`Can not execute the operation on emitted log record`),this._isReadonly}}})),cR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Logger=void 0;let t=(Jd(),d(Kd)),n=sR();e.Logger=class{instrumentationScope;_sharedState;constructor(e,t){this.instrumentationScope=e,this._sharedState=t}emit(e){let r=e.context||t.context.active(),i=new n.LogRecordImpl(this._sharedState,this.instrumentationScope,{context:r,...e});this._sharedState.activeProcessor.onEmit(i,r),i._makeReadonly()}}})),lR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.reconfigureLimits=e.loadDefaultConfig=void 0;let t=VL();function n(){return{forceFlushTimeoutMillis:3e4,logRecordLimits:{attributeValueLengthLimit:(0,t.getNumberFromEnv)(`OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT`)??1/0,attributeCountLimit:(0,t.getNumberFromEnv)(`OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT`)??128},includeTraceContext:!0}}e.loadDefaultConfig=n;function r(e){return{attributeCountLimit:e.attributeCountLimit??(0,t.getNumberFromEnv)(`OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT`)??(0,t.getNumberFromEnv)(`OTEL_ATTRIBUTE_COUNT_LIMIT`)??128,attributeValueLengthLimit:e.attributeValueLengthLimit??(0,t.getNumberFromEnv)(`OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT`)??(0,t.getNumberFromEnv)(`OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT`)??1/0}}e.reconfigureLimits=r})),uR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.NoopLogRecordProcessor=void 0,e.NoopLogRecordProcessor=class{forceFlush(){return Promise.resolve()}onEmit(e,t){}shutdown(){return Promise.resolve()}}})),dR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MultiLogRecordProcessor=void 0;let t=VL();e.MultiLogRecordProcessor=class{processors;forceFlushTimeoutMillis;constructor(e,t){this.processors=e,this.forceFlushTimeoutMillis=t}async forceFlush(){let e=this.forceFlushTimeoutMillis;await Promise.all(this.processors.map(n=>(0,t.callWithTimeout)(n.forceFlush(),e)))}onEmit(e,t){this.processors.forEach(n=>n.onEmit(e,t))}async shutdown(){await Promise.all(this.processors.map(e=>e.shutdown()))}}})),fR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LoggerProviderSharedState=void 0;let t=uR(),n=dR();e.LoggerProviderSharedState=class{resource;forceFlushTimeoutMillis;logRecordLimits;processors;loggers=new Map;activeProcessor;registeredLogRecordProcessors=[];constructor(e,r,i,a){this.resource=e,this.forceFlushTimeoutMillis=r,this.logRecordLimits=i,this.processors=a,a.length>0?(this.registeredLogRecordProcessors=a,this.activeProcessor=new n.MultiLogRecordProcessor(this.registeredLogRecordProcessors,this.forceFlushTimeoutMillis)):this.activeProcessor=new t.NoopLogRecordProcessor}}})),pR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LoggerProvider=e.DEFAULT_LOGGER_NAME=void 0;let t=(Jd(),d(Kd)),n=Li(),r=oR(),i=VL(),a=cR(),o=lR(),s=fR();e.DEFAULT_LOGGER_NAME=`unknown`,e.LoggerProvider=class{_shutdownOnce;_sharedState;constructor(e={}){let t=(0,i.merge)({},(0,o.loadDefaultConfig)(),e),n=e.resource??(0,r.defaultResource)();this._sharedState=new s.LoggerProviderSharedState(n,t.forceFlushTimeoutMillis,(0,o.reconfigureLimits)(t.logRecordLimits),e?.processors??[]),this._shutdownOnce=new i.BindOnceFuture(this._shutdown,this)}getLogger(r,i,o){if(this._shutdownOnce.isCalled)return t.diag.warn(`A shutdown LoggerProvider cannot provide a Logger`),n.NOOP_LOGGER;r||t.diag.warn(`Logger requested without instrumentation scope name.`);let s=r||e.DEFAULT_LOGGER_NAME,c=`${s}@${i||``}:${o?.schemaUrl||``}`;return this._sharedState.loggers.has(c)||this._sharedState.loggers.set(c,new a.Logger({name:s,version:i,schemaUrl:o?.schemaUrl},this._sharedState)),this._sharedState.loggers.get(c)}forceFlush(){return this._shutdownOnce.isCalled?(t.diag.warn(`invalid attempt to force flush after LoggerProvider shutdown`),this._shutdownOnce.promise):this._sharedState.activeProcessor.forceFlush()}shutdown(){return this._shutdownOnce.isCalled?(t.diag.warn(`shutdown may only be called once per LoggerProvider`),this._shutdownOnce.promise):this._shutdownOnce.call()}_shutdown(){return this._sharedState.activeProcessor.shutdown()}}})),mR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ConsoleLogRecordExporter=void 0;let t=VL();e.ConsoleLogRecordExporter=class{export(e,t){this._sendLogRecords(e,t)}shutdown(){return Promise.resolve()}_exportInfo(e){return{resource:{attributes:e.resource.attributes},instrumentationScope:e.instrumentationScope,timestamp:(0,t.hrTimeToMicroseconds)(e.hrTime),traceId:e.spanContext?.traceId,spanId:e.spanContext?.spanId,traceFlags:e.spanContext?.traceFlags,severityText:e.severityText,severityNumber:e.severityNumber,body:e.body,attributes:e.attributes}}_sendLogRecords(e,n){for(let t of e)console.dir(this._exportInfo(t),{depth:3});n?.({code:t.ExportResultCode.SUCCESS})}}})),cee=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.SimpleLogRecordProcessor=void 0;let t=VL();e.SimpleLogRecordProcessor=class{_exporter;_shutdownOnce;_unresolvedExports;constructor(e){this._exporter=e,this._shutdownOnce=new t.BindOnceFuture(this._shutdown,this),this._unresolvedExports=new Set}onEmit(e){if(this._shutdownOnce.isCalled)return;let n=()=>t.internal._export(this._exporter,[e]).then(e=>{e.code!==t.ExportResultCode.SUCCESS&&(0,t.globalErrorHandler)(e.error??Error(`SimpleLogRecordProcessor: log record export failed (status ${e})`))}).catch(t.globalErrorHandler);if(e.resource.asyncAttributesPending){let r=e.resource.waitForAsyncAttributes?.().then(()=>(this._unresolvedExports.delete(r),n()),t.globalErrorHandler);r!=null&&this._unresolvedExports.add(r)}else n()}async forceFlush(){await Promise.all(Array.from(this._unresolvedExports))}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}}})),hR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.InMemoryLogRecordExporter=void 0;let t=VL();e.InMemoryLogRecordExporter=class{_finishedLogRecords=[];_stopped=!1;export(e,n){if(this._stopped)return n({code:t.ExportResultCode.FAILED,error:Error(`Exporter has been stopped`)});this._finishedLogRecords.push(...e),n({code:t.ExportResultCode.SUCCESS})}shutdown(){return this._stopped=!0,this.reset(),Promise.resolve()}getFinishedLogRecords(){return this._finishedLogRecords}reset(){this._finishedLogRecords=[]}}})),lee=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessorBase=void 0;let t=(Jd(),d(Kd)),n=VL();e.BatchLogRecordProcessorBase=class{_exporter;_maxExportBatchSize;_maxQueueSize;_scheduledDelayMillis;_exportTimeoutMillis;_finishedLogRecords=[];_timer;_shutdownOnce;constructor(e,r){this._exporter=e,this._maxExportBatchSize=r?.maxExportBatchSize??(0,n.getNumberFromEnv)(`OTEL_BLRP_MAX_EXPORT_BATCH_SIZE`)??512,this._maxQueueSize=r?.maxQueueSize??(0,n.getNumberFromEnv)(`OTEL_BLRP_MAX_QUEUE_SIZE`)??2048,this._scheduledDelayMillis=r?.scheduledDelayMillis??(0,n.getNumberFromEnv)(`OTEL_BLRP_SCHEDULE_DELAY`)??5e3,this._exportTimeoutMillis=r?.exportTimeoutMillis??(0,n.getNumberFromEnv)(`OTEL_BLRP_EXPORT_TIMEOUT`)??3e4,this._shutdownOnce=new n.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize&&(t.diag.warn(`BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize`),this._maxExportBatchSize=this._maxQueueSize)}onEmit(e){this._shutdownOnce.isCalled||this._addToBuffer(e)}forceFlush(){return this._shutdownOnce.isCalled?this._shutdownOnce.promise:this._flushAll()}shutdown(){return this._shutdownOnce.call()}async _shutdown(){this.onShutdown(),await this._flushAll(),await this._exporter.shutdown()}_addToBuffer(e){this._finishedLogRecords.length>=this._maxQueueSize||(this._finishedLogRecords.push(e),this._maybeStartTimer())}_flushAll(){return new Promise((e,t)=>{let n=[],r=Math.ceil(this._finishedLogRecords.length/this._maxExportBatchSize);for(let e=0;e<r;e++)n.push(this._flushOneBatch());Promise.all(n).then(()=>{e()}).catch(t)})}_flushOneBatch(){return this._clearTimer(),this._finishedLogRecords.length===0?Promise.resolve():new Promise((e,t)=>{(0,n.callWithTimeout)(this._export(this._finishedLogRecords.splice(0,this._maxExportBatchSize)),this._exportTimeoutMillis).then(()=>e()).catch(t)})}_maybeStartTimer(){this._timer===void 0&&(this._timer=setTimeout(()=>{this._flushOneBatch().then(()=>{this._finishedLogRecords.length>0&&(this._clearTimer(),this._maybeStartTimer())}).catch(e=>{(0,n.globalErrorHandler)(e)})},this._scheduledDelayMillis),(0,n.unrefTimer)(this._timer))}_clearTimer(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}_export(e){let t=()=>n.internal._export(this._exporter,e).then(e=>{e.code!==n.ExportResultCode.SUCCESS&&(0,n.globalErrorHandler)(e.error??Error(`BatchLogRecordProcessor: log record export failed (status ${e})`))}).catch(n.globalErrorHandler),r=e.map(e=>e.resource).filter(e=>e.asyncAttributesPending);return r.length===0?t():Promise.all(r.map(e=>e.waitForAsyncAttributes?.())).then(t,n.globalErrorHandler)}}})),uee=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessor=void 0;let t=lee();e.BatchLogRecordProcessor=class extends t.BatchLogRecordProcessorBase{onShutdown(){}}})),gR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessor=void 0;var t=uee();Object.defineProperty(e,`BatchLogRecordProcessor`,{enumerable:!0,get:function(){return t.BatchLogRecordProcessor}})})),_R=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessor=void 0;var t=gR();Object.defineProperty(e,`BatchLogRecordProcessor`,{enumerable:!0,get:function(){return t.BatchLogRecordProcessor}})})),vR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessor=e.InMemoryLogRecordExporter=e.SimpleLogRecordProcessor=e.ConsoleLogRecordExporter=e.NoopLogRecordProcessor=e.LoggerProvider=void 0;var t=pR();Object.defineProperty(e,`LoggerProvider`,{enumerable:!0,get:function(){return t.LoggerProvider}});var n=uR();Object.defineProperty(e,`NoopLogRecordProcessor`,{enumerable:!0,get:function(){return n.NoopLogRecordProcessor}});var r=mR();Object.defineProperty(e,`ConsoleLogRecordExporter`,{enumerable:!0,get:function(){return r.ConsoleLogRecordExporter}});var i=cee();Object.defineProperty(e,`SimpleLogRecordProcessor`,{enumerable:!0,get:function(){return i.SimpleLogRecordProcessor}});var a=hR();Object.defineProperty(e,`InMemoryLogRecordExporter`,{enumerable:!0,get:function(){return a.InMemoryLogRecordExporter}});var o=_R();Object.defineProperty(e,`BatchLogRecordProcessor`,{enumerable:!0,get:function(){return o.BatchLogRecordProcessor}})})),yR=s((e=>{let t=ur(),n=t.__toESM(Ei()),r=t.__toESM(require(`node:async_hooks`)),i=t.__toESM(ie()),a=t.__toESM(Li()),o=t.__toESM(Fc()),s=t.__toESM(require(`node:process`)),c=t.__toESM(require(`node:os`)),l=t.__toESM(require(`node:tty`)),u=t.__toESM(require(`node:crypto`)),f=t.__toESM(lL()),p=t.__toESM(bj()),m=t.__toESM(vR()),h=t.__toESM((PA(),d(NA))),g={DELETE:`delete`,COMMENT_OUT:`comment out`,KEEP:`keep`,SKIP:`skip`},_={GREEN:`Green`,GREY:`Grey`,RED:`Red`,NA:`NA`},v={GREEN:`Green`,GREY:`Grey`,RUNTIME_ERROR:`RuntimeError`},y=function(e){return e.IDE=`IDE`,e.CLI=`CLI`,e}({}),b=function(e){return e.SIBLING_FOLDER=`siblingFolder`,e.ROOT_FOLDER=`rootFolder`,e}({}),x=function(e){return e.JEST=`jest`,e.MOCHA=`mocha`,e.VITEST=`vitest`,e.PYTEST=`pytest`,e}({}),S=function(e){return e.SPEC=`spec`,e.TEST=`test`,e}({}),C=function(e){return e.CAMEL_CASE=`camelCase`,e.KEBAB_CASE=`kebabCase`,e}({}),w=function(e){return e.NONE=`none`,e.CATEGORIES=`categories`,e}({}),T=function(e){return e.NEW_CODE_FILE=`newCodeFile`,e.OVERRIDE_CODE_FILE=`overrideCodeFile`,e}({}),E=function(e){return e.ON=`on`,e.OFF=`off`,e}({}),D={DEFAULT:0,MIN:0,MAX:100},O={DEFAULT:5,MIN:1,MAX:50};n.z.object({rootPath:n.z.string().default(process.cwd()),testStructure:n.z.enum(b).optional(),testFramework:n.z.enum(x).optional(),testSuffix:n.z.enum(S).optional(),testFileName:n.z.enum(C).optional(),calculateCoverage:n.z.enum(E).optional(),coverageThreshold:n.z.number().min(D.MIN).max(D.MAX).default(D.DEFAULT),requestSource:n.z.enum(y).optional(),concurrency:n.z.number().min(O.MIN).max(O.MAX).default(O.DEFAULT),backendURL:n.z.string().optional(),secretToken:n.z.string().optional(),modelName:n.z.string().optional(),context:n.z.object({git:n.z.object({ref_name:n.z.string(),anchorBranch:n.z.string(),compareBranch:n.z.string(),repository:n.z.string(),owner:n.z.string(),sha:n.z.string(),workflowRunId:n.z.string(),remoteUrl:n.z.string(),topLevel:n.z.string()}).partial().optional()}).optional(),testCommand:n.z.string().optional(),coverageCommand:n.z.string().optional(),lintCommand:n.z.string().optional(),prettierCommand:n.z.string().optional(),disableLintRules:n.z.boolean().optional(),ignoreAsAnyLintErrors:n.z.boolean().optional(),includeEarlyTests:n.z.boolean().optional(),greyTestBehaviour:n.z.enum(g).optional(),redTestBehaviour:n.z.enum(g).optional(),keepErrorTests:n.z.boolean().optional(),keepFailedTests:n.z.boolean().optional(),conditionalKeep:n.z.boolean().optional(),continueOnTestErrors:n.z.boolean().optional(),perFunctionTimeout:n.z.number().positive().optional(),dynamicPromptIterations:n.z.number().min(0).max(10).optional(),removeComments:n.z.boolean().optional(),experimentalAgentSdk:n.z.boolean().optional(),compressOutput:n.z.boolean().optional(),agentSdkModel:n.z.string().optional(),agentSdkBudget:n.z.number().positive().optional(),pluginPath:n.z.string().optional(),claudeCodeExecutablePath:n.z.string().optional(),projectId:n.z.string().optional(),e2eCatalogIds:n.z.array(n.z.string()).optional(),e2eProjectIds:n.z.array(n.z.string()).optional(),jobId:n.z.string().optional(),label:n.z.string().optional(),debug:n.z.boolean().optional(),verbose:n.z.boolean().optional(),progressLogger:n.z.custom().optional(),onTokenRefresh:n.z.custom().optional()});var k=`@earlyai/ts-agent`,A=`0.127.1`;let j={VSCODE:`vscode`,GITHUB_ACTION:`github-action`,UNKNOWN:`unknown`},M=`$early_filename`,ee=`npx jest ${M} --no-coverage --silent --json --forceExit --maxWorkers=1`,N=`npx --no eslint ${M}`,te=`npx --no prettier ${M} --write`,P={rootPath:process.cwd(),isSiblingFolderStructured:!0,gitURL:`https://github.com/your-owner/your-repo`,testFramework:x.JEST,greyTestBehaviour:g.DELETE,redTestBehaviour:g.DELETE,keepErrorTests:!1,keepFailedTests:!1,conditionalKeep:!1,continueOnTestErrors:!0,generatedTestStructure:w.CATEGORIES,isRootFolderStructured:!1,clientSource:j.GITHUB_ACTION,backendURL:`https://api.startearly.ai`,requestSource:y.CLI,userPrompt:``,testLocation:`__tests__`,coverageThreshold:D.DEFAULT,concurrency:5,testFileFormat:`ts`,outputType:T.NEW_CODE_FILE,shouldRefreshCoverage:!0,kebabCaseFileName:!1,earlyTestFilenameSuffix:`.early.${S.TEST}`,testSuffix:S.TEST,isAppendPrompt:!1,dynamicPromptIterations:3,wsServerEndpoint:`wss://api.startearly.ai`,secretToken:``,loggerConfig:{consoleEnabled:!1,azureEnabled:!0,azureConnectionString:`InstrumentationKey=8b9b0d6a-5400-44a3-ada6-3cd026de6cfe;IngestionEndpoint=https://eastus-8.in.applicationinsights.azure.com/;LiveEndpoint=https://eastus.livediagnostics.monitor.azure.com/;ApplicationId=d6e130b6-4aaa-4dcc-8d26-c1fa25d4656a`},context:void 0,includeEarlyTests:!1,lintCommand:N,prettierCommand:te,disableLintRules:!1,ignoreAsAnyLintErrors:!0,allowUndefinedLintErrors:!0,perFunctionTimeout:42e4,removeComments:!0,experimentalAgentSdk:!1,compressOutput:!1,agentSdkModel:void 0,agentSdkBudget:void 0,debug:!1,verbose:!1},F=e=>{let t=`testFramework.testSuffix.backendURL.requestSource.secretToken.concurrency.coverageThreshold.context.rootPath.testCommand.coverageCommand.lintCommand.prettierCommand.disableLintRules.greyTestBehaviour.redTestBehaviour.keepErrorTests.keepFailedTests.conditionalKeep.continueOnTestErrors.perFunctionTimeout.dynamicPromptIterations.removeComments.experimentalAgentSdk.compressOutput.agentSdkModel.agentSdkBudget.pluginPath.claudeCodeExecutablePath.jobId.label.projectId.e2eCatalogIds.debug.verbose.progressLogger.onTokenRefresh`.split(`.`).reduce((t,n)=>(0,i.isDefined)(e[n])?{...t,[n]:e[n]}:t,{}),n={...(0,i.isDefined)(e.testStructure)&&{isSiblingFolderStructured:e.testStructure===b.SIBLING_FOLDER,isRootFolderStructured:e.testStructure===b.ROOT_FOLDER},...(0,i.isDefined)(e.testFileName)&&{kebabCaseFileName:e.testFileName===C.KEBAB_CASE},...(0,i.isDefined)(e.calculateCoverage)&&{shouldRefreshCoverage:e.calculateCoverage===E.ON},...(0,i.isDefined)(e.modelName)&&{fixTestsLLMModelName:e.modelName,generateTestsLLMModelName:e.modelName},...(0,i.isDefined)(e.testSuffix)&&{earlyTestFilenameSuffix:`.early.${e.testSuffix}`},...(0,i.isDefined)(e.requestSource)&&{clientSource:e.requestSource===y.IDE?j.VSCODE:j.GITHUB_ACTION}};return{...t,...n}},I=(e=0)=>t=>`\u001B[${t+e}m`,L=(e=0)=>t=>`\u001B[${38+e};5;${t}m`,ne=(e=0)=>(t,n,r)=>`\u001B[${38+e};2;${t};${n};${r}m`,R={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(R.modifier);let z=Object.keys(R.color),re=Object.keys(R.bgColor);[...z,...re];function B(){let e=new Map;for(let[t,n]of Object.entries(R)){for(let[t,r]of Object.entries(n))R[t]={open:`\u001B[${r[0]}m`,close:`\u001B[${r[1]}m`},n[t]=R[t],e.set(r[0],r[1]);Object.defineProperty(R,t,{value:n,enumerable:!1})}return Object.defineProperty(R,`codes`,{value:e,enumerable:!1}),R.color.close=`\x1B[39m`,R.bgColor.close=`\x1B[49m`,R.color.ansi=I(),R.color.ansi256=L(),R.color.ansi16m=ne(),R.bgColor.ansi=I(10),R.bgColor.ansi256=L(10),R.bgColor.ansi16m=ne(10),Object.defineProperties(R,{rgbToAnsi256:{value(e,t,n){return e===t&&t===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(e){let t=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!t)return[0,0,0];let[n]=t;n.length===3&&(n=[...n].map(e=>e+e).join(``));let r=Number.parseInt(n,16);return[r>>16&255,r>>8&255,r&255]},enumerable:!1},hexToAnsi256:{value:e=>R.rgbToAnsi256(...R.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let t,n,r;if(e>=232)t=((e-232)*10+8)/255,n=t,r=t;else{e-=16;let i=e%36;t=Math.floor(e/36)/5,n=Math.floor(i/6)/5,r=i%6/5}let i=Math.max(t,n,r)*2;if(i===0)return 30;let a=30+(Math.round(r)<<2|Math.round(n)<<1|Math.round(t));return i===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:(e,t,n)=>R.ansi256ToAnsi(R.rgbToAnsi256(e,t,n)),enumerable:!1},hexToAnsi:{value:e=>R.ansi256ToAnsi(R.hexToAnsi256(e)),enumerable:!1}}),R}var V=B();function ae(e,t=globalThis.Deno?globalThis.Deno.args:s.default.argv){let n=e.startsWith(`-`)?``:e.length===1?`-`:`--`,r=t.indexOf(n+e),i=t.indexOf(`--`);return r!==-1&&(i===-1||r<i)}let{env:oe}=s.default,se;ae(`no-color`)||ae(`no-colors`)||ae(`color=false`)||ae(`color=never`)?se=0:(ae(`color`)||ae(`colors`)||ae(`color=true`)||ae(`color=always`))&&(se=1);function ce(){if(`FORCE_COLOR`in oe)return oe.FORCE_COLOR===`true`?1:oe.FORCE_COLOR===`false`?0:oe.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(oe.FORCE_COLOR,10),3)}function le(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function ue(e,{streamIsTTY:t,sniffFlags:n=!0}={}){let r=ce();r!==void 0&&(se=r);let i=n?se:r;if(i===0)return 0;if(n){if(ae(`color=16m`)||ae(`color=full`)||ae(`color=truecolor`))return 3;if(ae(`color=256`))return 2}if(`TF_BUILD`in oe&&`AGENT_NAME`in oe)return 1;if(e&&!t&&i===void 0)return 0;let a=i||0;if(oe.TERM===`dumb`)return a;if(s.default.platform===`win32`){let e=c.default.release().split(`.`);return Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if(`CI`in oe)return[`GITHUB_ACTIONS`,`GITEA_ACTIONS`,`CIRCLECI`].some(e=>e in oe)?3:[`TRAVIS`,`APPVEYOR`,`GITLAB_CI`,`BUILDKITE`,`DRONE`].some(e=>e in oe)||oe.CI_NAME===`codeship`?1:a;if(`TEAMCITY_VERSION`in oe)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(oe.TEAMCITY_VERSION)?1:0;if(oe.COLORTERM===`truecolor`||oe.TERM===`xterm-kitty`||oe.TERM===`xterm-ghostty`||oe.TERM===`wezterm`)return 3;if(`TERM_PROGRAM`in oe){let e=Number.parseInt((oe.TERM_PROGRAM_VERSION||``).split(`.`)[0],10);switch(oe.TERM_PROGRAM){case`iTerm.app`:return e>=3?3:2;case`Apple_Terminal`:return 2}}return/-256(color)?$/i.test(oe.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(oe.TERM)||`COLORTERM`in oe?1:a}function de(e,t={}){return le(ue(e,{streamIsTTY:e&&e.isTTY,...t}))}var fe={stdout:de({isTTY:l.default.isatty(1)}),stderr:de({isTTY:l.default.isatty(2)})};function pe(e,t,n){let r=e.indexOf(t);if(r===-1)return e;let i=t.length,a=0,o=``;do o+=e.slice(a,r)+t+n,a=r+i,r=e.indexOf(t,a);while(r!==-1);return o+=e.slice(a),o}function me(e,t,n,r){let i=0,a=``;do{let o=e[r-1]===`\r`;a+=e.slice(i,o?r-1:r)+t+(o?`\r
|
|
118
|
+
`,(0,r.getConflictResolutionRecipe)(i,e))}return a}}})),kI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MultiMetricStorage=void 0,e.MultiMetricStorage=class{_backingStorages;constructor(e){this._backingStorages=e}record(e,t,n,r){this._backingStorages.forEach(i=>{i.record(e,t,n,r)})}}})),AI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchObservableResultImpl=e.ObservableResultImpl=void 0;let t=(Jd(),d(Kd)),n=CI(),r=bI();e.ObservableResultImpl=class{_instrumentName;_valueType;_buffer=new n.AttributeHashMap;constructor(e,t){this._instrumentName=e,this._valueType=t}observe(e,n={}){if(typeof e!=`number`){t.diag.warn(`non-number value provided to metric ${this._instrumentName}: ${e}`);return}this._valueType===t.ValueType.INT&&!Number.isInteger(e)&&(t.diag.warn(`INT value type cannot accept a floating-point value for ${this._instrumentName}, ignoring the fractional digits.`),e=Math.trunc(e),!Number.isInteger(e))||this._buffer.set(n,e)}},e.BatchObservableResultImpl=class{_buffer=new Map;observe(e,i,a={}){if(!(0,r.isObservableInstrument)(e))return;let o=this._buffer.get(e);if(o??(o=new n.AttributeHashMap,this._buffer.set(e,o)),typeof i!=`number`){t.diag.warn(`non-number value provided to metric ${e._descriptor.name}: ${i}`);return}e._descriptor.valueType===t.ValueType.INT&&!Number.isInteger(i)&&(t.diag.warn(`INT value type cannot accept a floating-point value for ${e._descriptor.name}, ignoring the fractional digits.`),i=Math.trunc(i),!Number.isInteger(i))||o.set(a,i)}}})),jI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ObservableRegistry=void 0;let t=(Jd(),d(Kd)),n=bI(),r=AI(),i=XF();e.ObservableRegistry=class{_callbacks=[];_batchCallbacks=[];addCallback(e,t){this._findCallback(e,t)>=0||this._callbacks.push({callback:e,instrument:t})}removeCallback(e,t){let n=this._findCallback(e,t);n<0||this._callbacks.splice(n,1)}addBatchCallback(e,r){let i=new Set(r.filter(n.isObservableInstrument));if(i.size===0){t.diag.error(`BatchObservableCallback is not associated with valid instruments`,r);return}this._findBatchCallback(e,i)>=0||this._batchCallbacks.push({callback:e,instruments:i})}removeBatchCallback(e,t){let r=new Set(t.filter(n.isObservableInstrument)),i=this._findBatchCallback(e,r);i<0||this._batchCallbacks.splice(i,1)}async observe(e,t){let n=this._observeCallbacks(e,t),r=this._observeBatchCallbacks(e,t);return(await(0,i.PromiseAllSettled)([...n,...r])).filter(i.isPromiseAllSettledRejectionResult).map(e=>e.reason)}_observeCallbacks(e,t){return this._callbacks.map(async({callback:n,instrument:a})=>{let o=new r.ObservableResultImpl(a._descriptor.name,a._descriptor.valueType),s=Promise.resolve(n(o));t!=null&&(s=(0,i.callWithTimeout)(s,t)),await s,a._metricStorages.forEach(t=>{t.record(o._buffer,e)})})}_observeBatchCallbacks(e,t){return this._batchCallbacks.map(async({callback:n,instruments:a})=>{let o=new r.BatchObservableResultImpl,s=Promise.resolve(n(o));t!=null&&(s=(0,i.callWithTimeout)(s,t)),await s,a.forEach(t=>{let n=o._buffer.get(t);n!=null&&t._metricStorages.forEach(t=>{t.record(n,e)})})})}_findCallback(e,t){return this._callbacks.findIndex(n=>n.callback===e&&n.instrument===t)}_findBatchCallback(e,t){return this._batchCallbacks.findIndex(n=>n.callback===e&&(0,i.setEquals)(n.instruments,t))}}})),MI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.SyncMetricStorage=void 0;let t=SI(),n=wI(),r=TI();e.SyncMetricStorage=class extends t.MetricStorage{_attributesProcessor;_aggregationCardinalityLimit;_deltaMetricStorage;_temporalMetricStorage;constructor(e,t,i,a,o){super(e),this._attributesProcessor=i,this._aggregationCardinalityLimit=o,this._deltaMetricStorage=new n.DeltaMetricProcessor(t,this._aggregationCardinalityLimit),this._temporalMetricStorage=new r.TemporalMetricProcessor(t,a)}record(e,t,n,r){t=this._attributesProcessor.process(t,n),this._deltaMetricStorage.record(e,t,n,r)}collect(e,t){let n=this._deltaMetricStorage.collect();return this._temporalMetricStorage.buildMetrics(e,this._instrumentDescriptor,n,t)}}})),NI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.createDenyListAttributesProcessor=e.createAllowListAttributesProcessor=e.createMultiAttributesProcessor=e.createNoopAttributesProcessor=void 0;var t=class{process(e,t){return e}},n=class{_processors;constructor(e){this._processors=e}process(e,t){let n=e;for(let e of this._processors)n=e.process(n,t);return n}},r=class{_allowedAttributeNames;constructor(e){this._allowedAttributeNames=e}process(e,t){let n={};return Object.keys(e).filter(e=>this._allowedAttributeNames.includes(e)).forEach(t=>n[t]=e[t]),n}},i=class{_deniedAttributeNames;constructor(e){this._deniedAttributeNames=e}process(e,t){let n={};return Object.keys(e).filter(e=>!this._deniedAttributeNames.includes(e)).forEach(t=>n[t]=e[t]),n}};function a(){return l}e.createNoopAttributesProcessor=a;function o(e){return new n(e)}e.createMultiAttributesProcessor=o;function s(e){return new r(e)}e.createAllowListAttributesProcessor=s;function c(e){return new i(e)}e.createDenyListAttributesProcessor=c;let l=new t})),PI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MeterSharedState=void 0;let t=yI(),n=xI(),r=XF(),i=EI(),a=OI(),o=kI(),s=jI(),c=MI(),l=NI();e.MeterSharedState=class{_meterProviderSharedState;_instrumentationScope;metricStorageRegistry=new a.MetricStorageRegistry;observableRegistry=new s.ObservableRegistry;meter;constructor(e,t){this._meterProviderSharedState=e,this._instrumentationScope=t,this.meter=new n.Meter(this)}registerMetricStorage(e){let t=this._registerMetricStorage(e,c.SyncMetricStorage);return t.length===1?t[0]:new o.MultiMetricStorage(t)}registerAsyncMetricStorage(e){return this._registerMetricStorage(e,i.AsyncMetricStorage)}async collect(e,t,n){let i=await this.observableRegistry.observe(t,n?.timeoutMillis),a=this.metricStorageRegistry.getStorages(e);if(a.length===0)return null;let o=a.map(n=>n.collect(e,t)).filter(r.isNotNullish);return o.length===0?{errors:i}:{scopeMetrics:{scope:this._instrumentationScope,metrics:o},errors:i}}_registerMetricStorage(e,n){let r=this._meterProviderSharedState.viewRegistry.findViews(e,this._instrumentationScope).map(r=>{let i=(0,t.createInstrumentDescriptorWithView)(r,e),a=this.metricStorageRegistry.findOrUpdateCompatibleStorage(i);if(a!=null)return a;let o=new n(i,r.aggregation.createAggregator(i),r.attributesProcessor,this._meterProviderSharedState.metricCollectors,r.aggregationCardinalityLimit);return this.metricStorageRegistry.register(o),o});if(r.length===0){let t=this._meterProviderSharedState.selectAggregations(e.type).map(([t,r])=>{let i=this.metricStorageRegistry.findOrUpdateCompatibleCollectorStorage(t,e);if(i!=null)return i;let a=r.createAggregator(e),o=t.selectCardinalityLimit(e.type),s=new n(e,a,(0,l.createNoopAttributesProcessor)(),[t],o);return this.metricStorageRegistry.registerForCollector(t,s),s});r=r.concat(t)}return r}}})),FI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MeterProviderSharedState=void 0;let t=XF(),n=vI(),r=PI(),i=fI();e.MeterProviderSharedState=class{resource;viewRegistry=new n.ViewRegistry;metricCollectors=[];meterSharedStates=new Map;constructor(e){this.resource=e}getMeterSharedState(e){let n=(0,t.instrumentationScopeId)(e),i=this.meterSharedStates.get(n);return i??(i=new r.MeterSharedState(this,e),this.meterSharedStates.set(n,i)),i}selectAggregations(e){let t=[];for(let n of this.metricCollectors)t.push([n,(0,i.toAggregation)(n.selectAggregation(e))]);return t}}})),II=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MetricCollector=void 0;let t=tj();e.MetricCollector=class{_sharedState;_metricReader;constructor(e,t){this._sharedState=e,this._metricReader=t}async collect(e){let n=(0,t.millisToHrTime)(Date.now()),r=[],i=[],a=Array.from(this._sharedState.meterSharedStates.values()).map(async t=>{let a=await t.collect(this,n,e);a?.scopeMetrics!=null&&r.push(a.scopeMetrics),a?.errors!=null&&i.push(...a.errors)});return await Promise.all(a),{resourceMetrics:{resource:this._sharedState.resource,scopeMetrics:r},errors:i}}async forceFlush(e){await this._metricReader.forceFlush(e)}async shutdown(e){await this._metricReader.shutdown(e)}selectAggregationTemporality(e){return this._metricReader.selectAggregationTemporality(e)}selectAggregation(e){return this._metricReader.selectAggregation(e)}selectCardinalityLimit(e){return this._metricReader.selectCardinalityLimit?.(e)??2e3}}})),LI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ExactPredicate=e.PatternPredicate=void 0;let t=/[\^$\\.+?()[\]{}|]/g;e.PatternPredicate=class e{_matchAll;_regexp;constructor(t){t===`*`?(this._matchAll=!0,this._regexp=/.*/):(this._matchAll=!1,this._regexp=new RegExp(e.escapePattern(t)))}match(e){return this._matchAll?!0:this._regexp.test(e)}static escapePattern(e){return`^${e.replace(t,`\\$&`).replace(`*`,`.*`)}$`}static hasWildcard(e){return e.includes(`*`)}},e.ExactPredicate=class{_matchAll;_pattern;constructor(e){this._matchAll=e===void 0,this._pattern=e}match(e){return!!(this._matchAll||e===this._pattern)}}})),oee=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.InstrumentSelector=void 0;let t=LI();e.InstrumentSelector=class{_nameFilter;_type;_unitFilter;constructor(e){this._nameFilter=new t.PatternPredicate(e?.name??`*`),this._type=e?.type,this._unitFilter=new t.ExactPredicate(e?.unit)}getType(){return this._type}getNameFilter(){return this._nameFilter}getUnitFilter(){return this._unitFilter}}})),RI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MeterSelector=void 0;let t=LI();e.MeterSelector=class{_nameFilter;_versionFilter;_schemaUrlFilter;constructor(e){this._nameFilter=new t.ExactPredicate(e?.name),this._versionFilter=new t.ExactPredicate(e?.version),this._schemaUrlFilter=new t.ExactPredicate(e?.schemaUrl)}getNameFilter(){return this._nameFilter}getVersionFilter(){return this._versionFilter}getSchemaUrlFilter(){return this._schemaUrlFilter}}})),zI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.View=void 0;let t=LI(),n=NI(),r=oee(),i=RI(),a=fI();function o(e){return e.instrumentName==null&&e.instrumentType==null&&e.instrumentUnit==null&&e.meterName==null&&e.meterVersion==null&&e.meterSchemaUrl==null}function s(e){if(o(e))throw Error(`Cannot create view with no selector arguments supplied`);if(e.name!=null&&(e?.instrumentName==null||t.PatternPredicate.hasWildcard(e.instrumentName)))throw Error(`Views with a specified name must be declared with an instrument selector that selects at most one instrument per meter.`)}e.View=class{name;description;aggregation;attributesProcessor;instrumentSelector;meterSelector;aggregationCardinalityLimit;constructor(e){s(e),e.attributesProcessors==null?this.attributesProcessor=(0,n.createNoopAttributesProcessor)():this.attributesProcessor=(0,n.createMultiAttributesProcessor)(e.attributesProcessors),this.name=e.name,this.description=e.description,this.aggregation=(0,a.toAggregation)(e.aggregation??{type:a.AggregationType.DEFAULT}),this.instrumentSelector=new r.InstrumentSelector({name:e.instrumentName,type:e.instrumentType,unit:e.instrumentUnit}),this.meterSelector=new i.MeterSelector({name:e.meterName,version:e.meterVersion,schemaUrl:e.meterSchemaUrl}),this.aggregationCardinalityLimit=e.aggregationCardinalityLimit}}})),BI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MeterProvider=void 0;let t=(Jd(),d(Kd)),n=bj(),r=FI(),i=II(),a=zI();e.MeterProvider=class{_sharedState;_shutdown=!1;constructor(e){if(this._sharedState=new r.MeterProviderSharedState(e?.resource??(0,n.defaultResource)()),e?.views!=null&&e.views.length>0)for(let t of e.views)this._sharedState.viewRegistry.addView(new a.View(t));if(e?.readers!=null&&e.readers.length>0)for(let t of e.readers){let e=new i.MetricCollector(this._sharedState,t);t.setMetricProducer(e),this._sharedState.metricCollectors.push(e)}}getMeter(e,n=``,r={}){return this._shutdown?(t.diag.warn(`A shutdown MeterProvider cannot provide a Meter`),(0,t.createNoopMeter)()):this._sharedState.getMeterSharedState({name:e,version:n,schemaUrl:r.schemaUrl}).meter}async shutdown(e){if(this._shutdown){t.diag.warn(`shutdown may only be called once per MeterProvider`);return}this._shutdown=!0,await Promise.all(this._sharedState.metricCollectors.map(t=>t.shutdown(e)))}async forceFlush(e){if(this._shutdown){t.diag.warn(`invalid attempt to force flush after MeterProvider shutdown`);return}await Promise.all(this._sharedState.metricCollectors.map(t=>t.forceFlush(e)))}}})),VI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.TimeoutError=e.createDenyListAttributesProcessor=e.createAllowListAttributesProcessor=e.AggregationType=e.MeterProvider=e.ConsoleMetricExporter=e.InMemoryMetricExporter=e.PeriodicExportingMetricReader=e.MetricReader=e.InstrumentType=e.DataPointType=e.AggregationTemporality=void 0;var t=JF();Object.defineProperty(e,`AggregationTemporality`,{enumerable:!0,get:function(){return t.AggregationTemporality}});var n=YF();Object.defineProperty(e,`DataPointType`,{enumerable:!0,get:function(){return n.DataPointType}}),Object.defineProperty(e,`InstrumentType`,{enumerable:!0,get:function(){return n.InstrumentType}});var r=mI();Object.defineProperty(e,`MetricReader`,{enumerable:!0,get:function(){return r.MetricReader}});var i=hI();Object.defineProperty(e,`PeriodicExportingMetricReader`,{enumerable:!0,get:function(){return i.PeriodicExportingMetricReader}});var a=gI();Object.defineProperty(e,`InMemoryMetricExporter`,{enumerable:!0,get:function(){return a.InMemoryMetricExporter}});var o=_I();Object.defineProperty(e,`ConsoleMetricExporter`,{enumerable:!0,get:function(){return o.ConsoleMetricExporter}});var s=BI();Object.defineProperty(e,`MeterProvider`,{enumerable:!0,get:function(){return s.MeterProvider}});var c=fI();Object.defineProperty(e,`AggregationType`,{enumerable:!0,get:function(){return c.AggregationType}});var l=NI();Object.defineProperty(e,`createAllowListAttributesProcessor`,{enumerable:!0,get:function(){return l.createAllowListAttributesProcessor}}),Object.defineProperty(e,`createDenyListAttributesProcessor`,{enumerable:!0,get:function(){return l.createDenyListAttributesProcessor}});var u=XF();Object.defineProperty(e,`TimeoutError`,{enumerable:!0,get:function(){return u.TimeoutError}})})),HI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.StatsbeatFeatureType=e.EU_ENDPOINTS=e.EU_CONNECTION_STRING=e.NON_EU_CONNECTION_STRING=e.AIMS_FORMAT=e.AIMS_API_VERSION=e.AIMS_URI=e.StatsbeatCounter=e.AttachTypeName=e.StatsbeatResourceProvider=e.MAX_STATSBEAT_FAILURES=e.AZURE_MONITOR_AUTO_ATTACH=e.STATSBEAT_LANGUAGE=e.NetworkStatsbeat=void 0,e.isStatsbeatShutdownStatus=i,e.NetworkStatsbeat=class{constructor(e,t){this.endpoint=e,this.host=t,this.totalRequestCount=0,this.totalSuccessfulRequestCount=0,this.totalReadFailureCount=0,this.totalWriteFailureCount=0,this.totalFailedRequestCount=[],this.retryCount=[],this.exceptionCount=[],this.throttleCount=[],this.intervalRequestExecutionTime=0,this.lastIntervalRequestExecutionTime=0,this.lastTime=+new Date,this.lastRequestCount=0,this.averageRequestExecutionTime=0}},e.STATSBEAT_LANGUAGE=`node`,e.AZURE_MONITOR_AUTO_ATTACH=`AZURE_MONITOR_AUTO_ATTACH`,e.MAX_STATSBEAT_FAILURES=3,e.StatsbeatResourceProvider={appsvc:`appsvc`,aks:`aks`,functions:`functions`,vm:`vm`,unknown:`unknown`};var t;(function(e){e.INTEGRATED_AUTO=`IntegratedAuto`,e.MANUAL=`Manual`})(t||(e.AttachTypeName=t={}));var n;(function(e){e.SUCCESS_COUNT=`Request_Success_Count`,e.FAILURE_COUNT=`Request_Failure_Count`,e.RETRY_COUNT=`Retry_Count`,e.THROTTLE_COUNT=`Throttle_Count`,e.EXCEPTION_COUNT=`Exception_Count`,e.AVERAGE_DURATION=`Request_Duration`,e.READ_FAILURE_COUNT=`Read_Failure_Count`,e.WRITE_FAILURE_COUNT=`Write_Failure_Count`,e.ATTACH=`Attach`,e.FEATURE=`Feature`})(n||(e.StatsbeatCounter=n={})),e.AIMS_URI=`http://169.254.169.254/metadata/instance/compute`,e.AIMS_API_VERSION=`api-version=2017-12-01`,e.AIMS_FORMAT=`format=json`,e.NON_EU_CONNECTION_STRING=`InstrumentationKey=c4a29126-a7cb-47e5-b348-11414998b11e;IngestionEndpoint=https://westus-0.in.applicationinsights.azure.com`,e.EU_CONNECTION_STRING=`InstrumentationKey=7dc56bab-3c0c-4e9f-9ebb-d1acadee8d0f;IngestionEndpoint=https://westeurope-5.in.applicationinsights.azure.com`,e.EU_ENDPOINTS=[`westeurope`,`northeurope`,`francecentral`,`francesouth`,`germanywestcentral`,`norwayeast`,`norwaywest`,`swedencentral`,`switzerlandnorth`,`switzerlandwest`,`uksouth`,`ukwest`];var r;(function(e){e[e.FEATURE=0]=`FEATURE`,e[e.INSTRUMENTATION=1]=`INSTRUMENTATION`})(r||(e.StatsbeatFeatureType=r={}));function i(e){return e===401||e===403||e===503}})),UI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.StatsbeatMetrics=void 0;let t=(kM(),d(Gj)),n=EF(),r=(Jd(),d(Kd)),i=HI(),a=t.__importStar(require(`node:os`));e.StatsbeatMetrics=class{constructor(){this.resourceProvider=i.StatsbeatResourceProvider.unknown,this.vmInfo={},this.os=a.type(),this.resourceIdentifier=``}async getResourceProvider(){this.resourceProvider=i.StatsbeatResourceProvider.unknown,process.env.AKS_ARM_NAMESPACE_ID?(this.resourceProvider=i.StatsbeatResourceProvider.aks,this.resourceIdentifier=process.env.AKS_ARM_NAMESPACE_ID):process.env.WEBSITE_SITE_NAME?(this.resourceProvider=i.StatsbeatResourceProvider.appsvc,this.resourceIdentifier=process.env.WEBSITE_SITE_NAME,process.env.WEBSITE_HOME_STAMPNAME&&(this.resourceIdentifier+=`/`+process.env.WEBSITE_HOME_STAMPNAME)):process.env.FUNCTIONS_WORKER_RUNTIME?(this.resourceProvider=i.StatsbeatResourceProvider.functions,process.env.WEBSITE_HOSTNAME&&(this.resourceIdentifier=process.env.WEBSITE_HOSTNAME)):await this.getAzureComputeMetadata()?(this.resourceProvider=i.StatsbeatResourceProvider.vm,this.resourceIdentifier=this.vmInfo.id+`/`+this.vmInfo.subscriptionId,this.vmInfo.osType&&(this.os=this.vmInfo.osType)):this.resourceProvider=i.StatsbeatResourceProvider.unknown}async getAzureComputeMetadata(){let e=(0,n.createDefaultHttpClient)(),t={url:`${i.AIMS_URI}?${i.AIMS_API_VERSION}&${i.AIMS_FORMAT}`,timeout:5e3,method:`GET`,allowInsecureConnection:!0},a=(0,n.createPipelineRequest)(t);return await e.sendRequest(a).then(e=>{if(e.status===200){this.vmInfo.isVM=!0;let t=``;return e.on(`data`,e=>{t+=e}),e.on(`end`,()=>{try{let e=JSON.parse(t);this.vmInfo.id=e.vmId||``,this.vmInfo.subscriptionId=e.subscriptionId||``,this.vmInfo.osType=e.osType||``}catch(e){r.diag.debug(`Failed to parse JSON: `,e)}}),!0}else return!1}).catch(()=>!1),!1}getConnectionString(e){let t=e;for(let e=0;e<i.EU_ENDPOINTS.length;e++)if(t.includes(i.EU_ENDPOINTS[e]))return i.EU_CONNECTION_STRING;return i.NON_EU_CONNECTION_STRING}}})),WI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.resourceMetricsToEnvelope=l,e.isAksAttach=u,e.shouldSendToOtlp=d,e.isStandardMetric=f,e.getAttachType=p;let t=VI(),n=tL(),r=dN(),i=AM(),a=HI(),o=eL(),s=new Map([[r.OTelPerformanceCounterNames.PRIVATE_BYTES,r.BreezePerformanceCounterNames.PRIVATE_BYTES],[r.OTelPerformanceCounterNames.AVAILABLE_BYTES,r.BreezePerformanceCounterNames.AVAILABLE_BYTES],[r.OTelPerformanceCounterNames.PROCESSOR_TIME,r.BreezePerformanceCounterNames.PROCESSOR_TIME],[r.OTelPerformanceCounterNames.PROCESS_TIME_STANDARD,r.BreezePerformanceCounterNames.PROCESS_TIME_STANDARD],[r.OTelPerformanceCounterNames.PROCESS_TIME_NORMALIZED,r.BreezePerformanceCounterNames.PROCESS_TIME_NORMALIZED],[r.OTelPerformanceCounterNames.REQUEST_RATE,r.BreezePerformanceCounterNames.REQUEST_RATE],[r.OTelPerformanceCounterNames.REQUEST_DURATION,r.BreezePerformanceCounterNames.REQUEST_DURATION],[r.OTelPerformanceCounterNames.EXCEPTION_RATE,r.BreezePerformanceCounterNames.EXCEPTION_RATE]]);function c(e){let t={};if(e)for(let n of Object.keys(e))t[n]=e[n];return t}function l(e,r,a){let l=[],p=new Date,m=r,h,g;if(a){g=`Microsoft.ApplicationInsights.Statsbeat`;let e=(0,o.getInstance)();h=Object.assign({},e.tags)}else g=`Microsoft.ApplicationInsights.Metric`,h=(0,n.createTagsFromResource)(e.resource);return e.scopeMetrics.forEach(e=>{e.metrics.forEach(e=>{e.dataPoints.forEach(n=>{let r={metrics:[],version:2,properties:{}};if(r.properties=c(n.attributes),d()&&u()&&!f(n)&&process.env[i.ENV_APPLICATIONINSIGHTS_METRICS_TO_LOGANALYTICS_ENABLED]===`false`&&!a)return;d()&&u()&&!a?r.properties[`_MS.SentToAMW`]=`True`:u()&&!a&&(r.properties[`_MS.SentToAMW`]=`False`);let o;s.has(e.descriptor.name)&&(o=s.get(e.descriptor.name));let _={name:o||e.descriptor.name,value:0,dataPointType:`Aggregation`};e.dataPointType===t.DataPointType.SUM||e.dataPointType===t.DataPointType.GAUGE?(_.value=n.value,_.count=1):(_.value=n.value.sum||0,_.count=n.value.count,_.max=n.value.max,_.min=n.value.min),r.metrics.push(_);let v={name:g,time:p,sampleRate:100,instrumentationKey:m,tags:h,version:1,data:{baseType:`MetricData`,baseData:Object.assign({},r)}};l.push(v)})})}),l}function u(){return!!(process.env[i.ENV_AZURE_MONITOR_AUTO_ATTACH]===`true`&&process.env.AKS_ARM_NAMESPACE_ID)}function d(){return!!(process.env[i.ENV_OTLP_METRICS_ENDPOINT]&&process.env[i.ENV_OTEL_METRICS_EXPORTER]?.includes(`otlp`))}function f(e){return e.attributes?.[`_MS.IsAutocollected`]===`True`}function p(){return process.env[a.AZURE_MONITOR_AUTO_ATTACH]===`true`?a.AttachTypeName.INTEGRATED_AUTO:a.AttachTypeName.MANUAL}})),GI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AzureMonitorStatsbeatExporter=void 0;let t=(Jd(),d(Kd)),n=uN(),r=WI(),i=MM(),a=eL();e.AzureMonitorStatsbeatExporter=class extends i.AzureMonitorBaseExporter{constructor(e){super(e,!0),this._isShutdown=!1,this._sender=new a.HttpSender({endpointUrl:this.endpointUrl,instrumentationKey:this.instrumentationKey,trackStatsbeat:this.trackStatsbeat,exporterOptions:e,isStatsbeatSender:!0})}async export(e,i){if(this._isShutdown){setTimeout(()=>i({code:n.ExportResultCode.FAILED}),0);return}let a=(0,r.resourceMetricsToEnvelope)(e,this.instrumentationKey,!0);t.context.with((0,n.suppressTracing)(t.context.active()),async()=>{i(await this._sender.exportEnvelopes(a))})}async shutdown(){return this._isShutdown=!0,this._sender.shutdown()}async forceFlush(){return Promise.resolve()}}})),KI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.NetworkStatsbeatMetrics=void 0;let t=(kM(),d(Gj)),n=(Jd(),d(Kd)),r=VI(),i=t.__importStar(Uj()),a=UI(),o=HI(),s=GI(),c=AM(),l=WI();var u=class e extends a.StatsbeatMetrics{constructor(e){super(),this.disableNonEssentialStatsbeat=!!process.env[c.ENV_DISABLE_STATSBEAT],this.isInitialized=!1,this.statsCollectionShortInterval=9e5,this.networkStatsbeatCollection=[],this.attach=(0,l.getAttachType)(),this.connectionString=super.getConnectionString(e.endpointUrl);let t={connectionString:this.connectionString};this.networkAzureExporter=new s.AzureMonitorStatsbeatExporter(t);let n={exporter:this.networkAzureExporter,exportIntervalMillis:e.networkCollectionInterval||this.statsCollectionShortInterval};this.networkStatsbeatMeterProvider=new r.MeterProvider({readers:[new r.PeriodicExportingMetricReader(n)]}),this.networkStatsbeatMeter=this.networkStatsbeatMeterProvider.getMeter(`Azure Monitor Network Statsbeat`),this.endpointUrl=e.endpointUrl,this.runtimeVersion=process.version,this.language=o.STATSBEAT_LANGUAGE,this.version=i.packageVersion,this.host=this.getShortHost(e.endpointUrl),this.cikey=e.instrumentationKey,this.successCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.SUCCESS_COUNT),this.failureCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.FAILURE_COUNT),this.retryCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.RETRY_COUNT),this.throttleCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.THROTTLE_COUNT),this.exceptionCountGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.EXCEPTION_COUNT),this.averageDurationGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.AVERAGE_DURATION),this.disableNonEssentialStatsbeat||(this.readFailureGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.READ_FAILURE_COUNT),this.writeFailureGauge=this.networkStatsbeatMeter.createObservableGauge(o.StatsbeatCounter.WRITE_FAILURE_COUNT)),this.isInitialized=!0,this.initialize(),this.commonProperties={os:this.os,rp:this.resourceProvider,cikey:this.cikey,runtimeVersion:this.runtimeVersion,language:this.language,version:this.version,attach:this.attach},this.networkProperties={endpoint:this.endpointUrl,host:this.host}}shutdown(){return this.networkStatsbeatMeterProvider.shutdown()}async initialize(){var e,t;try{await super.getResourceProvider(),this.successCountGauge.addCallback(this.successCallback.bind(this)),this.networkStatsbeatMeter.addBatchObservableCallback(this.failureCallback.bind(this),[this.failureCountGauge]),this.networkStatsbeatMeter.addBatchObservableCallback(this.retryCallback.bind(this),[this.retryCountGauge]),this.networkStatsbeatMeter.addBatchObservableCallback(this.throttleCallback.bind(this),[this.throttleCountGauge]),this.networkStatsbeatMeter.addBatchObservableCallback(this.exceptionCallback.bind(this),[this.exceptionCountGauge]),this.disableNonEssentialStatsbeat||((e=this.readFailureGauge)==null||e.addCallback(this.readFailureCallback.bind(this)),(t=this.writeFailureGauge)==null||t.addCallback(this.writeFailureCallback.bind(this))),this.averageDurationGauge.addCallback(this.durationCallback.bind(this))}catch{n.diag.debug(`Call to get the resource provider failed.`)}}successCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);if(t.totalSuccessfulRequestCount>0){let n=Object.assign(Object.assign({},this.commonProperties),this.networkProperties);e.observe(t.totalSuccessfulRequestCount,n),t.totalSuccessfulRequestCount=0}}failureCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign(Object.assign({},this.networkProperties),this.commonProperties),{statusCode:0});for(let r=0;r<t.totalFailedRequestCount.length;r++)t.totalFailedRequestCount[r].count>0&&(n.statusCode=t.totalFailedRequestCount[r].statusCode,e.observe(this.failureCountGauge,t.totalFailedRequestCount[r].count,Object.assign({},n)),t.totalFailedRequestCount[r].count=0)}retryCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign(Object.assign({},this.networkProperties),this.commonProperties),{statusCode:0});for(let r=0;r<t.retryCount.length;r++)t.retryCount[r].count>0&&(n.statusCode=t.retryCount[r].statusCode,e.observe(this.retryCountGauge,t.retryCount[r].count,Object.assign({},n)),t.retryCount[r].count=0)}throttleCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign(Object.assign({},this.networkProperties),this.commonProperties),{statusCode:0});for(let r=0;r<t.throttleCount.length;r++)t.throttleCount[r].count>0&&(n.statusCode=t.throttleCount[r].statusCode,e.observe(this.throttleCountGauge,t.throttleCount[r].count,Object.assign({},n)),t.throttleCount[r].count=0)}exceptionCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign(Object.assign({},this.networkProperties),this.commonProperties),{exceptionType:``});for(let r=0;r<t.exceptionCount.length;r++)t.exceptionCount[r].count>0&&(n.exceptionType=t.exceptionCount[r].exceptionType,e.observe(this.exceptionCountGauge,t.exceptionCount[r].count,Object.assign({},n)),t.exceptionCount[r].count=0)}durationCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=Object.assign(Object.assign({},this.networkProperties),this.commonProperties);for(let e=0;e<this.networkStatsbeatCollection.length;e++){let t=this.networkStatsbeatCollection[e];t.time=Number(new Date);let n=t.totalRequestCount-t.lastRequestCount||0;n>0?t.averageRequestExecutionTime=(t.intervalRequestExecutionTime-t.lastIntervalRequestExecutionTime)/n||0:t.averageRequestExecutionTime=0,t.lastIntervalRequestExecutionTime=t.intervalRequestExecutionTime,t.lastRequestCount=t.totalRequestCount,t.lastTime=t.time}t.averageRequestExecutionTime>0&&(e.observe(t.averageRequestExecutionTime,n),t.averageRequestExecutionTime=0)}readFailureCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);if(t.totalReadFailureCount>0){let n=Object.assign(Object.assign({},this.commonProperties),this.networkProperties);e.observe(t.totalReadFailureCount,n),t.totalReadFailureCount=0}}writeFailureCallback(e){let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);if(t.totalWriteFailureCount>0){let n=Object.assign(Object.assign({},this.commonProperties),this.networkProperties);e.observe(t.totalWriteFailureCount,n),t.totalWriteFailureCount=0}}countSuccess(e){if(!this.isInitialized)return;let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);t.totalRequestCount++,t.totalSuccessfulRequestCount++,t.intervalRequestExecutionTime+=e}countFailure(e,t){if(!this.isInitialized)return;let n=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),r=n.totalFailedRequestCount.find(e=>t===e.statusCode);r?r.count++:n.totalFailedRequestCount.push({statusCode:t,count:1}),n.totalRequestCount++,n.intervalRequestExecutionTime+=e}countRetry(e){if(!this.isInitialized)return;let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=t.retryCount.find(t=>e===t.statusCode);n?n.count++:t.retryCount.push({statusCode:e,count:1})}countThrottle(e){if(!this.isInitialized)return;let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=t.throttleCount.find(t=>e===t.statusCode);n?n.count++:t.throttleCount.push({statusCode:e,count:1})}countReadFailure(){if(!this.isInitialized||this.disableNonEssentialStatsbeat)return;let e=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);e.totalReadFailureCount++}countWriteFailure(){if(!this.isInitialized||this.disableNonEssentialStatsbeat)return;let e=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host);e.totalWriteFailureCount++}countException(e){if(!this.isInitialized)return;let t=this.getNetworkStatsbeatCounter(this.endpointUrl,this.host),n=t.exceptionCount.find(t=>e.name===t.exceptionType);n?n.count++:t.exceptionCount.push({exceptionType:e.name,count:1})}getNetworkStatsbeatCounter(e,t){for(let n=0;n<this.networkStatsbeatCollection.length;n++)if(e===this.networkStatsbeatCollection[n].endpoint&&t===this.networkStatsbeatCollection[n].host)return this.networkStatsbeatCollection[n];let n=new o.NetworkStatsbeat(e,t);return this.networkStatsbeatCollection.push(n),n}getShortHost(e){let t=e;try{let n=new RegExp(/^https?:\/\/(?:www\.)?([^/.-]+)/).exec(e);n!==null&&n.length>1&&(t=n[1]),t=t.replace(`.in.applicationinsights.azure.com`,``)}catch{n.diag.debug(`Failed to get the short host name.`)}return t}static getInstance(t){return e.instance||=new e(t),e.instance}};e.NetworkStatsbeatMetrics=u,u.instance=null})),qI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LongIntervalStatsbeatMetrics=void 0;let t=(kM(),d(Gj)),n=(Jd(),d(Kd)),r=uN(),i=VI(),a=t.__importStar(Uj()),o=UI(),s=HI(),c=GI(),l=WI();var u=class e extends o.StatsbeatMetrics{constructor(e){super(),this.statsCollectionLongInterval=864e5,this.attach=(0,l.getAttachType)(),this.feature=0,this.instrumentation=0,this.isInitialized=!1,this.connectionString=super.getConnectionString(e.endpointUrl);let t={connectionString:this.connectionString,disableOfflineStorage:e.disableOfflineStorage};this.setFeatures(),this.longIntervalAzureExporter=new c.AzureMonitorStatsbeatExporter(t);let n={exporter:this.longIntervalAzureExporter,exportIntervalMillis:Number(process.env.LONG_INTERVAL_EXPORT_MILLIS)||this.statsCollectionLongInterval};this.longIntervalMetricReader=new i.PeriodicExportingMetricReader(n),this.longIntervalStatsbeatMeterProvider=new i.MeterProvider({readers:[this.longIntervalMetricReader]}),this.longIntervalStatsbeatMeter=this.longIntervalStatsbeatMeterProvider.getMeter(`Azure Monitor Long Interval Statsbeat`),this.runtimeVersion=process.version,this.language=s.STATSBEAT_LANGUAGE,this.version=a.packageVersion,this.cikey=e.instrumentationKey,this.featureStatsbeatGauge=this.longIntervalStatsbeatMeter.createObservableGauge(s.StatsbeatCounter.FEATURE),this.attachStatsbeatGauge=this.longIntervalStatsbeatMeter.createObservableGauge(s.StatsbeatCounter.ATTACH),this.isInitialized=!0,this.initialize(),this.commonProperties={os:this.os,rp:this.resourceProvider,cikey:this.cikey,runtimeVersion:this.runtimeVersion,language:this.language,version:this.version,attach:this.attach},this.attachProperties={rpId:this.resourceIdentifier}}async initialize(){try{await this.getResourceProvider(),this.attachStatsbeatGauge.addCallback(this.attachCallback.bind(this)),this.longIntervalStatsbeatMeter.addBatchObservableCallback(this.getEnvironmentStatus.bind(this),[this.featureStatsbeatGauge]),setTimeout(async()=>{try{let e=await this.longIntervalMetricReader.collect();e?this.longIntervalAzureExporter.export(e.resourceMetrics,e=>{e.code!==r.ExportResultCode.SUCCESS&&n.diag.debug(`LongIntervalStatsbeat: metrics export failed (error ${e.error})`)}):n.diag.debug(`LongIntervalStatsbeat: No metrics collected`)}catch(e){n.diag.debug(`LongIntervalStatsbeat: Error collecting metrics: ${e}`)}},15e3)}catch{n.diag.debug(`Call to get the resource provider failed.`)}}getEnvironmentStatus(e){this.setFeatures();let t;this.instrumentation>0&&(t=Object.assign(Object.assign({},this.commonProperties),{feature:this.instrumentation,type:s.StatsbeatFeatureType.INSTRUMENTATION}),e.observe(this.featureStatsbeatGauge,1,Object.assign({},t))),this.feature>0&&(t=Object.assign(Object.assign({},this.commonProperties),{feature:this.feature,type:s.StatsbeatFeatureType.FEATURE}),e.observe(this.featureStatsbeatGauge,1,Object.assign({},t)))}setFeatures(){let e=process.env.AZURE_MONITOR_STATSBEAT_FEATURES;if(e)try{this.feature=JSON.parse(e).feature,this.instrumentation=JSON.parse(e).instrumentation}catch(e){n.diag.debug(`LongIntervalStatsbeat: Failed to parse features/instrumentations (error ${e})`)}}attachCallback(e){let t=Object.assign(Object.assign({},this.commonProperties),this.attachProperties);e.observe(1,t)}shutdown(){return this.longIntervalStatsbeatMeterProvider.shutdown()}static getInstance(t){return e.instance||=new e(t),e.instance}};e.LongIntervalStatsbeatMetrics=u,u.instance=null})),JI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isRetriable=t,e.msToTimeSpan=n;function t(e){return e===206||e===401||e===403||e===408||e===429||e===439||e===500||e===502||e===503||e===504}function n(e){(isNaN(e)||e<0)&&(e=0);let t=(e/1e3%60).toFixed(7).replace(/0{0,4}$/,``),n=``+Math.floor(e/(1e3*60))%60,r=``+Math.floor(e/(1e3*60*60))%24,i=Math.floor(e/(1e3*60*60*24));return t=t.indexOf(`.`)<2?`0`+t:t,n=n.length<2?`0`+n:n,r=r.length<2?`0`+r:r,(i>0?i+`.`:``)+r+`:`+n+`:`+t}})),YI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BaseSender=void 0;let t=(Jd(),d(Kd)),n=gN(),r=uN(),i=KI(),a=qI(),o=HI(),s=JI(),c=AM();e.BaseSender=class{constructor(e){this.statsbeatFailureCount=0,this.batchSendRetryIntervalMs=6e4,this.numConsecutiveRedirects=0,this.disableOfflineStorage=e.exporterOptions.disableOfflineStorage||!1,this.persister=new n.FileSystemPersist(e.instrumentationKey,e.exporterOptions),e.trackStatsbeat&&(this.networkStatsbeatMetrics=i.NetworkStatsbeatMetrics.getInstance({instrumentationKey:e.instrumentationKey,endpointUrl:e.endpointUrl,disableOfflineStorage:this.disableOfflineStorage}),this.longIntervalStatsbeatMetrics=a.LongIntervalStatsbeatMetrics.getInstance({instrumentationKey:e.instrumentationKey,endpointUrl:e.endpointUrl,disableOfflineStorage:this.disableOfflineStorage})),this.retryTimer=null,this.isStatsbeatSender=e.isStatsbeatSender||!1}async exportEnvelopes(e){var n,i,a,c,l,u,d,f,p,m;if(t.diag.info(`Exporting ${e.length} envelope(s)`),e.length<1)return{code:r.ExportResultCode.SUCCESS};try{let o=new Date().getTime(),{result:d,statusCode:f}=await this.send(e),p=new Date().getTime()-o;if(this.numConsecutiveRedirects=0,f===200)return this.retryTimer||(this.retryTimer=setTimeout(()=>{this.retryTimer=null,this.sendFirstPersistedFile()},this.batchSendRetryIntervalMs),this.retryTimer.unref()),this.isStatsbeatSender||(n=this.networkStatsbeatMetrics)==null||n.countSuccess(p),{code:r.ExportResultCode.SUCCESS};if(f&&(0,s.isRetriable)(f)){if(f===429||f===439)return this.isStatsbeatSender||(i=this.networkStatsbeatMetrics)==null||i.countThrottle(f),{code:r.ExportResultCode.SUCCESS};if(d){t.diag.info(d);let n=JSON.parse(d),i=[];return n.itemsAccepted>0&&f===206&&!this.isStatsbeatSender&&((a=this.networkStatsbeatMetrics)==null||a.countSuccess(p)),n.errors&&n.errors.forEach(t=>{t.statusCode&&(0,s.isRetriable)(t.statusCode)&&i.push(e[t.index])}),i.length>0?(this.isStatsbeatSender||(c=this.networkStatsbeatMetrics)==null||c.countRetry(f),await this.persist(i)):(this.isStatsbeatSender||(l=this.networkStatsbeatMetrics)==null||l.countFailure(p,f),{code:r.ExportResultCode.FAILED})}else return this.isStatsbeatSender||(u=this.networkStatsbeatMetrics)==null||u.countRetry(f),await this.persist(e)}else return this.networkStatsbeatMetrics&&!this.isStatsbeatSender?f&&this.networkStatsbeatMetrics.countFailure(p,f):this.incrementStatsbeatFailure(),{code:r.ExportResultCode.FAILED}}catch(n){let i=n;if(i.statusCode&&(i.statusCode===307||i.statusCode===308))if(this.numConsecutiveRedirects++,this.numConsecutiveRedirects<10){if(i.response&&i.response.headers){let t=i.response.headers.get(`location`);if(t)return this.handlePermanentRedirect(t),this.exportEnvelopes(e)}}else{let e=Error(`Circular redirect`);return this.isStatsbeatSender||(d=this.networkStatsbeatMetrics)==null||d.countException(e),{code:r.ExportResultCode.FAILED,error:e}}else if(i.statusCode&&(0,s.isRetriable)(i.statusCode)&&!this.isStatsbeatSender)return(f=this.networkStatsbeatMetrics)==null||f.countRetry(i.statusCode),this.persist(e);else if(i.statusCode===400&&i.message.includes(`Invalid instrumentation key`))return this.shutdownStatsbeat(),{code:r.ExportResultCode.SUCCESS};else if(i.statusCode&&this.isStatsbeatSender&&(0,o.isStatsbeatShutdownStatus)(i.statusCode))return this.incrementStatsbeatFailure(),{code:r.ExportResultCode.SUCCESS};return this.isRetriableRestError(i)?(i.statusCode&&!this.isStatsbeatSender&&((p=this.networkStatsbeatMetrics)==null||p.countRetry(i.statusCode)),this.isStatsbeatSender||t.diag.error(`Retrying due to transient client side error. Error message:`,i.message),this.persist(e)):(this.isStatsbeatSender||(m=this.networkStatsbeatMetrics)==null||m.countException(i),this.isStatsbeatSender||t.diag.error(`Envelopes could not be exported and are not retriable. Error message:`,i.message),{code:r.ExportResultCode.FAILED,error:i})}}async persist(e){var t;try{return await this.persister.push(e)?{code:r.ExportResultCode.SUCCESS}:{code:r.ExportResultCode.FAILED,error:Error(`Failed to persist envelope in disk.`)}}catch(e){return this.isStatsbeatSender||(t=this.networkStatsbeatMetrics)==null||t.countWriteFailure(),{code:r.ExportResultCode.FAILED,error:e}}}incrementStatsbeatFailure(){this.statsbeatFailureCount++,this.statsbeatFailureCount>o.MAX_STATSBEAT_FAILURES&&this.shutdownStatsbeat()}shutdownStatsbeat(){var e;this.networkStatsbeatMetrics&&this.networkStatsbeatMetrics.shutdown(),(e=this.longIntervalStatsbeatMetrics)==null||e.shutdown(),this.statsbeatFailureCount=0}async sendFirstPersistedFile(){var e;try{let e=await this.persister.shift();e&&await this.send(e)}catch(n){this.isStatsbeatSender||(e=this.networkStatsbeatMetrics)==null||e.countReadFailure(),t.diag.warn(`Failed to fetch persisted file`,n)}}isRetriableRestError(e){let t=Object.values(c.RetriableRestErrorTypes);return!!(e&&e.code&&t.includes(e.code))}}})),XI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.HttpSender=void 0;let t=(kM(),d(Gj)).__importDefault(require(`node:url`)),n=(Jd(),d(Kd)),r=EF(),i=qF(),a=YI();e.HttpSender=class extends a.BaseSender{constructor(e){super(e),this.appInsightsClientOptions=Object.assign({host:e.endpointUrl},e.exporterOptions),this.appInsightsClientOptions.credential&&(e.aadAudience?this.appInsightsClientOptions.credentialScopes=[e.aadAudience]:this.appInsightsClientOptions.credentialScopes=[`https://monitor.azure.com//.default`]),this.appInsightsClient=new i.ApplicationInsightsClient(this.appInsightsClientOptions),this.appInsightsClient.pipeline.removePolicy({name:r.redirectPolicyName})}async send(e){let t={},n;function r(e,r){n=e,t.onResponse&&t.onResponse(e,r)}return await this.appInsightsClient.track(e,Object.assign(Object.assign({},t),{onResponse:r})),{statusCode:n?.status,result:n?.bodyAsText??``}}async shutdown(){n.diag.info(`HttpSender shutting down`)}handlePermanentRedirect(e){if(e){let n=new t.default.URL(e);n&&n.host&&(this.appInsightsClient.host=`https://`+n.host)}}}})),ZI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Context=void 0,e.getInstance=u;let t=(kM(),d(Gj)),n=t.__importStar(require(`node:os`)),r=uN(),i=(PA(),d(NA)),a=qF(),o=t.__importStar(Uj()),s=AM(),c=null;var l=class e{constructor(){this.tags={},this._loadDeviceContext(),this._loadInternalContext()}_loadDeviceContext(){this.tags[a.KnownContextTagKeys.AiDeviceOsVersion]=n&&`${n.type()} ${n.release()}`}_loadInternalContext(){let{node:t}=process.versions;[e.nodeVersion]=t.split(`.`),e.opentelemetryVersion=r.SDK_INFO[i.ATTR_TELEMETRY_SDK_VERSION],e.sdkVersion=o.packageVersion;let n=process.env[s.ENV_AZURE_MONITOR_PREFIX]?process.env[s.ENV_AZURE_MONITOR_PREFIX]:``,c=this._getVersion(),l=`${n}node${e.nodeVersion}:otel${e.opentelemetryVersion}:${c}`;this.tags[a.KnownContextTagKeys.AiInternalSdkVersion]=l}_getVersion(){return process.env[s.ENV_APPLICATIONINSIGHTS_SHIM_VERSION]?`sha${process.env[s.ENV_APPLICATIONINSIGHTS_SHIM_VERSION]}`:process.env[s.ENV_AZURE_MONITOR_DISTRO_VERSION]?`dst${process.env[s.ENV_AZURE_MONITOR_DISTRO_VERSION]}`:`ext${e.sdkVersion}`}};e.Context=l,l.sdkVersion=null,l.opentelemetryVersion=null,l.nodeVersion=``;function u(){return c||=new l,c}})),QI=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),(kM(),d(Gj)).__exportStar(ZI(),e)})),$I=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0});let t=(kM(),d(Gj));t.__exportStar(fN(),e),t.__exportStar(gN(),e),t.__exportStar(XI(),e),t.__exportStar(QI(),e)})),eL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),(kM(),d(Gj)).__exportStar($I(),e)})),tL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.hrTimeToDate=l,e.createTagsFromResource=u,e.isSqlDB=m,e.getUrl=h,e.getDependencyTarget=g,e.createResourceMetricEnvelope=_,e.serializeAttribute=v,e.shouldCreateResourceMetric=y,e.isSyntheticSource=b;let t=(kM(),d(Gj)).__importDefault(require(`node:os`)),n=(PA(),d(NA)),r=dN(),i=eL(),a=qF(),o=uN(),s=AM(),c=iL();function l(e){return new Date((0,o.hrTimeToNanoseconds)(e)/1e6)}function u(e){let t=(0,i.getInstance)(),r=Object.assign({},t.tags);return e&&e.attributes&&(r[a.KnownContextTagKeys.AiCloudRole]=f(e),r[a.KnownContextTagKeys.AiCloudRoleInstance]=p(e),e.attributes[n.SEMRESATTRS_DEVICE_ID]&&(r[a.KnownContextTagKeys.AiDeviceId]=String(e.attributes[n.SEMRESATTRS_DEVICE_ID])),e.attributes[n.SEMRESATTRS_DEVICE_MODEL_NAME]&&(r[a.KnownContextTagKeys.AiDeviceModel]=String(e.attributes[n.SEMRESATTRS_DEVICE_MODEL_NAME])),e.attributes[n.SEMRESATTRS_SERVICE_VERSION]&&(r[a.KnownContextTagKeys.AiApplicationVer]=String(e.attributes[n.SEMRESATTRS_SERVICE_VERSION]))),r}function f(e){let t=``,r=e.attributes[n.SEMRESATTRS_SERVICE_NAME],i=e.attributes[n.SEMRESATTRS_SERVICE_NAMESPACE];if(r)if(String(r).startsWith(`unknown_service`))t=i?`${i}.${r}`:String(r);else return i?`${i}.${r}`:String(r);let a=e.attributes[n.SEMRESATTRS_K8S_DEPLOYMENT_NAME];if(a)return String(a);let o=e.attributes[n.SEMRESATTRS_K8S_REPLICASET_NAME];if(o)return String(o);let s=e.attributes[n.SEMRESATTRS_K8S_STATEFULSET_NAME];if(s)return String(s);let c=e.attributes[n.SEMRESATTRS_K8S_JOB_NAME];if(c)return String(c);let l=e.attributes[n.SEMRESATTRS_K8S_CRONJOB_NAME];if(l)return String(l);let u=e.attributes[n.SEMRESATTRS_K8S_DAEMONSET_NAME];return u?String(u):t}function p(e){let r=e.attributes[n.SEMRESATTRS_K8S_POD_NAME];if(r)return String(r);let i=e.attributes[n.SEMRESATTRS_SERVICE_INSTANCE_ID];return i?String(i):t.default&&t.default.hostname()}function m(e){return e===n.DBSYSTEMVALUES_DB2||e===n.DBSYSTEMVALUES_DERBY||e===n.DBSYSTEMVALUES_MARIADB||e===n.DBSYSTEMVALUES_MSSQL||e===n.DBSYSTEMVALUES_ORACLE||e===n.DBSYSTEMVALUES_SQLITE||e===n.DBSYSTEMVALUES_OTHER_SQL||e===n.DBSYSTEMVALUES_HSQLDB||e===n.DBSYSTEMVALUES_H2}function h(e){if(!e)return``;if((0,c.getHttpMethod)(e)){let t=(0,c.getHttpUrl)(e);if(t)return String(t);{let t=(0,c.getHttpScheme)(e),n=(0,c.getHttpTarget)(e);if(t&&n){let r=(0,c.getHttpHost)(e);if(r)return`${t}://${r}${n}`;{let r=(0,c.getNetPeerPort)(e);if(r){let i=(0,c.getNetPeerName)(e);if(i)return`${t}://${i}:${r}${n}`;{let i=(0,c.getPeerIp)(e);if(i)return`${t}://${i}:${r}${n}`}}}}}}return``}function g(e){if(!e)return``;let t=e[n.SEMATTRS_PEER_SERVICE],r=(0,c.getHttpHost)(e),i=(0,c.getHttpUrl)(e),a=(0,c.getNetPeerName)(e),o=(0,c.getPeerIp)(e);return t?String(t):r?String(r):i?String(i):a?String(a):o?String(o):``}function _(e,t){if(e&&e.attributes){let r=u(e),i={};for(let t of Object.keys(e.attributes))t.startsWith(`_MS.`)||t===n.ATTR_TELEMETRY_SDK_VERSION||t===n.ATTR_TELEMETRY_SDK_LANGUAGE||t===n.ATTR_TELEMETRY_SDK_NAME||(i[t]=e.attributes[t]);if(Object.keys(i).length>0){let e={version:2,metrics:[{name:`_OTELRESOURCE_`,value:1}],properties:i};return{name:`Microsoft.ApplicationInsights.Metric`,time:new Date,sampleRate:100,instrumentationKey:t,version:1,data:{baseType:`MetricData`,baseData:e},tags:r}}}}function v(e){if(typeof e==`object`)if(e instanceof Error)try{return JSON.stringify(e,Object.getOwnPropertyNames(e))}catch{return String(e)}else if(e instanceof Uint8Array)return String(e);else try{return JSON.stringify(e)}catch{return String(e)}return String(e)}function y(){return process.env[s.ENV_OPENTELEMETRY_RESOURCE_METRIC_DISABLED]?.toLowerCase()!==`true`}function b(e){return!!e[r.experimentalOpenTelemetryValues.SYNTHETIC_TYPE]}})),nL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MessageBusDestination=e.MicrosoftEventHub=e.AzNamespace=void 0,e.AzNamespace=`az.namespace`,e.MicrosoftEventHub=`Microsoft.EventHub`,e.MessageBusDestination=`message_bus.destination`})),rL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.parseEventHubSpan=void 0;let t=(Jd(),d(Kd)),n=uN(),r=(PA(),d(NA)),i=Uj(),a=nL(),o=e=>{let t=0,r=0,a=(0,n.hrTimeToMilliseconds)(e.startTime);return e.links.forEach(({attributes:e})=>{let n=e?.[i.ENQUEUED_TIME];n&&(t+=1,r+=a-(parseFloat(n.toString())||0))}),Math.max(r/(t||1),0)};e.parseEventHubSpan=(e,n)=>{let s=e.attributes[a.AzNamespace],c=(e.attributes[r.SEMATTRS_NET_PEER_NAME]||e.attributes[`peer.address`]||`unknown`).replace(/\/$/g,``),l=e.attributes[a.MessageBusDestination]||`unknown`;switch(e.kind){case t.SpanKind.CLIENT:n.type=s,n.target=`${c}/${l}`;break;case t.SpanKind.PRODUCER:n.type=`Queue Message | ${s}`,n.target=`${c}/${l}`;break;case t.SpanKind.CONSUMER:n.type=`Queue Message | ${s}`,n.source=`${c}/${l}`,n.measurements=Object.assign(Object.assign({},n.measurements),{[i.TIME_SINCE_ENQUEUED]:o(e)});break;default:}}})),iL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.readableSpanToEnvelope=_,e.spanEventsToEnvelopes=v,e.getPeerIp=y,e.getLocationIp=b,e.getHttpClientIp=x,e.getUserAgent=S,e.getHttpUrl=C,e.getHttpMethod=w,e.getHttpStatusCode=T,e.getHttpScheme=E,e.getHttpTarget=D,e.getHttpHost=O,e.getNetPeerName=k,e.getNetPeerPort=A;let t=uN(),n=(Jd(),d(Kd)),r=(PA(),d(NA)),i=tL(),a=dN(),o=rL(),s=Uj(),c=nL(),l=qF(),u=JI();function f(e){let t=(0,i.createTagsFromResource)(e.resource);t[l.KnownContextTagKeys.AiOperationId]=e.spanContext().traceId,e.parentSpanContext?.spanId&&(t[l.KnownContextTagKeys.AiOperationParentId]=e.parentSpanContext.spanId);let o=e.attributes[r.SEMATTRS_ENDUSER_ID];o&&(t[l.KnownContextTagKeys.AiUserId]=String(o));let s=S(e.attributes);if(s&&(t[`ai.user.userAgent`]=String(s)),(0,i.isSyntheticSource)(e.attributes)&&(t[l.KnownContextTagKeys.AiOperationSyntheticSource]=`True`),e.kind===n.SpanKind.SERVER){let n=w(e.attributes);if(b(t,e.attributes),n){let i=e.attributes[r.ATTR_HTTP_ROUTE],o=C(e.attributes);if(t[l.KnownContextTagKeys.AiOperationName]=e.name,i)t[l.KnownContextTagKeys.AiOperationName]=String(`${n} ${i}`).substring(0,a.MaxPropertyLengths.TEN_BIT);else if(o)try{let e=new URL(String(o));t[l.KnownContextTagKeys.AiOperationName]=String(`${n} ${e.pathname}`).substring(0,a.MaxPropertyLengths.TEN_BIT)}catch{}}else t[l.KnownContextTagKeys.AiOperationName]=e.name}else e.attributes[l.KnownContextTagKeys.AiOperationName]&&(t[l.KnownContextTagKeys.AiOperationName]=e.attributes[l.KnownContextTagKeys.AiOperationName]);return t}function p(e){let t={};if(e)for(let n of Object.keys(e))n.startsWith(`_MS.`)&&!a.internalMicrosoftAttributes.includes(n)||n.startsWith(`microsoft.`)||a.legacySemanticValues.includes(n)||a.httpSemanticValues.includes(n)||n===l.KnownContextTagKeys.AiOperationName||(t[n]=(0,i.serializeAttribute)(e[n]));return t}function m(e){let t=p(e.attributes),n={},r=e.links.map(e=>({operation_Id:e.context.traceId,id:e.context.spanId}));return r.length>0&&(t[s.MS_LINKS]=JSON.stringify(r)),[t,n]}function h(e){let a={name:e.name,id:`${e.spanContext().spanId}`,success:e.status?.code!==n.SpanStatusCode.ERROR,resultCode:`0`,type:`Dependency`,duration:(0,u.msToTimeSpan)((0,t.hrTimeToMilliseconds)(e.duration)),version:2};e.kind===n.SpanKind.PRODUCER&&(a.type=s.DependencyTypes.QueueMessage),e.kind===n.SpanKind.INTERNAL&&e.parentSpanContext&&(a.type=s.DependencyTypes.InProc);let o=w(e.attributes),c=e.attributes[r.SEMATTRS_DB_SYSTEM],l=e.attributes[r.SEMATTRS_RPC_SYSTEM];if(o){let t=C(e.attributes);if(t)try{a.name=`${o} ${new URL(String(t)).pathname}`}catch{}a.type=s.DependencyTypes.Http,a.data=(0,i.getUrl)(e.attributes);let n=T(e.attributes);n&&(a.resultCode=String(n));let r=(0,i.getDependencyTarget)(e.attributes);if(r){try{let e=new RegExp(/(https?)(:\/\/.*)(:\d+)(\S*)/).exec(r);if(e!==null){let t=e[1],n=e[3];(t===`https`&&n===`:443`||t===`http`&&n===`:80`)&&(r=e[1]+e[2]+e[4])}}catch{}a.target=`${r}`}}else if(c){String(c)===r.DBSYSTEMVALUES_MYSQL?a.type=`mysql`:String(c)===r.DBSYSTEMVALUES_POSTGRESQL?a.type=`postgresql`:String(c)===r.DBSYSTEMVALUES_MONGODB?a.type=`mongodb`:String(c)===r.DBSYSTEMVALUES_REDIS?a.type=`redis`:(0,i.isSqlDB)(String(c))?a.type=`SQL`:a.type=String(c);let t=e.attributes[r.SEMATTRS_DB_STATEMENT],n=e.attributes[r.SEMATTRS_DB_OPERATION];t?a.data=String(t):n&&(a.data=String(n));let o=(0,i.getDependencyTarget)(e.attributes),s=e.attributes[r.SEMATTRS_DB_NAME];o?a.target=s?`${o}|${s}`:`${o}`:a.target=s?`${s}`:`${c}`}else if(l){l===s.DependencyTypes.Wcf?a.type=s.DependencyTypes.Wcf:a.type=s.DependencyTypes.Grpc;let t=e.attributes[r.SEMATTRS_RPC_GRPC_STATUS_CODE];t&&(a.resultCode=String(t));let n=(0,i.getDependencyTarget)(e.attributes);n?a.target=`${n}`:l&&(a.target=String(l))}return a}function g(e){let a={id:`${e.spanContext().spanId}`,success:e.status.code!==n.SpanStatusCode.ERROR&&(Number(T(e.attributes))||0)<400,responseCode:`0`,duration:(0,u.msToTimeSpan)((0,t.hrTimeToMilliseconds)(e.duration)),version:2,source:void 0},o=w(e.attributes),s=e.attributes[r.SEMATTRS_RPC_GRPC_STATUS_CODE];if(o){a.url=(0,i.getUrl)(e.attributes);let t=T(e.attributes);t&&(a.responseCode=String(t))}else s&&(a.responseCode=String(s));return a}function _(e,t){let r,u,d,p=(0,i.hrTimeToDate)(e.startTime),_=t,v=f(e),[y,b]=m(e);switch(e.kind){case n.SpanKind.CLIENT:case n.SpanKind.PRODUCER:case n.SpanKind.INTERNAL:r=`Microsoft.ApplicationInsights.RemoteDependency`,u=`RemoteDependencyData`,d=h(e);break;case n.SpanKind.SERVER:case n.SpanKind.CONSUMER:r=`Microsoft.ApplicationInsights.Request`,u=`RequestData`,d=g(e),d.name=v[l.KnownContextTagKeys.AiOperationName];break;default:throw n.diag.error(`Unsupported span kind ${e.kind}`),Error(`Unsupported span kind ${e.kind}`)}let x=100;if(e.attributes[s.AzureMonitorSampleRate]&&(x=Number(e.attributes[s.AzureMonitorSampleRate])),e.attributes[c.AzNamespace]&&(e.kind===n.SpanKind.INTERNAL&&(d.type=`${s.DependencyTypes.InProc} | ${e.attributes[c.AzNamespace]}`),e.attributes[c.AzNamespace]===c.MicrosoftEventHub&&(0,o.parseEventHubSpan)(e,d)),d.id&&=d.id.substring(0,a.MaxPropertyLengths.NINE_BIT),d.name&&=d.name.substring(0,a.MaxPropertyLengths.TEN_BIT),d.resultCode&&=String(d.resultCode).substring(0,a.MaxPropertyLengths.TEN_BIT),d.data&&=String(d.data).substring(0,a.MaxPropertyLengths.THIRTEEN_BIT),d.type&&=String(d.type).substring(0,a.MaxPropertyLengths.TEN_BIT),d.target&&=String(d.target).substring(0,a.MaxPropertyLengths.TEN_BIT),d.properties)for(let e of Object.keys(d.properties))d.properties[e]=d.properties[e].substring(0,a.MaxPropertyLengths.THIRTEEN_BIT);return{name:r,sampleRate:x,time:p,instrumentationKey:_,tags:v,version:1,data:{baseType:u,baseData:Object.assign(Object.assign({},d),{properties:y,measurements:b})}}}function v(e,t){let n=[];return e.events&&e.events.forEach(o=>{let c,u=(0,i.hrTimeToDate)(o.time),d=``,f,m=p(o.attributes),h=(0,i.createTagsFromResource)(e.resource);h[l.KnownContextTagKeys.AiOperationId]=e.spanContext().traceId;let g=e.spanContext().spanId;if(g&&(h[l.KnownContextTagKeys.AiOperationParentId]=g),o.name===`exception`){d=`Microsoft.ApplicationInsights.Exception`,c=`ExceptionData`;let e=``,t=`Exception`,n=``,i=!1;if(o.attributes){e=String(o.attributes[r.SEMATTRS_EXCEPTION_TYPE]),n=String(o.attributes[r.SEMATTRS_EXCEPTION_STACKTRACE]),n&&(i=!0);let a=o.attributes[r.SEMATTRS_EXCEPTION_MESSAGE];a&&(t=String(a));let s=o.attributes[r.SEMATTRS_EXCEPTION_ESCAPED];s!==void 0&&(m[r.SEMATTRS_EXCEPTION_ESCAPED]=String(s))}f={exceptions:[{typeName:e,message:t,stack:n,hasFullStack:i}],version:2,properties:m}}else d=`Microsoft.ApplicationInsights.Message`,c=`MessageData`,f={message:o.name,version:2,properties:m};let _=100;if(e.attributes[s.AzureMonitorSampleRate]&&(_=Number(e.attributes[s.AzureMonitorSampleRate])),f.message&&=String(f.message).substring(0,a.MaxPropertyLengths.FIFTEEN_BIT),f.properties)for(let e of Object.keys(f.properties))f.properties[e]=f.properties[e].substring(0,a.MaxPropertyLengths.THIRTEEN_BIT);let v={name:d,time:u,instrumentationKey:t,version:1,sampleRate:_,data:{baseType:c,baseData:f},tags:h};n.push(v)}),n}function y(e){if(e)return e[r.ATTR_NETWORK_PEER_ADDRESS]||e[r.SEMATTRS_NET_PEER_IP]}function b(e,t){if(t){let n=x(t),r=y(t);n?e[l.KnownContextTagKeys.AiLocationIp]=String(n):r&&(e[l.KnownContextTagKeys.AiLocationIp]=String(r))}}function x(e){if(e)return e[r.ATTR_CLIENT_ADDRESS]||e[r.SEMATTRS_HTTP_CLIENT_IP]}function S(e){if(e)return e[r.ATTR_USER_AGENT_ORIGINAL]||e[r.SEMATTRS_HTTP_USER_AGENT]}function C(e){if(e)return e[r.ATTR_URL_FULL]||e[r.SEMATTRS_HTTP_URL]}function w(e){if(e)return e[r.ATTR_HTTP_REQUEST_METHOD]||e[r.SEMATTRS_HTTP_METHOD]}function T(e){if(e)return e[r.ATTR_HTTP_RESPONSE_STATUS_CODE]||e[r.SEMATTRS_HTTP_STATUS_CODE]}function E(e){if(e)return e[r.ATTR_URL_SCHEME]||e[r.SEMATTRS_HTTP_SCHEME]}function D(e){if(e)return e[r.ATTR_URL_PATH]?e[r.ATTR_URL_PATH]:e[r.ATTR_URL_QUERY]?e[r.ATTR_URL_QUERY]:e[r.SEMATTRS_HTTP_TARGET]}function O(e){if(e)return e[r.ATTR_SERVER_ADDRESS]||e[r.SEMATTRS_HTTP_HOST]}function k(e){if(e)return e[r.ATTR_CLIENT_ADDRESS]||e[r.SEMATTRS_NET_PEER_NAME]}function A(e){if(e)return e[r.ATTR_CLIENT_PORT]||e[r.ATTR_SERVER_PORT]||e[r.SEMATTRS_NET_PEER_PORT]}})),aL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AzureMonitorTraceExporter=void 0;let t=(Jd(),d(Kd)),n=uN(),r=MM(),i=iL(),a=tL(),o=eL();e.AzureMonitorTraceExporter=class extends r.AzureMonitorBaseExporter{constructor(e={}){super(e),this.isShutdown=!1,this.shouldCreateResourceMetric=(0,a.shouldCreateResourceMetric)(),this.sender=new o.HttpSender({endpointUrl:this.endpointUrl,instrumentationKey:this.instrumentationKey,trackStatsbeat:this.trackStatsbeat,exporterOptions:e,aadAudience:this.aadAudience}),t.diag.debug(`AzureMonitorTraceExporter was successfully setup`)}async export(e,r){if(this.isShutdown){t.diag.info(`Exporter shut down. Failed to export spans.`),setTimeout(()=>r({code:n.ExportResultCode.FAILED}),0);return}if(t.diag.info(`Exporting ${e.length} span(s). Converting to envelopes...`),e.length>0){let t=[],n=(0,a.createResourceMetricEnvelope)(e[0].resource,this.instrumentationKey);n&&this.shouldCreateResourceMetric&&t.push(n),e.forEach(e=>{t.push((0,i.readableSpanToEnvelope)(e,this.instrumentationKey));let n=(0,i.spanEventsToEnvelopes)(e,this.instrumentationKey);n.length>0&&t.push(...n)}),r(await this.sender.exportEnvelopes(t))}r({code:n.ExportResultCode.SUCCESS})}async shutdown(){return this.isShutdown=!0,t.diag.info(`AzureMonitorTraceExporter shutting down`),this.sender.shutdown()}}})),oL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AzureMonitorMetricExporter=void 0;let t=(Jd(),d(Kd)),n=VI(),r=uN(),i=MM(),a=WI(),o=eL();e.AzureMonitorMetricExporter=class extends i.AzureMonitorBaseExporter{constructor(e={}){super(e),this._isShutdown=!1,this._sender=new o.HttpSender({endpointUrl:this.endpointUrl,instrumentationKey:this.instrumentationKey,trackStatsbeat:this.trackStatsbeat,exporterOptions:e,aadAudience:this.aadAudience}),t.diag.debug(`AzureMonitorMetricExporter was successfully setup`)}async export(e,n){if(this._isShutdown){t.diag.info(`Exporter shut down. Failed to export spans.`),setTimeout(()=>n({code:r.ExportResultCode.FAILED}),0);return}t.diag.info(`Exporting ${e.scopeMetrics.length} metrics(s). Converting to envelopes...`);let i=(0,a.resourceMetricsToEnvelope)(e,this.instrumentationKey);await t.context.with((0,r.suppressTracing)(t.context.active()),async()=>{n(await this._sender.exportEnvelopes(i))})}async shutdown(){return this._isShutdown=!0,t.diag.info(`AzureMonitorMetricExporter shutting down`),this._sender.shutdown()}selectAggregationTemporality(e){return e===n.InstrumentType.UP_DOWN_COUNTER||e===n.InstrumentType.OBSERVABLE_UP_DOWN_COUNTER?n.AggregationTemporality.CUMULATIVE:n.AggregationTemporality.DELTA}async forceFlush(){return Promise.resolve()}}})),sL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.logToEnvelope=c;let t=qF(),n=tL(),r=(PA(),d(NA)),i=dN(),a=(Jd(),d(Kd)),o=Uj(),s=iL();function c(e,t){let a=(0,n.hrTimeToDate)(e.hrTime),s=t,c=l(e),[d,g]=u(e),_,v,y,b=e.attributes[r.ATTR_EXCEPTION_STACKTRACE],x=e.attributes[r.ATTR_EXCEPTION_TYPE],S=!!(x&&b)||!1,C=!e.attributes[o.ApplicationInsightsBaseType]&&!e.attributes[o.ApplicationInsightsCustomEventName]&&!x;if(S){let t=e.attributes[r.ATTR_EXCEPTION_MESSAGE];_=o.ApplicationInsightsExceptionName,v=o.ApplicationInsightsExceptionBaseType,y={exceptions:[{typeName:String(x),message:String(t),hasFullStack:!!b,stack:String(b)}],severityLevel:String(f(e.severityNumber)),version:2}}else if(e.attributes[o.ApplicationInsightsCustomEventName])_=o.ApplicationInsightsEventName,v=o.ApplicationInsightsEventBaseType,y={name:String(e.attributes[o.ApplicationInsightsCustomEventName]),version:2},g=m(e);else if(C)_=o.ApplicationInsightsMessageName,v=o.ApplicationInsightsMessageBaseType,y={message:String(e.body),severityLevel:String(f(e.severityNumber)),version:2};else if(v=String(e.attributes[o.ApplicationInsightsBaseType]),_=p(e),y=h(e),g=m(e),!y)return;if(y.message&&=String(y.message).substring(0,i.MaxPropertyLengths.FIFTEEN_BIT),d)for(let e of Object.keys(d))d[e]=String(d[e]).substring(0,i.MaxPropertyLengths.THIRTEEN_BIT);return{name:_,sampleRate:100,time:a,instrumentationKey:s,tags:c,version:1,data:{baseType:v,baseData:Object.assign(Object.assign({},y),{properties:d,measurements:g})}}}function l(e){let r=(0,n.createTagsFromResource)(e.resource);return e.spanContext?.traceId&&(r[t.KnownContextTagKeys.AiOperationId]=e.spanContext.traceId),e.spanContext?.spanId&&(r[t.KnownContextTagKeys.AiOperationParentId]=e.spanContext.spanId),e.attributes[t.KnownContextTagKeys.AiOperationName]&&(r[t.KnownContextTagKeys.AiOperationName]=e.attributes[t.KnownContextTagKeys.AiOperationName]),(0,n.isSyntheticSource)(e.attributes)&&(r[t.KnownContextTagKeys.AiOperationSyntheticSource]=`True`),(0,s.getLocationIp)(r,e.attributes),r}function u(e){let r={},a={};if(e.attributes)for(let r of Object.keys(e.attributes))r.startsWith(`_MS.`)||r.startsWith(`microsoft`)||i.legacySemanticValues.includes(r)||i.httpSemanticValues.includes(r)||r===t.KnownContextTagKeys.AiOperationName||(a[r]=(0,n.serializeAttribute)(e.attributes[r]));return[a,r]}function f(e){if(e){if(e>0&&e<9)return t.KnownSeverityLevel.Verbose;if(e>=9&&e<13)return t.KnownSeverityLevel.Information;if(e>=13&&e<17)return t.KnownSeverityLevel.Warning;if(e>=17&&e<21)return t.KnownSeverityLevel.Error;if(e>=21&&e<25)return t.KnownSeverityLevel.Critical}}function p(e){let t=``;switch(e.attributes[o.ApplicationInsightsBaseType]){case o.ApplicationInsightsAvailabilityBaseType:t=o.ApplicationInsightsAvailabilityName;break;case o.ApplicationInsightsExceptionBaseType:t=o.ApplicationInsightsExceptionName;break;case o.ApplicationInsightsMessageBaseType:t=o.ApplicationInsightsMessageName;break;case o.ApplicationInsightsPageViewBaseType:t=o.ApplicationInsightsPageViewName;break;case o.ApplicationInsightsEventBaseType:t=o.ApplicationInsightsEventName;break}return t}function m(e){let t={};return e.body?.measurements&&(t=Object.assign({},e.body.measurements)),t}function h(e){let t={version:2};if(e.body)try{switch(e.attributes[o.ApplicationInsightsBaseType]){case o.ApplicationInsightsAvailabilityBaseType:t=e.body;break;case o.ApplicationInsightsExceptionBaseType:t=e.body;break;case o.ApplicationInsightsMessageBaseType:t=e.body;break;case o.ApplicationInsightsPageViewBaseType:t=e.body;break;case o.ApplicationInsightsEventBaseType:t=e.body;break}typeof t?.message==`object`&&(t.message=JSON.stringify(t.message))}catch{a.diag.error(`AzureMonitorLogExporter failed to parse Application Insights Telemetry`)}return t}})),cL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AzureMonitorLogExporter=void 0;let t=(Jd(),d(Kd)),n=uN(),r=MM(),i=sL(),a=eL();e.AzureMonitorLogExporter=class extends r.AzureMonitorBaseExporter{constructor(e={}){super(e),this._isShutdown=!1,this._sender=new a.HttpSender({endpointUrl:this.endpointUrl,instrumentationKey:this.instrumentationKey,trackStatsbeat:this.trackStatsbeat,exporterOptions:e,aadAudience:this.aadAudience}),t.diag.debug(`AzureMonitorLogExporter was successfully setup`)}async export(e,r){if(this._isShutdown){t.diag.info(`Exporter shut down. Failed to export spans.`),setTimeout(()=>r({code:n.ExportResultCode.FAILED}),0);return}t.diag.info(`Exporting ${e.length} logs(s). Converting to envelopes...`);let a=[];e.forEach(e=>{let t=(0,i.logToEnvelope)(e,this.instrumentationKey);t&&a.push(t)}),await t.context.with((0,n.suppressTracing)(t.context.active()),async()=>{r(await this._sender.exportEnvelopes(a))})}async shutdown(){return this._isShutdown=!0,t.diag.info(`AzureMonitorLogExporter shutting down`),this._sender.shutdown()}}})),lL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AI_OPERATION_NAME=e.ServiceApiVersion=e.AzureMonitorLogExporter=e.AzureMonitorMetricExporter=e.AzureMonitorTraceExporter=e.AzureMonitorBaseExporter=e.ApplicationInsightsSampler=void 0;var t=Wj();Object.defineProperty(e,`ApplicationInsightsSampler`,{enumerable:!0,get:function(){return t.ApplicationInsightsSampler}});var n=MM();Object.defineProperty(e,`AzureMonitorBaseExporter`,{enumerable:!0,get:function(){return n.AzureMonitorBaseExporter}});var r=aL();Object.defineProperty(e,`AzureMonitorTraceExporter`,{enumerable:!0,get:function(){return r.AzureMonitorTraceExporter}});var i=oL();Object.defineProperty(e,`AzureMonitorMetricExporter`,{enumerable:!0,get:function(){return i.AzureMonitorMetricExporter}});var a=cL();Object.defineProperty(e,`AzureMonitorLogExporter`,{enumerable:!0,get:function(){return a.AzureMonitorLogExporter}});var o=AM();Object.defineProperty(e,`ServiceApiVersion`,{enumerable:!0,get:function(){return o.ServiceApiVersion}});var s=AM();Object.defineProperty(e,`AI_OPERATION_NAME`,{enumerable:!0,get:function(){return s.AI_OPERATION_NAME}})})),uL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isTracingSuppressed=e.unsuppressTracing=e.suppressTracing=void 0;let t=(0,(Jd(),d(Kd)).createContextKey)(`OpenTelemetry SDK Context Key SUPPRESS_TRACING`);function n(e){return e.setValue(t,!0)}e.suppressTracing=n;function r(e){return e.deleteValue(t)}e.unsuppressTracing=r;function i(e){return e.getValue(t)===!0}e.isTracingSuppressed=i})),dL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BAGGAGE_MAX_TOTAL_LENGTH=e.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=e.BAGGAGE_MAX_NAME_VALUE_PAIRS=e.BAGGAGE_HEADER=e.BAGGAGE_ITEMS_SEPARATOR=e.BAGGAGE_PROPERTIES_SEPARATOR=e.BAGGAGE_KEY_PAIR_SEPARATOR=void 0,e.BAGGAGE_KEY_PAIR_SEPARATOR=`=`,e.BAGGAGE_PROPERTIES_SEPARATOR=`;`,e.BAGGAGE_ITEMS_SEPARATOR=`,`,e.BAGGAGE_HEADER=`baggage`,e.BAGGAGE_MAX_NAME_VALUE_PAIRS=180,e.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096,e.BAGGAGE_MAX_TOTAL_LENGTH=8192})),fL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.parseKeyPairsIntoRecord=e.parsePairKeyValue=e.getKeyPairs=e.serializeKeyPairs=void 0;let t=(Jd(),d(Kd)),n=dL();function r(e){return e.reduce((e,t)=>{let r=`${e}${e===``?``:n.BAGGAGE_ITEMS_SEPARATOR}${t}`;return r.length>n.BAGGAGE_MAX_TOTAL_LENGTH?e:r},``)}e.serializeKeyPairs=r;function i(e){return e.getAllEntries().map(([e,t])=>{let r=`${encodeURIComponent(e)}=${encodeURIComponent(t.value)}`;return t.metadata!==void 0&&(r+=n.BAGGAGE_PROPERTIES_SEPARATOR+t.metadata.toString()),r})}e.getKeyPairs=i;function a(e){let r=e.split(n.BAGGAGE_PROPERTIES_SEPARATOR);if(r.length<=0)return;let i=r.shift();if(!i)return;let a=i.indexOf(n.BAGGAGE_KEY_PAIR_SEPARATOR);if(a<=0)return;let o=decodeURIComponent(i.substring(0,a).trim()),s=decodeURIComponent(i.substring(a+1).trim()),c;return r.length>0&&(c=(0,t.baggageEntryMetadataFromString)(r.join(n.BAGGAGE_PROPERTIES_SEPARATOR))),{key:o,value:s,metadata:c}}e.parsePairKeyValue=a;function o(e){let t={};return typeof e==`string`&&e.length>0&&e.split(n.BAGGAGE_ITEMS_SEPARATOR).forEach(e=>{let n=a(e);n!==void 0&&n.value.length>0&&(t[n.key]=n.value)}),t}e.parseKeyPairsIntoRecord=o})),pL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.W3CBaggagePropagator=void 0;let t=(Jd(),d(Kd)),n=uL(),r=dL(),i=fL();e.W3CBaggagePropagator=class{inject(e,a,o){let s=t.propagation.getBaggage(e);if(!s||(0,n.isTracingSuppressed)(e))return;let c=(0,i.getKeyPairs)(s).filter(e=>e.length<=r.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS).slice(0,r.BAGGAGE_MAX_NAME_VALUE_PAIRS),l=(0,i.serializeKeyPairs)(c);l.length>0&&o.set(a,r.BAGGAGE_HEADER,l)}extract(e,n,a){let o=a.get(n,r.BAGGAGE_HEADER),s=Array.isArray(o)?o.join(r.BAGGAGE_ITEMS_SEPARATOR):o;if(!s)return e;let c={};return s.length===0||(s.split(r.BAGGAGE_ITEMS_SEPARATOR).forEach(e=>{let t=(0,i.parsePairKeyValue)(e);if(t){let e={value:t.value};t.metadata&&(e.metadata=t.metadata),c[t.key]=e}}),Object.entries(c).length===0)?e:t.propagation.setBaggage(e,t.propagation.createBaggage(c))}fields(){return[r.BAGGAGE_HEADER]}}})),mL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AnchoredClock=void 0,e.AnchoredClock=class{_monotonicClock;_epochMillis;_performanceMillis;constructor(e,t){this._monotonicClock=t,this._epochMillis=e.now(),this._performanceMillis=t.now()}now(){let e=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+e}}})),hL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isAttributeValue=e.isAttributeKey=e.sanitizeAttributes=void 0;let t=(Jd(),d(Kd));function n(e){let n={};if(typeof e!=`object`||!e)return n;for(let[a,o]of Object.entries(e)){if(!r(a)){t.diag.warn(`Invalid attribute key: ${a}`);continue}if(!i(o)){t.diag.warn(`Invalid attribute value set for key: ${a}`);continue}Array.isArray(o)?n[a]=o.slice():n[a]=o}return n}e.sanitizeAttributes=n;function r(e){return typeof e==`string`&&e.length>0}e.isAttributeKey=r;function i(e){return e==null?!0:Array.isArray(e)?a(e):o(e)}e.isAttributeValue=i;function a(e){let t;for(let n of e)if(n!=null){if(!t){if(o(n)){t=typeof n;continue}return!1}if(typeof n!==t)return!1}return!0}function o(e){switch(typeof e){case`number`:case`boolean`:case`string`:return!0}return!1}})),gL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.loggingErrorHandler=void 0;let t=(Jd(),d(Kd));function n(){return e=>{t.diag.error(r(e))}}e.loggingErrorHandler=n;function r(e){return typeof e==`string`?e:JSON.stringify(i(e))}function i(e){let t={},n=e;for(;n!==null;)Object.getOwnPropertyNames(n).forEach(e=>{if(t[e])return;let r=n[e];r&&(t[e]=String(r))}),n=Object.getPrototypeOf(n);return t}})),_L=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.globalErrorHandler=e.setGlobalErrorHandler=void 0;let t=(0,gL().loggingErrorHandler)();function n(e){t=e}e.setGlobalErrorHandler=n;function r(e){try{t(e)}catch{}}e.globalErrorHandler=r})),see=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.getStringListFromEnv=e.getBooleanFromEnv=e.getStringFromEnv=e.getNumberFromEnv=void 0;let t=(Jd(),d(Kd)),n=require(`util`);function r(e){let r=process.env[e];if(r==null||r.trim()===``)return;let i=Number(r);if(isNaN(i)){t.diag.warn(`Unknown value ${(0,n.inspect)(r)} for ${e}, expected a number, using defaults`);return}return i}e.getNumberFromEnv=r;function i(e){let t=process.env[e];if(!(t==null||t.trim()===``))return t}e.getStringFromEnv=i;function a(e){let r=process.env[e]?.trim().toLowerCase();return r==null||r===``?!1:r===`true`?!0:(r===`false`||t.diag.warn(`Unknown value ${(0,n.inspect)(r)} for ${e}, expected 'true' or 'false', falling back to 'false' (default)`),!1)}e.getBooleanFromEnv=a;function o(e){return i(e)?.split(`,`).map(e=>e.trim()).filter(e=>e!==``)}e.getStringListFromEnv=o})),vL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e._globalThis=void 0,e._globalThis=typeof globalThis==`object`?globalThis:global})),yL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.otperformance=void 0,e.otperformance=require(`perf_hooks`).performance})),bL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.VERSION=void 0,e.VERSION=`2.1.0`})),xL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ATTR_PROCESS_RUNTIME_NAME=void 0,e.ATTR_PROCESS_RUNTIME_NAME=`process.runtime.name`})),SL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.SDK_INFO=void 0;let t=bL(),n=(PA(),d(NA)),r=xL();e.SDK_INFO={[n.ATTR_TELEMETRY_SDK_NAME]:`opentelemetry`,[r.ATTR_PROCESS_RUNTIME_NAME]:`node`,[n.ATTR_TELEMETRY_SDK_LANGUAGE]:n.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS,[n.ATTR_TELEMETRY_SDK_VERSION]:t.VERSION}})),CL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.unrefTimer=void 0;function t(e){e.unref()}e.unrefTimer=t})),wL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.unrefTimer=e.SDK_INFO=e.otperformance=e._globalThis=e.getStringListFromEnv=e.getNumberFromEnv=e.getBooleanFromEnv=e.getStringFromEnv=void 0;var t=see();Object.defineProperty(e,`getStringFromEnv`,{enumerable:!0,get:function(){return t.getStringFromEnv}}),Object.defineProperty(e,`getBooleanFromEnv`,{enumerable:!0,get:function(){return t.getBooleanFromEnv}}),Object.defineProperty(e,`getNumberFromEnv`,{enumerable:!0,get:function(){return t.getNumberFromEnv}}),Object.defineProperty(e,`getStringListFromEnv`,{enumerable:!0,get:function(){return t.getStringListFromEnv}});var n=vL();Object.defineProperty(e,`_globalThis`,{enumerable:!0,get:function(){return n._globalThis}});var r=yL();Object.defineProperty(e,`otperformance`,{enumerable:!0,get:function(){return r.otperformance}});var i=SL();Object.defineProperty(e,`SDK_INFO`,{enumerable:!0,get:function(){return i.SDK_INFO}});var a=CL();Object.defineProperty(e,`unrefTimer`,{enumerable:!0,get:function(){return a.unrefTimer}})})),TL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.getStringListFromEnv=e.getNumberFromEnv=e.getStringFromEnv=e.getBooleanFromEnv=e.unrefTimer=e.otperformance=e._globalThis=e.SDK_INFO=void 0;var t=wL();Object.defineProperty(e,`SDK_INFO`,{enumerable:!0,get:function(){return t.SDK_INFO}}),Object.defineProperty(e,`_globalThis`,{enumerable:!0,get:function(){return t._globalThis}}),Object.defineProperty(e,`otperformance`,{enumerable:!0,get:function(){return t.otperformance}}),Object.defineProperty(e,`unrefTimer`,{enumerable:!0,get:function(){return t.unrefTimer}}),Object.defineProperty(e,`getBooleanFromEnv`,{enumerable:!0,get:function(){return t.getBooleanFromEnv}}),Object.defineProperty(e,`getStringFromEnv`,{enumerable:!0,get:function(){return t.getStringFromEnv}}),Object.defineProperty(e,`getNumberFromEnv`,{enumerable:!0,get:function(){return t.getNumberFromEnv}}),Object.defineProperty(e,`getStringListFromEnv`,{enumerable:!0,get:function(){return t.getStringListFromEnv}})})),EL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.addHrTimes=e.isTimeInput=e.isTimeInputHrTime=e.hrTimeToMicroseconds=e.hrTimeToMilliseconds=e.hrTimeToNanoseconds=e.hrTimeToTimeStamp=e.hrTimeDuration=e.timeInputToHrTime=e.hrTime=e.getTimeOrigin=e.millisToHrTime=void 0;let t=TL(),n=10**6,r=10**9;function i(e){let t=e/1e3;return[Math.trunc(t),Math.round(e%1e3*n)]}e.millisToHrTime=i;function a(){let e=t.otperformance.timeOrigin;if(typeof e!=`number`){let n=t.otperformance;e=n.timing&&n.timing.fetchStart}return e}e.getTimeOrigin=a;function o(e){return h(i(a()),i(typeof e==`number`?e:t.otperformance.now()))}e.hrTime=o;function s(e){if(p(e))return e;if(typeof e==`number`)return e<a()?o(e):i(e);if(e instanceof Date)return i(e.getTime());throw TypeError(`Invalid input type`)}e.timeInputToHrTime=s;function c(e,t){let n=t[0]-e[0],i=t[1]-e[1];return i<0&&(--n,i+=r),[n,i]}e.hrTimeDuration=c;function l(e){let t=`${`0`.repeat(9)}${e[1]}Z`,n=t.substring(t.length-9-1);return new Date(e[0]*1e3).toISOString().replace(`000Z`,n)}e.hrTimeToTimeStamp=l;function u(e){return e[0]*r+e[1]}e.hrTimeToNanoseconds=u;function d(e){return e[0]*1e3+e[1]/1e6}e.hrTimeToMilliseconds=d;function f(e){return e[0]*1e6+e[1]/1e3}e.hrTimeToMicroseconds=f;function p(e){return Array.isArray(e)&&e.length===2&&typeof e[0]==`number`&&typeof e[1]==`number`}e.isTimeInputHrTime=p;function m(e){return p(e)||typeof e==`number`||e instanceof Date}e.isTimeInput=m;function h(e,t){let n=[e[0]+t[0],e[1]+t[1]];return n[1]>=r&&(n[1]-=r,n[0]+=1),n}e.addHrTimes=h})),DL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ExportResultCode=void 0,(function(e){e[e.SUCCESS=0]=`SUCCESS`,e[e.FAILED=1]=`FAILED`})(e.ExportResultCode||={})})),OL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.CompositePropagator=void 0;let t=(Jd(),d(Kd));e.CompositePropagator=class{_propagators;_fields;constructor(e={}){this._propagators=e.propagators??[],this._fields=Array.from(new Set(this._propagators.map(e=>typeof e.fields==`function`?e.fields():[]).reduce((e,t)=>e.concat(t),[])))}inject(e,n,r){for(let i of this._propagators)try{i.inject(e,n,r)}catch(e){t.diag.warn(`Failed to inject with ${i.constructor.name}. Err: ${e.message}`)}}extract(e,n,r){return this._propagators.reduce((e,i)=>{try{return i.extract(e,n,r)}catch(e){t.diag.warn(`Failed to extract with ${i.constructor.name}. Err: ${e.message}`)}return e},e)}fields(){return this._fields.slice()}}})),kL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.validateValue=e.validateKey=void 0;let t=`[_0-9a-z-*/]`,n=`[a-z]${t}{0,255}`,r=`[a-z0-9]${t}{0,240}@[a-z]${t}{0,13}`,i=RegExp(`^(?:${n}|${r})$`),a=/^[ -~]{0,255}[!-~]$/,o=/,|=/;function s(e){return i.test(e)}e.validateKey=s;function c(e){return a.test(e)&&!o.test(e)}e.validateValue=c})),AL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.TraceState=void 0;let t=kL();e.TraceState=class e{_internalState=new Map;constructor(e){e&&this._parse(e)}set(e,t){let n=this._clone();return n._internalState.has(e)&&n._internalState.delete(e),n._internalState.set(e,t),n}unset(e){let t=this._clone();return t._internalState.delete(e),t}get(e){return this._internalState.get(e)}serialize(){return this._keys().reduce((e,t)=>(e.push(t+`=`+this.get(t)),e),[]).join(`,`)}_parse(e){e.length>512||(this._internalState=e.split(`,`).reverse().reduce((e,n)=>{let r=n.trim(),i=r.indexOf(`=`);if(i!==-1){let a=r.slice(0,i),o=r.slice(i+1,n.length);(0,t.validateKey)(a)&&(0,t.validateValue)(o)&&e.set(a,o)}return e},new Map),this._internalState.size>32&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,32))))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let t=new e;return t._internalState=new Map(this._internalState),t}}})),jL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.W3CTraceContextPropagator=e.parseTraceParent=e.TRACE_STATE_HEADER=e.TRACE_PARENT_HEADER=void 0;let t=(Jd(),d(Kd)),n=uL(),r=AL();e.TRACE_PARENT_HEADER=`traceparent`,e.TRACE_STATE_HEADER=`tracestate`;let i=RegExp(`^\\s?((?!ff)[\\da-f]{2})-((?![0]{32})[\\da-f]{32})-((?![0]{16})[\\da-f]{16})-([\\da-f]{2})(-.*)?\\s?$`);function a(e){let t=i.exec(e);return!t||t[1]===`00`&&t[5]?null:{traceId:t[2],spanId:t[3],traceFlags:parseInt(t[4],16)}}e.parseTraceParent=a,e.W3CTraceContextPropagator=class{inject(r,i,a){let o=t.trace.getSpanContext(r);if(!o||(0,n.isTracingSuppressed)(r)||!(0,t.isSpanContextValid)(o))return;let s=`00-${o.traceId}-${o.spanId}-0${Number(o.traceFlags||t.TraceFlags.NONE).toString(16)}`;a.set(i,e.TRACE_PARENT_HEADER,s),o.traceState&&a.set(i,e.TRACE_STATE_HEADER,o.traceState.serialize())}extract(n,i,o){let s=o.get(i,e.TRACE_PARENT_HEADER);if(!s)return n;let c=Array.isArray(s)?s[0]:s;if(typeof c!=`string`)return n;let l=a(c);if(!l)return n;l.isRemote=!0;let u=o.get(i,e.TRACE_STATE_HEADER);if(u){let e=Array.isArray(u)?u.join(`,`):u;l.traceState=new r.TraceState(typeof e==`string`?e:void 0)}return t.trace.setSpanContext(n,l)}fields(){return[e.TRACE_PARENT_HEADER,e.TRACE_STATE_HEADER]}}})),ML=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.getRPCMetadata=e.deleteRPCMetadata=e.setRPCMetadata=e.RPCType=void 0;let t=(0,(Jd(),d(Kd)).createContextKey)(`OpenTelemetry SDK Context Key RPC_METADATA`);(function(e){e.HTTP=`http`})(e.RPCType||={});function n(e,n){return e.setValue(t,n)}e.setRPCMetadata=n;function r(e){return e.deleteValue(t)}e.deleteRPCMetadata=r;function i(e){return e.getValue(t)}e.getRPCMetadata=i})),NL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isPlainObject=void 0;let t=Function.prototype.toString,n=t.call(Object),r=Object.getPrototypeOf,i=Object.prototype,a=i.hasOwnProperty,o=Symbol?Symbol.toStringTag:void 0,s=i.toString;function c(e){if(!l(e)||u(e)!==`[object Object]`)return!1;let i=r(e);if(i===null)return!0;let o=a.call(i,`constructor`)&&i.constructor;return typeof o==`function`&&o instanceof o&&t.call(o)===n}e.isPlainObject=c;function l(e){return typeof e==`object`&&!!e}function u(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:o&&o in Object(e)?d(e):f(e)}function d(e){let t=a.call(e,o),n=e[o],r=!1;try{e[o]=void 0,r=!0}catch{}let i=s.call(e);return r&&(t?e[o]=n:delete e[o]),i}function f(e){return s.call(e)}})),PL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.merge=void 0;let t=NL();function n(...e){let t=e.shift(),n=new WeakMap;for(;e.length>0;)t=i(t,e.shift(),0,n);return t}e.merge=n;function r(e){return o(e)?e.slice():e}function i(e,t,n=0,d){let f;if(!(n>20)){if(n++,l(e)||l(t)||s(t))f=r(t);else if(o(e)){if(f=e.slice(),o(t))for(let e=0,n=t.length;e<n;e++)f.push(r(t[e]));else if(c(t)){let e=Object.keys(t);for(let n=0,i=e.length;n<i;n++){let i=e[n];f[i]=r(t[i])}}}else if(c(e))if(c(t)){if(!u(e,t))return t;f=Object.assign({},e);let r=Object.keys(t);for(let o=0,s=r.length;o<s;o++){let s=r[o],u=t[s];if(l(u))u===void 0?delete f[s]:f[s]=u;else{let r=f[s],o=u;if(a(e,s,d)||a(t,s,d))delete f[s];else{if(c(r)&&c(o)){let n=d.get(r)||[],i=d.get(o)||[];n.push({obj:e,key:s}),i.push({obj:t,key:s}),d.set(r,n),d.set(o,i)}f[s]=i(f[s],u,n,d)}}}}else f=t;return f}}function a(e,t,n){let r=n.get(e[t])||[];for(let n=0,i=r.length;n<i;n++){let i=r[n];if(i.key===t&&i.obj===e)return!0}return!1}function o(e){return Array.isArray(e)}function s(e){return typeof e==`function`}function c(e){return!l(e)&&!o(e)&&!s(e)&&typeof e==`object`}function l(e){return typeof e==`string`||typeof e==`number`||typeof e==`boolean`||e===void 0||e instanceof Date||e instanceof RegExp||e===null}function u(e,n){return!(!(0,t.isPlainObject)(e)||!(0,t.isPlainObject)(n))}})),FL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.callWithTimeout=e.TimeoutError=void 0;var t=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};e.TimeoutError=t;function n(e,n){let r,i=new Promise(function(e,i){r=setTimeout(function(){i(new t(`Operation timed out.`))},n)});return Promise.race([e,i]).then(e=>(clearTimeout(r),e),e=>{throw clearTimeout(r),e})}e.callWithTimeout=n})),IL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isUrlIgnored=e.urlMatches=void 0;function t(e,t){return typeof t==`string`?e===t:!!e.match(t)}e.urlMatches=t;function n(e,n){if(!n)return!1;for(let r of n)if(t(e,r))return!0;return!1}e.isUrlIgnored=n})),LL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Deferred=void 0,e.Deferred=class{_promise;_resolve;_reject;constructor(){this._promise=new Promise((e,t)=>{this._resolve=e,this._reject=t})}get promise(){return this._promise}resolve(e){this._resolve(e)}reject(e){this._reject(e)}}})),RL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BindOnceFuture=void 0;let t=LL();e.BindOnceFuture=class{_callback;_that;_isCalled=!1;_deferred=new t.Deferred;constructor(e,t){this._callback=e,this._that=t}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...e){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...e)).then(e=>this._deferred.resolve(e),e=>this._deferred.reject(e))}catch(e){this._deferred.reject(e)}}return this._deferred.promise}}})),zL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.diagLogLevelFromString=void 0;let t=(Jd(),d(Kd)),n={ALL:t.DiagLogLevel.ALL,VERBOSE:t.DiagLogLevel.VERBOSE,DEBUG:t.DiagLogLevel.DEBUG,INFO:t.DiagLogLevel.INFO,WARN:t.DiagLogLevel.WARN,ERROR:t.DiagLogLevel.ERROR,NONE:t.DiagLogLevel.NONE};function r(e){return e==null?void 0:n[e.toUpperCase()]??(t.diag.warn(`Unknown log level "${e}", expected one of ${Object.keys(n)}, using default`),t.DiagLogLevel.INFO)}e.diagLogLevelFromString=r})),BL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e._export=void 0;let t=(Jd(),d(Kd)),n=uL();function r(e,r){return new Promise(i=>{t.context.with((0,n.suppressTracing)(t.context.active()),()=>{e.export(r,e=>{i(e)})})})}e._export=r})),VL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.internal=e.diagLogLevelFromString=e.BindOnceFuture=e.urlMatches=e.isUrlIgnored=e.callWithTimeout=e.TimeoutError=e.merge=e.TraceState=e.unsuppressTracing=e.suppressTracing=e.isTracingSuppressed=e.setRPCMetadata=e.getRPCMetadata=e.deleteRPCMetadata=e.RPCType=e.parseTraceParent=e.W3CTraceContextPropagator=e.TRACE_STATE_HEADER=e.TRACE_PARENT_HEADER=e.CompositePropagator=e.unrefTimer=e.otperformance=e.getStringListFromEnv=e.getNumberFromEnv=e.getBooleanFromEnv=e.getStringFromEnv=e._globalThis=e.SDK_INFO=e.parseKeyPairsIntoRecord=e.ExportResultCode=e.timeInputToHrTime=e.millisToHrTime=e.isTimeInputHrTime=e.isTimeInput=e.hrTimeToTimeStamp=e.hrTimeToNanoseconds=e.hrTimeToMilliseconds=e.hrTimeToMicroseconds=e.hrTimeDuration=e.hrTime=e.getTimeOrigin=e.addHrTimes=e.loggingErrorHandler=e.setGlobalErrorHandler=e.globalErrorHandler=e.sanitizeAttributes=e.isAttributeValue=e.AnchoredClock=e.W3CBaggagePropagator=void 0;var t=pL();Object.defineProperty(e,`W3CBaggagePropagator`,{enumerable:!0,get:function(){return t.W3CBaggagePropagator}});var n=mL();Object.defineProperty(e,`AnchoredClock`,{enumerable:!0,get:function(){return n.AnchoredClock}});var r=hL();Object.defineProperty(e,`isAttributeValue`,{enumerable:!0,get:function(){return r.isAttributeValue}}),Object.defineProperty(e,`sanitizeAttributes`,{enumerable:!0,get:function(){return r.sanitizeAttributes}});var i=_L();Object.defineProperty(e,`globalErrorHandler`,{enumerable:!0,get:function(){return i.globalErrorHandler}}),Object.defineProperty(e,`setGlobalErrorHandler`,{enumerable:!0,get:function(){return i.setGlobalErrorHandler}});var a=gL();Object.defineProperty(e,`loggingErrorHandler`,{enumerable:!0,get:function(){return a.loggingErrorHandler}});var o=EL();Object.defineProperty(e,`addHrTimes`,{enumerable:!0,get:function(){return o.addHrTimes}}),Object.defineProperty(e,`getTimeOrigin`,{enumerable:!0,get:function(){return o.getTimeOrigin}}),Object.defineProperty(e,`hrTime`,{enumerable:!0,get:function(){return o.hrTime}}),Object.defineProperty(e,`hrTimeDuration`,{enumerable:!0,get:function(){return o.hrTimeDuration}}),Object.defineProperty(e,`hrTimeToMicroseconds`,{enumerable:!0,get:function(){return o.hrTimeToMicroseconds}}),Object.defineProperty(e,`hrTimeToMilliseconds`,{enumerable:!0,get:function(){return o.hrTimeToMilliseconds}}),Object.defineProperty(e,`hrTimeToNanoseconds`,{enumerable:!0,get:function(){return o.hrTimeToNanoseconds}}),Object.defineProperty(e,`hrTimeToTimeStamp`,{enumerable:!0,get:function(){return o.hrTimeToTimeStamp}}),Object.defineProperty(e,`isTimeInput`,{enumerable:!0,get:function(){return o.isTimeInput}}),Object.defineProperty(e,`isTimeInputHrTime`,{enumerable:!0,get:function(){return o.isTimeInputHrTime}}),Object.defineProperty(e,`millisToHrTime`,{enumerable:!0,get:function(){return o.millisToHrTime}}),Object.defineProperty(e,`timeInputToHrTime`,{enumerable:!0,get:function(){return o.timeInputToHrTime}});var s=DL();Object.defineProperty(e,`ExportResultCode`,{enumerable:!0,get:function(){return s.ExportResultCode}});var c=fL();Object.defineProperty(e,`parseKeyPairsIntoRecord`,{enumerable:!0,get:function(){return c.parseKeyPairsIntoRecord}});var l=TL();Object.defineProperty(e,`SDK_INFO`,{enumerable:!0,get:function(){return l.SDK_INFO}}),Object.defineProperty(e,`_globalThis`,{enumerable:!0,get:function(){return l._globalThis}}),Object.defineProperty(e,`getStringFromEnv`,{enumerable:!0,get:function(){return l.getStringFromEnv}}),Object.defineProperty(e,`getBooleanFromEnv`,{enumerable:!0,get:function(){return l.getBooleanFromEnv}}),Object.defineProperty(e,`getNumberFromEnv`,{enumerable:!0,get:function(){return l.getNumberFromEnv}}),Object.defineProperty(e,`getStringListFromEnv`,{enumerable:!0,get:function(){return l.getStringListFromEnv}}),Object.defineProperty(e,`otperformance`,{enumerable:!0,get:function(){return l.otperformance}}),Object.defineProperty(e,`unrefTimer`,{enumerable:!0,get:function(){return l.unrefTimer}});var u=OL();Object.defineProperty(e,`CompositePropagator`,{enumerable:!0,get:function(){return u.CompositePropagator}});var d=jL();Object.defineProperty(e,`TRACE_PARENT_HEADER`,{enumerable:!0,get:function(){return d.TRACE_PARENT_HEADER}}),Object.defineProperty(e,`TRACE_STATE_HEADER`,{enumerable:!0,get:function(){return d.TRACE_STATE_HEADER}}),Object.defineProperty(e,`W3CTraceContextPropagator`,{enumerable:!0,get:function(){return d.W3CTraceContextPropagator}}),Object.defineProperty(e,`parseTraceParent`,{enumerable:!0,get:function(){return d.parseTraceParent}});var f=ML();Object.defineProperty(e,`RPCType`,{enumerable:!0,get:function(){return f.RPCType}}),Object.defineProperty(e,`deleteRPCMetadata`,{enumerable:!0,get:function(){return f.deleteRPCMetadata}}),Object.defineProperty(e,`getRPCMetadata`,{enumerable:!0,get:function(){return f.getRPCMetadata}}),Object.defineProperty(e,`setRPCMetadata`,{enumerable:!0,get:function(){return f.setRPCMetadata}});var p=uL();Object.defineProperty(e,`isTracingSuppressed`,{enumerable:!0,get:function(){return p.isTracingSuppressed}}),Object.defineProperty(e,`suppressTracing`,{enumerable:!0,get:function(){return p.suppressTracing}}),Object.defineProperty(e,`unsuppressTracing`,{enumerable:!0,get:function(){return p.unsuppressTracing}});var m=AL();Object.defineProperty(e,`TraceState`,{enumerable:!0,get:function(){return m.TraceState}});var h=PL();Object.defineProperty(e,`merge`,{enumerable:!0,get:function(){return h.merge}});var g=FL();Object.defineProperty(e,`TimeoutError`,{enumerable:!0,get:function(){return g.TimeoutError}}),Object.defineProperty(e,`callWithTimeout`,{enumerable:!0,get:function(){return g.callWithTimeout}});var _=IL();Object.defineProperty(e,`isUrlIgnored`,{enumerable:!0,get:function(){return _.isUrlIgnored}}),Object.defineProperty(e,`urlMatches`,{enumerable:!0,get:function(){return _.urlMatches}});var v=RL();Object.defineProperty(e,`BindOnceFuture`,{enumerable:!0,get:function(){return v.BindOnceFuture}});var y=zL();Object.defineProperty(e,`diagLogLevelFromString`,{enumerable:!0,get:function(){return y.diagLogLevelFromString}}),e.internal={_export:BL()._export}})),HL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultServiceName=void 0;function t(){return`unknown_service:${process.argv0}`}e.defaultServiceName=t})),UL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultServiceName=void 0;var t=HL();Object.defineProperty(e,`defaultServiceName`,{enumerable:!0,get:function(){return t.defaultServiceName}})})),WL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultServiceName=void 0;var t=UL();Object.defineProperty(e,`defaultServiceName`,{enumerable:!0,get:function(){return t.defaultServiceName}})})),GL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.identity=e.isPromiseLike=void 0,e.isPromiseLike=e=>typeof e==`object`&&!!e&&typeof e.then==`function`;function t(e){return e}e.identity=t})),KL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultResource=e.emptyResource=e.resourceFromDetectedResource=e.resourceFromAttributes=void 0;let t=(Jd(),d(Kd)),n=VL(),r=(PA(),d(NA)),i=WL(),a=GL();var o=class e{_rawAttributes;_asyncAttributesPending=!1;_schemaUrl;_memoizedAttributes;static FromAttributeList(t,n){let r=new e({},n);return r._rawAttributes=f(t),r._asyncAttributesPending=t.filter(([e,t])=>(0,a.isPromiseLike)(t)).length>0,r}constructor(e,t){let n=e.attributes??{};this._rawAttributes=Object.entries(n).map(([e,t])=>((0,a.isPromiseLike)(t)&&(this._asyncAttributesPending=!0),[e,t])),this._rawAttributes=f(this._rawAttributes),this._schemaUrl=p(t?.schemaUrl)}get asyncAttributesPending(){return this._asyncAttributesPending}async waitForAsyncAttributes(){if(this.asyncAttributesPending){for(let e=0;e<this._rawAttributes.length;e++){let[t,n]=this._rawAttributes[e];this._rawAttributes[e]=[t,(0,a.isPromiseLike)(n)?await n:n]}this._asyncAttributesPending=!1}}get attributes(){if(this.asyncAttributesPending&&t.diag.error(`Accessing resource attributes before async attributes settled`),this._memoizedAttributes)return this._memoizedAttributes;let e={};for(let[n,r]of this._rawAttributes){if((0,a.isPromiseLike)(r)){t.diag.debug(`Unsettled resource attribute ${n} skipped`);continue}r!=null&&(e[n]??=r)}return this._asyncAttributesPending||(this._memoizedAttributes=e),e}getRawAttributes(){return this._rawAttributes}get schemaUrl(){return this._schemaUrl}merge(t){if(t==null)return this;let n=m(this,t),r=n?{schemaUrl:n}:void 0;return e.FromAttributeList([...t.getRawAttributes(),...this.getRawAttributes()],r)}};function s(e,t){return o.FromAttributeList(Object.entries(e),t)}e.resourceFromAttributes=s;function c(e,t){return new o(e,t)}e.resourceFromDetectedResource=c;function l(){return s({})}e.emptyResource=l;function u(){return s({[r.ATTR_SERVICE_NAME]:(0,i.defaultServiceName)(),[r.ATTR_TELEMETRY_SDK_LANGUAGE]:n.SDK_INFO[r.ATTR_TELEMETRY_SDK_LANGUAGE],[r.ATTR_TELEMETRY_SDK_NAME]:n.SDK_INFO[r.ATTR_TELEMETRY_SDK_NAME],[r.ATTR_TELEMETRY_SDK_VERSION]:n.SDK_INFO[r.ATTR_TELEMETRY_SDK_VERSION]})}e.defaultResource=u;function f(e){return e.map(([e,n])=>(0,a.isPromiseLike)(n)?[e,n.catch(n=>{t.diag.debug(`promise rejection for resource attribute: %s - %s`,e,n)})]:[e,n])}function p(e){if(typeof e==`string`||e===void 0)return e;t.diag.warn(`Schema URL must be string or undefined, got %s. Schema URL will be ignored.`,e)}function m(e,n){let r=e?.schemaUrl,i=n?.schemaUrl,a=r===void 0||r===``,o=i===void 0||i===``;if(a)return i;if(o||r===i)return r;t.diag.warn(`Schema URL merge conflict: old resource has "%s", updating resource has "%s". Resulting resource will have undefined Schema URL.`,r,i)}})),qL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.detectResources=void 0;let t=(Jd(),d(Kd)),n=KL();e.detectResources=(e={})=>(e.detectors||[]).map(r=>{try{let i=(0,n.resourceFromDetectedResource)(r.detect(e));return t.diag.debug(`${r.constructor.name} found resource.`,i),i}catch(e){return t.diag.debug(`${r.constructor.name} failed: ${e.message}`),(0,n.emptyResource)()}}).reduce((e,t)=>e.merge(t),(0,n.emptyResource)())})),JL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.envDetector=void 0;let t=(Jd(),d(Kd)),n=(PA(),d(NA)),r=VL();e.envDetector=new class{_MAX_LENGTH=255;_COMMA_SEPARATOR=`,`;_LABEL_KEY_VALUE_SPLITTER=`=`;_ERROR_MESSAGE_INVALID_CHARS=`should be a ASCII string with a length greater than 0 and not exceed `+this._MAX_LENGTH+` characters.`;_ERROR_MESSAGE_INVALID_VALUE=`should be a ASCII string with a length not exceed `+this._MAX_LENGTH+` characters.`;detect(e){let i={},a=(0,r.getStringFromEnv)(`OTEL_RESOURCE_ATTRIBUTES`),o=(0,r.getStringFromEnv)(`OTEL_SERVICE_NAME`);if(a)try{let e=this._parseResourceAttributes(a);Object.assign(i,e)}catch(e){t.diag.debug(`EnvDetector failed: ${e.message}`)}return o&&(i[n.ATTR_SERVICE_NAME]=o),{attributes:i}}_parseResourceAttributes(e){if(!e)return{};let t={},n=e.split(this._COMMA_SEPARATOR,-1);for(let e of n){let n=e.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(n.length!==2)continue;let[r,i]=n;if(r=r.trim(),i=i.trim().split(/^"|"$/).join(``),!this._isValidAndNotEmpty(r))throw Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(i))throw Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);t[r]=decodeURIComponent(i)}return t}_isValid(e){return e.length<=this._MAX_LENGTH&&this._isBaggageOctetString(e)}_isBaggageOctetString(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<33||n===44||n===59||n===92||n>126)return!1}return!0}_isValidAndNotEmpty(e){return e.length>0&&this._isValid(e)}}})),YL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ATTR_WEBENGINE_VERSION=e.ATTR_WEBENGINE_NAME=e.ATTR_WEBENGINE_DESCRIPTION=e.ATTR_SERVICE_NAMESPACE=e.ATTR_SERVICE_INSTANCE_ID=e.ATTR_PROCESS_RUNTIME_VERSION=e.ATTR_PROCESS_RUNTIME_NAME=e.ATTR_PROCESS_RUNTIME_DESCRIPTION=e.ATTR_PROCESS_PID=e.ATTR_PROCESS_OWNER=e.ATTR_PROCESS_EXECUTABLE_PATH=e.ATTR_PROCESS_EXECUTABLE_NAME=e.ATTR_PROCESS_COMMAND_ARGS=e.ATTR_PROCESS_COMMAND=e.ATTR_OS_VERSION=e.ATTR_OS_TYPE=e.ATTR_K8S_POD_NAME=e.ATTR_K8S_NAMESPACE_NAME=e.ATTR_K8S_DEPLOYMENT_NAME=e.ATTR_K8S_CLUSTER_NAME=e.ATTR_HOST_TYPE=e.ATTR_HOST_NAME=e.ATTR_HOST_IMAGE_VERSION=e.ATTR_HOST_IMAGE_NAME=e.ATTR_HOST_IMAGE_ID=e.ATTR_HOST_ID=e.ATTR_HOST_ARCH=e.ATTR_CONTAINER_NAME=e.ATTR_CONTAINER_IMAGE_TAGS=e.ATTR_CONTAINER_IMAGE_NAME=e.ATTR_CONTAINER_ID=e.ATTR_CLOUD_REGION=e.ATTR_CLOUD_PROVIDER=e.ATTR_CLOUD_AVAILABILITY_ZONE=e.ATTR_CLOUD_ACCOUNT_ID=void 0,e.ATTR_CLOUD_ACCOUNT_ID=`cloud.account.id`,e.ATTR_CLOUD_AVAILABILITY_ZONE=`cloud.availability_zone`,e.ATTR_CLOUD_PROVIDER=`cloud.provider`,e.ATTR_CLOUD_REGION=`cloud.region`,e.ATTR_CONTAINER_ID=`container.id`,e.ATTR_CONTAINER_IMAGE_NAME=`container.image.name`,e.ATTR_CONTAINER_IMAGE_TAGS=`container.image.tags`,e.ATTR_CONTAINER_NAME=`container.name`,e.ATTR_HOST_ARCH=`host.arch`,e.ATTR_HOST_ID=`host.id`,e.ATTR_HOST_IMAGE_ID=`host.image.id`,e.ATTR_HOST_IMAGE_NAME=`host.image.name`,e.ATTR_HOST_IMAGE_VERSION=`host.image.version`,e.ATTR_HOST_NAME=`host.name`,e.ATTR_HOST_TYPE=`host.type`,e.ATTR_K8S_CLUSTER_NAME=`k8s.cluster.name`,e.ATTR_K8S_DEPLOYMENT_NAME=`k8s.deployment.name`,e.ATTR_K8S_NAMESPACE_NAME=`k8s.namespace.name`,e.ATTR_K8S_POD_NAME=`k8s.pod.name`,e.ATTR_OS_TYPE=`os.type`,e.ATTR_OS_VERSION=`os.version`,e.ATTR_PROCESS_COMMAND=`process.command`,e.ATTR_PROCESS_COMMAND_ARGS=`process.command_args`,e.ATTR_PROCESS_EXECUTABLE_NAME=`process.executable.name`,e.ATTR_PROCESS_EXECUTABLE_PATH=`process.executable.path`,e.ATTR_PROCESS_OWNER=`process.owner`,e.ATTR_PROCESS_PID=`process.pid`,e.ATTR_PROCESS_RUNTIME_DESCRIPTION=`process.runtime.description`,e.ATTR_PROCESS_RUNTIME_NAME=`process.runtime.name`,e.ATTR_PROCESS_RUNTIME_VERSION=`process.runtime.version`,e.ATTR_SERVICE_INSTANCE_ID=`service.instance.id`,e.ATTR_SERVICE_NAMESPACE=`service.namespace`,e.ATTR_WEBENGINE_DESCRIPTION=`webengine.description`,e.ATTR_WEBENGINE_NAME=`webengine.name`,e.ATTR_WEBENGINE_VERSION=`webengine.version`})),XL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.getMachineId=void 0;let t=require(`process`),n;async function r(){if(!n)switch(t.platform){case`darwin`:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-darwin-qxG7FDMy.cjs`).default))).getMachineId;break;case`linux`:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-linux-Dnsx6XjV.cjs`).default))).getMachineId;break;case`freebsd`:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-bsd-C6vJ2MI6.cjs`).default))).getMachineId;break;case`win32`:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-win-BDuHxVob.cjs`).default))).getMachineId;break;default:n=(await Promise.resolve().then(()=>u(require(`./getMachineId-unsupported-BE5onnLI.cjs`).default))).getMachineId;break}return n()}e.getMachineId=r})),ZL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.normalizeType=e.normalizeArch=void 0,e.normalizeArch=e=>{switch(e){case`arm`:return`arm32`;case`ppc`:return`ppc32`;case`x64`:return`amd64`;default:return e}},e.normalizeType=e=>{switch(e){case`sunos`:return`solaris`;case`win32`:return`windows`;default:return e}}})),QL=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.hostDetector=void 0;let t=YL(),n=require(`os`),r=XL(),i=ZL();e.hostDetector=new class{detect(e){return{attributes:{[t.ATTR_HOST_NAME]:(0,n.hostname)(),[t.ATTR_HOST_ARCH]:(0,i.normalizeArch)((0,n.arch)()),[t.ATTR_HOST_ID]:(0,r.getMachineId)()}}}}})),$L=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.osDetector=void 0;let t=YL(),n=require(`os`),r=ZL();e.osDetector=new class{detect(e){return{attributes:{[t.ATTR_OS_TYPE]:(0,r.normalizeType)((0,n.platform)()),[t.ATTR_OS_VERSION]:(0,n.release)()}}}}})),eR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.processDetector=void 0;let t=(Jd(),d(Kd)),n=YL(),r=require(`os`);e.processDetector=new class{detect(e){let i={[n.ATTR_PROCESS_PID]:process.pid,[n.ATTR_PROCESS_EXECUTABLE_NAME]:process.title,[n.ATTR_PROCESS_EXECUTABLE_PATH]:process.execPath,[n.ATTR_PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[n.ATTR_PROCESS_RUNTIME_VERSION]:process.versions.node,[n.ATTR_PROCESS_RUNTIME_NAME]:`nodejs`,[n.ATTR_PROCESS_RUNTIME_DESCRIPTION]:`Node.js`};process.argv.length>1&&(i[n.ATTR_PROCESS_COMMAND]=process.argv[1]);try{let e=r.userInfo();i[n.ATTR_PROCESS_OWNER]=e.username}catch(e){t.diag.debug(`error obtaining process owner: ${e}`)}return{attributes:i}}}})),tR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.serviceInstanceIdDetector=void 0;let t=YL(),n=require(`crypto`);e.serviceInstanceIdDetector=new class{detect(e){return{attributes:{[t.ATTR_SERVICE_INSTANCE_ID]:(0,n.randomUUID)()}}}}})),nR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.serviceInstanceIdDetector=e.processDetector=e.osDetector=e.hostDetector=void 0;var t=QL();Object.defineProperty(e,`hostDetector`,{enumerable:!0,get:function(){return t.hostDetector}});var n=$L();Object.defineProperty(e,`osDetector`,{enumerable:!0,get:function(){return n.osDetector}});var r=eR();Object.defineProperty(e,`processDetector`,{enumerable:!0,get:function(){return r.processDetector}});var i=tR();Object.defineProperty(e,`serviceInstanceIdDetector`,{enumerable:!0,get:function(){return i.serviceInstanceIdDetector}})})),rR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.serviceInstanceIdDetector=e.processDetector=e.osDetector=e.hostDetector=void 0;var t=nR();Object.defineProperty(e,`hostDetector`,{enumerable:!0,get:function(){return t.hostDetector}}),Object.defineProperty(e,`osDetector`,{enumerable:!0,get:function(){return t.osDetector}}),Object.defineProperty(e,`processDetector`,{enumerable:!0,get:function(){return t.processDetector}}),Object.defineProperty(e,`serviceInstanceIdDetector`,{enumerable:!0,get:function(){return t.serviceInstanceIdDetector}})})),iR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.noopDetector=e.NoopDetector=void 0;var t=class{detect(){return{attributes:{}}}};e.NoopDetector=t,e.noopDetector=new t})),aR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.noopDetector=e.serviceInstanceIdDetector=e.processDetector=e.osDetector=e.hostDetector=e.envDetector=void 0;var t=JL();Object.defineProperty(e,`envDetector`,{enumerable:!0,get:function(){return t.envDetector}});var n=rR();Object.defineProperty(e,`hostDetector`,{enumerable:!0,get:function(){return n.hostDetector}}),Object.defineProperty(e,`osDetector`,{enumerable:!0,get:function(){return n.osDetector}}),Object.defineProperty(e,`processDetector`,{enumerable:!0,get:function(){return n.processDetector}}),Object.defineProperty(e,`serviceInstanceIdDetector`,{enumerable:!0,get:function(){return n.serviceInstanceIdDetector}});var r=iR();Object.defineProperty(e,`noopDetector`,{enumerable:!0,get:function(){return r.noopDetector}})})),oR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.defaultServiceName=e.emptyResource=e.defaultResource=e.resourceFromAttributes=e.serviceInstanceIdDetector=e.processDetector=e.osDetector=e.hostDetector=e.envDetector=e.detectResources=void 0;var t=qL();Object.defineProperty(e,`detectResources`,{enumerable:!0,get:function(){return t.detectResources}});var n=aR();Object.defineProperty(e,`envDetector`,{enumerable:!0,get:function(){return n.envDetector}}),Object.defineProperty(e,`hostDetector`,{enumerable:!0,get:function(){return n.hostDetector}}),Object.defineProperty(e,`osDetector`,{enumerable:!0,get:function(){return n.osDetector}}),Object.defineProperty(e,`processDetector`,{enumerable:!0,get:function(){return n.processDetector}}),Object.defineProperty(e,`serviceInstanceIdDetector`,{enumerable:!0,get:function(){return n.serviceInstanceIdDetector}});var r=KL();Object.defineProperty(e,`resourceFromAttributes`,{enumerable:!0,get:function(){return r.resourceFromAttributes}}),Object.defineProperty(e,`defaultResource`,{enumerable:!0,get:function(){return r.defaultResource}}),Object.defineProperty(e,`emptyResource`,{enumerable:!0,get:function(){return r.emptyResource}});var i=WL();Object.defineProperty(e,`defaultServiceName`,{enumerable:!0,get:function(){return i.defaultServiceName}})})),sR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LogRecordImpl=void 0;let t=(Jd(),d(Kd)),n=VL();e.LogRecordImpl=class{hrTime;hrTimeObserved;spanContext;resource;instrumentationScope;attributes={};_severityText;_severityNumber;_body;_eventName;totalAttributesCount=0;_isReadonly=!1;_logRecordLimits;set severityText(e){this._isLogRecordReadonly()||(this._severityText=e)}get severityText(){return this._severityText}set severityNumber(e){this._isLogRecordReadonly()||(this._severityNumber=e)}get severityNumber(){return this._severityNumber}set body(e){this._isLogRecordReadonly()||(this._body=e)}get body(){return this._body}get eventName(){return this._eventName}set eventName(e){this._isLogRecordReadonly()||(this._eventName=e)}get droppedAttributesCount(){return this.totalAttributesCount-Object.keys(this.attributes).length}constructor(e,r,i){let{timestamp:a,observedTimestamp:o,eventName:s,severityNumber:c,severityText:l,body:u,attributes:d={},context:f}=i,p=Date.now();if(this.hrTime=(0,n.timeInputToHrTime)(a??p),this.hrTimeObserved=(0,n.timeInputToHrTime)(o??p),f){let e=t.trace.getSpanContext(f);e&&t.isSpanContextValid(e)&&(this.spanContext=e)}this.severityNumber=c,this.severityText=l,this.body=u,this.resource=e.resource,this.instrumentationScope=r,this._logRecordLimits=e.logRecordLimits,this._eventName=s,this.setAttributes(d)}setAttribute(e,r){return this._isLogRecordReadonly()||r===null?this:e.length===0?(t.diag.warn(`Invalid attribute key: ${e}`),this):!(0,n.isAttributeValue)(r)&&!(typeof r==`object`&&!Array.isArray(r)&&Object.keys(r).length>0)?(t.diag.warn(`Invalid attribute value set for key: ${e}`),this):(this.totalAttributesCount+=1,Object.keys(this.attributes).length>=this._logRecordLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,e)?(this.droppedAttributesCount===1&&t.diag.warn(`Dropping extra attributes.`),this):((0,n.isAttributeValue)(r)?this.attributes[e]=this._truncateToSize(r):this.attributes[e]=r,this))}setAttributes(e){for(let[t,n]of Object.entries(e))this.setAttribute(t,n);return this}setBody(e){return this.body=e,this}setEventName(e){return this.eventName=e,this}setSeverityNumber(e){return this.severityNumber=e,this}setSeverityText(e){return this.severityText=e,this}_makeReadonly(){this._isReadonly=!0}_truncateToSize(e){let n=this._logRecordLimits.attributeValueLengthLimit;return n<=0?(t.diag.warn(`Attribute value limit must be positive, got ${n}`),e):typeof e==`string`?this._truncateToLimitUtil(e,n):Array.isArray(e)?e.map(e=>typeof e==`string`?this._truncateToLimitUtil(e,n):e):e}_truncateToLimitUtil(e,t){return e.length<=t?e:e.substring(0,t)}_isLogRecordReadonly(){return this._isReadonly&&t.diag.warn(`Can not execute the operation on emitted log record`),this._isReadonly}}})),cR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Logger=void 0;let t=(Jd(),d(Kd)),n=sR();e.Logger=class{instrumentationScope;_sharedState;constructor(e,t){this.instrumentationScope=e,this._sharedState=t}emit(e){let r=e.context||t.context.active(),i=new n.LogRecordImpl(this._sharedState,this.instrumentationScope,{context:r,...e});this._sharedState.activeProcessor.onEmit(i,r),i._makeReadonly()}}})),lR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.reconfigureLimits=e.loadDefaultConfig=void 0;let t=VL();function n(){return{forceFlushTimeoutMillis:3e4,logRecordLimits:{attributeValueLengthLimit:(0,t.getNumberFromEnv)(`OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT`)??1/0,attributeCountLimit:(0,t.getNumberFromEnv)(`OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT`)??128},includeTraceContext:!0}}e.loadDefaultConfig=n;function r(e){return{attributeCountLimit:e.attributeCountLimit??(0,t.getNumberFromEnv)(`OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT`)??(0,t.getNumberFromEnv)(`OTEL_ATTRIBUTE_COUNT_LIMIT`)??128,attributeValueLengthLimit:e.attributeValueLengthLimit??(0,t.getNumberFromEnv)(`OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT`)??(0,t.getNumberFromEnv)(`OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT`)??1/0}}e.reconfigureLimits=r})),uR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.NoopLogRecordProcessor=void 0,e.NoopLogRecordProcessor=class{forceFlush(){return Promise.resolve()}onEmit(e,t){}shutdown(){return Promise.resolve()}}})),dR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.MultiLogRecordProcessor=void 0;let t=VL();e.MultiLogRecordProcessor=class{processors;forceFlushTimeoutMillis;constructor(e,t){this.processors=e,this.forceFlushTimeoutMillis=t}async forceFlush(){let e=this.forceFlushTimeoutMillis;await Promise.all(this.processors.map(n=>(0,t.callWithTimeout)(n.forceFlush(),e)))}onEmit(e,t){this.processors.forEach(n=>n.onEmit(e,t))}async shutdown(){await Promise.all(this.processors.map(e=>e.shutdown()))}}})),fR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LoggerProviderSharedState=void 0;let t=uR(),n=dR();e.LoggerProviderSharedState=class{resource;forceFlushTimeoutMillis;logRecordLimits;processors;loggers=new Map;activeProcessor;registeredLogRecordProcessors=[];constructor(e,r,i,a){this.resource=e,this.forceFlushTimeoutMillis=r,this.logRecordLimits=i,this.processors=a,a.length>0?(this.registeredLogRecordProcessors=a,this.activeProcessor=new n.MultiLogRecordProcessor(this.registeredLogRecordProcessors,this.forceFlushTimeoutMillis)):this.activeProcessor=new t.NoopLogRecordProcessor}}})),pR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LoggerProvider=e.DEFAULT_LOGGER_NAME=void 0;let t=(Jd(),d(Kd)),n=Li(),r=oR(),i=VL(),a=cR(),o=lR(),s=fR();e.DEFAULT_LOGGER_NAME=`unknown`,e.LoggerProvider=class{_shutdownOnce;_sharedState;constructor(e={}){let t=(0,i.merge)({},(0,o.loadDefaultConfig)(),e),n=e.resource??(0,r.defaultResource)();this._sharedState=new s.LoggerProviderSharedState(n,t.forceFlushTimeoutMillis,(0,o.reconfigureLimits)(t.logRecordLimits),e?.processors??[]),this._shutdownOnce=new i.BindOnceFuture(this._shutdown,this)}getLogger(r,i,o){if(this._shutdownOnce.isCalled)return t.diag.warn(`A shutdown LoggerProvider cannot provide a Logger`),n.NOOP_LOGGER;r||t.diag.warn(`Logger requested without instrumentation scope name.`);let s=r||e.DEFAULT_LOGGER_NAME,c=`${s}@${i||``}:${o?.schemaUrl||``}`;return this._sharedState.loggers.has(c)||this._sharedState.loggers.set(c,new a.Logger({name:s,version:i,schemaUrl:o?.schemaUrl},this._sharedState)),this._sharedState.loggers.get(c)}forceFlush(){return this._shutdownOnce.isCalled?(t.diag.warn(`invalid attempt to force flush after LoggerProvider shutdown`),this._shutdownOnce.promise):this._sharedState.activeProcessor.forceFlush()}shutdown(){return this._shutdownOnce.isCalled?(t.diag.warn(`shutdown may only be called once per LoggerProvider`),this._shutdownOnce.promise):this._shutdownOnce.call()}_shutdown(){return this._sharedState.activeProcessor.shutdown()}}})),mR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ConsoleLogRecordExporter=void 0;let t=VL();e.ConsoleLogRecordExporter=class{export(e,t){this._sendLogRecords(e,t)}shutdown(){return Promise.resolve()}_exportInfo(e){return{resource:{attributes:e.resource.attributes},instrumentationScope:e.instrumentationScope,timestamp:(0,t.hrTimeToMicroseconds)(e.hrTime),traceId:e.spanContext?.traceId,spanId:e.spanContext?.spanId,traceFlags:e.spanContext?.traceFlags,severityText:e.severityText,severityNumber:e.severityNumber,body:e.body,attributes:e.attributes}}_sendLogRecords(e,n){for(let t of e)console.dir(this._exportInfo(t),{depth:3});n?.({code:t.ExportResultCode.SUCCESS})}}})),cee=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.SimpleLogRecordProcessor=void 0;let t=VL();e.SimpleLogRecordProcessor=class{_exporter;_shutdownOnce;_unresolvedExports;constructor(e){this._exporter=e,this._shutdownOnce=new t.BindOnceFuture(this._shutdown,this),this._unresolvedExports=new Set}onEmit(e){if(this._shutdownOnce.isCalled)return;let n=()=>t.internal._export(this._exporter,[e]).then(e=>{e.code!==t.ExportResultCode.SUCCESS&&(0,t.globalErrorHandler)(e.error??Error(`SimpleLogRecordProcessor: log record export failed (status ${e})`))}).catch(t.globalErrorHandler);if(e.resource.asyncAttributesPending){let r=e.resource.waitForAsyncAttributes?.().then(()=>(this._unresolvedExports.delete(r),n()),t.globalErrorHandler);r!=null&&this._unresolvedExports.add(r)}else n()}async forceFlush(){await Promise.all(Array.from(this._unresolvedExports))}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}}})),hR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.InMemoryLogRecordExporter=void 0;let t=VL();e.InMemoryLogRecordExporter=class{_finishedLogRecords=[];_stopped=!1;export(e,n){if(this._stopped)return n({code:t.ExportResultCode.FAILED,error:Error(`Exporter has been stopped`)});this._finishedLogRecords.push(...e),n({code:t.ExportResultCode.SUCCESS})}shutdown(){return this._stopped=!0,this.reset(),Promise.resolve()}getFinishedLogRecords(){return this._finishedLogRecords}reset(){this._finishedLogRecords=[]}}})),lee=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessorBase=void 0;let t=(Jd(),d(Kd)),n=VL();e.BatchLogRecordProcessorBase=class{_exporter;_maxExportBatchSize;_maxQueueSize;_scheduledDelayMillis;_exportTimeoutMillis;_finishedLogRecords=[];_timer;_shutdownOnce;constructor(e,r){this._exporter=e,this._maxExportBatchSize=r?.maxExportBatchSize??(0,n.getNumberFromEnv)(`OTEL_BLRP_MAX_EXPORT_BATCH_SIZE`)??512,this._maxQueueSize=r?.maxQueueSize??(0,n.getNumberFromEnv)(`OTEL_BLRP_MAX_QUEUE_SIZE`)??2048,this._scheduledDelayMillis=r?.scheduledDelayMillis??(0,n.getNumberFromEnv)(`OTEL_BLRP_SCHEDULE_DELAY`)??5e3,this._exportTimeoutMillis=r?.exportTimeoutMillis??(0,n.getNumberFromEnv)(`OTEL_BLRP_EXPORT_TIMEOUT`)??3e4,this._shutdownOnce=new n.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize&&(t.diag.warn(`BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize`),this._maxExportBatchSize=this._maxQueueSize)}onEmit(e){this._shutdownOnce.isCalled||this._addToBuffer(e)}forceFlush(){return this._shutdownOnce.isCalled?this._shutdownOnce.promise:this._flushAll()}shutdown(){return this._shutdownOnce.call()}async _shutdown(){this.onShutdown(),await this._flushAll(),await this._exporter.shutdown()}_addToBuffer(e){this._finishedLogRecords.length>=this._maxQueueSize||(this._finishedLogRecords.push(e),this._maybeStartTimer())}_flushAll(){return new Promise((e,t)=>{let n=[],r=Math.ceil(this._finishedLogRecords.length/this._maxExportBatchSize);for(let e=0;e<r;e++)n.push(this._flushOneBatch());Promise.all(n).then(()=>{e()}).catch(t)})}_flushOneBatch(){return this._clearTimer(),this._finishedLogRecords.length===0?Promise.resolve():new Promise((e,t)=>{(0,n.callWithTimeout)(this._export(this._finishedLogRecords.splice(0,this._maxExportBatchSize)),this._exportTimeoutMillis).then(()=>e()).catch(t)})}_maybeStartTimer(){this._timer===void 0&&(this._timer=setTimeout(()=>{this._flushOneBatch().then(()=>{this._finishedLogRecords.length>0&&(this._clearTimer(),this._maybeStartTimer())}).catch(e=>{(0,n.globalErrorHandler)(e)})},this._scheduledDelayMillis),(0,n.unrefTimer)(this._timer))}_clearTimer(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}_export(e){let t=()=>n.internal._export(this._exporter,e).then(e=>{e.code!==n.ExportResultCode.SUCCESS&&(0,n.globalErrorHandler)(e.error??Error(`BatchLogRecordProcessor: log record export failed (status ${e})`))}).catch(n.globalErrorHandler),r=e.map(e=>e.resource).filter(e=>e.asyncAttributesPending);return r.length===0?t():Promise.all(r.map(e=>e.waitForAsyncAttributes?.())).then(t,n.globalErrorHandler)}}})),uee=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessor=void 0;let t=lee();e.BatchLogRecordProcessor=class extends t.BatchLogRecordProcessorBase{onShutdown(){}}})),gR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessor=void 0;var t=uee();Object.defineProperty(e,`BatchLogRecordProcessor`,{enumerable:!0,get:function(){return t.BatchLogRecordProcessor}})})),_R=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessor=void 0;var t=gR();Object.defineProperty(e,`BatchLogRecordProcessor`,{enumerable:!0,get:function(){return t.BatchLogRecordProcessor}})})),vR=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.BatchLogRecordProcessor=e.InMemoryLogRecordExporter=e.SimpleLogRecordProcessor=e.ConsoleLogRecordExporter=e.NoopLogRecordProcessor=e.LoggerProvider=void 0;var t=pR();Object.defineProperty(e,`LoggerProvider`,{enumerable:!0,get:function(){return t.LoggerProvider}});var n=uR();Object.defineProperty(e,`NoopLogRecordProcessor`,{enumerable:!0,get:function(){return n.NoopLogRecordProcessor}});var r=mR();Object.defineProperty(e,`ConsoleLogRecordExporter`,{enumerable:!0,get:function(){return r.ConsoleLogRecordExporter}});var i=cee();Object.defineProperty(e,`SimpleLogRecordProcessor`,{enumerable:!0,get:function(){return i.SimpleLogRecordProcessor}});var a=hR();Object.defineProperty(e,`InMemoryLogRecordExporter`,{enumerable:!0,get:function(){return a.InMemoryLogRecordExporter}});var o=_R();Object.defineProperty(e,`BatchLogRecordProcessor`,{enumerable:!0,get:function(){return o.BatchLogRecordProcessor}})})),yR=s((e=>{let t=ur(),n=t.__toESM(Ei()),r=t.__toESM(require(`node:async_hooks`)),i=t.__toESM(ie()),a=t.__toESM(Li()),o=t.__toESM(Fc()),s=t.__toESM(require(`node:process`)),c=t.__toESM(require(`node:os`)),l=t.__toESM(require(`node:tty`)),u=t.__toESM(require(`node:crypto`)),f=t.__toESM(lL()),p=t.__toESM(bj()),m=t.__toESM(vR()),h=t.__toESM((PA(),d(NA))),g={DELETE:`delete`,COMMENT_OUT:`comment out`,KEEP:`keep`,SKIP:`skip`},_={GREEN:`Green`,GREY:`Grey`,RED:`Red`,NA:`NA`},v={GREEN:`Green`,GREY:`Grey`,RUNTIME_ERROR:`RuntimeError`},y=function(e){return e.IDE=`IDE`,e.CLI=`CLI`,e}({}),b=function(e){return e.SIBLING_FOLDER=`siblingFolder`,e.ROOT_FOLDER=`rootFolder`,e}({}),x=function(e){return e.JEST=`jest`,e.MOCHA=`mocha`,e.VITEST=`vitest`,e.PYTEST=`pytest`,e}({}),S=function(e){return e.SPEC=`spec`,e.TEST=`test`,e}({}),C=function(e){return e.CAMEL_CASE=`camelCase`,e.KEBAB_CASE=`kebabCase`,e}({}),w=function(e){return e.NONE=`none`,e.CATEGORIES=`categories`,e}({}),T=function(e){return e.NEW_CODE_FILE=`newCodeFile`,e.OVERRIDE_CODE_FILE=`overrideCodeFile`,e}({}),E=function(e){return e.ON=`on`,e.OFF=`off`,e}({}),D={DEFAULT:0,MIN:0,MAX:100},O={DEFAULT:5,MIN:1,MAX:50};n.z.object({rootPath:n.z.string().default(process.cwd()),testStructure:n.z.enum(b).optional(),testFramework:n.z.enum(x).optional(),testSuffix:n.z.enum(S).optional(),testFileName:n.z.enum(C).optional(),calculateCoverage:n.z.enum(E).optional(),coverageThreshold:n.z.number().min(D.MIN).max(D.MAX).default(D.DEFAULT),requestSource:n.z.enum(y).optional(),concurrency:n.z.number().min(O.MIN).max(O.MAX).default(O.DEFAULT),backendURL:n.z.string().optional(),secretToken:n.z.string().optional(),modelName:n.z.string().optional(),context:n.z.object({git:n.z.object({ref_name:n.z.string(),anchorBranch:n.z.string(),compareBranch:n.z.string(),repository:n.z.string(),owner:n.z.string(),sha:n.z.string(),workflowRunId:n.z.string(),remoteUrl:n.z.string(),topLevel:n.z.string()}).partial().optional()}).optional(),testCommand:n.z.string().optional(),coverageCommand:n.z.string().optional(),lintCommand:n.z.string().optional(),prettierCommand:n.z.string().optional(),disableLintRules:n.z.boolean().optional(),ignoreAsAnyLintErrors:n.z.boolean().optional(),includeEarlyTests:n.z.boolean().optional(),greyTestBehaviour:n.z.enum(g).optional(),redTestBehaviour:n.z.enum(g).optional(),keepErrorTests:n.z.boolean().optional(),keepFailedTests:n.z.boolean().optional(),conditionalKeep:n.z.boolean().optional(),continueOnTestErrors:n.z.boolean().optional(),perFunctionTimeout:n.z.number().positive().optional(),dynamicPromptIterations:n.z.number().min(0).max(10).optional(),removeComments:n.z.boolean().optional(),experimentalAgentSdk:n.z.boolean().optional(),compressOutput:n.z.boolean().optional(),agentSdkModel:n.z.string().optional(),agentSdkBudget:n.z.number().positive().optional(),pluginPath:n.z.string().optional(),claudeCodeExecutablePath:n.z.string().optional(),projectId:n.z.string().optional(),e2eCatalogIds:n.z.array(n.z.string()).optional(),e2eProjectIds:n.z.array(n.z.string()).optional(),jobId:n.z.string().optional(),label:n.z.string().optional(),debug:n.z.boolean().optional(),verbose:n.z.boolean().optional(),progressLogger:n.z.custom().optional(),onTokenRefresh:n.z.custom().optional()});var k=`@earlyai/ts-agent`,A=`0.129.0`;let j={VSCODE:`vscode`,GITHUB_ACTION:`github-action`,UNKNOWN:`unknown`},M=`$early_filename`,ee=`npx jest ${M} --no-coverage --silent --json --forceExit --maxWorkers=1`,N=`npx --no eslint ${M}`,te=`npx --no prettier ${M} --write`,P={rootPath:process.cwd(),isSiblingFolderStructured:!0,gitURL:`https://github.com/your-owner/your-repo`,testFramework:x.JEST,greyTestBehaviour:g.DELETE,redTestBehaviour:g.DELETE,keepErrorTests:!1,keepFailedTests:!1,conditionalKeep:!1,continueOnTestErrors:!0,generatedTestStructure:w.CATEGORIES,isRootFolderStructured:!1,clientSource:j.GITHUB_ACTION,backendURL:`https://api.startearly.ai`,requestSource:y.CLI,userPrompt:``,testLocation:`__tests__`,coverageThreshold:D.DEFAULT,concurrency:5,testFileFormat:`ts`,outputType:T.NEW_CODE_FILE,shouldRefreshCoverage:!0,kebabCaseFileName:!1,earlyTestFilenameSuffix:`.early.${S.TEST}`,testSuffix:S.TEST,isAppendPrompt:!1,dynamicPromptIterations:3,wsServerEndpoint:`wss://api.startearly.ai`,secretToken:``,loggerConfig:{consoleEnabled:!1,azureEnabled:!0,azureConnectionString:`InstrumentationKey=8b9b0d6a-5400-44a3-ada6-3cd026de6cfe;IngestionEndpoint=https://eastus-8.in.applicationinsights.azure.com/;LiveEndpoint=https://eastus.livediagnostics.monitor.azure.com/;ApplicationId=d6e130b6-4aaa-4dcc-8d26-c1fa25d4656a`},context:void 0,includeEarlyTests:!1,lintCommand:N,prettierCommand:te,disableLintRules:!1,ignoreAsAnyLintErrors:!0,allowUndefinedLintErrors:!0,perFunctionTimeout:42e4,removeComments:!0,experimentalAgentSdk:!1,compressOutput:!1,agentSdkModel:void 0,agentSdkBudget:void 0,debug:!1,verbose:!1},F=e=>{let t=`testFramework.testSuffix.backendURL.requestSource.secretToken.concurrency.coverageThreshold.context.rootPath.testCommand.coverageCommand.lintCommand.prettierCommand.disableLintRules.greyTestBehaviour.redTestBehaviour.keepErrorTests.keepFailedTests.conditionalKeep.continueOnTestErrors.perFunctionTimeout.dynamicPromptIterations.removeComments.experimentalAgentSdk.compressOutput.agentSdkModel.agentSdkBudget.pluginPath.claudeCodeExecutablePath.jobId.label.projectId.e2eCatalogIds.debug.verbose.progressLogger.onTokenRefresh`.split(`.`).reduce((t,n)=>(0,i.isDefined)(e[n])?{...t,[n]:e[n]}:t,{}),n={...(0,i.isDefined)(e.testStructure)&&{isSiblingFolderStructured:e.testStructure===b.SIBLING_FOLDER,isRootFolderStructured:e.testStructure===b.ROOT_FOLDER},...(0,i.isDefined)(e.testFileName)&&{kebabCaseFileName:e.testFileName===C.KEBAB_CASE},...(0,i.isDefined)(e.calculateCoverage)&&{shouldRefreshCoverage:e.calculateCoverage===E.ON},...(0,i.isDefined)(e.modelName)&&{fixTestsLLMModelName:e.modelName,generateTestsLLMModelName:e.modelName},...(0,i.isDefined)(e.testSuffix)&&{earlyTestFilenameSuffix:`.early.${e.testSuffix}`},...(0,i.isDefined)(e.requestSource)&&{clientSource:e.requestSource===y.IDE?j.VSCODE:j.GITHUB_ACTION}};return{...t,...n}},I=(e=0)=>t=>`\u001B[${t+e}m`,L=(e=0)=>t=>`\u001B[${38+e};5;${t}m`,ne=(e=0)=>(t,n,r)=>`\u001B[${38+e};2;${t};${n};${r}m`,R={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(R.modifier);let z=Object.keys(R.color),re=Object.keys(R.bgColor);[...z,...re];function B(){let e=new Map;for(let[t,n]of Object.entries(R)){for(let[t,r]of Object.entries(n))R[t]={open:`\u001B[${r[0]}m`,close:`\u001B[${r[1]}m`},n[t]=R[t],e.set(r[0],r[1]);Object.defineProperty(R,t,{value:n,enumerable:!1})}return Object.defineProperty(R,`codes`,{value:e,enumerable:!1}),R.color.close=`\x1B[39m`,R.bgColor.close=`\x1B[49m`,R.color.ansi=I(),R.color.ansi256=L(),R.color.ansi16m=ne(),R.bgColor.ansi=I(10),R.bgColor.ansi256=L(10),R.bgColor.ansi16m=ne(10),Object.defineProperties(R,{rgbToAnsi256:{value(e,t,n){return e===t&&t===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(e){let t=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!t)return[0,0,0];let[n]=t;n.length===3&&(n=[...n].map(e=>e+e).join(``));let r=Number.parseInt(n,16);return[r>>16&255,r>>8&255,r&255]},enumerable:!1},hexToAnsi256:{value:e=>R.rgbToAnsi256(...R.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let t,n,r;if(e>=232)t=((e-232)*10+8)/255,n=t,r=t;else{e-=16;let i=e%36;t=Math.floor(e/36)/5,n=Math.floor(i/6)/5,r=i%6/5}let i=Math.max(t,n,r)*2;if(i===0)return 30;let a=30+(Math.round(r)<<2|Math.round(n)<<1|Math.round(t));return i===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:(e,t,n)=>R.ansi256ToAnsi(R.rgbToAnsi256(e,t,n)),enumerable:!1},hexToAnsi:{value:e=>R.ansi256ToAnsi(R.hexToAnsi256(e)),enumerable:!1}}),R}var V=B();function ae(e,t=globalThis.Deno?globalThis.Deno.args:s.default.argv){let n=e.startsWith(`-`)?``:e.length===1?`-`:`--`,r=t.indexOf(n+e),i=t.indexOf(`--`);return r!==-1&&(i===-1||r<i)}let{env:oe}=s.default,se;ae(`no-color`)||ae(`no-colors`)||ae(`color=false`)||ae(`color=never`)?se=0:(ae(`color`)||ae(`colors`)||ae(`color=true`)||ae(`color=always`))&&(se=1);function ce(){if(`FORCE_COLOR`in oe)return oe.FORCE_COLOR===`true`?1:oe.FORCE_COLOR===`false`?0:oe.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(oe.FORCE_COLOR,10),3)}function le(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function ue(e,{streamIsTTY:t,sniffFlags:n=!0}={}){let r=ce();r!==void 0&&(se=r);let i=n?se:r;if(i===0)return 0;if(n){if(ae(`color=16m`)||ae(`color=full`)||ae(`color=truecolor`))return 3;if(ae(`color=256`))return 2}if(`TF_BUILD`in oe&&`AGENT_NAME`in oe)return 1;if(e&&!t&&i===void 0)return 0;let a=i||0;if(oe.TERM===`dumb`)return a;if(s.default.platform===`win32`){let e=c.default.release().split(`.`);return Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if(`CI`in oe)return[`GITHUB_ACTIONS`,`GITEA_ACTIONS`,`CIRCLECI`].some(e=>e in oe)?3:[`TRAVIS`,`APPVEYOR`,`GITLAB_CI`,`BUILDKITE`,`DRONE`].some(e=>e in oe)||oe.CI_NAME===`codeship`?1:a;if(`TEAMCITY_VERSION`in oe)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(oe.TEAMCITY_VERSION)?1:0;if(oe.COLORTERM===`truecolor`||oe.TERM===`xterm-kitty`||oe.TERM===`xterm-ghostty`||oe.TERM===`wezterm`)return 3;if(`TERM_PROGRAM`in oe){let e=Number.parseInt((oe.TERM_PROGRAM_VERSION||``).split(`.`)[0],10);switch(oe.TERM_PROGRAM){case`iTerm.app`:return e>=3?3:2;case`Apple_Terminal`:return 2}}return/-256(color)?$/i.test(oe.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(oe.TERM)||`COLORTERM`in oe?1:a}function de(e,t={}){return le(ue(e,{streamIsTTY:e&&e.isTTY,...t}))}var fe={stdout:de({isTTY:l.default.isatty(1)}),stderr:de({isTTY:l.default.isatty(2)})};function pe(e,t,n){let r=e.indexOf(t);if(r===-1)return e;let i=t.length,a=0,o=``;do o+=e.slice(a,r)+t+n,a=r+i,r=e.indexOf(t,a);while(r!==-1);return o+=e.slice(a),o}function me(e,t,n,r){let i=0,a=``;do{let o=e[r-1]===`\r`;a+=e.slice(i,o?r-1:r)+t+(o?`\r
|
|
119
119
|
`:`
|
|
120
120
|
`)+n,i=r+1,r=e.indexOf(`
|
|
121
121
|
`,i)}while(r!==-1);return a+=e.slice(i),a}let{stdout:he,stderr:ge}=fe,_e=Symbol(`GENERATOR`),ve=Symbol(`STYLER`),ye=Symbol(`IS_EMPTY`),be=[`ansi`,`ansi`,`ansi256`,`ansi16m`],xe=Object.create(null),Se=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw Error("The `level` option should be an integer from 0 to 3");let n=he?he.level:0;e.level=t.level===void 0?n:t.level},Ce=e=>{let t=(...e)=>e.join(` `);return Se(t,e),Object.setPrototypeOf(t,we.prototype),t};function we(e){return Ce(e)}Object.setPrototypeOf(we.prototype,Function.prototype);for(let[e,t]of Object.entries(V))xe[e]={get(){let n=Oe(this,De(t.open,t.close,this[ve]),this[ye]);return Object.defineProperty(this,e,{value:n}),n}};xe.visible={get(){let e=Oe(this,this[ve],!0);return Object.defineProperty(this,`visible`,{value:e}),e}};let Te=(e,t,n,...r)=>e===`rgb`?t===`ansi16m`?V[n].ansi16m(...r):t===`ansi256`?V[n].ansi256(V.rgbToAnsi256(...r)):V[n].ansi(V.rgbToAnsi(...r)):e===`hex`?Te(`rgb`,t,n,...V.hexToRgb(...r)):V[n][e](...r);for(let e of[`rgb`,`hex`,`ansi256`]){xe[e]={get(){let{level:t}=this;return function(...n){let r=De(Te(e,be[t],`color`,...n),V.color.close,this[ve]);return Oe(this,r,this[ye])}}};let t=`bg`+e[0].toUpperCase()+e.slice(1);xe[t]={get(){let{level:t}=this;return function(...n){let r=De(Te(e,be[t],`bgColor`,...n),V.bgColor.close,this[ve]);return Oe(this,r,this[ye])}}}}let Ee=Object.defineProperties(()=>{},{...xe,level:{enumerable:!0,get(){return this[_e].level},set(e){this[_e].level=e}}}),De=(e,t,n)=>{let r,i;return n===void 0?(r=e,i=t):(r=n.openAll+e,i=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:i,parent:n}},Oe=(e,t,n)=>{let r=(...e)=>ke(r,e.length===1?``+e[0]:e.join(` `));return Object.setPrototypeOf(r,Ee),r[_e]=e,r[ve]=t,r[ye]=n,r},ke=(e,t)=>{if(e.level<=0||!t)return e[ye]?``:t;let n=e[ve];if(n===void 0)return t;let{openAll:r,closeAll:i}=n;if(t.includes(`\x1B`))for(;n!==void 0;)t=pe(t,n.close,n.open),n=n.parent;let a=t.indexOf(`
|
|
@@ -166,7 +166,7 @@ var n=TR(),r=require(`path`);t.exports=function(e){var t=n();return e.charCodeAt
|
|
|
166
166
|
`),i=r.map(e=>` ${e}`).join(`
|
|
167
167
|
`),a=r.length>0?`\n${i}`:``;return`${t+1}. ${n}${a}`}).join(`
|
|
168
168
|
`)}function S(e,t,n){let i={cwd:e,encoding:`utf8`,timeout:1e4};try{return n?(0,r.execSync)(`git config user.email`,i).trim():(0,r.execSync)(`git log -1 --format=%ae ${t}`,i).trim()}catch{return``}}function C(e,t,n){let i={cwd:e,encoding:`utf8`,timeout:1e4};try{let e=(0,r.execSync)(`git log -1 --format=%ci ${n} -- "${t}"`,i).trim();return e.length===0?0:Math.floor((Date.now()-new Date(e).getTime())/(1e3*60*60*24))}catch{return 0}}function w(e,t,n,i){let a={cwd:e,encoding:`utf8`,timeout:1e4};try{let e=(0,r.execSync)(`git log --oneline --since="90 days ago" ${n} ${i} -- "${t}"`,a).trim();return e.length===0?0:e.split(`
|
|
169
|
-
`).length}catch{return 0}}function T(e,t,r,i,a){let o=i!==void 0&&i.length>0,s=o?i:a;o||n.logger.info.defaultLog(`[regression-impact] anchorSha missing — git signals computed against branch '${a}' (may include commits past catalog snapshot)`);let c={};for(let n of t){let t=r.length>0?`--author="${r}"`:``;c[n]={fileAgeDays:C(e,n,s),authorCommits:r.length>0?w(e,n,s,t):0,bugFixCommits:w(e,n,s,`--grep="fix:"`),revertCommits:w(e,n,s,`--grep="revert"`)}}return c}function E(e){let t=/(\d+) insertion/.exec(e),n=/(\d+) deletion/.exec(e);return(t===null?0:Number.parseInt(t[1],10))+(n===null?0:Number.parseInt(n[1],10))}function D(e,t,n,i){let a={cwd:e,encoding:`utf8`,timeout:3e4,maxBuffer:5242880};try{if(i){let e=(0,r.execFileSync)(`git`,[`diff`,`--shortstat`],a).trim(),t=(0,r.execFileSync)(`git`,[`diff`,`--shortstat`,`--cached`],a).trim();return E(e)+E(t)}let o=m(e,t);return E((0,r.execFileSync)(`git`,[`diff`,`--shortstat`,`${n}...${o}`],a).trim())}catch{return 0}}Object.defineProperty(e,`CROSS_COMPONENT_CONSUMER_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 6}}),Object.defineProperty(e,`CROSS_COMPONENT_CONSUMER_MAX_TURNS`,{enumerable:!0,get:function(){return 80}}),Object.defineProperty(e,`CROSS_COMPONENT_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`CROSS_COMPONENT_MAX_TURNS`,{enumerable:!0,get:function(){return 60}}),Object.defineProperty(e,`CROSS_COMPONENT_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`CROSS_COMPONENT_REGRESSION_SCORE_THRESHOLD`,{enumerable:!0,get:function(){return 7}}),Object.defineProperty(e,`HUNT_FIRST_BLAST_RADIUS_MAX_SYMBOL_LOOKUPS`,{enumerable:!0,get:function(){return 200}}),Object.defineProperty(e,`HUNT_FIRST_HUNTER_CONCURRENCY`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`HUNT_FIRST_HUNTER_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`HUNT_FIRST_HUNTER_MAX_TURNS`,{enumerable:!0,get:function(){return 40}}),Object.defineProperty(e,`HUNT_FIRST_HUNTER_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`HUNT_FIRST_PANEL_FILE_THRESHOLD`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(e,`HUNT_FIRST_PANEL_LINE_THRESHOLD`,{enumerable:!0,get:function(){return 300}}),Object.defineProperty(e,`HUNT_FIRST_SCORING_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 2}}),Object.defineProperty(e,`HUNT_FIRST_SCORING_MAX_TURNS`,{enumerable:!0,get:function(){return 15}}),Object.defineProperty(e,`HUNT_FIRST_SENTINEL_FLOW_ID`,{enumerable:!0,get:function(){return`uncatalogued`}}),Object.defineProperty(e,`HUNT_FIRST_SENTINEL_FLOW_NAME`,{enumerable:!0,get:function(){return`Uncatalogued`}}),Object.defineProperty(e,`REGRESSION_ADJ_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`REGRESSION_ADJ_MAX_TURNS`,{enumerable:!0,get:function(){return 35}}),Object.defineProperty(e,`REGRESSION_CATALOG_LOG_PROMPT`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_CATALOG_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`REGRESSION_CATALOG_MAX_TURNS`,{enumerable:!0,get:function(){return 100}}),Object.defineProperty(e,`REGRESSION_CATALOG_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_CATALOG_TARGET_COUNT`,{enumerable:!0,get:function(){return 20}}),Object.defineProperty(e,`REGRESSION_DEV_ARTIFACT_DIR`,{enumerable:!0,get:function(){return``}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_MAX_TURNS`,{enumerable:!0,get:function(){return 100}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_SAVE_REPORT_FILES`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_TARGET_COUNT`,{enumerable:!0,get:function(){return 20}}),Object.defineProperty(e,`REGRESSION_E2E_CONNECTION_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 2}}),Object.defineProperty(e,`REGRESSION_E2E_CONNECTION_MAX_TURNS`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_FIRST_CATEGORY_MAX_TURNS`,{enumerable:!0,get:function(){return 30}}),Object.defineProperty(e,`REGRESSION_FIRST_DIFF_MAX_CHARS`,{enumerable:!0,get:function(){return 4e5}}),Object.defineProperty(e,`REGRESSION_FIRST_LOG_SUBAGENTS`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_FIRST_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 14}}),Object.defineProperty(e,`REGRESSION_FIRST_MAX_TURNS`,{enumerable:!0,get:function(){return 60}}),Object.defineProperty(e,`REGRESSION_FIRST_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_FIRST_POST_EXPERIMENTAL`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_FIRST_PRODUCT_INTENT_MAX_TURNS`,{enumerable:!0,get:function(){return 45}}),Object.defineProperty(e,`REGRESSION_FIRST_SENTINEL_FLOW_ID`,{enumerable:!0,get:function(){return`regression-first--uncatalogued`}}),Object.defineProperty(e,`REGRESSION_FIRST_SENTINEL_FLOW_NAME`,{enumerable:!0,get:function(){return`Uncatalogued (regression-first)`}}),Object.defineProperty(e,`REGRESSION_FIRST_WRITE_DETECT_FILE`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_AGENTIC_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 2}}),Object.defineProperty(e,`REGRESSION_IMPACT_AGENTIC_MAX_TURNS`,{enumerable:!0,get:function(){return 50}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATION_ENABLED`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATION_RANGE_MAX`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATION_RANGE_MIN`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATOR_CONCURRENCY`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATOR_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return .3}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATOR_MAX_TURNS`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATOR_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_CONTRACT_MODE`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 2}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_MAX_TURNS`,{enumerable:!0,get:function(){return 40}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_MODE`,{enumerable:!0,get:function(){return`dedup`}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_PASS1_BATCH_SIZE`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_PASS1_CONCURRENCY`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_PASS2_CONCURRENCY`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEV_MAPPING_SNAPSHOT`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_HAIKU_MODEL`,{enumerable:!0,get:function(){return`claude-haiku-4-5-20251001`}}),Object.defineProperty(e,`REGRESSION_IMPACT_LOG_DEEP_PROMPT`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_LOG_MAPPING_PROMPT`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_BATCH_SIZE`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_CONCURRENCY`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_FILE_DIFF_MAX_CHARS`,{enumerable:!0,get:function(){return 8e3}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_STRATEGY`,{enumerable:!0,get:function(){return`shallow`}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_SYMBOL_TRACING`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_TRACING_BUDGET`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_GROUPED`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_GROUP_DIFF_MAX_CHARS`,{enumerable:!0,get:function(){return 12e4}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_MAX_GROUP_SIZE`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_MAX_SUBGROUPS`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_MIN_OVERLAP`,{enumerable:!0,get:function(){return .4}}),Object.defineProperty(e,`REGRESSION_IMPACT_RESIDUAL_BATCH_SIZE`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_RESIDUAL_CONCURRENCY`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_IMPACT_RESIDUAL_ROUGH_MAP`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_ROUGH_MAP_CAP`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`REGRESSION_IMPACT_SHALLOW_DIFF_MAX_CHARS`,{enumerable:!0,get:function(){return 2e4}}),Object.defineProperty(e,`REGRESSION_IMPACT_SKIP_PASS1`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_SONNET_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_IMPACT_STOP_AFTER_MAPPING`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_STOP_AFTER_PASS1`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_LOG_COST`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_PERMISSION_MODE`,{enumerable:!0,get:function(){return`bypassPermissions`}}),Object.defineProperty(e,`REGRESSION_SAVE_REPORT_FILES`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_TRACER_CONCURRENCY`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_TRACER_ENABLED`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_TRACER_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return .5}}),Object.defineProperty(e,`REGRESSION_TRACER_MAX_TURNS`,{enumerable:!0,get:function(){return 30}}),Object.defineProperty(e,`REGRESSION_TRACER_MODEL`,{enumerable:!0,get:function(){return`claude-haiku-4-5-20251001`}}),Object.defineProperty(e,`capDiffForEmbed`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(e,`ensureAnchorRef`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(e,`ensureCompareBranchRef`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(e,`formatCommitMessagesBlock`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(e,`getAuthorEmail`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(e,`getChangedFiles`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(e,`getChangedLineCount`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(e,`getCommitMessages`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(e,`getCurrentBranch`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(e,`getDiffForFiles`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(e,`getGitSignalsForFiles`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(e,`getHeadSha`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(e,`getPerFileDiffs`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(e,`getRepoRoot`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(e,`getUncommittedFiles`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(e,`resolveRefSha`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(e,`shouldLogDiagnostics`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`showFileAtRef`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(e,`showFileRangeAtRef`,{enumerable:!0,get:function(){return d}})})),tz=s((e=>{let t=yR(),n=ez(),r=!1;function i(e){r=e}function a(){return new Date().toISOString()}function o(e,n){r&&t.logger.info.defaultLog(`[${a()}] [agent-log] [${e}] cwd (rootPath): ${n}`)}function s(e,n,i){if(!(!r||i===void 0||i.length===0))for(let r of i){let i=r,o=String(i.type??``);if(o===`tool_use`){let r=String(i.name??``),o=i.input,s=o===void 0?``:JSON.stringify(o),c=s.length>200?s.slice(0,200)+`...`:s;t.logger.info.defaultLog(`[${a()}] [agent-log] [${e}] Turn ${n} — tool: ${r} ${c}`)}else if(o===`text`&&typeof i.text==`string`&&i.text.trim().length>0){let r=i.text.slice(0,200).replaceAll(`
|
|
169
|
+
`).length}catch{return 0}}function T(e,t,r,i,a){let o=i!==void 0&&i.length>0,s=o?i:a;o||n.logger.info.defaultLog(`[regression-impact] anchorSha missing — git signals computed against branch '${a}' (may include commits past catalog snapshot)`);let c={};for(let n of t){let t=r.length>0?`--author="${r}"`:``;c[n]={fileAgeDays:C(e,n,s),authorCommits:r.length>0?w(e,n,s,t):0,bugFixCommits:w(e,n,s,`--grep="fix:"`),revertCommits:w(e,n,s,`--grep="revert"`)}}return c}function E(e){let t=/(\d+) insertion/.exec(e),n=/(\d+) deletion/.exec(e);return(t===null?0:Number.parseInt(t[1],10))+(n===null?0:Number.parseInt(n[1],10))}function D(e,t,n,i){let a={cwd:e,encoding:`utf8`,timeout:3e4,maxBuffer:5242880};try{if(i){let e=(0,r.execFileSync)(`git`,[`diff`,`--shortstat`],a).trim(),t=(0,r.execFileSync)(`git`,[`diff`,`--shortstat`,`--cached`],a).trim();return E(e)+E(t)}let o=m(e,t);return E((0,r.execFileSync)(`git`,[`diff`,`--shortstat`,`${n}...${o}`],a).trim())}catch{return 0}}Object.defineProperty(e,`CROSS_COMPONENT_CONSUMER_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 6}}),Object.defineProperty(e,`CROSS_COMPONENT_CONSUMER_MAX_TURNS`,{enumerable:!0,get:function(){return 80}}),Object.defineProperty(e,`CROSS_COMPONENT_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`CROSS_COMPONENT_MAX_TURNS`,{enumerable:!0,get:function(){return 60}}),Object.defineProperty(e,`CROSS_COMPONENT_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`CROSS_COMPONENT_REGRESSION_SCORE_THRESHOLD`,{enumerable:!0,get:function(){return 7}}),Object.defineProperty(e,`HUNT_FIRST_BLAST_RADIUS_MAX_SYMBOL_LOOKUPS`,{enumerable:!0,get:function(){return 200}}),Object.defineProperty(e,`HUNT_FIRST_HUNTER_CONCURRENCY`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`HUNT_FIRST_HUNTER_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`HUNT_FIRST_HUNTER_MAX_TURNS`,{enumerable:!0,get:function(){return 40}}),Object.defineProperty(e,`HUNT_FIRST_HUNTER_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`HUNT_FIRST_PANEL_FILE_THRESHOLD`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(e,`HUNT_FIRST_PANEL_LINE_THRESHOLD`,{enumerable:!0,get:function(){return 300}}),Object.defineProperty(e,`HUNT_FIRST_SCORING_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 2}}),Object.defineProperty(e,`HUNT_FIRST_SCORING_MAX_TURNS`,{enumerable:!0,get:function(){return 15}}),Object.defineProperty(e,`HUNT_FIRST_SENTINEL_FLOW_ID`,{enumerable:!0,get:function(){return`uncatalogued`}}),Object.defineProperty(e,`HUNT_FIRST_SENTINEL_FLOW_NAME`,{enumerable:!0,get:function(){return`Uncatalogued`}}),Object.defineProperty(e,`REGRESSION_ADJ_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`REGRESSION_ADJ_MAX_TURNS`,{enumerable:!0,get:function(){return 35}}),Object.defineProperty(e,`REGRESSION_CATALOG_LOG_PROMPT`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_CATALOG_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`REGRESSION_CATALOG_MAX_TURNS`,{enumerable:!0,get:function(){return 100}}),Object.defineProperty(e,`REGRESSION_CATALOG_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_CATALOG_TARGET_COUNT`,{enumerable:!0,get:function(){return 20}}),Object.defineProperty(e,`REGRESSION_DEV_ARTIFACT_DIR`,{enumerable:!0,get:function(){return``}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_MAX_TURNS`,{enumerable:!0,get:function(){return 100}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_SAVE_REPORT_FILES`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_E2E_CATALOG_TARGET_COUNT`,{enumerable:!0,get:function(){return 20}}),Object.defineProperty(e,`REGRESSION_E2E_CONNECTION_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 2}}),Object.defineProperty(e,`REGRESSION_E2E_CONNECTION_MAX_TURNS`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_FIRST_CATEGORY_MAX_TURNS`,{enumerable:!0,get:function(){return 30}}),Object.defineProperty(e,`REGRESSION_FIRST_DIFF_MAX_CHARS`,{enumerable:!0,get:function(){return 4e5}}),Object.defineProperty(e,`REGRESSION_FIRST_GENERALIST_MAX_TURNS`,{enumerable:!0,get:function(){return 45}}),Object.defineProperty(e,`REGRESSION_FIRST_LOG_SUBAGENTS`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_FIRST_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 14}}),Object.defineProperty(e,`REGRESSION_FIRST_MAX_TURNS`,{enumerable:!0,get:function(){return 60}}),Object.defineProperty(e,`REGRESSION_FIRST_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_FIRST_POST_EXPERIMENTAL`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_FIRST_PRODUCT_INTENT_MAX_TURNS`,{enumerable:!0,get:function(){return 45}}),Object.defineProperty(e,`REGRESSION_FIRST_SENTINEL_FLOW_ID`,{enumerable:!0,get:function(){return`regression-first--uncatalogued`}}),Object.defineProperty(e,`REGRESSION_FIRST_SENTINEL_FLOW_NAME`,{enumerable:!0,get:function(){return`Uncatalogued (regression-first)`}}),Object.defineProperty(e,`REGRESSION_FIRST_SINGLE_PANEL_DIFF_MAX_CHARS`,{enumerable:!0,get:function(){return 12e4}}),Object.defineProperty(e,`REGRESSION_FIRST_WRITE_DETECT_FILE`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_AGENTIC_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 2}}),Object.defineProperty(e,`REGRESSION_IMPACT_AGENTIC_MAX_TURNS`,{enumerable:!0,get:function(){return 50}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATION_ENABLED`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATION_RANGE_MAX`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATION_RANGE_MIN`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATOR_CONCURRENCY`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATOR_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return .3}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATOR_MAX_TURNS`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_CALIBRATOR_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_CONTRACT_MODE`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return 2}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_MAX_TURNS`,{enumerable:!0,get:function(){return 40}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_MODE`,{enumerable:!0,get:function(){return`dedup`}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_PASS1_BATCH_SIZE`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_PASS1_CONCURRENCY`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEEP_PASS2_CONCURRENCY`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_IMPACT_DEV_MAPPING_SNAPSHOT`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_HAIKU_MODEL`,{enumerable:!0,get:function(){return`claude-haiku-4-5-20251001`}}),Object.defineProperty(e,`REGRESSION_IMPACT_LOG_DEEP_PROMPT`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_LOG_MAPPING_PROMPT`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_BATCH_SIZE`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_CONCURRENCY`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_FILE_DIFF_MAX_CHARS`,{enumerable:!0,get:function(){return 8e3}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_STRATEGY`,{enumerable:!0,get:function(){return`shallow`}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_SYMBOL_TRACING`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_MAPPING_TRACING_BUDGET`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_GROUPED`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_GROUP_DIFF_MAX_CHARS`,{enumerable:!0,get:function(){return 12e4}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_MAX_GROUP_SIZE`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_MAX_SUBGROUPS`,{enumerable:!0,get:function(){return 8}}),Object.defineProperty(e,`REGRESSION_IMPACT_PASS2_MIN_OVERLAP`,{enumerable:!0,get:function(){return .4}}),Object.defineProperty(e,`REGRESSION_IMPACT_RESIDUAL_BATCH_SIZE`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_IMPACT_RESIDUAL_CONCURRENCY`,{enumerable:!0,get:function(){return 10}}),Object.defineProperty(e,`REGRESSION_IMPACT_RESIDUAL_ROUGH_MAP`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_ROUGH_MAP_CAP`,{enumerable:!0,get:function(){return 4}}),Object.defineProperty(e,`REGRESSION_IMPACT_SHALLOW_DIFF_MAX_CHARS`,{enumerable:!0,get:function(){return 2e4}}),Object.defineProperty(e,`REGRESSION_IMPACT_SKIP_PASS1`,{enumerable:!0,get:function(){return!0}}),Object.defineProperty(e,`REGRESSION_IMPACT_SONNET_MODEL`,{enumerable:!0,get:function(){return`claude-sonnet-4-6`}}),Object.defineProperty(e,`REGRESSION_IMPACT_STOP_AFTER_MAPPING`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_IMPACT_STOP_AFTER_PASS1`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_LOG_COST`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_PERMISSION_MODE`,{enumerable:!0,get:function(){return`bypassPermissions`}}),Object.defineProperty(e,`REGRESSION_SAVE_REPORT_FILES`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_TRACER_CONCURRENCY`,{enumerable:!0,get:function(){return 5}}),Object.defineProperty(e,`REGRESSION_TRACER_ENABLED`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`REGRESSION_TRACER_MAX_BUDGET_USD`,{enumerable:!0,get:function(){return .5}}),Object.defineProperty(e,`REGRESSION_TRACER_MAX_TURNS`,{enumerable:!0,get:function(){return 30}}),Object.defineProperty(e,`REGRESSION_TRACER_MODEL`,{enumerable:!0,get:function(){return`claude-haiku-4-5-20251001`}}),Object.defineProperty(e,`capDiffForEmbed`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(e,`ensureAnchorRef`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(e,`ensureCompareBranchRef`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(e,`formatCommitMessagesBlock`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(e,`getAuthorEmail`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(e,`getChangedFiles`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(e,`getChangedLineCount`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(e,`getCommitMessages`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(e,`getCurrentBranch`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(e,`getDiffForFiles`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(e,`getGitSignalsForFiles`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(e,`getHeadSha`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(e,`getPerFileDiffs`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(e,`getRepoRoot`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(e,`getUncommittedFiles`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(e,`resolveRefSha`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(e,`shouldLogDiagnostics`,{enumerable:!0,get:function(){return!1}}),Object.defineProperty(e,`showFileAtRef`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(e,`showFileRangeAtRef`,{enumerable:!0,get:function(){return d}})})),tz=s((e=>{let t=yR(),n=ez(),r=!1;function i(e){r=e}function a(){return new Date().toISOString()}function o(e,n){r&&t.logger.info.defaultLog(`[${a()}] [agent-log] [${e}] cwd (rootPath): ${n}`)}function s(e,n,i){if(!(!r||i===void 0||i.length===0))for(let r of i){let i=r,o=String(i.type??``);if(o===`tool_use`){let r=String(i.name??``),o=i.input,s=o===void 0?``:JSON.stringify(o),c=s.length>200?s.slice(0,200)+`...`:s;t.logger.info.defaultLog(`[${a()}] [agent-log] [${e}] Turn ${n} — tool: ${r} ${c}`)}else if(o===`text`&&typeof i.text==`string`&&i.text.trim().length>0){let r=i.text.slice(0,200).replaceAll(`
|
|
170
170
|
`,` `),o=i.text.length>200?`...`:``;t.logger.info.defaultLog(`[${a()}] [agent-log] [${e}] Turn ${n} — text: ${r}${o}`)}}}function c(e){return e.map(e=>`${e.name} (${e.flowId})`).join(` | `)}function l(e,n,i){if(r){t.logger.info.defaultLog(`[${a()}] [agent-log] [${e}] split BEFORE: ${n.flows.length} flow(s), ${n.diffChars} diff chars (over cap) — [${c(n.flows)}]`);for(let[n,r]of i.entries()){let o=r.isTruncated?` (TRUNCATED — irreducible/hard-stop fallback)`:``;t.logger.info.defaultLog(`[${a()}] [agent-log] [${e}] split AFTER sub-group ${n+1}/${i.length}: ${r.flows.length} flow(s), ${r.diffChars} diff chars${o} — [${c(r.flows)}]`)}}}let u={type:`object`,additionalProperties:!1,required:[`flows`,`projectSummary`,`projectType`,`detectedEntryCount`],properties:{flows:{type:`array`,items:{type:`object`}},projectSummary:{type:`string`},projectType:{type:`string`},detectedEntryCount:{type:`number`}}},d={type:`object`,additionalProperties:!1,required:[`flows`,`projectSummary`,`projectType`,`detectedFlowCount`],properties:{flows:{type:`array`,items:{type:`object`,required:[`name`,`description`,`importance`,`importanceReason`,`composedOf`,`scoring`,`productFlow`],properties:{flowId:{type:`string`},name:{type:`string`},description:{type:`string`},importance:{type:`string`,enum:[`CRITICAL`,`HIGH`,`MEDIUM`,`LOW`]},importanceReason:{type:`string`},rank:{type:`number`},scoring:{type:`object`,required:[`riskScore`,`riskReason`,`blastRadius`,`blastReason`,`finalScore`],properties:{riskScore:{type:`number`},riskReason:{type:`string`},blastRadius:{type:`number`},blastReason:{type:`string`},finalScore:{type:`number`}}},productFlow:{type:`object`,required:[`trigger`,`steps`,`outcome`],properties:{trigger:{type:`string`},outcome:{type:`string`},steps:{type:`array`,items:{type:`object`,required:[`actor`,`action`,`outcome`],properties:{actor:{type:`string`},action:{type:`string`},outcome:{type:`string`}}}}}},composedOf:{type:`array`,items:{type:`object`,additionalProperties:!1,required:[`catalogId`,`repoSlug`,`perRepoFlowId`,`perRepoFlowName`],properties:{catalogId:{type:`string`},repoSlug:{type:`string`},perRepoFlowId:{type:`string`},perRepoFlowName:{type:`string`}}}}}}},projectSummary:{type:`string`},projectType:{type:`string`},detectedFlowCount:{type:`number`}}},f={type:`object`,additionalProperties:!1,required:[`guesses`],properties:{guesses:{type:`array`,items:{type:`object`}}}},p={type:`object`,additionalProperties:!1,required:[`sourceFiles`],properties:{sourceFiles:{type:`array`,items:{type:`string`}}}},m={type:`object`,additionalProperties:!1,required:[`techChanges`,`productChanges`],properties:{techChanges:{type:`array`,items:{type:`object`}},productChanges:{type:`array`,items:{type:`object`}},affectedSteps:{type:`array`,items:{type:`object`}}}},h={type:`object`,additionalProperties:!1,required:[`flows`],properties:{flows:{type:`array`,items:{type:`object`}}}},g={type:`object`,additionalProperties:!1,required:[`fileFlowMapping`],properties:{fileFlowMapping:{type:`array`,items:{type:`object`}}}},_={type:`object`,additionalProperties:!1,required:[`score`,`reasoning`],properties:{score:{type:`integer`,minimum:1,maximum:10},reasoning:{type:`string`},criticalOverride:{type:`boolean`},signalsThatFired:{type:`object`,properties:{bug:{type:`array`,items:{type:`integer`}},intentional:{type:`array`,items:{type:`integer`}}}},changeFromOriginal:{type:`object`,properties:{changed:{type:`boolean`},delta:{type:`integer`},reason:{type:`string`}}}}},v={type:`object`,additionalProperties:!1,required:[`calledModules`],properties:{calledModules:{type:`array`,items:{type:`string`}}}},y={type:`object`,additionalProperties:!1,required:[`findings`],properties:{findings:{type:`array`,items:{type:`object`,additionalProperties:!1,required:[`title`,`file`,`hunkExcerpt`,`behaviorBefore`,`behaviorAfter`,`confidence`,`rationale`,`category`],properties:{title:{type:`string`},file:{type:`string`},hunkExcerpt:{type:`string`},behaviorBefore:{type:`string`},behaviorAfter:{type:`string`},confidence:{type:`string`,enum:[`high`,`low`]},rationale:{type:`string`},category:{type:`string`}}}}}},b={type:`object`,additionalProperties:!1,required:[`scores`],properties:{scores:{type:`array`,items:{type:`object`,additionalProperties:!1,required:[`index`,`severity`,`verdictScore`,`verdictReason`],properties:{index:{type:`number`},severity:{type:`string`,enum:[`NONE`,`LOW`,`MEDIUM`,`HIGH`,`CRITICAL`]},verdictScore:{type:`number`},verdictReason:{type:`string`}}}}}},x={cacheReadTokens:0,cacheCreationTokens:0,inputTokens:0,outputTokens:0};function S(e){let t=0,n=0,r=0,i=0;if(typeof e!=`object`||!e)return{cacheReadTokens:t,cacheCreationTokens:n,inputTokens:r,outputTokens:i};let a=e.modelUsage;if(typeof a!=`object`||!a)return{cacheReadTokens:t,cacheCreationTokens:n,inputTokens:r,outputTokens:i};for(let e of Object.values(a)){if(typeof e!=`object`||!e)continue;let a=e;t+=typeof a.cacheReadInputTokens==`number`?a.cacheReadInputTokens:0,n+=typeof a.cacheCreationInputTokens==`number`?a.cacheCreationInputTokens:0,r+=typeof a.inputTokens==`number`?a.inputTokens:0,i+=typeof a.outputTokens==`number`?a.outputTokens:0}return{cacheReadTokens:t,cacheCreationTokens:n,inputTokens:r,outputTokens:i}}function C(e,r){if(!n.shouldLogDiagnostics)return;let i=r.cacheReadTokens+r.cacheCreationTokens+r.inputTokens,a=i>0?r.cacheReadTokens/i*100:0;t.logger.info.defaultLog(`[regression-impact] ${e} tokens: cache_read=${r.cacheReadTokens} cache_creation=${r.cacheCreationTokens} input_uncached=${r.inputTokens} output=${r.outputTokens} cache_hit=${a.toFixed(1)}%`)}function w(e,t){let n=S(t);return C(e,n),n}Object.defineProperty(e,`CATALOG_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(e,`DEPENDENCY_TRACER_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(e,`E2E_CATALOG_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(e,`FILE_FLOW_MAPPING_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(e,`HUNT_FINDING_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(e,`HUNT_SCORING_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(e,`PRE_FILTER_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(e,`RESIDUAL_ROUGH_MAP_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(e,`SONNET_DEEP_GROUPED_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(e,`SONNET_DEEP_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(e,`VERDICT_CALIBRATOR_OUTPUT_SCHEMA`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(e,`ZERO_TOKENS`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(e,`extractCacheTokens`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(e,`logAgentActivity`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(e,`logAgentCwd`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(e,`logAgentGroupSplit`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(e,`logCacheTokens`,{enumerable:!0,get:function(){return C}}),Object.defineProperty(e,`logCacheTokensFromMessage`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(e,`setAgentLogEnabled`,{enumerable:!0,get:function(){return i}})})),nz=s((e=>{let t=`catalog_emit`,n=`emit_catalog_flow`,r=`emit_catalog_summary`,i=`mcp__${t}__${n}`,a=`mcp__${t}__${r}`;var o=class{flows=[];projectSummary=``;projectType=`unknown`;detectedEntryCount=0;addFlow(e){let t=typeof e.name==`string`?e.name.trim().toLowerCase():``,n=t.length>0?this.flows.findIndex(e=>(typeof e.name==`string`?e.name.trim().toLowerCase():``)===t):-1;return n>=0?this.flows[n]=e:this.flows.push(e),this.flows.length}setSummary(e,t,n){this.projectSummary=e,this.projectType=t,this.detectedEntryCount=n}};function s(e,t){let n;try{n=JSON.parse(t)}catch{return{accepted:!1,error:`flow was not valid JSON — re-send a single flow object as a JSON string`}}return typeof n!=`object`||!n||Array.isArray(n)?{accepted:!1,error:`flow must be a single JSON object, not an array or scalar`}:{accepted:!0,count:e.addFlow(n)}}Object.defineProperty(e,`CATALOG_EMIT_MCP_SERVER_NAME`,{enumerable:!0,get:function(){return t}}),Object.defineProperty(e,`CatalogEmitCollector`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(e,`EMIT_FLOW_TOOL`,{enumerable:!0,get:function(){return n}}),Object.defineProperty(e,`EMIT_SUMMARY_TOOL`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(e,`MCP_EMIT_FLOW_TOOL`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(e,`MCP_EMIT_SUMMARY_TOOL`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(e,`acceptEmittedFlow`,{enumerable:!0,get:function(){return s}})})),rz=s((e=>{let t=ur(),n=ez(),r=t.__toESM(ie()),i=`## Dependency roots (multi-root projects)
|
|
171
171
|
|
|
172
172
|
Some projects span a PRIMARY project plus one or more DEPENDENCY ROOTS (sibling
|
|
@@ -33297,7 +33297,7 @@ ${n.length>0?n.map(e=>`- ${e}`).join(`
|
|
|
33297
33297
|
`):`(none)`}
|
|
33298
33298
|
|
|
33299
33299
|
Trace all local imports reachable from the entry files and return any NEW files not already in the known list.`}var dh=t.__toESM(n.require_decorateMetadata()),fh=t.__toESM(nn()),ph=t.__toESM(n.require_decorate()),mh;function hh(e){if(typeof e!=`object`||!e)return;let t=e;if(Array.isArray(t.calledModules))return{calledModules:t.calledModules.filter(e=>typeof e==`string`)}}let gh=class{constructor(e,t){this.globalConfigService=e,this.authStorage=t}async run(e,t){n.logger.info.defaultLog(`[regression-tracer] Tracing dependencies for ${e.flows.length} flows in parallel...`);let r=await this.authStorage.getJWTToken(),i=this.globalConfigService.getAnthropicProxyUrl(),o=[...e.flows],s=0;for(let e=0;e<o.length;e+=a.REGRESSION_TRACER_CONCURRENCY){let c=o.slice(e,e+a.REGRESSION_TRACER_CONCURRENCY);await Promise.all(c.map(async e=>{let{newModules:a,costUsd:o}=await this.traceFlow(e,t,r,i);s+=o,a.length>0&&(e.trace.calledModules=[...new Set([...e.trace.calledModules,...a])],n.logger.info.defaultLog(`[regression-tracer] ${e.name}: +${a.length} modules (total: ${e.trace.calledModules.length})`))}))}return a.REGRESSION_LOG_COST&&n.logger.info.defaultLog(`[regression-tracer] Done. Total cost: $${s.toFixed(4)}`),{result:{...e,flows:o},costUsd:s}}async traceFlow(e,t,r,i){if(e.trace.entryFiles.length===0)return{newModules:[],costUsd:0};let{query:s,isResultMessage:c,isErrorResult:l}=await Promise.resolve().then(()=>lz()),u=s({prompt:uh(t,e.trace.entryFiles,e.trace.calledModules),options:{model:a.REGRESSION_TRACER_MODEL,systemPrompt:lh(),allowedTools:[`Read`,`Glob`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_TRACER_MAX_BUDGET_USD,maxTurns:a.REGRESSION_TRACER_MAX_TURNS,cwd:t,sessionId:(0,v.randomUUID)(),env:{...process.env,ANTHROPIC_BASE_URL:i,ANTHROPIC_AUTH_TOKEN:r??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
33300
|
-
`)},outputFormat:{type:`json_schema`,schema:o.DEPENDENCY_TRACER_OUTPUT_SCHEMA}}}),d=0;for await(let t of u){if(!c(t))continue;if(l(t))return n.logger.info.defaultLog(`[regression-tracer] ${e.name}: agent error — keeping original calledModules`),{newModules:[],costUsd:0};d=t.total_cost_usd;let r=hh(t.structured_output),i=new Set(e.trace.calledModules);return{newModules:(r?.calledModules??[]).filter(e=>typeof e==`string`&&!i.has(e)),costUsd:d}}return{newModules:[],costUsd:0}}};gh=(0,ph.default)([(0,h.injectable)(),(0,fh.default)(0,(0,h.inject)(n.GlobalConfigService)),(0,fh.default)(1,(0,h.inject)(tn)),(0,dh.default)(`design:paramtypes`,[Object,typeof(mh=tn!==void 0&&tn)==`function`?mh:Object])],gh);let _h=u.z.object({name:u.z.string().optional(),sourcePath:u.z.string(),rootPath:u.z.string().optional()}).passthrough(),vh=_h.extend({dependencies:u.z.array(_h).optional().default([])}),yh=u.z.object({jobId:u.z.string().optional(),command:u.z.string(),anchorBranch:u.z.string(),anchorSha:u.z.string(),compareBranch:u.z.string().optional().default(``),compareSha:u.z.string().optional().default(``),catalogId:u.z.string().optional().default(``),projectId:u.z.string(),projectRootPath:u.z.string().optional().default(``),label:u.z.string().optional().default(``),primary:vh.optional(),projectRootPaths:vh.optional(),agentLog:u.z.boolean().optional().default(!1),catalogIncrementalEmit:u.z.boolean().optional().default(!1),analysisMode:u.z.enum([`perflow`,`grouping`,`divergence`,`regression-first`,`regression-first-2`,`regression-first-3`,`regression-first-2-adj`,`regression-first-single`,`hunterImpact`]).optional().catch(void 0),impactMappingMaxTurns:u.z.number().int().positive().optional(),fileMappingMode:u.z.enum([`shallow`,`agentic`,`agentic-ast`]).optional().catch(void 0),baselineFromAnalysisId:u.z.string().optional().default(``),crossComponent:u.z.object({changedSide:u.z.enum([`consumer`,`provider`]).optional().default(`provider`),providerRunId:u.z.string().optional(),providerProjectId:u.z.string(),providerSha:u.z.string().optional(),providerRef:u.z.string().optional(),providerRepo:u.z.object({owner:u.z.string(),repo:u.z.string(),rootPath:u.z.string().optional().default(``)}).optional(),consumerRunId:u.z.string().optional(),consumerIsReleasing:u.z.boolean().optional().default(!1)}).optional()}).transform(e=>({...e,primary:e.primary??e.projectRootPaths}));async function bh(e,t,r,i=`regression`){let a=t.getJobId();if(!(0,m.isDefined)(a)||a.length===0)return null;try{n.logger.info.defaultLog(`[${i}] Fetching job input for jobId: ${a}`);let t=await e.get(`/api/v1/regression/jobs/${a}/input`);return r.parse(t)}catch(e){return n.logger.info.defaultLog(`[${i}] Failed to fetch job input for jobId ${a}: ${String(e)}`),null}}async function xh(e,t){let r=await bh(e,t,yh,`regression`);return r!==null&&n.logger.info.defaultLog(`[regression] Job input loaded: command=${r.command}`),r}var Sh=t.__toESM(n.require_decorateMetadata()),Ch=t.__toESM(nn()),wh=t.__toESM(n.require_decorate()),Th,Eh,Dh;let Oh=class{constructor(e,t,n,r){this.runner=e,this.tracer=t,this.apiService=n,this.globalConfigService=r}async run(){let e=await xh(this.apiService,this.globalConfigService);if(e===null){let e=Error(`[regression-catalog] jobInput is required — no global config fallback is allowed`);throw n.logger.error(e.message,e),e}let t=Rm(e);if((e.primary?.sourcePath??e.projectRootPath??``).trim().length===0){let e=Error(`[regression-catalog] no source path — provide primary.sourcePath or projectRootPath in the job input`);throw n.logger.error(e.message,e),e}let r=kh(e,`anchorBranch`),i=t.dependencyRoots.filter(e=>(0,y.existsSync)(e.sourcePath)),a=t.dependencyRoots.length-i.length;a>0&&n.logger.info.defaultLog(`[regression-catalog] Skipped ${a} dependency root(s) missing on disk.`);let o=t;return i.length!==t.dependencyRoots.length&&e.primary&&(o=Rm({...e,primary:{...e.primary,dependencies:i.map(e=>({sourcePath:e.sourcePath,name:e.name}))}})),Ym(``,this.runner,this.tracer,o.cwd,r,this.apiService,this.globalConfigService,e,o)}};Oh=(0,wh.default)([(0,h.injectable)(),(0,Ch.default)(0,(0,h.inject)(sh)),(0,Ch.default)(1,(0,h.inject)(gh)),(0,Ch.default)(2,(0,h.inject)(ln)),(0,Ch.default)(3,(0,h.inject)(n.GlobalConfigService)),(0,Sh.default)(`design:paramtypes`,[typeof(Th=sh!==void 0&&sh)==`function`?Th:Object,typeof(Eh=gh!==void 0&&gh)==`function`?Eh:Object,typeof(Dh=ln!==void 0&&ln)==`function`?Dh:Object,Object])],Oh);function kh(e,t){let r=e[t]?.trim();if(!(0,m.isDefined)(r)||r.length===0){let e=Error(`[regression-catalog] ${t} is missing from job input`);throw n.logger.error(e.message,e),e}return r}let Ah=function(e){return e.Continue=`continue`,e.Halt=`halt`,e}({}),jh={costUsd:0};var Mh=class{constructor(e){this.steps=e}describe(){return this.steps.map(e=>e.name).join(` -> `)}async run(e){n.logger.info.defaultLog(`[regression-e2e-catalog] Pipeline: ${this.describe()}`);let t=!1;for(let[r,i]of this.steps.entries()){let o=`${r+1}/${this.steps.length}`;if(t&&i.isTerminal!==!0){n.logger.info.defaultLog(`[regression-e2e-catalog] Step ${o} "${i.name}" — SKIPPED (pipeline halted)`);continue}n.logger.info.defaultLog(`[regression-e2e-catalog] Step ${o} "${i.name}" — START`);let s=Date.now(),c=await i.execute(e),l=(Date.now()-s)/1e3;e.totalCostUsd=(e.totalCostUsd??0)+c.costUsd,e.stepMetrics.push({stepName:i.name,costUsd:c.costUsd,durationSeconds:l,turns:c.turns??0,...c.maxTurnsHit===!0&&{maxTurnsHit:!0},...c.tokens!==void 0&&{tokens:c.tokens}});let u=c.status===Ah.Halt?` — HALT`:``,d=a.shouldLogDiagnostics?`${c.turns??0} turns / ${l.toFixed(2)}s`:`${l.toFixed(2)}s`;n.logger.info.defaultLog(`[regression-e2e-catalog] Step ${o} "${i.name}" — END (${d})${u}`),c.status===Ah.Halt&&(t=!0)}return e}};function Nh(e,t,n){if(e===void 0)throw Error(`[e2e-catalog-pipeline] ctx.${t} is unset — ${n} must run before this step`);return e}function Ph(e){return Nh(e.perRepoCatalogs,`perRepoCatalogs`,`LoadProjectsStep`)}function Fh(e){return Nh(e.connectionMap,`connectionMap`,`DiscoverConnectionsStep`)}function Ih(e){return Nh(e.traceData,`traceData`,`BuildTraceDataStep`)}var Lh=class{name=`buildTraceData`;execute(e){let t=Fh(e),r=Ph(e),i=Zh(t);return n.logger.info.defaultLog(`[regression-e2e-catalog] Loaded ${r.length} project flow-lib(s); derived ${i.traces.length} connection(s) → trace(s)`),$h(i,r),e.traceData=i,Promise.resolve(jh)}},Rh=class{name=`capPrimary`;execute(e){let t=Ph(e)[0];if((0,m.isDefined)(t)&&t.flows.length>a.REGRESSION_E2E_CATALOG_TARGET_COUNT){let e=[...t.flows].sort((e,t)=>(typeof e.rank==`number`?e.rank:2**53-1)-(typeof t.rank==`number`?t.rank:2**53-1));n.logger.info.defaultLog(`[regression-e2e-catalog] Primary project "${t.repoSlug}": capping ${t.flows.length} → top ${a.REGRESSION_E2E_CATALOG_TARGET_COUNT} flows`),t.flows=e.slice(0,a.REGRESSION_E2E_CATALOG_TARGET_COUNT)}return Promise.resolve(jh)}},zh=class{name=`discoverConnections`;async execute(e){let t=Ph(e),{map:n,costUsd:r,turns:i,tokens:a}=await e.connectionRunner.run({perRepoCatalogs:t,primaryProjectId:e.projectIds[0]??``});return e.connectionMap=n,{costUsd:r??0,turns:i,tokens:a}}};let Bh=e=>e.replaceAll(`&`,`&`).replaceAll(`<`,`<`).replaceAll(`>`,`>`);async function Vh(e,t){if(!(0,m.isDefined)(t)||t.length===0)return[];try{return(await e.get(`/api/v1/regression/e2e-catalogs/for-agent`,{params:{releaseCandidateId:t,includeInactive:`true`}}))?.flows??[]}catch(e){return n.logger.info.defaultLog(`[regression-e2e-catalog] Could not fetch E2E flow library for RC ${t} (proceeding with no prior library): ${String(e)}`),[]}}function Hh(e){let t=e.userOverride===void 0?[]:Object.keys(e.userOverride),n=t.length>0?t.map(e=>Bh(e)).join(`, `):`(none)`,r=e.userOverride?.name??e.name,i=e.userOverride?.description??e.description,a=e.userOverride?.importance??e.importance,o=e.userOverride?.importanceReason??e.importanceReason,s=e.userOverride?.rank??e.rank,c=(0,m.isDefined)(i)?` <description>${Bh(i)}</description>`:``,l=(0,m.isDefined)(o)?` <importanceReason>${Bh(o)}</importanceReason>`:``;return[` <flow>`,` <flowId>${Bh(e.flowId)}</flowId>`,` <name>${Bh(r)}</name>`,c,` <rank>${s}</rank>`,` <importance>${Bh(a)}</importance>`,l,` <origin>${e.origin}</origin>`,` <active>${e.active}</active>`,` <userOwnedFields>${n}</userOwnedFields>`,` </flow>`].filter(Boolean).join(`
|
|
33300
|
+
`)},outputFormat:{type:`json_schema`,schema:o.DEPENDENCY_TRACER_OUTPUT_SCHEMA}}}),d=0;for await(let t of u){if(!c(t))continue;if(l(t))return n.logger.info.defaultLog(`[regression-tracer] ${e.name}: agent error — keeping original calledModules`),{newModules:[],costUsd:0};d=t.total_cost_usd;let r=hh(t.structured_output),i=new Set(e.trace.calledModules);return{newModules:(r?.calledModules??[]).filter(e=>typeof e==`string`&&!i.has(e)),costUsd:d}}return{newModules:[],costUsd:0}}};gh=(0,ph.default)([(0,h.injectable)(),(0,fh.default)(0,(0,h.inject)(n.GlobalConfigService)),(0,fh.default)(1,(0,h.inject)(tn)),(0,dh.default)(`design:paramtypes`,[Object,typeof(mh=tn!==void 0&&tn)==`function`?mh:Object])],gh);let _h=u.z.object({name:u.z.string().optional(),sourcePath:u.z.string(),rootPath:u.z.string().optional()}).passthrough(),vh=_h.extend({dependencies:u.z.array(_h).optional().default([])}),yh=u.z.object({jobId:u.z.string().optional(),command:u.z.string(),anchorBranch:u.z.string(),anchorSha:u.z.string(),compareBranch:u.z.string().optional().default(``),compareSha:u.z.string().optional().default(``),catalogId:u.z.string().optional().default(``),projectId:u.z.string(),projectRootPath:u.z.string().optional().default(``),label:u.z.string().optional().default(``),primary:vh.optional(),projectRootPaths:vh.optional(),agentLog:u.z.boolean().optional().default(!1),catalogIncrementalEmit:u.z.boolean().optional().default(!1),analysisMode:u.z.enum([`perflow`,`grouping`,`divergence`,`regression-first`,`regression-first-2`,`regression-first-3`,`regression-first-2-adj`,`regression-first-single`,`regression-first-mono`,`hunterImpact`]).optional().catch(void 0),impactMappingMaxTurns:u.z.number().int().positive().optional(),fileMappingMode:u.z.enum([`shallow`,`agentic`,`agentic-ast`]).optional().catch(void 0),baselineFromAnalysisId:u.z.string().optional().default(``),crossComponent:u.z.object({changedSide:u.z.enum([`consumer`,`provider`]).optional().default(`provider`),providerRunId:u.z.string().optional(),providerProjectId:u.z.string(),providerSha:u.z.string().optional(),providerRef:u.z.string().optional(),providerRepo:u.z.object({owner:u.z.string(),repo:u.z.string(),rootPath:u.z.string().optional().default(``)}).optional(),consumerRunId:u.z.string().optional(),consumerIsReleasing:u.z.boolean().optional().default(!1)}).optional()}).transform(e=>({...e,primary:e.primary??e.projectRootPaths}));async function bh(e,t,r,i=`regression`){let a=t.getJobId();if(!(0,m.isDefined)(a)||a.length===0)return null;try{n.logger.info.defaultLog(`[${i}] Fetching job input for jobId: ${a}`);let t=await e.get(`/api/v1/regression/jobs/${a}/input`);return r.parse(t)}catch(e){return n.logger.info.defaultLog(`[${i}] Failed to fetch job input for jobId ${a}: ${String(e)}`),null}}async function xh(e,t){let r=await bh(e,t,yh,`regression`);return r!==null&&n.logger.info.defaultLog(`[regression] Job input loaded: command=${r.command}`),r}var Sh=t.__toESM(n.require_decorateMetadata()),Ch=t.__toESM(nn()),wh=t.__toESM(n.require_decorate()),Th,Eh,Dh;let Oh=class{constructor(e,t,n,r){this.runner=e,this.tracer=t,this.apiService=n,this.globalConfigService=r}async run(){let e=await xh(this.apiService,this.globalConfigService);if(e===null){let e=Error(`[regression-catalog] jobInput is required — no global config fallback is allowed`);throw n.logger.error(e.message,e),e}let t=Rm(e);if((e.primary?.sourcePath??e.projectRootPath??``).trim().length===0){let e=Error(`[regression-catalog] no source path — provide primary.sourcePath or projectRootPath in the job input`);throw n.logger.error(e.message,e),e}let r=kh(e,`anchorBranch`),i=t.dependencyRoots.filter(e=>(0,y.existsSync)(e.sourcePath)),a=t.dependencyRoots.length-i.length;a>0&&n.logger.info.defaultLog(`[regression-catalog] Skipped ${a} dependency root(s) missing on disk.`);let o=t;return i.length!==t.dependencyRoots.length&&e.primary&&(o=Rm({...e,primary:{...e.primary,dependencies:i.map(e=>({sourcePath:e.sourcePath,name:e.name}))}})),Ym(``,this.runner,this.tracer,o.cwd,r,this.apiService,this.globalConfigService,e,o)}};Oh=(0,wh.default)([(0,h.injectable)(),(0,Ch.default)(0,(0,h.inject)(sh)),(0,Ch.default)(1,(0,h.inject)(gh)),(0,Ch.default)(2,(0,h.inject)(ln)),(0,Ch.default)(3,(0,h.inject)(n.GlobalConfigService)),(0,Sh.default)(`design:paramtypes`,[typeof(Th=sh!==void 0&&sh)==`function`?Th:Object,typeof(Eh=gh!==void 0&&gh)==`function`?Eh:Object,typeof(Dh=ln!==void 0&&ln)==`function`?Dh:Object,Object])],Oh);function kh(e,t){let r=e[t]?.trim();if(!(0,m.isDefined)(r)||r.length===0){let e=Error(`[regression-catalog] ${t} is missing from job input`);throw n.logger.error(e.message,e),e}return r}let Ah=function(e){return e.Continue=`continue`,e.Halt=`halt`,e}({}),jh={costUsd:0};var Mh=class{constructor(e){this.steps=e}describe(){return this.steps.map(e=>e.name).join(` -> `)}async run(e){n.logger.info.defaultLog(`[regression-e2e-catalog] Pipeline: ${this.describe()}`);let t=!1;for(let[r,i]of this.steps.entries()){let o=`${r+1}/${this.steps.length}`;if(t&&i.isTerminal!==!0){n.logger.info.defaultLog(`[regression-e2e-catalog] Step ${o} "${i.name}" — SKIPPED (pipeline halted)`);continue}n.logger.info.defaultLog(`[regression-e2e-catalog] Step ${o} "${i.name}" — START`);let s=Date.now(),c=await i.execute(e),l=(Date.now()-s)/1e3;e.totalCostUsd=(e.totalCostUsd??0)+c.costUsd,e.stepMetrics.push({stepName:i.name,costUsd:c.costUsd,durationSeconds:l,turns:c.turns??0,...c.maxTurnsHit===!0&&{maxTurnsHit:!0},...c.tokens!==void 0&&{tokens:c.tokens}});let u=c.status===Ah.Halt?` — HALT`:``,d=a.shouldLogDiagnostics?`${c.turns??0} turns / ${l.toFixed(2)}s`:`${l.toFixed(2)}s`;n.logger.info.defaultLog(`[regression-e2e-catalog] Step ${o} "${i.name}" — END (${d})${u}`),c.status===Ah.Halt&&(t=!0)}return e}};function Nh(e,t,n){if(e===void 0)throw Error(`[e2e-catalog-pipeline] ctx.${t} is unset — ${n} must run before this step`);return e}function Ph(e){return Nh(e.perRepoCatalogs,`perRepoCatalogs`,`LoadProjectsStep`)}function Fh(e){return Nh(e.connectionMap,`connectionMap`,`DiscoverConnectionsStep`)}function Ih(e){return Nh(e.traceData,`traceData`,`BuildTraceDataStep`)}var Lh=class{name=`buildTraceData`;execute(e){let t=Fh(e),r=Ph(e),i=Zh(t);return n.logger.info.defaultLog(`[regression-e2e-catalog] Loaded ${r.length} project flow-lib(s); derived ${i.traces.length} connection(s) → trace(s)`),$h(i,r),e.traceData=i,Promise.resolve(jh)}},Rh=class{name=`capPrimary`;execute(e){let t=Ph(e)[0];if((0,m.isDefined)(t)&&t.flows.length>a.REGRESSION_E2E_CATALOG_TARGET_COUNT){let e=[...t.flows].sort((e,t)=>(typeof e.rank==`number`?e.rank:2**53-1)-(typeof t.rank==`number`?t.rank:2**53-1));n.logger.info.defaultLog(`[regression-e2e-catalog] Primary project "${t.repoSlug}": capping ${t.flows.length} → top ${a.REGRESSION_E2E_CATALOG_TARGET_COUNT} flows`),t.flows=e.slice(0,a.REGRESSION_E2E_CATALOG_TARGET_COUNT)}return Promise.resolve(jh)}},zh=class{name=`discoverConnections`;async execute(e){let t=Ph(e),{map:n,costUsd:r,turns:i,tokens:a}=await e.connectionRunner.run({perRepoCatalogs:t,primaryProjectId:e.projectIds[0]??``});return e.connectionMap=n,{costUsd:r??0,turns:i,tokens:a}}};let Bh=e=>e.replaceAll(`&`,`&`).replaceAll(`<`,`<`).replaceAll(`>`,`>`);async function Vh(e,t){if(!(0,m.isDefined)(t)||t.length===0)return[];try{return(await e.get(`/api/v1/regression/e2e-catalogs/for-agent`,{params:{releaseCandidateId:t,includeInactive:`true`}}))?.flows??[]}catch(e){return n.logger.info.defaultLog(`[regression-e2e-catalog] Could not fetch E2E flow library for RC ${t} (proceeding with no prior library): ${String(e)}`),[]}}function Hh(e){let t=e.userOverride===void 0?[]:Object.keys(e.userOverride),n=t.length>0?t.map(e=>Bh(e)).join(`, `):`(none)`,r=e.userOverride?.name??e.name,i=e.userOverride?.description??e.description,a=e.userOverride?.importance??e.importance,o=e.userOverride?.importanceReason??e.importanceReason,s=e.userOverride?.rank??e.rank,c=(0,m.isDefined)(i)?` <description>${Bh(i)}</description>`:``,l=(0,m.isDefined)(o)?` <importanceReason>${Bh(o)}</importanceReason>`:``;return[` <flow>`,` <flowId>${Bh(e.flowId)}</flowId>`,` <name>${Bh(r)}</name>`,c,` <rank>${s}</rank>`,` <importance>${Bh(a)}</importance>`,l,` <origin>${e.origin}</origin>`,` <active>${e.active}</active>`,` <userOwnedFields>${n}</userOwnedFields>`,` </flow>`].filter(Boolean).join(`
|
|
33301
33301
|
`)}function Uh(e){return e.length===0?``:[`<flow-library>`,` <!--`,` Persistent E2E flow library for this release candidate. Values shown are`,` already merged (user overrides shadow LLM proposals).`,``,` Rules:`,` - REUSE the listed flowId when you re-identify the same end-to-end flow`,` (do not invent a new id for an existing flow).`,` - userOwnedFields lists fields the user has locked. Do NOT propose values`,` that conflict — the backend ignores conflicting proposals for those.`,` - RE-EMIT every flow that is still a real journey (reuse its flowId). The`,` library is a persistent catalog, not a per-run top-N. Do NOT drop a flow`,` for being marginal — only drop it if its journey is genuinely gone.`,` - <active>false</active> = retired in a prior run. If its journey is still`,` real, RE-EMIT it (reuse its flowId) to REVIVE it. Inactive is not a`,` reason to skip it.`,` - A flow you don't re-emit gets DEACTIVATED — correct only when the journey`,` is truly gone, never as a side effect of trimming.`,` -->`,e.map(Hh).join(`
|
|
33302
33302
|
`),`</flow-library>`].join(`
|
|
33303
33303
|
`)}var Wh=class{name=`loadProjects`;async execute(e){n.logger.info.defaultLog(`[regression-e2e-catalog] Project IDs (primary first): ${e.projectIds.join(`, `)}`);let{perRepoCatalogs:t,sourceShas:r}=await tg(e.apiService,e.projectIds);e.perRepoCatalogs=t,e.sourceShas=r;let i=await Vh(e.apiService,e.releaseCandidateId);return e.libraryFlows=i,n.logger.info.defaultLog(`[regression-e2e-catalog] Prior E2E library: ${i.length} flow(s)${e.releaseCandidateId===void 0?` (no releaseCandidateId)`:``}`),jh}},Gh=class{name=`post`;isTerminal=!0;async execute(e){let t=e.result,r=e.perRepoCatalogs;if(t===void 0||r===void 0)return n.logger.info.defaultLog(`[regression-e2e-catalog] PostStep — no result/projects on context (pipeline halted before synthesis); skipping backend sync.`),jh;let i=e.releaseCandidateId;return i===void 0||i.length===0?(n.logger.info.defaultLog(`[regression-e2e-catalog] No releaseCandidateId — skipping backend sync (the RC is the catalog's identity). Local report (when enabled) is authoritative.`),jh):(e.e2eCatalogId=await ag({perRepoCatalogIds:r.map(e=>e.catalogId).filter(e=>e.length>0),result:t,costUsd:e.totalCostUsd,durationSeconds:e.durationSeconds,stepMetrics:e.stepMetrics,releaseCandidateId:i,reconciliation:e.reconciliation,connectionMap:e.connectionMap,sourceShas:e.sourceShas},e.apiService),jh)}},Kh=class{name=`report`;isTerminal=!0;execute(e){if(!a.REGRESSION_E2E_CATALOG_SAVE_REPORT_FILES)return n.logger.info.defaultLog(`[regression-e2e-catalog] REGRESSION_E2E_CATALOG_SAVE_REPORT_FILES=false — skipping report file. Set to true in regression-agent.const.ts to inspect output.`),Promise.resolve(jh);let t=e.result,r=e.perRepoCatalogs,i=e.traceData;return t===void 0||r===void 0||i===void 0?(n.logger.info.defaultLog(`[regression-e2e-catalog] ReportStep — incomplete context (pipeline halted before synthesis); skipping report file.`),Promise.resolve(jh)):(ig(e.reportsDir,{e2eName:e.e2eName,e2eDescription:e.e2eDescription,catalogIds:r.map(e=>e.catalogId),perRepoCatalogs:r,traceCount:i.traces.length,result:t,costUsd:e.totalCostUsd,durationSeconds:e.durationSeconds,stepMetrics:e.stepMetrics,reconciliation:e.reconciliation,generatedPrompt:e.generatedPrompt??``}),Promise.resolve(jh))}};function qh(e,t){let n=new Set(e),r=new Set(t);return{kept:t.filter(e=>n.has(e)),added:t.filter(e=>!n.has(e)),gone:e.filter(e=>!r.has(e))}}var Jh=class{name=`runCatalogAgent`;async execute(e){let t=Ph(e),r=Ih(e),{result:i,costUsd:a,durationSeconds:o,turns:s,tokens:c,generatedPrompt:l}=await e.runner.run({e2eName:e.e2eName,e2eDescription:e.e2eDescription,perRepoCatalogs:t,traceData:r,libraryFlows:e.libraryFlows});e.result=i,e.generatedPrompt=l,e.durationSeconds=o;let u=qh((e.libraryFlows??[]).map(e=>e.flowId),i.flows.map(e=>e.flowId));return e.reconciliation=u,n.logger.info.defaultLog(`[regression-e2e-catalog] Reconciliation vs prior library: ${u.kept.length} kept, ${u.added.length} added, ${u.gone.length} gone`),{costUsd:a??0,turns:s,tokens:c}}},Yh=class{name=`writeConnectionMap`;execute(e){let t=Fh(e);return Qh(e.reportsDir,e.e2eName,t),Promise.resolve(jh)}};let Xh={create(){return new Mh([new Wh,new Rh,new zh,new Yh,new Lh,new Jh,new Kh,new Gh])}};function Zh(e){let t=new Map;for(let n of e.connections){let e=t.get(n.fromFlowId);e===void 0?t.set(n.fromFlowId,[n]):e.push(n)}let n=[];for(let[e,r]of t){let[t]=r,i={repo:t.fromRepo,endpoint:`${t.fromFlowName} (${e})`},a=[];for(let e of r){if(e.calls.length===0){a.push({from:i,to:{repo:e.toRepo,endpoint:`${e.toFlowName} (${e.toFlowId})`},kind:`http`});continue}for(let t of e.calls)a.push({from:i,to:{repo:e.toRepo,endpoint:`${t.method} ${t.route}`},kind:`http`})}n.push({id:e,hops:a})}return{traces:n}}function Qh(e,t,r){if(!a.REGRESSION_E2E_CATALOG_SAVE_REPORT_FILES)return;(0,y.mkdirSync)(e,{recursive:!0});let i=new Date().toISOString().replaceAll(/[:.]/g,`-`),o=t.toLowerCase().replaceAll(/[^a-z0-9-]+/g,`-`).slice(0,60),s=I.default.join(e,`${i}-${o}.connections.json`);(0,y.writeFileSync)(s,JSON.stringify(r,null,2),`utf8`),n.logger.info.defaultLog(`[regression-e2e-catalog] Connection map (${r.connections.length} link(s)) saved to: ${s}`)}function $h(e,t){let r=new Set(t.map(e=>e.repoSlug)),i=new Set;for(let t of e.traces)for(let e of t.hops)r.has(e.from.repo)||i.add(e.from.repo),r.has(e.to.repo)||i.add(e.to.repo);i.size>0&&n.logger.info.defaultLog(`[regression-e2e-catalog] WARNING: trace data references ${i.size} repo(s) not in loaded catalogs: ${[...i].join(`, `)} — agent will still proceed`)}async function eg(e,t,r){if(r===void 0)return`<missing>`;try{return(await e.get(`/api/v1/regression/catalogs/${encodeURIComponent(r)}`))?.repository?.repo??`<missing>`}catch(e){return n.logger.info.defaultLog(`[regression-e2e-catalog] WARNING: could not resolve repo slug for project ${t} (catalog ${r}): ${String(e)}`),`<missing>`}}async function tg(e,t){if(t.length===0)throw Error(`loadPerRepoCatalogsByProject: no projectIds provided`);let r=[],i=[];for(let[a,o]of t.entries()){let t=a===0?`primary`:`dependency`;n.logger.info.defaultLog(`[regression-e2e-catalog] Loading flow library for ${t} project: ${o}`);let s=`/api/v1/regression/flow-library/for-agent?projectId=${encodeURIComponent(o)}`,c;try{c=await e.get(s)}catch(e){throw Error(`Failed to fetch flow library for project ${o}: ${String(e)}`)}if(!(0,m.isDefined)(c)||!(0,m.isDefined)(c.project))throw Error(`Flow library not found for project: ${o}`);let l=c.project.latestCatalogId??void 0,u=await eg(e,o,l),d=c.project.anchorSha??void 0;d===void 0?n.logger.info.defaultLog(`[regression-e2e-catalog] WARNING: project ${o} has no anchorSha (no catalog yet?) — omitted from sourceShas`):i.push({projectId:o,sha:d});let f=(c.flows??[]).filter(e=>e.active!==!1);r.push({catalogId:l??``,repoSlug:u,anchorBranch:c.project.anchorBranch??`<missing>`,projectType:c.project.projectType??`<missing>`,projectSummary:c.project.projectSummary??``,flows:f})}return n.logger.info.defaultLog(`[regression-e2e-catalog] Loaded ${r.length} project flow-lib(s); primary repo: ${r[0]?.repoSlug}`),r.filter(e=>e.catalogId.length>0).length===0&&n.logger.info.defaultLog(`[regression-e2e-catalog] WARNING: none of the ${t.length} project(s) has a catalog yet — the E2E build will NOT be persisted to the backend (no real perRepoCatalogIds). Run a per-repo catalog for these projects first.`),{perRepoCatalogs:r,sourceShas:i}}function ng(e,t){let{name:n,importance:r,description:i,importanceReason:a,scoring:o,productFlow:s,composedOf:c}=e,l=o===void 0?[]:[``,`**Scoring:**`,`- Risk Score: ${o.riskScore} — ${o.riskReason}`,`- Blast Radius: ${o.blastRadius} — ${o.blastReason}`,`- Final Score: ${o.finalScore}`],u=s===void 0?[]:[``,`**Product Flow:**`,`- **Trigger:** ${s.trigger}`,...s.steps.map((e,t)=>`- ${t+1}. **${e.actor}** → ${e.action} → _${e.outcome}_`),`- **Outcome:** ${s.outcome}`],d=c.length===0?[``,`**Composed of:** _(none declared — composition data missing)_`]:[``,`**Composed of per-repo flows (in order):**`,...c.map((e,t)=>`- ${t+1}. \`${e.repoSlug}\` — \`${e.perRepoFlowId}\` _(${e.perRepoFlowName})_ — catalog \`${e.catalogId}\``)];return[`### ${t+1}. ${n} (${r})`,`**Why important:** ${a}`,`**Description:** ${i}`,...u,...d,...l].join(`
|
|
@@ -33604,7 +33604,7 @@ ${n.map(e=>Ig(`dependency`,e)).join(`
|
|
|
33604
33604
|
`)}}}),f,p,m,h;for await(let e of d)if(s(e)){if(c(e))throw new cf(e.subtype,e.errors,e.total_cost_usd);f=e.total_cost_usd,typeof e.num_turns==`number`&&(p=e.num_turns),m=o.extractCacheTokens(e),h=e.structured_output;break}let g=Wg(Array.isArray(h?.connections)?h.connections:[],t,e.perRepoCatalogs);return{map:{primaryRepoSlug:t.repoSlug,primaryProjectId:e.primaryProjectId,connections:g},costUsd:f,turns:p,tokens:m===void 0?void 0:{inputTokens:m.inputTokens,outputTokens:m.outputTokens,cacheReadTokens:m.cacheReadTokens,cacheCreationTokens:m.cacheCreationTokens},generatedPrompt:u}}};Gg=(0,Bg.default)([(0,h.injectable)(),(0,zg.default)(0,(0,h.inject)(n.GlobalConfigService)),(0,zg.default)(1,(0,h.inject)(tn)),(0,Rg.default)(`design:paramtypes`,[Object,typeof(Vg=tn!==void 0&&tn)==`function`?Vg:Object])],Gg);var Kg=t.__toESM(n.require_decorateMetadata()),qg=t.__toESM(nn()),Jg=t.__toESM(n.require_decorate()),Yg,Xg,Zg,Qg;let $g=class{constructor(e,t,n,r,i){this.runner=e,this.connectionRunner=t,this.jobInputProvider=n,this.apiService=r,this.globalConfigService=i}async run(){let e=await mg(this.apiService,this.globalConfigService)??await this.jobInputProvider.getE2eCatalogJobInput(),t=fg(e);if(t.length===0){let e=Error(`[regression-e2e-catalog] no projectIds in the job input — cannot build E2E catalog`);throw n.logger.error(e.message,e),e}return n.logger.info.defaultLog(`[regression-e2e-catalog] Manager: building "${e.e2eName}" — ${t.length} project(s), RC ${e.releaseCandidateId??`(none)`}`),og(`regression-e2e-catalog-reports`,this.runner,this.connectionRunner,{e2eName:e.e2eName,e2eDescription:e.e2eDescription,projectIds:t,releaseCandidateId:e.releaseCandidateId},this.apiService)}};$g=(0,Jg.default)([(0,h.injectable)(),(0,qg.default)(0,(0,h.inject)(Ag)),(0,qg.default)(1,(0,h.inject)(Gg)),(0,qg.default)(2,(0,h.inject)(pg)),(0,qg.default)(3,(0,h.inject)(ln)),(0,qg.default)(4,(0,h.inject)(n.GlobalConfigService)),(0,Kg.default)(`design:paramtypes`,[typeof(Yg=Ag!==void 0&&Ag)==`function`?Yg:Object,typeof(Xg=Gg!==void 0&&Gg)==`function`?Xg:Object,typeof(Zg=pg!==void 0&&pg)==`function`?Zg:Object,typeof(Qg=ln!==void 0&&ln)==`function`?Qg:Object,Object])],$g);function e_(e){if(typeof e!=`object`||!e)return;let t=e;if(Array.isArray(t.sourceFiles))return{sourceFiles:t.sourceFiles.filter(e=>typeof e==`string`)}}let t_=new Set([`svg`,`woff`,`woff2`,`ttf`,`eot`,`otf`,`ico`,`png`,`jpg`,`jpeg`,`gif`,`webp`]);function n_(e){let t=e.slice(e.lastIndexOf(`/`)+1),n=t.lastIndexOf(`.`);return n>0?t.slice(n+1).toLowerCase():``}function r_(e){if(e.length===0)return`0`;let t=new Map;for(let n of e){let e=n.slice(n.lastIndexOf(`/`)+1),r=e.lastIndexOf(`.`),i=r>0?e.slice(r+1).toLowerCase():`(none)`;t.set(i,(t.get(i)??0)+1)}return[...t.entries()].sort((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0])).map(([e,t])=>`${t} ${e}`).join(`, `)}async function i_(e,t,r,i){let{query:s,isResultMessage:l,isErrorResult:u,getMessageContentBlocks:d}=await Promise.resolve().then(()=>lz()),f=`haiku-prefilter`,p=`Changed files:\n${e.map((e,t)=>`${t+1}. ${e}`).join(`
|
|
33605
33605
|
`)}`;n.logger.info.defaultLog(`[regression-impact] Pre-filter: classifying ${e.length} files (source vs non-source)`);let m=s({prompt:p,options:{model:a.REGRESSION_IMPACT_HAIKU_MODEL,systemPrompt:c.PRE_FILTER_SYSTEM_PROMPT,tools:[],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:1,maxTurns:10,cwd:i,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.PRE_FILTER_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:r,ANTHROPIC_AUTH_TOKEN:t??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
33606
33606
|
`)}}});o.logAgentCwd(f,i);let h=0;for await(let t of m){if(!l(t)){let e=d(t);e!==void 0&&e.length>0&&(h++,o.logAgentActivity(f,h,e));continue}if(u(t))return n.logger.info.defaultLog(`[regression-impact] Pre-filter error: ${t.subtype}`),{sourceFiles:e,costUsd:0,turns:0,maxTurnsHit:!1};let r=t.total_cost_usd,i=t.num_turns,a=i>=10;o.logCacheTokensFromMessage(`pre-filter`,t);let s=e_(t.structured_output);if(s===void 0)return{sourceFiles:e,costUsd:r,turns:i,maxTurnsHit:a};let c=s.sourceFiles.filter(t=>e.includes(t)&&!t_.has(n_(t))),p=e.filter(e=>!c.includes(e));return n.logger.info.defaultLog(`[regression-impact] Pre-filter: ${e.length} → ${c.length} source files (${p.length} non-source filtered out)`),n.logger.info.defaultLog(`[regression-impact] Pre-filter by extension — pass: ${r_(c)} | filtered out: ${r_(p)}`),p.length>0?n.logger.info.defaultLog(`[regression-impact] Pre-filter dropped (non-source): ${p.join(`, `)}`):n.logger.info.defaultLog(`[regression-impact] Pre-filter kept all as source: ${c.join(`, `)}`),{sourceFiles:c,costUsd:r,turns:i,maxTurnsHit:a}}return{sourceFiles:e,costUsd:0,turns:0,maxTurnsHit:!1}}let a_=[`NONE`,`LOW`,`MEDIUM`,`HIGH`,`CRITICAL`];function o_(e){return e.length===0?`NONE`:e.reduce((e,t)=>a_.indexOf(t.severity)>a_.indexOf(e)?t.severity:e,`NONE`)}function s_(e){if(typeof e!=`object`||!e)return;let t=e;if(!(!Array.isArray(t.techChanges)||!Array.isArray(t.productChanges)))return{techChanges:t.techChanges,productChanges:t.productChanges,affectedSteps:Array.isArray(t.affectedSteps)?t.affectedSteps:[]}}async function c_(e,t,r,i,s,l,u,d=!1,f=[],p,m){let{query:h,getMessageContentBlocks:g,isResultMessage:_,isErrorResult:y}=await Promise.resolve().then(()=>lz()),b=`sonnet-deep (${e.name})`;o.logAgentCwd(b,r);let x=a.getDiffForFiles(t,r,i,s,d),S=m!==void 0&&m.size>0,C=h({prompt:c.buildSonnetDeepPrompt(e,t,x,i,s,f,p,m),options:{model:a.REGRESSION_IMPACT_DEEP_MODEL,systemPrompt:c.buildSonnetDeepSystemPrompt(S),allowedTools:[`Read`,`Grep`,`Glob`,`Bash`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_IMPACT_DEEP_MAX_BUDGET_USD,maxTurns:a.REGRESSION_IMPACT_DEEP_MAX_TURNS,cwd:r,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.SONNET_DEEP_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:u,ANTHROPIC_AUTH_TOKEN:l??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
33607
|
-
`)}}}),w=0,T=0;for await(let t of C){if(!_(t)){let e=g(t);e!==void 0&&e.length>0&&(T++,o.logAgentActivity(b,T,e));continue}if(y(t))return n.logger.info.defaultLog(`[regression-impact] Sonnet deep analysis error: ${t.subtype}`),null;w=t.total_cost_usd;let r=t.num_turns,i=r>=a.REGRESSION_IMPACT_DEEP_MAX_TURNS;o.logCacheTokensFromMessage(`per-flow deep (${e.name})`,t);let s=s_(t.structured_output);if(s===void 0)return n.logger.info.defaultLog(`[regression-impact] Sonnet deep: missing or invalid structured_output (flow: ${e.name})`),null;let c=s.techChanges.map(e=>({file:e.file,confidence:e.confidence,techBefore:e.techBefore,techAfter:e.techAfter})),l=s.productChanges.map(e=>({...e.title===void 0?{}:{title:e.title},productBefore:e.productBefore,productAfter:e.productAfter,confidence:e.confidence,severity:e.severity,...e.severityReason===void 0?{}:{severityReason:e.severityReason},...e.importance===void 0?{}:{importance:e.importance},...e.importanceReason===void 0?{}:{importanceReason:e.importanceReason},...e.priority===void 0?{}:{priority:e.priority},...e.verdict===void 0?{}:{verdictScore:e.verdict.score,...e.verdict.reason===void 0?{}:{verdictReason:e.verdict.reason}}}));return{severity:o_(l),techChanges:c,productChanges:l,affectedSteps:s.affectedSteps??[],costUsd:w,turns:r,maxTurnsHit:i}}return null}let l_=function(e){return e.Continue=`continue`,e.Halt=`halt`,e}({}),u_={costUsd:0,turns:0,maxTurnsHit:!1};function d_(e,t,n,r,i,a,o,s=!1,c,l,u){return{stepName:e,costUsd:t,durationSeconds:(Date.now()-n)/1e3,turns:r,maxTurnsHit:i,...s&&{maxBudgetHit:!0},...a!==void 0&&{tokens:a},...o!==void 0&&o.length>0&&{batches:o},...c!==void 0&&{totalFiles:c},...l!==void 0&&{mappedFiles:l},...u!==void 0&&{mappingBreakdown:u}}}var f_=class{constructor(e){this.steps=e}describe(){return this.steps.map(e=>e.name).join(` -> `)}async run(e){n.logger.info.defaultLog(`[cross-component] Pipeline: ${this.describe()}`);let t=!1;for(let[r,i]of this.steps.entries()){let o=`${r+1}/${this.steps.length}`;if(t&&i.isTerminal!==!0){n.logger.info.defaultLog(`[cross-component] Step ${o} "${i.name}" — SKIPPED (pipeline halted)`);continue}n.logger.info.defaultLog(`[cross-component] Step ${o} "${i.name}" — START`);let s=Date.now(),c=await i.execute(e),l=(Date.now()-s)/1e3;e.stepMetrics.push(d_(i.name,c.costUsd,s,c.turns,c.maxTurnsHit,c.tokens,c.batches,c.maxBudgetHit??!1,c.totalFiles,c.mappedFiles,c.mappingBreakdown));let u=c.status===l_.Halt?` — HALT`:``,d=c.maxTurnsHit?` / maxTurnsHit`:``,f=a.shouldLogDiagnostics?`$${c.costUsd.toFixed(4)} / ${c.turns} turns / ${l.toFixed(2)}s${d}`:`${l.toFixed(2)}s`;n.logger.info.defaultLog(`[cross-component] Step ${o} "${i.name}" — END (${f})${u}`),c.status===l_.Halt&&(t=!0)}return e}};function p_(e,t,n){if(e===void 0)throw Error(`[cross-component] ctx.${t} is unset — ${n} must run before this step`);return e}function m_(e){return p_(e.providerChanges,`providerChanges`,`LoadProviderChangesStep`)}function h_(e){return p_(e.consumerChanges,`consumerChanges`,`LoadConsumerChangesStep`)}function g_(e){return p_(e.findings,`findings`,`CrossContractHuntStep`)}function __(e){return p_(e.result,`result`,`CrossComponentReportStep`)}async function v_(e,t,r){try{if(e.consumerProjectId.length===0)return n.logger.info.defaultLog(`[cross-component] No consumerProjectId — cannot post run`),null;let i=e.findings.map(e=>({severity:e.severity,verdictScore:e.verdictScore,...(0,m.isDefined)(e.verdictReason)?{verdictReason:e.verdictReason}:{},title:e.title,consumerBefore:e.consumerBefore,consumerAfter:e.consumerAfter,...(0,m.isDefined)(e.consumerFile)?{consumerFile:e.consumerFile}:{},...(0,m.isDefined)(e.consumerExcerpt)?{consumerExcerpt:e.consumerExcerpt}:{},...(0,m.isDefined)(e.providerContract)?{providerContract:e.providerContract}:{},...(0,m.isDefined)(e.providerProductChangeId)?{providerProductChangeId:e.providerProductChangeId}:{},...(0,m.isDefined)(e.affectedFlow)?{affectedFlow:e.affectedFlow}:{},...(0,m.isDefined)(e.howToVerify)?{howToVerify:e.howToVerify}:{},...(0,m.isDefined)(e.technicalRootCause)?{technicalRootCause:e.technicalRootCause}:{}})),a={changedSide:e.changedSide,consumerProjectId:e.consumerProjectId,providerProjectId:e.providerProjectId,...(0,m.isDefined)(e.providerRunId)?{providerRunId:e.providerRunId}:{},...(0,m.isDefined)(e.providerSha)?{providerSha:e.providerSha}:{},...(0,m.isDefined)(e.providerRef)?{providerRef:e.providerRef}:{},...(0,m.isDefined)(e.consumerRunId)?{consumerRunId:e.consumerRunId}:{},consumerSha:e.consumerSha,consumerIsReleasing:e.consumerIsReleasing,findings:i,costUsd:e.costUsd,agentVersion:Nm,...(0,m.isDefined)(e.turns)?{turns:e.turns}:{},...(0,m.isDefined)(e.maxTurnsHit)?{maxTurnsHit:e.maxTurnsHit}:{},...(0,m.isDefined)(e.durationSeconds)?{durationSeconds:e.durationSeconds}:{},jobId:r.getJobId()},o=await t.post(`/api/v1/regression/cross-component-runs`,a);return n.logger.info.defaultLog(`[cross-component] Run posted to backend. runId: ${o.runId}`),o}catch(e){return n.logger.info.defaultLog(`[cross-component] Failed to post run to backend: ${String(e)}`),null}}var y_=class{name=`crossComponentPost`;isTerminal=!0;async execute(e){let t=await v_(__(e),e.apiService,e.globalConfigService);if(t===null)throw Error(`[cross-component] Failed to persist the cross-component run to the backend — see the preceding log for the underlying error.`);return e.runId=t.runId,u_}},b_=class{name=`crossComponentReport`;isTerminal=!0;async execute(e){let t=g_(e),r=e.jobInput.crossComponent;if(r===void 0)throw Error(`[cross-component] CrossComponentReportStep requires jobInput.crossComponent`);let i=t.filter(e=>e.verdictScore>=a.CROSS_COMPONENT_REGRESSION_SCORE_THRESHOLD).length,s={findings:t,findingCount:t.length,breakingCount:i,costUsd:e.huntCostUsd??0,turns:e.huntTurns,maxTurnsHit:e.huntMaxTurnsHit,durationSeconds:(Date.now()-e.startTime)/1e3,tokens:e.huntTokens??o.ZERO_TOKENS,changedSide:r.changedSide??`provider`,providerRunId:r.providerRunId,providerSha:r.providerSha,providerRef:r.providerRef,consumerRunId:r.consumerRunId,providerProjectId:r.providerProjectId,consumerProjectId:e.jobInput.projectId,consumerSha:e.jobInput.compareSha,consumerIsReleasing:r.consumerIsReleasing??!1,createdAt:new Date().toISOString()};return n.logger.info.defaultLog(`[cross-component] Done. ${s.findingCount} finding(s), ${s.breakingCount} breaking (score >= ${a.CROSS_COMPONENT_REGRESSION_SCORE_THRESHOLD}), ${((Date.now()-e.startTime)/1e3).toFixed(2)}s`),a.REGRESSION_SAVE_REPORT_FILES&&x_(e.reportsDir,s),e.result=s,u_}};function x_(e,t){(0,y.mkdirSync)(e,{recursive:!0});let r=t.createdAt.replaceAll(/[:.]/g,`-`),i=(t.providerRunId??t.consumerRunId??`unknown`).slice(0,8),a=I.default.join(e,`${r}-cross-component-${i}.json`);(0,y.writeFileSync)(a,JSON.stringify(t,null,2),`utf8`),n.logger.info.defaultLog(`[cross-component] Result written to: ${a}`)}let S_={type:`object`,additionalProperties:!1,required:[`findings`],properties:{findings:{type:`array`,items:{type:`object`}}}},C_=e=>e.replaceAll(`&`,`&`).replaceAll(`<`,`<`).replaceAll(`>`,`>`),w_=`## Severity (cross-component, product-level)
|
|
33607
|
+
`)}}}),w=0,T=0;for await(let t of C){if(!_(t)){let e=g(t);e!==void 0&&e.length>0&&(T++,o.logAgentActivity(b,T,e));continue}if(y(t))return n.logger.info.defaultLog(`[regression-impact] Sonnet deep analysis error: ${t.subtype}`),null;w=t.total_cost_usd;let r=t.num_turns,i=r>=a.REGRESSION_IMPACT_DEEP_MAX_TURNS;o.logCacheTokensFromMessage(`per-flow deep (${e.name})`,t);let s=s_(t.structured_output);if(s===void 0)return n.logger.info.defaultLog(`[regression-impact] Sonnet deep: missing or invalid structured_output (flow: ${e.name})`),null;let c=s.techChanges.map(e=>({file:e.file,confidence:e.confidence,techBefore:e.techBefore,techAfter:e.techAfter})),l=s.productChanges.map(e=>({...e.title===void 0?{}:{title:e.title},productBefore:e.productBefore,productAfter:e.productAfter,confidence:e.confidence,severity:e.severity,...e.severityReason===void 0?{}:{severityReason:e.severityReason},...e.importance===void 0?{}:{importance:e.importance},...e.importanceReason===void 0?{}:{importanceReason:e.importanceReason},...e.priority===void 0?{}:{priority:e.priority},...e.verdict===void 0?{}:{verdictScore:e.verdict.score,...e.verdict.reason===void 0?{}:{verdictReason:e.verdict.reason}}}));return{severity:o_(l),techChanges:c,productChanges:l,affectedSteps:s.affectedSteps??[],costUsd:w,turns:r,maxTurnsHit:i}}return null}let l_=function(e){return e.Continue=`continue`,e.Halt=`halt`,e}({}),u_={costUsd:0,turns:0,maxTurnsHit:!1};function d_(e,t,n,r,i,a,o,s=!1,c,l,u){return{stepName:e,costUsd:t,durationSeconds:(Date.now()-n)/1e3,turns:r,maxTurnsHit:i,...s&&{maxBudgetHit:!0},...a!==void 0&&{tokens:a},...o!==void 0&&o.length>0&&{batches:o},...c!==void 0&&{totalFiles:c},...l!==void 0&&{mappedFiles:l},...u!==void 0&&{mappingBreakdown:u}}}var f_=class{constructor(e){this.steps=e}describe(){return this.steps.map(e=>e.name).join(` -> `)}async run(e){n.logger.info.defaultLog(`[cross-component] Pipeline: ${this.describe()}`);let t=!1;for(let[r,i]of this.steps.entries()){let o=`${r+1}/${this.steps.length}`;if(t&&i.isTerminal!==!0){n.logger.info.defaultLog(`[cross-component] Step ${o} "${i.name}" — SKIPPED (pipeline halted)`);continue}n.logger.info.defaultLog(`[cross-component] Step ${o} "${i.name}" — START`);let s=Date.now(),c=await i.execute(e),l=(Date.now()-s)/1e3;e.stepMetrics.push(d_(i.name,c.costUsd,s,c.turns,c.maxTurnsHit,c.tokens,c.batches,c.maxBudgetHit??!1,c.totalFiles,c.mappedFiles,c.mappingBreakdown));let u=c.status===l_.Halt?` — HALT`:``,d=c.maxTurnsHit?` / maxTurnsHit`:``,f=a.shouldLogDiagnostics?`$${c.costUsd.toFixed(4)} / ${c.turns} turns / ${l.toFixed(2)}s${d}`:`${l.toFixed(2)}s`;n.logger.info.defaultLog(`[cross-component] Step ${o} "${i.name}" — END (${f})${u}`),c.status===l_.Halt&&(t=!0)}return e}};function p_(e,t,n){if(e===void 0)throw Error(`[cross-component] ctx.${t} is unset — ${n} must run before this step`);return e}function m_(e){return p_(e.providerChanges,`providerChanges`,`LoadProviderChangesStep`)}function h_(e){return p_(e.consumerChanges,`consumerChanges`,`LoadConsumerChangesStep`)}function g_(e){return p_(e.findings,`findings`,`CrossContractHuntStep`)}function __(e){return p_(e.result,`result`,`CrossComponentReportStep`)}async function v_(e,t,r){try{if(e.consumerProjectId.length===0)return n.logger.info.defaultLog(`[cross-component] No consumerProjectId — cannot post run`),null;let i=e.findings.map(e=>({severity:e.severity,verdictScore:e.verdictScore,...(0,m.isDefined)(e.verdictReason)?{verdictReason:e.verdictReason}:{},title:e.title,consumerBefore:e.consumerBefore,consumerAfter:e.consumerAfter,...(0,m.isDefined)(e.consumerFile)?{consumerFile:e.consumerFile}:{},...(0,m.isDefined)(e.consumerExcerpt)?{consumerExcerpt:e.consumerExcerpt}:{},...(0,m.isDefined)(e.providerContract)?{providerContract:e.providerContract}:{},...(0,m.isDefined)(e.providerProductChangeId)?{providerProductChangeId:e.providerProductChangeId}:{},...(0,m.isDefined)(e.affectedFlow)?{affectedFlow:e.affectedFlow}:{},...(0,m.isDefined)(e.howToVerify)?{howToVerify:e.howToVerify}:{},...(0,m.isDefined)(e.technicalRootCause)?{technicalRootCause:e.technicalRootCause}:{}})),a={changedSide:e.changedSide,consumerProjectId:e.consumerProjectId,providerProjectId:e.providerProjectId,...(0,m.isDefined)(e.providerRunId)?{providerRunId:e.providerRunId}:{},...(0,m.isDefined)(e.providerSha)?{providerSha:e.providerSha}:{},...(0,m.isDefined)(e.providerRef)?{providerRef:e.providerRef}:{},...(0,m.isDefined)(e.consumerRunId)?{consumerRunId:e.consumerRunId}:{},consumerSha:e.consumerSha,consumerIsReleasing:e.consumerIsReleasing,findings:i,costUsd:e.costUsd,agentVersion:Nm,...(0,m.isDefined)(e.turns)?{turns:e.turns}:{},...(0,m.isDefined)(e.maxTurnsHit)?{maxTurnsHit:e.maxTurnsHit}:{},...(0,m.isDefined)(e.durationSeconds)?{durationSeconds:e.durationSeconds}:{},jobId:r.getJobId()},o=await t.post(`/api/v1/regression/cross-component-runs`,a);return n.logger.info.defaultLog(`[cross-component] Run posted to backend. runId: ${o.runId}`),o}catch(e){return n.logger.info.defaultLog(`[cross-component] Failed to post run to backend: ${String(e)}`),null}}var y_=class{name=`crossComponentPost`;isTerminal=!0;async execute(e){let t=await v_(__(e),e.apiService,e.globalConfigService);if(t===null)throw Error(`[cross-component] Failed to persist the cross-component run to the backend — see the preceding log for the underlying error.`);return e.runId=t.runId,u_}},b_=class{name=`crossComponentReport`;isTerminal=!0;async execute(e){let t=g_(e),r=e.jobInput.crossComponent;if(r===void 0)throw Error(`[cross-component] CrossComponentReportStep requires jobInput.crossComponent`);let i=t.filter(e=>e.verdictScore>=a.CROSS_COMPONENT_REGRESSION_SCORE_THRESHOLD).length,s={findings:t,findingCount:t.length,breakingCount:i,costUsd:e.huntCostUsd??0,turns:e.huntTurns,maxTurnsHit:e.huntMaxTurnsHit,durationSeconds:(Date.now()-e.startTime)/1e3,tokens:e.huntTokens??o.ZERO_TOKENS,changedSide:r.changedSide??`provider`,providerRunId:r.providerRunId,providerSha:r.providerSha,providerRef:r.providerRef,consumerRunId:r.consumerRunId,providerProjectId:r.providerProjectId,consumerProjectId:e.jobInput.projectId,consumerSha:e.jobInput.compareSha,consumerIsReleasing:r.consumerIsReleasing??!1,createdAt:new Date().toISOString()};return n.logger.info.defaultLog(`[cross-component] Done. ${s.findingCount} finding(s), ${s.breakingCount} breaking (score >= ${a.CROSS_COMPONENT_REGRESSION_SCORE_THRESHOLD}), ${((Date.now()-e.startTime)/1e3).toFixed(2)}s`),a.REGRESSION_SAVE_REPORT_FILES&&x_(e.reportsDir,s),e.result=s,u_}};function x_(e,t){(0,y.mkdirSync)(e,{recursive:!0});let r=t.createdAt.replaceAll(/[:.]/g,`-`),i=(t.providerRunId??t.consumerRunId??`unknown`).slice(0,8),a=I.default.join(e,`${r}-cross-component-${i}.json`);(0,y.writeFileSync)(a,JSON.stringify(t,null,2),`utf8`),n.logger.info.defaultLog(`[cross-component] Result written to: ${a}`)}let S_={type:`object`,additionalProperties:!1,required:[`findings`],properties:{findings:{type:`array`,items:{type:`object`,required:[`title`,`severity`,`consumerBefore`,`consumerAfter`,`affectedFlow`,`howToVerify`,`technicalRootCause`,`verdict`],properties:{title:{type:`string`},severity:{type:`string`},consumerBefore:{type:`string`},consumerAfter:{type:`string`},affectedFlow:{type:`string`},howToVerify:{type:`string`},technicalRootCause:{type:`string`},verdict:{type:`object`,required:[`score`],properties:{score:{type:`number`},reason:{type:`string`}}}}}}}},C_=e=>e.replaceAll(`&`,`&`).replaceAll(`<`,`<`).replaceAll(`>`,`>`),w_=`## Severity (cross-component, product-level)
|
|
33608
33608
|
|
|
33609
33609
|
- CRITICAL: the consumer is broken for users (page crashes / blank, auth fails, a core action cannot complete, data not shown).
|
|
33610
33610
|
- HIGH: a major part of the consumer degrades, or a breaking-shape change the consumer very likely depends on.
|
|
@@ -33627,6 +33627,8 @@ Emit findings[]. **Consolidate by root cause**: if a single underlying change (o
|
|
|
33627
33627
|
|
|
33628
33628
|
Every finding is read by TWO people. Keep each field in its reader's voice; if a sentence would only land with the other reader, it is in the wrong field.
|
|
33629
33629
|
|
|
33630
|
+
**Every field below is REQUIRED on every finding you emit** — never omit affectedFlow, howToVerify, or technicalRootCause. howToVerify is what QA acts on; a finding without it is unusable to them.
|
|
33631
|
+
|
|
33630
33632
|
**QA reader** — a QA engineer who verifies this in the running product and reports it. They do not read code. Write the way they think: about what they see and do in the product, not how it is built. **Every word counts** — no filler, no preamble, no restating the title, no self-narration. If a phrase does not help someone reproduce or recognise the problem in the product, cut it.
|
|
33631
33633
|
- title: the business outcome in the user's words (e.g. "Internal staff leak into customer team views") — the effect, not the mechanism.
|
|
33632
33634
|
- affectedFlow: the product flow(s)/capability that breaks, in product terms (e.g. "Team management — member list, invites, and internal-staff filtering"). One line; name the flow.
|
|
@@ -33710,7 +33712,7 @@ The consumer changed the following (scored against the consumer ALONE — NONE-s
|
|
|
33710
33712
|
${a}
|
|
33711
33713
|
</consumerChanges>
|
|
33712
33714
|
|
|
33713
|
-
For each change above, find whether the consumer's changed call to the provider still works against the provider's actual contract. Emit the structured findings[]. Do not emit findings for consumer changes that still match the provider's real contract.`}let j_=[`NONE`,`LOW`,`MEDIUM`,`HIGH`,`CRITICAL`];function M_(e){let t=String(e??``).toUpperCase();return j_.includes(t)?t:`NONE`}function N_(e){let t=typeof e==`number`&&Number.isFinite(e)?e:0;return Math.max(0,Math.min(10,Math.round(t)))}function P_(e){return typeof e==`string`&&e.length>0?e:void 0}function F_(e){let t=Array.isArray(e?.findings)?e.findings:[],r=0,i=t.map(e=>(typeof e.verdict?.score==`number`&&Number.isFinite(e.verdict.score)||r++,{title:typeof e.title==`string`?e.title:`(untitled)`,severity:M_(e.severity),verdictScore:N_(e.verdict?.score),verdictReason:P_(e.verdict?.reason),consumerBefore:typeof e.consumerBefore==`string`?e.consumerBefore:``,consumerAfter:typeof e.consumerAfter==`string`?e.consumerAfter:``,consumerFile:P_(e.consumerFile),consumerExcerpt:P_(e.consumerExcerpt),providerContract:P_(e.providerContract),providerProductChangeId:P_(e.providerProductChangeId),affectedFlow:P_(e.affectedFlow),howToVerify:P_(e.howToVerify),technicalRootCause:P_(e.technicalRootCause)}));return r>0&&n.logger.info.defaultLog(`[cross-component] ${r} of ${i.length} finding(s) had a missing/malformed verdict score — defaulted to 0 (non-breaking). Model output may be degraded.`),i}async function I_(e){let{query:t,getMessageContentBlocks:r,isResultMessage:i,isErrorResult:s}=await Promise.resolve().then(()=>lz()),c=e.changedSide===`consumer`?O_():T_(),l=t({prompt:e.changedSide===`consumer`?A_({rootPath:e.rootPath,providerRootPath:e.providerRootPath,providerProjectId:e.providerProjectId,consumerChanges:e.consumerChanges}):D_({rootPath:e.rootPath,providerProjectId:e.providerProjectId,providerRunId:e.providerRunId,providerChanges:e.providerChanges}),options:{model:a.CROSS_COMPONENT_MODEL,systemPrompt:c,allowedTools:[`Read`,`Grep`,`Glob`,`Bash`],permissionMode:`bypassPermissions`,allowDangerouslySkipPermissions:!0,maxBudgetUsd:e.maxBudgetUsd,maxTurns:e.maxTurns,cwd:e.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:S_},env:{...process.env,ANTHROPIC_BASE_URL:e.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:e.jwtToken??``}}}),u=0;for await(let t of l){if(!i(t)){let e=r(t);e!==void 0&&e.length>0&&(u++,o.logAgentActivity(`cross-component-hunter`,u,e));continue}if(s(t))throw Error(`[cross-component] Hunter error: ${t.subtype}`);let a=t.structured_output;if(a===void 0){let r=(t.result??``).slice(0,300);return n.logger.info.defaultLog(`[cross-component] Hunter returned no structured_output — treating as zero findings. stop_reason=${String(t.stop_reason)} result="${r}"`),{findings:[],costUsd:t.total_cost_usd,turns:t.num_turns,maxTurnsHit:t.num_turns>=e.maxTurns,tokens:o.ZERO_TOKENS,degraded:!0}}let c=F_(a);return n.logger.info.defaultLog(`[cross-component] Hunter completed: costUsd=${t.total_cost_usd} turns=${t.num_turns} findings=${c.length}`),{findings:c,costUsd:t.total_cost_usd,turns:t.num_turns,maxTurnsHit:t.num_turns>=e.maxTurns,tokens:o.extractCacheTokens(t),degraded:!1}}throw Error(`[cross-component] Hunter stream ended without a result message`)}var L_=class{name=`crossContractHunt`;async execute(e){let t=e.jobInput.crossComponent;if(t===void 0)throw Error(`[cross-component] CrossContractHuntStep requires jobInput.crossComponent`);let r=t.changedSide??`provider`,{changeCount:i,dispatchArgs:a}=this.buildDispatch(e,t,r);if(i===0)return n.logger.info.defaultLog(`[cross-component] No ${r}-side contract changes to check — skipping hunter (halt)`),e.findings=[],e.huntCostUsd=0,e.huntTokens=o.ZERO_TOKENS,e.huntTurns=0,e.huntMaxTurnsHit=!1,{costUsd:0,turns:0,maxTurnsHit:!1,tokens:o.ZERO_TOKENS,status:l_.Halt};let s=await I_(a);return e.findings=s.findings,e.huntCostUsd=s.costUsd,e.huntTokens=s.tokens,e.huntTurns=s.turns,e.huntMaxTurnsHit=s.maxTurnsHit,{costUsd:s.costUsd,turns:s.turns,maxTurnsHit:s.maxTurnsHit,tokens:s.tokens}}buildDispatch(e,t,n){let r={rootPath:e.rootPath,providerProjectId:t.providerProjectId,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl};if(n===`consumer`){let t=h_(e);if(e.providerRootPath===void 0)throw Error(`[cross-component] consumer-direction hunt requires context.providerRootPath`);return{changeCount:t.length,dispatchArgs:{...r,changedSide:`consumer`,providerRootPath:e.providerRootPath,consumerChanges:t,maxTurns:a.CROSS_COMPONENT_CONSUMER_MAX_TURNS,maxBudgetUsd:a.CROSS_COMPONENT_CONSUMER_MAX_BUDGET_USD}}}let i=m_(e),o=t.providerRunId??``;if(o.length===0)throw Error(`[cross-component] provider-direction hunt requires a non-empty providerRunId`);return{changeCount:i.length,dispatchArgs:{...r,changedSide:`provider`,providerRunId:o,providerChanges:i,maxTurns:a.CROSS_COMPONENT_MAX_TURNS,maxBudgetUsd:a.CROSS_COMPONENT_MAX_BUDGET_USD}}}};let R_=e=>typeof e==`string`&&e.length>0?e:void 0;function z_(e,t){let n=String(e.severity??`NONE`).toUpperCase();if(n!==`NONE`)return{productChangeId:R_(e.id),title:typeof e.title==`string`?e.title:`(untitled)`,severity:n,productBefore:typeof e.productBefore==`string`?e.productBefore:``,productAfter:typeof e.productAfter==`string`?e.productAfter:``,verdict:e.verdict!==void 0&&typeof e.verdict.score==`number`?{score:e.verdict.score,reason:e.verdict.reason}:void 0,sourceFlowName:t,file:R_(e.file),hunkExcerpt:R_(e.hunkExcerpt)}}async function B_(e,t,r){let i=`/api/v1/regression/runs/${t}/full`,a=await e.get(i);if(!(0,m.isDefined)(a))throw Error(`[cross-component] ${r} run ${t} not found`);let o=[];for(let e of a.impacts??[]){let t=e.flow?.name??e.flow?.flowId??`(unknown flow)`;for(let n of e.productChanges??[]){let e=z_(n,t);e!==void 0&&o.push(e)}}return n.logger.info.defaultLog(`[cross-component] Loaded ${r} run ${t}: ${o.length} contract change(s) after dropping NONE-severity`),o}async function V_(e,t){return B_(e,t,`provider`)}async function H_(e,t){return B_(e,t,`consumer`)}var U_=class{name=`loadConsumerChanges`;async execute(e){let t=e.jobInput.crossComponent?.consumerRunId??``;if(t.length===0)throw Error(`[cross-component] LoadConsumerChangesStep requires jobInput.crossComponent.consumerRunId`);if(e.providerRootPath===void 0||e.providerRootPath.length===0){let n=e.jobInput.crossComponent?.providerSha??`<none>`;throw Error(`[cross-component] consumer direction requires a provider checkout, but none was provisioned (PROVIDER_CHECKOUT_DIR=${process.env.PROVIDER_CHECKOUT_DIR??`<unset>`}, providerSha=${n}, consumerRunId=${t})`)}return e.consumerChanges=await H_(e.apiService,t),u_}},W_=class{name=`loadProviderChanges`;async execute(e){let t=e.jobInput.crossComponent?.providerRunId??``;if(t.length===0)throw Error(`[cross-component] LoadProviderChangesStep requires jobInput.crossComponent.providerRunId`);return e.providerChanges=await V_(e.apiService,t),u_}};let G_={create(e){return new f_([e===`consumer`?new U_:new W_,new L_,new b_,new y_])}};function K_(e){let t=e.primary?.sourcePath;return(0,m.isDefined)(t)&&t.length>0?t:process.cwd()}function q_(e){if(e.crossComponent?.changedSide!==`consumer`)return;let t=process.env.PROVIDER_CHECKOUT_DIR;if(!(0,m.isDefined)(t)||t.length===0)return;let n=e.crossComponent.providerRepo?.rootPath??``;return n.length>0?I.default.join(t,n):t}async function J_(e,t,r,i,a,s,c){let l=Date.now();if(o.setAgentLogEnabled(s.agentLog??!1),s.compareSha.length===0)throw Error(`[cross-component] jobInput.compareSha (the consumer checkout SHA) is empty — the dispatch did not resolve a consumer SHA; aborting.`);let u=K_(s),d=s.crossComponent?.changedSide??`provider`,f=q_(s),p=s.crossComponent?.providerRepo,m=p===void 0?`<none>`:`${p.owner}/${p.repo}`;n.logger.info.defaultLog(`[cross-component] Starting (${d} direction): consumerProjectId=${s.projectId} providerRunId=${s.crossComponent?.providerRunId??`<none>`} providerRepo=${m} providerSha=${s.crossComponent?.providerSha??`<none>`} rootPath=${u} providerRootPath=${f??`<none>`}`);let h={reportsDir:e,rootPath:u,jwtToken:t,anthropicBaseUrl:r,apiService:i,globalConfigService:a,jobInput:s,compareBranch:c,startTime:l,providerRootPath:f,stepMetrics:[]};if(await G_.create(d).run(h),h.result===void 0)throw Error(`[cross-component] pipeline finished without producing a result (CrossComponentReportStep did not run)`);return{flowImpacts:[],catalogId:null,rootPath:u,changedFiles:[],branch:s.compareBranch.length>0?s.compareBranch:c??s.anchorBranch,headSha:s.compareSha.length>0?s.compareSha:void 0,anchorBranch:s.anchorBranch,anchorSha:s.anchorSha.length>0?s.anchorSha:void 0,runType:`PR`,stepsMetrics:h.stepMetrics,durationSeconds:(Date.now()-l)/1e3}}var Y_=class{constructor(e){this.steps=e}describe(){return this.steps.map(e=>e.name).join(` -> `)}async run(e){n.logger.info.defaultLog(`[regression-impact] Pipeline: ${this.describe()}`);let t=!1;for(let[r,i]of this.steps.entries()){let o=`${r+1}/${this.steps.length}`;if(t&&i.isTerminal!==!0){n.logger.info.defaultLog(`[regression-impact] Step ${o} "${i.name}" — SKIPPED (pipeline halted)`);continue}n.logger.info.defaultLog(`[regression-impact] Step ${o} "${i.name}" — START`);let s=Date.now(),c=await i.execute(e),l=(Date.now()-s)/1e3;e.stepMetrics.push(d_(i.name,c.costUsd,s,c.turns,c.maxTurnsHit,c.tokens,c.batches,c.maxBudgetHit??!1,c.totalFiles,c.mappedFiles,c.mappingBreakdown));let u=c.status===l_.Halt?` — HALT`:``,d=c.maxTurnsHit?` / maxTurnsHit`:``,f=a.shouldLogDiagnostics?`$${c.costUsd.toFixed(4)} / ${c.turns} turns / ${l.toFixed(2)}s${d}`:`${l.toFixed(2)}s`;n.logger.info.defaultLog(`[regression-impact] Step ${o} "${i.name}" — END (${f})${u}`),c.status===l_.Halt&&(t=!0)}return e}};function X_(e,t=20){return e.length<=t?e:[...e].sort((e,t)=>{let n=e.userOverride?.rank??1/0,r=t.userOverride?.rank??1/0;return n===r?e.rank-t.rank:n-r}).slice(0,t)}function Z_(e,t,r,i){if(i)return t;if((0,m.isDefined)(r)&&r.length>0)try{return a.resolveRefSha(e,r),r}catch{n.logger.info.defaultLog(`[regression-impact] anchorSha ${r} not found locally, falling back to branch`)}return a.ensureAnchorRef(e,t)}async function Q_(e,t,r){let i=r?.projectId??t.getProjectId();if(!(0,m.isDefined)(i)||i.length===0)return n.logger.info.defaultLog(`[regression-impact] No projectId — cannot load flow library`),null;try{n.logger.info.defaultLog(`[regression-impact] Loading flow library for projectId: ${i}`);let t=await e.get(`/api/v1/regression/flow-library/for-agent`,{params:{projectId:i,includeInactive:`false`}});return n.logger.info.defaultLog(`[regression-impact] Loaded library: ${t.flows.length} flows, latestCatalogId=${t.project.latestCatalogId??`(none)`}`),{project:t.project,flows:t.flows}}catch(e){return n.logger.info.defaultLog(`[regression-impact] Could not load flow library from backend: ${String(e)}`),null}}function $_(e){return{flowId:e.flowId,rank:e.rank,name:e.name,flowType:e.flowType??`OTHER`,entryPoints:Array.isArray(e.entryPoints)?e.entryPoints:[],description:e.description??``,importanceReason:e.importanceReason??``,trace:e.trace??{entryFiles:[],entrySymbols:[],calledModules:[],codeSnippet:``},scoring:e.scoring,productFlow:e.productFlow}}async function ev(e,t,n){let r=await Q_(e,t,n);if(!r)throw Error(`[regression-impact] Could not load flow library from backend. Ensure projectId is set and the project has flows.`);return tv(r,n)}function tv(e,t){if(t===null){let e=Error(`[regression-impact] jobInput is required — no global config fallback is allowed`);throw n.logger.error(e.message,e),e}let r=iv(t,`anchorBranch`),i=iv(t,`projectRootPath`),a=iv(t,`anchorSha`),o=X_(e.flows).map($_);return n.logger.info.defaultLog(`[regression-impact] Loaded library for project: ${e.project.projectId}`),n.logger.info.defaultLog(`[regression-impact] ${e.flows.length} active flows in library, analyzing top ${o.length}`),{bundle:e,anchorBranch:r,anchorSha:a,catalogId:e.project.latestCatalogId,projectType:e.project.projectType??`(unknown)`,flows:o,rootPath:i}}async function nv(e,t){n.logger.info.defaultLog(`[regression-impact] Loading library baseline from prior run: ${t}`);let r;try{r=await e.get(`/api/v1/regression/runs/${encodeURIComponent(t)}/library-baseline`)}catch(e){throw Error(`[regression-impact] Could not load library baseline for prior run ${t}. Ensure the run id is valid and belongs to this team. (${String(e)})`,{cause:e})}return n.logger.info.defaultLog(`[regression-impact] Loaded baseline: ${r.flows.length} flows, latestCatalogId=${r.project.latestCatalogId??`(none)`}`),{project:r.project,flows:r.flows}}async function rv(e,t,n){return tv(await nv(e,n),t)}function iv(e,t){let r=e[t]?.trim();if(!(0,m.isDefined)(r)||r.length===0){let e=Error(`[regression-impact] ${t} is missing from job input`);throw n.logger.error(e.message,e),e}return r}var av=class{name=`loadLibrary`;async execute(e){let{bundle:t,anchorBranch:r,anchorSha:i,catalogId:o,projectType:s,flows:c}=await ev(e.apiService,e.globalConfigService,e.jobInput);if(e.jobInput===null)throw Error(`[impact-pipeline] jobInput is required to resolve catalog roots`);let l;try{l=Rm(e.jobInput)}catch(e){throw Error(`[impact-pipeline] failed to resolve catalog roots: ${String(e)}`,{cause:e})}let u=l.cwd,d=Z_(u,r,i,e.isUncommitted),f=a.getCommitMessages(u,d),p=(0,m.isDefined)(i)?`, sha: ${i}`:``;return n.logger.info.defaultLog(`[regression-impact] Anchor: ${r} (resolved: ${d}${p})`),e.bundle=t,e.flows=c,e.catalogId=o,e.projectType=s,e.anchorBranch=r,e.anchorSha=i,e.resolvedAnchorBranch=d,e.rootPath=u,e.primarySource=l.primarySource,e.dependencyRoots=l.dependencyRoots,e.commitMessages=f,u_}};function ov(e){return{version:1,source:`library`,capturedAt:new Date().toISOString(),project:e.project,flows:e.flows}}async function sv(e,t,r,i,a){try{let o=e.flowImpacts.filter(e=>e.affected&&e.severity!==void 0&&e.severity!==`NONE`).map(e=>{let t=(e.techChanges??[]).map(e=>({file:e.file,confidence:e.confidence,techBefore:e.techBefore,techAfter:e.techAfter})),n=(e.productChanges??[]).map(e=>({...e.title===void 0?{}:{title:e.title},productBefore:e.productBefore,productAfter:e.productAfter,confidence:e.confidence,severity:e.severity,severityReason:e.severityReason,...e.importance===void 0?{}:{importance:e.importance},...e.importanceReason===void 0?{}:{importanceReason:e.importanceReason},...e.priority===void 0?{}:{priority:e.priority},...e.verdictScore===void 0?{}:{verdict:{score:e.verdictScore,...e.verdictReason===void 0?{}:{reason:e.verdictReason},...e.originalVerdictScore===void 0?{}:{originalScore:e.originalVerdictScore},...e.originalVerdictReason===void 0?{}:{originalReason:e.originalVerdictReason},...e.calibrationReason===void 0?{}:{calibrationReason:e.calibrationReason}}},...e.file===void 0?{}:{file:e.file},...e.hunkExcerpt===void 0?{}:{hunkExcerpt:e.hunkExcerpt},...e.hunterTypes===void 0?{}:{hunterTypes:e.hunterTypes}})),r=(e.affectedSteps??[]).map(e=>({stepId:e.stepId,actor:e.actor,action:e.action,reason:e.reason}));return{flowId:e.flow.flowId,techChanges:t,productChanges:n,affectedSteps:r}}),s=a?.projectId??i.getProjectId();if(!(0,m.isDefined)(s)||s.length===0)return n.logger.info.defaultLog(`[regression-impact] No projectId — cannot post run`),null;let c=ov(t),l=a?.baselineFromAnalysisId?.trim(),u={projectId:s,catalogId:t.project.latestCatalogId,libraryBaseline:c,...(0,m.isDefined)(l)&&l.length>0?{baselineFromAnalysisId:l}:{},anchorBranch:e.anchorBranch,runType:e.runType,branch:e.branch,headSha:e.headSha,anchorSha:e.anchorSha,changedFiles:e.changedFiles,stepsMetrics:e.stepsMetrics??[],flowImpacts:o,agentVersion:Nm,jobId:i.getJobId()},d=await r.post(`/api/v1/regression/runs`,u);return n.logger.info.defaultLog(`[regression-impact] Run posted to backend. runId: ${d.runId}`),d}catch(e){return n.logger.info.defaultLog(`[regression-impact] Failed to post run to backend: ${String(e)}`),null}}var cv=class{name=`post`;isTerminal=!0;async execute(e){if(e.result===void 0)throw Error(`[impact-pipeline] PostStep requires ctx.result — ReportStep must run before this step`);if(e.bundle===void 0)throw Error(`[impact-pipeline] PostStep requires ctx.bundle — LoadLibraryStep must run before this step`);let t=await sv(e.result,e.bundle,e.apiService,e.globalConfigService,e.jobInput);return t!==null&&(e.runId=t.runId),u_}};function lv(e,t,n){if(e===void 0)throw Error(`[impact-pipeline] ctx.${t} is unset — ${n} must run before this step`);return e}function uv(e){return lv(e.flows,`flows`,`LoadLibraryStep`)}function dv(e){return lv(e.rootPath,`rootPath`,`LoadLibraryStep`)}function fv(e){return lv(e.changedFiles,`changedFiles`,`PreFilterStep or MappingSnapshotReadStep`)}function pv(e){return lv(e.mappingResult,`mappingResult`,`MappingStep`)}function mv(e){return lv(e.flowImpacts,`flowImpacts`,`BuildImpactsStep`)}function hv(e,t){(0,y.mkdirSync)(t,{recursive:!0});let r=new Date().toISOString().replaceAll(/[:.]/g,`-`),i=I.default.basename(e.rootPath),a=I.default.join(t,`${r}-${i}-${e.branch}-vs-${e.anchorBranch}.impact.md`),o=e.flowImpacts.map(({flow:e,affected:t,severity:n,severityReason:r,techChanges:i,productChanges:a})=>{let o=t?`AFFECTED`:`NOT AFFECTED`,s=n!==void 0&&n.length>0?` — Severity: **${n}**`:``,c=r!==void 0&&r.length>0?`\n**Reason:** ${r}`:``,l=(i??[]).length>0?`
|
|
33715
|
+
For each change above, find whether the consumer's changed call to the provider still works against the provider's actual contract. Emit the structured findings[]. Do not emit findings for consumer changes that still match the provider's real contract.`}let j_=[`NONE`,`LOW`,`MEDIUM`,`HIGH`,`CRITICAL`];function M_(e){let t=String(e??``).toUpperCase();return j_.includes(t)?t:`NONE`}function N_(e){let t=typeof e==`number`&&Number.isFinite(e)?e:0;return Math.max(0,Math.min(10,Math.round(t)))}function P_(e){return typeof e==`string`&&e.length>0?e:void 0}function F_(e){let t=Array.isArray(e?.findings)?e.findings:[],r=0,i=t.map(e=>(typeof e.verdict?.score==`number`&&Number.isFinite(e.verdict.score)||r++,{title:typeof e.title==`string`?e.title:`(untitled)`,severity:M_(e.severity),verdictScore:N_(e.verdict?.score),verdictReason:P_(e.verdict?.reason),consumerBefore:typeof e.consumerBefore==`string`?e.consumerBefore:``,consumerAfter:typeof e.consumerAfter==`string`?e.consumerAfter:``,consumerFile:P_(e.consumerFile),consumerExcerpt:P_(e.consumerExcerpt),providerContract:P_(e.providerContract),providerProductChangeId:P_(e.providerProductChangeId),affectedFlow:P_(e.affectedFlow),howToVerify:P_(e.howToVerify),technicalRootCause:P_(e.technicalRootCause)}));return r>0&&n.logger.info.defaultLog(`[cross-component] ${r} of ${i.length} finding(s) had a missing/malformed verdict score — defaulted to 0 (non-breaking). Model output may be degraded.`),i}async function I_(e){let{query:t,getMessageContentBlocks:r,isResultMessage:i,isErrorResult:s}=await Promise.resolve().then(()=>lz()),c=e.changedSide===`consumer`?O_():T_(),l=t({prompt:e.changedSide===`consumer`?A_({rootPath:e.rootPath,providerRootPath:e.providerRootPath,providerProjectId:e.providerProjectId,consumerChanges:e.consumerChanges}):D_({rootPath:e.rootPath,providerProjectId:e.providerProjectId,providerRunId:e.providerRunId,providerChanges:e.providerChanges}),options:{model:a.CROSS_COMPONENT_MODEL,systemPrompt:c,allowedTools:[`Read`,`Grep`,`Glob`,`Bash`],permissionMode:`bypassPermissions`,allowDangerouslySkipPermissions:!0,maxBudgetUsd:e.maxBudgetUsd,maxTurns:e.maxTurns,cwd:e.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:S_},env:{...process.env,ANTHROPIC_BASE_URL:e.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:e.jwtToken??``}}}),u=0;for await(let t of l){if(!i(t)){let e=r(t);e!==void 0&&e.length>0&&(u++,o.logAgentActivity(`cross-component-hunter`,u,e));continue}if(s(t))throw Error(`[cross-component] Hunter error: ${t.subtype}`);let a=t.structured_output;if(a===void 0){let r=(t.result??``).slice(0,300);return n.logger.info.defaultLog(`[cross-component] Hunter returned no structured_output — treating as zero findings. stop_reason=${String(t.stop_reason)} result="${r}"`),{findings:[],costUsd:t.total_cost_usd,turns:t.num_turns,maxTurnsHit:t.num_turns>=e.maxTurns,tokens:o.ZERO_TOKENS,degraded:!0}}let c=F_(a);return n.logger.info.defaultLog(`[cross-component] Hunter completed: costUsd=${t.total_cost_usd} turns=${t.num_turns} findings=${c.length}`),{findings:c,costUsd:t.total_cost_usd,turns:t.num_turns,maxTurnsHit:t.num_turns>=e.maxTurns,tokens:o.extractCacheTokens(t),degraded:!1}}throw Error(`[cross-component] Hunter stream ended without a result message`)}var L_=class{name=`crossContractHunt`;async execute(e){let t=e.jobInput.crossComponent;if(t===void 0)throw Error(`[cross-component] CrossContractHuntStep requires jobInput.crossComponent`);let r=t.changedSide??`provider`,{changeCount:i,dispatchArgs:a}=this.buildDispatch(e,t,r);if(i===0)return n.logger.info.defaultLog(`[cross-component] No ${r}-side contract changes to check — skipping hunter (halt)`),e.findings=[],e.huntCostUsd=0,e.huntTokens=o.ZERO_TOKENS,e.huntTurns=0,e.huntMaxTurnsHit=!1,{costUsd:0,turns:0,maxTurnsHit:!1,tokens:o.ZERO_TOKENS,status:l_.Halt};let s=await I_(a);return e.findings=s.findings,e.huntCostUsd=s.costUsd,e.huntTokens=s.tokens,e.huntTurns=s.turns,e.huntMaxTurnsHit=s.maxTurnsHit,{costUsd:s.costUsd,turns:s.turns,maxTurnsHit:s.maxTurnsHit,tokens:s.tokens}}buildDispatch(e,t,n){let r={rootPath:e.rootPath,providerProjectId:t.providerProjectId,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl};if(n===`consumer`){let t=h_(e);if(e.providerRootPath===void 0)throw Error(`[cross-component] consumer-direction hunt requires context.providerRootPath`);return{changeCount:t.length,dispatchArgs:{...r,changedSide:`consumer`,providerRootPath:e.providerRootPath,consumerChanges:t,maxTurns:a.CROSS_COMPONENT_CONSUMER_MAX_TURNS,maxBudgetUsd:a.CROSS_COMPONENT_CONSUMER_MAX_BUDGET_USD}}}let i=m_(e),o=t.providerRunId??``;if(o.length===0)throw Error(`[cross-component] provider-direction hunt requires a non-empty providerRunId`);return{changeCount:i.length,dispatchArgs:{...r,changedSide:`provider`,providerRunId:o,providerChanges:i,maxTurns:a.CROSS_COMPONENT_MAX_TURNS,maxBudgetUsd:a.CROSS_COMPONENT_MAX_BUDGET_USD}}}};let R_=e=>typeof e==`string`&&e.length>0?e:void 0;function z_(e,t){let n=String(e.severity??`NONE`).toUpperCase();if(n!==`NONE`)return{productChangeId:R_(e.id),title:typeof e.title==`string`?e.title:`(untitled)`,severity:n,productBefore:typeof e.productBefore==`string`?e.productBefore:``,productAfter:typeof e.productAfter==`string`?e.productAfter:``,verdict:e.verdict!==void 0&&typeof e.verdict.score==`number`?{score:e.verdict.score,reason:e.verdict.reason}:void 0,sourceFlowName:t,file:R_(e.file),hunkExcerpt:R_(e.hunkExcerpt)}}async function B_(e,t,r){let i=`/api/v1/regression/runs/${t}/full`,a=await e.get(i);if(!(0,m.isDefined)(a))throw Error(`[cross-component] ${r} run ${t} not found`);let o=[];for(let e of a.impacts??[]){let t=e.flow?.name??e.flow?.flowId??`(unknown flow)`;for(let n of e.productChanges??[]){let e=z_(n,t);e!==void 0&&o.push(e)}}return n.logger.info.defaultLog(`[cross-component] Loaded ${r} run ${t}: ${o.length} contract change(s) after dropping NONE-severity`),o}async function V_(e,t){return B_(e,t,`provider`)}async function H_(e,t){return B_(e,t,`consumer`)}var U_=class{name=`loadConsumerChanges`;async execute(e){let t=e.jobInput.crossComponent?.consumerRunId??``;if(t.length===0)throw Error(`[cross-component] LoadConsumerChangesStep requires jobInput.crossComponent.consumerRunId`);if(e.providerRootPath===void 0||e.providerRootPath.length===0){let n=e.jobInput.crossComponent?.providerSha??`<none>`;throw Error(`[cross-component] consumer direction requires a provider checkout, but none was provisioned (PROVIDER_CHECKOUT_DIR=${process.env.PROVIDER_CHECKOUT_DIR??`<unset>`}, providerSha=${n}, consumerRunId=${t})`)}return e.consumerChanges=await H_(e.apiService,t),u_}},W_=class{name=`loadProviderChanges`;async execute(e){let t=e.jobInput.crossComponent?.providerRunId??``;if(t.length===0)throw Error(`[cross-component] LoadProviderChangesStep requires jobInput.crossComponent.providerRunId`);return e.providerChanges=await V_(e.apiService,t),u_}};let G_={create(e){return new f_([e===`consumer`?new U_:new W_,new L_,new b_,new y_])}};function K_(e){let t=e.primary?.sourcePath;return(0,m.isDefined)(t)&&t.length>0?t:process.cwd()}function q_(e){if(e.crossComponent?.changedSide!==`consumer`)return;let t=process.env.PROVIDER_CHECKOUT_DIR;if(!(0,m.isDefined)(t)||t.length===0)return;let n=e.crossComponent.providerRepo?.rootPath??``;return n.length>0?I.default.join(t,n):t}async function J_(e,t,r,i,a,s,c){let l=Date.now();if(o.setAgentLogEnabled(s.agentLog??!1),s.compareSha.length===0)throw Error(`[cross-component] jobInput.compareSha (the consumer checkout SHA) is empty — the dispatch did not resolve a consumer SHA; aborting.`);let u=K_(s),d=s.crossComponent?.changedSide??`provider`,f=q_(s),p=s.crossComponent?.providerRepo,m=p===void 0?`<none>`:`${p.owner}/${p.repo}`;n.logger.info.defaultLog(`[cross-component] Starting (${d} direction): consumerProjectId=${s.projectId} providerRunId=${s.crossComponent?.providerRunId??`<none>`} providerRepo=${m} providerSha=${s.crossComponent?.providerSha??`<none>`} rootPath=${u} providerRootPath=${f??`<none>`}`);let h={reportsDir:e,rootPath:u,jwtToken:t,anthropicBaseUrl:r,apiService:i,globalConfigService:a,jobInput:s,compareBranch:c,startTime:l,providerRootPath:f,stepMetrics:[]};if(await G_.create(d).run(h),h.result===void 0)throw Error(`[cross-component] pipeline finished without producing a result (CrossComponentReportStep did not run)`);return{flowImpacts:[],catalogId:null,rootPath:u,changedFiles:[],branch:s.compareBranch.length>0?s.compareBranch:c??s.anchorBranch,headSha:s.compareSha.length>0?s.compareSha:void 0,anchorBranch:s.anchorBranch,anchorSha:s.anchorSha.length>0?s.anchorSha:void 0,runType:`PR`,stepsMetrics:h.stepMetrics,durationSeconds:(Date.now()-l)/1e3}}var Y_=class{constructor(e){this.steps=e}describe(){return this.steps.map(e=>e.name).join(` -> `)}async run(e){n.logger.info.defaultLog(`[regression-impact] Pipeline: ${this.describe()}`);let t=!1;for(let[r,i]of this.steps.entries()){let o=`${r+1}/${this.steps.length}`;if(t&&i.isTerminal!==!0){n.logger.info.defaultLog(`[regression-impact] Step ${o} "${i.name}" — SKIPPED (pipeline halted)`);continue}n.logger.info.defaultLog(`[regression-impact] Step ${o} "${i.name}" — START`);let s=Date.now(),c=await i.execute(e),l=(Date.now()-s)/1e3;e.stepMetrics.push(d_(i.name,c.costUsd,s,c.turns,c.maxTurnsHit,c.tokens,c.batches,c.maxBudgetHit??!1,c.totalFiles,c.mappedFiles,c.mappingBreakdown));let u=c.status===l_.Halt?` — HALT`:``,d=c.maxTurnsHit?` / maxTurnsHit`:``,f=a.shouldLogDiagnostics?`$${c.costUsd.toFixed(4)} / ${c.turns} turns / ${l.toFixed(2)}s${d}`:`${l.toFixed(2)}s`;n.logger.info.defaultLog(`[regression-impact] Step ${o} "${i.name}" — END (${f})${u}`),c.status===l_.Halt&&(t=!0)}return e}};function X_(e,t=20){return e.length<=t?e:[...e].sort((e,t)=>{let n=e.userOverride?.rank??1/0,r=t.userOverride?.rank??1/0;return n===r?e.rank-t.rank:n-r}).slice(0,t)}function Z_(e,t,r,i){if(i)return t;if((0,m.isDefined)(r)&&r.length>0)try{return a.resolveRefSha(e,r),r}catch{n.logger.info.defaultLog(`[regression-impact] anchorSha ${r} not found locally, falling back to branch`)}return a.ensureAnchorRef(e,t)}async function Q_(e,t,r){let i=r?.projectId??t.getProjectId();if(!(0,m.isDefined)(i)||i.length===0)return n.logger.info.defaultLog(`[regression-impact] No projectId — cannot load flow library`),null;try{n.logger.info.defaultLog(`[regression-impact] Loading flow library for projectId: ${i}`);let t=await e.get(`/api/v1/regression/flow-library/for-agent`,{params:{projectId:i,includeInactive:`false`}});return n.logger.info.defaultLog(`[regression-impact] Loaded library: ${t.flows.length} flows, latestCatalogId=${t.project.latestCatalogId??`(none)`}`),{project:t.project,flows:t.flows}}catch(e){return n.logger.info.defaultLog(`[regression-impact] Could not load flow library from backend: ${String(e)}`),null}}function $_(e){return{flowId:e.flowId,rank:e.rank,name:e.name,flowType:e.flowType??`OTHER`,entryPoints:Array.isArray(e.entryPoints)?e.entryPoints:[],description:e.description??``,importanceReason:e.importanceReason??``,trace:e.trace??{entryFiles:[],entrySymbols:[],calledModules:[],codeSnippet:``},scoring:e.scoring,productFlow:e.productFlow}}async function ev(e,t,n){let r=await Q_(e,t,n);if(!r)throw Error(`[regression-impact] Could not load flow library from backend. Ensure projectId is set and the project has flows.`);return tv(r,n)}function tv(e,t){if(t===null){let e=Error(`[regression-impact] jobInput is required — no global config fallback is allowed`);throw n.logger.error(e.message,e),e}let r=iv(t,`anchorBranch`),i=iv(t,`projectRootPath`),a=iv(t,`anchorSha`),o=X_(e.flows).map($_);return n.logger.info.defaultLog(`[regression-impact] Loaded library for project: ${e.project.projectId}`),n.logger.info.defaultLog(`[regression-impact] ${e.flows.length} active flows in library, analyzing top ${o.length}`),{bundle:e,anchorBranch:r,anchorSha:a,catalogId:e.project.latestCatalogId,projectType:e.project.projectType??`(unknown)`,flows:o,rootPath:i}}async function nv(e,t){n.logger.info.defaultLog(`[regression-impact] Loading library baseline from prior run: ${t}`);let r;try{r=await e.get(`/api/v1/regression/runs/${encodeURIComponent(t)}/library-baseline`)}catch(e){throw Error(`[regression-impact] Could not load library baseline for prior run ${t}. Ensure the run id is valid and belongs to this team. (${String(e)})`,{cause:e})}return n.logger.info.defaultLog(`[regression-impact] Loaded baseline: ${r.flows.length} flows, latestCatalogId=${r.project.latestCatalogId??`(none)`}`),{project:r.project,flows:r.flows}}async function rv(e,t,n){return tv(await nv(e,n),t)}function iv(e,t){let r=e[t]?.trim();if(!(0,m.isDefined)(r)||r.length===0){let e=Error(`[regression-impact] ${t} is missing from job input`);throw n.logger.error(e.message,e),e}return r}var av=class{name=`loadLibrary`;async execute(e){let{bundle:t,anchorBranch:r,anchorSha:i,catalogId:o,projectType:s,flows:c}=await ev(e.apiService,e.globalConfigService,e.jobInput);if(e.jobInput===null)throw Error(`[impact-pipeline] jobInput is required to resolve catalog roots`);let l;try{l=Rm(e.jobInput)}catch(e){throw Error(`[impact-pipeline] failed to resolve catalog roots: ${String(e)}`,{cause:e})}let u=l.cwd,d=Z_(u,r,i,e.isUncommitted),f=a.getCommitMessages(u,d),p=(0,m.isDefined)(i)?`, sha: ${i}`:``;return n.logger.info.defaultLog(`[regression-impact] Anchor: ${r} (resolved: ${d}${p})`),e.bundle=t,e.flows=c,e.catalogId=o,e.projectType=s,e.anchorBranch=r,e.anchorSha=i,e.resolvedAnchorBranch=d,e.rootPath=u,e.primarySource=l.primarySource,e.dependencyRoots=l.dependencyRoots,e.commitMessages=f,u_}};function ov(e){return{version:1,source:`library`,capturedAt:new Date().toISOString(),project:e.project,flows:e.flows}}async function sv(e,t,r,i,a){try{let o=e.flowImpacts.filter(e=>e.affected&&e.severity!==void 0&&e.severity!==`NONE`).map(e=>{let t=(e.techChanges??[]).map(e=>({file:e.file,confidence:e.confidence,techBefore:e.techBefore,techAfter:e.techAfter})),n=(e.productChanges??[]).map(e=>({...e.title===void 0?{}:{title:e.title},productBefore:e.productBefore,productAfter:e.productAfter,confidence:e.confidence,severity:e.severity,severityReason:e.severityReason,...e.importance===void 0?{}:{importance:e.importance},...e.importanceReason===void 0?{}:{importanceReason:e.importanceReason},...e.priority===void 0?{}:{priority:e.priority},...e.verdictScore===void 0?{}:{verdict:{score:e.verdictScore,...e.verdictReason===void 0?{}:{reason:e.verdictReason},...e.originalVerdictScore===void 0?{}:{originalScore:e.originalVerdictScore},...e.originalVerdictReason===void 0?{}:{originalReason:e.originalVerdictReason},...e.calibrationReason===void 0?{}:{calibrationReason:e.calibrationReason}}},...e.file===void 0?{}:{file:e.file},...e.hunkExcerpt===void 0?{}:{hunkExcerpt:e.hunkExcerpt},...e.hunterTypes===void 0?{}:{hunterTypes:e.hunterTypes},...e.needsConsumerVerification===!0?{needsConsumerVerification:!0}:{},...e.needsConsumerVerification===!0&&e.consumerVerificationReason!==void 0?{consumerVerificationReason:e.consumerVerificationReason}:{}})),r=(e.affectedSteps??[]).map(e=>({stepId:e.stepId,actor:e.actor,action:e.action,reason:e.reason}));return{flowId:e.flow.flowId,techChanges:t,productChanges:n,affectedSteps:r}}),s=a?.projectId??i.getProjectId();if(!(0,m.isDefined)(s)||s.length===0)return n.logger.info.defaultLog(`[regression-impact] No projectId — cannot post run`),null;let c=ov(t),l=a?.baselineFromAnalysisId?.trim(),u={projectId:s,catalogId:t.project.latestCatalogId,libraryBaseline:c,...(0,m.isDefined)(l)&&l.length>0?{baselineFromAnalysisId:l}:{},anchorBranch:e.anchorBranch,runType:e.runType,branch:e.branch,headSha:e.headSha,anchorSha:e.anchorSha,changedFiles:e.changedFiles,stepsMetrics:e.stepsMetrics??[],flowImpacts:o,agentVersion:Nm,jobId:i.getJobId()},d=await r.post(`/api/v1/regression/runs`,u);return n.logger.info.defaultLog(`[regression-impact] Run posted to backend. runId: ${d.runId}`),d}catch(e){return n.logger.info.defaultLog(`[regression-impact] Failed to post run to backend: ${String(e)}`),null}}var cv=class{name=`post`;isTerminal=!0;async execute(e){if(e.result===void 0)throw Error(`[impact-pipeline] PostStep requires ctx.result — ReportStep must run before this step`);if(e.bundle===void 0)throw Error(`[impact-pipeline] PostStep requires ctx.bundle — LoadLibraryStep must run before this step`);let t=await sv(e.result,e.bundle,e.apiService,e.globalConfigService,e.jobInput);return t!==null&&(e.runId=t.runId),u_}};function lv(e,t,n){if(e===void 0)throw Error(`[impact-pipeline] ctx.${t} is unset — ${n} must run before this step`);return e}function uv(e){return lv(e.flows,`flows`,`LoadLibraryStep`)}function dv(e){return lv(e.rootPath,`rootPath`,`LoadLibraryStep`)}function fv(e){return lv(e.changedFiles,`changedFiles`,`PreFilterStep or MappingSnapshotReadStep`)}function pv(e){return lv(e.mappingResult,`mappingResult`,`MappingStep`)}function mv(e){return lv(e.flowImpacts,`flowImpacts`,`BuildImpactsStep`)}function hv(e,t){(0,y.mkdirSync)(t,{recursive:!0});let r=new Date().toISOString().replaceAll(/[:.]/g,`-`),i=I.default.basename(e.rootPath),a=I.default.join(t,`${r}-${i}-${e.branch}-vs-${e.anchorBranch}.impact.md`),o=e.flowImpacts.map(({flow:e,affected:t,severity:n,severityReason:r,techChanges:i,productChanges:a})=>{let o=t?`AFFECTED`:`NOT AFFECTED`,s=n!==void 0&&n.length>0?` — Severity: **${n}**`:``,c=r!==void 0&&r.length>0?`\n**Reason:** ${r}`:``,l=(i??[]).length>0?`
|
|
33714
33716
|
|
|
33715
33717
|
**Technical changes:**
|
|
33716
33718
|
`+(i??[]).map(e=>{let t=e.confidence===`low`?` (low confidence)`:``;return`- \`${e.file}\`${t}\n - Before: ${e.techBefore}\n - After: ${e.techAfter}`}).join(`
|
|
@@ -33841,14 +33843,14 @@ Findings:
|
|
|
33841
33843
|
|
|
33842
33844
|
${t}
|
|
33843
33845
|
|
|
33844
|
-
Return one score entry per finding, using the same index.`}async function cy(e,t){let{query:n,isResultMessage:r,isErrorResult:i}=await Promise.resolve().then(()=>lz()),s=n({prompt:sy(e),options:{model:a.HUNT_FIRST_HUNTER_MODEL,systemPrompt:`You are a calibrated severity scorer for a batch of already-identified code regressions.`,allowedTools:[],permissionMode:`bypassPermissions`,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.HUNT_FIRST_SCORING_MAX_BUDGET_USD,maxTurns:a.HUNT_FIRST_SCORING_MAX_TURNS,cwd:t.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.HUNT_SCORING_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:t.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:t.jwtToken??``}}});for await(let e of s){if(!r(e))continue;if(i(e))throw Error(`[regression-impact] Scoring error: ${e.subtype}`);let t=e.structured_output;if(t===void 0)throw Error(`[regression-impact] Scoring returned no structured_output`);return{scores:t.scores,costUsd:e.total_cost_usd,turns:e.num_turns,maxTurnsHit:e.num_turns>=a.HUNT_FIRST_SCORING_MAX_TURNS,tokens:o.extractCacheTokens(e)}}throw Error(`[regression-impact] Scoring stream ended without a result message`)}async function ly(e,t){if(e.length===0)return{scored:[],costUsd:0,turns:0,maxTurnsHit:!1,isScoringFailed:!1,tokens:o.ZERO_TOKENS};let r,i=!1;try{r=await cy(e,t)}catch(a){n.logger.info.defaultLog(`[regression-impact] Scoring call failed, retrying once: ${String(a)}`);try{r=await cy(e,t)}catch(e){i=!0,n.logger.info.defaultLog(`[regression-impact] Scoring retry also failed, falling back to NONE for all findings: ${String(e)}`)}}let a=new Map((r?.scores??[]).map(e=>[e.index,e]));return{scored:e.map((e,t)=>{let n=a.get(t);return n===void 0?{...e,severity:`NONE`}:{...e,severity:n.severity,verdictScore:n.verdictScore,verdictReason:n.verdictReason}}),costUsd:r?.costUsd??0,turns:r?.turns??0,maxTurnsHit:r?.maxTurnsHit??!1,isScoringFailed:i,tokens:r?.tokens??o.ZERO_TOKENS}}function uy(e){return e?[{label:`scoring — FAILED (all findings floored to NONE)`,costUsd:0,turns:0,maxTurnsHit:!1,maxBudgetHit:!1,tokens:o.ZERO_TOKENS}]:[]}var dy=class{name=`scoreFindings`;async execute(e){let t=dv(e),n=await ly(e.mergedHuntFindings??[],{rootPath:t,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl});e.scoredHuntFindings=n.scored;let r=uy(n.isScoringFailed);return{costUsd:n.costUsd,turns:n.turns,maxTurnsHit:n.maxTurnsHit,tokens:n.tokens,...r.length>0?{batches:r}:{}}}};let fy={create(){return new Y_([new av,new Cv,new oy,new zv,new kv,new Xv,new ay,new dy,new Fv,new vv,new cv])}};async function py(e,t,n,r,i,a,s,c){let l=Date.now(),u=t===`LOCAL`;o.setAgentLogEnabled(s?.agentLog??!1);let d={reportsDir:e,runType:t,isUncommitted:u,jwtToken:n,anthropicBaseUrl:r,apiService:i,globalConfigService:a,jobInput:s,compareBranch:c,startTime:l,stepMetrics:[]};if(await fy.create().run(d),d.result===void 0)throw Error(`[hunt-first-impact] pipeline finished without producing a result (ReportStep did not run)`);return d.result}function my(e){return I.default.join(e,`reports`,`mapping-cache`,`latest.mapping.json`)}function hy(e){return(0,y.existsSync)(my(e))}function gy(e){let t={};for(let[n,r]of e)t[n]=[...r];return t}function _y(e){return new Map(Object.entries(e).map(([e,t])=>[e,new Set(t)]))}function vy(e){let t={};if(e===void 0)return t;for(let[n,r]of e)t[n]=Object.fromEntries(r);return t}function yy(e){return new Map(Object.entries(e).map(([e,t])=>[e,new Map(Object.entries(t))]))}function by(e){let t=my(e);if((0,y.existsSync)(t))try{let e=JSON.parse((0,y.readFileSync)(t,`utf8`));if(e.version!==1){n.logger.info.defaultLog(`[regression-impact] Mapping cache at ${t} has unexpected version — ignoring.`);return}return n.logger.info.defaultLog(`[regression-impact] Mapping cache HIT — skipping mapping, loaded from ${t}`+(a.shouldLogDiagnostics?` (original mapping cost was $${e.costUsd.toFixed(4)} / ${e.turns} turns)`:``)),{flowFileMap:_y(e.flowFileMap),flowFileReasons:yy(e.flowFileReasons),costUsd:0,turns:0,maxTurnsHit:!1}}catch(e){n.logger.info.defaultLog(`[regression-impact] Failed to read mapping cache ${t}: ${String(e)}`);return}}function xy(e,t,r){let i=my(e);try{(0,y.mkdirSync)(I.default.dirname(i),{recursive:!0});let e={version:1,inputs:t,flowFileMap:gy(r.flowFileMap),flowFileReasons:vy(r.flowFileReasons),costUsd:r.costUsd,turns:r.turns,maxTurnsHit:r.maxTurnsHit};(0,y.writeFileSync)(i,JSON.stringify(e,null,2),`utf8`),n.logger.info.defaultLog(`[regression-impact] Mapping result cached → ${i}`)}catch(e){n.logger.info.defaultLog(`[regression-impact] Failed to write mapping cache ${i}: ${String(e)}`)}}function Sy(e,t,n,r,i,o=!1,s=!1,c=!1,l=!1,u=!1){let
|
|
33846
|
+
Return one score entry per finding, using the same index.`}async function cy(e,t){let{query:n,isResultMessage:r,isErrorResult:i}=await Promise.resolve().then(()=>lz()),s=n({prompt:sy(e),options:{model:a.HUNT_FIRST_HUNTER_MODEL,systemPrompt:`You are a calibrated severity scorer for a batch of already-identified code regressions.`,allowedTools:[],permissionMode:`bypassPermissions`,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.HUNT_FIRST_SCORING_MAX_BUDGET_USD,maxTurns:a.HUNT_FIRST_SCORING_MAX_TURNS,cwd:t.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.HUNT_SCORING_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:t.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:t.jwtToken??``}}});for await(let e of s){if(!r(e))continue;if(i(e))throw Error(`[regression-impact] Scoring error: ${e.subtype}`);let t=e.structured_output;if(t===void 0)throw Error(`[regression-impact] Scoring returned no structured_output`);return{scores:t.scores,costUsd:e.total_cost_usd,turns:e.num_turns,maxTurnsHit:e.num_turns>=a.HUNT_FIRST_SCORING_MAX_TURNS,tokens:o.extractCacheTokens(e)}}throw Error(`[regression-impact] Scoring stream ended without a result message`)}async function ly(e,t){if(e.length===0)return{scored:[],costUsd:0,turns:0,maxTurnsHit:!1,isScoringFailed:!1,tokens:o.ZERO_TOKENS};let r,i=!1;try{r=await cy(e,t)}catch(a){n.logger.info.defaultLog(`[regression-impact] Scoring call failed, retrying once: ${String(a)}`);try{r=await cy(e,t)}catch(e){i=!0,n.logger.info.defaultLog(`[regression-impact] Scoring retry also failed, falling back to NONE for all findings: ${String(e)}`)}}let a=new Map((r?.scores??[]).map(e=>[e.index,e]));return{scored:e.map((e,t)=>{let n=a.get(t);return n===void 0?{...e,severity:`NONE`}:{...e,severity:n.severity,verdictScore:n.verdictScore,verdictReason:n.verdictReason}}),costUsd:r?.costUsd??0,turns:r?.turns??0,maxTurnsHit:r?.maxTurnsHit??!1,isScoringFailed:i,tokens:r?.tokens??o.ZERO_TOKENS}}function uy(e){return e?[{label:`scoring — FAILED (all findings floored to NONE)`,costUsd:0,turns:0,maxTurnsHit:!1,maxBudgetHit:!1,tokens:o.ZERO_TOKENS}]:[]}var dy=class{name=`scoreFindings`;async execute(e){let t=dv(e),n=await ly(e.mergedHuntFindings??[],{rootPath:t,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl});e.scoredHuntFindings=n.scored;let r=uy(n.isScoringFailed);return{costUsd:n.costUsd,turns:n.turns,maxTurnsHit:n.maxTurnsHit,tokens:n.tokens,...r.length>0?{batches:r}:{}}}};let fy={create(){return new Y_([new av,new Cv,new oy,new zv,new kv,new Xv,new ay,new dy,new Fv,new vv,new cv])}};async function py(e,t,n,r,i,a,s,c){let l=Date.now(),u=t===`LOCAL`;o.setAgentLogEnabled(s?.agentLog??!1);let d={reportsDir:e,runType:t,isUncommitted:u,jwtToken:n,anthropicBaseUrl:r,apiService:i,globalConfigService:a,jobInput:s,compareBranch:c,startTime:l,stepMetrics:[]};if(await fy.create().run(d),d.result===void 0)throw Error(`[hunt-first-impact] pipeline finished without producing a result (ReportStep did not run)`);return d.result}function my(e){return I.default.join(e,`reports`,`mapping-cache`,`latest.mapping.json`)}function hy(e){return(0,y.existsSync)(my(e))}function gy(e){let t={};for(let[n,r]of e)t[n]=[...r];return t}function _y(e){return new Map(Object.entries(e).map(([e,t])=>[e,new Set(t)]))}function vy(e){let t={};if(e===void 0)return t;for(let[n,r]of e)t[n]=Object.fromEntries(r);return t}function yy(e){return new Map(Object.entries(e).map(([e,t])=>[e,new Map(Object.entries(t))]))}function by(e){let t=my(e);if((0,y.existsSync)(t))try{let e=JSON.parse((0,y.readFileSync)(t,`utf8`));if(e.version!==1){n.logger.info.defaultLog(`[regression-impact] Mapping cache at ${t} has unexpected version — ignoring.`);return}return n.logger.info.defaultLog(`[regression-impact] Mapping cache HIT — skipping mapping, loaded from ${t}`+(a.shouldLogDiagnostics?` (original mapping cost was $${e.costUsd.toFixed(4)} / ${e.turns} turns)`:``)),{flowFileMap:_y(e.flowFileMap),flowFileReasons:yy(e.flowFileReasons),costUsd:0,turns:0,maxTurnsHit:!1}}catch(e){n.logger.info.defaultLog(`[regression-impact] Failed to read mapping cache ${t}: ${String(e)}`);return}}function xy(e,t,r){let i=my(e);try{(0,y.mkdirSync)(I.default.dirname(i),{recursive:!0});let e={version:1,inputs:t,flowFileMap:gy(r.flowFileMap),flowFileReasons:vy(r.flowFileReasons),costUsd:r.costUsd,turns:r.turns,maxTurnsHit:r.maxTurnsHit};(0,y.writeFileSync)(i,JSON.stringify(e,null,2),`utf8`),n.logger.info.defaultLog(`[regression-impact] Mapping result cached → ${i}`)}catch(e){n.logger.info.defaultLog(`[regression-impact] Failed to write mapping cache ${i}: ${String(e)}`)}}function Sy(e,t,n,r,i,o=!1,s=!1,c=!1,l=!1,u=!1,d=!1){let f=[`agentic`,`agentic-ast`,`shallow`];if(i!==void 0&&!f.includes(i))throw Error(`[impact-pipeline] unsupported mapping strategy override "${i}" — only ${f.join(`, `)} are wired`);let p=a.REGRESSION_IMPACT_DEV_MAPPING_SNAPSHOT,m=p&&e!==void 0?hy(e):!1,h=[o&&`regression-first`,s&&`regression-first-2`,c&&`regression-first-3`,l&&`regression-first-2-adj`,u&&`regression-first-single`,d&&`regression-first-mono`].filter(e=>e!==!1);if(h.length>1)throw Error(`[impact-pipeline] regression-first variants are mutually exclusive but ${h.length} were set: ${h.join(`, `)}`);let g=n?.trim();return{baselineFromAnalysisId:g!==void 0&&g.length>0?g:void 0,mappingStrategy:i??a.REGRESSION_IMPACT_MAPPING_STRATEGY,deepMode:t??a.REGRESSION_IMPACT_DEEP_MODE,contractMode:r,pass2Grouped:a.REGRESSION_IMPACT_PASS2_GROUPED,skipPass1:a.REGRESSION_IMPACT_SKIP_PASS1,calibrationEnabled:a.REGRESSION_IMPACT_CALIBRATION_ENABLED,stopAfterMapping:a.REGRESSION_IMPACT_STOP_AFTER_MAPPING,stopAfterPass1:a.REGRESSION_IMPACT_STOP_AFTER_PASS1,residualRoughMap:a.REGRESSION_IMPACT_RESIDUAL_ROUGH_MAP,devMappingSnapshotResume:p&&m,devMappingSnapshotWrite:p&&!m,regressionFirst:o,regressionFirstV2:s,regressionFirstV3:c,regressionFirstV2Adj:l,regressionFirstSingle:u,regressionFirstMono:d}}function Cy(e,t){if(e===null)return{primarySource:t,dependencyRoots:[]};try{let t=Rm(e);return{primarySource:t.primarySource,dependencyRoots:t.dependencyRoots}}catch(e){return n.logger.info.defaultLog(`[regression-first] could not resolve project scope from job input — falling back to rootPath (${t}): ${String(e)}`),{primarySource:t,dependencyRoots:[]}}}function wy(e,t){return t.length===0?`## Relevant boundary
|
|
33845
33847
|
Primary source code (the project whose behavior you are judging): ${e}
|
|
33846
33848
|
Focus your reading on this path as the scope of the source code. Use your judgment on whether you need to look beyond it — e.g. to understand the project type, framework, or a library it depends on — to confirm a finding.`:`## Relevant boundary
|
|
33847
33849
|
Primary source code (the project whose behavior you are judging): ${e}
|
|
33848
33850
|
Relevant dependency source paths (shared code this project calls into — a change here can affect the project's behavior):
|
|
33849
33851
|
${t.map(e=>` - ${e.name??e.sourcePath}: ${e.sourcePath}`).join(`
|
|
33850
33852
|
`)}
|
|
33851
|
-
Focus your reading on these paths as the scope of the source code. Use your judgment on whether you need to look beyond them — e.g. to understand the project type, framework, or a library it depends on — to confirm a finding.`}function Ty(e){if(e===1||e===2||e===3||e===4)return e}function Ey(e){let t=e;return t===void 0||!Array.isArray(t.regressions)?[]:t.regressions.map(e=>{let t=e,n=typeof t.score==`number`?t.score:0;return{file:String(t.file??``),lines:t.lines,title:String(t.title??``),productBefore:String(t.productBefore??``),productAfter:String(t.productAfter??``),confidence:t.confidence??`low`,severity:t.severity??`LOW`,severityReason:String(t.severityReason??``),importance:t.importance??`LOW`,importanceReason:String(t.importanceReason??``),priority:n>=5?Ty(t.priority):void 0,score:n,reason:String(t.reason??``)}})}let Dy=`You review a code change and report REGRESSIONS and expected behavior changes in your assigned category. You are catalog-blind — you do not know product flows; score on the CODE's contract (is a guarantee the code relied on broken?).
|
|
33853
|
+
Focus your reading on these paths as the scope of the source code. Use your judgment on whether you need to look beyond them — e.g. to understand the project type, framework, or a library it depends on — to confirm a finding.`}function Ty(e){if(e===1||e===2||e===3||e===4)return e}function Ey(e){let t=e;return t===void 0||!Array.isArray(t.regressions)?[]:t.regressions.map(e=>{let t=e,n=typeof t.score==`number`?t.score:0;return{file:String(t.file??``),lines:t.lines,title:String(t.title??``),productBefore:String(t.productBefore??``),productAfter:String(t.productAfter??``),confidence:t.confidence??`low`,severity:t.severity??`LOW`,severityReason:String(t.severityReason??``),importance:t.importance??`LOW`,importanceReason:String(t.importanceReason??``),priority:n>=5?Ty(t.priority):void 0,score:n,reason:String(t.reason??``),needsConsumerVerification:t.needsConsumerVerification===!0,consumerVerificationReason:t.needsConsumerVerification===!0&&typeof t.consumerVerificationReason==`string`&&t.consumerVerificationReason.trim()||void 0}})}let Dy=`You review a code change and report REGRESSIONS and expected behavior changes in your assigned category. You are catalog-blind — you do not know product flows; score on the CODE's contract (is a guarantee the code relied on broken?).
|
|
33852
33854
|
|
|
33853
33855
|
A behavior change is any place the code can now produce a different observable outcome than before, on ANY path (error/partial/repeated/out-of-order, not just the happy one). Report both EXPECTED changes (score 3-4) and REGRESSIONS (7+).
|
|
33854
33856
|
|
|
@@ -33874,6 +33876,8 @@ When a change's effect depends on a CONSUMER (a caller / downstream reader), ope
|
|
|
33874
33876
|
- severity: LOW minor · MEDIUM some users adapt · HIGH behaves fundamentally differently · CRITICAL broken/blocked/wrong results.
|
|
33875
33877
|
- importance: LOW edge case · MEDIUM supporting · HIGH core daily functionality · CRITICAL revenue/auth/payments/data-integrity/security.
|
|
33876
33878
|
- priority (only when score >= 5): 1 fix now · 2 this release · 3 soon · 4 backlog.
|
|
33879
|
+
- needsConsumerVerification: TRUE only when the finding depends EXCLUSIVELY on a consumer OUTSIDE this repo — the change alters an external-facing contract AND you found NO reader inside this repo that is harmed, so there is NO in-repo regression and the ONLY possible victim is an out-of-repo consumer. The whole finding is then a HYPOTHESIS a cross-repo check must confirm — it is NOT a confirmed regression here. Set FALSE the moment you find ANY in-repo harmed reader: if the change breaks something inside this repo, that is a real in-repo regression — score it on that in-repo break and set FALSE, even if the same change ALSO affects an out-of-repo consumer (the confirmed in-repo harm is what you score; the consumer angle does not soften it). Also FALSE when there is no external contract surface. Default FALSE if unsure. (Downstream: a TRUE finding is forced to the uncertain band because nothing in-repo is broken; a FALSE finding keeps its score. So TRUE must mean "no in-repo harm" — never flag a confirmed in-repo regression TRUE.)
|
|
33880
|
+
- consumerVerificationReason: REQUIRED (one line) when needsConsumerVerification is true, omit/empty otherwise. Name the exact external surface the cross-repo check must confirm — which endpoint/route/status/response-field/exported-signature changed and what an out-of-repo consumer relies on. This is the check target the consumer team reads directly, so make it specific, not a restatement of your score.
|
|
33877
33881
|
|
|
33878
33882
|
## Output — one entry per behavior change YOU found in your category
|
|
33879
33883
|
{
|
|
@@ -33882,17 +33886,18 @@ When a change's effect depends on a CONSUMER (a caller / downstream reader), ope
|
|
|
33882
33886
|
"productBefore": "X", "productAfter": "Y", "confidence": "high|low",
|
|
33883
33887
|
"severity": "LOW|MEDIUM|HIGH|CRITICAL", "severityReason": "one sentence",
|
|
33884
33888
|
"importance": "LOW|MEDIUM|HIGH|CRITICAL", "importanceReason": "one sentence",
|
|
33885
|
-
"priority": 1, "score": 8, "
|
|
33889
|
+
"priority": 1, "score": 8, "needsConsumerVerification": false, "consumerVerificationReason": "",
|
|
33890
|
+
"reason": "X, Y, expected-or-regression, and what you verified" }
|
|
33886
33891
|
]
|
|
33887
33892
|
}
|
|
33888
|
-
Output JSON only. An empty regressions array is valid (your category has no changes).`;function Oy(e,t,n){let r=e.extraDirective===void 0?``:`\n\n${e.extraDirective}
|
|
33893
|
+
Output JSON only. An empty regressions array is valid (your category has no changes).`;function Oy(e,t,n){let r=e.extraDirective===void 0?``:`\n\n${e.extraDirective}`,i=e.coversAllCategories===!0?`Report EVERY in-scope behavior change you find across ALL your lenses. You are the ONLY reviewer for these categories — do NOT defer or drop a finding expecting another specialist to catch it (there is none, aside from product-intent, which covers only cross-flow reach).`:`Report ONLY changes in your category. Ignore changes that belong to other categories — other specialists cover those.`;return`${Dy}
|
|
33889
33894
|
|
|
33890
33895
|
${wy(t,n)}
|
|
33891
33896
|
|
|
33892
33897
|
## YOUR CATEGORY: ${e.name}
|
|
33893
33898
|
${e.focus}${r}
|
|
33894
33899
|
|
|
33895
|
-
|
|
33900
|
+
${i}`}function ky(e,t,n){let r=e.map(e=>{let t=e.extraDirective===void 0?``:`\n${e.extraDirective}`;return`### ${e.name}\n${e.focus}${t}`}).join(`
|
|
33896
33901
|
|
|
33897
33902
|
`);return`${Dy}
|
|
33898
33903
|
|
|
@@ -33905,10 +33910,10 @@ You are the ONLY reviewer. Apply EVERY lens below to the diff; a single change m
|
|
|
33905
33910
|
${r}
|
|
33906
33911
|
|
|
33907
33912
|
Emit ONE combined JSON regressions array covering every change you found across all lenses. Empty array is valid only if the diff is genuinely inert.`}function Ay(e,t,n,r,i){return{description:`Detects ${e.name} regressions/behavior changes in a code diff. ${e.focus}`,prompt:`## THE DIFF — this is the ONLY change you review
|
|
33908
|
-
The complete anchor→compare diff is below. This diff IS the change — it is exhaustive. Your job is to review THIS diff for
|
|
33913
|
+
The complete anchor→compare diff is below. This diff IS the change — it is exhaustive. Your job is to review THIS diff for regressions in YOUR assigned category (stated at the end of these instructions).
|
|
33909
33914
|
|
|
33910
33915
|
\`\`\`diff
|
|
33911
|
-
${a.capDiffForEmbed(t,a.REGRESSION_FIRST_DIFF_MAX_CHARS)}
|
|
33916
|
+
${a.capDiffForEmbed(t,e.diffMaxChars??a.REGRESSION_FIRST_DIFF_MAX_CHARS)}
|
|
33912
33917
|
\`\`\`
|
|
33913
33918
|
|
|
33914
33919
|
## Commit messages for this change (author intent)
|
|
@@ -33919,7 +33924,7 @@ ${n}
|
|
|
33919
33924
|
## Hard rules — read before you touch a tool
|
|
33920
33925
|
1. The diff above is COMPLETE. Do NOT run \`git diff\`, \`git show\`, or read the changed files to "see the change" — you already have every changed line. Reconstructing the diff yourself is forbidden and wastes the whole budget.
|
|
33921
33926
|
2. Your ONLY reason to use a tool (Read/Grep/Glob) is to open an EXTERNAL CONSUMER of a line that changed IN THIS DIFF — a caller or downstream reader NOT shown in the diff — to confirm whether a candidate actually breaks something. If you are not verifying a specific candidate from the diff, do not call a tool.
|
|
33922
|
-
3. Do NOT audit the repository for
|
|
33927
|
+
3. Do NOT audit the repository for your category's issues in general. You are reviewing a DIFF, not doing a codebase security/quality sweep. A problem that exists in unchanged code is OUT OF SCOPE.
|
|
33923
33928
|
4. If the diff contains NOTHING in your category, return { "regressions": [] } IMMEDIATELY with zero tool calls. An empty result is the correct, expected answer for most categories on most diffs — do NOT go looking for something to report.
|
|
33924
33929
|
|
|
33925
33930
|
${Oy(e,r,i)}
|
|
@@ -33949,12 +33954,26 @@ Rule 2/3/4 in the Hard rules above ("only open a consumer to verify a specific c
|
|
|
33949
33954
|
Your caller fan-out is bounded by a HARD tool-call limit. Ending WITHOUT the final JSON returns NOTHING — all your fan-out work is discarded and the panel proceeds as if product-intent found nothing. So:
|
|
33950
33955
|
- Do the fan-out FIRST and FAST: one grep per changed symbol to list callers, then at most one Read per caller you actually need to judge. Do NOT re-grep the same symbol, re-read the same file, or run simulations (\`python3 -c …\`) — decide from what you read.
|
|
33951
33956
|
- When you have used HALF your tool budget, STOP investigating and START writing. Score any caller you could not finish tracing as 5-6 / confidence "low" and say so in \`reason\` — a 5-6 you emitted beats a 9 you never returned.
|
|
33952
|
-
- The FINAL message MUST be the JSON regressions array. Never end mid-investigation ("Now let me check …"). If in doubt whether you have budget for one more tool call, you do not — emit now.`},Ny=[...jy,My],Py
|
|
33953
|
-
`):
|
|
33957
|
+
- The FINAL message MUST be the JSON regressions array. Never end mid-investigation ("Now let me check …"). If in doubt whether you have budget for one more tool call, you do not — emit now.`},Ny=[...jy,My],Py=jy.map(e=>`- ${e.name}: ${e.focus}`).join(`
|
|
33958
|
+
`),Fy=[{name:`generalist`,coversAllCategories:!0,maxTurns:a.REGRESSION_FIRST_GENERALIST_MAX_TURNS,focus:`You are the GENERALIST reviewer — the single seat responsible for EVERY in-scope behavior change in the diff across all of these lenses, applied together:
|
|
33959
|
+
${Py}
|
|
33960
|
+
|
|
33961
|
+
Apply EVERY lens to each change; a single change may match more than one (report it once, under its most-fitting angle via the \`title\`). Do NOT skip a lens because a change "feels like" another's. When you look up a changed symbol's consumers (grep), reuse that result across every lens — do NOT re-grep the same symbol per lens.
|
|
33962
|
+
|
|
33963
|
+
You do NOT own cross-flow / intent-scope reach — a separate product-intent specialist in this same panel enumerates un-named callers. Do not spend your budget fanning out to every caller of a shared symbol; verify the specific consumers YOUR candidates depend on, and leave the "does this reach callers the commit never mentioned" question to product-intent.
|
|
33964
|
+
|
|
33965
|
+
## BUDGET — emitting your JSON is NON-NEGOTIABLE (read this last, obey it first)
|
|
33966
|
+
You cover six lenses over the whole diff, so there is always more you COULD read. Reading until you run dry overflows your context and returns NOTHING — the panel then proceeds as if you found nothing. So:
|
|
33967
|
+
- Do a FAST first pass: identify every candidate change across all six lenses from the diff you already have, BEFORE opening any consumer. Only then verify specific candidates.
|
|
33968
|
+
- When you have used ~HALF your tool-call budget, STOP investigating and START writing. Do NOT open another file after that point.
|
|
33969
|
+
- Score any candidate you could not finish verifying as 5-6 / confidence "low" and say so in \`reason\` — a 5-6 you emitted beats a 9 you never returned.
|
|
33970
|
+
- Do NOT re-read the same file or re-grep the same symbol; decide from what you read.
|
|
33971
|
+
- The FINAL message MUST be the JSON regressions array. Never end mid-investigation ("Now let me check …"). If in doubt whether you have budget for one more tool call, you do not — emit now.`,diffMaxChars:a.REGRESSION_FIRST_SINGLE_PANEL_DIFF_MAX_CHARS},{...My,diffMaxChars:a.REGRESSION_FIRST_SINGLE_PANEL_DIFF_MAX_CHARS}],Iy=`subagent-logs`;function Ly(){return I.default.join(a.REGRESSION_DEV_ARTIFACT_DIR,Iy)}function Ry(e){let t=e,n=typeof t.subagent_type==`string`&&t.subagent_type.length>0?t.subagent_type:void 0;return n===void 0?t.parent_tool_use_id===null||t.parent_tool_use_id===void 0?`orchestrator`:`subagent`:n}function zy(){return new Date().toISOString()}let By=new Map;function Vy(e){if(!a.REGRESSION_FIRST_LOG_SUBAGENTS)return;By.clear(),Iy=e===void 0?`subagent-logs`:`subagent-logs-${e}`;let t=Ly();try{e===void 0&&(0,y.rmSync)(t,{recursive:!0,force:!0})}catch{}(0,y.mkdirSync)(t,{recursive:!0})}function Hy(e){if(!a.REGRESSION_FIRST_LOG_SUBAGENTS)return;let t=`subagent-logs-${e}`;if(t===Iy)return;let n=Ly(),r=I.default.join(a.REGRESSION_DEV_ARTIFACT_DIR,t);try{(0,y.renameSync)(n,r),Iy=t}catch{}}function Uy(e,t){if(!a.REGRESSION_FIRST_LOG_SUBAGENTS)return;let n=Ly(),r=I.default.join(n,`${e}.log`),i=`[${zy()}] ===== SYSTEM PROMPT (${t.length} chars) =====\n${t}\n[${zy()}] ===== END SYSTEM PROMPT =====\n`;try{(0,y.mkdirSync)(n,{recursive:!0}),(0,y.appendFileSync)(r,i)}catch{}}function Wy(e){if(String(e.type??``)!==`tool_use`)return;let t=String(e.name??``);if(t!==`Agent`&&t!==`Task`)return;let n=typeof e.id==`string`?e.id:void 0,r=e.input,i=typeof r?.subagent_type==`string`?r.subagent_type:void 0;n!==void 0&&i!==void 0&&By.set(n,i)}function Gy(e){let t=e.content;return typeof t==`string`?t:Array.isArray(t)?t.map(e=>{let t=e;return typeof t.text==`string`?t.text:JSON.stringify(e)}).join(`
|
|
33972
|
+
`):t===void 0?``:JSON.stringify(t)}function Ky(e,t){let n=typeof t.tool_use_id==`string`?t.tool_use_id:void 0;if(n===void 0)return;let r=By.get(n);if(r===void 0)return;let i=I.default.join(e,`${r}.response.log`),a=`[${zy()}] ===== RESPONSE from ${r} =====\n${Gy(t)}\n[${zy()}] ===== END RESPONSE =====\n`;try{(0,y.appendFileSync)(i,a)}catch{}}function qy(e,t){if(!a.REGRESSION_FIRST_LOG_SUBAGENTS||t===void 0||t.length===0)return;let n=Ly(),r=I.default.join(n,`${Ry(e)}.log`),i=[];for(let e of t){let t=e,r=String(t.type??``);if(Wy(t),r===`tool_use`){let e=String(t.name??``),n=t.input===void 0?``:JSON.stringify(t.input);i.push(`[${zy()}] TOOL ${e} ${n}`)}else r===`text`&&typeof t.text==`string`&&t.text.trim().length>0?i.push(`[${zy()}] TEXT ${t.text}`):r===`tool_result`&&Ky(n,t)}try{(0,y.mkdirSync)(n,{recursive:!0}),i.length>0&&(0,y.appendFileSync)(r,i.join(`
|
|
33954
33973
|
`)+`
|
|
33955
|
-
`)}catch{}}function
|
|
33956
|
-
PRODUCT-INTENT VETO (scoped — applies ONLY to the product-intent agent): The product-intent agent hunts CROSS-CALLER regressions — a change that is correct for the flow the commit names but silently alters a DIFFERENT caller/flow the commit never mentioned. It is the ONLY agent that
|
|
33957
|
-
`:``,
|
|
33974
|
+
`)}catch{}}function Jy(e){return(e.title??``).endsWith(`no parseable output — not reconciled`)}function Yy(e,t){return`${e.slice(0,8).replaceAll(/[^a-zA-Z0-9_-]/g,`_`)}-${t.toUpperCase()}-${new Date().toISOString().slice(0,19).replaceAll(`:`,`-`)}`}let Xy={type:`object`,additionalProperties:!1,required:[`regressions`],properties:{regressions:{type:`array`,items:{type:`object`}}}};function Zy(e,t,n,r){let i=e.map(e=>e.name).join(`, `),a=e.length,o=t===`v2`||t===`single`,s=o?`
|
|
33975
|
+
PRODUCT-INTENT VETO (scoped — applies ONLY to the product-intent agent): The product-intent agent hunts CROSS-CALLER regressions — a change that is correct for the flow the commit names but silently alters a DIFFERENT caller/flow the commit never mentioned. It is the ONLY agent that fans out UPSTREAM to enumerate the callers of a changed symbol; every other agent scores the change from the diff (and at most the specific consumers of its own candidate), so when another agent scores such a change EXPECTED it is blind to the un-named caller, not disagreeing about it. THEREFORE: when product-intent scores a change >= 5 AND names a SPECIFIC un-mentioned caller/flow plus a CONCRETE wrong outcome there, you may NOT lower that score just because another agent scored it EXPECTED — that "safe" vote is not evidence about the caller product-intent alone examined. You may lower it ONLY by citing your own evidence that the named caller is in fact fine. This veto does NOT apply to product-intent findings that score <= 4, or that are vague (no named caller / no concrete wrong outcome) — those are ordinary votes you judge normally like any other agent.
|
|
33976
|
+
`:``,c=o?`
|
|
33958
33977
|
OMIT NO-OPS: Do NOT include any finding you judge to be a score-1-2 no-op (rename/reformat/import-reorder/log-reword with byte-identical behavior) in the final list. The specialists still report them so you can see they checked, but you drop them from your emitted output. Keep everything scored 3+.
|
|
33959
33978
|
`:``;return`You orchestrate a regression review by delegating to ${a} specialist sub-agents, then JUDGING their findings into one calibrated list. You do NOT analyze the diff yourself — the specialists do that.
|
|
33960
33979
|
|
|
@@ -33967,10 +33986,10 @@ ${wy(n,r)}
|
|
|
33967
33986
|
MISSING OUTPUT — never silently drop an agent, and NEVER re-query: an agent that runs long (especially product-intent, which fans out to callers) may end mid-investigation with NO JSON, or an empty/cut-off response. Each agent emits its findings as ONE final \`{ "regressions": [...] }\` block — there is no partial JSON to recover, so if that final block is absent the agent produced nothing usable for this run. Do NOT re-spawn, re-invoke, or re-query ANY agent for ANY reason — each agent runs EXACTLY ONCE. For any agent whose output is missing, truncated, or non-JSON, emit ONE finding whose title is exactly "<that agent's name>: no parseable output — not reconciled" (substitute the name of the agent that actually failed — NOT a fixed example) at score 1, so the drop is VISIBLE and points triage at the RIGHT agent, never silent. You must account for all ${a} agents WITHOUT re-running any of them.
|
|
33968
33987
|
3. RECONCILE into ONE list, then JUDGE the score of each. Two rules, kept separate:
|
|
33969
33988
|
|
|
33970
|
-
RECALL (never lose a finding): Include EVERY distinct change any agent reported. Group only EXACT duplicates — two agents describing the SAME change at the same file+lines/symbol — into one entry. If in doubt whether two are the same change, KEEP BOTH. You may never drop, summarize, or soften a finding out of existence.
|
|
33989
|
+
RECALL (never lose a finding): Include EVERY distinct change any agent reported. Group only EXACT duplicates — two agents describing the SAME change at the same file+lines/symbol — into one entry. If in doubt whether two are the same change, KEEP BOTH. You may never drop, summarize, or soften a finding out of existence. When you group duplicates, carry \`needsConsumerVerification\` as the OR of the grouped entries — if ANY agent set it true, the merged finding keeps it true (never lose the "needs a cross-repo consumer check" signal on merge) — and carry the \`consumerVerificationReason\` from whichever grouped entry set the flag true.
|
|
33971
33990
|
|
|
33972
|
-
JUDGE (assign the final score): For each grouped change, you receive one OR MORE scores from the agents that flagged it, EACH WITH ITS \`reason\`. Read every agent's score and its reasoning, then decide the score YOU find most defensible. Do NOT default to the highest — a high score only wins if its reasoning actually holds up against the others; a well-argued majority beats a lone outlier whose rationale is thin or assumed, and a lone score wins only when its reasoning is clearly the strongest. Same rubric the agents used: 1-2 no-op · 3-4 real+expected+safe · 5-6 real but intent/safety unestablished · 7-8 likely regression · 9-10 almost certainly a regression. Set \`score\` (and severity/priority to match) to your judged value, keep the finding's descriptive fields, and when you override an agent's score, say why in \`reason\`.${
|
|
33973
|
-
4. Emit the judged list as the final structured output.
|
|
33991
|
+
JUDGE (assign the final score): For each grouped change, you receive one OR MORE scores from the agents that flagged it, EACH WITH ITS \`reason\`. Read every agent's score and its reasoning, then decide the score YOU find most defensible. Do NOT default to the highest — a high score only wins if its reasoning actually holds up against the others; a well-argued majority beats a lone outlier whose rationale is thin or assumed, and a lone score wins only when its reasoning is clearly the strongest. Same rubric the agents used: 1-2 no-op · 3-4 real+expected+safe · 5-6 real but intent/safety unestablished · 7-8 likely regression · 9-10 almost certainly a regression. Set \`score\` (and severity/priority to match) to your judged value, keep the finding's descriptive fields, and when you override an agent's score, say why in \`reason\`.${s}${c}
|
|
33992
|
+
4. Emit the judged list as the final structured output. On EVERY finding you MUST emit \`needsConsumerVerification\` (carried as the OR of the grouped agents' values — true if ANY agent set it true), and when it is true emit the \`consumerVerificationReason\` from the agent that set it. Never omit these fields from the output object, even when reasoning about the flag in prose — the value only counts if it is in the emitted JSON.
|
|
33974
33993
|
|
|
33975
33994
|
You are catalog-blind — do not reason about product flows.
|
|
33976
33995
|
|
|
@@ -33981,10 +34000,10 @@ You are catalog-blind — do not reason about product flows.
|
|
|
33981
34000
|
"productBefore": "X", "productAfter": "Y", "confidence": "high|low",
|
|
33982
34001
|
"severity": "LOW|MEDIUM|HIGH|CRITICAL", "severityReason": "one sentence",
|
|
33983
34002
|
"importance": "LOW|MEDIUM|HIGH|CRITICAL", "importanceReason": "one sentence",
|
|
33984
|
-
"priority": 1, "score": 8, "reason": "..." }
|
|
34003
|
+
"priority": 1, "score": 8, "needsConsumerVerification": false, "consumerVerificationReason": "", "reason": "..." }
|
|
33985
34004
|
]
|
|
33986
34005
|
}
|
|
33987
|
-
Output JSON only.`}function
|
|
34006
|
+
Output JSON only.`}function Qy(e,t){if(typeof t!=`object`||!t)return;let n=t;if(n.type!==`assistant`)return;let r=n.subagent_type;if(typeof r!=`string`||r.length===0)return;let i=e.get(r)??{turns:0,cacheReadTokens:0,cacheCreationTokens:0,inputTokens:0,outputTokens:0};i.turns+=1;let a=n.message?.usage;if(typeof a==`object`&&a){let e=a;i.cacheReadTokens+=typeof e.cache_read_input_tokens==`number`?e.cache_read_input_tokens:0,i.cacheCreationTokens+=typeof e.cache_creation_input_tokens==`number`?e.cache_creation_input_tokens:0,i.inputTokens+=typeof e.input_tokens==`number`?e.input_tokens:0,i.outputTokens+=typeof e.output_tokens==`number`?e.output_tokens:0}e.set(r,i)}function $y(e){return[...e.entries()].map(([e,t])=>({label:e,costUsd:0,turns:t.turns,maxTurnsHit:!1,maxBudgetHit:!1,tokens:{cacheReadTokens:t.cacheReadTokens,cacheCreationTokens:t.cacheCreationTokens,inputTokens:t.inputTokens,outputTokens:t.outputTokens}}))}function eb(e){return`Run a catalog-blind regression review by delegating to these specialist agents:
|
|
33988
34007
|
${e.map(e=>`- ${e.name}`).join(`
|
|
33989
34008
|
`)}
|
|
33990
34009
|
|
|
@@ -33992,8 +34011,8 @@ Each agent ALREADY HAS THE FULL DIFF embedded in its own instructions. Do NOT gi
|
|
|
33992
34011
|
|
|
33993
34012
|
"Review the diff in your instructions and return your category's regressions as JSON."
|
|
33994
34013
|
|
|
33995
|
-
Then reconcile ALL their findings into one list and JUDGE each score: include every distinct finding (group only exact same-change duplicates), and for each, weigh the agents' reasons to assign the single most defensible score — do not just take the highest. Emit the judged list.`}function
|
|
33996
|
-
`)}}});o.logAgentCwd(u,e.rootPath);let h=0,g=new Map;for await(let e of m){if(!s(e)){let t=l(e);t!==void 0&&t.length>0&&(h++,o.logAgentActivity(u,h,t),
|
|
34014
|
+
Then reconcile ALL their findings into one list and JUDGE each score: include every distinct finding (group only exact same-change duplicates), and for each, weigh the agents' reasons to assign the single most defensible score — do not just take the highest. Emit the judged list.`}function tb(e,t,n,r,i){let a={};for(let o of e)a[o.name]=Ay(o,t,n,r,i);return a}async function nb(e){let t=e.variant??`v1`;return Vy(Yy(e.compareRef,t)),t===`v2`?rb(e,Ny,`v2`):t===`mono`?ib(e):t===`single`?rb(e,Fy,`single`):rb(e,jy,`v1`)}async function rb(e,t,r){let{query:i,isResultMessage:s,isErrorResult:c,getMessageContentBlocks:l}=await Promise.resolve().then(()=>lz()),u=`regression-detect-orchestrator`;n.logger.info.defaultLog(`[regression-first] Detect (${r}): orchestrator spawning ${t.length} category sub-agents over ${e.anchorRef}...${e.compareRef}`);let d=tb(t,e.diffText,e.commitMessagesBlock,e.primarySource,e.dependencyRoots),f=Zy(t,r,e.primarySource,e.dependencyRoots),p=eb(t);Uy(`orchestrator`,`${f}\n\n----- USER PROMPT -----\n${p}`);for(let[e,t]of Object.entries(d))Uy(e,t.prompt);let m=i({prompt:p,options:{model:a.REGRESSION_FIRST_MODEL,systemPrompt:f,agents:d,allowedTools:[`Agent`,`Task`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_FIRST_MAX_BUDGET_USD,maxTurns:a.REGRESSION_FIRST_MAX_TURNS,cwd:e.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:Xy},env:{...process.env,ANTHROPIC_BASE_URL:e.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:e.jwtToken??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34015
|
+
`)}}});o.logAgentCwd(u,e.rootPath);let h=0,g=new Map;for await(let e of m){if(!s(e)){let t=l(e);t!==void 0&&t.length>0&&(h++,o.logAgentActivity(u,h,t),qy(e,t)),Qy(g,e);continue}if(c(e))return n.logger.info.defaultLog(`[regression-first] detect orchestrator error: ${e.subtype} — cost=$${e.total_cost_usd.toFixed(4)}, turns=${e.num_turns}`),{regressions:[],costUsd:e.total_cost_usd,turns:h,maxTurnsHit:e.subtype===`error_max_turns`,tokens:o.extractCacheTokens(e),errorSubtype:e.subtype,subAgentMetrics:$y(g)};let t=Ey(e.structured_output),r=o.extractCacheTokens(e);return n.logger.info.defaultLog(`[regression-first] Detect done: ${t.length} finding(s) after aggregation`),{regressions:t,costUsd:e.total_cost_usd,turns:h,maxTurnsHit:e.num_turns>=a.REGRESSION_FIRST_MAX_TURNS,tokens:r,subAgentMetrics:$y(g)}}return{regressions:[],costUsd:0,turns:0,maxTurnsHit:!1,tokens:{inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0}}}async function ib(e){let{query:t,isResultMessage:r,isErrorResult:i,getMessageContentBlocks:s}=await Promise.resolve().then(()=>lz()),c=`regression-detect-single`,l=ky(Ny,e.primarySource,e.dependencyRoots),u=`## THE DIFF — this is the ONLY change you review
|
|
33997
34016
|
The complete anchor→compare diff is below (anchor ${e.anchorRef.slice(0,8)} → compare ${e.compareRef.slice(0,8)}). This diff IS the change — it is exhaustive. Review it for regressions across ALL category lenses.
|
|
33998
34017
|
|
|
33999
34018
|
\`\`\`diff
|
|
@@ -34002,10 +34021,10 @@ ${a.capDiffForEmbed(e.diffText,a.REGRESSION_FIRST_DIFF_MAX_CHARS)}
|
|
|
34002
34021
|
|
|
34003
34022
|
${e.commitMessagesBlock}
|
|
34004
34023
|
|
|
34005
|
-
Emit your combined JSON regressions array now.`;n.logger.info.defaultLog(`[regression-first] Detect (single): ONE agent over all 7 lenses, ${e.anchorRef.slice(0,8)}...${e.compareRef.slice(0,8)}`),
|
|
34006
|
-
`)}}});o.logAgentCwd(c,e.rootPath);let f=0;for await(let e of d){if(!r(e)){let t=s(e);t!==void 0&&t.length>0&&(f++,o.logAgentActivity(c,f,t),
|
|
34024
|
+
Emit your combined JSON regressions array now.`;n.logger.info.defaultLog(`[regression-first] Detect (single): ONE agent over all 7 lenses, ${e.anchorRef.slice(0,8)}...${e.compareRef.slice(0,8)}`),Uy(`single`,`${l}\n\n----- USER PROMPT -----\n${u}`);let d=t({prompt:u,options:{model:a.REGRESSION_FIRST_MODEL,systemPrompt:l,allowedTools:[`Read`,`Grep`,`Glob`,`Bash`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_FIRST_MAX_BUDGET_USD,maxTurns:a.REGRESSION_FIRST_MAX_TURNS,cwd:e.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:Xy},env:{...process.env,ANTHROPIC_BASE_URL:e.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:e.jwtToken??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34025
|
+
`)}}});o.logAgentCwd(c,e.rootPath);let f=0;for await(let e of d){if(!r(e)){let t=s(e);t!==void 0&&t.length>0&&(f++,o.logAgentActivity(c,f,t),qy(e,t));continue}if(i(e))return n.logger.info.defaultLog(`[regression-first] detect single-agent error: ${e.subtype} — cost=$${e.total_cost_usd.toFixed(4)}, turns=${e.num_turns}`),{regressions:[],costUsd:e.total_cost_usd,turns:f,maxTurnsHit:e.subtype===`error_max_turns`,tokens:o.extractCacheTokens(e),errorSubtype:e.subtype};let t=Ey(e.structured_output).filter(e=>e.score>=3);return n.logger.info.defaultLog(`[regression-first] Detect done (single): ${t.length} finding(s)`),{regressions:t,costUsd:e.total_cost_usd,turns:f,maxTurnsHit:e.num_turns>=a.REGRESSION_FIRST_MAX_TURNS,tokens:o.extractCacheTokens(e)}}return{regressions:[],costUsd:0,turns:0,maxTurnsHit:!1,tokens:{inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0}}}function ab(e){return e.map((e,t)=>{let n=e.lines===void 0?e.file:`${e.file}:${e.lines}`;return`${t+1}. [score ${e.score}] ${n} — ${e.title}\n before: ${e.productBefore}\n after: ${e.productAfter}\n reason: ${e.reason}`}).join(`
|
|
34007
34026
|
|
|
34008
|
-
`)}function
|
|
34027
|
+
`)}function ob(e,t){return`You are the product-intent adjudicator — the FINAL stage of a catalog-blind regression review. Six specialist agents already reviewed the diff and produced the JUDGED findings you are given. Your job is TWO things, both via CALLER FAN-OUT:
|
|
34009
34028
|
|
|
34010
34029
|
${wy(e,t)}
|
|
34011
34030
|
|
|
@@ -34022,10 +34041,11 @@ ${wy(e,t)}
|
|
|
34022
34041
|
- Emit the FINAL merged list: every given finding (with your adjusted score + updated reason citing caller evidence) PLUS any new cross-caller findings you discovered. Do NOT drop a given finding — if you couldn't verify it, keep its original score.
|
|
34023
34042
|
- Do NOT emit score-1-2 no-ops. If a given finding is 1-2, drop it.
|
|
34024
34043
|
- Scoring: 1-2 no-op (drop) · 3-4 real+verified-safe · 5-6 real, consumers unverified · 7-8 confirmed breaking caller · 9-10 confirmed breaking caller on a critical/data/auth path.
|
|
34044
|
+
- needsConsumerVerification: each given finding carries this flag (and a \`consumerVerificationReason\` when true). You READ callers, so resolve it: if you CONFIRMED an in-repo harmed caller, set it FALSE and clear the reason; if all in-repo callers TOLERATE the change and there is no external contract surface, set it FALSE; if the only possible victim is OUT OF REPO (an external client/service) and you could not verify it here, KEEP it TRUE and keep/refine \`consumerVerificationReason\` naming the external surface a cross-repo check must confirm. Emit \`needsConsumerVerification\` on EVERY finding, and \`consumerVerificationReason\` whenever it is true — never omit them from the output object.
|
|
34025
34045
|
|
|
34026
34046
|
## Output
|
|
34027
|
-
{ "regressions": [ { "file": "path", "lines": "L120", "title": "3-6 words", "productBefore": "X", "productAfter": "Y", "confidence": "high|low", "severity": "LOW|MEDIUM|HIGH|CRITICAL", "severityReason": "one sentence", "importance": "LOW|MEDIUM|HIGH|CRITICAL", "importanceReason": "one sentence", "priority": 1, "score": 8, "reason": "the caller evidence you found and how it set the score" } ] }
|
|
34028
|
-
Output JSON only.`}function
|
|
34047
|
+
{ "regressions": [ { "file": "path", "lines": "L120", "title": "3-6 words", "productBefore": "X", "productAfter": "Y", "confidence": "high|low", "severity": "LOW|MEDIUM|HIGH|CRITICAL", "severityReason": "one sentence", "importance": "LOW|MEDIUM|HIGH|CRITICAL", "importanceReason": "one sentence", "priority": 1, "score": 8, "needsConsumerVerification": false, "consumerVerificationReason": "", "reason": "the caller evidence you found and how it set the score" } ] }
|
|
34048
|
+
Output JSON only.`}function sb(e,t,n,r){return`Verify + extend the regression findings below by checking the ACTUAL CALLERS of the changed code.
|
|
34029
34049
|
|
|
34030
34050
|
- anchor: ${e}
|
|
34031
34051
|
- compare: ${t}
|
|
@@ -34039,10 +34059,10 @@ git --no-pager diff ${e}...${t}
|
|
|
34039
34059
|
${n}
|
|
34040
34060
|
|
|
34041
34061
|
## The six agents' judged findings (verify each; adjust score with caller evidence)
|
|
34042
|
-
${
|
|
34062
|
+
${ab(r)}
|
|
34043
34063
|
|
|
34044
|
-
For each finding whose grade depends on consumers, grep for the callers of the changed symbol/endpoint/field and read them. Confirm, downgrade, or leave-unverified with a cited reason. Then add any cross-caller regressions the six missed. Emit the FINAL merged JSON list (drop 1-2 no-ops).`}function
|
|
34045
|
-
`)}}});o.logAgentCwd(l,e.rootPath);let p=0;for await(let e of f){if(!i(e)){let t=c(e);t!==void 0&&t.length>0&&(p++,o.logAgentActivity(l,p,t),
|
|
34064
|
+
For each finding whose grade depends on consumers, grep for the callers of the changed symbol/endpoint/field and read them. Confirm, downgrade, or leave-unverified with a cited reason. Then add any cross-caller regressions the six missed. Emit the FINAL merged JSON list (drop 1-2 no-ops).`}function cb(e,t,n){let r=t.findIndex((t,r)=>!n.has(r)&&t.file===e.file&&(t.lines??``)===(e.lines??``));if(r!==-1)return{index:r,finding:t[r]};let i=t.map((e,t)=>({p:e,i:t})).filter(({p:t,i:r})=>!n.has(r)&&t.file===e.file);if(i.length===1)return{index:i[0].i,finding:i[0].p}}function lb(e,t,r=`product-intent`){let i=new Set,a=0,o=0,s=0,c=0;n.logger.info.defaultLog(`[regression-first] Verdict calibration (${r} over ${e.length} finding(s)):`);for(let r of t){let t=cb(r,e,i),l=r.lines===void 0?r.file:`${r.file}:${r.lines}`;if(t===void 0){c++,n.logger.info.defaultLog(`[regression-first] DISCOVERED ${r.score} ${l} — ${r.title}`);continue}i.add(t.index);let u=t.finding.score;r.score>u?(a++,n.logger.info.defaultLog(`[regression-first] RAISED ${u} → ${r.score} ${l} — ${r.title}`)):r.score<u?(o++,n.logger.info.defaultLog(`[regression-first] LOWERED ${u} → ${r.score} ${l} — ${r.title}`)):(s++,n.logger.info.defaultLog(`[regression-first] unchanged ${r.score} ${l} — ${r.title}`))}let l=0;for(let[t,r]of e.entries()){if(i.has(t))continue;l++;let e=r.lines===void 0?r.file:`${r.file}:${r.lines}`;n.logger.info.defaultLog(`[regression-first] DROPPED ${r.score} ${e} — ${r.title}`)}n.logger.info.defaultLog(`[regression-first] Calibration summary: ${a} raised, ${o} lowered, ${s} unchanged, ${c} discovered, ${l} dropped`)}async function ub(e,t){let{query:r,isResultMessage:i,isErrorResult:s,getMessageContentBlocks:c}=await Promise.resolve().then(()=>lz()),l=`regression-detect-product-intent-verify`,u=ob(e.primarySource,e.dependencyRoots),d=sb(e.anchorRef,e.compareRef,e.commitMessagesBlock,t);n.logger.info.defaultLog(`[regression-first] Detect (v3): product-intent verify pass over ${t.length} phase-1 finding(s)`),Uy(`product-intent-verify`,`${u}\n\n----- USER PROMPT -----\n${d}`);let f=r({prompt:d,options:{model:a.REGRESSION_FIRST_MODEL,systemPrompt:u,allowedTools:[`Read`,`Grep`,`Glob`,`Bash`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_FIRST_MAX_BUDGET_USD,maxTurns:a.REGRESSION_FIRST_MAX_TURNS,cwd:e.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:Xy},env:{...process.env,ANTHROPIC_BASE_URL:e.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:e.jwtToken??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34065
|
+
`)}}});o.logAgentCwd(l,e.rootPath);let p=0;for await(let e of f){if(!i(e)){let t=c(e);t!==void 0&&t.length>0&&(p++,o.logAgentActivity(l,p,t),qy(e,t));continue}if(s(e))return n.logger.info.defaultLog(`[regression-first] product-intent verify error: ${e.subtype} — keeping phase-1 findings`),{regressions:t.filter(e=>e.score>=3),costUsd:e.total_cost_usd,turns:p,maxTurnsHit:e.subtype===`error_max_turns`,tokens:o.extractCacheTokens(e)};let r=Ey(e.structured_output),u=(r.length>0?r:t).filter(e=>e.score>=3);return r.length>0&&lb(t,u),n.logger.info.defaultLog(`[regression-first] Detect done (v3): ${u.length} finding(s) after product-intent verify`),{regressions:u,costUsd:e.total_cost_usd,turns:p,maxTurnsHit:e.num_turns>=a.REGRESSION_FIRST_MAX_TURNS,tokens:o.extractCacheTokens(e)}}return{regressions:t.filter(e=>e.score>=3),costUsd:0,turns:0,maxTurnsHit:!1,tokens:{inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0}}}function db(e){return e>=7&&e<=10}function fb(e,t){return`You are the ADJUDICATOR — a focused second pass over a catalog-blind regression review. A first pass of specialist agents scored every change, but they were FORBIDDEN to read the anchor — they saw only the diff, so they scored the MECHANISM they could see, not the NET effect against the previous code. You are given ONLY the findings they scored HIGH (7-10 — "likely" or "near-certain" regressions). Your job: re-score each on the NET observable effect vs the anchor — confirm the ones that are truly regressions, and deflate the ones where the first pass over-called a mechanism that harms no one.
|
|
34046
34066
|
|
|
34047
34067
|
${wy(e,t)}
|
|
34048
34068
|
|
|
@@ -34064,7 +34084,14 @@ The first pass saw only the diff (the + / - lines). That is NOT enough to know a
|
|
|
34064
34084
|
• the column/field itself — is it nullable / does the schema tolerate the new value? (a nullable Integer column accepts None with no error)
|
|
34065
34085
|
• serializers / to_dict / GET endpoints — do they pass the value through (null → null, no crash) or do arithmetic/int() on it?
|
|
34066
34086
|
• queries / joins / comparisons — a SQL \`col = x\` with a NULL simply fails to match (row omitted), it does not crash.
|
|
34067
|
-
If EVERY in-repo reader tolerates the new value (nullable column, raw serialization, null-safe query), the write is NOT a regression — score 3-5, because nothing is harmed. Only score 7+ when a specific reader CRASHES, CORRUPTS, or produces a wrong result on the new value — name that reader and what breaks. If the only unknown reader is OUT OF REPO (a frontend), do NOT chase it:
|
|
34087
|
+
If EVERY in-repo reader tolerates the new value (nullable column, raw serialization, null-safe query), the write is NOT a regression — score 3-5, because nothing is harmed. Only score 7+ when a specific reader CRASHES, CORRUPTS, or produces a wrong result on the new value — name that reader and what breaks. If the only unknown reader is OUT OF REPO (a frontend/external client) AND no in-repo reader is harmed, do NOT chase it: SET \`needsConsumerVerification\` = true and put a one-line \`consumerVerificationReason\` naming the external surface a cross-repo check must confirm. TRUE means there is NO in-repo regression — the finding is a pure out-of-repo hypothesis (downstream forces it to the uncertain band). If ANY in-repo reader IS harmed, that is a real in-repo regression: score it on that break and set \`needsConsumerVerification\` = false, even when the change also touches an out-of-repo consumer.
|
|
34088
|
+
|
|
34089
|
+
## needsConsumerVerification — preserve or resolve it, never silently drop it
|
|
34090
|
+
Every finding you receive carries a \`needsConsumerVerification\` flag (and, when true, a \`consumerVerificationReason\`) from the first pass. You are the one step that can READ consumers, so resolve it against the in-repo evidence:
|
|
34091
|
+
- You CONFIRMED an in-repo harmed reader → set it FALSE (now verified in-repo, no cross-repo check needed); clear \`consumerVerificationReason\`.
|
|
34092
|
+
- You confirmed all in-repo readers TOLERATE the change AND there is no external contract surface → set it FALSE; clear \`consumerVerificationReason\`.
|
|
34093
|
+
- The only possible victim is OUT OF REPO (external client/service) and you could not verify it in-repo → KEEP it TRUE and KEEP/refine \`consumerVerificationReason\` (name the endpoint/field/signature the external consumer relies on). Never clear it to false just because you deflated the score; a deflated score with an unverified external consumer must stay flagged so the cross-repo check still happens.
|
|
34094
|
+
Emit \`needsConsumerVerification\` on every finding, and \`consumerVerificationReason\` whenever it is true.
|
|
34068
34095
|
|
|
34069
34096
|
Then apply these rules, in order:
|
|
34070
34097
|
- ANCHOR ALREADY FAILED HERE -> NOT A NEW REGRESSION. If the anchor produced the same crash / None / empty result / wrong value on the same input, the change merely RELOCATES a pre-existing failure. Score 3-4 (or 5-6 if you can't tell), never 7-8. A change that turns an anchor CRASH into a valid value is an IMPROVEMENT -> 3-4.
|
|
@@ -34084,11 +34111,11 @@ A passing test, an assertion that matches the new behavior, or a comment/docstri
|
|
|
34084
34111
|
- Emit EVERY finding you were given, with its (possibly changed) score and a reason that cites the ANCHOR-vs-COMPARE + READER evidence that set it. If you truly cannot establish whether the harmful path occurs, drop it to 5-6 and say what was unconfirmable.
|
|
34085
34112
|
|
|
34086
34113
|
## Output
|
|
34087
|
-
{ "regressions": [ { "file": "path", "lines": "L120", "title": "3-6 words", "productBefore": "X", "productAfter": "Y", "confidence": "high|low", "severity": "LOW|MEDIUM|HIGH|CRITICAL", "severityReason": "one sentence", "importance": "LOW|MEDIUM|HIGH|CRITICAL", "importanceReason": "one sentence", "priority": 1, "score": 4, "reason": "the anchor-vs-compare net-effect evidence and how it set the score" } ] }
|
|
34088
|
-
Output JSON only.`}function
|
|
34114
|
+
{ "regressions": [ { "file": "path", "lines": "L120", "title": "3-6 words", "productBefore": "X", "productAfter": "Y", "confidence": "high|low", "severity": "LOW|MEDIUM|HIGH|CRITICAL", "severityReason": "one sentence", "importance": "LOW|MEDIUM|HIGH|CRITICAL", "importanceReason": "one sentence", "priority": 1, "score": 4, "needsConsumerVerification": false, "consumerVerificationReason": "", "reason": "the anchor-vs-compare net-effect evidence and how it set the score" } ] }
|
|
34115
|
+
Output JSON only.`}function pb(e){if(e===void 0)return;let t=[...e.matchAll(/\d+/g)].map(e=>Number(e[0])).filter(e=>Number.isFinite(e)&&e>0);if(t.length!==0)return{start:Math.min(...t),end:Math.max(...t)}}function mb(e){let t=new Map;for(let n of e){let e=t.get(n.file)??{locs:[],range:void 0,wholeFile:!1},r=n.lines===void 0?n.file:`${n.file}:${n.lines}`;e.locs.push(`${r} — ${n.title}`);let i=pb(n.lines);i===void 0?(e.wholeFile=!0,e.range=void 0):e.wholeFile||(e.range=e.range===void 0?i:{start:Math.min(e.range.start,i.start),end:Math.max(e.range.end,i.end)}),t.set(n.file,e)}return t}function hb(e,t,n,r){return[...mb(r).entries()].map(([r,{locs:i,range:o}])=>{let s=o===void 0?a.showFileAtRef(e,t,r,12e3):a.showFileRangeAtRef(e,t,r,o.start,o.end,60),c=o===void 0?a.showFileAtRef(e,n,r,12e3):a.showFileRangeAtRef(e,n,r,o.start,o.end,60);return`### ${i.join(`
|
|
34089
34116
|
### `)}\n----- ANCHOR (${t.slice(0,8)}) -----\n${s||`(absent at anchor)`}\n----- COMPARE (${n.slice(0,8)}) -----\n${c||`(absent at compare)`}`}).join(`
|
|
34090
34117
|
|
|
34091
|
-
`)}function
|
|
34118
|
+
`)}function gb(e,t,n,r){return`Adjudicate the findings below, each scored HIGH (7-10) by the first pass (which could not read the anchor).
|
|
34092
34119
|
|
|
34093
34120
|
- anchor: ${e}
|
|
34094
34121
|
- compare: ${t}
|
|
@@ -34098,16 +34125,16 @@ Each block below is the code window (the finding's line range ± context) at the
|
|
|
34098
34125
|
${r}
|
|
34099
34126
|
|
|
34100
34127
|
## The findings to re-score (7-10 band — confirm or deflate)
|
|
34101
|
-
${
|
|
34128
|
+
${ab(n)}
|
|
34102
34129
|
|
|
34103
|
-
For each: net the anchor-vs-compare source above, check only the specific callers you still need, and return the resolved JSON list per your instructions. Emit exactly these findings, re-scored — do not add or drop any.`}async function
|
|
34104
|
-
`)}}});o.logAgentCwd(f,e.rootPath);let _=0;for await(let e of g){if(!l(e)){let t=d(e);t!==void 0&&t.length>0&&(_++,o.logAgentActivity(f,_,t),
|
|
34130
|
+
For each: net the anchor-vs-compare source above, check only the specific callers you still need, and return the resolved JSON list per your instructions. Emit exactly these findings, re-scored — do not add or drop any.`}async function _b(e,t){let r={inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0},i=t.filter(e=>!db(e.score)),s=t.filter(e=>db(e.score));if(s.length===0)return{regressions:t,costUsd:0,turns:0,maxTurnsHit:!1,tokens:r};let{query:c,isResultMessage:l,isErrorResult:u,getMessageContentBlocks:d}=await Promise.resolve().then(()=>lz()),f=`regression-detect-adjudicate-uncertain`,p=fb(e.primarySource,e.dependencyRoots),m=hb(e.rootPath,e.anchorRef,e.compareRef,s),h=gb(e.anchorRef,e.compareRef,s,m);n.logger.info.defaultLog(`[regression-first] Adjudicate (v2-adj): ${s.length} finding(s) entered stage 2 (score 7-10); ${i.length} passed through untouched (<=6)`);for(let e of s){let t=e.lines===void 0?e.file:`${e.file}:${e.lines}`;n.logger.info.defaultLog(`[regression-first] → stage2 [${e.score}] ${t} — ${e.title}`)}Uy(`adjudicate-uncertain`,`${p}\n\n----- USER PROMPT -----\n${h}`);let g=c({prompt:h,options:{model:a.REGRESSION_FIRST_MODEL,systemPrompt:p,allowedTools:[`Read`,`Grep`,`Glob`,`Bash`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_ADJ_MAX_BUDGET_USD,maxTurns:a.REGRESSION_ADJ_MAX_TURNS,cwd:e.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:Xy},env:{...process.env,ANTHROPIC_BASE_URL:e.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:e.jwtToken??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34131
|
+
`)}}});o.logAgentCwd(f,e.rootPath);let _=0;for await(let e of g){if(!l(e)){let t=d(e);t!==void 0&&t.length>0&&(_++,o.logAgentActivity(f,_,t),qy(e,t));continue}return yb(e,u,{allFindings:t,untouched:i,uncertain:s})}return{regressions:t,costUsd:0,turns:0,maxTurnsHit:!1,tokens:r}}function vb(e,t){let n=e=>`${e.file}|${e.lines??``}|${e.title}`,r=new Map;for(let e of t){let t=n(e),i=r.get(t);r.set(t,{flagged:(i?.flagged??!1)||e.needsConsumerVerification,reason:i?.reason??(e.needsConsumerVerification?e.consumerVerificationReason:void 0)})}for(let t of e){let e=r.get(n(t));e===void 0||!e.flagged||(t.needsConsumerVerification=!0,(t.consumerVerificationReason===void 0||t.consumerVerificationReason.length===0)&&e.reason!==void 0&&(t.consumerVerificationReason=e.reason))}}function yb(e,t,r){let i=o.extractCacheTokens(e);if(t(e))return n.logger.info.defaultLog(`[regression-first] adjudicate-uncertain error: ${e.subtype} — keeping all original findings`),{regressions:r.allFindings,costUsd:e.total_cost_usd,turns:e.num_turns,maxTurnsHit:e.subtype===`error_max_turns`,tokens:i};let s=Ey(e.structured_output);vb(s,r.uncertain);let c=s.length>0?s:r.uncertain,l=[...r.untouched,...c].filter(e=>e.score>=3);return s.length>0&&lb(r.uncertain,c,`uncertainty-adjudicator`),n.logger.info.defaultLog(`[regression-first] Adjudicate done (v2-adj): ${l.length} finding(s) after uncertainty adjudication`),{regressions:l,costUsd:e.total_cost_usd,turns:e.num_turns,maxTurnsHit:e.num_turns>=a.REGRESSION_ADJ_MAX_TURNS,tokens:i}}var bb=class{name=`adjudicateUncertain`;async execute(e){let t=e.detectedRegressions??[];if(!t.some(e=>db(e.score)))return u_;let n=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0)throw Error(`[impact-pipeline] AdjudicateUncertainStep requires branch/resolvedAnchorBranch from ResolveCompare`);let r=e.changedFiles??[],i=a.getDiffForFiles(r,n,e.branch,e.resolvedAnchorBranch,e.isUncommitted),o=a.formatCommitMessagesBlock(e.commitMessages??[]),s=Cy(e.jobInput,n),c=await _b({anchorRef:e.resolvedAnchorBranch,compareRef:e.branch,rootPath:n,diffText:i,commitMessagesBlock:o,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl,primarySource:s.primarySource,dependencyRoots:s.dependencyRoots},t);e.detectedRegressions=c.regressions,e.detectVariant=`v2-adj`,Hy(Yy(e.branch,`v2-adj`)),e.detectCostUsd=(e.detectCostUsd??0)+c.costUsd,e.detectTurns=(e.detectTurns??0)+c.turns;let l=e.detectTokens;return e.detectTokens=l===void 0?c.tokens:{inputTokens:(l.inputTokens??0)+(c.tokens.inputTokens??0),outputTokens:(l.outputTokens??0)+(c.tokens.outputTokens??0),cacheReadTokens:(l.cacheReadTokens??0)+(c.tokens.cacheReadTokens??0),cacheCreationTokens:(l.cacheCreationTokens??0)+(c.tokens.cacheCreationTokens??0)},{costUsd:c.costUsd,turns:c.turns,maxTurnsHit:c.maxTurnsHit,totalFiles:c.regressions.length,tokens:c.tokens}}};async function xb(e,t,n){if(e===`agentic`)return new l.AgenticImpactMapper(t);let{createImpactMapper:r}=await Promise.resolve().then(()=>MU());return r({...t,strategy:e,isUncommitted:n})}async function Sb(e,t=`agentic`){let r=uv(e),i=fv(e),o=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0||e.projectType===void 0)throw Error(`[impact-pipeline] mapping step requires branch/resolvedAnchorBranch/projectType from prior steps`);let s=a.REGRESSION_IMPACT_MAPPING_SYMBOL_TRACING?new Map(Object.entries(a.getPerFileDiffs(i,o,e.branch,e.resolvedAnchorBranch,e.isUncommitted))):void 0,c=await(await xb(t,{rootPath:o,branch:e.branch,resolvedAnchorBranch:e.resolvedAnchorBranch,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl,projectType:e.projectType,mappingMaxTurns:e.jobInput?.impactMappingMaxTurns,fileDiffs:s},e.isUncommitted)).run(r,i),l=r.filter(e=>(c.flowFileMap.get(e.flowId)?.size??0)>0).length,u=i.length,d=new Set;for(let e of c.flowFileMap.values())for(let t of e)d.add(t);let f=d.size;n.logger.info.defaultLog(`[regression-impact] File-to-flow mapping: ${l} affected, ${r.length-l} not affected (${f}/${u} files mapped to >= 1 flow)`);let p=new Set(c.incompleteFiles??[]),m=i.filter(e=>d.has(e)),h=i.filter(e=>p.has(e)),g=i.filter(e=>!d.has(e)&&!p.has(e));n.logger.info.defaultLog(`[regression-impact] File-to-flow mapping summary (${u} files):`),n.logger.info.defaultLog(`[regression-impact] → mapped to flows (${m.length}): ${m.length>0?m.join(`, `):`(none)`}`),n.logger.info.defaultLog(`[regression-impact] → no flows (${g.length}): ${g.length>0?g.join(`, `):`(none)`}`),n.logger.info.defaultLog(`[regression-impact] → INCOMPLETE/unmapped (${h.length}): ${h.length>0?h.join(`, `):`(none)`}`);let _=c.mappingBreakdown,v=c.mappingBreakdownFiles;if(_!==void 0&&v!==void 0){let e=e=>e.length>0?e.join(`, `):`(none)`;n.logger.info.defaultLog(`[regression-impact] File-to-flow mapping attribution breakdown:`),n.logger.info.defaultLog(`[regression-impact] → confirmed + found flow (${_.directMappedFiles}): ${e(v.directMappedFiles)}`),n.logger.info.defaultLog(`[regression-impact] → guessed + found flow (${_.guessedMappedFiles}): ${e(v.guessedMappedFiles)}`),n.logger.info.defaultLog(`[regression-impact] → guessed + NO flow (${_.guessedNoFlowFiles}): ${e(v.guessedNoFlowFiles)}`),n.logger.info.defaultLog(`[regression-impact] → confirmed + NO flow (${_.noFlowFiles}): ${e(v.noFlowFiles)}`)}e.mappingResult=c,e.flowFileReasons=c.flowFileReasons;let y=c.batchMetrics??[],b=y.reduce((e,t)=>({inputTokens:e.inputTokens+t.tokens.inputTokens,outputTokens:e.outputTokens+t.tokens.outputTokens,cacheReadTokens:e.cacheReadTokens+t.tokens.cacheReadTokens,cacheCreationTokens:e.cacheCreationTokens+t.tokens.cacheCreationTokens}),{inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0});return{costUsd:c.costUsd,turns:c.turns,maxTurnsHit:c.maxTurnsHit,maxBudgetHit:c.maxBudgetHit??!1,tokens:y.length>0?b:void 0,batches:y.length>0?y:void 0,totalFiles:u,mappedFiles:f,..._!==void 0&&{mappingBreakdown:_}}}var Cb=class{name;constructor(e=`agentic`){this.strategy=e,this.name=e===`agentic`?`fileToFlowMapping`:`fileToFlowMapping:${e}`}async execute(e){return Sb(e,this.strategy)}};function wb(e,t,n,r){return e.map(e=>{let i=t.get(e.flowId),a=(i?.size??0)>0,o=n?.has(e.flowId)===!0,s=r?.has(e.flowId)===!0;return{flow:e,affected:a,...a&&(o||s)?{uncertain:!0}:{},changedFiles:a?[...i]:[],severity:a?`MEDIUM`:`NONE`}})}var Tb=class{name=`buildImpacts`;async execute(e){let t=uv(e),n=pv(e);return e.flowImpacts=wb(t,n.flowFileMap,e.roughGuessedFlowIds,n.lowConfidenceFlowIds),u_}};let Eb=[`NONE`,`LOW`,`MEDIUM`,`HIGH`,`CRITICAL`];function Db(e){if(e.length!==0)return e.reduce((e,t)=>Eb.indexOf(t.severity)>Eb.indexOf(e)?t.severity:e,`NONE`)}function Ob(){return{flowId:a.REGRESSION_FIRST_SENTINEL_FLOW_ID,rank:1,name:a.REGRESSION_FIRST_SENTINEL_FLOW_NAME,flowType:`OTHER`,entryPoints:[],description:`Findings from the regression-first (regression-locator) command that aren't attributed to any cataloged flow.`,trace:{entryFiles:[],entrySymbols:[],calledModules:[],codeSnippet:``},importanceReason:`Sentinel bucket — importance reflects the underlying findings, not this row itself.`}}function kb(e){return{title:e.title,productBefore:e.productBefore,productAfter:e.productAfter,confidence:e.confidence,severity:e.severity,severityReason:e.severityReason,verdictScore:e.score,verdictReason:e.reason,importance:e.importance,importanceReason:e.importanceReason,...e.priority===void 0?{}:{priority:e.priority},file:e.file,needsConsumerVerification:e.needsConsumerVerification,...e.consumerVerificationReason===void 0?{}:{consumerVerificationReason:e.consumerVerificationReason}}}var Ab=class{name=`buildRegFirstSentinelImpact`;async execute(e){if(e.sentinelFlowId===void 0)throw Error(`[regression-first] BuildRegFirstSentinelImpactStep requires ctx.sentinelFlowId — EnsureRegFirstSentinelFlowStep must run before this step`);let t=e.detectedRegressions??[],n=t.map(kb);return e.flowImpacts=[{flow:Ob(),affected:t.length>0,severity:Db(t),changedFiles:e.changedFiles??[],productChanges:n,techChanges:[]}],u_}};function jb(e){if(typeof e!=`object`||!e)return;let t=e;if(!(typeof t.score!=`number`||t.score<1||t.score>10||!Number.isInteger(t.score)||typeof t.reasoning!=`string`))return t}function Mb(e,t){if(e===void 0)return``;let n=Object.entries(e).filter(([e])=>t.includes(e)).map(([e,t])=>`| ${e} | ${t.fileAgeDays===0?`new/unknown`:`${t.fileAgeDays}d ago`} | ${t.authorCommits} | ${t.bugFixCommits} | ${t.revertCommits} |`);return n.length===0?``:`## Git signals (pre-computed):
|
|
34105
34132
|
| File | Last touched | Author commits (90d) | Fix commits (90d) | Revert commits (90d) |
|
|
34106
34133
|
|---|---|---|---|---|
|
|
34107
34134
|
${n.join(`
|
|
34108
34135
|
`)}
|
|
34109
|
-
`}async function
|
|
34110
|
-
`)}}});o.logAgentCwd(S,m);let E=0;for await(let e of T){if(!y(e)){let t=x(e);t!==void 0&&t.length>0&&(E++,o.logAgentActivity(S,E,t));continue}let r=e.total_cost_usd??0,i=a.shouldLogDiagnostics?e.total_cost_usd?.toFixed(4)??`N/A`:`hidden`,s=e.num_turns,c=s>=a.REGRESSION_IMPACT_CALIBRATOR_MAX_TURNS;if(b(e))return n.logger.info.defaultLog(`[regression-impact] Verdict calibrator error for "${t.title??`(untitled)`}": ${e.subtype} (cost: $${i})`),{verdict:null,costUsd:r,turns:s,maxTurnsHit:c};let l=
|
|
34136
|
+
`}async function Nb(e){let{productChange:t,techChanges:r,flow:i,commitMessages:s,gitSignals:l,runContext:u,affectedSteps:d,jwtToken:f,anthropicBaseUrl:p,rootPath:m}=e,h=t.verdictScore,g=t.verdictReason;if(h===void 0)return{verdict:null,costUsd:0,turns:0,maxTurnsHit:!1};let{query:_,isResultMessage:y,isErrorResult:b,getMessageContentBlocks:x}=await Promise.resolve().then(()=>lz()),S=`verdict-calibrator`,C=Mb(l,r.map(e=>e.file)),w=c.buildVerdictCalibratorSystemPrompt(),T=_({prompt:c.buildVerdictCalibratorPrompt({productChange:{title:t.title,severity:t.severity,severityReason:t.severityReason,productBefore:t.productBefore,productAfter:t.productAfter},techChanges:r.map(e=>({file:e.file,techBefore:e.techBefore,techAfter:e.techAfter,confidence:e.confidence})),originalVerdict:{score:h,reason:g},flow:{name:i.name,rank:i.rank,importance:void 0,importanceReason:i.importanceReason,trace:i.trace,productFlow:i.productFlow},commitMessages:s,gitSignalsBlock:C,runContext:u,affectedSteps:d}),options:{model:a.REGRESSION_IMPACT_CALIBRATOR_MODEL,systemPrompt:w,allowedTools:[],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_IMPACT_CALIBRATOR_MAX_BUDGET_USD,maxTurns:a.REGRESSION_IMPACT_CALIBRATOR_MAX_TURNS,cwd:m,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.VERDICT_CALIBRATOR_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:p,ANTHROPIC_AUTH_TOKEN:f??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34137
|
+
`)}}});o.logAgentCwd(S,m);let E=0;for await(let e of T){if(!y(e)){let t=x(e);t!==void 0&&t.length>0&&(E++,o.logAgentActivity(S,E,t));continue}let r=e.total_cost_usd??0,i=a.shouldLogDiagnostics?e.total_cost_usd?.toFixed(4)??`N/A`:`hidden`,s=e.num_turns,c=s>=a.REGRESSION_IMPACT_CALIBRATOR_MAX_TURNS;if(b(e))return n.logger.info.defaultLog(`[regression-impact] Verdict calibrator error for "${t.title??`(untitled)`}": ${e.subtype} (cost: $${i})`),{verdict:null,costUsd:r,turns:s,maxTurnsHit:c};let l=jb(e.structured_output);if(l===void 0)return n.logger.info.defaultLog(`[regression-impact] Verdict calibrator: invalid structured output for "${t.title??`(untitled)`}" (cost: $${i})`),{verdict:null,costUsd:r,turns:s,maxTurnsHit:c};let u=l.score,d=u!==h;return{verdict:{score:u,reason:l.reasoning,changed:d},costUsd:r,turns:s,maxTurnsHit:c}}return n.logger.info.defaultLog(`[regression-impact] Verdict calibrator stream ended with no result message for "${t.title??`(untitled)`}" — partial API cost unrecoverable`),{verdict:null,costUsd:0,turns:0,maxTurnsHit:!1,streamEnded:!0}}async function Pb(e,t,r,i,o,s,c,l,u,d){let f=[];for(let t of e)if(t.productChanges!==void 0)for(let e of t.productChanges){let n=e.verdictScore;n!==void 0&&n>=a.REGRESSION_IMPACT_CALIBRATION_RANGE_MIN&&n<=a.REGRESSION_IMPACT_CALIBRATION_RANGE_MAX&&f.push({fi:t,pc:e})}if(f.length===0)return{costUsd:0,turns:0,maxTurnsHit:!1,calibratedCount:0,changedCount:0,failedCount:0,crashedCount:0};n.logger.info.defaultLog(`[regression-impact] Verdict calibration for ${f.length} borderline productChange(s)...`);let p=[...new Set(f.flatMap(({fi:e})=>(e.techChanges??[]).map(e=>e.file)))],m=a.getAuthorEmail(t,r,c),h=a.getGitSignalsForFiles(t,p,m,u,i),g=0,_=0,v=!1,y=0,b=0,x=0,S=new A.default({concurrency:a.REGRESSION_IMPACT_CALIBRATOR_CONCURRENCY});for(let e of f)S.add(async()=>{try{let r=e.fi.affectedSteps??[],i=await Nb({productChange:e.pc,techChanges:e.fi.techChanges??[],flow:e.fi.flow,commitMessages:l,gitSignals:h,runContext:d,affectedSteps:r,jwtToken:o,anthropicBaseUrl:s,rootPath:t});if(g+=i.costUsd,_+=i.turns,v||=i.maxTurnsHit,i.streamEnded===!0&&(x+=1),i.verdict===null){i.streamEnded!==!0&&(b+=1),n.logger.info.defaultLog(`[regression-impact] Verdict calibrator returned no verdict for "${e.pc.title??`(untitled)`}" — keeping original score ${e.pc.verdictScore??`?`}`);return}let a=e.pc.verdictScore,c=e.pc.verdictReason;e.pc.originalVerdictScore=a,e.pc.originalVerdictReason=c,i.verdict.changed?(e.pc.calibrationReason=`Calibrated ${a} → ${i.verdict.score}: ${i.verdict.reason}`,e.pc.verdictScore=i.verdict.score,e.pc.verdictReason=i.verdict.reason,y+=1,n.logger.info.defaultLog(`[regression-impact] Verdict calibrated for "${e.pc.title??`(untitled)`}": ${a} → ${i.verdict.score}`)):e.pc.calibrationReason=`Calibrator confirmed score ${a}: ${i.verdict.reason}`}catch(t){x+=1,n.logger.info.defaultLog(`[regression-impact] Verdict calibrator crashed for "${e.pc.title??`(untitled)`}" — partial API cost unrecoverable: ${String(t)}`)}});if(await S.onIdle(),x>0){let e=a.shouldLogDiagnostics?` — totalCost ($${g.toFixed(4)}) does not include their partial spend`:``;n.logger.info.defaultLog(`[regression-impact] Verdict calibration: ${x}/${f.length} call(s) crashed${e}`)}return{costUsd:g,turns:_,maxTurnsHit:v,calibratedCount:f.length,changedCount:y,failedCount:b,crashedCount:x}}var Fb=class{name=`verdictCalibration`;async execute(e){let t=mv(e),r=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0||e.commitMessages===void 0||e.anchorBranch===void 0)throw Error(`[impact-pipeline] CalibrationStep requires branch/resolvedAnchorBranch/commitMessages/anchorBranch`);let i=e.globalConfigService.getContext()?.git,a=await Pb(t,r,e.branch,e.resolvedAnchorBranch,e.jwtToken,e.anthropicBaseUrl,e.isUncommitted,e.commitMessages,e.anchorSha,{owner:i?.owner,repo:i?.repository,anchorBranch:e.anchorBranch,anchorSha:e.anchorSha,branch:e.jobInput?.compareBranch??e.compareBranch??e.branch,headSha:e.headSha,runType:e.runType});if(a.calibratedCount>0){let{calibratedCount:e,changedCount:t,failedCount:r,crashedCount:i}=a,o=e-t-r-i;n.logger.info.defaultLog(`[regression-impact] Verdict calibration: ${t} changed, ${o} confirmed, ${r} failed (no verdict), ${i} crashed (out of ${e})`)}return{costUsd:a.costUsd,turns:a.turns,maxTurnsHit:a.maxTurnsHit}}},Ib=class{name=`consumerUncertainty`;async execute(e){let t=e.detectedRegressions??[],r=0;for(let e of t){if(!e.needsConsumerVerification||e.score<=5)continue;let t=e.score;e.score=5,e.reason=`${e.reason} [score set to 5 — uncertain: correctness depends on a consumer outside this repo, pending a cross-component check (was ${t})]`,r++}return r>0&&n.logger.info.defaultLog(`[consumer-uncertainty] set ${r} consumer-dependent finding(s) to score 5 (uncertain)`),u_}},Lb=class{name=`detectRegressions`;variant=`v1`;runDetect(e){return nb(e)}async execute(e){let t=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0)throw Error(`[impact-pipeline] DetectRegressionsStep requires branch/resolvedAnchorBranch from ResolveCompare`);let n=e.changedFiles??[],r=a.getDiffForFiles(n,t,e.branch,e.resolvedAnchorBranch,e.isUncommitted),i=a.formatCommitMessagesBlock(e.commitMessages??[]),o=Cy(e.jobInput,t),s=await this.runDetect({anchorRef:e.resolvedAnchorBranch,compareRef:e.branch,rootPath:t,diffText:r,commitMessagesBlock:i,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl,primarySource:o.primarySource,dependencyRoots:o.dependencyRoots});if(s.errorSubtype!==void 0)throw Error(`[regression-first] detection did NOT complete (${s.errorSubtype}) after $${s.costUsd.toFixed(2)} / ${s.turns} turns — results are NOT trustworthy, NOT a clean diff. Raise REGRESSION_FIRST_MAX_BUDGET_USD for large diffs or reduce the changed-file set.`);let c=s.regressions.filter(Jy).length;if(c>0&&c===s.regressions.length)throw Error(`[regression-first] detection FAILED — all ${c} specialist agent(s) returned no parseable output (no real findings, only failure markers) after $${s.costUsd.toFixed(2)} / ${s.turns} turns. This is NOT a clean diff — likely the diff is too large to embed (agents hit "Prompt is too long") or otherwise unanalyzable. Results are NOT trustworthy. Reduce the changed-file set or rerun.`);let l=s.regressions;return e.detectedRegressions=l,e.detectVariant=this.variant,e.detectCostUsd=s.costUsd,e.detectTurns=s.turns,e.detectTokens=s.tokens,{costUsd:s.costUsd,turns:s.turns,maxTurnsHit:s.maxTurnsHit,totalFiles:l.length,tokens:s.tokens,batches:s.subAgentMetrics}}},Rb=class extends Lb{name=`detectRegressionsMono`;variant=`mono`;runDetect(e){return nb({...e,variant:`mono`})}},zb=class extends Lb{name=`detectRegressionsSingle`;variant=`single`;runDetect(e){return nb({...e,variant:`single`})}},Bb=class extends Lb{name=`detectRegressionsV2`;variant=`v2`;runDetect(e){return nb({...e,variant:`v2`})}},Vb=class extends Lb{name=`detectRegressionsV3`;variant=`v3`;runDetect(e){return nb({...e,variant:`v3`})}};let Hb=/^API request failed: 409\b/;function Ub(e){return e instanceof Error&&Hb.test(e.message)}async function Wb(e,t){try{await e.post(`/api/v1/regression/flow-library`,{projectId:t,flowId:a.REGRESSION_FIRST_SENTINEL_FLOW_ID,name:a.REGRESSION_FIRST_SENTINEL_FLOW_NAME,description:`Findings from the regression-first (regression-locator) command that aren't attributed to any cataloged flow.`,importance:`MEDIUM`,importanceReason:`Sentinel bucket — importance reflects the underlying findings, not this row itself.`,rank:1}),n.logger.info.defaultLog(`[regression-first] Created sentinel flow "${a.REGRESSION_FIRST_SENTINEL_FLOW_ID}" for project ${t}`)}catch(e){if(Ub(e)){n.logger.info.defaultLog(`[regression-first] Sentinel flow "${a.REGRESSION_FIRST_SENTINEL_FLOW_ID}" already exists for project ${t}`);return}throw e}}var Gb=class{name=`ensureRegFirstSentinelFlow`;async execute(e){let t=e.jobInput?.projectId??e.globalConfigService.getProjectId();if(t===void 0||t.length===0)throw Error(`[regression-first] EnsureRegFirstSentinelFlowStep requires a projectId`);await Wb(e.apiService,t),e.sentinelFlowId=a.REGRESSION_FIRST_SENTINEL_FLOW_ID;let r=e.bundle;if(r!==void 0&&!r.flows.some(e=>e.flowId===a.REGRESSION_FIRST_SENTINEL_FLOW_ID)){let t=(await Q_(e.apiService,e.globalConfigService,e.jobInput))?.flows.find(e=>e.flowId===a.REGRESSION_FIRST_SENTINEL_FLOW_ID);t===void 0?n.logger.info.defaultLog(`[regression-first] Sentinel flow "${a.REGRESSION_FIRST_SENTINEL_FLOW_ID}" still missing from the flow library after ensure — this run's findings may not display on the web UI`):r.flows.push(t)}return u_}};let Kb='- A commit message in the "Commit messages" section may be truncated (it ends with "… (commit message truncated — run `git show …`)"). If that commit\'s intent is relevant to your verdict, RUN the provided `git show -s --format=%B <hash>` command via Bash to read the full message. Bash is allowed ONLY for read-only `git show`/`git diff` lookups — never for cat/find/writes.',qb='\n- The diff below may be BUDGETED: large changes are packed whole up to a size limit and the rest are listed under an "── OMITTED ──" footer with the exact `git diff` command for each. If a file relevant to a flow is in that OMITTED list (or you otherwise need a change the diff does not show), RUN the provided `git diff … -- <file>` command via Bash to read its real diff. Bash is allowed ONLY for these read-only `git diff`/`git show` lookups — never for cat/find/writes.',Jb=`## Dependency roots (multi-root projects)
|
|
34111
34138
|
|
|
34112
34139
|
A flow may CALL INTO a dependency root (a sibling dir in the same repo, e.g.
|
|
34113
34140
|
\`common/\`, \`contracts/\`, a shared package) that lives outside the primary
|
|
@@ -34117,7 +34144,7 @@ change the flow's behavior — judge it as in-scope, not as "outside the project
|
|
|
34117
34144
|
\`entryFiles\` are relative to the primary project; \`calledModules\` may be
|
|
34118
34145
|
relative to the working directory (the common ancestor spanning the primary
|
|
34119
34146
|
project and its dependency roots) — resolve both consistently, and Read/Grep to
|
|
34120
|
-
confirm a real connection when the paths don't line up textually.`;function
|
|
34147
|
+
confirm a real connection when the paths don't line up textually.`;function Yb(){return`You are a senior software engineer reading a batch of git diffs and describing what each file's code change does — purely at the technical level, with no flow/business context.
|
|
34121
34148
|
|
|
34122
34149
|
## Your task
|
|
34123
34150
|
For EACH file given below, write a techChange entry describing what changed:
|
|
@@ -34134,8 +34161,8 @@ For EACH file given below, write a techChange entry describing what changed:
|
|
|
34134
34161
|
|
|
34135
34162
|
## Output format
|
|
34136
34163
|
{ "techChanges": [ { "file": "...", "confidence": "high|low", "techBefore": "...", "techAfter": "..." }, ... ] }
|
|
34137
|
-
One entry per file in the batch, in any order. Do NOT emit productChanges or affectedSteps.`}function
|
|
34138
|
-
`);return`## Files in this batch (${e.length})\n${o}\n\n${a}\n\nEmit one techChange entry per file above.`}function
|
|
34164
|
+
One entry per file in the batch, in any order. Do NOT emit productChanges or affectedSteps.`}function Xb(e,t,n,r){let i=t.length>6e4?`${t.slice(0,6e4)}\n... (truncated)`:t,a=t.length>0?`## Git diff for this batch (${n} vs ${r}):\n\`\`\`\n${i}\n\`\`\``:`## Git diff for this batch (${n} vs ${r}):\n(no diff available — files may be untracked)`,o=e.map(e=>{let t=(0,m.isDefined)(e.reason)?`\n mapper note: ${e.reason}`:``;return`- ${e.file}${t}`}).join(`
|
|
34165
|
+
`);return`## Files in this batch (${e.length})\n${o}\n\n${a}\n\nEmit one techChange entry per file above.`}function Zb(){return`You are a senior software engineer tracing how a code change affects a critical flow's observable behavior. The technical "what changed" has already been derived per-file (pass 1) and is provided to you below — your job is to judge the PRODUCT-level impact for THIS flow. Focus on what changes from the user/caller's perspective.
|
|
34139
34166
|
|
|
34140
34167
|
## What you receive
|
|
34141
34168
|
- flow metadata (name, entry points, why it matters, product flow steps)
|
|
@@ -34147,7 +34174,7 @@ One entry per file in the batch, in any order. Do NOT emit productChanges or aff
|
|
|
34147
34174
|
- Use the Read tool to read files, not Bash with cat
|
|
34148
34175
|
- RELOCATION CHECK (do this BEFORE flagging any "removed" code as a regression): when a techChange reports that a NAMED, top-level symbol was removed — in ANY language, e.g. a function/method, class/struct/interface/enum, constant, registered task/handler/route, or an import/include/use/require statement (NOT an edit to lines inside a symbol that still exists) — verify it was not simply MOVED before treating it as a deletion. A move pushes both halves into this same PR, so look for the symbol being RE-ADDED, cheapest source first: (1) scan the techChanges/diff already provided for the symbol re-appearing in another file; (2) if a candidate target file is omitted/budgeted, run its \`git diff\` to read it; (3) only if neither shows it, \`Grep\` the tree for the symbol (covers a move into a file that pre-existed the anchor). The symbol may be RENAMED on the move (e.g. \`_notify_slack_500\` → \`_notify_error_500\`) — match by code/behavior, not just by name. If it reappears elsewhere with callers/importers updated to the new location, it is a RELOCATION (refactor) — score 1–2 and do NOT report a removal/breakage risk. Only when the symbol appears NOWHERE is it a genuine removal worth flagging.
|
|
34149
34176
|
|
|
34150
|
-
${
|
|
34177
|
+
${Jb}
|
|
34151
34178
|
|
|
34152
34179
|
## Your task:
|
|
34153
34180
|
1. The "Pre-computed techChanges" section gives the connection AND what changed per file — the heavy "describe the diff" work is already done. Do NOT re-derive techBefore/techAfter from scratch. Use Read/Grep only to verify a techChange that looks wrong in this flow's context, or to inspect a changed function's callers for compatibility (changed return values, removed parameters, new error paths, changed defaults). This is where regressions hide.
|
|
@@ -34277,7 +34304,7 @@ Only output \`priority\` when \`verdict.score >= 5\` (change is likely a regress
|
|
|
34277
34304
|
- 1: fix immediately — CRITICAL severity with HIGH+ importance, or HIGH severity on a CRITICAL importance behavior in a high-catalog-score flow
|
|
34278
34305
|
- 2: fix this release — CRITICAL severity with MEDIUM or lower importance, HIGH severity, MEDIUM severity with CRITICAL/HIGH importance, or MEDIUM severity in a high-catalog-score flow
|
|
34279
34306
|
- 3: fix soon — MEDIUM severity with MEDIUM or lower importance, or LOW severity with HIGH+ importance
|
|
34280
|
-
- 4: backlog — LOW severity with MEDIUM or lower importance`}function
|
|
34307
|
+
- 4: backlog — LOW severity with MEDIUM or lower importance`}function Qb(e,t,n,r,i){let o=(0,m.isDefined)(e.productFlow)&&e.productFlow.steps.length>0?`
|
|
34281
34308
|
## Product Flow Steps:
|
|
34282
34309
|
**Trigger:** ${e.productFlow.trigger}
|
|
34283
34310
|
${e.productFlow.steps.map(e=>`- [${e.stepId}] **${e.actor}** → ${e.action} → _${e.outcome}_`).join(`
|
|
@@ -34300,7 +34327,7 @@ ${o}
|
|
|
34300
34327
|
## Pre-computed techChanges for the files in this flow
|
|
34301
34328
|
${s.length>0?s:`(no files mapped to this flow)`}
|
|
34302
34329
|
|
|
34303
|
-
Judge the productChanges, severity, importance, priority, verdict, and affectedSteps for THIS flow. List the in-scope files as **inScopeFiles** (string[] of file paths from the techChanges above) — drop any that don't affect this flow's observable behavior. Do NOT re-emit techBefore/techAfter; the pipeline already has them.`}function
|
|
34330
|
+
Judge the productChanges, severity, importance, priority, verdict, and affectedSteps for THIS flow. List the in-scope files as **inScopeFiles** (string[] of file paths from the techChanges above) — drop any that don't affect this flow's observable behavior. Do NOT re-emit techBefore/techAfter; the pipeline already has them.`}function $b(e=!1){return`You are a senior software engineer judging how a code change affects MULTIPLE related product flows IN ONE PASS. ${e?`Per-file technical changes are NOT pre-computed — the user prompt contains the raw git diff. For each in-scope file you reference, derive techBefore (one or two sentences — what the file/function did BEFORE the diff) and techAfter (one or two sentences — what it does AFTER) yourself, AND judge the PRODUCT-level impact for EACH flow in this group, independently.`:`Per-file technical changes have already been derived (pass 1) and are provided below as a SHARED techChanges list. Your job is to score the PRODUCT-level impact for EACH flow in this group, independently — using ONLY that flow's metadata and the files attributed to it.`}
|
|
34304
34331
|
|
|
34305
34332
|
## What you receive
|
|
34306
34333
|
- a group of related flows (they share most of their changed files — that's why they're grouped)
|
|
@@ -34312,10 +34339,10 @@ Judge the productChanges, severity, importance, priority, verdict, and affectedS
|
|
|
34312
34339
|
- Investigate each shared file AT MOST ONCE. Use Read/Grep/Glob to verify a techChange or check callers when needed — but if you already read a file for one flow in this group, do NOT read it again for another flow.
|
|
34313
34340
|
- RELOCATION CHECK (do this BEFORE flagging any "removed" code as a regression): when a techChange reports that a NAMED, top-level symbol was removed — in ANY language, e.g. a function/method, class/struct/interface/enum, constant, registered task/handler/route, or an import/include/use/require statement (NOT an edit to lines inside a symbol that still exists) — verify it was not simply MOVED before treating it as a deletion. A move pushes both halves into this same PR, so look for the symbol being RE-ADDED, cheapest source first: (1) scan the diff already shown for the symbol re-appearing in another file; (2) if a candidate target file sits in the OMITTED footer, run its provided \`git diff\` to read it; (3) only if neither shows it, \`Grep\` the tree for the symbol (covers a move into a file that pre-existed the anchor). The symbol may be RENAMED on the move (e.g. \`_notify_slack_500\` → \`_notify_error_500\`) — match by code/behavior, not just by name. If it reappears elsewhere and the callers/importers were updated to the new location, it is a RELOCATION (refactor), not a removal — score it 1–2 and do NOT report a removal/breakage risk. Only when the symbol appears NOWHERE is it a genuine removal worth flagging.
|
|
34314
34341
|
- Do NOT use \`find\` — use the Glob tool. Do NOT spawn sub-agents (Task). Use Read for file contents, not Bash with cat.
|
|
34315
|
-
${
|
|
34342
|
+
${Kb}${e?qb:``}
|
|
34316
34343
|
- Do NOT re-derive techBefore/techAfter — they are already provided. Pick which files are inScope per flow.
|
|
34317
34344
|
|
|
34318
|
-
${
|
|
34345
|
+
${Jb}
|
|
34319
34346
|
|
|
34320
34347
|
## Your task per flow
|
|
34321
34348
|
1. Pick **inScopeFiles** for the flow — the subset of the group's files that actually affect THIS flow's observable behavior. Use file paths EXACTLY as given.
|
|
@@ -34424,7 +34451,7 @@ Only output \`priority\` when \`verdict.score >= 5\`. Weigh severity, behavior i
|
|
|
34424
34451
|
- 1: fix immediately — CRITICAL severity with HIGH+ importance, or HIGH severity on a CRITICAL behavior in a high-catalog-score flow
|
|
34425
34452
|
- 2: fix this release — CRITICAL severity with MEDIUM- importance, HIGH severity, MEDIUM severity with CRITICAL/HIGH importance, or MEDIUM severity in a high-catalog-score flow
|
|
34426
34453
|
- 3: fix soon — MEDIUM severity with MEDIUM- importance, or LOW severity with HIGH+ importance
|
|
34427
|
-
- 4: backlog — LOW severity with MEDIUM- importance`}function
|
|
34454
|
+
- 4: backlog — LOW severity with MEDIUM- importance`}function ex(e,t,n,r,i,o,s,c){let l=new Set(e.flatMap(e=>e.changedFiles)),u=s===void 0?[]:Object.entries(s).filter(([e])=>l.has(e)),d=u.map(([e,t])=>`| ${e} | ${t.fileAgeDays===0?`new/unknown`:`${t.fileAgeDays}d ago`} | ${t.authorCommits} | ${t.bugFixCommits} | ${t.revertCommits} |`).join(`
|
|
34428
34455
|
`),f=u.length>0?`\n## Git signals (pre-computed):\n| File | Last touched | Author commits (90d) | Fix commits (90d) | Revert commits (90d) |\n|---|---|---|---|---|\n${d}\n`:``,p=t.map(e=>`- **${e.file}** (confidence: ${e.confidence})\n before: ${e.techBefore}\n after: ${e.techAfter}`).join(`
|
|
34429
34456
|
`),h=e.map(e=>{let t=(0,m.isDefined)(e.flow.productFlow)&&e.flow.productFlow.steps.length>0?`**Product Flow:**\n**Trigger:** ${e.flow.productFlow.trigger}\n${e.flow.productFlow.steps.map(e=>`- [${e.stepId}] **${e.actor}** → ${e.action} → _${e.outcome}_`).join(`
|
|
34430
34457
|
`)}\n**Outcome:** ${e.flow.productFlow.outcome}`:``,n=c?.get(e.flow.flowId),r=e.changedFiles.length>0?e.changedFiles.map(e=>{let t=n?.get(e);return(0,m.isDefined)(t)?`${e} (mapper: ${t})`:e}).join(`, `):`(none)`;return`### Flow
|
|
@@ -34456,7 +34483,7 @@ ${h}
|
|
|
34456
34483
|
|
|
34457
34484
|
${_}
|
|
34458
34485
|
|
|
34459
|
-
${v}`}function
|
|
34486
|
+
${v}`}function tx(e=!1){return`You are a senior software engineer checking whether a code change introduced a REGRESSION in one or more product flows. ${e?`Per-file technical changes are NOT pre-computed — the user prompt contains the raw git diff. For each file attributed to a flow, derive techBefore/techAfter yourself from the diff, AND perform the contract-divergence analysis for EACH flow in this group, independently.`:`Per-file technical changes have already been derived (pass 1) and are provided below as a SHARED techChanges list. Perform the contract-divergence analysis for EACH flow in this group, independently — using that flow's metadata + the files attributed to it.`}
|
|
34460
34487
|
|
|
34461
34488
|
Your job has TWO parts per flow:
|
|
34462
34489
|
1. **Detect the divergence:** the flow is SUPPOSED to do X; decide whether after this change it can do Y != X on any path (including the failure path). If X == Y everywhere, there is no change — clear the flow.
|
|
@@ -34473,10 +34500,10 @@ The verdict.score answers part 2: **how likely is this an UNWANTED regression?**
|
|
|
34473
34500
|
- Treat each flow independently. Do NOT carry context, severity, or verdict between flows.
|
|
34474
34501
|
- Investigate each shared file AT MOST ONCE across the group. Use Read/Grep/Glob to confirm what the code now does — but do not re-read a file you already read for another flow in this group.
|
|
34475
34502
|
- Do NOT use \`find\` — use Glob. Do NOT spawn sub-agents (Task). Use Read for file contents, not Bash with cat.
|
|
34476
|
-
${
|
|
34503
|
+
${Kb}${e?qb:``}
|
|
34477
34504
|
- Do NOT re-derive techBefore/techAfter when they are provided — use them.
|
|
34478
34505
|
|
|
34479
|
-
${
|
|
34506
|
+
${Jb}
|
|
34480
34507
|
|
|
34481
34508
|
## Your task per flow — reason in THIS order before scoring
|
|
34482
34509
|
The files attributed to this flow are GIVEN to you (by the upstream file-to-flow mapping) and are authoritative — do NOT re-decide which files are in scope or drop a file because you think it doesn't reach this flow. Take ALL attributed files as in-scope and judge whether the flow's BEHAVIOR diverges. You may still clear the flow, but ONLY via the X == Y test below (no divergence), never via a scope argument.
|
|
@@ -34579,19 +34606,19 @@ Only output \`priority\` when \`verdict.score >= 5\`. Weigh severity, behavior i
|
|
|
34579
34606
|
- 1: fix immediately — CRITICAL severity with HIGH+ importance, or HIGH severity on a CRITICAL behavior in a high-catalog-score flow
|
|
34580
34607
|
- 2: fix this release — CRITICAL severity with MEDIUM- importance, HIGH severity, MEDIUM severity with CRITICAL/HIGH importance, or MEDIUM severity in a high-catalog-score flow
|
|
34581
34608
|
- 3: fix soon — MEDIUM severity with MEDIUM- importance, or LOW severity with HIGH+ importance
|
|
34582
|
-
- 4: backlog — LOW severity with MEDIUM- importance`}function
|
|
34609
|
+
- 4: backlog — LOW severity with MEDIUM- importance`}function nx(e,t,r,i,a){try{let o=I.default.join(e,`reports`,`deep-prompts`);(0,y.mkdirSync)(o,{recursive:!0});let s=new Date().toISOString().replaceAll(/[:.]/g,`-`),c=I.default.join(o,`${s}-${t}.prompt.log`),l=`${a===void 0?``:`# TOOLS / CONFIG\n\n${JSON.stringify(a,null,2)}\n\n`}# SYSTEM PROMPT\n\n${r}\n\n# USER PROMPT\n\n${i}\n`;(0,y.writeFileSync)(c,l,`utf8`),n.logger.info.defaultLog(`[regression-impact] Deep prompt (${t}) written to ${c}`)}catch(e){n.logger.info.defaultLog(`[regression-impact] Failed to write deep prompt (${t}): ${String(e)}`)}}function rx(e){return e.replaceAll(/[^A-Za-z0-9._-]+/g,`_`)}function ix(e,t){let n=[...e].sort((e,t)=>t.changedFiles.length-e.changedFiles.length),r=[];for(let e of n){let n=ax(e,r,t);n===void 0?r.push([e]):n.push(e)}return r}function ax(e,t,n){let r=new Set(e.changedFiles),i,a=0;for(let e of t){if(e.length>=n.maxGroupSize)continue;let t=ox(r,new Set(e.flatMap(e=>e.changedFiles)));t>a&&t>=n.minOverlap&&(a=t,i=e)}return i}function ox(e,t){let n=0;for(let r of e)t.has(r)&&(n+=1);let r=new Set([...e,...t]).size;return r===0?0:n/r}function sx(e,t,n){let r=Object.keys(e);if(t<=0)return{diff:r.map(t=>e[t]).join(`
|
|
34583
34610
|
`),omittedFiles:[]};let i=[...r].sort((t,n)=>{let r=e[n].length-e[t].length;return r===0?t.localeCompare(n):r}),a=[],o=[],s=0;for(let n of i){let r=e[n],i=s+r.length<=t,c=a.length===0&&r.length>t;if(i||c){a.push(r),s+=r.length;continue}o.push(n)}let c=a.join(`
|
|
34584
|
-
`);return o.length===0?{diff:c,omittedFiles:o}:{diff:`${c}\n${
|
|
34585
|
-
`)}var
|
|
34586
|
-
`),r=this.sizeCache.get(n);if(r!==void 0)return r;let i=this.measureUnionDiffChars(t);return this.sizeCache.set(n,i),i}};function
|
|
34587
|
-
`),r=e.get(n);if(r!==void 0)return r;let i=this.fetchDiff(t);return e.set(n,i),i}}capDiff(e,t){let r=this.diffCapChars;return r<=0||e.length<=r?e:(n.logger.info.defaultLog(`[regression-impact] pass2-group #${t}: raw diff truncated ${e.length} → ${r} chars (use Read/Grep to inspect omitted files)`),`${e.slice(0,r)}\n... (diff truncated at ${r} chars — use Read/Grep/Glob to inspect the rest)`)}},
|
|
34588
|
-
`)}}});o.logAgentCwd(f,r.rootPath);let y=0;for await(let e of _){if(!u(e)){let t=l(e);t!==void 0&&t.length>0&&(y++,o.logAgentActivity(f,y,t));continue}if(d(e)){n.logger.info.defaultLog(`[regression-impact] Pass 2 grouped error for group #${i}: ${String(e.subtype)}`);return}let t=e.total_cost_usd,r=e.num_turns,s=r>=a.REGRESSION_IMPACT_DEEP_MAX_TURNS,c=o.logCacheTokensFromMessage(`pass2 group #${i}`,e),p=e.structured_output;if(p===void 0||!Array.isArray(p.flows)){n.logger.info.defaultLog(`[regression-impact] Pass 2 grouped: missing or malformed structured_output for group #${i}`);return}return{structured:p,costUsd:t,turns:r,maxTurnsHit:s,maxBudgetHit:!1,tokens:c}}}};let ux=[`NONE`,`LOW`,`MEDIUM`,`HIGH`,`CRITICAL`];function dx(e){if(e==null)return;let t=typeof e==`number`?e:Number(e);if(!(!Number.isFinite(t)||!Number.isInteger(t)||t<1||t>4))return t}function fx(e){if(typeof e!=`object`||!e)return;let t=e.inScopeFiles;if(Array.isArray(t))return t.filter(e=>typeof e==`string`)}var px=class{apply(e,t,n){let r=fx(t.structured),i=n.length===0&&Array.isArray(t.structured.techChanges)&&t.structured.techChanges.length>0?t.structured.techChanges.map(e=>({file:e.file,confidence:e.confidence,techBefore:e.techBefore,techAfter:e.techAfter})):n,a=new Map(i.map(e=>[e.file,e])),o=(r===void 0?i:r.map(e=>a.get(e)).filter(m.isDefined)).map(e=>({file:e.file,confidence:e.confidence,techBefore:e.techBefore,techAfter:e.techAfter})),s=t.structured.productChanges.map(e=>{let t=dx(e.priority);return{...e.title===void 0?{}:{title:e.title},productBefore:e.productBefore,productAfter:e.productAfter,confidence:e.confidence,severity:e.severity,...e.severityReason===void 0?{}:{severityReason:e.severityReason},...e.importance===void 0?{}:{importance:e.importance},...e.importanceReason===void 0?{}:{importanceReason:e.importanceReason},...t===void 0?{}:{priority:t},...e.verdict===void 0?{}:{verdictScore:e.verdict.score,...e.verdict.reason===void 0?{}:{verdictReason:e.verdict.reason}}}}),c=this.deriveSeverity(s);e.severity=c,e.severityReason=s.find(e=>e.severity===c)?.severityReason,e.techChanges=o,e.productChanges=s,t.structured.affectedSteps!==void 0&&(e.affectedSteps=this.enrichAffectedSteps(e.flow,t.structured.affectedSteps)),e.uncertain===!0&&(e.affected=c!==`NONE`,e.uncertain=!1)}deriveSeverity(e){return e.length===0?`NONE`:e.reduce((e,t)=>ux.indexOf(t.severity)>ux.indexOf(e)?t.severity:e,`NONE`)}enrichAffectedSteps(e,t){if(!(0,m.isDefined)(e.productFlow))return[];let n=new Map(e.productFlow.steps.map(e=>[e.stepId,e]));return t.filter(e=>n.has(e.stepId)).map(e=>{let t=n.get(e.stepId);if((0,m.isDefined)(t))return{stepId:e.stepId,actor:t.actor,action:t.action,reason:e.reason}}).filter(m.isDefined)}};function mx(e){let t=uv(e),n=mv(e),r=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0||e.commitMessages===void 0)throw Error(`[impact-pipeline] buildDeepRunContext requires branch/resolvedAnchorBranch/commitMessages`);let i=n.filter(e=>e.affected&&e.severity!==`NONE`&&e.severity!==void 0||e.uncertain===!0),o=[...new Set(i.flatMap(e=>e.changedFiles))],s=a.getAuthorEmail(r,e.branch,e.isUncommitted),c=a.getGitSignalsForFiles(r,o,s,e.anchorSha,e.resolvedAnchorBranch),l=new Map(t.map(e=>[e.flowId,e]));return{rootPath:r,branch:e.branch,resolvedAnchorBranch:e.resolvedAnchorBranch,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl,isUncommitted:e.isUncommitted,commitMessages:e.commitMessages,anchorSha:e.anchorSha,flowFileReasons:e.flowFileReasons,flowsByFlowId:l,gitSignals:c}}var hx=class{async execute(e){let t=mv(e).filter(e=>e.affected&&e.severity!==`NONE`&&e.severity!==void 0||e.uncertain===!0);if(t.length===0)return{costUsd:0,turns:0,maxTurnsHit:!1};let n=mx(e),r=await this.createStrategy(new px).run(t,e.fileTechByFile??new Map,n);return{costUsd:r.costUsd,turns:r.turns,maxTurnsHit:r.maxTurnsHit,maxBudgetHit:r.maxBudgetHit??!1,tokens:r.tokens,batches:r.batches}}},gx=class extends hx{name;constructor(e){super(),this.shouldUseContractEngine=e,this.name=`groupedDeepAnalysis (${e??a.REGRESSION_IMPACT_DEEP_CONTRACT_MODE?`divergence`:`intent-rubric`})`}createStrategy(e){return new lx(e,this.shouldUseContractEngine)}};function _x(e,t){if(e.productFlow==null)return[];let n=new Map(e.productFlow.steps.map(e=>[e.stepId,e]));return t.filter(e=>n.has(e.stepId)).map(e=>{let t=n.get(e.stepId);if((0,m.isDefined)(t))return{stepId:e.stepId,actor:t.actor,action:t.action,reason:e.reason}}).filter(m.isDefined)}async function vx(e,t,r,i,o,s,c,l,u,d){let f=e.filter(e=>e.affected&&e.severity!==`NONE`&&e.severity!==void 0),p=e.filter(e=>e.uncertain===!0),m=[...f,...p.filter(e=>!f.includes(e))],h=0;if(n.logger.info.defaultLog(`[regression-impact] Sonnet deep analysis for ${m.length} flow(s) (${f.length} affected, ${p.length} uncertain) in parallel...`),m.length===0)return{costUsd:0,turns:0,maxTurnsHit:!1};let g=[...new Set(m.flatMap(e=>e.changedFiles))],_=a.getAuthorEmail(t,r,c),v=a.getGitSignalsForFiles(t,g,_,u,i),y=0,b=0,x=!1,S=new A.default({concurrency:6});for(let e of m)S.add(async()=>{try{h+=1,n.logger.info.defaultLog(`[regression-impact] ${h} - Sonnet deep analysis: ${e.flow.name} (${e.changedFiles.length} file(s))`);let a=await c_(e.flow,e.changedFiles,t,r,i,o,s,c,l,v,d?.get(e.flow.flowId));if(a===null){n.logger.info.defaultLog(`[regression-impact] Sonnet deep returned null for flow "${e.flow.name}" — keeping default severity "${e.severity}" with no techChanges/productChanges`);return}y+=a.costUsd,b+=a.turns,x||=a.maxTurnsHit,yx(e,a)}catch(t){n.logger.info.defaultLog(`[regression-impact] Sonnet deep crashed for flow "${e.flow.name}": ${String(t)}`)}});return await S.onIdle(),{costUsd:y,turns:b,maxTurnsHit:x}}function yx(e,t){e.severity=t.severity,e.severityReason=t.productChanges.find(e=>e.severity===t.severity)?.severityReason,e.techChanges=t.techChanges,e.productChanges=t.productChanges,t.affectedSteps&&(e.affectedSteps=_x(e.flow,t.affectedSteps)),e.uncertain===!0&&(e.affected=t.severity!==`NONE`,e.uncertain=!1)}var bx=class{name=`deepAnalysis`;async execute(e){let t=mv(e),n=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0||e.commitMessages===void 0)throw Error(`[impact-pipeline] LegacyDeepStep requires branch/resolvedAnchorBranch/commitMessages`);let r=await vx(t,n,e.branch,e.resolvedAnchorBranch,e.jwtToken,e.anthropicBaseUrl,e.isUncommitted,e.commitMessages,e.anchorSha,e.flowFileReasons);return{costUsd:r.costUsd,turns:r.turns,maxTurnsHit:r.maxTurnsHit}}},xx=class{name=`loadLibraryForSpecificRun`;async execute(e){let t=e.jobInput?.baselineFromAnalysisId?.trim()??``;if(t.length===0)throw Error(`[impact-pipeline] LoadBaselineFromRunStep requires jobInput.baselineFromAnalysisId — the factory should only select this step when it is set`);let{bundle:r,anchorBranch:i,anchorSha:o,catalogId:s,projectType:c,flows:l}=await rv(e.apiService,e.jobInput,t);if(e.jobInput===null)throw Error(`[impact-pipeline] jobInput is required to resolve catalog roots`);let u;try{u=Rm(e.jobInput)}catch(e){throw Error(`[impact-pipeline] failed to resolve catalog roots: ${String(e)}`,{cause:e})}let d=u.cwd,f=Z_(d,i,o,e.isUncommitted),p=a.getCommitMessages(d,f),h=(0,m.isDefined)(o)?`, sha: ${o}`:``;return n.logger.info.defaultLog(`[regression-impact] Anchor: ${i} (resolved: ${f}${h}) — baseline reused from run ${t}`),e.bundle=r,e.flows=l,e.catalogId=s,e.projectType=c,e.anchorBranch=i,e.anchorSha=o,e.resolvedAnchorBranch=f,e.rootPath=d,e.primarySource=u.primarySource,e.dependencyRoots=u.dependencyRoots,e.commitMessages=p,u_}},Sx=class{name=`mappingSnapshotRead`;execute(e){let t=by(dv(e));if(t===void 0)throw Error(`[impact-pipeline] mapping snapshot resume expected a cache file but none loaded — delete the snapshot or disable REGRESSION_IMPACT_DEV_MAPPING_SNAPSHOT`);let r=[...new Set([...t.flowFileMap.values()].flatMap(e=>[...e]))];return n.logger.info.defaultLog(`[regression-impact] Mapping snapshot RESUME — skipped pre-filter + mapping (${r.length} file(s) from cached flowFileMap drive deep analysis)`),e.mappingResult=t,e.flowFileReasons=t.flowFileReasons,e.changedFiles=r,Promise.resolve(u_)}},Cx=class{name=`mappingSnapshotWrite`;execute(e){let t=dv(e),n=uv(e),r=pv(e);if(e.changedFiles===void 0||e.resolvedAnchorBranch===void 0)throw Error(`[impact-pipeline] mapping snapshot write requires changedFiles/resolvedAnchorBranch from prior steps`);return xy(t,{changedFiles:e.changedFiles,flowIds:n.map(e=>e.flowId),resolvedAnchorBranch:e.resolvedAnchorBranch,strategy:a.REGRESSION_IMPACT_MAPPING_STRATEGY},r),Promise.resolve(u_)}};function wx(e){if(typeof e!=`object`||!e)return;let t=e.techChanges;if(Array.isArray(t))return t}var Tx=class{async derive(e,t){let n=e.filter(e=>e.affected&&e.severity!==`NONE`&&e.severity!==void 0||e.uncertain===!0),r=[...new Set(n.flatMap(e=>e.changedFiles))];return this.runPass1(r,n,t)}async runPass1(e,t,r){let i=new Map,s=0,c=0,l=!1,u=0,d=0,f=0,p=0,m=this.indexFileReasons(e,t,r.flowFileReasons),h=[];for(let t=0;t<e.length;t+=a.REGRESSION_IMPACT_DEEP_PASS1_BATCH_SIZE){let n=e.slice(t,t+a.REGRESSION_IMPACT_DEEP_PASS1_BATCH_SIZE);h.push(n.map(e=>({file:e,reason:m.get(e)})))}n.logger.info.defaultLog(`[regression-impact] pass 1: ${e.length} file(s) in ${h.length} batch(es) (concurrency ${a.REGRESSION_IMPACT_DEEP_PASS1_CONCURRENCY})`);let g=new A.default({concurrency:a.REGRESSION_IMPACT_DEEP_PASS1_CONCURRENCY}),_=0;for(let[e,t]of h.entries())g.add(async()=>{try{let a=await this.runTechPassForBatch(t,e+1,r);if(_+=1,n.logger.info.defaultLog(`[regression-impact] pass1 batch ${_}/${h.length} (#${e+1}, ${t.length} file(s)) - got ${a?.techs.length??0} techChange(s)`),a===void 0)return;for(let e of a.techs)i.set(e.file,e);s+=a.costUsd,c+=a.turns,l||=a.maxTurnsHit,u+=a.cacheReadTokens,d+=a.cacheCreationTokens,f+=a.inputTokens,p+=a.outputTokens}catch(e){n.logger.info.defaultLog(`[regression-impact] Dedup deep pass 1 batch crashed (${t.length} file(s)): ${String(e)}`)}});return await g.onIdle(),o.logCacheTokens(`pass 1 totals`,{cacheReadTokens:u,cacheCreationTokens:d,inputTokens:f,outputTokens:p}),{fileTechByFile:i,costUsd:s,turns:c,maxTurnsHit:l}}indexFileReasons(e,t,n){let r=new Map;if(n===void 0)return r;for(let i of e)for(let e of t){if(!e.changedFiles.includes(i))continue;let t=n.get(e.flow.flowId)?.get(i);if((0,m.isDefined)(t)&&t.length>0){r.set(i,t);break}}return r}async runTechPassForBatch(e,t,r){let{query:i,getMessageContentBlocks:s,isResultMessage:c,isErrorResult:l}=await Promise.resolve().then(()=>lz()),u=`pass1 batch #${t}`;o.logAgentCwd(u,r.rootPath);let d=e.map(e=>e.file),f=Gb(e,a.getDiffForFiles(d,r.rootPath,r.branch,r.resolvedAnchorBranch,r.isUncommitted),r.branch,r.resolvedAnchorBranch),p=Wb();a.REGRESSION_IMPACT_LOG_DEEP_PROMPT&&Zb(r.rootPath,`pass1-batch-${t}`,p,f);let m=i({prompt:f,options:{model:a.REGRESSION_IMPACT_DEEP_MODEL,systemPrompt:p,allowedTools:[],disallowedTools:[`Read`,`Grep`,`Glob`,`Bash`,`Task`,`TodoWrite`,`Edit`,`Write`,`WebFetch`,`WebSearch`,`NotebookEdit`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_IMPACT_DEEP_MAX_BUDGET_USD,maxTurns:a.REGRESSION_IMPACT_DEEP_MAX_TURNS,cwd:r.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.SONNET_DEEP_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:r.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:r.jwtToken??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34589
|
-
`)}}}),h=0;for await(let e of m){if(!c(e)){let t=s(e);t!==void 0&&t.length>0&&(h++,o.logAgentActivity(u,h,t));continue}if(l(e)){n.logger.info.defaultLog(`[regression-impact] Pass 1 batch error: ${String(e.subtype)}`);return}let r=e.total_cost_usd,i=e.num_turns,f=i>=a.REGRESSION_IMPACT_DEEP_MAX_TURNS,{cacheReadTokens:p,cacheCreationTokens:m,inputTokens:g,outputTokens:_}=o.logCacheTokensFromMessage(`pass1 batch #${t}`,e),v=
|
|
34590
|
-
`)}}}),m=0;for await(let t of p){if(!c(t)){let e=s(t);e!==void 0&&e.length>0&&(m++,o.logAgentActivity(u,m,e));continue}if(l(t)){n.logger.info.defaultLog(`[regression-impact] Pass 2 error for flow "${e.flow.name}": ${String(t.subtype)}`);return}let r=t.total_cost_usd,i=t.num_turns,d=i>=a.REGRESSION_IMPACT_DEEP_MAX_TURNS,f=o.logCacheTokensFromMessage(`pass2 flow "${e.flow.name}"`,t),p=t.structured_output;if(p===void 0){n.logger.info.defaultLog(`[regression-impact] Pass 2: missing structured_output for "${e.flow.name}"`);return}return{structured:p,costUsd:r,turns:i,maxTurnsHit:d,maxBudgetHit:!1,tokens:f}}}},
|
|
34591
|
-
`)}}});o.logAgentCwd(y,s);let C=0;for await(let e of S){if(!h(e)){let t=_(e);t!==void 0&&t.length>0&&(C++,o.logAgentActivity(y,C,t));continue}if(g(e))return n.logger.info.defaultLog(`[regression-impact] Residual rough-map ${y} error: ${e.subtype} — its files remain incomplete`),b;let t=e.num_turns,i=o.extractCacheTokens(e);return o.logCacheTokensFromMessage(y,e),{guesses:Nx(e.structured_output,r),costUsd:e.total_cost_usd,turns:t,maxTurnsHit:t>=10,tokens:i}}return b}async function Lx(e,t,r,i,o,s,c,l,u=!1){if(t.length===0)return Mx;let d=new Set(e.map(e=>e.flowId)),f=new Set(t),p=Fx(t,a.REGRESSION_IMPACT_RESIDUAL_BATCH_SIZE);n.logger.info.defaultLog(`[regression-impact] Residual rough-map: guessing flows for ${t.length} dropped file(s) in ${p.length} batch(es): ${t.join(`, `)}`);let m=new A.default({concurrency:a.REGRESSION_IMPACT_RESIDUAL_CONCURRENCY}),h=p.entries(),g=(await Promise.all([...h].map(([t,r])=>m.add(async()=>{try{return{batchIndex:t,batchFiles:r,...await Ix(e,r,d,t+1,i,o,s,c,l,u)}}catch(e){n.logger.info.defaultLog(`[regression-impact] Residual rough-map batch #${t+1} crashed (${r.length} file(s)): ${String(e)}`);return}})))).filter(e=>e!==void 0).sort((e,t)=>e.batchIndex-t.batchIndex),_=new Set,v=new Set,y=0,b=0,x=!1,S={...jx},C=[];for(let e of g){let t=Px(e.guesses,f,r);for(let e of t.roughGuessedFlowIds)_.add(e);for(let e of t.rescuedFiles)v.add(e);y+=e.costUsd,b+=e.turns,x||=e.maxTurnsHit,S.inputTokens+=e.tokens.inputTokens,S.outputTokens+=e.tokens.outputTokens,S.cacheReadTokens+=e.tokens.cacheReadTokens,S.cacheCreationTokens+=e.tokens.cacheCreationTokens,C.push({label:`residual-batch-${e.batchIndex+1}`,totalFiles:e.batchFiles.length,costUsd:e.costUsd,turns:e.turns,maxTurnsHit:e.maxTurnsHit,maxBudgetHit:!1,tokens:e.tokens})}let w=[...v],T=t.filter(e=>!v.has(e));return n.logger.info.defaultLog(`[regression-impact] Residual rough-map: rescued ${w.length} file(s) onto ${_.size} flow(s); ${T.length} file(s) still incomplete`+(T.length>0?` (no confident guess): ${T.join(`, `)}`:``)),n.logger.info.defaultLog(`[regression-impact] Residual rough-map summary (${t.length} dropped file(s)):`),n.logger.info.defaultLog(`[regression-impact] → rescued onto flows (${w.length}): ${w.length>0?w.join(`, `):`(none)`}`),n.logger.info.defaultLog(`[regression-impact] → still unmapped (${T.length}): ${T.length>0?T.join(`, `):`(none)`}`),{roughGuessedFlowIds:_,rescuedFiles:w,totalFiles:t.length,costUsd:y,turns:b,maxTurnsHit:x,tokens:S,batchMetrics:C}}var Rx=class{name=`residualRoughMap`;async execute(e){let t=pv(e),n=t.incompleteFiles??[];if(n.length===0)return u_;let r=uv(e),i=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0)throw Error(`[impact-pipeline] ResidualRoughMapStep requires branch/resolvedAnchorBranch`);let a=await Lx(r,n,t,i,e.branch,e.resolvedAnchorBranch,e.jwtToken,e.anthropicBaseUrl,e.isUncommitted);if(e.roughGuessedFlowIds=a.roughGuessedFlowIds,a.rescuedFiles.length>0){let e=new Set(a.rescuedFiles);t.incompleteFiles=n.filter(t=>!e.has(t))}return{costUsd:a.costUsd,turns:a.turns,maxTurnsHit:a.maxTurnsHit,tokens:a.tokens,totalFiles:a.totalFiles,mappedFiles:a.rescuedFiles.length,batches:a.batchMetrics.length>0?a.batchMetrics:void 0}}},zx=class{name=`verifyProductIntent`;async execute(e){let t=e.detectedRegressions??[];if(t.length===0)return u_;let n=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0)throw Error(`[impact-pipeline] VerifyProductIntentStep requires branch/resolvedAnchorBranch from ResolveCompare`);let r=e.changedFiles??[],i=a.getDiffForFiles(r,n,e.branch,e.resolvedAnchorBranch,e.isUncommitted),o=a.formatCommitMessagesBlock(e.commitMessages??[]),s=Cy(e.jobInput,n),c=await cb({anchorRef:e.resolvedAnchorBranch,compareRef:e.branch,rootPath:n,diffText:i,commitMessagesBlock:o,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl,primarySource:s.primarySource,dependencyRoots:s.dependencyRoots},t);e.detectedRegressions=c.regressions,e.detectCostUsd=(e.detectCostUsd??0)+c.costUsd,e.detectTurns=(e.detectTurns??0)+c.turns;let l=e.detectTokens;return e.detectTokens=l===void 0?c.tokens:{inputTokens:(l.inputTokens??0)+(c.tokens.inputTokens??0),outputTokens:(l.outputTokens??0)+(c.tokens.outputTokens??0),cacheReadTokens:(l.cacheReadTokens??0)+(c.tokens.cacheReadTokens??0),cacheCreationTokens:(l.cacheCreationTokens??0)+(c.tokens.cacheCreationTokens??0)},{costUsd:c.costUsd,turns:c.turns,maxTurnsHit:c.maxTurnsHit,totalFiles:c.regressions.length,tokens:c.tokens}}},Bx=class{name=`writeDetectResult`;isTerminal=!0;async execute(e){let t=e.detectedRegressions??[],r=e.branch??`unknown`,i=`(file write disabled)`;if(a.REGRESSION_FIRST_WRITE_DETECT_FILE){let n=e.detectCostUsd??0,o=e.detectTurns??0,s=e.detectTokens??{inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0},c=s.cacheReadTokens+s.cacheCreationTokens+s.inputTokens,l=c>0?s.cacheReadTokens/c*100:0;if(!I.default.isAbsolute(a.REGRESSION_DEV_ARTIFACT_DIR))throw Error(`[regression-first] REGRESSION_DEV_ARTIFACT_DIR must be an absolute path when REGRESSION_FIRST_WRITE_DETECT_FILE is enabled (got: "${a.REGRESSION_DEV_ARTIFACT_DIR}"). A relative/empty dir resolves against the scanned repo's cwd.`);let u=qy(r,e.detectVariant??`v1`),d=I.default.join(a.REGRESSION_DEV_ARTIFACT_DIR,`my-runs`);(0,y.mkdirSync)(d,{recursive:!0}),i=I.default.join(d,`regression-detect-${u}.json`);let f={anchorRef:e.resolvedAnchorBranch??`unknown`,compareRef:r,count:t.length,costUsd:n,turns:o,durationSeconds:(Date.now()-e.startTime)/1e3,tokens:{...s,cacheHitPct:Number(l.toFixed(1))},findings:t};(0,y.writeFileSync)(i,JSON.stringify(f,null,2))}let o=[...t].sort((e,t)=>t.score-e.score);n.logger.info.defaultLog(`[regression-first] Detect result: ${t.length} finding(s) → ${i}`);for(let e of o)n.logger.info.defaultLog(`[regression-first] [${e.score}] ${e.severity} ${e.title} (${e.file})`);return u_}};function Vx(e){if(e===`agentic`||e===`agentic-ast`||e===`shallow`)return new bb(e);throw Error(`[impact-pipeline] unsupported mapping strategy "${e}" — only "agentic", "agentic-ast", and "shallow" are wired in this version`)}function Hx(e,t){if(t&&e.devMappingSnapshotResume)return[new Sx];let n=t?[new Ax,Vx(e.mappingStrategy)]:[Vx(e.mappingStrategy)];return e.residualRoughMap&&n.push(new Rx),e.devMappingSnapshotWrite&&n.push(new Cx),n}function Ux(e,t,n){let r=[e,new Cv,new Bb,new Ax,t];return n!==void 0&&r.push(n),r.push(new Bx),a.REGRESSION_FIRST_POST_EXPERIMENTAL&&r.push(new kx),r.push(new Db,new vv,new cv),r}function Wx(e){return e.regressionFirstV2===!0||e.regressionFirstV2Adj===!0?new Fb:e.regressionFirstV3===!0?new Ib:e.regressionFirstSingle===!0?new Pb:new Nb}function Gx(e,t){if(!(e.regressionFirst!==!0&&e.regressionFirstV2!==!0&&e.regressionFirstV3!==!0&&e.regressionFirstV2Adj!==!0&&e.regressionFirstSingle!==!0))return new Y_(Ux(t,Wx(e),Kx(e)))}function Kx(e){if(e.regressionFirstV3===!0)return new zx;if(e.regressionFirstV2Adj===!0)return new _b}let qx={create(e,t=!1){let n=e.baselineFromAnalysisId!==void 0&&e.baselineFromAnalysisId.length>0?new xx:new av,r=Gx(e,n);if(r!==void 0)return r;let i=t?[...Hx(e,!1),new Sb]:[n,new Cv,...Hx(e,!0),new Sb];if(e.stopAfterMapping)return i.push(new vv,new cv),new Y_(i);if(e.deepMode===`legacy`)i.push(new bx);else{if(!e.skipPass1&&(i.push(new Ex),e.stopAfterPass1))return i.push(new vv,new cv),new Y_(i);i.push(e.pass2Grouped?new gx(e.contractMode):new Ox)}return e.calibrationEnabled&&i.push(new Mb),i.push(new vv,new cv),new Y_(i)}};function Jx(e){if(e!==void 0)return e===`perflow`?`legacy`:`dedup`}function Yx(e){if(e!==void 0)return e===`divergence`}function Xx(e){return e===`regression-first`}function Zx(e){return e===`regression-first-2`}function Qx(e){return e===`regression-first-3`}function $x(e){return e===`regression-first-2-adj`}function eS(e){return e===`regression-first-single`}async function tS(e,t,n,r,i,a,s,c){let l=Date.now(),u=t===`LOCAL`;o.setAgentLogEnabled(s?.agentLog??!1);let d={reportsDir:e,runType:t,isUncommitted:u,jwtToken:n,anthropicBaseUrl:r,apiService:i,globalConfigService:a,jobInput:s,compareBranch:c,startTime:l,stepMetrics:[]},f=s?.analysisMode??`regression-first-2`,p=Jx(f),m=Yx(f),h=Xx(f),g=Zx(f),_=Qx(f),v=$x(f),y=eS(f),b=Sy(s?.projectRootPath,p,s?.baselineFromAnalysisId,m,s?.fileMappingMode,h,g,_,v,y);if(await qx.create(b).run(d),h||g||_||v||y)return d.result??{flowImpacts:[],catalogId:null,rootPath:d.rootPath??``,changedFiles:d.changedFiles??[],branch:d.branch??``,headSha:d.headSha,anchorBranch:d.resolvedAnchorBranch??``,anchorSha:d.anchorSha,runType:t};if(d.result===void 0)throw Error(`[regression-impact] pipeline finished without producing a result (ReportStep did not run)`);return d.result}var nS=t.__toESM(n.require_decorateMetadata()),rS=t.__toESM(nn()),iS=t.__toESM(n.require_decorate()),aS,oS;let sS=class{constructor(e,t,n){this.globalConfigService=e,this.apiService=t,this.authStorage=n}async run(e){let t=await this.authStorage.getJWTToken(),n=await xh(this.apiService,this.globalConfigService);return n?.crossComponent?J_(e.reportsDir,t,this.globalConfigService.getAnthropicProxyUrl(),this.apiService,this.globalConfigService,n,e.compareBranch):(n?.analysisMode===`hunterImpact`?py:tS)(e.reportsDir,e.runType,t,this.globalConfigService.getAnthropicProxyUrl(),this.apiService,this.globalConfigService,n,e.compareBranch)}};sS=(0,iS.default)([(0,h.injectable)(),(0,rS.default)(0,(0,h.inject)(n.GlobalConfigService)),(0,rS.default)(1,(0,h.inject)(ln)),(0,rS.default)(2,(0,h.inject)(tn)),(0,nS.default)(`design:paramtypes`,[Object,typeof(aS=ln!==void 0&&ln)==`function`?aS:Object,typeof(oS=tn!==void 0&&tn)==`function`?oS:Object])],sS);var cS=t.__toESM(n.require_decorateMetadata()),lS=t.__toESM(nn()),uS=t.__toESM(n.require_decorate()),dS,fS;let pS=class{constructor(e,t,n){this.globalConfigService=e,this.apiService=t,this.authStorage=n}async run(e){let t=await this.authStorage.getJWTToken(),n=await xh(this.apiService,this.globalConfigService);return py(e.reportsDir,e.runType,t,this.globalConfigService.getAnthropicProxyUrl(),this.apiService,this.globalConfigService,n,e.compareBranch)}};pS=(0,uS.default)([(0,h.injectable)(),(0,lS.default)(0,(0,h.inject)(n.GlobalConfigService)),(0,lS.default)(1,(0,h.inject)(ln)),(0,lS.default)(2,(0,h.inject)(tn)),(0,cS.default)(`design:paramtypes`,[Object,typeof(dS=ln!==void 0&&ln)==`function`?dS:Object,typeof(fS=tn!==void 0&&tn)==`function`?fS:Object])],pS);let mS=`claude-haiku-4-5-20251001`,hS=`Read,Write,Edit,Bash(npm *),Bash(npx *),Bash(yarn *),Bash(pnpm *),Bash(bun *),Bash(node *),Bash(python *),Bash(python3 *),Bash(uv *),Bash(uvx *),Bash(pytest *),Bash(pylint *),Bash(ruff *),Bash(black *),Bash(mypy *),Bash(pyright *),Bash(isort *),Bash(flake8 *),Bash(autopep8 *),Bash(eslint *),Bash(prettier *),Bash(biome *),Bash(tsc *),Bash(vue-tsc *),Bash(svelte-check *),Bash(.venv/bin/* *),Bash(venv/bin/* *),Bash(.venv/Scripts/* *),Bash(venv/Scripts/* *),Bash(PYTHONPATH=* python *),Bash(PYTHONPATH=* python3 *),Bash(PYTHONPATH=* .venv/bin/* *),Bash(PYTHONPATH=* venv/bin/* *),Bash(PYTHONPATH=* .venv/Scripts/* *),Bash(PYTHONPATH=* venv/Scripts/* *),Bash(true),Glob,Grep`.split(`,`),gS={type:`object`,additionalProperties:!1,required:[`status`],properties:{status:{type:`string`,enum:[`generated`,`skipped`,`aborted`,`no-viable-tests`],description:"`generated` when green tests were shipped; `skipped` when the skill triaged the method as trivial; `aborted` for unresolvable inputs; `no-viable-tests` when every drafted test had to be removed (the file is left in place for inspection)."},reason:{type:`string`,description:"Short human-readable explanation. Required when status is not `generated`."},testCount:{type:`integer`,minimum:0,description:"Total number of tests shipped. Only meaningful when status is `generated`."},passedCount:{type:`integer`,minimum:0,description:"Number of passing tests. Only meaningful when status is `generated`."},failedCount:{type:`integer`,minimum:0,description:"Number of failing tests. Only meaningful when status is `generated`."}}};var _S=t.__toESM(n.require_decorateMetadata()),vS=t.__toESM(nn()),yS=t.__toESM(n.require_decorate()),bS,xS,SS,CS;function wS(e){if((0,m.isDefined)(e))return e;try{let e=(0,L.createRequire)(__filename)?.resolve?.(`@anthropic-ai/claude-agent-sdk`);if(e)return d.default.join(d.default.dirname(e),`cli.js`)}catch{}return d.default.join(__dirname,`..`,`..`,`node_modules`,`@anthropic-ai`,`claude-agent-sdk`,`cli.js`)}function TS(){return d.default.join(__dirname,`..`,`plugin`)}function ES(e,t){return new Promise(n=>{if(t.aborted){n();return}let r=setTimeout(n,e);t.addEventListener(`abort`,()=>{clearTimeout(r),n()},{once:!0})})}function DS(e,t){return{type:`user`,message:{role:`user`,content:e},parent_tool_use_id:null,session_id:t}}async function*OS(e,t,n,r,i){yield DS(e,t),await ES(3e4,n),!n.aborted&&(await r.flush(),i.debug(`[plugin-agent] Phase transition: recon → draft`),yield DS(`<system-reminder>Recon time is over. Move to Phase 3 — draft the test file now.</system-reminder>`,t),await ES(3e4,n),!n.aborted&&(await r.flush(),i.debug(`[plugin-agent] Phase transition: draft → validate`),yield DS(`<system-reminder>Draft time is over. Move to Phase 4 — run test, lint, and format gates now.</system-reminder>`,t),await ES(15e3,n),!n.aborted&&(await r.flush(),i.debug(`[plugin-agent] Phase transition: validate → stop`),yield DS(`<system-reminder>Time is up. Stop all work. Exit with your structured output now.</system-reminder>`,t))))}let kS=class{constructor(e,t,n,r,i){this.globalConfigService=e,this.authStorage=t,this.apiService=n,this.metricReportService=r,this.testResultCounterService=i}async run(e){let t=this.globalConfigService.getPluginPath()??TS(),a=d.default.join(t,`skills`,`early-generate-unit-tests`,`references`),o=this.globalConfigService.getBackendURL(),s=Date.now(),c=()=>Date.now()-s;if(!o)return{outcome:`error`,success:!1,error:`backendURL is not configured`,durationMs:c()};let l=e.requestId??n.logger.getRequestId(),u=new AbortController;(0,m.isDefined)(e.abortSignal)&&(e.abortSignal.aborted?u.abort():e.abortSignal.addEventListener(`abort`,()=>u.abort(),{once:!0}));let p=await this.authStorage.getJWTToken()??``,h=wS(this.globalConfigService.getClaudeCodeExecutablePath()),g=r.getFileLanguage(e.filePath),_=r.isPythonFile(e.filePath)?n.TestFramework.PYTEST:this.globalConfigService.getTestFramework();try{await this.apiService.post(`/api/v1/tests/generate-prompt`,{testedCodeDataSource:{filePath:e.filePath,relativePathToTestFile:``,testFramework:_,language:g,testedMethod:{name:e.methodName,isAsync:!1,isStatic:!1,parameters:[],imports:[],decorators:[],code:``,exportType:`named`,accessModifierType:`public`,signature:e.methodName,kind:`function`},missingDependencies:[],codeDependencies:[],usages:[],libraries:[],gitUrl:null},llmConfig:{},clientSource:this.globalConfigService.getClientSource()},{headers:{[Ht]:l}})}catch(e){if(e instanceof Bt&&e.code===Rt.NOT_ENOUGH_BALANCE_ERROR)return{outcome:`error`,success:!1,error:e.message,errorCode:e.code,durationMs:c()};n.logger.info.defaultLog(`[plugin-agent] generate-prompt side-effect failed: ${e}`)}let y=(0,m.isDefined)(e.testFilePath)?new vr(e.testFilePath):await vr.getNextTestFile(e.filePath,e.methodName,e.workingDirectory);if(e.preserveExistingContent===!0&&!(0,m.isDefined)(e.testFilePath)){let t=await vr.getLatestTestFile(e.filePath,e.methodName);if((0,m.isDefined)(t)){let e=await new vr(r.absoluteToRelativePath(t)).getText();e.trim().length>0&&await y.replace(e)}}let b=(await y.isFileExists()?await y.getText():``).trim().length>0,x=e.preserveExistingContent===!0&&b;if(e.preserveExistingContent===!0&&!b&&n.logger.default.warn(`[plugin-agent] preserveExistingContent was requested but the target file is empty — falling back to generate mode.`),!x){let t=r.isPythonFile(e.filePath)?`#`:`//`;await y.replace(`${t} early-test-generation-in-progress`)}let S=y.getAbsoluteFilePath(),C=y.getFilePath(),w=d.default.relative(e.workingDirectory,S),T=d.default.join(a,`framework`,`${_}.md`),E=d.default.join(a,`${g}.md`),D=e=>(0,f.readFile)(e,`utf8`).catch(()=>(n.logger.default.warn(`[plugin-agent] Reference file not found: ${e}`),``)),[O,k]=await Promise.all([D(T),D(E)]),A=[`Generate unit tests for method \`${e.methodName}\` in: ${e.filePath}`,`Framework: ${_}`,`Working directory: ${d.default.normalize(e.workingDirectory)}`,`testFilePath: ${d.default.normalize(w)}`];x&&A.push(``,`ENHANCE MODE: The testFilePath already contains existing tests. Read the file first, then improve the tests according to the user's request below. Keep passing tests intact unless the request says otherwise; add, edit, or delete individual tests as the request requires. Do NOT start from an empty file.`),(0,m.isDefined)(e.userPrompt)&&e.userPrompt.trim()!==``&&A.push(``,e.userPrompt),O!==``&&A.push(``,`---`,`## Framework Reference`,O),k!==``&&A.push(``,`---`,`## Language Reference`,k);let j=A.join(`
|
|
34592
|
-
`),M=this.globalConfigService.getProgressLogger({methodName:e.methodName});n.logger.info.defaultLog(`[plugin-agent] Starting plugin agent for file: ${e.filePath}, testFile: ${w}`);let ee=l,N=new sf(this.metricReportService,ee,
|
|
34593
|
-
`)},model:
|
|
34594
|
-
`)},stderr:e=>{n.logger.info.defaultLog(`[plugin-agent] STDERR: ${e}`)},hooks:{PreToolUse:[{matcher:`Write|Edit`,hooks:[te]},{matcher:`Read`,hooks:[sd]},{matcher:`Bash`,hooks:[od,Au]}]}}}),I=0;try{for await(let t of F){I+=1,await N.processMessage(t);let r=t.type;if(M.debug(`[plugin-agent] stream message #${I} type=${r??`unknown`}`),r===`assistant`){let e=t.message?.content,r=Array.isArray(e)?e:[],i=r.filter(e=>e.type===`tool_use`).map(e=>e.name),a=r.some(e=>e.type===`text`);if(i.length>0)n.logger.info.defaultLog(`[plugin-agent] Tool calls: ${i.join(`, `)}`);else if(a){let e=r.filter(e=>e.type===`text`).map(e=>e.text).join(` `).slice(0,500);n.logger.info.defaultLog(`[plugin-agent] Agent thinking: ${e}`)}}if(i.isResultMessage(t)){await N.flush();let r=c();if(i.isErrorResult(t))return n.logger.default.warn(`[plugin-agent] Agent error: ${t.subtype}`),{outcome:`error`,success:!1,costUsd:t.total_cost_usd,error:t.subtype,durationMs:r};n.logger.info.defaultLog(`[plugin-agent] Agent completed. Cost: $${t.total_cost_usd.toFixed(4)} — ${r}ms`);let a=AS(t.structured_output),o=a?.status,s=a?.reason;if(o===`skipped`||o===`aborted`||o===`no-viable-tests`){let e=(0,m.isDefined)(s)?`${o}: ${s}`:o;return n.logger.info.defaultLog(`[plugin-agent] ${o} by skill: ${s??`no reason given`}`),this.metricReportService.saveTestMetrics({requestId:ee,timeElapsed:r,errorCause:e}),o===`skipped`?{outcome:`skipped`,success:!0,skipped:!0,skipReason:s??`trivial`,costUsd:t.total_cost_usd,durationMs:r}:{outcome:o,success:!1,costUsd:t.total_cost_usd,error:e,durationMs:r}}if(o!==`generated`)return n.logger.default.warn(`[plugin-agent] Missing or invalid structured_output — treating as error.`),{outcome:`error`,success:!1,costUsd:t.total_cost_usd,error:`invalid_structured_output`,durationMs:r};let l=await y.getText(),u=await this.testResultCounterService.getValidationReport(S,e.methodName).catch(()=>void 0),d=N.getLatestTestResult(),f=a?.passedCount??d?.passed??u?.greenTestsCount,p=a?.failedCount??d?.failed??u?.redTestsCount;return this.metricReportService.saveTestMetrics({requestId:ee,timeElapsed:r,validationReport:u}),l!==``&&this.metricReportService.saveOperationMetricsTrace({parentRequestId:ee,llmModel:mS,testFileContent:l}),{outcome:`generated`,success:!0,costUsd:t.total_cost_usd,testFilePath:C,durationMs:r,greenTestsCount:f,redTestsCount:p}}}return await N.flush(),{outcome:`error`,success:!1,error:`stream_ended_without_result`,durationMs:c()}}finally{u.abort()}}};kS=(0,yS.default)([(0,h.injectable)(),(0,vS.default)(0,(0,h.inject)(n.GlobalConfigService)),(0,vS.default)(1,(0,h.inject)(tn)),(0,vS.default)(2,(0,h.inject)(ln)),(0,vS.default)(3,(0,h.inject)(Dn)),(0,vS.default)(4,(0,h.inject)(jl)),(0,_S.default)(`design:paramtypes`,[Object,typeof(bS=tn!==void 0&&tn)==`function`?bS:Object,typeof(xS=ln!==void 0&&ln)==`function`?xS:Object,typeof(SS=Dn!==void 0&&Dn)==`function`?SS:Object,typeof(CS=jl!==void 0&&jl)==`function`?CS:Object])],kS);function AS(e){if(!(0,m.isDefined)(e)||typeof e!=`object`)return;let t=e,n=t.status;if(!(n!==`generated`&&n!==`skipped`&&n!==`aborted`&&n!==`no-viable-tests`))return{status:n,reason:typeof t.reason==`string`?t.reason:void 0,testCount:typeof t.testCount==`number`?t.testCount:void 0,passedCount:typeof t.passedCount==`number`?t.passedCount:void 0,failedCount:typeof t.failedCount==`number`?t.failedCount:void 0}}var jS=t.__toESM(n.require_decorateMetadata()),MS=t.__toESM(nn()),NS=t.__toESM(n.require_decorate()),PS,FS,IS,LS,RS,zS,BS,VS,HS,US,WS,GS,KS,qS,JS;let YS=class{constructor(e,t,n,r,i,a,o,s,c,l,u,d,f,p){this.testablesController=e,this.coverageController=t,this.generateTestController=n,this.authService=r,this.globalConfigService=i,this.testResultCounterService=a,this.testableContextService=o,this.dynamicPromptService=s,this.testValidatorService=c,this.regressionImpactManager=l,this.regressionCatalogManager=u,this.regressionE2eCatalogManager=d,this.pluginAgentRunner=f,this.huntFirstImpactManager=p}async init(e){await this.authService.authorize(e)}async getTestables(e){return this.testablesController.getTestables(e)}async getAllMethodsCount(e){return this.testablesController.getAllMethodsCount(e)}async resolveEarlyTestFile(e){return this.testablesController.resolveEarlyTestFile(e)}async getTestableFileMap(e){return this.testablesController.getTestableFileMap(e)}async generateCoverage(e){return this.coverageController.generateCoverage(e)}async setCoverage(e){return this.coverageController.setCoverage(e)}async getCoverageTree(){return this.coverageController.getCoverageTree()}async getCoverageForFiles(e){return this.coverageController.getCoverageForFiles(e)}async generateTests(e,t){return this.generateTestController.addGenerationToQueue({filePath:e,testable:t})}async bulkGenerateTests(e,t,n,r){return this.generateTestController.bulkGenerateTests(e,t,n,r)}updateContext(e){this.globalConfigService.updateContext(e)}updateRootPath(e){this.globalConfigService.updateRootPath(e)}async getValidationReport(e,t){return this.testResultCounterService.getValidationReport(e,t)}async getTestedCodeDataSource(e,t,n){return this.testableContextService.getTestedCodeDataSource(e,t,n)}async runDynamicPrompt(e,t,n){return(await this.dynamicPromptService.initDynamicPrompt(e,t,0,n))?.validationReport??null}async validateTestsByCode(e,t){return this.testValidatorService.validateTestsByCode(e,t)}async runRegressionImpact(e){return this.regressionImpactManager.run(e)}async runHuntFirstImpact(e){return this.huntFirstImpactManager.run(e)}async runRegressionCatalog(){return this.regressionCatalogManager.run()}async runRegressionE2eCatalog(){return this.regressionE2eCatalogManager.run()}async runPluginAgent(e){let t=this.globalConfigService.getRootPath();return this.pluginAgentRunner.run({...e,workingDirectory:t})}};(0,NS.default)([n.WithLoggerContext({category:V.INITIALIZATION}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[String]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`init`,null),(0,NS.default)([n.WithLoggerContext({category:V.GET_TESTABLES}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[String]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`getTestables`,null),(0,NS.default)([n.WithLoggerContext({category:V.GET_TESTABLES}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[String]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`getAllMethodsCount`,null),(0,NS.default)([n.WithLoggerContext({category:V.GET_TESTABLES}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[Object]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`resolveEarlyTestFile`,null),(0,NS.default)([n.WithLoggerContext({category:V.GET_TESTABLES}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[Array]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`getTestableFileMap`,null),(0,NS.default)([n.WithLoggerContext({category:V.GENERATE_COVERAGE}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[Array]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`generateCoverage`,null),(0,NS.default)([n.WithLoggerContext({category:V.SET_COVERAGE}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[Object]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`setCoverage`,null),(0,NS.default)([n.WithLoggerContext({category:V.GET_COVERAGE}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`getCoverageTree`,null),(0,NS.default)([n.WithLoggerContext({category:V.GET_COVERAGE}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[Array]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`getCoverageForFiles`,null),(0,NS.default)([n.WithLoggerContext({category:V.GENERATE_TESTS}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[String,Object]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`generateTests`,null),(0,NS.default)([n.WithLoggerContext({category:V.GENERATE_TESTS}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[Array,Object,String,typeof(JS=m.Fn!==void 0&&m.Fn)==`function`?JS:Object]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`bulkGenerateTests`,null),(0,NS.default)([n.WithLoggerContext({category:V.GENERATE_TESTS}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[String,String]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`getValidationReport`,null),(0,NS.default)([n.WithLoggerContext({category:V.GET_TESTED_CODE_DATA_SOURCE}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[String,Object,String]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`getTestedCodeDataSource`,null),(0,NS.default)([n.WithLoggerContext({category:V.DYNAMIC_PROMPT}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[String,Object,String]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`runDynamicPrompt`,null),(0,NS.default)([n.WithLoggerContext({category:V.TEST_VALIDATION}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[String,String]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`validateTestsByCode`,null),(0,NS.default)([n.WithLoggerContext({category:V.REGRESSION_IMPACT}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[Object]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`runRegressionImpact`,null),(0,NS.default)([n.WithLoggerContext({category:V.REGRESSION_IMPACT}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[Object]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`runHuntFirstImpact`,null),(0,NS.default)([n.WithLoggerContext({category:V.REGRESSION_CATALOG}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`runRegressionCatalog`,null),(0,NS.default)([n.WithLoggerContext({category:V.REGRESSION_CATALOG}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`runRegressionE2eCatalog`,null),(0,NS.default)([n.WithLoggerContext({category:V.GENERATE_TESTS}),(0,jS.default)(`design:type`,Function),(0,jS.default)(`design:paramtypes`,[Object]),(0,jS.default)(`design:returntype`,Promise)],YS.prototype,`runPluginAgent`,null),YS=(0,NS.default)([(0,h.injectable)(),(0,MS.default)(0,(0,h.inject)(Mm)),(0,MS.default)(1,(0,h.inject)(It)),(0,MS.default)(2,(0,h.inject)(Sm)),(0,MS.default)(3,(0,h.inject)(Yo)),(0,MS.default)(4,(0,h.inject)(n.GlobalConfigService)),(0,MS.default)(5,(0,h.inject)(jl)),(0,MS.default)(6,(0,h.inject)(Wp)),(0,MS.default)(7,(0,h.inject)(Yl)),(0,MS.default)(8,(0,h.inject)(ml)),(0,MS.default)(9,(0,h.inject)(sS)),(0,MS.default)(10,(0,h.inject)(Oh)),(0,MS.default)(11,(0,h.inject)($g)),(0,MS.default)(12,(0,h.inject)(kS)),(0,MS.default)(13,(0,h.inject)(pS)),(0,jS.default)(`design:paramtypes`,[typeof(PS=Mm!==void 0&&Mm)==`function`?PS:Object,typeof(FS=It!==void 0&&It)==`function`?FS:Object,typeof(IS=Sm!==void 0&&Sm)==`function`?IS:Object,typeof(LS=Yo!==void 0&&Yo)==`function`?LS:Object,typeof(RS=n.GlobalConfigService!==void 0&&n.GlobalConfigService)==`function`?RS:Object,typeof(zS=jl!==void 0&&jl)==`function`?zS:Object,typeof(BS=Wp!==void 0&&Wp)==`function`?BS:Object,typeof(VS=Yl!==void 0&&Yl)==`function`?VS:Object,typeof(HS=ml!==void 0&&ml)==`function`?HS:Object,typeof(US=sS!==void 0&&sS)==`function`?US:Object,typeof(WS=Oh!==void 0&&Oh)==`function`?WS:Object,typeof(GS=$g!==void 0&&$g)==`function`?GS:Object,typeof(KS=kS!==void 0&&kS)==`function`?KS:Object,typeof(qS=pS!==void 0&&pS)==`function`?qS:Object])],YS);let XS=!1;e.AST=dt,e.AccessModifierType=le,e.AstModuleInfo=lt,e.CONCURRENCY=n.CONCURRENCY,e.COVERAGE_THRESHOLD=n.COVERAGE_THRESHOLD,e.CalculateCoverageOption=n.CalculateCoverageOption,e.DEFAULT_TYPE_KIND=de,e.ExportType=ce,e.GenerateTestsOutputType=n.GenerateTestsOutputType,e.GeneratedTestStructure=n.GeneratedTestStructure,e.LibraryName=ue,e.RequestSource=n.RequestSource,Object.defineProperty(e,`TSAgent`,{enumerable:!0,get:function(){return YS}}),e.TestFileName=n.TestFileName,e.TestFramework=n.TestFramework,e.TestStructureVariant=n.TestStructureVariant,e.TestSuffix=n.TestSuffix,e.WithTsMorphManager=ke,e.createTSAgent=(e={})=>((XS?n.inversify_default.rebindSync(n.GlobalConfigService):n.inversify_default.bind(n.GlobalConfigService)).toDynamicValue(()=>new n.GlobalConfigService(e)).inSingletonScope(),XS=!0,n.inversify_default.get(YS)),e.findLintConfigPath=B,e.getUnitTests=He,e.tsMorphManager=Oe}))();const PU={TSAgent:Symbol.for(`TSAgent`),CliOptions:Symbol.for(`CliOptions`),SCMHostService:Symbol.for(`SCMHostService`)};var FU=u(bR());let IU=function(e){return e.PR=`generate-for-pr`,e.COMMIT=`generate-for-commit`,e.PROJECT=`generate-for-project`,e.COVERAGE=`generate-coverage`,e.GATHER_STATS=`gather-stats`,e.REGRESSION_IMPACT=`generate-impact`,e.REGRESSION_CATALOG=`generate-catalog`,e.HUNT_FIRST_IMPACT=`generate-hunt-first-impact`,e.PROCESS_JOB=`process-job`,e}({});const LU=Object.freeze({status:`aborted`});function RU(e,t,n){function r(n,r){var i;Object.defineProperty(n,`_zod`,{value:n._zod??{},enumerable:!1}),(i=n._zod).traits??(i.traits=new Set),n._zod.traits.add(e),t(n,r);for(let e in o.prototype)e in n||Object.defineProperty(n,e,{value:o.prototype[e].bind(n)});n._zod.constr=o,n._zod.def=r}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var zU=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},BU=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};const VU={};function HU(e){return e&&Object.assign(VU,e),VU}function UU(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function WU(e,t){return typeof t==`bigint`?t.toString():t}function GU(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function KU(e){return e==null}function qU(e){let t=e.startsWith(`^`)?1:0,n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function JU(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}const YU=Symbol(`evaluating`);function XU(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==YU)return r===void 0&&(r=YU,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function ZU(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function QU(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function $U(e){return JSON.stringify(e)}const eW=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function tW(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}const nW=GU(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function rW(e){if(tW(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(tW(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function iW(e){return rW(e)?{...e}:Array.isArray(e)?[...e]:e}const aW=new Set([`string`,`number`,`symbol`]);function oW(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function sW(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function cW(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function lW(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}const uW={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function dW(e,t){let n=e._zod.def;return sW(e,QU(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return ZU(this,`shape`,e),e},checks:[]}))}function fW(e,t){let n=e._zod.def;return sW(e,QU(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return ZU(this,`shape`,r),r},checks:[]}))}function pW(e,t){if(!rW(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0)throw Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");return sW(e,QU(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return ZU(this,`shape`,n),n},checks:[]}))}function mW(e,t){if(!rW(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return sW(e,{...e._zod.def,get shape(){let n={...e._zod.def.shape,...t};return ZU(this,`shape`,n),n},checks:e._zod.def.checks})}function hW(e,t){return sW(e,QU(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return ZU(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function gW(e,t,n){return sW(t,QU(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return ZU(this,`shape`,i),i},checks:[]}))}function _W(e,t,n){return sW(t,QU(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return ZU(this,`shape`,i),i},checks:[]}))}function vW(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function yW(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function bW(e){return typeof e==`string`?e:e?.message}function xW(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=bW(e.inst?._zod.def?.error?.(e))??bW(t?.error?.(e))??bW(n.customError?.(e))??bW(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function SW(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function CW(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}const wW=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,WU,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},TW=RU(`$ZodError`,wW),EW=RU(`$ZodError`,wW,{Parent:Error});function Fee(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function DW(e,t){let n=t||function(e){return e.message},r={_errors:[]},i=e=>{for(let t of e.issues)if(t.code===`invalid_union`&&t.errors.length)t.errors.map(e=>i({issues:e}));else if(t.code===`invalid_key`)i({issues:t.issues});else if(t.code===`invalid_element`)i({issues:t.issues});else if(t.path.length===0)r._errors.push(n(t));else{let e=r,i=0;for(;i<t.path.length;){let r=t.path[i];i===t.path.length-1?(e[r]=e[r]||{_errors:[]},e[r]._errors.push(n(t))):e[r]=e[r]||{_errors:[]},e=e[r],i++}}};return i(e),r}const OW=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new zU;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>xW(e,a,HU())));throw eW(t,i?.callee),t}return o.value},kW=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>xW(e,a,HU())));throw eW(t,i?.callee),t}return o.value},AW=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new zU;return a.issues.length?{success:!1,error:new(e??TW)(a.issues.map(e=>xW(e,i,HU())))}:{success:!0,data:a.value}},jW=AW(EW),MW=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>xW(e,i,HU())))}:{success:!0,data:a.value}},NW=MW(EW),PW=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return OW(e)(t,n,i)},FW=e=>(t,n,r)=>OW(e)(t,n,r),IW=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return kW(e)(t,n,i)},Iee=e=>async(t,n,r)=>kW(e)(t,n,r),LW=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return AW(e)(t,n,i)},RW=e=>(t,n,r)=>AW(e)(t,n,r),zW=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return MW(e)(t,n,i)},BW=e=>async(t,n,r)=>MW(e)(t,n,r),VW=/^[cC][^\s-]{8,}$/,HW=/^[0-9a-z]+$/,UW=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,WW=/^[0-9a-vA-V]{20}$/,GW=/^[A-Za-z0-9]{27}$/,KW=/^[a-zA-Z0-9_-]{21}$/,qW=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,JW=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,YW=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,XW=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;function ZW(){return RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)}const QW=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,$W=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,eG=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,tG=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,nG=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,rG=/^[A-Za-z0-9_-]*$/,iG=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,aG=/^\+(?:[0-9]){6,14}[0-9]$/,oG=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,sG=RegExp(`^${oG}$`);function cG(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function lG(e){return RegExp(`^${cG(e)}$`)}function uG(e){let t=cG({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${oG}T(?:${r})$`)}const dG=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Lee=/^-?\d+$/,fG=/^-?\d+(?:\.\d+)?/,pG=/^(?:true|false)$/i,mG=/^[^A-Z]*$/,hG=/^[^a-z]*$/,gG=RU(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),_G={number:`number`,bigint:`bigint`,object:`date`},vG=RU(`$ZodCheckLessThan`,(e,t)=>{gG.init(e,t);let n=_G[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),yG=RU(`$ZodCheckGreaterThan`,(e,t)=>{gG.init(e,t);let n=_G[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),bG=RU(`$ZodCheckMultipleOf`,(e,t)=>{gG.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):JU(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),xG=RU(`$ZodCheckNumberFormat`,(e,t)=>{gG.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=uW[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Lee)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inst:e})}}),SG=RU(`$ZodCheckMaxLength`,(e,t)=>{var n;gG.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!KU(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=SW(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Ree=RU(`$ZodCheckMinLength`,(e,t)=>{var n;gG.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!KU(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=SW(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),CG=RU(`$ZodCheckLengthEquals`,(e,t)=>{var n;gG.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!KU(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=SW(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),wG=RU(`$ZodCheckStringFormat`,(e,t)=>{var n,r;gG.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),TG=RU(`$ZodCheckRegex`,(e,t)=>{wG.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),zee=RU(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=mG,wG.init(e,t)}),Bee=RU(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=hG,wG.init(e,t)}),EG=RU(`$ZodCheckIncludes`,(e,t)=>{gG.init(e,t);let n=oW(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),DG=RU(`$ZodCheckStartsWith`,(e,t)=>{gG.init(e,t);let n=RegExp(`^${oW(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),OG=RU(`$ZodCheckEndsWith`,(e,t)=>{gG.init(e,t);let n=RegExp(`.*${oW(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Vee=RU(`$ZodCheckOverwrite`,(e,t)=>{gG.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});var Hee=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
|
|
34611
|
+
`);return o.length===0?{diff:c,omittedFiles:o}:{diff:`${c}\n${cx(o,n)}`,omittedFiles:o}}function cx(e,t){return[`\n── OMITTED (${e.length} file(s) exceeded the diff budget) ──`,`These files changed but their diff did not fit. Run the matching command to read any you need:`,...e.map(e=>` ${t(e)}`)].join(`
|
|
34612
|
+
`)}var lx=class{sizeCache=new Map;constructor(e,t,n=0){this.cap=e,this.measureUnionDiffChars=t,this.maxSubGroups=n}split(e){if(e.length===0)return[];if(this.cap<=0)return[this.toSubGroup(e,!1)];let t=this.packRecursively(e,[]);return!t.some(e=>!e.isTruncated)&&t.length>1?[this.toSubGroup(e,!0)]:t}packRecursively(e,t){if(this.unionDiffSize(e)<=this.cap)return t.push(this.toSubGroup(e,!1)),t;if(e.length===1||this.maxSubGroups>0&&t.length+1>=this.maxSubGroups)return t.push(this.toSubGroup(e,!0)),t;let[n,r]=this.partitionByOverlap(e);return this.packRecursively(n,t),this.packRecursively(r,t),t}partitionByOverlap(e){let t=[...e].sort((e,t)=>t.changedFiles.length-e.changedFiles.length),n=[t[0]],r=t.slice(1),i=[];for(;r.length>0;){let{index:e,score:t}=dx(r,new Set(n.flatMap(e=>e.changedFiles))),a=r[e],o=this.unionDiffSize([...n,a])<=this.cap;if(t<=0||!o){i.push(a),r.splice(e,1);continue}n.push(a),r.splice(e,1)}return i.length===0&&i.push(n.pop()),[n,i]}toSubGroup(e,t){return{flows:e,files:ux(e),isTruncated:t}}unionDiffSize(e){let t=ux(e),n=t.join(`
|
|
34613
|
+
`),r=this.sizeCache.get(n);if(r!==void 0)return r;let i=this.measureUnionDiffChars(t);return this.sizeCache.set(n,i),i}};function ux(e){return[...new Set(e.flatMap(e=>e.changedFiles))].sort((e,t)=>e.localeCompare(t))}function dx(e,t){let n=0,r=-1;for(let[i,a]of e.entries()){let e=fx(new Set(a.changedFiles),t);e>r&&(r=e,n=i)}return{index:n,score:r}}function fx(e,t){let n=0;for(let r of e)t.has(r)&&(n+=1);let r=new Set([...e,...t]).size;return r===0?0:n/r}var px=class{maxGroupSize;minOverlap;diffCapChars;maxSubGroups;skipPass1;fetchPerFileDiffs;gitDiffCommandFor;constructor(e,t={}){this.fetchDiff=e,this.maxGroupSize=t.maxGroupSize??a.REGRESSION_IMPACT_PASS2_MAX_GROUP_SIZE,this.minOverlap=t.minOverlap??a.REGRESSION_IMPACT_PASS2_MIN_OVERLAP,this.diffCapChars=t.diffCapChars??a.REGRESSION_IMPACT_PASS2_GROUP_DIFF_MAX_CHARS,this.maxSubGroups=t.maxSubGroups??a.REGRESSION_IMPACT_PASS2_MAX_SUBGROUPS,this.skipPass1=t.skipPass1??a.REGRESSION_IMPACT_SKIP_PASS1,this.fetchPerFileDiffs=t.fetchPerFileDiffs,this.gitDiffCommandFor=t.gitDiffCommandFor}plan(e){let t=ix(e,{maxGroupSize:this.maxGroupSize,minOverlap:this.minOverlap});n.logger.info.defaultLog(`[regression-impact] pass 2 grouped: ${e.length} flow(s) → ${t.length} group(s) (max ${this.maxGroupSize}, min overlap ${this.minOverlap})`);for(let[e,r]of t.entries())n.logger.info.defaultLog(`[regression-impact] group #${e+1} (${r.length}): ${r.map(e=>e.flow.name).join(` | `)}`);if(!this.skipPass1)return t.map(e=>({group:e,rawDiff:void 0}));let r=this.memoizedFetch(),i=new lx(this.diffCapChars,e=>r(e).length,this.maxSubGroups),a=[];for(let[e,n]of t.entries())a.push(...this.planCluster(n,e,i,r));return n.logger.info.defaultLog(`[regression-impact] pass 2 grouped: ${t.length} cluster(s) → ${a.length} sub-group(s) after diff-size split`),a}planCluster(e,t,r,i){let a=r.split(e),s=a.length>1||a.some(e=>e.isTruncated),c=a.map(e=>e.isTruncated?{subGroup:e,rawDiff:this.buildOverCapDiff(e.files,t+1,i)}:{subGroup:e,rawDiff:i(e.files)});return s&&(n.logger.info.defaultLog(`[regression-impact] pass2 cluster #${t+1} diff over cap → ${a.length} sub-group(s)`),o.logAgentGroupSplit(`pass2 cluster #${t+1}`,{flows:e.map(e=>({name:e.flow.name,flowId:e.flow.flowId})),diffChars:i([...new Set(e.flatMap(e=>e.changedFiles))]).length},c.map(({subGroup:e,rawDiff:t})=>({flows:e.flows.map(e=>({name:e.flow.name,flowId:e.flow.flowId})),diffChars:t.length,isTruncated:e.isTruncated})))),c.map(({subGroup:e,rawDiff:t})=>({group:e.flows,rawDiff:t}))}buildOverCapDiff(e,t,r){if(this.fetchPerFileDiffs===void 0||this.gitDiffCommandFor===void 0)return this.capDiff(r(e),t);let{diff:i,omittedFiles:a}=sx(this.fetchPerFileDiffs(e),this.diffCapChars,this.gitDiffCommandFor);return a.length>0&&n.logger.info.defaultLog(`[regression-impact] pass2-group #${t}: budgeted diff packed ${e.length-a.length}/${e.length} whole file(s) under ${this.diffCapChars} chars; ${a.length} omitted (agent can git diff them): ${a.join(`, `)}`),i}memoizedFetch(){let e=new Map;return t=>{let n=t.join(`
|
|
34614
|
+
`),r=e.get(n);if(r!==void 0)return r;let i=this.fetchDiff(t);return e.set(n,i),i}}capDiff(e,t){let r=this.diffCapChars;return r<=0||e.length<=r?e:(n.logger.info.defaultLog(`[regression-impact] pass2-group #${t}: raw diff truncated ${e.length} → ${r} chars (use Read/Grep to inspect omitted files)`),`${e.slice(0,r)}\n... (diff truncated at ${r} chars — use Read/Grep/Glob to inspect the rest)`)}},mx=class{constructor(e,t){this.resultApplier=e,this.shouldUseContractEngine=t}async run(e,t,r){let i=new px(e=>a.getDiffForFiles(e,r.rootPath,r.branch,r.resolvedAnchorBranch,r.isUncommitted),{fetchPerFileDiffs:e=>a.getPerFileDiffs(e,r.rootPath,r.branch,r.resolvedAnchorBranch,r.isUncommitted),gitDiffCommandFor:e=>r.isUncommitted?`git diff -- ${e}`:`git diff ${r.resolvedAnchorBranch}...${r.branch} -- ${e}`}).plan(e),s=new A.default({concurrency:a.REGRESSION_IMPACT_DEEP_PASS2_CONCURRENCY}),c=(await Promise.all([...i.entries()].map(([e,i])=>s.add(async()=>{let{group:a,rawDiff:o}=i,s=[...new Set(a.flatMap(e=>e.changedFiles))].map(e=>t.get(e)).filter(m.isDefined);try{let t=Date.now();return{fgi:e,group:a,sharedTech:s,rawDiff:o,result:await this.runPerGroupPass(a,s,r,e+1,o),elapsedSec:((Date.now()-t)/1e3).toFixed(1)}}catch(t){return n.logger.info.defaultLog(`[regression-impact] Pass 2 grouped crashed for sub-group #${e+1} (${a.length} flow(s)): ${String(t)}`),{fgi:e,group:a,sharedTech:s,rawDiff:o,result:void 0,elapsedSec:`0.0`}}})))).filter(e=>e!==void 0).sort((e,t)=>e.fgi-t.fgi),l=0,u=0,d=!1,f=!1,p=0,h=0,g=0,_=0,v=[],y=0;for(let e of c){let{fgi:r,group:a,sharedTech:o,rawDiff:s,result:c,elapsedSec:b}=e;y+=1;let x=s===void 0?``:`, raw diff ${s.length} chars`,S=new Set(a.flatMap(e=>e.changedFiles)).size;if(n.logger.info.defaultLog(`[regression-impact] pass2-group ${y}/${i.length} - sub-group #${r+1} (${a.length} flow(s), ${S} unique file(s), ${o.length} pre-derived tech${x})`),c===void 0){n.logger.info.defaultLog(`[regression-impact] Pass 2 grouped returned null for sub-group #${r+1} — keeping default severities for ${a.length} flow(s)`);continue}n.logger.info.defaultLog(`[regression-impact] pass2-group sub-group #${r+1} DONE in ${b}s (${a.length} flow(s), ${c.turns} turns)`),l+=c.costUsd,u+=c.turns,d||=c.maxTurnsHit,f||=c.maxBudgetHit,p+=c.tokens.cacheReadTokens,h+=c.tokens.cacheCreationTokens,g+=c.tokens.inputTokens,_+=c.tokens.outputTokens,v.push({label:`group-${r+1} (${a.length} flow${a.length===1?``:`s`})`,costUsd:c.costUsd,turns:c.turns,maxTurnsHit:c.maxTurnsHit,maxBudgetHit:c.maxBudgetHit,tokens:{inputTokens:c.tokens.inputTokens,outputTokens:c.tokens.outputTokens,cacheReadTokens:c.tokens.cacheReadTokens,cacheCreationTokens:c.tokens.cacheCreationTokens}});let C=new Map(c.structured.flows.map(e=>[e.flowId,e]));for(let e of a){let i=C.get(e.flow.flowId);if(i===void 0){n.logger.info.defaultLog(`[regression-impact] Pass 2 grouped: no entry for flow "${e.flow.name}" (${e.flow.flowId}) in sub-group #${r+1} — keeping default severity`);continue}let a=e.changedFiles.map(e=>t.get(e)).filter(m.isDefined);this.resultApplier.apply(e,{structured:i},a)}}return o.logCacheTokens(`pass 2 totals`,{cacheReadTokens:p,cacheCreationTokens:h,inputTokens:g,outputTokens:_}),{costUsd:l,turns:u,maxTurnsHit:d,maxBudgetHit:f,tokens:{inputTokens:g,outputTokens:_,cacheReadTokens:p,cacheCreationTokens:h},batches:v}}async runPerGroupPass(e,t,r,i,s){let{query:c,getMessageContentBlocks:l,isResultMessage:u,isErrorResult:d}=await Promise.resolve().then(()=>lz()),f=`grouped-pass2 #${i}`,p=ex(e,t,r.branch,r.resolvedAnchorBranch,r.commitMessages,s,r.gitSignals,r.flowFileReasons),m=this.shouldUseContractEngine??a.REGRESSION_IMPACT_DEEP_CONTRACT_MODE,h=m?`divergence (X!=Y)`:`intent-rubric (20-signal)`,g=m?tx(s!==void 0):$b(s!==void 0);n.logger.info.defaultLog(`[regression-impact] grouped pass2 group ${i}: deep engine = ${h}`),a.REGRESSION_IMPACT_LOG_DEEP_PROMPT&&nx(r.rootPath,`pass2-group-${i}`,g,p,{model:a.REGRESSION_IMPACT_DEEP_MODEL,allowedTools:[`Read`,`Grep`,`Glob`,`Bash`],maxTurns:a.REGRESSION_IMPACT_DEEP_MAX_TURNS,maxBudgetUsd:a.REGRESSION_IMPACT_DEEP_MAX_BUDGET_USD,outputSchema:`SONNET_DEEP_GROUPED_OUTPUT_SCHEMA`});let _=c({prompt:p,options:{model:a.REGRESSION_IMPACT_DEEP_MODEL,systemPrompt:g,allowedTools:[`Read`,`Grep`,`Glob`,`Bash`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_IMPACT_DEEP_MAX_BUDGET_USD,maxTurns:a.REGRESSION_IMPACT_DEEP_MAX_TURNS,cwd:r.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.SONNET_DEEP_GROUPED_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:r.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:r.jwtToken??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34615
|
+
`)}}});o.logAgentCwd(f,r.rootPath);let y=0;for await(let e of _){if(!u(e)){let t=l(e);t!==void 0&&t.length>0&&(y++,o.logAgentActivity(f,y,t));continue}if(d(e)){n.logger.info.defaultLog(`[regression-impact] Pass 2 grouped error for group #${i}: ${String(e.subtype)}`);return}let t=e.total_cost_usd,r=e.num_turns,s=r>=a.REGRESSION_IMPACT_DEEP_MAX_TURNS,c=o.logCacheTokensFromMessage(`pass2 group #${i}`,e),p=e.structured_output;if(p===void 0||!Array.isArray(p.flows)){n.logger.info.defaultLog(`[regression-impact] Pass 2 grouped: missing or malformed structured_output for group #${i}`);return}return{structured:p,costUsd:t,turns:r,maxTurnsHit:s,maxBudgetHit:!1,tokens:c}}}};let hx=[`NONE`,`LOW`,`MEDIUM`,`HIGH`,`CRITICAL`];function gx(e){if(e==null)return;let t=typeof e==`number`?e:Number(e);if(!(!Number.isFinite(t)||!Number.isInteger(t)||t<1||t>4))return t}function _x(e){if(typeof e!=`object`||!e)return;let t=e.inScopeFiles;if(Array.isArray(t))return t.filter(e=>typeof e==`string`)}var vx=class{apply(e,t,n){let r=_x(t.structured),i=n.length===0&&Array.isArray(t.structured.techChanges)&&t.structured.techChanges.length>0?t.structured.techChanges.map(e=>({file:e.file,confidence:e.confidence,techBefore:e.techBefore,techAfter:e.techAfter})):n,a=new Map(i.map(e=>[e.file,e])),o=(r===void 0?i:r.map(e=>a.get(e)).filter(m.isDefined)).map(e=>({file:e.file,confidence:e.confidence,techBefore:e.techBefore,techAfter:e.techAfter})),s=t.structured.productChanges.map(e=>{let t=gx(e.priority);return{...e.title===void 0?{}:{title:e.title},productBefore:e.productBefore,productAfter:e.productAfter,confidence:e.confidence,severity:e.severity,...e.severityReason===void 0?{}:{severityReason:e.severityReason},...e.importance===void 0?{}:{importance:e.importance},...e.importanceReason===void 0?{}:{importanceReason:e.importanceReason},...t===void 0?{}:{priority:t},...e.verdict===void 0?{}:{verdictScore:e.verdict.score,...e.verdict.reason===void 0?{}:{verdictReason:e.verdict.reason}}}}),c=this.deriveSeverity(s);e.severity=c,e.severityReason=s.find(e=>e.severity===c)?.severityReason,e.techChanges=o,e.productChanges=s,t.structured.affectedSteps!==void 0&&(e.affectedSteps=this.enrichAffectedSteps(e.flow,t.structured.affectedSteps)),e.uncertain===!0&&(e.affected=c!==`NONE`,e.uncertain=!1)}deriveSeverity(e){return e.length===0?`NONE`:e.reduce((e,t)=>hx.indexOf(t.severity)>hx.indexOf(e)?t.severity:e,`NONE`)}enrichAffectedSteps(e,t){if(!(0,m.isDefined)(e.productFlow))return[];let n=new Map(e.productFlow.steps.map(e=>[e.stepId,e]));return t.filter(e=>n.has(e.stepId)).map(e=>{let t=n.get(e.stepId);if((0,m.isDefined)(t))return{stepId:e.stepId,actor:t.actor,action:t.action,reason:e.reason}}).filter(m.isDefined)}};function yx(e){let t=uv(e),n=mv(e),r=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0||e.commitMessages===void 0)throw Error(`[impact-pipeline] buildDeepRunContext requires branch/resolvedAnchorBranch/commitMessages`);let i=n.filter(e=>e.affected&&e.severity!==`NONE`&&e.severity!==void 0||e.uncertain===!0),o=[...new Set(i.flatMap(e=>e.changedFiles))],s=a.getAuthorEmail(r,e.branch,e.isUncommitted),c=a.getGitSignalsForFiles(r,o,s,e.anchorSha,e.resolvedAnchorBranch),l=new Map(t.map(e=>[e.flowId,e]));return{rootPath:r,branch:e.branch,resolvedAnchorBranch:e.resolvedAnchorBranch,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl,isUncommitted:e.isUncommitted,commitMessages:e.commitMessages,anchorSha:e.anchorSha,flowFileReasons:e.flowFileReasons,flowsByFlowId:l,gitSignals:c}}var bx=class{async execute(e){let t=mv(e).filter(e=>e.affected&&e.severity!==`NONE`&&e.severity!==void 0||e.uncertain===!0);if(t.length===0)return{costUsd:0,turns:0,maxTurnsHit:!1};let n=yx(e),r=await this.createStrategy(new vx).run(t,e.fileTechByFile??new Map,n);return{costUsd:r.costUsd,turns:r.turns,maxTurnsHit:r.maxTurnsHit,maxBudgetHit:r.maxBudgetHit??!1,tokens:r.tokens,batches:r.batches}}},xx=class extends bx{name;constructor(e){super(),this.shouldUseContractEngine=e,this.name=`groupedDeepAnalysis (${e??a.REGRESSION_IMPACT_DEEP_CONTRACT_MODE?`divergence`:`intent-rubric`})`}createStrategy(e){return new mx(e,this.shouldUseContractEngine)}};function Sx(e,t){if(e.productFlow==null)return[];let n=new Map(e.productFlow.steps.map(e=>[e.stepId,e]));return t.filter(e=>n.has(e.stepId)).map(e=>{let t=n.get(e.stepId);if((0,m.isDefined)(t))return{stepId:e.stepId,actor:t.actor,action:t.action,reason:e.reason}}).filter(m.isDefined)}async function Cx(e,t,r,i,o,s,c,l,u,d){let f=e.filter(e=>e.affected&&e.severity!==`NONE`&&e.severity!==void 0),p=e.filter(e=>e.uncertain===!0),m=[...f,...p.filter(e=>!f.includes(e))],h=0;if(n.logger.info.defaultLog(`[regression-impact] Sonnet deep analysis for ${m.length} flow(s) (${f.length} affected, ${p.length} uncertain) in parallel...`),m.length===0)return{costUsd:0,turns:0,maxTurnsHit:!1};let g=[...new Set(m.flatMap(e=>e.changedFiles))],_=a.getAuthorEmail(t,r,c),v=a.getGitSignalsForFiles(t,g,_,u,i),y=0,b=0,x=!1,S=new A.default({concurrency:6});for(let e of m)S.add(async()=>{try{h+=1,n.logger.info.defaultLog(`[regression-impact] ${h} - Sonnet deep analysis: ${e.flow.name} (${e.changedFiles.length} file(s))`);let a=await c_(e.flow,e.changedFiles,t,r,i,o,s,c,l,v,d?.get(e.flow.flowId));if(a===null){n.logger.info.defaultLog(`[regression-impact] Sonnet deep returned null for flow "${e.flow.name}" — keeping default severity "${e.severity}" with no techChanges/productChanges`);return}y+=a.costUsd,b+=a.turns,x||=a.maxTurnsHit,wx(e,a)}catch(t){n.logger.info.defaultLog(`[regression-impact] Sonnet deep crashed for flow "${e.flow.name}": ${String(t)}`)}});return await S.onIdle(),{costUsd:y,turns:b,maxTurnsHit:x}}function wx(e,t){e.severity=t.severity,e.severityReason=t.productChanges.find(e=>e.severity===t.severity)?.severityReason,e.techChanges=t.techChanges,e.productChanges=t.productChanges,t.affectedSteps&&(e.affectedSteps=Sx(e.flow,t.affectedSteps)),e.uncertain===!0&&(e.affected=t.severity!==`NONE`,e.uncertain=!1)}var Tx=class{name=`deepAnalysis`;async execute(e){let t=mv(e),n=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0||e.commitMessages===void 0)throw Error(`[impact-pipeline] LegacyDeepStep requires branch/resolvedAnchorBranch/commitMessages`);let r=await Cx(t,n,e.branch,e.resolvedAnchorBranch,e.jwtToken,e.anthropicBaseUrl,e.isUncommitted,e.commitMessages,e.anchorSha,e.flowFileReasons);return{costUsd:r.costUsd,turns:r.turns,maxTurnsHit:r.maxTurnsHit}}},Ex=class{name=`loadLibraryForSpecificRun`;async execute(e){let t=e.jobInput?.baselineFromAnalysisId?.trim()??``;if(t.length===0)throw Error(`[impact-pipeline] LoadBaselineFromRunStep requires jobInput.baselineFromAnalysisId — the factory should only select this step when it is set`);let{bundle:r,anchorBranch:i,anchorSha:o,catalogId:s,projectType:c,flows:l}=await rv(e.apiService,e.jobInput,t);if(e.jobInput===null)throw Error(`[impact-pipeline] jobInput is required to resolve catalog roots`);let u;try{u=Rm(e.jobInput)}catch(e){throw Error(`[impact-pipeline] failed to resolve catalog roots: ${String(e)}`,{cause:e})}let d=u.cwd,f=Z_(d,i,o,e.isUncommitted),p=a.getCommitMessages(d,f),h=(0,m.isDefined)(o)?`, sha: ${o}`:``;return n.logger.info.defaultLog(`[regression-impact] Anchor: ${i} (resolved: ${f}${h}) — baseline reused from run ${t}`),e.bundle=r,e.flows=l,e.catalogId=s,e.projectType=c,e.anchorBranch=i,e.anchorSha=o,e.resolvedAnchorBranch=f,e.rootPath=d,e.primarySource=u.primarySource,e.dependencyRoots=u.dependencyRoots,e.commitMessages=p,u_}},Dx=class{name=`mappingSnapshotRead`;execute(e){let t=by(dv(e));if(t===void 0)throw Error(`[impact-pipeline] mapping snapshot resume expected a cache file but none loaded — delete the snapshot or disable REGRESSION_IMPACT_DEV_MAPPING_SNAPSHOT`);let r=[...new Set([...t.flowFileMap.values()].flatMap(e=>[...e]))];return n.logger.info.defaultLog(`[regression-impact] Mapping snapshot RESUME — skipped pre-filter + mapping (${r.length} file(s) from cached flowFileMap drive deep analysis)`),e.mappingResult=t,e.flowFileReasons=t.flowFileReasons,e.changedFiles=r,Promise.resolve(u_)}},Ox=class{name=`mappingSnapshotWrite`;execute(e){let t=dv(e),n=uv(e),r=pv(e);if(e.changedFiles===void 0||e.resolvedAnchorBranch===void 0)throw Error(`[impact-pipeline] mapping snapshot write requires changedFiles/resolvedAnchorBranch from prior steps`);return xy(t,{changedFiles:e.changedFiles,flowIds:n.map(e=>e.flowId),resolvedAnchorBranch:e.resolvedAnchorBranch,strategy:a.REGRESSION_IMPACT_MAPPING_STRATEGY},r),Promise.resolve(u_)}};function kx(e){if(typeof e!=`object`||!e)return;let t=e.techChanges;if(Array.isArray(t))return t}var Ax=class{async derive(e,t){let n=e.filter(e=>e.affected&&e.severity!==`NONE`&&e.severity!==void 0||e.uncertain===!0),r=[...new Set(n.flatMap(e=>e.changedFiles))];return this.runPass1(r,n,t)}async runPass1(e,t,r){let i=new Map,s=0,c=0,l=!1,u=0,d=0,f=0,p=0,m=this.indexFileReasons(e,t,r.flowFileReasons),h=[];for(let t=0;t<e.length;t+=a.REGRESSION_IMPACT_DEEP_PASS1_BATCH_SIZE){let n=e.slice(t,t+a.REGRESSION_IMPACT_DEEP_PASS1_BATCH_SIZE);h.push(n.map(e=>({file:e,reason:m.get(e)})))}n.logger.info.defaultLog(`[regression-impact] pass 1: ${e.length} file(s) in ${h.length} batch(es) (concurrency ${a.REGRESSION_IMPACT_DEEP_PASS1_CONCURRENCY})`);let g=new A.default({concurrency:a.REGRESSION_IMPACT_DEEP_PASS1_CONCURRENCY}),_=0;for(let[e,t]of h.entries())g.add(async()=>{try{let a=await this.runTechPassForBatch(t,e+1,r);if(_+=1,n.logger.info.defaultLog(`[regression-impact] pass1 batch ${_}/${h.length} (#${e+1}, ${t.length} file(s)) - got ${a?.techs.length??0} techChange(s)`),a===void 0)return;for(let e of a.techs)i.set(e.file,e);s+=a.costUsd,c+=a.turns,l||=a.maxTurnsHit,u+=a.cacheReadTokens,d+=a.cacheCreationTokens,f+=a.inputTokens,p+=a.outputTokens}catch(e){n.logger.info.defaultLog(`[regression-impact] Dedup deep pass 1 batch crashed (${t.length} file(s)): ${String(e)}`)}});return await g.onIdle(),o.logCacheTokens(`pass 1 totals`,{cacheReadTokens:u,cacheCreationTokens:d,inputTokens:f,outputTokens:p}),{fileTechByFile:i,costUsd:s,turns:c,maxTurnsHit:l}}indexFileReasons(e,t,n){let r=new Map;if(n===void 0)return r;for(let i of e)for(let e of t){if(!e.changedFiles.includes(i))continue;let t=n.get(e.flow.flowId)?.get(i);if((0,m.isDefined)(t)&&t.length>0){r.set(i,t);break}}return r}async runTechPassForBatch(e,t,r){let{query:i,getMessageContentBlocks:s,isResultMessage:c,isErrorResult:l}=await Promise.resolve().then(()=>lz()),u=`pass1 batch #${t}`;o.logAgentCwd(u,r.rootPath);let d=e.map(e=>e.file),f=Xb(e,a.getDiffForFiles(d,r.rootPath,r.branch,r.resolvedAnchorBranch,r.isUncommitted),r.branch,r.resolvedAnchorBranch),p=Yb();a.REGRESSION_IMPACT_LOG_DEEP_PROMPT&&nx(r.rootPath,`pass1-batch-${t}`,p,f);let m=i({prompt:f,options:{model:a.REGRESSION_IMPACT_DEEP_MODEL,systemPrompt:p,allowedTools:[],disallowedTools:[`Read`,`Grep`,`Glob`,`Bash`,`Task`,`TodoWrite`,`Edit`,`Write`,`WebFetch`,`WebSearch`,`NotebookEdit`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_IMPACT_DEEP_MAX_BUDGET_USD,maxTurns:a.REGRESSION_IMPACT_DEEP_MAX_TURNS,cwd:r.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.SONNET_DEEP_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:r.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:r.jwtToken??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34616
|
+
`)}}}),h=0;for await(let e of m){if(!c(e)){let t=s(e);t!==void 0&&t.length>0&&(h++,o.logAgentActivity(u,h,t));continue}if(l(e)){n.logger.info.defaultLog(`[regression-impact] Pass 1 batch error: ${String(e.subtype)}`);return}let r=e.total_cost_usd,i=e.num_turns,f=i>=a.REGRESSION_IMPACT_DEEP_MAX_TURNS,{cacheReadTokens:p,cacheCreationTokens:m,inputTokens:g,outputTokens:_}=o.logCacheTokensFromMessage(`pass1 batch #${t}`,e),v=kx(e.structured_output);if(v===void 0||v.length===0){n.logger.info.defaultLog(`[regression-impact] Pass 1 batch returned no techChanges (${d.length} file(s))`);return}let y=new Set(d),b=v.filter(e=>y.has(e.file));if(b.length<d.length){let e=d.filter(e=>!b.some(t=>t.file===e));n.logger.info.defaultLog(`[regression-impact] Pass 1 batch produced ${b.length}/${d.length} techChange(s); missing: ${e.join(`, `)}`)}return{techs:b,costUsd:r,turns:i,maxTurnsHit:f,cacheReadTokens:p,cacheCreationTokens:m,inputTokens:g,outputTokens:_}}}},jx=class{name=`deepAnalysisPass1`;async execute(e){let t=mv(e),n=yx(e),r=await new Ax().derive(t,n);return e.fileTechByFile=r.fileTechByFile,{costUsd:r.costUsd,turns:r.turns,maxTurnsHit:r.maxTurnsHit}}},Mx=class{constructor(e){this.resultApplier=e}async run(e,t,r){let i=0,s=0,c=!1,l=!1,u=0,d=0,f=0,p=0,h=new Map,g=new A.default({concurrency:a.REGRESSION_IMPACT_DEEP_PASS2_CONCURRENCY}),_=0;for(let[a,o]of e.entries())g.add(async()=>{try{_+=1;let g=o.changedFiles.map(e=>t.get(e)).filter(m.isDefined);n.logger.info.defaultLog(`[regression-impact] pass2 ${_}/${e.length} - ${o.flow.name} (${g.length}/${o.changedFiles.length} pre-derived tech)`);let v=Date.now(),y=await this.runPerFlowPass(o,g,r),b=((Date.now()-v)/1e3).toFixed(1);if(y===void 0){n.logger.info.defaultLog(`[regression-impact] Pass 2 returned null for flow "${o.flow.name}" — keeping default severity "${o.severity}" with no techChanges/productChanges`);return}n.logger.info.defaultLog(`[regression-impact] pass2 ${_}/${e.length} - ${o.flow.name} DONE in ${b}s (${y.turns} turns)`),i+=y.costUsd,s+=y.turns,c||=y.maxTurnsHit,l||=y.maxBudgetHit,u+=y.tokens.cacheReadTokens,d+=y.tokens.cacheCreationTokens,f+=y.tokens.inputTokens,p+=y.tokens.outputTokens,h.set(a+1,{label:`flow-${a+1} (${o.flow.name})`,costUsd:y.costUsd,turns:y.turns,maxTurnsHit:y.maxTurnsHit,maxBudgetHit:y.maxBudgetHit,tokens:{inputTokens:y.tokens.inputTokens,outputTokens:y.tokens.outputTokens,cacheReadTokens:y.tokens.cacheReadTokens,cacheCreationTokens:y.tokens.cacheCreationTokens}}),this.resultApplier.apply(o,y,g)}catch(e){n.logger.info.defaultLog(`[regression-impact] Pass 2 crashed for flow "${o.flow.name}": ${String(e)}`)}});await g.onIdle(),o.logCacheTokens(`pass 2 totals`,{cacheReadTokens:u,cacheCreationTokens:d,inputTokens:f,outputTokens:p});let v=[...h.entries()].sort(([e],[t])=>e-t).map(([,e])=>e);return{costUsd:i,turns:s,maxTurnsHit:c,maxBudgetHit:l,tokens:{inputTokens:f,outputTokens:p,cacheReadTokens:u,cacheCreationTokens:d},batches:v}}async runPerFlowPass(e,t,r){let{query:i,getMessageContentBlocks:s,isResultMessage:c,isErrorResult:l}=await Promise.resolve().then(()=>lz()),u=`per-flow-pass2 (${e.flow.name})`;o.logAgentCwd(u,r.rootPath);let d=Qb(e.flow,t,r.branch,r.resolvedAnchorBranch,r.commitMessages),f=Zb();a.REGRESSION_IMPACT_LOG_DEEP_PROMPT&&nx(r.rootPath,`pass2-flow-${rx(e.flow.flowId)}`,f,d);let p=i({prompt:d,options:{model:a.REGRESSION_IMPACT_DEEP_MODEL,systemPrompt:f,allowedTools:[`Read`,`Grep`,`Glob`,`Bash`],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_IMPACT_DEEP_MAX_BUDGET_USD,maxTurns:a.REGRESSION_IMPACT_DEEP_MAX_TURNS,cwd:r.rootPath,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.SONNET_DEEP_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:r.anthropicBaseUrl,ANTHROPIC_AUTH_TOKEN:r.jwtToken??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34617
|
+
`)}}}),m=0;for await(let t of p){if(!c(t)){let e=s(t);e!==void 0&&e.length>0&&(m++,o.logAgentActivity(u,m,e));continue}if(l(t)){n.logger.info.defaultLog(`[regression-impact] Pass 2 error for flow "${e.flow.name}": ${String(t.subtype)}`);return}let r=t.total_cost_usd,i=t.num_turns,d=i>=a.REGRESSION_IMPACT_DEEP_MAX_TURNS,f=o.logCacheTokensFromMessage(`pass2 flow "${e.flow.name}"`,t),p=t.structured_output;if(p===void 0){n.logger.info.defaultLog(`[regression-impact] Pass 2: missing structured_output for "${e.flow.name}"`);return}return{structured:p,costUsd:r,turns:i,maxTurnsHit:d,maxBudgetHit:!1,tokens:f}}}},Nx=class extends bx{name=`perFlowDeepAnalysis`;createStrategy(e){return new Mx(e)}},Px=class{name=`postDetectExperimental`;isTerminal=!0;async execute(e){let t=e.jobInput?.projectId??e.globalConfigService.getProjectId();if(!(0,m.isDefined)(t)||t.length===0)return n.logger.info.defaultLog(`[regression-first] No projectId — skipping experimental post (detect result still in local file)`),u_;let r=e.detectedRegressions??[],i=e.detectTokens??{inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0},a=i.cacheReadTokens+i.cacheCreationTokens+i.inputTokens,o=a>0?i.cacheReadTokens/a*100:0,s={anchorRef:e.resolvedAnchorBranch??`unknown`,compareRef:e.branch??`unknown`,count:r.length,costUsd:e.detectCostUsd??0,turns:e.detectTurns??0,durationSeconds:(Date.now()-e.startTime)/1e3,tokens:{...i,cacheHitPct:Number(o.toFixed(1))},findings:r};try{let r=await e.apiService.post(`/api/experimental/key-values`,{type:`regression-first`,key:t,data:s});n.logger.info.defaultLog(`[regression-first] Detect result posted to experimental store: id=${r.id} type=regression-first key=${t}`)}catch(e){n.logger.info.defaultLog(`[regression-first] WARN: failed to post detect result to experimental store (key=${t}): ${String(e)}`)}return u_}},Fx=class{name=`preFilter`;async execute(e){let t=dv(e);if(e.branch===void 0)throw Error(`[impact-pipeline] ctx.branch is unset — ResolveCompareStep must run before this step`);if(e.resolvedAnchorBranch===void 0)throw Error(`[impact-pipeline] ctx.resolvedAnchorBranch is unset — LoadLibraryStep must run before this step`);let r=[e.primarySource??t,...(e.dependencyRoots??[]).map(e=>e.sourcePath)],{changedFiles:i,compareDescription:a,preFilterCostUsd:o,preFilterTurns:s,preFilterMaxTurnsHit:c}=await Sv(t,e.branch,e.resolvedAnchorBranch,e.runType,e.jwtToken,e.anthropicBaseUrl,r);return n.logger.info.defaultLog(`[regression-impact] Compare: ${a}`),e.changedFiles=i,e.compareDescription=a,i.length===0?(n.logger.info.defaultLog(`[regression-impact] No changes detected`),{costUsd:o,turns:s,maxTurnsHit:c,status:l_.Halt}):(n.logger.info.defaultLog(`[regression-impact] ${i.length} changed files`),{costUsd:o,turns:s,maxTurnsHit:c})}};let Ix={inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0},Lx={roughGuessedFlowIds:new Set,rescuedFiles:[],totalFiles:0,costUsd:0,turns:0,maxTurnsHit:!1,tokens:Ix,batchMetrics:[]};function Rx(e,t){let n=e;return n===void 0||!Array.isArray(n.guesses)?[]:n.guesses.map(e=>({file:e.file,flowIds:(Array.isArray(e.flowIds)?e.flowIds:[]).filter(e=>t.has(e)),reason:e.reason}))}function zx(e,t,r){let i=new Set,o=[],s=r.flowFileReasons??new Map;for(let c of e){if(!t.has(c.file)||c.flowIds.length===0)continue;let e=c.flowIds.slice(0,a.REGRESSION_IMPACT_ROUGH_MAP_CAP),l=c.reason??`rough-map: guessed from diff (precise mapper aborted)`;for(let t of e){let e=r.flowFileMap.get(t)??new Set;e.add(c.file),r.flowFileMap.set(t,e),i.add(t);let n=s.get(t)??new Map;n.set(c.file,`rough-map (low confidence): ${l}`),s.set(t,n)}o.push(c.file),n.logger.info.defaultLog(`[regression-impact] Rough-map rescued ${c.file} -> ${e.length} flow(s): ${e.join(`, `)}`)}return r.flowFileReasons=s,{roughGuessedFlowIds:i,rescuedFiles:o}}function Bx(e,t){let n=[];for(let r=0;r<e.length;r+=Math.max(1,t))n.push(e.slice(r,r+Math.max(1,t)));return n}async function Vx(e,t,r,i,s,l,u,d,f,p){let{query:m,isResultMessage:h,isErrorResult:g,getMessageContentBlocks:_}=await Promise.resolve().then(()=>lz()),y=`residual batch #${i}`,b={guesses:[],costUsd:0,turns:0,maxTurnsHit:!1,tokens:Ix},x=a.getPerFileDiffs(t,s,l,u,p),S=m({prompt:c.buildResidualRoughMapPrompt(e,t,x,l,u),options:{model:a.REGRESSION_IMPACT_SONNET_MODEL,systemPrompt:c.buildResidualRoughMapSystemPrompt(a.REGRESSION_IMPACT_ROUGH_MAP_CAP),allowedTools:[],permissionMode:a.REGRESSION_PERMISSION_MODE,allowDangerouslySkipPermissions:!0,maxBudgetUsd:a.REGRESSION_IMPACT_AGENTIC_MAX_BUDGET_USD,maxTurns:10,cwd:s,sessionId:(0,v.randomUUID)(),outputFormat:{type:`json_schema`,schema:o.RESIDUAL_ROUGH_MAP_OUTPUT_SCHEMA},env:{...process.env,ANTHROPIC_BASE_URL:f,ANTHROPIC_AUTH_TOKEN:d??``,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+n.logger.getRequestId()].join(`
|
|
34618
|
+
`)}}});o.logAgentCwd(y,s);let C=0;for await(let e of S){if(!h(e)){let t=_(e);t!==void 0&&t.length>0&&(C++,o.logAgentActivity(y,C,t));continue}if(g(e))return n.logger.info.defaultLog(`[regression-impact] Residual rough-map ${y} error: ${e.subtype} — its files remain incomplete`),b;let t=e.num_turns,i=o.extractCacheTokens(e);return o.logCacheTokensFromMessage(y,e),{guesses:Rx(e.structured_output,r),costUsd:e.total_cost_usd,turns:t,maxTurnsHit:t>=10,tokens:i}}return b}async function Hx(e,t,r,i,o,s,c,l,u=!1){if(t.length===0)return Lx;let d=new Set(e.map(e=>e.flowId)),f=new Set(t),p=Bx(t,a.REGRESSION_IMPACT_RESIDUAL_BATCH_SIZE);n.logger.info.defaultLog(`[regression-impact] Residual rough-map: guessing flows for ${t.length} dropped file(s) in ${p.length} batch(es): ${t.join(`, `)}`);let m=new A.default({concurrency:a.REGRESSION_IMPACT_RESIDUAL_CONCURRENCY}),h=p.entries(),g=(await Promise.all([...h].map(([t,r])=>m.add(async()=>{try{return{batchIndex:t,batchFiles:r,...await Vx(e,r,d,t+1,i,o,s,c,l,u)}}catch(e){n.logger.info.defaultLog(`[regression-impact] Residual rough-map batch #${t+1} crashed (${r.length} file(s)): ${String(e)}`);return}})))).filter(e=>e!==void 0).sort((e,t)=>e.batchIndex-t.batchIndex),_=new Set,v=new Set,y=0,b=0,x=!1,S={...Ix},C=[];for(let e of g){let t=zx(e.guesses,f,r);for(let e of t.roughGuessedFlowIds)_.add(e);for(let e of t.rescuedFiles)v.add(e);y+=e.costUsd,b+=e.turns,x||=e.maxTurnsHit,S.inputTokens+=e.tokens.inputTokens,S.outputTokens+=e.tokens.outputTokens,S.cacheReadTokens+=e.tokens.cacheReadTokens,S.cacheCreationTokens+=e.tokens.cacheCreationTokens,C.push({label:`residual-batch-${e.batchIndex+1}`,totalFiles:e.batchFiles.length,costUsd:e.costUsd,turns:e.turns,maxTurnsHit:e.maxTurnsHit,maxBudgetHit:!1,tokens:e.tokens})}let w=[...v],T=t.filter(e=>!v.has(e));return n.logger.info.defaultLog(`[regression-impact] Residual rough-map: rescued ${w.length} file(s) onto ${_.size} flow(s); ${T.length} file(s) still incomplete`+(T.length>0?` (no confident guess): ${T.join(`, `)}`:``)),n.logger.info.defaultLog(`[regression-impact] Residual rough-map summary (${t.length} dropped file(s)):`),n.logger.info.defaultLog(`[regression-impact] → rescued onto flows (${w.length}): ${w.length>0?w.join(`, `):`(none)`}`),n.logger.info.defaultLog(`[regression-impact] → still unmapped (${T.length}): ${T.length>0?T.join(`, `):`(none)`}`),{roughGuessedFlowIds:_,rescuedFiles:w,totalFiles:t.length,costUsd:y,turns:b,maxTurnsHit:x,tokens:S,batchMetrics:C}}var Ux=class{name=`residualRoughMap`;async execute(e){let t=pv(e),n=t.incompleteFiles??[];if(n.length===0)return u_;let r=uv(e),i=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0)throw Error(`[impact-pipeline] ResidualRoughMapStep requires branch/resolvedAnchorBranch`);let a=await Hx(r,n,t,i,e.branch,e.resolvedAnchorBranch,e.jwtToken,e.anthropicBaseUrl,e.isUncommitted);if(e.roughGuessedFlowIds=a.roughGuessedFlowIds,a.rescuedFiles.length>0){let e=new Set(a.rescuedFiles);t.incompleteFiles=n.filter(t=>!e.has(t))}return{costUsd:a.costUsd,turns:a.turns,maxTurnsHit:a.maxTurnsHit,tokens:a.tokens,totalFiles:a.totalFiles,mappedFiles:a.rescuedFiles.length,batches:a.batchMetrics.length>0?a.batchMetrics:void 0}}},Wx=class{name=`verifyProductIntent`;async execute(e){let t=e.detectedRegressions??[];if(t.length===0)return u_;let n=dv(e);if(e.branch===void 0||e.resolvedAnchorBranch===void 0)throw Error(`[impact-pipeline] VerifyProductIntentStep requires branch/resolvedAnchorBranch from ResolveCompare`);let r=e.changedFiles??[],i=a.getDiffForFiles(r,n,e.branch,e.resolvedAnchorBranch,e.isUncommitted),o=a.formatCommitMessagesBlock(e.commitMessages??[]),s=Cy(e.jobInput,n),c=await ub({anchorRef:e.resolvedAnchorBranch,compareRef:e.branch,rootPath:n,diffText:i,commitMessagesBlock:o,jwtToken:e.jwtToken,anthropicBaseUrl:e.anthropicBaseUrl,primarySource:s.primarySource,dependencyRoots:s.dependencyRoots},t);e.detectedRegressions=c.regressions,e.detectCostUsd=(e.detectCostUsd??0)+c.costUsd,e.detectTurns=(e.detectTurns??0)+c.turns;let l=e.detectTokens;return e.detectTokens=l===void 0?c.tokens:{inputTokens:(l.inputTokens??0)+(c.tokens.inputTokens??0),outputTokens:(l.outputTokens??0)+(c.tokens.outputTokens??0),cacheReadTokens:(l.cacheReadTokens??0)+(c.tokens.cacheReadTokens??0),cacheCreationTokens:(l.cacheCreationTokens??0)+(c.tokens.cacheCreationTokens??0)},{costUsd:c.costUsd,turns:c.turns,maxTurnsHit:c.maxTurnsHit,totalFiles:c.regressions.length,tokens:c.tokens}}},Gx=class{name=`writeDetectResult`;isTerminal=!0;async execute(e){let t=e.detectedRegressions??[],r=e.branch??`unknown`,i=`(file write disabled)`;if(a.REGRESSION_FIRST_WRITE_DETECT_FILE){let n=e.detectCostUsd??0,o=e.detectTurns??0,s=e.detectTokens??{inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0},c=s.cacheReadTokens+s.cacheCreationTokens+s.inputTokens,l=c>0?s.cacheReadTokens/c*100:0;if(!I.default.isAbsolute(a.REGRESSION_DEV_ARTIFACT_DIR))throw Error(`[regression-first] REGRESSION_DEV_ARTIFACT_DIR must be an absolute path when REGRESSION_FIRST_WRITE_DETECT_FILE is enabled (got: "${a.REGRESSION_DEV_ARTIFACT_DIR}"). A relative/empty dir resolves against the scanned repo's cwd.`);let u=Yy(r,e.detectVariant??`v1`),d=I.default.join(a.REGRESSION_DEV_ARTIFACT_DIR,`my-runs`);(0,y.mkdirSync)(d,{recursive:!0}),i=I.default.join(d,`regression-detect-${u}.json`);let f={anchorRef:e.resolvedAnchorBranch??`unknown`,compareRef:r,count:t.length,costUsd:n,turns:o,durationSeconds:(Date.now()-e.startTime)/1e3,tokens:{...s,cacheHitPct:Number(l.toFixed(1))},findings:t};(0,y.writeFileSync)(i,JSON.stringify(f,null,2))}let o=[...t].sort((e,t)=>t.score-e.score);n.logger.info.defaultLog(`[regression-first] Detect result: ${t.length} finding(s) → ${i}`);for(let e of o)n.logger.info.defaultLog(`[regression-first] [${e.score}] ${e.severity} ${e.title} (${e.file})`);return u_}};function Kx(e){if(e===`agentic`||e===`agentic-ast`||e===`shallow`)return new Cb(e);throw Error(`[impact-pipeline] unsupported mapping strategy "${e}" — only "agentic", "agentic-ast", and "shallow" are wired in this version`)}function qx(e,t){if(t&&e.devMappingSnapshotResume)return[new Dx];let n=t?[new Fx,Kx(e.mappingStrategy)]:[Kx(e.mappingStrategy)];return e.residualRoughMap&&n.push(new Ux),e.devMappingSnapshotWrite&&n.push(new Ox),n}function Jx(e,t,n){let r=[e,new Cv,new Gb,new Fx,t];return n!==void 0&&r.push(n),r.push(new Ib,new Gx),a.REGRESSION_FIRST_POST_EXPERIMENTAL&&r.push(new Px),r.push(new Ab,new vv,new cv),r}function Yx(e){return e.regressionFirstV2===!0||e.regressionFirstV2Adj===!0?new Bb:e.regressionFirstV3===!0?new Vb:e.regressionFirstSingle===!0?new zb:e.regressionFirstMono===!0?new Rb:new Lb}function Xx(e,t){if(!(e.regressionFirst!==!0&&e.regressionFirstV2!==!0&&e.regressionFirstV3!==!0&&e.regressionFirstV2Adj!==!0&&e.regressionFirstSingle!==!0&&e.regressionFirstMono!==!0))return new Y_(Jx(t,Yx(e),Zx(e)))}function Zx(e){if(e.regressionFirstV3===!0)return new Wx;if(e.regressionFirstV2Adj===!0)return new bb}let Qx={create(e,t=!1){let n=e.baselineFromAnalysisId!==void 0&&e.baselineFromAnalysisId.length>0?new Ex:new av,r=Xx(e,n);if(r!==void 0)return r;let i=t?[...qx(e,!1),new Tb]:[n,new Cv,...qx(e,!0),new Tb];if(e.stopAfterMapping)return i.push(new vv,new cv),new Y_(i);if(e.deepMode===`legacy`)i.push(new Tx);else{if(!e.skipPass1&&(i.push(new jx),e.stopAfterPass1))return i.push(new vv,new cv),new Y_(i);i.push(e.pass2Grouped?new xx(e.contractMode):new Nx)}return e.calibrationEnabled&&i.push(new Fb),i.push(new vv,new cv),new Y_(i)}};function $x(e){if(e!==void 0)return e===`perflow`?`legacy`:`dedup`}function eS(e){if(e!==void 0)return e===`divergence`}function tS(e){return e===`regression-first`}function nS(e){return e===`regression-first-2`}function rS(e){return e===`regression-first-3`}function iS(e){return e===`regression-first-2-adj`}function aS(e){return e===`regression-first-single`}function oS(e){return e===`regression-first-mono`}async function sS(e,t,n,r,i,a,s,c){let l=Date.now(),u=t===`LOCAL`;o.setAgentLogEnabled(s?.agentLog??!1);let d={reportsDir:e,runType:t,isUncommitted:u,jwtToken:n,anthropicBaseUrl:r,apiService:i,globalConfigService:a,jobInput:s,compareBranch:c,startTime:l,stepMetrics:[]},f=s?.analysisMode??`regression-first-2`,p=$x(f),m=eS(f),h=tS(f),g=nS(f),_=rS(f),v=iS(f),y=aS(f),b=oS(f),x=Sy(s?.projectRootPath,p,s?.baselineFromAnalysisId,m,s?.fileMappingMode,h,g,_,v,y,b);if(await Qx.create(x).run(d),h||g||_||v||y)return d.result??{flowImpacts:[],catalogId:null,rootPath:d.rootPath??``,changedFiles:d.changedFiles??[],branch:d.branch??``,headSha:d.headSha,anchorBranch:d.resolvedAnchorBranch??``,anchorSha:d.anchorSha,runType:t};if(d.result===void 0)throw Error(`[regression-impact] pipeline finished without producing a result (ReportStep did not run)`);return d.result}var cS=t.__toESM(n.require_decorateMetadata()),lS=t.__toESM(nn()),uS=t.__toESM(n.require_decorate()),dS,fS;let pS=class{constructor(e,t,n){this.globalConfigService=e,this.apiService=t,this.authStorage=n}async run(e){let t=await this.authStorage.getJWTToken(),n=await xh(this.apiService,this.globalConfigService);return n?.crossComponent?J_(e.reportsDir,t,this.globalConfigService.getAnthropicProxyUrl(),this.apiService,this.globalConfigService,n,e.compareBranch):(n?.analysisMode===`hunterImpact`?py:sS)(e.reportsDir,e.runType,t,this.globalConfigService.getAnthropicProxyUrl(),this.apiService,this.globalConfigService,n,e.compareBranch)}};pS=(0,uS.default)([(0,h.injectable)(),(0,lS.default)(0,(0,h.inject)(n.GlobalConfigService)),(0,lS.default)(1,(0,h.inject)(ln)),(0,lS.default)(2,(0,h.inject)(tn)),(0,cS.default)(`design:paramtypes`,[Object,typeof(dS=ln!==void 0&&ln)==`function`?dS:Object,typeof(fS=tn!==void 0&&tn)==`function`?fS:Object])],pS);var mS=t.__toESM(n.require_decorateMetadata()),hS=t.__toESM(nn()),gS=t.__toESM(n.require_decorate()),_S,vS;let yS=class{constructor(e,t,n){this.globalConfigService=e,this.apiService=t,this.authStorage=n}async run(e){let t=await this.authStorage.getJWTToken(),n=await xh(this.apiService,this.globalConfigService);return py(e.reportsDir,e.runType,t,this.globalConfigService.getAnthropicProxyUrl(),this.apiService,this.globalConfigService,n,e.compareBranch)}};yS=(0,gS.default)([(0,h.injectable)(),(0,hS.default)(0,(0,h.inject)(n.GlobalConfigService)),(0,hS.default)(1,(0,h.inject)(ln)),(0,hS.default)(2,(0,h.inject)(tn)),(0,mS.default)(`design:paramtypes`,[Object,typeof(_S=ln!==void 0&&ln)==`function`?_S:Object,typeof(vS=tn!==void 0&&tn)==`function`?vS:Object])],yS);let bS=`claude-haiku-4-5-20251001`,xS=`Read,Write,Edit,Bash(npm *),Bash(npx *),Bash(yarn *),Bash(pnpm *),Bash(bun *),Bash(node *),Bash(python *),Bash(python3 *),Bash(uv *),Bash(uvx *),Bash(pytest *),Bash(pylint *),Bash(ruff *),Bash(black *),Bash(mypy *),Bash(pyright *),Bash(isort *),Bash(flake8 *),Bash(autopep8 *),Bash(eslint *),Bash(prettier *),Bash(biome *),Bash(tsc *),Bash(vue-tsc *),Bash(svelte-check *),Bash(.venv/bin/* *),Bash(venv/bin/* *),Bash(.venv/Scripts/* *),Bash(venv/Scripts/* *),Bash(PYTHONPATH=* python *),Bash(PYTHONPATH=* python3 *),Bash(PYTHONPATH=* .venv/bin/* *),Bash(PYTHONPATH=* venv/bin/* *),Bash(PYTHONPATH=* .venv/Scripts/* *),Bash(PYTHONPATH=* venv/Scripts/* *),Bash(true),Glob,Grep`.split(`,`),SS={type:`object`,additionalProperties:!1,required:[`status`],properties:{status:{type:`string`,enum:[`generated`,`skipped`,`aborted`,`no-viable-tests`],description:"`generated` when green tests were shipped; `skipped` when the skill triaged the method as trivial; `aborted` for unresolvable inputs; `no-viable-tests` when every drafted test had to be removed (the file is left in place for inspection)."},reason:{type:`string`,description:"Short human-readable explanation. Required when status is not `generated`."},testCount:{type:`integer`,minimum:0,description:"Total number of tests shipped. Only meaningful when status is `generated`."},passedCount:{type:`integer`,minimum:0,description:"Number of passing tests. Only meaningful when status is `generated`."},failedCount:{type:`integer`,minimum:0,description:"Number of failing tests. Only meaningful when status is `generated`."}}};var CS=t.__toESM(n.require_decorateMetadata()),wS=t.__toESM(nn()),TS=t.__toESM(n.require_decorate()),ES,DS,OS,kS;function AS(e){if((0,m.isDefined)(e))return e;try{let e=(0,L.createRequire)(__filename)?.resolve?.(`@anthropic-ai/claude-agent-sdk`);if(e)return d.default.join(d.default.dirname(e),`cli.js`)}catch{}return d.default.join(__dirname,`..`,`..`,`node_modules`,`@anthropic-ai`,`claude-agent-sdk`,`cli.js`)}function jS(){return d.default.join(__dirname,`..`,`plugin`)}function MS(e,t){return new Promise(n=>{if(t.aborted){n();return}let r=setTimeout(n,e);t.addEventListener(`abort`,()=>{clearTimeout(r),n()},{once:!0})})}function NS(e,t){return{type:`user`,message:{role:`user`,content:e},parent_tool_use_id:null,session_id:t}}async function*PS(e,t,n,r,i){yield NS(e,t),await MS(3e4,n),!n.aborted&&(await r.flush(),i.debug(`[plugin-agent] Phase transition: recon → draft`),yield NS(`<system-reminder>Recon time is over. Move to Phase 3 — draft the test file now.</system-reminder>`,t),await MS(3e4,n),!n.aborted&&(await r.flush(),i.debug(`[plugin-agent] Phase transition: draft → validate`),yield NS(`<system-reminder>Draft time is over. Move to Phase 4 — run test, lint, and format gates now.</system-reminder>`,t),await MS(15e3,n),!n.aborted&&(await r.flush(),i.debug(`[plugin-agent] Phase transition: validate → stop`),yield NS(`<system-reminder>Time is up. Stop all work. Exit with your structured output now.</system-reminder>`,t))))}let FS=class{constructor(e,t,n,r,i){this.globalConfigService=e,this.authStorage=t,this.apiService=n,this.metricReportService=r,this.testResultCounterService=i}async run(e){let t=this.globalConfigService.getPluginPath()??jS(),a=d.default.join(t,`skills`,`early-generate-unit-tests`,`references`),o=this.globalConfigService.getBackendURL(),s=Date.now(),c=()=>Date.now()-s;if(!o)return{outcome:`error`,success:!1,error:`backendURL is not configured`,durationMs:c()};let l=e.requestId??n.logger.getRequestId(),u=new AbortController;(0,m.isDefined)(e.abortSignal)&&(e.abortSignal.aborted?u.abort():e.abortSignal.addEventListener(`abort`,()=>u.abort(),{once:!0}));let p=await this.authStorage.getJWTToken()??``,h=AS(this.globalConfigService.getClaudeCodeExecutablePath()),g=r.getFileLanguage(e.filePath),_=r.isPythonFile(e.filePath)?n.TestFramework.PYTEST:this.globalConfigService.getTestFramework();try{await this.apiService.post(`/api/v1/tests/generate-prompt`,{testedCodeDataSource:{filePath:e.filePath,relativePathToTestFile:``,testFramework:_,language:g,testedMethod:{name:e.methodName,isAsync:!1,isStatic:!1,parameters:[],imports:[],decorators:[],code:``,exportType:`named`,accessModifierType:`public`,signature:e.methodName,kind:`function`},missingDependencies:[],codeDependencies:[],usages:[],libraries:[],gitUrl:null},llmConfig:{},clientSource:this.globalConfigService.getClientSource()},{headers:{[Ht]:l}})}catch(e){if(e instanceof Bt&&e.code===Rt.NOT_ENOUGH_BALANCE_ERROR)return{outcome:`error`,success:!1,error:e.message,errorCode:e.code,durationMs:c()};n.logger.info.defaultLog(`[plugin-agent] generate-prompt side-effect failed: ${e}`)}let y=(0,m.isDefined)(e.testFilePath)?new vr(e.testFilePath):await vr.getNextTestFile(e.filePath,e.methodName,e.workingDirectory);if(e.preserveExistingContent===!0&&!(0,m.isDefined)(e.testFilePath)){let t=await vr.getLatestTestFile(e.filePath,e.methodName);if((0,m.isDefined)(t)){let e=await new vr(r.absoluteToRelativePath(t)).getText();e.trim().length>0&&await y.replace(e)}}let b=(await y.isFileExists()?await y.getText():``).trim().length>0,x=e.preserveExistingContent===!0&&b;if(e.preserveExistingContent===!0&&!b&&n.logger.default.warn(`[plugin-agent] preserveExistingContent was requested but the target file is empty — falling back to generate mode.`),!x){let t=r.isPythonFile(e.filePath)?`#`:`//`;await y.replace(`${t} early-test-generation-in-progress`)}let S=y.getAbsoluteFilePath(),C=y.getFilePath(),w=d.default.relative(e.workingDirectory,S),T=d.default.join(a,`framework`,`${_}.md`),E=d.default.join(a,`${g}.md`),D=e=>(0,f.readFile)(e,`utf8`).catch(()=>(n.logger.default.warn(`[plugin-agent] Reference file not found: ${e}`),``)),[O,k]=await Promise.all([D(T),D(E)]),A=[`Generate unit tests for method \`${e.methodName}\` in: ${e.filePath}`,`Framework: ${_}`,`Working directory: ${d.default.normalize(e.workingDirectory)}`,`testFilePath: ${d.default.normalize(w)}`];x&&A.push(``,`ENHANCE MODE: The testFilePath already contains existing tests. Read the file first, then improve the tests according to the user's request below. Keep passing tests intact unless the request says otherwise; add, edit, or delete individual tests as the request requires. Do NOT start from an empty file.`),(0,m.isDefined)(e.userPrompt)&&e.userPrompt.trim()!==``&&A.push(``,e.userPrompt),O!==``&&A.push(``,`---`,`## Framework Reference`,O),k!==``&&A.push(``,`---`,`## Language Reference`,k);let j=A.join(`
|
|
34619
|
+
`),M=this.globalConfigService.getProgressLogger({methodName:e.methodName});n.logger.info.defaultLog(`[plugin-agent] Starting plugin agent for file: ${e.filePath}, testFile: ${w}`);let ee=l,N=new sf(this.metricReportService,ee,bS,S,e.workingDirectory),te=cd(S,e.workingDirectory),P=(0,v.randomUUID)(),F=(0,ne.query)({prompt:PS(j,P,u.signal,N,M),options:{systemPrompt:{type:`preset`,preset:`claude_code`,append:[`## Workflow`,``,`You generate unit tests in phases. Each phase transition is signaled by a user message.`,``,`### Phase 1 — Triage`,`Read the test and source file, locate the method.`,``,`Trivial shapes → exit {"status":"skipped","reason":"<shape>"}:`,`- Pure delegation / pass-through`,`- Delegation + a single guard throw`,`- Getters, setters, constant returns, stubs, framework no-ops`,`- One-line wrappers where the only logic is the dependency call`,``,`If unresolvable → exit {"status":"aborted","reason":"..."}`,``,`### Phase 2 — Recon`,`Gather in parallel:`,`1. Manifest (package.json, pyproject.toml, etc.)`,`2. Lint config (eslint.config.*, .eslintrc.*, ruff.toml, biome.json, etc.)`,`3. tsconfig.json for path aliases and baseUrl`,`4. Grep type definitions referenced by the method`,`5. Identify deps to mock`,``,`Compute exact import statements from testFilePath's directory to each dependency.`,``,`### Phase 3 — Draft & Edit`,`Read the test file and Put the test code into it using the Edit tool. Rules:`,`- AAA shape, one test per branch`,`- Use computed imports — do not guess paths`,`- Mock external deps, never mock the method under test`,`- No shared mutable state between tests`,`- Cap: ≤ 9 tests`,``,`### Phase 4 — Validate & Fix`,`Run in parallel: test, lint (autofix mode), format (fix mode).`,`If lint/format failed, fix and re-run only the failed gate.`,`Do NOT chase green tests — red tests exercising real behavior are fine.`,`Report pass/fail counts.`,``,`Exit {"status":"generated","testCount":N,"passedCount":P,"failedCount":F} or {"status":"no-viable-tests","reason":"..."}`,``,`## Import Resolution`,``,`The test file and source file are in DIFFERENT directories.`,`Compute every import path relative to the test file's directory, not the source file's.`,`- If the project uses path aliases and the source uses them, the test should too`,`- If using relative paths: path.relative(dirname(testFilePath), sourceFile)`,`- Example: source at src/services/foo.ts, test at src/services/foo.early.test/bar.early.test.ts → import from '../foo'`,`- The .early.test/ subdirectory means tests are always one level deeper than the source`].join(`
|
|
34620
|
+
`)},model:bS,pathToClaudeCodeExecutable:h,allowedTools:[...xS],permissionMode:`dontAsk`,maxBudgetUsd:2,cwd:e.workingDirectory,abortController:u,outputFormat:{type:`json_schema`,schema:SS},sessionId:P,env:{...process.env,ANTHROPIC_BASE_URL:this.globalConfigService.getAnthropicProxyUrl(),ANTHROPIC_AUTH_TOKEN:p,ANTHROPIC_CUSTOM_HEADERS:[`x-request-id: `+l].join(`
|
|
34621
|
+
`)},stderr:e=>{n.logger.info.defaultLog(`[plugin-agent] STDERR: ${e}`)},hooks:{PreToolUse:[{matcher:`Write|Edit`,hooks:[te]},{matcher:`Read`,hooks:[sd]},{matcher:`Bash`,hooks:[od,Au]}]}}}),I=0;try{for await(let t of F){I+=1,await N.processMessage(t);let r=t.type;if(M.debug(`[plugin-agent] stream message #${I} type=${r??`unknown`}`),r===`assistant`){let e=t.message?.content,r=Array.isArray(e)?e:[],i=r.filter(e=>e.type===`tool_use`).map(e=>e.name),a=r.some(e=>e.type===`text`);if(i.length>0)n.logger.info.defaultLog(`[plugin-agent] Tool calls: ${i.join(`, `)}`);else if(a){let e=r.filter(e=>e.type===`text`).map(e=>e.text).join(` `).slice(0,500);n.logger.info.defaultLog(`[plugin-agent] Agent thinking: ${e}`)}}if(i.isResultMessage(t)){await N.flush();let r=c();if(i.isErrorResult(t))return n.logger.default.warn(`[plugin-agent] Agent error: ${t.subtype}`),{outcome:`error`,success:!1,costUsd:t.total_cost_usd,error:t.subtype,durationMs:r};n.logger.info.defaultLog(`[plugin-agent] Agent completed. Cost: $${t.total_cost_usd.toFixed(4)} — ${r}ms`);let a=IS(t.structured_output),o=a?.status,s=a?.reason;if(o===`skipped`||o===`aborted`||o===`no-viable-tests`){let e=(0,m.isDefined)(s)?`${o}: ${s}`:o;return n.logger.info.defaultLog(`[plugin-agent] ${o} by skill: ${s??`no reason given`}`),this.metricReportService.saveTestMetrics({requestId:ee,timeElapsed:r,errorCause:e}),o===`skipped`?{outcome:`skipped`,success:!0,skipped:!0,skipReason:s??`trivial`,costUsd:t.total_cost_usd,durationMs:r}:{outcome:o,success:!1,costUsd:t.total_cost_usd,error:e,durationMs:r}}if(o!==`generated`)return n.logger.default.warn(`[plugin-agent] Missing or invalid structured_output — treating as error.`),{outcome:`error`,success:!1,costUsd:t.total_cost_usd,error:`invalid_structured_output`,durationMs:r};let l=await y.getText(),u=await this.testResultCounterService.getValidationReport(S,e.methodName).catch(()=>void 0),d=N.getLatestTestResult(),f=a?.passedCount??d?.passed??u?.greenTestsCount,p=a?.failedCount??d?.failed??u?.redTestsCount;return this.metricReportService.saveTestMetrics({requestId:ee,timeElapsed:r,validationReport:u}),l!==``&&this.metricReportService.saveOperationMetricsTrace({parentRequestId:ee,llmModel:bS,testFileContent:l}),{outcome:`generated`,success:!0,costUsd:t.total_cost_usd,testFilePath:C,durationMs:r,greenTestsCount:f,redTestsCount:p}}}return await N.flush(),{outcome:`error`,success:!1,error:`stream_ended_without_result`,durationMs:c()}}finally{u.abort()}}};FS=(0,TS.default)([(0,h.injectable)(),(0,wS.default)(0,(0,h.inject)(n.GlobalConfigService)),(0,wS.default)(1,(0,h.inject)(tn)),(0,wS.default)(2,(0,h.inject)(ln)),(0,wS.default)(3,(0,h.inject)(Dn)),(0,wS.default)(4,(0,h.inject)(jl)),(0,CS.default)(`design:paramtypes`,[Object,typeof(ES=tn!==void 0&&tn)==`function`?ES:Object,typeof(DS=ln!==void 0&&ln)==`function`?DS:Object,typeof(OS=Dn!==void 0&&Dn)==`function`?OS:Object,typeof(kS=jl!==void 0&&jl)==`function`?kS:Object])],FS);function IS(e){if(!(0,m.isDefined)(e)||typeof e!=`object`)return;let t=e,n=t.status;if(!(n!==`generated`&&n!==`skipped`&&n!==`aborted`&&n!==`no-viable-tests`))return{status:n,reason:typeof t.reason==`string`?t.reason:void 0,testCount:typeof t.testCount==`number`?t.testCount:void 0,passedCount:typeof t.passedCount==`number`?t.passedCount:void 0,failedCount:typeof t.failedCount==`number`?t.failedCount:void 0}}var LS=t.__toESM(n.require_decorateMetadata()),RS=t.__toESM(nn()),zS=t.__toESM(n.require_decorate()),BS,VS,HS,US,WS,GS,KS,qS,JS,YS,XS,ZS,QS,$S,eC;let tC=class{constructor(e,t,n,r,i,a,o,s,c,l,u,d,f,p){this.testablesController=e,this.coverageController=t,this.generateTestController=n,this.authService=r,this.globalConfigService=i,this.testResultCounterService=a,this.testableContextService=o,this.dynamicPromptService=s,this.testValidatorService=c,this.regressionImpactManager=l,this.regressionCatalogManager=u,this.regressionE2eCatalogManager=d,this.pluginAgentRunner=f,this.huntFirstImpactManager=p}async init(e){await this.authService.authorize(e)}async getTestables(e){return this.testablesController.getTestables(e)}async getAllMethodsCount(e){return this.testablesController.getAllMethodsCount(e)}async resolveEarlyTestFile(e){return this.testablesController.resolveEarlyTestFile(e)}async getTestableFileMap(e){return this.testablesController.getTestableFileMap(e)}async generateCoverage(e){return this.coverageController.generateCoverage(e)}async setCoverage(e){return this.coverageController.setCoverage(e)}async getCoverageTree(){return this.coverageController.getCoverageTree()}async getCoverageForFiles(e){return this.coverageController.getCoverageForFiles(e)}async generateTests(e,t){return this.generateTestController.addGenerationToQueue({filePath:e,testable:t})}async bulkGenerateTests(e,t,n,r){return this.generateTestController.bulkGenerateTests(e,t,n,r)}updateContext(e){this.globalConfigService.updateContext(e)}updateRootPath(e){this.globalConfigService.updateRootPath(e)}async getValidationReport(e,t){return this.testResultCounterService.getValidationReport(e,t)}async getTestedCodeDataSource(e,t,n){return this.testableContextService.getTestedCodeDataSource(e,t,n)}async runDynamicPrompt(e,t,n){return(await this.dynamicPromptService.initDynamicPrompt(e,t,0,n))?.validationReport??null}async validateTestsByCode(e,t){return this.testValidatorService.validateTestsByCode(e,t)}async runRegressionImpact(e){return this.regressionImpactManager.run(e)}async runHuntFirstImpact(e){return this.huntFirstImpactManager.run(e)}async runRegressionCatalog(){return this.regressionCatalogManager.run()}async runRegressionE2eCatalog(){return this.regressionE2eCatalogManager.run()}async runPluginAgent(e){let t=this.globalConfigService.getRootPath();return this.pluginAgentRunner.run({...e,workingDirectory:t})}};(0,zS.default)([n.WithLoggerContext({category:V.INITIALIZATION}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[String]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`init`,null),(0,zS.default)([n.WithLoggerContext({category:V.GET_TESTABLES}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[String]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`getTestables`,null),(0,zS.default)([n.WithLoggerContext({category:V.GET_TESTABLES}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[String]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`getAllMethodsCount`,null),(0,zS.default)([n.WithLoggerContext({category:V.GET_TESTABLES}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[Object]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`resolveEarlyTestFile`,null),(0,zS.default)([n.WithLoggerContext({category:V.GET_TESTABLES}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[Array]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`getTestableFileMap`,null),(0,zS.default)([n.WithLoggerContext({category:V.GENERATE_COVERAGE}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[Array]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`generateCoverage`,null),(0,zS.default)([n.WithLoggerContext({category:V.SET_COVERAGE}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[Object]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`setCoverage`,null),(0,zS.default)([n.WithLoggerContext({category:V.GET_COVERAGE}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`getCoverageTree`,null),(0,zS.default)([n.WithLoggerContext({category:V.GET_COVERAGE}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[Array]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`getCoverageForFiles`,null),(0,zS.default)([n.WithLoggerContext({category:V.GENERATE_TESTS}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[String,Object]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`generateTests`,null),(0,zS.default)([n.WithLoggerContext({category:V.GENERATE_TESTS}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[Array,Object,String,typeof(eC=m.Fn!==void 0&&m.Fn)==`function`?eC:Object]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`bulkGenerateTests`,null),(0,zS.default)([n.WithLoggerContext({category:V.GENERATE_TESTS}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[String,String]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`getValidationReport`,null),(0,zS.default)([n.WithLoggerContext({category:V.GET_TESTED_CODE_DATA_SOURCE}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[String,Object,String]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`getTestedCodeDataSource`,null),(0,zS.default)([n.WithLoggerContext({category:V.DYNAMIC_PROMPT}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[String,Object,String]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`runDynamicPrompt`,null),(0,zS.default)([n.WithLoggerContext({category:V.TEST_VALIDATION}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[String,String]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`validateTestsByCode`,null),(0,zS.default)([n.WithLoggerContext({category:V.REGRESSION_IMPACT}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[Object]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`runRegressionImpact`,null),(0,zS.default)([n.WithLoggerContext({category:V.REGRESSION_IMPACT}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[Object]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`runHuntFirstImpact`,null),(0,zS.default)([n.WithLoggerContext({category:V.REGRESSION_CATALOG}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`runRegressionCatalog`,null),(0,zS.default)([n.WithLoggerContext({category:V.REGRESSION_CATALOG}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`runRegressionE2eCatalog`,null),(0,zS.default)([n.WithLoggerContext({category:V.GENERATE_TESTS}),(0,LS.default)(`design:type`,Function),(0,LS.default)(`design:paramtypes`,[Object]),(0,LS.default)(`design:returntype`,Promise)],tC.prototype,`runPluginAgent`,null),tC=(0,zS.default)([(0,h.injectable)(),(0,RS.default)(0,(0,h.inject)(Mm)),(0,RS.default)(1,(0,h.inject)(It)),(0,RS.default)(2,(0,h.inject)(Sm)),(0,RS.default)(3,(0,h.inject)(Yo)),(0,RS.default)(4,(0,h.inject)(n.GlobalConfigService)),(0,RS.default)(5,(0,h.inject)(jl)),(0,RS.default)(6,(0,h.inject)(Wp)),(0,RS.default)(7,(0,h.inject)(Yl)),(0,RS.default)(8,(0,h.inject)(ml)),(0,RS.default)(9,(0,h.inject)(pS)),(0,RS.default)(10,(0,h.inject)(Oh)),(0,RS.default)(11,(0,h.inject)($g)),(0,RS.default)(12,(0,h.inject)(FS)),(0,RS.default)(13,(0,h.inject)(yS)),(0,LS.default)(`design:paramtypes`,[typeof(BS=Mm!==void 0&&Mm)==`function`?BS:Object,typeof(VS=It!==void 0&&It)==`function`?VS:Object,typeof(HS=Sm!==void 0&&Sm)==`function`?HS:Object,typeof(US=Yo!==void 0&&Yo)==`function`?US:Object,typeof(WS=n.GlobalConfigService!==void 0&&n.GlobalConfigService)==`function`?WS:Object,typeof(GS=jl!==void 0&&jl)==`function`?GS:Object,typeof(KS=Wp!==void 0&&Wp)==`function`?KS:Object,typeof(qS=Yl!==void 0&&Yl)==`function`?qS:Object,typeof(JS=ml!==void 0&&ml)==`function`?JS:Object,typeof(YS=pS!==void 0&&pS)==`function`?YS:Object,typeof(XS=Oh!==void 0&&Oh)==`function`?XS:Object,typeof(ZS=$g!==void 0&&$g)==`function`?ZS:Object,typeof(QS=FS!==void 0&&FS)==`function`?QS:Object,typeof($S=yS!==void 0&&yS)==`function`?$S:Object])],tC);let nC=!1;e.AST=dt,e.AccessModifierType=le,e.AstModuleInfo=lt,e.CONCURRENCY=n.CONCURRENCY,e.COVERAGE_THRESHOLD=n.COVERAGE_THRESHOLD,e.CalculateCoverageOption=n.CalculateCoverageOption,e.DEFAULT_TYPE_KIND=de,e.ExportType=ce,e.GenerateTestsOutputType=n.GenerateTestsOutputType,e.GeneratedTestStructure=n.GeneratedTestStructure,e.LibraryName=ue,e.RequestSource=n.RequestSource,Object.defineProperty(e,`TSAgent`,{enumerable:!0,get:function(){return tC}}),e.TestFileName=n.TestFileName,e.TestFramework=n.TestFramework,e.TestStructureVariant=n.TestStructureVariant,e.TestSuffix=n.TestSuffix,e.WithTsMorphManager=ke,e.createTSAgent=(e={})=>((nC?n.inversify_default.rebindSync(n.GlobalConfigService):n.inversify_default.bind(n.GlobalConfigService)).toDynamicValue(()=>new n.GlobalConfigService(e)).inSingletonScope(),nC=!0,n.inversify_default.get(tC)),e.findLintConfigPath=B,e.getUnitTests=He,e.tsMorphManager=Oe}))();const PU={TSAgent:Symbol.for(`TSAgent`),CliOptions:Symbol.for(`CliOptions`),SCMHostService:Symbol.for(`SCMHostService`)};var FU=u(bR());let IU=function(e){return e.PR=`generate-for-pr`,e.COMMIT=`generate-for-commit`,e.PROJECT=`generate-for-project`,e.COVERAGE=`generate-coverage`,e.GATHER_STATS=`gather-stats`,e.REGRESSION_IMPACT=`generate-impact`,e.REGRESSION_CATALOG=`generate-catalog`,e.HUNT_FIRST_IMPACT=`generate-hunt-first-impact`,e.PROCESS_JOB=`process-job`,e}({});const LU=Object.freeze({status:`aborted`});function RU(e,t,n){function r(n,r){var i;Object.defineProperty(n,`_zod`,{value:n._zod??{},enumerable:!1}),(i=n._zod).traits??(i.traits=new Set),n._zod.traits.add(e),t(n,r);for(let e in o.prototype)e in n||Object.defineProperty(n,e,{value:o.prototype[e].bind(n)});n._zod.constr=o,n._zod.def=r}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var zU=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},BU=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};const VU={};function HU(e){return e&&Object.assign(VU,e),VU}function UU(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function WU(e,t){return typeof t==`bigint`?t.toString():t}function GU(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function KU(e){return e==null}function qU(e){let t=e.startsWith(`^`)?1:0,n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function JU(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}const YU=Symbol(`evaluating`);function XU(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==YU)return r===void 0&&(r=YU,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function ZU(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function QU(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function $U(e){return JSON.stringify(e)}const eW=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function tW(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}const nW=GU(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function rW(e){if(tW(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(tW(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function iW(e){return rW(e)?{...e}:Array.isArray(e)?[...e]:e}const aW=new Set([`string`,`number`,`symbol`]);function oW(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function sW(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function cW(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function lW(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}const uW={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function dW(e,t){let n=e._zod.def;return sW(e,QU(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return ZU(this,`shape`,e),e},checks:[]}))}function fW(e,t){let n=e._zod.def;return sW(e,QU(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return ZU(this,`shape`,r),r},checks:[]}))}function pW(e,t){if(!rW(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0)throw Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");return sW(e,QU(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return ZU(this,`shape`,n),n},checks:[]}))}function mW(e,t){if(!rW(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return sW(e,{...e._zod.def,get shape(){let n={...e._zod.def.shape,...t};return ZU(this,`shape`,n),n},checks:e._zod.def.checks})}function hW(e,t){return sW(e,QU(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return ZU(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function gW(e,t,n){return sW(t,QU(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return ZU(this,`shape`,i),i},checks:[]}))}function _W(e,t,n){return sW(t,QU(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return ZU(this,`shape`,i),i},checks:[]}))}function vW(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function yW(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function bW(e){return typeof e==`string`?e:e?.message}function xW(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=bW(e.inst?._zod.def?.error?.(e))??bW(t?.error?.(e))??bW(n.customError?.(e))??bW(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function SW(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function CW(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}const wW=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,WU,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},TW=RU(`$ZodError`,wW),EW=RU(`$ZodError`,wW,{Parent:Error});function Fee(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function DW(e,t){let n=t||function(e){return e.message},r={_errors:[]},i=e=>{for(let t of e.issues)if(t.code===`invalid_union`&&t.errors.length)t.errors.map(e=>i({issues:e}));else if(t.code===`invalid_key`)i({issues:t.issues});else if(t.code===`invalid_element`)i({issues:t.issues});else if(t.path.length===0)r._errors.push(n(t));else{let e=r,i=0;for(;i<t.path.length;){let r=t.path[i];i===t.path.length-1?(e[r]=e[r]||{_errors:[]},e[r]._errors.push(n(t))):e[r]=e[r]||{_errors:[]},e=e[r],i++}}};return i(e),r}const OW=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new zU;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>xW(e,a,HU())));throw eW(t,i?.callee),t}return o.value},kW=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>xW(e,a,HU())));throw eW(t,i?.callee),t}return o.value},AW=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new zU;return a.issues.length?{success:!1,error:new(e??TW)(a.issues.map(e=>xW(e,i,HU())))}:{success:!0,data:a.value}},jW=AW(EW),MW=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>xW(e,i,HU())))}:{success:!0,data:a.value}},NW=MW(EW),PW=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return OW(e)(t,n,i)},FW=e=>(t,n,r)=>OW(e)(t,n,r),IW=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return kW(e)(t,n,i)},Iee=e=>async(t,n,r)=>kW(e)(t,n,r),LW=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return AW(e)(t,n,i)},RW=e=>(t,n,r)=>AW(e)(t,n,r),zW=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return MW(e)(t,n,i)},BW=e=>async(t,n,r)=>MW(e)(t,n,r),VW=/^[cC][^\s-]{8,}$/,HW=/^[0-9a-z]+$/,UW=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,WW=/^[0-9a-vA-V]{20}$/,GW=/^[A-Za-z0-9]{27}$/,KW=/^[a-zA-Z0-9_-]{21}$/,qW=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,JW=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,YW=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,XW=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;function ZW(){return RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)}const QW=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,$W=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,eG=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,tG=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,nG=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,rG=/^[A-Za-z0-9_-]*$/,iG=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,aG=/^\+(?:[0-9]){6,14}[0-9]$/,oG=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,sG=RegExp(`^${oG}$`);function cG(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function lG(e){return RegExp(`^${cG(e)}$`)}function uG(e){let t=cG({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${oG}T(?:${r})$`)}const dG=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Lee=/^-?\d+$/,fG=/^-?\d+(?:\.\d+)?/,pG=/^(?:true|false)$/i,mG=/^[^A-Z]*$/,hG=/^[^a-z]*$/,gG=RU(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),_G={number:`number`,bigint:`bigint`,object:`date`},vG=RU(`$ZodCheckLessThan`,(e,t)=>{gG.init(e,t);let n=_G[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),yG=RU(`$ZodCheckGreaterThan`,(e,t)=>{gG.init(e,t);let n=_G[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),bG=RU(`$ZodCheckMultipleOf`,(e,t)=>{gG.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):JU(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),xG=RU(`$ZodCheckNumberFormat`,(e,t)=>{gG.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=uW[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Lee)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inst:e})}}),SG=RU(`$ZodCheckMaxLength`,(e,t)=>{var n;gG.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!KU(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=SW(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Ree=RU(`$ZodCheckMinLength`,(e,t)=>{var n;gG.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!KU(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=SW(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),CG=RU(`$ZodCheckLengthEquals`,(e,t)=>{var n;gG.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!KU(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=SW(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),wG=RU(`$ZodCheckStringFormat`,(e,t)=>{var n,r;gG.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),TG=RU(`$ZodCheckRegex`,(e,t)=>{wG.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),zee=RU(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=mG,wG.init(e,t)}),Bee=RU(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=hG,wG.init(e,t)}),EG=RU(`$ZodCheckIncludes`,(e,t)=>{gG.init(e,t);let n=oW(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),DG=RU(`$ZodCheckStartsWith`,(e,t)=>{gG.init(e,t);let n=RegExp(`^${oW(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),OG=RU(`$ZodCheckEndsWith`,(e,t)=>{gG.init(e,t);let n=RegExp(`.*${oW(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Vee=RU(`$ZodCheckOverwrite`,(e,t)=>{gG.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});var Hee=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
|
|
34595
34622
|
`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
|
|
34596
34623
|
`))}};const kG={major:4,minor:1,patch:11},AG=RU(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=kG;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=vW(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new zU;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=vW(e,t))});else{if(e.issues.length===t)continue;r||=vW(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(vW(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new zU;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new zU;return o.then(e=>t(e,r,a))}return t(o,r,a)}}e[`~standard`]={validate:t=>{try{let n=jW(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return NW(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}}),jG=RU(`$ZodString`,(e,t)=>{AG.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??dG(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),MG=RU(`$ZodStringFormat`,(e,t)=>{wG.init(e,t),jG.init(e,t)}),NG=RU(`$ZodGUID`,(e,t)=>{t.pattern??=JW,MG.init(e,t)}),PG=RU(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=YW(e)}else t.pattern??=YW();MG.init(e,t)}),FG=RU(`$ZodEmail`,(e,t)=>{t.pattern??=XW,MG.init(e,t)}),IG=RU(`$ZodURL`,(e,t)=>{MG.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:iG.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),LG=RU(`$ZodEmoji`,(e,t)=>{t.pattern??=ZW(),MG.init(e,t)}),RG=RU(`$ZodNanoID`,(e,t)=>{t.pattern??=KW,MG.init(e,t)}),zG=RU(`$ZodCUID`,(e,t)=>{t.pattern??=VW,MG.init(e,t)}),BG=RU(`$ZodCUID2`,(e,t)=>{t.pattern??=HW,MG.init(e,t)}),Uee=RU(`$ZodULID`,(e,t)=>{t.pattern??=UW,MG.init(e,t)}),VG=RU(`$ZodXID`,(e,t)=>{t.pattern??=WW,MG.init(e,t)}),HG=RU(`$ZodKSUID`,(e,t)=>{t.pattern??=GW,MG.init(e,t)}),UG=RU(`$ZodISODateTime`,(e,t)=>{t.pattern??=uG(t),MG.init(e,t)}),WG=RU(`$ZodISODate`,(e,t)=>{t.pattern??=sG,MG.init(e,t)}),GG=RU(`$ZodISOTime`,(e,t)=>{t.pattern??=lG(t),MG.init(e,t)}),KG=RU(`$ZodISODuration`,(e,t)=>{t.pattern??=qW,MG.init(e,t)}),qG=RU(`$ZodIPv4`,(e,t)=>{t.pattern??=QW,MG.init(e,t),e._zod.onattach.push(e=>{let t=e._zod.bag;t.format=`ipv4`})}),JG=RU(`$ZodIPv6`,(e,t)=>{t.pattern??=$W,MG.init(e,t),e._zod.onattach.push(e=>{let t=e._zod.bag;t.format=`ipv6`}),e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),YG=RU(`$ZodCIDRv4`,(e,t)=>{t.pattern??=eG,MG.init(e,t)}),XG=RU(`$ZodCIDRv6`,(e,t)=>{t.pattern??=tG,MG.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function ZG(e){if(e===``)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const QG=RU(`$ZodBase64`,(e,t)=>{t.pattern??=nG,MG.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.contentEncoding=`base64`}),e._zod.check=n=>{ZG(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function $G(e){if(!rG.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return ZG(t.padEnd(Math.ceil(t.length/4)*4,`=`))}const eK=RU(`$ZodBase64URL`,(e,t)=>{t.pattern??=rG,MG.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.contentEncoding=`base64url`}),e._zod.check=n=>{$G(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),tK=RU(`$ZodE164`,(e,t)=>{t.pattern??=aG,MG.init(e,t)});function nK(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}const rK=RU(`$ZodJWT`,(e,t)=>{MG.init(e,t),e._zod.check=n=>{nK(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),iK=RU(`$ZodNumber`,(e,t)=>{AG.init(e,t),e._zod.pattern=e._zod.bag.pattern??fG,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),aK=RU(`$ZodNumber`,(e,t)=>{xG.init(e,t),iK.init(e,t)}),oK=RU(`$ZodBoolean`,(e,t)=>{AG.init(e,t),e._zod.pattern=pG,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),sK=RU(`$ZodUnknown`,(e,t)=>{AG.init(e,t),e._zod.parse=e=>e}),cK=RU(`$ZodNever`,(e,t)=>{AG.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function lK(e,t,n){e.issues.length&&t.issues.push(...yW(n,e.issues)),t.value[n]=e.value}const uK=RU(`$ZodArray`,(e,t)=>{AG.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>lK(t,n,e))):lK(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function dK(e,t,n,r){e.issues.length&&t.issues.push(...yW(n,e.issues)),e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function fK(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=lW(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function pK(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type;for(let i of Object.keys(t)){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>dK(e,n,i,t))):dK(a,n,i,t)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}const Wee=RU(`$ZodObject`,(e,t)=>{if(AG.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=GU(()=>fK(t));XU(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=tW,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e]._zod.run({value:s[e],issues:[]},o);n instanceof Promise?c.push(n.then(n=>dK(n,t,e,s))):dK(n,t,e,s)}return i?pK(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),mK=RU(`$ZodObjectJIT`,(e,t)=>{Wee.init(e,t);let n=e._zod.parse,r=GU(()=>fK(t)),i=e=>{let t=new Hee([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=$U(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let e of n.keys){let n=a[e],r=$U(e);t.write(`const ${n} = ${i(e)};`),t.write(`
|
|
34597
34624
|
if (${n}.issues.length) {
|