@ranger-testing/ranger-cli 3.0.0 → 3.0.1-alpha.aab0a1c-26
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/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/deleteProfile.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x188771,_0x14c107){const _0x5d0036=_0x4abf,_0x2f168c=_0x188771();while(!![]){try{const _0x42a22a=parseInt(_0x5d0036(0x8f))/0x1+-parseInt(_0x5d0036(0xc3))/0x2+-parseInt(_0x5d0036(0xa3))/0x3*(-parseInt(_0x5d0036(0xde))/0x4)+parseInt(_0x5d0036(0xd5))/0x5+parseInt(_0x5d0036(0xc1))/0x6*(-parseInt(_0x5d0036(0xa0))/0x7)+parseInt(_0x5d0036(0x11c))/0x8+parseInt(_0x5d0036(0xeb))/0x9*(-parseInt(_0x5d0036(0xc5))/0xa);if(_0x42a22a===_0x14c107)break;else _0x2f168c['push'](_0x2f168c['shift']());}catch(_0x1d364d){_0x2f168c['push'](_0x2f168c['shift']());}}}(_0x2513,0x57c3e));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function truncatePreview(_0x227a08,_0x139648=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x41566f=_0x4abf;return _0x227a08['length']>_0x139648?_0x227a08['slice'](0x0,_0x139648)+_0x41566f(0xb8):_0x227a08;}function buildCliArtifactPath(_0xff66d8,_0x5ac4ec){const _0x3061da={'qMZoe':function(_0x44f482,_0x13138c,_0xf1dbed){return _0x44f482(_0x13138c,_0xf1dbed);}};return _0x3061da['qMZoe'](join,_0xff66d8,_0x5ac4ec);}function toStepDisplayName(_0x5ca52c){const _0x3ec9e6=_0x4abf,_0x4b949e={'CzOlB':function(_0x2084ae,_0x580ec2){return _0x2084ae(_0x580ec2);}},_0x3210e5=basename(_0x5ca52c)[_0x3ec9e6(0x121)](/\.(?:png|ya?ml)$/i,'')[_0x3ec9e6(0x121)](/^key_/i,'')['replace'](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x3210e5,'isKeyStep':/^key_/i['test'](_0x4b949e['CzOlB'](basename,_0x5ca52c))};}function extractShellValue(_0xb2e806){if(!_0xb2e806)return null;return _0xb2e806[0x1]??_0xb2e806[0x2]??_0xb2e806[0x3]??null;}function extractFilenameOption(_0x55c6c0){const _0x4fbb13=_0x4abf,_0x5e5c44={'wLSzf':function(_0x4f2178,_0xb390bc){return _0x4f2178(_0xb390bc);}};return _0x5e5c44[_0x4fbb13(0x8e)](extractShellValue,_0x55c6c0['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x210124,_0x10746d){const _0x4c962f=_0x4abf,_0x189db0={'LjLur':'\x5c$&'},_0xe48750=_0x10746d[_0x4c962f(0x121)](/[.*+?^${}()|[\]\\]/g,_0x189db0[_0x4c962f(0x91)]);return extractShellValue(_0x210124[_0x4c962f(0xfe)](new RegExp(_0x4c962f(0xd6)+_0xe48750+_0x4c962f(0xc8))));}function formatCommandTarget(_0x21ccad){const _0x30b201=_0x4abf,_0x3fad5a={'BLDlT':'target','pCoNj':function(_0x3aa85b,_0x29d79b,_0x348cc9){return _0x3aa85b(_0x29d79b,_0x348cc9);}};if(!_0x21ccad)return _0x3fad5a['BLDlT'];if(/^e\d+$/i['test'](_0x21ccad))return'ref\x20'+_0x21ccad;return JSON[_0x30b201(0xd0)](_0x3fad5a[_0x30b201(0xd7)](truncatePreview,_0x21ccad,0x78));}function formatPlaywrightCliLog(_0x3f5e50,_0xa97ba0){const _0x6fb001=_0x4abf,_0x372fc9={'xMuAl':'open','BQYHw':'open\x20browser','dblOx':_0x6fb001(0xe9),'WPAPo':_0x6fb001(0xab),'ZSWUO':_0x6fb001(0xf3),'RpyJy':'start\x20video\x20recording','sFFCZ':_0x6fb001(0xee),'AAIrf':_0x6fb001(0xa2),'dtddD':'capture\x20screenshot','PGAWm':function(_0x2f549d,_0x2c059f){return _0x2f549d(_0x2c059f);},'DDieo':function(_0xebe91a,_0x32f640,_0x5329cf){return _0xebe91a(_0x32f640,_0x5329cf);},'TbCzn':_0x6fb001(0xe5),'UFJgS':function(_0x380314,_0x46b64c){return _0x380314(_0x46b64c);},'trtLn':function(_0x5f26bf,_0x1a2313,_0x3216ac){return _0x5f26bf(_0x1a2313,_0x3216ac);},'RLemY':_0x6fb001(0xcd),'VkRJU':function(_0x5e175a,_0x291cca,_0x47fcc9){return _0x5e175a(_0x291cca,_0x47fcc9);},'dGHyW':'open\x20new\x20tab','upAkd':'tab-select'};switch(_0xa97ba0){case _0x372fc9[_0x6fb001(0xe7)]:{const _0x4d2516=extractFirstCommandArgument(_0x3f5e50,_0xa97ba0);return _0x4d2516?_0x6fb001(0xf1)+_0x4d2516:_0x372fc9['BQYHw'];}case _0x6fb001(0xb1):return _0x372fc9[_0x6fb001(0xc0)];case _0x372fc9['WPAPo']:return _0x372fc9[_0x6fb001(0xf0)];case'video-start':return _0x372fc9[_0x6fb001(0x108)];case _0x6fb001(0xec):return _0x6fb001(0x10e);case'snapshot':{const _0x45ef04=extractFilenameOption(_0x3f5e50);if(!_0x45ef04)return _0x372fc9['sFFCZ'];const {name:_0x289ccb}=toStepDisplayName(_0x45ef04);return _0x6fb001(0xa7)+_0x289ccb+'`';}case _0x372fc9[_0x6fb001(0xa5)]:{const _0x5d8c19=extractFilenameOption(_0x3f5e50);if(!_0x5d8c19)return _0x372fc9[_0x6fb001(0xe3)];const {name:_0x215602,isKeyStep:_0x1e82ad}=_0x372fc9[_0x6fb001(0xc4)](toStepDisplayName,_0x5d8c19);return _0x1e82ad?_0x6fb001(0xed)+_0x215602+'`':_0x6fb001(0x9d)+_0x215602+'`';}case _0x6fb001(0xf2):return'click\x20'+formatCommandTarget(_0x372fc9[_0x6fb001(0x103)](extractFirstCommandArgument,_0x3f5e50,_0xa97ba0));case _0x372fc9[_0x6fb001(0xd2)]:return'check\x20'+_0x372fc9['PGAWm'](formatCommandTarget,extractFirstCommandArgument(_0x3f5e50,_0xa97ba0));case _0x6fb001(0xbc):return'fill\x20'+_0x372fc9['UFJgS'](formatCommandTarget,_0x372fc9['trtLn'](extractFirstCommandArgument,_0x3f5e50,_0xa97ba0));case _0x372fc9['RLemY']:return'press\x20'+formatCommandTarget(_0x372fc9[_0x6fb001(0x8b)](extractFirstCommandArgument,_0x3f5e50,_0xa97ba0));case _0x6fb001(0xcc):return _0x6fb001(0x110);case'tab-new':{const _0x13eb56=extractFirstCommandArgument(_0x3f5e50,_0xa97ba0);return _0x13eb56?'open\x20new\x20tab\x20'+_0x13eb56:_0x372fc9['dGHyW'];}case _0x372fc9['upAkd']:{const _0x1991e=_0x372fc9[_0x6fb001(0xc7)](extractFirstCommandArgument,_0x3f5e50,_0xa97ba0);return _0x1991e?_0x6fb001(0x8d)+_0x1991e:_0x6fb001(0xf7);}default:return _0xa97ba0;}}function extractPlaywrightCliToolDescription(_0x1157ac){const _0x2824ae=_0x4abf,_0x28cb9a={'Xsanl':_0x2824ae(0xda)},_0x192484=_0x1157ac['description'];if(typeof _0x192484!==_0x28cb9a['Xsanl'])return null;const _0x2e4c34=_0x192484['trim']()['replace'](/\s+/g,'\x20');return _0x2e4c34['length']>0x0?_0x2e4c34:null;}function _0x4abf(_0x299eb6,_0x553b30){_0x299eb6=_0x299eb6-0x8a;const _0x251346=_0x2513();let _0x4abf43=_0x251346[_0x299eb6];return _0x4abf43;}export function formatPlaywrightCliConsoleLogMessage(_0x1d3140,_0x46c3dd,_0x58b49f){const _0x3902b3=_0x4abf,_0x363843={'OBtXq':function(_0x6697fc,_0xa5fab4,_0x2bc58b){return _0x6697fc(_0xa5fab4,_0x2bc58b);},'frera':function(_0x1c256c,_0x8e3b62){return _0x1c256c(_0x8e3b62);}},_0x45171b=_0x363843['OBtXq'](formatPlaywrightCliLog,_0x46c3dd,_0x58b49f),_0x4489c6=_0x363843['frera'](extractPlaywrightCliToolDescription,_0x1d3140);if(!_0x4489c6)return _0x3902b3(0xcb)+_0x45171b;if(process[_0x3902b3(0xe1)][_0x3902b3(0xe2)])return _0x3902b3(0x111)+_0x4489c6+'\x20('+_0x45171b+')';return'[ranger-verification-agent]\x20'+_0x4489c6;}export function buildVerifyFeatureCliDebugPrompt(_0x3d16f3,_0x4874ae){const _0x16c25b=_0x4abf,_0x1267e0={'GagTe':'00_mozilla-homepage.yml','VjmsM':function(_0x424a43,_0x3244d0,_0x32bbf2){return _0x424a43(_0x3244d0,_0x32bbf2);},'ZkDuc':'01_mozilla-homepage.png','HRMNd':_0x16c25b(0xea),'rlTfc':function(_0x2aa079,_0x1da21f,_0x5103d7){return _0x2aa079(_0x1da21f,_0x5103d7);},'fnpjU':function(_0x376133,_0x33c4e6){return _0x376133(_0x33c4e6);},'Zptza':function(_0xa4c672,_0x450b6e){return _0xa4c672(_0x450b6e);}},_0x36561d=buildCliArtifactPath(_0x4874ae,_0x1267e0[_0x16c25b(0xb9)]),_0x4fd101=_0x1267e0[_0x16c25b(0x106)](buildCliArtifactPath,_0x4874ae,_0x1267e0[_0x16c25b(0xfa)]),_0x39cd34=buildCliArtifactPath(_0x4874ae,_0x1267e0['HRMNd']),_0x2a4615=_0x1267e0['rlTfc'](buildCliArtifactPath,_0x4874ae,'03_learn-more.png'),_0x30b2b0=quoteShellArg(_0x36561d),_0x38e241=_0x1267e0[_0x16c25b(0x11e)](quoteShellArg,_0x4fd101),_0x3f0101=_0x1267e0[_0x16c25b(0x11e)](quoteShellArg,_0x39cd34),_0x54136c=_0x1267e0['Zptza'](quoteShellArg,_0x2a4615);return _0x16c25b(0x117)+_0x3d16f3+'\x0a\x0a1.\x20Run\x20`'+_0x3d16f3+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x3d16f3+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x3d16f3+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x4874ae+_0x16c25b(0xa8)+_0x3d16f3+_0x16c25b(0x10a)+_0x30b2b0+_0x16c25b(0x104)+_0x3d16f3+'\x20screenshot\x20--filename\x20'+_0x38e241+_0x16c25b(0xf6)+_0x3d16f3+'\x20snapshot\x20--filename\x20'+_0x3f0101+'`\x0a9.\x20Run\x20`'+_0x3d16f3+'\x20screenshot\x20--filename\x20'+_0x54136c+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x4bcbc1){const _0x3bae11=_0x4abf,_0x3d726c={'GIsli':_0x3bae11(0xa4),'bxBif':_0x3bae11(0x9f),'UnPjM':'numeric','pFkxk':'element','tdZIc':function(_0x452914,_0x40f39d,_0x2bc87e){return _0x452914(_0x40f39d,_0x2bc87e);},'lkkLP':_0x3bae11(0xdc),'uWwiP':function(_0x4cc155,_0x28eaa9){return _0x4cc155(_0x28eaa9);},'gvwkX':function(_0x47ae79,_0x18f0e4){return _0x47ae79>_0x18f0e4;},'RkSHO':'02_button-clicked.png','HNhoS':function(_0x55dac7,_0x37ae9b,_0x1dfec4){return _0x55dac7(_0x37ae9b,_0x1dfec4);}},{checklistItem:_0x2b9337,itemFeedback:_0x1853b8,taskDescription:_0x2f8b70,cliCommandPrefix:_0x16a4f4,cliArtifactDir:_0x538059,isCdpMode:_0x3ca090,url:_0x3e4c55,cdpEndpoint:_0x10a4d3,loginInstructions:_0x338321}=_0x4bcbc1,_0x4e2b94=_0x3d726c[_0x3bae11(0xac)](buildCliArtifactPath,_0x538059,_0x3d726c[_0x3bae11(0x98)]),_0x2eca75=buildCliArtifactPath(_0x538059,'02_state.yml'),_0x36c20e=buildCliArtifactPath(_0x538059,'key_03_success-state.png'),_0x458da3=buildCliArtifactPath(_0x538059,_0x3bae11(0x9a)),_0x4b1ec1=quoteShellArg(_0x4e2b94),_0x1784b6=quoteShellArg(_0x2eca75),_0x15e8e4=_0x3d726c[_0x3bae11(0x122)](quoteShellArg,_0x36c20e),_0x4ee60f=quoteShellArg(_0x458da3),_0x20326e=_0x2b9337['notes']?_0x3bae11(0xb0)+_0x2b9337[_0x3bae11(0xbd)]:'';let _0x269b3c='';if(_0x1853b8&&_0x3d726c[_0x3bae11(0x112)](_0x1853b8[_0x3bae11(0xcf)]['length'],0x0)){const _0x166668=_0x1853b8[_0x3bae11(0xcf)][_0x3bae11(0x9e)](_0x14c525=>{const _0x3c8502=_0x3bae11,_0x3f9dc3=new Date(_0x14c525['createdAt'])[_0x3c8502(0xb4)](_0x3d726c['GIsli'],{'month':_0x3d726c['bxBif'],'day':_0x3d726c[_0x3c8502(0xae)]}),_0x37d9cf=_0x14c525['authorName']||_0x14c525['authorEmail']||_0x3c8502(0xd1),_0x4cc2c5=_0x14c525['domRef']?_0x3c8502(0x8a)+(_0x14c525[_0x3c8502(0x96)][_0x3c8502(0xef)]['split']('\x20>\x20')['pop']()?.[_0x3c8502(0xe4)](':')[0x0]||_0x3d726c['pFkxk'])+'>\x20\x22'+(_0x14c525[_0x3c8502(0x96)][_0x3c8502(0xd9)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x14c525['id']+_0x3c8502(0x92)+_0x37d9cf+'**\x20('+_0x3f9dc3+_0x3c8502(0x10f)+_0x14c525[_0x3c8502(0x11b)]+'\x22'+_0x4cc2c5;})[_0x3bae11(0x101)]('\x0a');_0x269b3c='\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20(the\x20bracketed\x20value)\x20in\x20the\x20addressedCommentIds\x20array\x20in\x20your\x20output.\x0a\x0a'+_0x166668;}const _0x284964=_0x1853b8?.[_0x3bae11(0xf9)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x1853b8[_0x3bae11(0xf9)]:'',_0x138119=_0x3ca090?_0x3bae11(0xbe)+_0x10a4d3+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x3e4c55+_0x3bae11(0x116),_0x5b458e=_0x3e4c55?_0x3d726c[_0x3bae11(0x122)](quoteShellArg,_0x3e4c55):'',_0x57512b=_0x3ca090?_0x3bae11(0xf5)+_0x16a4f4+_0x3bae11(0xff)+_0x16a4f4+_0x3bae11(0x11f)+_0x16a4f4+_0x3bae11(0x9b)+_0x538059+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x16a4f4+_0x3bae11(0x10a)+_0x4b1ec1+'`\x20to\x20inspect\x20the\x20current\x20app\x20state.\x0a5.\x20Read\x20snapshot\x20YAML\x20files\x20to\x20find\x20element\x20references\x20like\x20`e12`,\x20then\x20use\x20them\x20with\x20`click`,\x20`fill`,\x20`check`,\x20or\x20`select`.\x0a6.\x20Use\x20`'+_0x16a4f4+'\x20screenshot\x20--filename\x20'+_0x4ee60f+_0x3bae11(0xa6)+_0x16a4f4+'\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario':_0x3bae11(0xf5)+_0x16a4f4+_0x3bae11(0xb3)+_0x5b458e+_0x3bae11(0xb6)+_0x16a4f4+_0x3bae11(0x11f)+_0x16a4f4+_0x3bae11(0x9b)+_0x538059+_0x3bae11(0xd4)+_0x16a4f4+'\x20snapshot\x20--filename\x20'+_0x4b1ec1+_0x3bae11(0xdb)+_0x16a4f4+_0x3bae11(0x100)+_0x4ee60f+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x16a4f4+'\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a9.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a10.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario',_0x80e65d=_0x3ca090?'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.':'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0x47014f=_0x338321?_0x3bae11(0x107)+_0x338321+_0x3bae11(0xfd):'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0x2b9337['description']+_0x20326e+_0x269b3c+_0x284964+_0x3bae11(0x109)+_0x2f8b70+'\x0a\x0a'+_0x138119+_0x47014f+'\x0a\x0a'+_0x57512b+_0x3bae11(0xbb)+_0x16a4f4+_0x3bae11(0xdd)+_0x538059+_0x3bae11(0xbf)+_0x1784b6+'`\x20writes\x20a\x20YAML\x20snapshot\x20you\x20can\x20read\x20for\x20element\x20refs\x0a-\x20`click\x20<ref>`,\x20`fill\x20<ref>\x20\x22text\x22`,\x20`check\x20<ref>`,\x20`press\x20Enter`\x0a-\x20`tab-list`,\x20`tab-select\x20<index>`,\x20`tab-new\x20<url>`\x0a-\x20`screenshot\x20--filename\x20'+_0x15e8e4+'`\x0a-\x20`run-code\x20\x22await\x20page.waitForTimeout(1000)\x22`\x20for\x20waits\x20or\x20small\x20custom\x20checks\x0a\x0a##\x20Screenshot\x20Guidelines\x20-\x20IMPORTANT\x0aTake\x20screenshots\x20throughout\x20the\x20verification\x20flow\x20so\x20a\x20human\x20can\x20review\x20it\x20for\x20completeness.\x20Screenshots\x20are\x20your\x20evidence\x20trail.\x0a\x0a**When\x20to\x20take\x20screenshots\x20(use\x20Playwright\x20CLI\x20screenshot):**\x0a-\x20After\x20the\x20initial\x20snapshot\x20(capture\x20starting\x20state)\x0a-\x20Before\x20and\x20after\x20clicking\x20buttons\x20or\x20submitting\x20forms\x0a-\x20When\x20important\x20UI\x20elements\x20appear\x20(modals,\x20notifications,\x20loading\x20states)\x0a-\x20After\x20navigating\x20to\x20different\x20views\x20or\x20pages\x0a-\x20When\x20verifying\x20specific\x20elements\x20exist\x0a-\x20At\x20the\x20final\x20state\x20showing\x20the\x20completed\x20action\x0a\x0a**Screenshot\x20naming:**\x0a-\x20Use\x20descriptive\x20filenames\x20under\x20`'+_0x538059+_0x3bae11(0xca)+_0x458da3+_0x3bae11(0xdf)+buildCliArtifactPath(_0x538059,_0x3d726c['RkSHO'])+_0x3bae11(0xdf)+_0x3d726c[_0x3bae11(0xac)](buildCliArtifactPath,_0x538059,'03_result-visible.png')+'\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22'+_0x3d726c[_0x3bae11(0x10c)](buildCliArtifactPath,_0x538059,_0x3bae11(0xc6))+_0x3bae11(0xb7)+_0x80e65d+'\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function summarizeVerifyFeatureCliCommandAvailability(_0x34dcd4){const _0x1126ee=_0x4abf,_0x1dbdaf=[..._0x34dcd4['keys']()]['sort']();let _0x5a2991=0x0;for(const _0x4ec20c of _0x34dcd4[_0x1126ee(0x113)]()){_0x5a2991+=_0x4ec20c;}return{'cliCommandCount':_0x5a2991,'cliCommandsSeen':_0x1dbdaf,'noCliCommandsCalled':_0x5a2991===0x0};}export function createVerifyFeatureCliHooks(_0x3e3554){const _0x3dfdcf=_0x4abf,_0x5de45a={'iUKKt':function(_0x383917,_0x47c42d){return _0x383917(_0x47c42d);},'oqivk':_0x3dfdcf(0x118),'OKDoP':function(_0xa213d3,_0x38deea){return _0xa213d3!==_0x38deea;},'zxtFR':'Bash','CkPtN':_0x3dfdcf(0xc2)},_0x49229d=new Map(),_0x300899=async _0x17679b=>{const _0x4f7422=_0x3dfdcf;if(_0x17679b[_0x4f7422(0x90)]!=='PostToolUse')return{};const _0x4c92c1=_0x17679b;if(_0x4c92c1['tool_name']!=='Bash')return{};const _0xc520e6=_0x4c92c1['tool_input'],_0x406527=extractBashCommand(_0xc520e6);if(!_0x406527)return{};const _0x33319d=_0x5de45a['iUKKt'](parsePlaywrightCliCommand,_0x406527);if(!_0x33319d)return{};return _0x49229d[_0x4f7422(0x105)](_0x33319d,(_0x49229d[_0x4f7422(0xa9)](_0x33319d)||0x0)+0x1),_0x3e3554['trackPhaseStart'](_0x4f7422(0xfb),{'transport':_0x5de45a[_0x4f7422(0x8c)],'toolName':_0x33319d}),_0x3e3554[_0x4f7422(0xfc)](_0x4f7422(0xfb),{'transport':_0x5de45a[_0x4f7422(0x8c)],'toolName':_0x33319d,'bashCommandPreview':truncatePreview(_0x406527)}),_0x5de45a[_0x4f7422(0xce)](_0x33319d,_0x4f7422(0xba))&&console[_0x4f7422(0x114)](formatPlaywrightCliConsoleLogMessage(_0xc520e6,_0x406527,_0x33319d)),{};},_0x464e3f=async _0x3c7138=>{const _0x13b2ea=_0x3dfdcf;if(_0x3c7138[_0x13b2ea(0x90)]!==_0x13b2ea(0x11a))return{};const _0x25f3f8=_0x3c7138;if(_0x25f3f8['tool_name']!==_0x5de45a['zxtFR'])return{};return await _0x3e3554[_0x13b2ea(0xa1)](_0x5de45a['CkPtN'],_0x25f3f8[_0x13b2ea(0xd3)],{'transport':_0x5de45a['oqivk'],'toolName':_0x5de45a[_0x13b2ea(0xf4)]}),{};};return{'postToolUseHook':_0x300899,'postToolUseFailureHook':_0x464e3f,'commandCounts':_0x49229d};}async function runPlaywrightCliLifecycleCommand(_0x1ed01a){const _0x12a5e8=_0x4abf,_0x3ab424={'IAkez':function(_0x13ed33,_0x1ffe70){return _0x13ed33??_0x1ffe70;}},{sessionId:_0x24cf02,configPath:_0x3f9350,commandArgs:_0x20ca1c,env:_0x142ecd,telemetry:_0x428769,phase:_0x54033c,metadata:_0x14f1be,timeoutMs:_0x282dd2}=_0x1ed01a;_0x428769['trackPhaseStart'](_0x54033c,_0x14f1be);try{const _0x4d4873=await runPlaywrightCliCommand({'sessionId':_0x24cf02,'configPath':_0x3f9350,'commandArgs':_0x20ca1c,'cwd':process[_0x12a5e8(0x120)](),'env':_0x142ecd,'timeoutMs':_0x3ab424['IAkez'](_0x282dd2,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x428769[_0x12a5e8(0xfc)](_0x54033c,{..._0x14f1be,'subcommand':_0x4d4873[_0x12a5e8(0xe0)][_0x12a5e8(0xad)],'stdoutPreview':truncatePreview(_0x4d4873['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x4d4873[_0x12a5e8(0x9c)],0x7d0)});}catch(_0x3a1632){await _0x428769[_0x12a5e8(0xa1)](_0x54033c,_0x3a1632,_0x14f1be);throw _0x3a1632;}}function _0x2513(){const _0x211335=['close','PostToolUseFailure','content','3092128zdDQYp','isFile','fnpjU','\x20tracing-start`,\x20then\x20`','cwd','replace','uWwiP','\x20(on\x20element:\x20<','VkRJU','oqivk','select\x20tab\x20','wLSzf','365009rShrYO','hook_event_name','LjLur',']\x20**','sort','commandArgs','Wwtka','domRef','kPdTN','lkkLP','Xsrjw','01_initial-state.png','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','stderr','capture\x20step\x20`','map','short','21GXquTO','trackPhaseError','screenshot','374793PqINxg','en-US','AAIrf','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','capture\x20snapshot\x20`','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','get','session-recording.webm','tracing-stop','tdZIc','subcommand','UnPjM','BKkAV','\x0a\x0a##\x20Additional\x20Notes\x0a','tracing-start','push','\x20open\x20','toLocaleDateString','bzUou','`,\x20then\x20`','\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a','...','GagTe','snapshot','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','fill','notes','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','`\x0a-\x20`snapshot\x20--filename\x20','dblOx','573648YOIMfX','tool_failure','351590FLSmLq','PGAWm','10hrVjTz','key_04_success-state.png','trtLn','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','trace.trace.zip','`:\x20\x22','[playwright-cli]\x20','run-code','press','OKDoP','unaddressedComments','stringify','Reviewer','TbCzn','error','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','1339100AKSbFE','(?:^|\x5cs)','pCoNj','oZqLf','textContent','string','`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`','01_initial.yml','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','4PDBAsf','\x22,\x20\x22','invocation','env','DEBUG','dtddD','split','check','test','xMuAl','playwright_cli_video_stop','start\x20tracing','02_learn-more.yml','2899539nJPZFk','video-stop','capture\x20key\x20step\x20`','capture\x20snapshot','selector','ZSWUO','open\x20','click','stop\x20tracing','zxtFR','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','select\x20tab','phase','canonicalFlow','ZkDuc','tool_call','trackPhaseEnd','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','match','\x20open`,\x20then\x20`','\x20screenshot\x20--filename\x20','join','awkMX','DDieo','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','set','VjmsM','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','RpyJy','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','\x20snapshot\x20--filename\x20','mtimeMs','HNhoS','uJlgl','stop\x20video\x20recording','):\x20\x22','run\x20custom\x20Playwright\x20code','[ranger-verification-agent]\x20','gvwkX','values','log','playwright_cli_tracing_stop','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x20(same\x20protocol,\x20host,\x20and\x20port)\x0a-\x20For\x20example,\x20if\x20the\x20base\x20URL\x20is\x20\x22http://localhost:3000\x22,\x20you\x20can\x20navigate\x20to\x20\x22http://localhost:3000/home\x22,\x20\x22http://localhost:3000/settings\x22,\x20etc.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port\x20under\x20any\x20circumstances\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists\x20(e.g.,\x20\x22/dashboard\x22),\x20you\x20may\x20navigate\x20to\x20that\x20path\x20ONLY\x20under\x20the\x20base\x20URL\x20above\x0a-\x20The\x20base\x20URL\x20above\x20is\x20the\x20ONLY\x20authorized\x20profile\x20for\x20this\x20verification','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','playwright-cli'];_0x2513=function(){return _0x211335;};return _0x2513();}export async function finalizeVerifyFeatureCliSession(_0x4a1035){const _0x174c5f=_0x4abf,_0x105536={'Xsrjw':_0x174c5f(0x115),'BKkAV':function(_0x9a5206,_0x32fb2d,_0x48fb43){return _0x9a5206(_0x32fb2d,_0x48fb43);},'bzUou':_0x174c5f(0xaa),'vfQOn':'playwright_cli_close','kPdTN':_0x174c5f(0x119),'uJlgl':function(_0x4d9131,_0x557a4a){return _0x4d9131(_0x557a4a);}},{telemetry:_0x571dcc,sessionId:_0x3d10c9,configPath:_0x236cb9,cliArtifactDir:_0x41137d,env:_0x7c1fde,transportMetadata:_0x4b370e}=_0x4a1035,_0xe2b4b8=[{'phase':_0x105536[_0x174c5f(0x99)],'commandArgs':[_0x174c5f(0xab)]},{'phase':_0x174c5f(0xe8),'commandArgs':['video-stop','--filename='+_0x105536[_0x174c5f(0xaf)](buildCliArtifactPath,_0x41137d,_0x105536[_0x174c5f(0xb5)])]},{'phase':_0x105536['vfQOn'],'commandArgs':[_0x105536[_0x174c5f(0x97)]]}];for(const _0x58b06f of _0xe2b4b8){try{await _0x105536[_0x174c5f(0x10d)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x3d10c9,'configPath':_0x236cb9,'commandArgs':[..._0x58b06f[_0x174c5f(0x94)]],'env':_0x7c1fde,'telemetry':_0x571dcc,'phase':_0x58b06f[_0x174c5f(0xf8)],'metadata':_0x4b370e});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x31f18d){const _0x456930=_0x4abf,_0x4195b6={'oZqLf':_0x456930(0xc9),'Wwtka':function(_0x8b9722,_0x5d21b4){return _0x8b9722(_0x5d21b4);}},_0x26a659=['trace.zip',_0x4195b6[_0x456930(0xd8)]];for(const _0x58bd4d of _0x26a659){const _0x396744=join(_0x31f18d,_0x58bd4d);try{return{'buffer':await _0x4195b6[_0x456930(0x95)](readFile,_0x396744),'source':_0x396744};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0xb45ce){const _0x558d22=_0x4abf,_0xba30ec={'CTwuI':function(_0x54f6fa,_0x10303e,_0x4769a4){return _0x54f6fa(_0x10303e,_0x4769a4);},'awkMX':function(_0x21b110,_0x1bfd9c){return _0x21b110(_0x1bfd9c);},'uOejY':function(_0x4c62b6,_0x483d72){return _0x4c62b6+_0x483d72;},'LCrsa':function(_0x5aef8b,_0x16eb2a,_0x2229d5){return _0x5aef8b(_0x16eb2a,_0x2229d5);}},{cwd:_0xae68e7,cliArtifactDir:_0x79178e,startTime:_0x30dec0}=_0xb45ce,_0xb52df=[];await mkdir(_0x79178e,{'recursive':!![]});const _0x1acab1=await readdir(_0xae68e7,{'withFileTypes':!![]});for(const _0x44f6e2 of _0x1acab1){if(!_0x44f6e2[_0x558d22(0x11d)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x558d22(0xe6)](_0x44f6e2['name']))continue;const _0x27672c=_0xba30ec['CTwuI'](join,_0xae68e7,_0x44f6e2['name']),_0x23740f=await _0xba30ec[_0x558d22(0x102)](stat,_0x27672c);if(_0xba30ec['uOejY'](_0x23740f[_0x558d22(0x10b)],0x7d0)<_0x30dec0)continue;const _0x19e769=buildCliArtifactPath(_0x79178e,_0x44f6e2['name']);if(_0x27672c===_0x19e769)continue;await _0xba30ec['LCrsa'](rename,_0x27672c,_0x19e769),_0xb52df[_0x558d22(0xb2)](_0x44f6e2['name']);}return _0xb52df[_0x558d22(0x93)]();}
|
|
1
|
+
(function(_0x16253f,_0x5ccd8d){const _0x2a04bf=_0x982c,_0x957b20=_0x16253f();while(!![]){try{const _0x37dd28=parseInt(_0x2a04bf(0x10a))/0x1*(parseInt(_0x2a04bf(0xc5))/0x2)+parseInt(_0x2a04bf(0xe1))/0x3+-parseInt(_0x2a04bf(0xcf))/0x4*(parseInt(_0x2a04bf(0xaa))/0x5)+parseInt(_0x2a04bf(0x11f))/0x6+-parseInt(_0x2a04bf(0xd0))/0x7+parseInt(_0x2a04bf(0x102))/0x8*(-parseInt(_0x2a04bf(0x103))/0x9)+parseInt(_0x2a04bf(0xf4))/0xa*(parseInt(_0x2a04bf(0x123))/0xb);if(_0x37dd28===_0x5ccd8d)break;else _0x957b20['push'](_0x957b20['shift']());}catch(_0x12d222){_0x957b20['push'](_0x957b20['shift']());}}}(_0x3689,0xd81e3));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function _0x982c(_0x799165,_0x3b5486){_0x799165=_0x799165-0x8a;const _0x368935=_0x3689();let _0x982cae=_0x368935[_0x799165];return _0x982cae;}function _0x3689(){const _0x24d23f=['\x0a\x0a##\x20Task\x20to\x20Execute\x0a','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','1956144fXijTi','BNzST','02_learn-more.yml','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','playwright_cli_tracing_stop','check','01_initial.yml','AgYsg','map','03_learn-more.png','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','phase','authorEmail','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','tool_call','sort','key_03_success-state.png','tab-new','10xGRCIF','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','OOpGN','Reviewer','SsDPB','AljAQ','wLllb','01_mozilla-homepage.png','pop','press\x20','HlNbY','PjBES','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','string','1228856hRqRYo','36jiuDRy','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','isFile','\x0a\x0a1.\x20Run\x20`','invocation','target','numeric','1158054GpCLSj','playwright_cli_close','replace','snapshot','press','select\x20tab\x20','trackPhaseEnd','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x20(same\x20protocol,\x20host,\x20and\x20port)\x0a-\x20For\x20example,\x20if\x20the\x20base\x20URL\x20is\x20\x22http://localhost:3000\x22,\x20you\x20can\x20navigate\x20to\x20\x22http://localhost:3000/home\x22,\x20\x22http://localhost:3000/settings\x22,\x20etc.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port\x20under\x20any\x20circumstances\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists\x20(e.g.,\x20\x22/dashboard\x22),\x20you\x20may\x20navigate\x20to\x20that\x20path\x20ONLY\x20under\x20the\x20base\x20URL\x20above\x0a-\x20The\x20base\x20URL\x20above\x20is\x20the\x20ONLY\x20authorized\x20profile\x20for\x20this\x20verification','run\x20custom\x20Playwright\x20code','FLlxS','--filename=','PostToolUse','UpUQu','[ranger-verification-agent]\x20',']\x20**','DEBUG','content','pbmhK','tracing-start','fill\x20','split','241362carfjW','\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20(the\x20bracketed\x20value)\x20in\x20the\x20addressedCommentIds\x20array\x20in\x20your\x20output.\x0a\x0a','tBrwg','createdAt','8599129qJDlpr','selector','\x20tracing-start`,\x20then\x20`','screenshot','FHcYo','match','click','nJcUT','RGjJH','\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.','short','video-stop','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','xBemv','notes','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','rkSzP','tracing-stop','stringify','`\x20to\x20inspect\x20the\x20current\x20app\x20state.\x0a5.\x20Read\x20snapshot\x20YAML\x20files\x20to\x20find\x20element\x20references\x20like\x20`e12`,\x20then\x20use\x20them\x20with\x20`click`,\x20`fill`,\x20`check`,\x20or\x20`select`.\x0a6.\x20Use\x20`','\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22','\x20snapshot\x20--filename\x20','trace.trace.zip','STsmt','test','stderr','bvKsh','tool_failure','\x20tracing-start`\x0a3.\x20Run\x20`','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','ref\x20','`,\x20then\x20`','\x20>\x20','cwd','playwright-cli','LTUbd','-\x20[','playwright_cli_video_stop','qfWHi','355fMCvbA','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','mltDV','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','unaddressedComments','values','`:\x20\x22','brZMY','domRef','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','BSJZU','env','`\x0a-\x20`run-code\x20\x22await\x20page.waitForTimeout(1000)\x22`\x20for\x20waits\x20or\x20small\x20custom\x20checks\x0a\x0a##\x20Screenshot\x20Guidelines\x20-\x20IMPORTANT\x0aTake\x20screenshots\x20throughout\x20the\x20verification\x20flow\x20so\x20a\x20human\x20can\x20review\x20it\x20for\x20completeness.\x20Screenshots\x20are\x20your\x20evidence\x20trail.\x0a\x0a**When\x20to\x20take\x20screenshots\x20(use\x20Playwright\x20CLI\x20screenshot):**\x0a-\x20After\x20the\x20initial\x20snapshot\x20(capture\x20starting\x20state)\x0a-\x20Before\x20and\x20after\x20clicking\x20buttons\x20or\x20submitting\x20forms\x0a-\x20When\x20important\x20UI\x20elements\x20appear\x20(modals,\x20notifications,\x20loading\x20states)\x0a-\x20After\x20navigating\x20to\x20different\x20views\x20or\x20pages\x0a-\x20When\x20verifying\x20specific\x20elements\x20exist\x0a-\x20At\x20the\x20final\x20state\x20showing\x20the\x20completed\x20action\x0a\x0a**Screenshot\x20naming:**\x0a-\x20Use\x20descriptive\x20filenames\x20under\x20`','slice','WfMGo','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','FvEuE','trace.zip','stop\x20tracing','xdEiD','\x5c$&','\x20screenshot\x20--filename\x20','join','...','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','tab-select','2OcZSXQ','SdmLX','toLocaleDateString','tool_input','bKuFj','01_initial-state.png','length','IIXff','ALiwG','tool_name','16572CTEjTN','5867876gjNWdd','log','frEOx','\x20(on\x20element:\x20<','DBPbX','Bash','start\x20video\x20recording','check\x20','\x20open\x20','name','AFzJT','**\x20(','[playwright-cli]\x20','trim','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'];_0x3689=function(){return _0x24d23f;};return _0x3689();}function truncatePreview(_0xfe04dd,_0x23f2b4=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x4a2b8e=_0x982c,_0x38f33e={'STsmt':function(_0x36a36b,_0x26d4ac){return _0x36a36b>_0x26d4ac;},'ALiwG':function(_0x5498e5,_0x7fd3f3){return _0x5498e5+_0x7fd3f3;},'PANrP':_0x4a2b8e(0xc2)};return _0x38f33e[_0x4a2b8e(0x9a)](_0xfe04dd['length'],_0x23f2b4)?_0x38f33e[_0x4a2b8e(0xcd)](_0xfe04dd[_0x4a2b8e(0xb8)](0x0,_0x23f2b4),_0x38f33e['PANrP']):_0xfe04dd;}function buildCliArtifactPath(_0x5c5c40,_0x580ebb){return join(_0x5c5c40,_0x580ebb);}function toStepDisplayName(_0x52e587){const _0x5939aa=_0x982c,_0x332a37=basename(_0x52e587)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x5939aa(0x10c)](/^key_/i,'')[_0x5939aa(0x10c)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x332a37,'isKeyStep':/^key_/i[_0x5939aa(0x9b)](basename(_0x52e587))};}function extractShellValue(_0x4c4fc7){if(!_0x4c4fc7)return null;return _0x4c4fc7[0x1]??_0x4c4fc7[0x2]??_0x4c4fc7[0x3]??null;}function extractFilenameOption(_0x1048cf){const _0x4af235=_0x982c,_0x36e5e5={'pbmhK':function(_0x22e176,_0x32f9d0){return _0x22e176(_0x32f9d0);}};return _0x36e5e5[_0x4af235(0x11b)](extractShellValue,_0x1048cf[_0x4af235(0x128)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x4efd3a,_0x289f6a){const _0x354342=_0x982c,_0x204004={'wLllb':_0x354342(0xbf),'PiPTD':function(_0x30e03c,_0x41613d){return _0x30e03c(_0x41613d);}},_0x506093=_0x289f6a[_0x354342(0x10c)](/[.*+?^${}()|[\]\\]/g,_0x204004[_0x354342(0xfa)]);return _0x204004['PiPTD'](extractShellValue,_0x4efd3a['match'](new RegExp('(?:^|\x5cs)'+_0x506093+_0x354342(0xe4))));}function formatCommandTarget(_0x438796){const _0x42b181=_0x982c,_0x380f68={'BNzST':_0x42b181(0x108),'tmuIk':function(_0x11e4ee,_0x205fb2,_0x529031){return _0x11e4ee(_0x205fb2,_0x529031);}};if(!_0x438796)return _0x380f68[_0x42b181(0xe2)];if(/^e\d+$/i[_0x42b181(0x9b)](_0x438796))return _0x42b181(0xa1)+_0x438796;return JSON[_0x42b181(0x95)](_0x380f68['tmuIk'](truncatePreview,_0x438796,0x78));}function formatPlaywrightCliLog(_0x25553b,_0xa2abf9){const _0x271cbd=_0x982c,_0x3b0741={'bvKsh':_0x271cbd(0x11c),'HlNbY':'capture\x20snapshot','sIaTl':_0x271cbd(0x126),'IIXff':function(_0x3118c9,_0x6d216e){return _0x3118c9(_0x6d216e);},'PjBES':'capture\x20screenshot','DzoVY':function(_0x2166d0,_0x36844a,_0x222cb5){return _0x2166d0(_0x36844a,_0x222cb5);},'xUFLx':_0x271cbd(0xe7),'FvEuE':'fill','SsDPB':_0x271cbd(0x10e),'FSesD':'run-code','xdEiD':_0x271cbd(0xf3),'oxUzL':_0x271cbd(0xc4),'xBemv':'select\x20tab'};switch(_0xa2abf9){case'open':{const _0x156818=extractFirstCommandArgument(_0x25553b,_0xa2abf9);return _0x156818?'open\x20'+_0x156818:'open\x20browser';}case _0x3b0741[_0x271cbd(0x9d)]:return'start\x20tracing';case _0x271cbd(0x94):return _0x271cbd(0xbd);case'video-start':return _0x271cbd(0xd6);case'video-stop':return'stop\x20video\x20recording';case _0x271cbd(0x10d):{const _0x1132fd=extractFilenameOption(_0x25553b);if(!_0x1132fd)return _0x3b0741[_0x271cbd(0xfe)];const {name:_0x22e8d8}=toStepDisplayName(_0x1132fd);return'capture\x20snapshot\x20`'+_0x22e8d8+'`';}case _0x3b0741['sIaTl']:{const _0x3f3160=_0x3b0741[_0x271cbd(0xcc)](extractFilenameOption,_0x25553b);if(!_0x3f3160)return _0x3b0741[_0x271cbd(0xff)];const {name:_0x5148a7,isKeyStep:_0x51bd4b}=toStepDisplayName(_0x3f3160);return _0x51bd4b?'capture\x20key\x20step\x20`'+_0x5148a7+'`':'capture\x20step\x20`'+_0x5148a7+'`';}case _0x271cbd(0x129):return'click\x20'+formatCommandTarget(_0x3b0741['DzoVY'](extractFirstCommandArgument,_0x25553b,_0xa2abf9));case _0x3b0741['xUFLx']:return _0x271cbd(0xd7)+formatCommandTarget(extractFirstCommandArgument(_0x25553b,_0xa2abf9));case _0x3b0741[_0x271cbd(0xbb)]:return _0x271cbd(0x11d)+formatCommandTarget(extractFirstCommandArgument(_0x25553b,_0xa2abf9));case _0x3b0741[_0x271cbd(0xf8)]:return _0x271cbd(0xfd)+_0x3b0741[_0x271cbd(0xcc)](formatCommandTarget,extractFirstCommandArgument(_0x25553b,_0xa2abf9));case _0x3b0741['FSesD']:return _0x271cbd(0x112);case _0x3b0741[_0x271cbd(0xbe)]:{const _0xe99780=extractFirstCommandArgument(_0x25553b,_0xa2abf9);return _0xe99780?'open\x20new\x20tab\x20'+_0xe99780:'open\x20new\x20tab';}case _0x3b0741['oxUzL']:{const _0x24d99b=extractFirstCommandArgument(_0x25553b,_0xa2abf9);return _0x24d99b?_0x271cbd(0x10f)+_0x24d99b:_0x3b0741[_0x271cbd(0x90)];}default:return _0xa2abf9;}}function extractPlaywrightCliToolDescription(_0x4cc582){const _0x169a86=_0x982c,_0x30d1e1=_0x4cc582['description'];if(typeof _0x30d1e1!==_0x169a86(0x101))return null;const _0x8bbaa4=_0x30d1e1[_0x169a86(0xdd)]()['replace'](/\s+/g,'\x20');return _0x8bbaa4['length']>0x0?_0x8bbaa4:null;}export function formatPlaywrightCliConsoleLogMessage(_0x22ee46,_0x343eff,_0x4876de){const _0x47ea7f=_0x982c,_0x28df74={'LTUbd':function(_0x2c0684,_0x11d9df,_0x53c101){return _0x2c0684(_0x11d9df,_0x53c101);},'FYkUc':function(_0x55f68a,_0x40e8a2){return _0x55f68a(_0x40e8a2);}},_0x5218fd=_0x28df74[_0x47ea7f(0xa6)](formatPlaywrightCliLog,_0x343eff,_0x4876de),_0x16025c=_0x28df74['FYkUc'](extractPlaywrightCliToolDescription,_0x22ee46);if(!_0x16025c)return _0x47ea7f(0xdc)+_0x5218fd;if(process[_0x47ea7f(0xb6)][_0x47ea7f(0x119)])return'[ranger-verification-agent]\x20'+_0x16025c+'\x20('+_0x5218fd+')';return _0x47ea7f(0x117)+_0x16025c;}export function buildVerifyFeatureCliDebugPrompt(_0x1313bf,_0x39b2d5){const _0x347b44=_0x982c,_0x236edd={'AFzJT':_0x347b44(0xfb),'FLlxS':function(_0x1b139d,_0x3af56e,_0x2dccc1){return _0x1b139d(_0x3af56e,_0x2dccc1);},'UpUQu':_0x347b44(0xe3),'wDNNJ':_0x347b44(0xeb),'WfMGo':function(_0x14dc97,_0x149176){return _0x14dc97(_0x149176);},'SdmLX':function(_0x50dbd9,_0x11a1ab){return _0x50dbd9(_0x11a1ab);},'TbeuA':function(_0x3958ce,_0xe1d212){return _0x3958ce(_0xe1d212);}},_0x4eb204=buildCliArtifactPath(_0x39b2d5,'00_mozilla-homepage.yml'),_0x338ebf=buildCliArtifactPath(_0x39b2d5,_0x236edd[_0x347b44(0xda)]),_0x2b6697=_0x236edd[_0x347b44(0x113)](buildCliArtifactPath,_0x39b2d5,_0x236edd[_0x347b44(0x116)]),_0xe5417f=buildCliArtifactPath(_0x39b2d5,_0x236edd['wDNNJ']),_0x255a38=quoteShellArg(_0x4eb204),_0x5956a8=_0x236edd[_0x347b44(0xb9)](quoteShellArg,_0x338ebf),_0x4da8cd=_0x236edd[_0x347b44(0xc6)](quoteShellArg,_0x2b6697),_0x25e614=_0x236edd['TbeuA'](quoteShellArg,_0xe5417f);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x1313bf+_0x347b44(0x106)+_0x1313bf+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x1313bf+_0x347b44(0x9f)+_0x1313bf+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x39b2d5+_0x347b44(0xe0)+_0x1313bf+'\x20snapshot\x20--filename\x20'+_0x255a38+_0x347b44(0xe5)+_0x1313bf+_0x347b44(0xc0)+_0x5956a8+_0x347b44(0xae)+_0x1313bf+_0x347b44(0x98)+_0x4da8cd+'`\x0a9.\x20Run\x20`'+_0x1313bf+_0x347b44(0xc0)+_0x25e614+_0x347b44(0xef);}export function buildVerifyFeatureCliPrompt(_0x2c5f3f){const _0x3037e0=_0x982c,_0x2a6b7e={'nACJL':_0x3037e0(0x8d),'fSlVY':_0x3037e0(0xe8),'jBpOg':'02_state.yml','mltDV':function(_0x252a64,_0x58d380,_0x4ea6d5){return _0x252a64(_0x58d380,_0x4ea6d5);},'uAWVg':_0x3037e0(0xca),'NJmMp':function(_0x116901,_0x2f7681){return _0x116901(_0x2f7681);},'DBPbX':function(_0x476b8d,_0x51c445){return _0x476b8d>_0x51c445;}},{checklistItem:_0x210919,itemFeedback:_0xb7c53f,taskDescription:_0x4c3d0c,cliCommandPrefix:_0x3a0914,cliArtifactDir:_0x486dc4,isCdpMode:_0x5cdebc,url:_0x3c05b1,cdpEndpoint:_0x1cd339,loginInstructions:_0xda5b65}=_0x2c5f3f,_0x3990cd=buildCliArtifactPath(_0x486dc4,_0x2a6b7e['fSlVY']),_0x43c29c=buildCliArtifactPath(_0x486dc4,_0x2a6b7e['jBpOg']),_0x59cbf1=_0x2a6b7e[_0x3037e0(0xac)](buildCliArtifactPath,_0x486dc4,_0x3037e0(0xf2)),_0x2bf84c=buildCliArtifactPath(_0x486dc4,_0x2a6b7e['uAWVg']),_0x156f02=quoteShellArg(_0x3990cd),_0x23282a=_0x2a6b7e['NJmMp'](quoteShellArg,_0x43c29c),_0xd45ad4=quoteShellArg(_0x59cbf1),_0x2d3dbf=quoteShellArg(_0x2bf84c),_0x36dafe=_0x210919[_0x3037e0(0x91)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x210919['notes']:'';let _0x3604c4='';if(_0xb7c53f&&_0x2a6b7e[_0x3037e0(0xd4)](_0xb7c53f['unaddressedComments'][_0x3037e0(0xcb)],0x0)){const _0x49e0ce=_0xb7c53f[_0x3037e0(0xaf)][_0x3037e0(0xea)](_0x4ed144=>{const _0x538d4b=_0x3037e0,_0x10688e=new Date(_0x4ed144[_0x538d4b(0x122)])[_0x538d4b(0xc7)]('en-US',{'month':_0x2a6b7e['nACJL'],'day':_0x538d4b(0x109)}),_0x5cfaf3=_0x4ed144['authorName']||_0x4ed144[_0x538d4b(0xee)]||_0x538d4b(0xf7),_0x1c8df0=_0x4ed144[_0x538d4b(0xb3)]?_0x538d4b(0xd3)+(_0x4ed144[_0x538d4b(0xb3)][_0x538d4b(0x124)][_0x538d4b(0x11e)](_0x538d4b(0xa3))[_0x538d4b(0xfc)]()?.[_0x538d4b(0x11e)](':')[0x0]||'element')+'>\x20\x22'+(_0x4ed144['domRef']['textContent']||'')[_0x538d4b(0xb8)](0x0,0x32)+'\x22)':'';return _0x538d4b(0xa7)+_0x4ed144['id']+_0x538d4b(0x118)+_0x5cfaf3+_0x538d4b(0xdb)+_0x10688e+'):\x20\x22'+_0x4ed144[_0x538d4b(0x11a)]+'\x22'+_0x1c8df0;})[_0x3037e0(0xc1)]('\x0a');_0x3604c4=_0x3037e0(0x120)+_0x49e0ce;}const _0x1c1dd2=_0xb7c53f?.['canonicalFlow']?_0x3037e0(0xa0)+_0xb7c53f['canonicalFlow']:'',_0x453b68=_0x5cdebc?_0x3037e0(0xc3)+_0x1cd339+_0x3037e0(0x100):_0x3037e0(0xf5)+_0x3c05b1+_0x3037e0(0x111),_0x2dad57=_0x3c05b1?quoteShellArg(_0x3c05b1):'',_0x3bf863=_0x5cdebc?_0x3037e0(0x92)+_0x3a0914+'\x20open`,\x20then\x20`'+_0x3a0914+'\x20tracing-start`,\x20then\x20`'+_0x3a0914+_0x3037e0(0x8f)+_0x486dc4+_0x3037e0(0xad)+_0x3a0914+'\x20snapshot\x20--filename\x20'+_0x156f02+_0x3037e0(0x96)+_0x3a0914+'\x20screenshot\x20--filename\x20'+_0x2d3dbf+_0x3037e0(0xde)+_0x3a0914+_0x3037e0(0xec):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x3a0914+_0x3037e0(0xd8)+_0x2dad57+_0x3037e0(0xa2)+_0x3a0914+_0x3037e0(0x125)+_0x3a0914+_0x3037e0(0x8f)+_0x486dc4+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x3a0914+_0x3037e0(0x98)+_0x156f02+'`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`'+_0x3a0914+_0x3037e0(0xc0)+_0x2d3dbf+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x3a0914+'\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a9.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a10.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario',_0x5d187b=_0x5cdebc?_0x3037e0(0xba):_0x3037e0(0xb4),_0x124cba=_0xda5b65?_0x3037e0(0x104)+_0xda5b65+_0x3037e0(0xab):'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0x210919['description']+_0x36dafe+_0x3604c4+_0x1c1dd2+_0x3037e0(0xdf)+_0x4c3d0c+'\x0a\x0a'+_0x453b68+_0x124cba+'\x0a\x0a'+_0x3bf863+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x3a0914+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x486dc4+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x23282a+'`\x20writes\x20a\x20YAML\x20snapshot\x20you\x20can\x20read\x20for\x20element\x20refs\x0a-\x20`click\x20<ref>`,\x20`fill\x20<ref>\x20\x22text\x22`,\x20`check\x20<ref>`,\x20`press\x20Enter`\x0a-\x20`tab-list`,\x20`tab-select\x20<index>`,\x20`tab-new\x20<url>`\x0a-\x20`screenshot\x20--filename\x20'+_0xd45ad4+_0x3037e0(0xb7)+_0x486dc4+_0x3037e0(0xb1)+_0x2bf84c+'\x22,\x20\x22'+buildCliArtifactPath(_0x486dc4,'02_button-clicked.png')+'\x22,\x20\x22'+_0x2a6b7e['mltDV'](buildCliArtifactPath,_0x486dc4,'03_result-visible.png')+_0x3037e0(0x97)+buildCliArtifactPath(_0x486dc4,'key_04_success-state.png')+'\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a'+_0x5d187b+_0x3037e0(0x8c);}export function summarizeVerifyFeatureCliCommandAvailability(_0x209b3b){const _0x5f11a2=_0x982c,_0xb5516e={'FswFO':function(_0x2e7add,_0x1a6e4f){return _0x2e7add===_0x1a6e4f;}},_0x3782fc=[..._0x209b3b['keys']()]['sort']();let _0x2fb8d3=0x0;for(const _0x556705 of _0x209b3b[_0x5f11a2(0xb0)]()){_0x2fb8d3+=_0x556705;}return{'cliCommandCount':_0x2fb8d3,'cliCommandsSeen':_0x3782fc,'noCliCommandsCalled':_0xb5516e['FswFO'](_0x2fb8d3,0x0)};}export function createVerifyFeatureCliHooks(_0xed1c33){const _0x3d51ed=_0x982c,_0xa0e360={'xYoMw':function(_0x38b88b,_0x2bfb71){return _0x38b88b(_0x2bfb71);},'rkSzP':function(_0x10e3d1,_0x28bf8c){return _0x10e3d1+_0x28bf8c;},'nJcUT':'playwright-cli','FufkE':_0x3d51ed(0x10d),'OIXUC':function(_0x3b4660,_0x50f166,_0x3657bd,_0x36fc45){return _0x3b4660(_0x50f166,_0x3657bd,_0x36fc45);},'BSJZU':function(_0x18c107,_0x17a6a5){return _0x18c107!==_0x17a6a5;},'OOpGN':_0x3d51ed(0xd5),'tBrwg':_0x3d51ed(0x9e)},_0x441281=new Map(),_0x8e521b=async _0x4d6fdc=>{const _0x2e2575=_0x3d51ed;if(_0x4d6fdc['hook_event_name']!==_0x2e2575(0x115))return{};const _0x27f712=_0x4d6fdc;if(_0x27f712[_0x2e2575(0xce)]!==_0x2e2575(0xd5))return{};const _0xb48849=_0x27f712[_0x2e2575(0xc8)],_0x1c1001=extractBashCommand(_0xb48849);if(!_0x1c1001)return{};const _0x6e71d8=_0xa0e360['xYoMw'](parsePlaywrightCliCommand,_0x1c1001);if(!_0x6e71d8)return{};return _0x441281['set'](_0x6e71d8,_0xa0e360[_0x2e2575(0x93)](_0x441281['get'](_0x6e71d8)||0x0,0x1)),_0xed1c33['trackPhaseStart'](_0x2e2575(0xf0),{'transport':_0xa0e360[_0x2e2575(0x8a)],'toolName':_0x6e71d8}),_0xed1c33['trackPhaseEnd']('tool_call',{'transport':'playwright-cli','toolName':_0x6e71d8,'bashCommandPreview':truncatePreview(_0x1c1001)}),_0x6e71d8!==_0xa0e360['FufkE']&&console[_0x2e2575(0xd1)](_0xa0e360['OIXUC'](formatPlaywrightCliConsoleLogMessage,_0xb48849,_0x1c1001,_0x6e71d8)),{};},_0x730f62=async _0x358c11=>{const _0x30cf16=_0x3d51ed;if(_0xa0e360[_0x30cf16(0xb5)](_0x358c11['hook_event_name'],'PostToolUseFailure'))return{};const _0x518aa9=_0x358c11;if(_0x518aa9['tool_name']!==_0xa0e360[_0x30cf16(0xf6)])return{};return await _0xed1c33['trackPhaseError'](_0xa0e360[_0x30cf16(0x121)],_0x518aa9['error'],{'transport':_0x30cf16(0xa5),'toolName':_0x30cf16(0xd5)}),{};};return{'postToolUseHook':_0x8e521b,'postToolUseFailureHook':_0x730f62,'commandCounts':_0x441281};}async function runPlaywrightCliLifecycleCommand(_0x11a414){const _0x262c39=_0x982c,_0x387d6f={'zDDBF':function(_0x30363a,_0x56e890){return _0x30363a??_0x56e890;}},{sessionId:_0x2f65f8,configPath:_0xc07fb2,commandArgs:_0x5bfa78,env:_0x3638bd,telemetry:_0x119bfe,phase:_0x4de3e7,metadata:_0x52c3e3,timeoutMs:_0x5702a8}=_0x11a414;_0x119bfe['trackPhaseStart'](_0x4de3e7,_0x52c3e3);try{const _0x11f024=await runPlaywrightCliCommand({'sessionId':_0x2f65f8,'configPath':_0xc07fb2,'commandArgs':_0x5bfa78,'cwd':process[_0x262c39(0xa4)](),'env':_0x3638bd,'timeoutMs':_0x387d6f['zDDBF'](_0x5702a8,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x119bfe[_0x262c39(0x110)](_0x4de3e7,{..._0x52c3e3,'subcommand':_0x11f024[_0x262c39(0x107)]['subcommand'],'stdoutPreview':truncatePreview(_0x11f024['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x11f024[_0x262c39(0x9c)],0x7d0)});}catch(_0x31573b){await _0x119bfe['trackPhaseError'](_0x4de3e7,_0x31573b,_0x52c3e3);throw _0x31573b;}}export async function finalizeVerifyFeatureCliSession(_0x342928){const _0x124e3e=_0x982c,_0x309e33={'frEOx':_0x124e3e(0x94),'RGjJH':_0x124e3e(0xa8),'jPkfE':_0x124e3e(0x8e),'IOesu':'session-recording.webm','AgYsg':_0x124e3e(0x10b),'zXWBa':'close'},{telemetry:_0x5eea9e,sessionId:_0xbc3da5,configPath:_0x17bfdf,cliArtifactDir:_0x42f5c4,env:_0x4f96cc,transportMetadata:_0x425aa6}=_0x342928,_0xf0bd8a=[{'phase':_0x124e3e(0xe6),'commandArgs':[_0x309e33[_0x124e3e(0xd2)]]},{'phase':_0x309e33[_0x124e3e(0x8b)],'commandArgs':[_0x309e33['jPkfE'],_0x124e3e(0x114)+buildCliArtifactPath(_0x42f5c4,_0x309e33['IOesu'])]},{'phase':_0x309e33[_0x124e3e(0xe9)],'commandArgs':[_0x309e33['zXWBa']]}];for(const _0x544f4b of _0xf0bd8a){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0xbc3da5,'configPath':_0x17bfdf,'commandArgs':[..._0x544f4b['commandArgs']],'env':_0x4f96cc,'telemetry':_0x5eea9e,'phase':_0x544f4b[_0x124e3e(0xed)],'metadata':_0x425aa6});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x26d21d){const _0xfecef2=_0x982c,_0x51dde6={'FHcYo':_0xfecef2(0xbc),'qfWHi':_0xfecef2(0x99)},_0x4b437a=[_0x51dde6[_0xfecef2(0x127)],_0x51dde6[_0xfecef2(0xa9)]];for(const _0x956035 of _0x4b437a){const _0x47c63e=join(_0x26d21d,_0x956035);try{return{'buffer':await readFile(_0x47c63e),'source':_0x47c63e};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x2a4aa1){const _0x3ae6ea=_0x982c,_0x1beced={'brZMY':function(_0xdef8a6,_0x11222d,_0x4a6e94){return _0xdef8a6(_0x11222d,_0x4a6e94);},'AljAQ':function(_0x3f32d0,_0x134654,_0x3b6a3c){return _0x3f32d0(_0x134654,_0x3b6a3c);},'bKuFj':function(_0x1ceb1c,_0x288894){return _0x1ceb1c===_0x288894;}},{cwd:_0x33d189,cliArtifactDir:_0x37d147,startTime:_0x2badec}=_0x2a4aa1,_0x162355=[];await _0x1beced[_0x3ae6ea(0xb2)](mkdir,_0x37d147,{'recursive':!![]});const _0x5e77e7=await readdir(_0x33d189,{'withFileTypes':!![]});for(const _0x2d843e of _0x5e77e7){if(!_0x2d843e[_0x3ae6ea(0x105)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x3ae6ea(0x9b)](_0x2d843e[_0x3ae6ea(0xd9)]))continue;const _0x110915=join(_0x33d189,_0x2d843e[_0x3ae6ea(0xd9)]),_0x2eb58c=await stat(_0x110915);if(_0x2eb58c['mtimeMs']+0x7d0<_0x2badec)continue;const _0x569040=_0x1beced[_0x3ae6ea(0xf9)](buildCliArtifactPath,_0x37d147,_0x2d843e[_0x3ae6ea(0xd9)]);if(_0x1beced[_0x3ae6ea(0xc9)](_0x110915,_0x569040))continue;await _0x1beced['brZMY'](rename,_0x110915,_0x569040),_0x162355['push'](_0x2d843e['name']);}return _0x162355[_0x3ae6ea(0xf1)]();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x4d95f0=_0x3baf;(function(_0x3f2b12,_0x2eab60){const _0x174233=_0x3baf,_0x456f98=_0x3f2b12();while(!![]){try{const _0x579a8f=-parseInt(_0x174233(0x1b7))/0x1+parseInt(_0x174233(0x23f))/0x2+parseInt(_0x174233(0x241))/0x3*(parseInt(_0x174233(0x22d))/0x4)+parseInt(_0x174233(0x19b))/0x5+-parseInt(_0x174233(0x194))/0x6*(parseInt(_0x174233(0x24d))/0x7)+parseInt(_0x174233(0x1a9))/0x8+-parseInt(_0x174233(0x1ce))/0x9*(parseInt(_0x174233(0x1b8))/0xa);if(_0x579a8f===_0x2eab60)break;else _0x456f98['push'](_0x456f98['shift']());}catch(_0x4f37d0){_0x456f98['push'](_0x456f98['shift']());}}}(_0x4c4d,0x2575a));import{execFile}from'child_process';import{mkdir,readdir,readFile,rename,rm,stat,writeFile}from'fs/promises';function _0x4c4d(){const _0x8aff1f=['35835JcekgY','nova_act_command_failure','PreToolUse','xVVMa','newCDPSession','from','01_initial-state.png','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`','capture\x20snapshot\x20`','has','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x27s\x20origin.\x0a-\x20Do\x20not\x20navigate\x20to\x20any\x20different\x20protocol,\x20host,\x20or\x20port.\x0a-\x20If\x20the\x20browser\x20leaves\x20this\x20origin,\x20navigate\x20back\x20once.\x20If\x20you\x20cannot\x20recover,\x20return\x20evaluation\x20\x22blocked\x22.\x0a','Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.','1851080ITzCqO','queueTraceSample','Bash','frame-','rEWyS','VEBsH','padStart','aQvUC','03_final-state.png','tjOBo','capture\x20screenshot','sessions','send','telemetry','pfOLA','stopScreencast','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','stopTraceSampling','stopped','getFrameDir','nova_act_session_close','sessionId','final-state.yaml','LCuIW','trim','export','02_final-state.yml','session\x20create','Library','nova-user-data/*','canonicalFlow','`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a','BBLcb','UuqEm','XgHeE','\x20screenshot\x20--output\x20','data','content','6FvtGbx','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','command','sort','block','MoBLe','cdp_endpoint','1481450BuCFHF','nBbKb','invocation','\x20session\x20create\x20','transportMetadata','KQtbl','shellCommand','verify','-framerate','match','zip','eGUXU','catch','traceSampleTimer','1321680dWsGhm','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','`\x0a-\x20`','captureTraceSample','snapshot','finally','nova_act_final_screenshot','Rlchh','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','evaluate','args','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','session-recording.webm','258918kStimU','1189870hOGmqI','PhikS','traceSampleCount','`\x0a2.\x20Run\x20`','description','--format','SEnlS','stop','cliArtifactDir','isFile','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','--output','IgfTv','screencastStarted','tool_input','frameSession','--output-dir','toLocaleDateString','trackPhaseEnd','`.\x0a7.\x20Optimize\x20for\x20few\x20browser\x20round\x20trips.\x20Each\x20Nova\x20CLI\x20call\x20has\x20high\x20latency.\x0a8.\x20Use\x203-5\x20high-level\x20`execute`\x20commands\x20total.\x20Each\x20`execute`\x20should\x20contain\x202-5\x20concrete\x20browser\x20steps\x20and\x20should\x20drive\x20to\x20the\x20next\x20milestone\x20page.\x0a9.\x20Do\x20not\x20split\x20a\x20simple\x20navigation\x20into\x20separate\x20commands\x20like\x20\x22open\x20menu\x22,\x20then\x20\x22click\x20link\x22,\x20then\x20\x22screenshot\x22.\x20Batch\x20those\x20into\x20one\x20`execute`\x20when\x20the\x20target\x20is\x20clear.\x0a10.\x20Do\x20not\x20use\x20`ask`\x20unless\x20you\x20are\x20genuinely\x20stuck\x20or\x20need\x20to\x20disambiguate\x20visible\x20page\x20content.\x20Prefer\x20reading\x20the\x20output\x20from\x20`execute`,\x20`snapshot`,\x20and\x20`verify`.\x0a11.\x20Use\x20`verify`\x20only\x20at\x20milestone\x20pages\x20that\x20map\x20directly\x20to\x20scenario\x20requirements.\x20Do\x20not\x20verify\x20after\x20every\x20click.\x0a12.\x20Take\x20screenshots\x20for\x20each\x20scenario\x20milestone\x20so\x20every\x20verified\x20step\x20has\x20reviewable\x20image\x20evidence,\x20including\x20the\x20final\x20state.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page.\x0a13.\x20After\x20the\x20required\x20initial\x20snapshot,\x20do\x20not\x20take\x20separate\x20milestone\x20snapshots\x20unless\x20you\x20cannot\x20understand\x20the\x20page\x20from\x20the\x20`execute`,\x20`verify`,\x20and\x20screenshot\x20outputs.\x0a14.\x20Mark\x20the\x20most\x20important\x20proof\x20screenshot\x20with\x20`key_`,\x20for\x20example\x20`','parse','Page.screencastFrame','18uTCdXO','-loglevel','frameWrites','session','ask','trace.zip','contexts','env','TUQQo','state','ylEGL','uaPcn','readSessionMetadataWithRetry','stdout','Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','-pix_fmt','-version','nova_act_artifact_recording_stop','trackPhaseStart','slice','nova-report','HRnQp','pop','JgfCR','01_initial.yml','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','replace','xpBKr','phase','yuv420p','now','tracing','keys','unZpS','-qr','startTraceSampling','trackPhaseError','nova-video-frames','ask\x20page\x20question','connectOverCDP','xYOjU','ffmpeg-','GdBPr','00_initial-state.yml','dVWqb','tjhXu','`\x0a\x0a##\x20Screenshot\x20Guidelines\x0aTake\x20screenshots\x20at\x20scenario\x20milestones\x20so\x20a\x20human\x20can\x20review\x20each\x20completed\x20step\x20and\x20the\x20final\x20state.\x20Use\x20numbered\x20filenames\x20and\x20prefix\x201-2\x20key\x20proof\x20screenshots\x20with\x20`key_`.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page\x20when\x20an\x20existing\x20verifier\x20screenshot\x20or\x20host\x20final\x20screenshot\x20is\x20accessible.\x0a\x0a##\x20Snapshot\x20Guidelines\x0aYou\x20must\x20take\x20the\x20initial\x20snapshot\x20listed\x20above.\x20After\x20that,\x20prefer\x20screenshots\x20plus\x20the\x20page\x20summaries\x20returned\x20by\x20`execute`\x20and\x20`verify`.\x20Only\x20call\x20`snapshot`\x20again\x20if\x20you\x20cannot\x20determine\x20the\x20next\x20action\x20or\x20evaluation\x20from\x20those\x20outputs.\x0a\x0a##\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20initial\x20snapshot\x20and\x20screenshot,\x20check\x20for\x20blocking\x20HTTP\x20errors,\x20framework\x20error\x20pages,\x20blank\x20pages,\x20and\x20authentication\x20failures.\x20If\x20any\x20blocking\x20issue\x20is\x20present,\x20stop\x20and\x20return\x20evaluation\x20\x22blocked\x22\x20with\x20a\x20specific\x20reason.\x0a\x0a##\x20Failed\x20Assertions\x0aIf\x20`verify`\x20returns\x20`ASSERTION_FAILED`,\x20use\x20its\x20`actual`\x20and\x20`evidence`\x20fields\x20as\x20proof\x20for\x20the\x20final\x20evaluation.\x20Continue\x20only\x20to\x20finish\x20other\x20already-named\x20scenario\x20milestones.\x20Do\x20not\x20retry,\x20ask\x20about,\x20or\x20search\x20around\x20the\x20failed\x20condition.\x0a\x0a##\x20Final\x20Page\x20Stop\x0aWhen\x20the\x20scenario\x20names\x20a\x20final\x20page\x20or\x20final\x20navigation\x20target,\x20that\x20page\x20is\x20the\x20last\x20browser\x20milestone.\x20Once\x20it\x20is\x20loaded\x20and\x20screenshotted,\x20make\x20the\x20final\x20evaluation\x20from\x20the\x20collected\x20evidence.\x20Do\x20not\x20navigate,\x20search,\x20ask,\x20or\x20verify\x20beyond\x20that\x20final\x20page\x20unless\x20the\x20scenario\x20explicitly\x20names\x20another\x20page.\x0a\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.','subcommand','short','close','uPiSf','MGWCU','yGTtb','-c:v','\x20>\x20','ZbtqW','create\x20Nova\x20browser\x20session','ms-playwright','\x20snapshot\x20--output\x20','cwd','rUBPQ','zyaOn','.jpg','traceSampleInFlight','hsquK','maflH','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','klucv','tracingStarted','nova_act_command','ffmpeg.exe','QuUCL','eViBZ','startAttempted','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','nova-artifacts.zip','ZDVJH','frame-%06d.jpg','hOeyN','then','nova_act_final_snapshot','tool_name','domRef','start','nova_act_session_report','The\x20command\x20prefix\x20already\x20injects\x20session,\x20auth,\x20region,\x20workflow,\x20user-data,\x20headless,\x20and\x20JSON\x20options.\x0aDo\x20not\x20run\x20raw\x20`act\x20browser`.\x20Do\x20not\x20add\x20`--auth-mode`,\x20`--aws-profile`,\x20`--region`,\x20`--workflow-name`,\x20`--session-id`,\x20`--user-data-dir`,\x20`--headless`,\x20or\x20`--headed`\x20yourself.','LXabB','scale=trunc(iw/2)*2:trunc(ih/2)*2','push','IFzTP','hook_event_name','context','commandArgs','nova_act_artifact_recording','authorName','92NeGTtv','params','You\x20are\x20testing\x20Nova\x20Act\x20browser\x20automation.\x20Your\x20task\x20is\x20simple.\x0a\x0aUse\x20Bash\x20and\x20Nova\x20Act\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','aCHGF','goto','[nova-act-cli]\x20','frameCount','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','screenshot','lnsGx','numeric','QIJsO','encodeScreencastVideo','locator','pages','--report','test','createdAt','357062AcHVQd','key_final-state.png'];_0x4c4d=function(){return _0x8aff1f;};return _0x4c4d();}import{homedir}from'os';function _0x3baf(_0x206a3d,_0x4d51a6){_0x206a3d=_0x206a3d-0x187;const _0x4c4df9=_0x4c4d();let _0x3bafac=_0x4c4df9[_0x206a3d];return _0x3bafac;}import{basename,join}from'path';import{promisify}from'util';import{chromium}from'playwright';import{buildNovaActCliInvocation,buildNovaActCliSharedOptionsSuffix,extractNovaActLogDir,parseNovaActCliCommand,previewNovaActCliCommand,runNovaActCliCommand}from'./utils/novaActCli.js';import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';const NOVA_ACT_CLI_COMMAND_TIMEOUT_MS=0x1d4c0,NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS=0x3a98,NOVA_ARTIFACT_METADATA_WAIT_MS=0x1388,NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS=0x1388,VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|final-state\.ya?ml|nova-session-export\.json)$/i,NOVA_ACT_ALLOWED_AGENT_COMMANDS=new Set([_0x4d95f0(0x189),'execute','verify',_0x4d95f0(0x1d2),_0x4d95f0(0x231),'wait-for','snapshot',_0x4d95f0(0x235)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x42ef02,_0x4dd987){return join(_0x42ef02,_0x4dd987);}export class NovaActArtifactRecorder{['params'];['browser']=null;[_0x4d95f0(0x229)]=null;['frameSession']=null;[_0x4d95f0(0x1d0)]=[];[_0x4d95f0(0x233)]=0x0;['traceSampleCount']=0x0;[_0x4d95f0(0x1a8)]=null;[_0x4d95f0(0x20d)]=null;[_0x4d95f0(0x212)]=![];['screencastStarted']=![];['startAttempted']=![];['stopped']=![];constructor(_0x4744dd){this['params']=_0x4744dd;}async[_0x4d95f0(0x221)](){const _0x41fc97=_0x4d95f0,_0x4301c3={'RWLYW':'nova_act_artifact_recording'};if(this[_0x41fc97(0x217)])return;this['startAttempted']=!![];const _0x5906c6=await this[_0x41fc97(0x1da)](),_0x3a605b=_0x5906c6['cdp_endpoint'];if(!_0x3a605b)throw new Error(_0x41fc97(0x1c2)+this['params']['novaOptions']['sessionId']);await mkdir(this[_0x41fc97(0x22e)][_0x41fc97(0x1c0)],{'recursive':!![]}),this['browser']=await chromium[_0x41fc97(0x1f5)](_0x3a605b,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this['context']=this['browser'][_0x41fc97(0x1d4)]()[0x0]??null;if(!this['context'])throw new Error(_0x41fc97(0x1b1));await this['context'][_0x41fc97(0x1ed)]['start']({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this['startTraceSampling'](),await this['startScreencast'](),this['params'][_0x41fc97(0x25a)][_0x41fc97(0x1e0)](_0x4301c3['RWLYW'],{...this['params'][_0x41fc97(0x19f)],'cdpEndpoint':_0x3a605b,'browserPid':_0x5906c6['browser_pid'],'sessionState':_0x5906c6[_0x41fc97(0x1d7)]}),this['params'][_0x41fc97(0x25a)]['trackPhaseEnd'](_0x41fc97(0x22b),{...this['params'][_0x41fc97(0x19f)],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x41fc97(0x1c5)]});}async['stop'](){const _0x5bcc26=_0x4d95f0,_0x3aafb7={'JgfCR':_0x5bcc26(0x1df),'klucv':_0x5bcc26(0x1d3)};if(this[_0x5bcc26(0x260)])return;this[_0x5bcc26(0x260)]=!![];const _0x26477a={...this['params']['transportMetadata'],'frameCount':this[_0x5bcc26(0x233)],'traceSampleCount':this[_0x5bcc26(0x1ba)],'tracingStarted':this[_0x5bcc26(0x212)],'screencastStarted':this[_0x5bcc26(0x1c5)]};this[_0x5bcc26(0x22e)]['telemetry']['trackPhaseStart'](_0x3aafb7[_0x5bcc26(0x1e5)],_0x26477a);try{await this[_0x5bcc26(0x25f)](),await this[_0x5bcc26(0x1ac)](),await this[_0x5bcc26(0x25c)](),await Promise['allSettled'](this[_0x5bcc26(0x1d0)]);this['context']&&this[_0x5bcc26(0x212)]&&await this[_0x5bcc26(0x229)][_0x5bcc26(0x1ed)]['stop']({'path':buildCliArtifactPath(this['params']['cliArtifactDir'],_0x3aafb7[_0x5bcc26(0x211)])});const _0x295f7a=await this[_0x5bcc26(0x239)]();this[_0x5bcc26(0x22e)][_0x5bcc26(0x25a)]['trackPhaseEnd'](_0x3aafb7[_0x5bcc26(0x1e5)],{..._0x26477a,'videoPath':_0x295f7a});}catch(_0x3b91e2){await this['params'][_0x5bcc26(0x25a)]['trackPhaseError'](_0x5bcc26(0x1df),_0x3b91e2,_0x26477a);}finally{await this['browser']?.['close']()['catch'](()=>undefined),this['browser']=null,this['context']=null,this['frameSession']=null;}}async['readSessionMetadataWithRetry'](){const _0xcbbfd8=_0x4d95f0,_0x3ca8ec={'SEnlS':'.act_cli','dRybf':function(_0x2ec04e,_0x15870a){return _0x2ec04e-_0x15870a;},'srSMn':function(_0x28e903,_0xe23b32){return _0x28e903 instanceof _0xe23b32;}},_0xa91b0a=join(homedir(),_0x3ca8ec[_0xcbbfd8(0x1be)],'browser',_0xcbbfd8(0x258),this['params']['novaOptions'][_0xcbbfd8(0x263)]+'.json'),_0x6280c7=Date[_0xcbbfd8(0x1ec)]();let _0x5709e2;do{try{const _0x1d2161=JSON[_0xcbbfd8(0x1cc)](await readFile(_0xa91b0a,'utf-8'));if(_0x1d2161[_0xcbbfd8(0x19a)])return _0x1d2161;_0x5709e2=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0xa91b0a);}catch(_0xffd5ac){_0x5709e2=_0xffd5ac;}await delay(0x64);}while(_0x3ca8ec['dRybf'](Date['now'](),_0x6280c7)<NOVA_ARTIFACT_METADATA_WAIT_MS);if(_0x3ca8ec['srSMn'](_0x5709e2,Error))throw _0x5709e2;throw new Error(_0xcbbfd8(0x1aa)+_0xa91b0a);}async['startScreencast'](){const _0x3a5070=_0x4d95f0,_0x392190={'VMApo':function(_0x4d6bab,_0x87a124,_0x93efeb){return _0x4d6bab(_0x87a124,_0x93efeb);},'KLJxe':function(_0x1767c4,_0x4736cd){return _0x1767c4(_0x4736cd);}};if(!this[_0x3a5070(0x229)])return;const _0x252b7f=this['context']['pages']()[0x0];if(!_0x252b7f)return;const _0x6b6050=this[_0x3a5070(0x261)]();await _0x392190['VMApo'](mkdir,_0x6b6050,{'recursive':!![]});const _0x1b1452=await this[_0x3a5070(0x229)][_0x3a5070(0x245)](_0x252b7f);this['frameSession']=_0x1b1452,_0x1b1452['on'](_0x3a5070(0x1cd),_0x21426a=>{const _0xeeac8a=_0x3a5070,_0x28c676=++this['frameCount'],_0x3a06ca=_0x392190['VMApo'](join,_0x6b6050,_0xeeac8a(0x250)+_0x392190['KLJxe'](String,_0x28c676)[_0xeeac8a(0x253)](0x6,'0')+_0xeeac8a(0x20c)),_0x2c1a45=_0x392190['VMApo'](writeFile,_0x3a06ca,Buffer[_0xeeac8a(0x246)](_0x21426a[_0xeeac8a(0x192)],'base64'))['catch'](()=>undefined)['finally'](()=>_0x1b1452[_0xeeac8a(0x259)]('Page.screencastFrameAck',{'sessionId':_0x21426a['sessionId']}))[_0xeeac8a(0x21d)](()=>undefined)['catch'](()=>undefined);this[_0xeeac8a(0x1d0)]['push'](_0x2c1a45);}),await _0x1b1452['send']('Page.startScreencast',{'format':'jpeg','quality':0x4b,'everyNthFrame':0x6}),this['screencastStarted']=!![];}async[_0x4d95f0(0x25c)](){const _0x3b0ad1=_0x4d95f0,_0x398268={'xYOjU':'Page.stopScreencast'};if(!this['frameSession']||!this[_0x3b0ad1(0x1c5)])return;await this[_0x3b0ad1(0x1c7)][_0x3b0ad1(0x259)](_0x398268[_0x3b0ad1(0x1f6)])['catch'](()=>undefined);}[_0x4d95f0(0x1f1)](){const _0x29a60d=_0x4d95f0,_0x3fc4c8={'hsquK':function(_0x156b80,_0x32e11e,_0x2a2d1a){return _0x156b80(_0x32e11e,_0x2a2d1a);}};this['queueTraceSample'](),this['traceSampleTimer']=_0x3fc4c8[_0x29a60d(0x20e)](setInterval,()=>this[_0x29a60d(0x24e)](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}['queueTraceSample'](){const _0x59840f=_0x4d95f0;if(this['traceSampleInFlight'])return;this['traceSampleInFlight']=this[_0x59840f(0x1ac)]()[_0x59840f(0x1ae)](()=>{const _0x53a2c0=_0x59840f;this[_0x53a2c0(0x20d)]=null;});}async[_0x4d95f0(0x25f)](){const _0x5a464e=_0x4d95f0,_0x57676c={'cNrVY':function(_0x1325fc,_0x425623){return _0x1325fc(_0x425623);}};this['traceSampleTimer']&&(_0x57676c['cNrVY'](clearInterval,this['traceSampleTimer']),this['traceSampleTimer']=null),await this[_0x5a464e(0x20d)]?.[_0x5a464e(0x1a7)](()=>undefined);}async[_0x4d95f0(0x1ac)](){const _0x2e13ab=_0x4d95f0,_0x483180={'RlKzw':'body'},_0x1cf720=this[_0x2e13ab(0x229)]?.[_0x2e13ab(0x23b)]()[0x0];if(!_0x1cf720)return;try{await _0x1cf720[_0x2e13ab(0x23a)](_0x483180['RlKzw'])[_0x2e13ab(0x1b3)](_0x405332=>_0x405332['tagName'],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async[_0x4d95f0(0x239)](){const _0x3b7989=_0x4d95f0,_0x8ecc4a={'LCuIW':function(_0x1c5ecd,_0x23e701){return _0x1c5ecd<_0x23e701;},'pfOLA':function(_0x9d82bc,_0x6a89f7,_0x3bc69c){return _0x9d82bc(_0x6a89f7,_0x3bc69c);},'pxMYy':_0x3b7989(0x1b6),'Nzwzw':'-hide_banner','UeJjK':_0x3b7989(0x1a3),'HRnQp':'-vf','XgHeE':_0x3b7989(0x225)};if(_0x8ecc4a[_0x3b7989(0x265)](this['frameCount'],0x2))return null;const _0x228737=await resolveFfmpegPath();if(!_0x228737)return null;const _0x456a51=join(this[_0x3b7989(0x22e)]['cliArtifactDir'],'videos');await _0x8ecc4a['pfOLA'](mkdir,_0x456a51,{'recursive':!![]});const _0x2c8da6=join(_0x456a51,_0x8ecc4a['pxMYy']);return await _0x8ecc4a[_0x3b7989(0x25b)](execFileAsync,_0x228737,['-y',_0x8ecc4a['Nzwzw'],_0x3b7989(0x1cf),'error',_0x8ecc4a['UeJjK'],'10','-i',join(this[_0x3b7989(0x261)](),_0x3b7989(0x21b)),_0x8ecc4a[_0x3b7989(0x1e3)],_0x8ecc4a[_0x3b7989(0x190)],_0x3b7989(0x203),'libvpx-vp9',_0x3b7989(0x1dd),_0x3b7989(0x1eb),_0x2c8da6]),_0x2c8da6;}[_0x4d95f0(0x261)](){const _0x195250=_0x4d95f0,_0x3cd1b9={'UuqEm':function(_0xb18291,_0xed7397,_0x4d0f57){return _0xb18291(_0xed7397,_0x4d0f57);}};return _0x3cd1b9[_0x195250(0x18f)](join,this['params']['cliArtifactDir'],_0x195250(0x1f3));}}async function delay(_0x5a3dd8){await new Promise(_0x4b858d=>setTimeout(_0x4b858d,_0x5a3dd8));}async function resolveFfmpegPath(){const _0xb9625d=_0x4d95f0,_0x368508={'QuUCL':'ffmpeg','LkAJb':function(_0x3b643c,_0x47c8a9,_0x5b59a1,_0x20cf46,_0xd1cb80){return _0x3b643c(_0x47c8a9,_0x5b59a1,_0x20cf46,_0xd1cb80);},'MGWCU':function(_0x321923){return _0x321923();},'aCHGF':'Caches','gvMgG':function(_0x18713b){return _0x18713b();},'jpJiu':'.cache','KQtbl':_0xb9625d(0x207),'KyErH':function(_0x150392,_0x17bba7){return _0x150392(_0x17bba7);}};if(await canRunFfmpeg('ffmpeg'))return _0x368508[_0xb9625d(0x215)];const _0x4a4e88=[_0x368508['LkAJb'](join,_0x368508[_0xb9625d(0x201)](homedir),_0xb9625d(0x18a),_0x368508[_0xb9625d(0x230)],'ms-playwright'),join(_0x368508['gvMgG'](homedir),_0x368508['jpJiu'],_0x368508[_0xb9625d(0x1a0)])];for(const _0x4bcc8e of _0x4a4e88){try{const _0x49603f=await _0x368508['KyErH'](readdir,_0x4bcc8e),_0x18fa1a=_0x49603f['filter'](_0x41b034=>_0x41b034['startsWith'](_0xb9625d(0x1f7)))['sort']()['reverse']()['flatMap'](_0x1fc1b5=>[join(_0x4bcc8e,_0x1fc1b5,'ffmpeg-mac'),join(_0x4bcc8e,_0x1fc1b5,'ffmpeg-linux'),join(_0x4bcc8e,_0x1fc1b5,_0xb9625d(0x214))]);for(const _0x4cdacc of _0x18fa1a){if(await canRunFfmpeg(_0x4cdacc))return _0x4cdacc;}}catch{}}return null;}async function canRunFfmpeg(_0x1fb3d5){const _0x38c79f=_0x4d95f0;try{return await execFileAsync(_0x1fb3d5,[_0x38c79f(0x1de)]),!![];}catch{return![];}}function toStepDisplayName(_0x475915){const _0x2f8349=_0x4d95f0,_0x5cae03={'lnsGx':function(_0x50aee4,_0x2ee267){return _0x50aee4(_0x2ee267);}},_0x791cde=_0x5cae03[_0x2f8349(0x236)](basename,_0x475915)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x2f8349(0x1e8)](/^key_/i,'')['replace'](/^\d+_/,'')[_0x2f8349(0x1e8)](/-/g,'\x20');return{'name':_0x791cde,'isKeyStep':/^key_/i[_0x2f8349(0x23d)](basename(_0x475915))};}function extractShellValue(_0xc41e08){if(!_0xc41e08)return null;return _0xc41e08[0x1]??_0xc41e08[0x2]??_0xc41e08[0x3]??null;}function extractOutputOption(_0x5b35e7){const _0x514503=_0x4d95f0;return extractShellValue(_0x5b35e7[_0x514503(0x1a4)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x1e5ec1,_0xdcc49a){const _0x33e7c4=_0x4d95f0,_0x12697d={'zJSPM':_0x33e7c4(0x206),'XlYTd':'execute','EnQrx':'execute\x20Nova\x20browser\x20action','xpBKr':_0x33e7c4(0x1a2),'tjhXu':_0x33e7c4(0x1f4),'ptzIx':'navigate\x20browser','DgXoP':'wait\x20for\x20page\x20condition','oQOMf':function(_0xff0a00,_0x11a8cd){return _0xff0a00(_0x11a8cd);},'hOeyN':_0x33e7c4(0x257),'YhQhI':'session\x20export','yGTtb':'export\x20Nova\x20session'};switch(_0xdcc49a){case _0x33e7c4(0x189):return _0x12697d['zJSPM'];case _0x12697d['XlYTd']:return _0x12697d['EnQrx'];case _0x12697d[_0x33e7c4(0x1e9)]:return'verify\x20page\x20condition';case'ask':return _0x12697d[_0x33e7c4(0x1fb)];case _0x33e7c4(0x231):return _0x12697d['ptzIx'];case'wait-for':return _0x12697d['DgXoP'];case'snapshot':{const _0x320d15=extractOutputOption(_0x1e5ec1);if(!_0x320d15)return'capture\x20snapshot';const {name:_0x215d44}=toStepDisplayName(_0x320d15);return _0x33e7c4(0x249)+_0x215d44+'`';}case _0x33e7c4(0x235):{const _0x10d25b=_0x12697d['oQOMf'](extractOutputOption,_0x1e5ec1);if(!_0x10d25b)return _0x12697d[_0x33e7c4(0x21c)];const {name:_0x36751a,isKeyStep:_0x1e628c}=toStepDisplayName(_0x10d25b);return _0x1e628c?'capture\x20key\x20step\x20`'+_0x36751a+'`':'capture\x20step\x20`'+_0x36751a+'`';}case _0x12697d['YhQhI']:return _0x12697d[_0x33e7c4(0x202)];default:return _0xdcc49a;}}function getNovaActCliCommandBlockReason(_0x3bbc39){const _0x243ce2=_0x4d95f0,_0x25bd2a={'vQEQL':function(_0x4f2820,_0x2f8078){return _0x4f2820===_0x2f8078;},'ZDVJH':_0x243ce2(0x1a2),'MoBLe':_0x243ce2(0x24c)},_0x524192=parseNovaActCliCommand(_0x3bbc39);if(!_0x524192)return _0x243ce2(0x1dc);if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x243ce2(0x24a)](_0x524192))return'Nova\x20command\x20`'+_0x524192+'`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.';if(_0x25bd2a['vQEQL'](_0x524192,_0x25bd2a[_0x243ce2(0x21a)])&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x3bbc39))return'Evaluate\x20visited-page\x20aggregate\x20requirements\x20from\x20the\x20collected\x20URLs,\x20titles,\x20headings,\x20verify\x20results,\x20and\x20screenshots.\x20Do\x20not\x20run\x20another\x20browser\x20command\x20to\x20re-check\x20pages\x20already\x20visited.';if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x3bbc39))return _0x25bd2a[_0x243ce2(0x199)];return null;}function buildFeedbackSection(_0x294f2c){const _0x31f34d=_0x4d95f0,_0x114545={'PQFjG':'en-US','TUQQo':_0x31f34d(0x237),'GdBPr':'Reviewer','Ypssv':_0x31f34d(0x204),'DMoni':'element'};if(!_0x294f2c||_0x294f2c['unaddressedComments']['length']===0x0)return'';const _0x5792ff=_0x294f2c['unaddressedComments']['map'](_0x2713fd=>{const _0x5ea04a=_0x31f34d,_0x4dfcf7=new Date(_0x2713fd[_0x5ea04a(0x23e)])[_0x5ea04a(0x1c9)](_0x114545['PQFjG'],{'month':_0x5ea04a(0x1fe),'day':_0x114545[_0x5ea04a(0x1d6)]}),_0x3ebde5=_0x2713fd[_0x5ea04a(0x22c)]||_0x2713fd['authorEmail']||_0x114545[_0x5ea04a(0x1f8)],_0xe5df6b=_0x2713fd[_0x5ea04a(0x220)]?'\x20(on\x20element:\x20<'+(_0x2713fd['domRef']['selector']['split'](_0x114545['Ypssv'])[_0x5ea04a(0x1e4)]()?.['split'](':')[0x0]||_0x114545['DMoni'])+'>\x20\x22'+(_0x2713fd[_0x5ea04a(0x220)]['textContent']||'')[_0x5ea04a(0x1e1)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x2713fd['id']+']\x20**'+_0x3ebde5+'**\x20('+_0x4dfcf7+'):\x20\x22'+_0x2713fd[_0x5ea04a(0x193)]+'\x22'+_0xe5df6b;})['join']('\x0a');return'\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20in\x20addressedCommentIds.\x0a\x0a'+_0x5792ff;}function buildNovaSharedOptionsInstruction(_0xa9c53b){const _0x1c67da=_0x4d95f0;if(!_0xa9c53b[_0x1c67da(0x266)]())return _0x1c67da(0x223);return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0xa9c53b;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x458af9){const _0x3a6496=_0x4d95f0,_0x1413d7={'uGLkA':function(_0x3b2e6f,_0x15661c,_0x1f0253){return _0x3b2e6f(_0x15661c,_0x1f0253);},'PhcKG':_0x3a6496(0x1f9),'Rlchh':function(_0x3ee700,_0x5163d7,_0x52d195){return _0x3ee700(_0x5163d7,_0x52d195);},'QIJsO':function(_0x299317,_0x4818a2){return _0x299317(_0x4818a2);}},{novaCommandPrefix:_0x4c535d,novaSharedOptionsSuffix:_0x3f1987,cliArtifactDir:_0x511d66,url:_0x4756e4}=_0x458af9,_0x2c7240=_0x1413d7['uGLkA'](buildCliArtifactPath,_0x511d66,_0x1413d7['PhcKG']),_0x46b61e=_0x1413d7[_0x3a6496(0x1b0)](buildCliArtifactPath,_0x511d66,_0x3a6496(0x247)),_0x352ac5=_0x1413d7[_0x3a6496(0x1b0)](buildCliArtifactPath,_0x511d66,_0x3a6496(0x188)),_0x399dcc=buildCliArtifactPath(_0x511d66,_0x3a6496(0x255));return _0x3a6496(0x22f)+_0x4c535d+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x3f1987)+'\x0a\x0aThe\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20on\x20PATH.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20or\x20run\x20setup.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20the\x20session\x20create\x20command\x20below.\x0a\x0a1.\x20Run\x20`'+_0x4c535d+_0x3a6496(0x19e)+_0x1413d7['QIJsO'](quoteShellArg,_0x4756e4)+'\x20'+_0x3f1987+_0x3a6496(0x1bb)+_0x4c535d+_0x3a6496(0x208)+_0x1413d7[_0x3a6496(0x238)](quoteShellArg,_0x2c7240)+'\x20'+_0x3f1987+'`\x0a3.\x20Run\x20`'+_0x4c535d+'\x20screenshot\x20--output\x20'+_0x1413d7['QIJsO'](quoteShellArg,_0x46b61e)+'\x20'+_0x3f1987+'`\x0a4.\x20Run\x20one\x20batched\x20`'+_0x4c535d+_0x3a6496(0x195)+_0x4c535d+_0x3a6496(0x208)+quoteShellArg(_0x352ac5)+'\x20'+_0x3f1987+'`\x0a6.\x20Run\x20`'+_0x4c535d+_0x3a6496(0x191)+_0x1413d7['QIJsO'](quoteShellArg,_0x399dcc)+'\x20'+_0x3f1987+_0x3a6496(0x218)+_0x511d66+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x3eddc2){const _0x279a1f=_0x4d95f0,_0x589ca4={'bCJUi':'key_03_success-state.png','CiHFv':_0x279a1f(0x25e),'tjOBo':function(_0x1036be,_0x5ae69a){return _0x1036be(_0x5ae69a);}},{checklistItem:_0x3c8c02,itemFeedback:_0x159552,taskDescription:_0xcd4736,novaCommandPrefix:_0x463afb,novaSharedOptionsSuffix:_0x5ec962,cliArtifactDir:_0x50cf2c,url:_0x93617c,loginInstructions:_0x22397a}=_0x3eddc2,_0x2636c0=_0x3c8c02['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x3c8c02['notes']:'',_0x4b0215=buildFeedbackSection(_0x159552),_0xf643fb=_0x159552?.['canonicalFlow']?_0x279a1f(0x234)+_0x159552[_0x279a1f(0x18c)]:'',_0x2cc7d3=_0x22397a?_0x279a1f(0x1e7)+_0x22397a+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x1ed176=buildCliArtifactPath(_0x50cf2c,_0x279a1f(0x1e6)),_0x33e807=buildCliArtifactPath(_0x50cf2c,'01_initial-state.png'),_0x264d34=buildCliArtifactPath(_0x50cf2c,_0x589ca4['bCJUi']);return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0x3c8c02[_0x279a1f(0x1bc)]+_0x2636c0+_0x4b0215+_0xf643fb+_0x279a1f(0x210)+_0xcd4736+_0x279a1f(0x1b5)+_0x93617c+_0x279a1f(0x24b)+_0x2cc7d3+'\x0a\x0a##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Nova\x20Act\x20CLI\x20only.\x20Do\x20not\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20The\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20through\x20the\x20browser\x20command\x20prefix\x20below.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20check\x20AWS/auth\x20status,\x20read\x20env\x20files,\x20run\x20setup,\x20or\x20call\x20raw\x20`act\x20browser`.\x0a3.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20`'+_0x463afb+'\x20session\x20create\x20'+quoteShellArg(_0x93617c)+'\x20'+_0x5ec962+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x50cf2c+_0x279a1f(0x1b2)+_0x463afb+_0x279a1f(0x208)+quoteShellArg(_0x1ed176)+'\x20'+_0x5ec962+_0x279a1f(0x248)+_0x463afb+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x33e807)+'\x20'+_0x5ec962+_0x279a1f(0x1cb)+_0x264d34+'`.\x0a15.\x20As\x20soon\x20as\x20all\x20scenario\x20requirements\x20are\x20satisfied,\x20return\x20structured\x20output\x20immediately.\x20Do\x20not\x20keep\x20exploring,\x20asking,\x20or\x20taking\x20extra\x20screenshots.\x0a16.\x20Treat\x20a\x20Nova\x20`verify`\x20result\x20with\x20`ASSERTION_FAILED`\x20as\x20useful\x20evidence,\x20not\x20as\x20a\x20tool\x20crash.\x20Do\x20not\x20retry\x20the\x20same\x20assertion\x20or\x20search\x20for\x20alternatives\x20unless\x20the\x20scenario\x20explicitly\x20asks\x20you\x20to\x20find\x20any\x20matching\x20page.\x0a17.\x20Stay\x20within\x20the\x20pages\x20and\x20flow\x20named\x20by\x20the\x20scenario.\x20If\x20a\x20required\x20condition\x20is\x20absent\x20after\x20checking\x20the\x20relevant\x20named\x20page\x20once,\x20stop\x20and\x20return\x20\x22partial\x22\x20or\x20\x22failed\x22\x20with\x20the\x20missing\x20requirement.\x20Do\x20not\x20expand\x20into\x20unrelated\x20pages\x20or\x20broad\x20site\x20searches.\x0a18.\x20After\x20you\x20reach\x20and\x20screenshot\x20the\x20final\x20named\x20scenario\x20page,\x20do\x20not\x20execute\x20more\x20browser\x20commands.\x20Evaluate\x20any\x20\x22at\x20least\x20one\x20visited\x20page\x22\x20requirement\x20from\x20the\x20pages\x20already\x20visited\x20and\x20the\x20evidence\x20already\x20collected.\x0a19.\x20Do\x20not\x20run\x20`session\x20close`,\x20`session\x20list`,\x20`session\x20export`,\x20`script`,\x20`doctor`,\x20`--help`,\x20`aws`,\x20`find`,\x20`grep`,\x20`env`,\x20`printenv`,\x20package\x20managers,\x20or\x20setup\x20commands.\x20The\x20host\x20owns\x20setup,\x20auth,\x20session\x20cleanup,\x20and\x20artifact\x20export.\x0a20.\x20The\x20host\x20also\x20captures\x20final\x20screenshots,\x20snapshots,\x20and\x20exports\x20after\x20you\x20finish,\x20but\x20every\x20scenario\x20milestone\x20still\x20needs\x20an\x20accessible\x20screenshot.\x20If\x20the\x20last\x20milestone\x20is\x20the\x20final\x20browser\x20state\x20and\x20you\x20have\x20already\x20captured\x20it,\x20you\x20do\x20not\x20need\x20a\x20duplicate\x20final\x20screenshot.\x0a21.\x20Do\x20not\x20close\x20the\x20Nova\x20session.\x20The\x20host\x20exports\x20artifacts\x20after\x20you\x20finish.\x0a22.\x20The\x20structured\x20output\x20is\x20your\x20final\x20response.\x20After\x20returning\x20it,\x20do\x20not\x20write\x20a\x20separate\x20markdown\x20summary\x20or\x20repeat\x20the\x20findings.\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Nova\x20Act\x20CLI\x20commands\x20with\x20this\x20prefix:\x0a`'+_0x463afb+_0x279a1f(0x18d)+(_0x5ec962[_0x279a1f(0x266)]()?'`'+_0x5ec962+'`':_0x589ca4['CiHFv'])+'\x0a\x0a'+_0x589ca4['tjOBo'](buildNovaSharedOptionsInstruction,_0x5ec962)+'\x0a\x0aExamples:\x0a-\x20`'+_0x463afb+_0x279a1f(0x25d)+_0x5ec962+_0x279a1f(0x1ab)+_0x463afb+'\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20'+_0x5ec962+'`\x0a-\x20`'+_0x463afb+'\x20snapshot\x20--output\x20'+_0x589ca4[_0x279a1f(0x256)](quoteShellArg,_0x1ed176)+'\x20'+_0x5ec962+'`\x0a-\x20`'+_0x463afb+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x264d34)+'\x20'+_0x5ec962+_0x279a1f(0x1fc);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x423e31){const _0x39e0a5=_0x4d95f0,_0x3e2cdd=[..._0x423e31[_0x39e0a5(0x1ee)]()][_0x39e0a5(0x197)]();let _0x4ac702=0x0;for(const _0x48c194 of _0x423e31['values']()){_0x4ac702+=_0x48c194;}return{'cliCommandCount':_0x4ac702,'cliCommandsSeen':_0x3e2cdd,'noCliCommandsCalled':_0x4ac702===0x0};}export function createVerifyFeatureNovaCliHooks(_0x1cdf63,_0x4e6454){const _0x54e314=_0x4d95f0,_0x573d5e={'rEWyS':function(_0xfe6a6c,_0x1a9209){return _0xfe6a6c!==_0x1a9209;},'PhikS':'Bash','yKUDM':function(_0x5549e1,_0x32dc54){return _0x5549e1(_0x32dc54);},'zyaOn':function(_0x4ba3da,_0x17a0b6){return _0x4ba3da(_0x17a0b6);},'IFzTP':_0x54e314(0x198),'rUBPQ':function(_0x4f26fc,_0xa388c9){return _0x4f26fc!==_0xa388c9;},'eViBZ':function(_0x1a9258,_0x3e6ef4){return _0x1a9258+_0x3e6ef4;},'BBLcb':_0x54e314(0x213),'yUkiA':function(_0x3b8f95,_0x3e0efc,_0x597621){return _0x3b8f95(_0x3e0efc,_0x597621);},'fRalG':_0x54e314(0x189),'xVVMa':'nova_act_artifact_recording','eGUXU':function(_0x4eb05a,_0x20c37e){return _0x4eb05a!==_0x20c37e;},'MfVNM':'PostToolUseFailure','woFlx':_0x54e314(0x242)},_0x5e8fd6=new Map(),_0x2d56d9=async _0x511eda=>{const _0xcc3ef6=_0x54e314;if(_0x573d5e[_0xcc3ef6(0x251)](_0x511eda['hook_event_name'],_0xcc3ef6(0x243)))return{};const _0x5ed740=_0x511eda;if(_0x5ed740['tool_name']!==_0x573d5e[_0xcc3ef6(0x1b9)])return{};const _0x2eb1c4=_0x5ed740[_0xcc3ef6(0x1c6)],_0x109550=_0x573d5e['yKUDM'](extractBashCommand,_0x2eb1c4);if(!_0x109550)return{};const _0x1fd488=_0x573d5e[_0xcc3ef6(0x20b)](getNovaActCliCommandBlockReason,_0x109550);if(!_0x1fd488)return{};return{'decision':_0x573d5e[_0xcc3ef6(0x227)],'reason':_0x1fd488};},_0x3a3d26=async _0x4d8e04=>{const _0x23c5d8=_0x54e314;if(_0x573d5e[_0x23c5d8(0x20a)](_0x4d8e04[_0x23c5d8(0x228)],'PostToolUse'))return{};const _0xcd85d3=_0x4d8e04;if(_0xcd85d3['tool_name']!==_0x23c5d8(0x24f))return{};const _0x2ea447=_0xcd85d3[_0x23c5d8(0x1c6)],_0x3cc689=extractBashCommand(_0x2ea447);if(!_0x3cc689)return{};const _0x28d32b=_0x573d5e['zyaOn'](parseNovaActCliCommand,_0x3cc689);if(!_0x28d32b)return{};_0x5e8fd6['set'](_0x28d32b,_0x573d5e[_0x23c5d8(0x216)](_0x5e8fd6['get'](_0x28d32b)||0x0,0x1)),_0x1cdf63[_0x23c5d8(0x1e0)](_0x573d5e[_0x23c5d8(0x18e)],{'subcommand':_0x28d32b}),_0x1cdf63['trackPhaseEnd'](_0x573d5e[_0x23c5d8(0x18e)],{'subcommand':_0x28d32b,'commandPreview':previewNovaActCliCommand(_0x3cc689)}),console['log'](_0x23c5d8(0x232)+_0x573d5e['yUkiA'](formatNovaActCliLog,_0x3cc689,_0x28d32b));if(_0x28d32b===_0x573d5e['fRalG']&&_0x4e6454)try{await _0x4e6454[_0x23c5d8(0x221)]();}catch(_0x598aba){await _0x1cdf63['trackPhaseError'](_0x573d5e[_0x23c5d8(0x244)],_0x598aba,{'transport':'nova-act-cli'});}return{};},_0x460cbc=async _0x123cc3=>{const _0x5e93a2=_0x54e314;if(_0x573d5e[_0x5e93a2(0x1a6)](_0x123cc3[_0x5e93a2(0x228)],_0x573d5e['MfVNM']))return{};const _0x1e56ce=_0x123cc3;if(_0x1e56ce[_0x5e93a2(0x21f)]!==_0x573d5e[_0x5e93a2(0x1b9)])return{};return await _0x1cdf63['trackPhaseError'](_0x573d5e['woFlx'],_0x1e56ce['error'],{'transport':'nova-act-cli','toolName':_0x573d5e['PhikS']}),{};};return{'preToolUseHook':_0x2d56d9,'postToolUseHook':_0x3a3d26,'postToolUseFailureHook':_0x460cbc,'commandCounts':_0x5e8fd6};}async function runNovaLifecycleCommand(_0x58e890){const _0x126fd0=_0x4d95f0,_0x337236={'uPiSf':function(_0x2c5de3,_0x608445){return _0x2c5de3(_0x608445);}},{novaOptions:_0x225abd,commandArgs:_0x22f700,telemetry:_0x52906f,phase:_0x1bde87,metadata:_0x2461c6,timeoutMs:_0x47e231}=_0x58e890;_0x52906f[_0x126fd0(0x1e0)](_0x1bde87,_0x2461c6);try{const _0x46e942=await _0x337236[_0x126fd0(0x200)](runNovaActCliCommand,{..._0x225abd,'commandArgs':_0x22f700,'cwd':process[_0x126fd0(0x209)](),'env':process[_0x126fd0(0x1d5)],'timeoutMs':_0x47e231??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x52906f[_0x126fd0(0x1ca)](_0x1bde87,{..._0x2461c6,'subcommand':_0x46e942['invocation']['subcommand'],'commandPreview':previewNovaActCliCommand(_0x46e942[_0x126fd0(0x19d)][_0x126fd0(0x1a1)]),'stdoutPreview':previewNovaActCliCommand(_0x46e942[_0x126fd0(0x1db)]),'stderrPreview':previewNovaActCliCommand(_0x46e942['stderr']),'logDir':_0x337236[_0x126fd0(0x200)](extractNovaActLogDir,_0x46e942[_0x126fd0(0x1db)])});}catch(_0x162221){await _0x52906f[_0x126fd0(0x1f2)](_0x1bde87,_0x162221,_0x2461c6);throw _0x162221;}}export async function finalizeVerifyFeatureNovaCliSession(_0x55ebda){const _0x55f0af=_0x4d95f0,_0x1cfedd={'nBbKb':_0x55f0af(0x235),'IgfTv':function(_0x28ebe7,_0x35f90e,_0x4dfd74){return _0x28ebe7(_0x35f90e,_0x4dfd74);},'aQvUC':_0x55f0af(0x1ad),'FuKKT':_0x55f0af(0x1c3),'VEBsH':'session','DHmdx':_0x55f0af(0x187),'LXabB':function(_0x5d5796,_0x44648c,_0x57bae3){return _0x5d5796(_0x44648c,_0x57bae3);},'unZpS':_0x55f0af(0x262),'uaPcn':_0x55f0af(0x1ff)},{telemetry:_0x1f72db,novaOptions:_0x4e59b3,cliArtifactDir:_0x217700,transportMetadata:_0x431587,artifactRecorder:_0x207499}=_0x55ebda,_0x47afd9=[{'phase':_0x55f0af(0x1af),'commandArgs':[_0x1cfedd[_0x55f0af(0x19c)],'--output',_0x1cfedd[_0x55f0af(0x1c4)](buildCliArtifactPath,_0x217700,_0x55f0af(0x240))]},{'phase':_0x55f0af(0x21e),'commandArgs':[_0x1cfedd[_0x55f0af(0x254)],_0x1cfedd['FuKKT'],buildCliArtifactPath(_0x217700,_0x55f0af(0x264))]},{'phase':'nova_act_session_export','commandArgs':[_0x1cfedd[_0x55f0af(0x252)],_0x1cfedd['DHmdx'],_0x55f0af(0x1bd),'json',_0x55f0af(0x1c3),_0x1cfedd[_0x55f0af(0x224)](buildCliArtifactPath,_0x217700,'nova-session-export.json')]},{'phase':_0x55f0af(0x222),'commandArgs':[_0x1cfedd[_0x55f0af(0x252)],_0x55f0af(0x187),_0x55f0af(0x23c),_0x55f0af(0x1c8),buildCliArtifactPath(_0x217700,_0x55f0af(0x1e2))]},{'phase':_0x1cfedd[_0x55f0af(0x1ef)],'commandArgs':[_0x55f0af(0x1d1),_0x1cfedd[_0x55f0af(0x1d9)]]}];for(const _0xa77f8a of _0x47afd9){_0xa77f8a[_0x55f0af(0x1ea)]==='nova_act_session_close'&&await _0x207499?.[_0x55f0af(0x1bf)]();try{await runNovaLifecycleCommand({'novaOptions':_0x4e59b3,'commandArgs':[..._0xa77f8a['commandArgs']],'telemetry':_0x1f72db,'phase':_0xa77f8a['phase'],'metadata':_0x431587});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x1185ce){const _0x3c5f36=_0x4d95f0,_0x5b1493={'maflH':function(_0x153df8,_0x5e7509,_0x2efe4b){return _0x153df8(_0x5e7509,_0x2efe4b);},'QLgoa':function(_0x1d195d,_0x22fd1a){return _0x1d195d(_0x22fd1a);},'ZbtqW':function(_0x59573d,_0x53e6f9){return _0x59573d===_0x53e6f9;}},{cwd:_0x14d653,cliArtifactDir:_0x5a4774,startTime:_0x544f70}=_0x1185ce,_0x41e0f2=[];await _0x5b1493['maflH'](mkdir,_0x5a4774,{'recursive':!![]});const _0x24733a=await _0x5b1493['maflH'](readdir,_0x14d653,{'withFileTypes':!![]});for(const _0x43fa8 of _0x24733a){if(!_0x43fa8[_0x3c5f36(0x1c1)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x3c5f36(0x23d)](_0x43fa8['name']))continue;const _0x6a6aea=join(_0x14d653,_0x43fa8['name']),_0x20b94b=await _0x5b1493['QLgoa'](stat,_0x6a6aea);if(_0x20b94b['mtimeMs']+0x7d0<_0x544f70)continue;const _0x3ba0b9=buildCliArtifactPath(_0x5a4774,_0x43fa8['name']);if(_0x5b1493[_0x3c5f36(0x205)](_0x6a6aea,_0x3ba0b9))continue;await _0x5b1493[_0x3c5f36(0x20f)](rename,_0x6a6aea,_0x3ba0b9),_0x41e0f2[_0x3c5f36(0x226)](_0x43fa8['name']);}return _0x41e0f2['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x4993c4){const _0x56d732=_0x4d95f0,_0x257e21={'oAqXQ':function(_0x2e16b0,_0x5cff3b,_0x5eb9de){return _0x2e16b0(_0x5cff3b,_0x5eb9de);},'ylEGL':function(_0x1a5e5b,_0x51c925){return _0x1a5e5b(_0x51c925);}},_0x313b2d=_0x257e21['oAqXQ'](join,_0x4993c4,'trace.zip');try{return{'buffer':await _0x257e21[_0x56d732(0x1d8)](readFile,_0x313b2d),'source':_0x313b2d};}catch{return{'buffer':await zipVerifyFeatureNovaArtifacts(_0x4993c4),'source':_0x4993c4};}}async function zipVerifyFeatureNovaArtifacts(_0x3f7194){const _0xced5de=_0x4d95f0,_0x58b51e={'dVWqb':function(_0x561385,_0x29c415,_0x1f1fd2,_0x2348b1){return _0x561385(_0x29c415,_0x1f1fd2,_0x2348b1);},'wtuAS':_0xced5de(0x219),'LfDYQ':function(_0x5084c5,_0x727e8f){return _0x5084c5(_0x727e8f);},'XnMJI':function(_0x4e6dfd,_0x43439b,_0x588634){return _0x4e6dfd(_0x43439b,_0x588634);}},_0xb2c44e=_0x58b51e[_0xced5de(0x1fa)](join,_0x3f7194,'..',_0x58b51e['wtuAS']);try{return await _0x58b51e[_0xced5de(0x1fa)](execFileAsync,_0xced5de(0x1a5),[_0xced5de(0x1f0),_0xb2c44e,'.','-x',_0xced5de(0x18b)],{'cwd':_0x3f7194}),await _0x58b51e['LfDYQ'](readFile,_0xb2c44e);}finally{await _0x58b51e['XnMJI'](rm,_0xb2c44e,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x4e2334){const _0x4bb4f0=_0x4d95f0,_0x475345={'jzNqy':function(_0x5c3915,_0x5005e1){return _0x5c3915(_0x5005e1);}},_0x27d85b=buildNovaActCliInvocation(_0x4e2334['novaOptions'],_0x4e2334['commandArgs']);return{'command':_0x27d85b[_0x4bb4f0(0x196)],'args':_0x27d85b[_0x4bb4f0(0x1b4)],'commandPreview':_0x475345['jzNqy'](previewNovaActCliCommand,_0x27d85b['shellCommand']),'subcommand':_0x27d85b[_0x4bb4f0(0x1fd)],'sharedOptionsSuffix':buildNovaActCliSharedOptionsSuffix(_0x4e2334['novaOptions'],_0x4e2334[_0x4bb4f0(0x22a)])};}
|
|
1
|
+
const _0x2f8c61=_0x30df;(function(_0x5bf978,_0x14c322){const _0x366405=_0x30df,_0x478c41=_0x5bf978();while(!![]){try{const _0x3b2e4b=-parseInt(_0x366405(0x195))/0x1*(parseInt(_0x366405(0x135))/0x2)+parseInt(_0x366405(0x162))/0x3+-parseInt(_0x366405(0x1f0))/0x4+-parseInt(_0x366405(0x1f5))/0x5+parseInt(_0x366405(0x18c))/0x6+-parseInt(_0x366405(0x18a))/0x7*(parseInt(_0x366405(0x1d5))/0x8)+parseInt(_0x366405(0x149))/0x9;if(_0x3b2e4b===_0x14c322)break;else _0x478c41['push'](_0x478c41['shift']());}catch(_0x43c6fa){_0x478c41['push'](_0x478c41['shift']());}}}(_0x49fe,0x956e5));import{execFile}from'child_process';import{mkdir,readdir,readFile,rename,rm,stat,writeFile}from'fs/promises';import{homedir}from'os';import{basename,join}from'path';function _0x30df(_0x32556a,_0x3a8472){_0x32556a=_0x32556a-0x12f;const _0x49fe66=_0x49fe();let _0x30df10=_0x49fe66[_0x32556a];return _0x30df10;}import{promisify}from'util';import{chromium}from'playwright';import{buildNovaActCliInvocation,buildNovaActCliSharedOptionsSuffix,extractNovaActLogDir,parseNovaActCliCommand,previewNovaActCliCommand,runNovaActCliCommand}from'./utils/novaActCli.js';import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';const NOVA_ACT_CLI_COMMAND_TIMEOUT_MS=0x1d4c0,NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS=0x3a98,NOVA_ARTIFACT_METADATA_WAIT_MS=0x1388,NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS=0x1388,VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|final-state\.ya?ml|nova-session-export\.json)$/i,NOVA_ACT_ALLOWED_AGENT_COMMANDS=new Set([_0x2f8c61(0x1be),_0x2f8c61(0x177),'verify',_0x2f8c61(0x19f),'goto',_0x2f8c61(0x1b4),'snapshot',_0x2f8c61(0x134)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x15b63e,_0x48ee19){return join(_0x15b63e,_0x48ee19);}export class NovaActArtifactRecorder{[_0x2f8c61(0x20f)];[_0x2f8c61(0x172)]=null;['context']=null;['frameSession']=null;[_0x2f8c61(0x1e7)]=[];[_0x2f8c61(0x1cb)]=0x0;[_0x2f8c61(0x17a)]=0x0;['traceSampleTimer']=null;['traceSampleInFlight']=null;[_0x2f8c61(0x203)]=![];[_0x2f8c61(0x1f6)]=![];[_0x2f8c61(0x1aa)]=![];[_0x2f8c61(0x1f2)]=![];constructor(_0x39b789){const _0xbf8d73=_0x2f8c61;this[_0xbf8d73(0x20f)]=_0x39b789;}async['start'](){const _0x5eb498=_0x2f8c61,_0x567db2={'ZVbut':function(_0x3b6432,_0x2670f9,_0x5cd3f7){return _0x3b6432(_0x2670f9,_0x5cd3f7);},'KXrZe':'nova_act_artifact_recording'};if(this[_0x5eb498(0x1aa)])return;this[_0x5eb498(0x1aa)]=!![];const _0x13e05c=await this['readSessionMetadataWithRetry'](),_0xe51929=_0x13e05c[_0x5eb498(0x16e)];if(!_0xe51929)throw new Error('Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20'+this[_0x5eb498(0x20f)]['novaOptions']['sessionId']);await _0x567db2[_0x5eb498(0x1ed)](mkdir,this[_0x5eb498(0x20f)]['cliArtifactDir'],{'recursive':!![]}),this[_0x5eb498(0x172)]=await chromium[_0x5eb498(0x178)](_0xe51929,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this['context']=this['browser'][_0x5eb498(0x18e)]()[0x0]??null;if(!this[_0x5eb498(0x159)])throw new Error(_0x5eb498(0x190));await this[_0x5eb498(0x159)][_0x5eb498(0x139)][_0x5eb498(0x180)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x5eb498(0x174)](),await this[_0x5eb498(0x16b)](),this['params']['telemetry']['trackPhaseStart'](_0x567db2['KXrZe'],{...this[_0x5eb498(0x20f)][_0x5eb498(0x188)],'cdpEndpoint':_0xe51929,'browserPid':_0x13e05c['browser_pid'],'sessionState':_0x13e05c[_0x5eb498(0x1dc)]}),this[_0x5eb498(0x20f)]['telemetry']['trackPhaseEnd'](_0x567db2['KXrZe'],{...this['params']['transportMetadata'],'tracingStarted':this['tracingStarted'],'screencastStarted':this['screencastStarted']});}async[_0x2f8c61(0x1ba)](){const _0x17d953=_0x2f8c61,_0x5d3a76={'CSGFL':'nova_act_artifact_recording_stop'};if(this[_0x17d953(0x1f2)])return;this['stopped']=!![];const _0x41570b={...this[_0x17d953(0x20f)][_0x17d953(0x188)],'frameCount':this['frameCount'],'traceSampleCount':this[_0x17d953(0x17a)],'tracingStarted':this[_0x17d953(0x203)],'screencastStarted':this['screencastStarted']};this[_0x17d953(0x20f)]['telemetry']['trackPhaseStart'](_0x5d3a76['CSGFL'],_0x41570b);try{await this['stopTraceSampling'](),await this[_0x17d953(0x1d4)](),await this['stopScreencast'](),await Promise['allSettled'](this[_0x17d953(0x1e7)]);this[_0x17d953(0x159)]&&this[_0x17d953(0x203)]&&await this['context'][_0x17d953(0x139)][_0x17d953(0x1ba)]({'path':buildCliArtifactPath(this['params']['cliArtifactDir'],_0x17d953(0x1f8))});const _0x3dddfd=await this[_0x17d953(0x1b7)]();this['params'][_0x17d953(0x1d3)]['trackPhaseEnd'](_0x5d3a76['CSGFL'],{..._0x41570b,'videoPath':_0x3dddfd});}catch(_0x2a6556){await this[_0x17d953(0x20f)][_0x17d953(0x1d3)][_0x17d953(0x1c5)]('nova_act_artifact_recording_stop',_0x2a6556,_0x41570b);}finally{await this['browser']?.[_0x17d953(0x147)]()['catch'](()=>undefined),this[_0x17d953(0x172)]=null,this['context']=null,this['frameSession']=null;}}async['readSessionMetadataWithRetry'](){const _0x3d4f54=_0x2f8c61,_0x5c1565={'IyrcG':function(_0x9a22a6,_0xa028e2,_0x5dbe9b,_0x47797f,_0x590f84,_0x315ef5){return _0x9a22a6(_0xa028e2,_0x5dbe9b,_0x47797f,_0x590f84,_0x315ef5);},'aOMmi':function(_0x3b29fb){return _0x3b29fb();},'TxNJB':_0x3d4f54(0x1ff),'KFOCt':function(_0x550775,_0x5af1d7,_0x45c67d){return _0x550775(_0x5af1d7,_0x45c67d);},'owFqv':function(_0x434192,_0x2ef1f6){return _0x434192<_0x2ef1f6;},'RaBNR':function(_0x2bb2ec,_0x4ff409){return _0x2bb2ec-_0x4ff409;}},_0x3b1cb1=_0x5c1565['IyrcG'](join,_0x5c1565['aOMmi'](homedir),_0x5c1565['TxNJB'],'browser','sessions',this['params']['novaOptions']['sessionId']+'.json'),_0x3d7881=Date['now']();let _0x384a46;do{try{const _0x3a943b=JSON['parse'](await _0x5c1565[_0x3d4f54(0x1a3)](readFile,_0x3b1cb1,_0x3d4f54(0x1c2)));if(_0x3a943b['cdp_endpoint'])return _0x3a943b;_0x384a46=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0x3b1cb1);}catch(_0x9e563e){_0x384a46=_0x9e563e;}await delay(0x64);}while(_0x5c1565['owFqv'](_0x5c1565['RaBNR'](Date[_0x3d4f54(0x1d9)](),_0x3d7881),NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x384a46 instanceof Error)throw _0x384a46;throw new Error(_0x3d4f54(0x1ef)+_0x3b1cb1);}async[_0x2f8c61(0x16b)](){const _0x153f58=_0x2f8c61,_0x58c412={'eSUsM':function(_0x5e5919,_0x1e9d3c,_0x14a708){return _0x5e5919(_0x1e9d3c,_0x14a708);},'fEPhZ':function(_0x4b6bc3,_0x58db86){return _0x4b6bc3(_0x58db86);},'wgGDE':_0x153f58(0x202),'XkhKm':'Page.screencastFrame','ZweYa':'Page.startScreencast','BqGNk':'jpeg'};if(!this['context'])return;const _0x3c0b33=this[_0x153f58(0x159)]['pages']()[0x0];if(!_0x3c0b33)return;const _0x29cc9a=this[_0x153f58(0x1fa)]();await mkdir(_0x29cc9a,{'recursive':!![]});const _0x3245b1=await this[_0x153f58(0x159)][_0x153f58(0x214)](_0x3c0b33);this[_0x153f58(0x1d7)]=_0x3245b1,_0x3245b1['on'](_0x58c412['XkhKm'],_0x1c551f=>{const _0x58ee4d=_0x153f58,_0x27885b=++this[_0x58ee4d(0x1cb)],_0x1e22ef=_0x58c412['eSUsM'](join,_0x29cc9a,'frame-'+_0x58c412['fEPhZ'](String,_0x27885b)[_0x58ee4d(0x173)](0x6,'0')+_0x58ee4d(0x14a)),_0x345c98=writeFile(_0x1e22ef,Buffer[_0x58ee4d(0x1c8)](_0x1c551f[_0x58ee4d(0x1ac)],_0x58c412['wgGDE']))[_0x58ee4d(0x192)](()=>undefined)[_0x58ee4d(0x176)](()=>_0x3245b1[_0x58ee4d(0x1da)](_0x58ee4d(0x1b1),{'sessionId':_0x1c551f[_0x58ee4d(0x16d)]}))[_0x58ee4d(0x131)](()=>undefined)[_0x58ee4d(0x192)](()=>undefined);this['frameWrites'][_0x58ee4d(0x197)](_0x345c98);}),await _0x3245b1[_0x153f58(0x1da)](_0x58c412['ZweYa'],{'format':_0x58c412[_0x153f58(0x133)],'quality':0x4b,'everyNthFrame':0x6}),this[_0x153f58(0x1f6)]=!![];}async[_0x2f8c61(0x166)](){const _0x1d1644=_0x2f8c61,_0x144888={'WFBCN':'Page.stopScreencast'};if(!this['frameSession']||!this[_0x1d1644(0x1f6)])return;await this[_0x1d1644(0x1d7)]['send'](_0x144888[_0x1d1644(0x1e9)])['catch'](()=>undefined);}['startTraceSampling'](){const _0x191abc=_0x2f8c61,_0x22ab6c={'Mgvuh':function(_0x4815ae,_0x58de4e,_0xc5c875){return _0x4815ae(_0x58de4e,_0xc5c875);}};this[_0x191abc(0x1b2)](),this['traceSampleTimer']=_0x22ab6c['Mgvuh'](setInterval,()=>this[_0x191abc(0x1b2)](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}['queueTraceSample'](){const _0x1b5345=_0x2f8c61;if(this['traceSampleInFlight'])return;this['traceSampleInFlight']=this[_0x1b5345(0x1d4)]()['finally'](()=>{const _0x1f0b0f=_0x1b5345;this[_0x1f0b0f(0x1ab)]=null;});}async['stopTraceSampling'](){const _0x26c205=_0x2f8c61;this[_0x26c205(0x143)]&&(clearInterval(this[_0x26c205(0x143)]),this[_0x26c205(0x143)]=null),await this['traceSampleInFlight']?.['catch'](()=>undefined);}async['captureTraceSample'](){const _0x1d758b=_0x2f8c61,_0x56c4d8=this[_0x1d758b(0x159)]?.['pages']()[0x0];if(!_0x56c4d8)return;try{await _0x56c4d8['locator']('body')[_0x1d758b(0x152)](_0x25a656=>_0x25a656[_0x1d758b(0x1b0)],undefined,{'timeout':0x3e8}),this[_0x1d758b(0x17a)]++;}catch{}}async[_0x2f8c61(0x1b7)](){const _0xee8f71=_0x2f8c61,_0x13437a={'AaNyt':_0xee8f71(0x157),'xiQpK':function(_0x3f0241,_0x3b22b1,_0x356720){return _0x3f0241(_0x3b22b1,_0x356720);},'mlLUp':'-hide_banner','zqdux':_0xee8f71(0x1a9),'tddcZ':'error','SmSQv':'-framerate','YSnWe':'frame-%06d.jpg','xnNmC':_0xee8f71(0x213),'ISuDz':'yuv420p'};if(this['frameCount']<0x2)return null;const _0x4d4668=await resolveFfmpegPath();if(!_0x4d4668)return null;const _0x31a24e=join(this['params'][_0xee8f71(0x211)],_0x13437a[_0xee8f71(0x201)]);await _0x13437a[_0xee8f71(0x17f)](mkdir,_0x31a24e,{'recursive':!![]});const _0xae5beb=_0x13437a['xiQpK'](join,_0x31a24e,_0xee8f71(0x1e6));return await execFileAsync(_0x4d4668,['-y',_0x13437a[_0xee8f71(0x14b)],_0x13437a['zqdux'],_0x13437a['tddcZ'],_0x13437a[_0xee8f71(0x1d6)],'10','-i',_0x13437a[_0xee8f71(0x17f)](join,this[_0xee8f71(0x1fa)](),_0x13437a['YSnWe']),_0xee8f71(0x150),'scale=trunc(iw/2)*2:trunc(ih/2)*2','-c:v',_0x13437a[_0xee8f71(0x161)],'-pix_fmt',_0x13437a[_0xee8f71(0x1c4)],_0xae5beb]),_0xae5beb;}[_0x2f8c61(0x1fa)](){const _0x85565a=_0x2f8c61,_0x51d652={'FVWGT':function(_0x51b53d,_0x28e85c,_0x42d000){return _0x51b53d(_0x28e85c,_0x42d000);}};return _0x51d652[_0x85565a(0x1c1)](join,this['params'][_0x85565a(0x211)],'nova-video-frames');}}async function delay(_0xeeeb0d){await new Promise(_0x5d6686=>setTimeout(_0x5d6686,_0xeeeb0d));}async function resolveFfmpegPath(){const _0x547ca4=_0x2f8c61,_0x509436={'WLlyf':'ffmpeg','hjmJZ':function(_0x294adf,_0x103885,_0x148f7c,_0x442c21,_0x2e5878){return _0x294adf(_0x103885,_0x148f7c,_0x442c21,_0x2e5878);},'bLDDV':function(_0x342fc0,_0x397e95,_0x40d555,_0x4d970d){return _0x342fc0(_0x397e95,_0x40d555,_0x4d970d);},'bMKjc':_0x547ca4(0x17c),'LbeVO':function(_0x2b3d7d,_0x3d2edb){return _0x2b3d7d(_0x3d2edb);}};if(await canRunFfmpeg(_0x509436['WLlyf']))return _0x547ca4(0x20e);const _0x40a062=[_0x509436['hjmJZ'](join,homedir(),_0x547ca4(0x208),_0x547ca4(0x1f7),_0x547ca4(0x20d)),_0x509436['bLDDV'](join,homedir(),_0x509436[_0x547ca4(0x175)],'ms-playwright')];for(const _0x96ffe0 of _0x40a062){try{const _0x3ce428=await readdir(_0x96ffe0),_0x2f659f=_0x3ce428['filter'](_0x5ca1cc=>_0x5ca1cc['startsWith'](_0x547ca4(0x1ea)))['sort']()['reverse']()['flatMap'](_0x4a5042=>[join(_0x96ffe0,_0x4a5042,_0x547ca4(0x200)),join(_0x96ffe0,_0x4a5042,'ffmpeg-linux'),join(_0x96ffe0,_0x4a5042,'ffmpeg.exe')]);for(const _0x530d4b of _0x2f659f){if(await _0x509436['LbeVO'](canRunFfmpeg,_0x530d4b))return _0x530d4b;}}catch{}}return null;}async function canRunFfmpeg(_0x43c229){const _0x1875f4=_0x2f8c61,_0x3b71aa={'RRbbM':function(_0x5e21d7,_0x2c9423,_0x3415a4){return _0x5e21d7(_0x2c9423,_0x3415a4);},'FGAti':_0x1875f4(0x20b)};try{return await _0x3b71aa[_0x1875f4(0x154)](execFileAsync,_0x43c229,[_0x3b71aa['FGAti']]),!![];}catch{return![];}}function toStepDisplayName(_0xbe2f0e){const _0x325f80=_0x2f8c61,_0x12191f={'NzXPE':function(_0x16f9c3,_0x2e1851){return _0x16f9c3(_0x2e1851);},'uYpzW':function(_0x1fa66e,_0x50521d){return _0x1fa66e(_0x50521d);}},_0x400343=_0x12191f['NzXPE'](basename,_0xbe2f0e)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x325f80(0x1d8)](/^\d+_/,'')[_0x325f80(0x1d8)](/-/g,'\x20');return{'name':_0x400343,'isKeyStep':/^key_/i['test'](_0x12191f[_0x325f80(0x212)](basename,_0xbe2f0e))};}function extractShellValue(_0x1075ec){if(!_0x1075ec)return null;return _0x1075ec[0x1]??_0x1075ec[0x2]??_0x1075ec[0x3]??null;}function extractOutputOption(_0x376d83){return extractShellValue(_0x376d83['match'](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0xc74e76,_0x1a93dc){const _0x38cb0d=_0x2f8c61,_0x1ca23e={'ZmTQu':_0x38cb0d(0x177),'iqryc':_0x38cb0d(0x169),'PKeNO':_0x38cb0d(0x14e),'yduPa':'verify\x20page\x20condition','zKhhi':_0x38cb0d(0x17e),'QjIcU':_0x38cb0d(0x1b4),'hcwoX':'wait\x20for\x20page\x20condition','OAKtU':_0x38cb0d(0x1fc),'NupUP':function(_0x1f2bf2,_0x39cc17){return _0x1f2bf2(_0x39cc17);},'ZxTIo':_0x38cb0d(0x1cf),'oEaZw':_0x38cb0d(0x134),'LkKOc':function(_0x4689c9,_0x2fa070){return _0x4689c9(_0x2fa070);},'TTtbk':'capture\x20screenshot','EGCZy':function(_0x305b58,_0xdb64d3){return _0x305b58(_0xdb64d3);},'GEQuz':_0x38cb0d(0x191)};switch(_0x1a93dc){case'session\x20create':return _0x38cb0d(0x140);case _0x1ca23e['ZmTQu']:return _0x1ca23e['iqryc'];case _0x1ca23e['PKeNO']:return _0x1ca23e['yduPa'];case _0x38cb0d(0x19f):return'ask\x20page\x20question';case _0x38cb0d(0x156):return _0x1ca23e[_0x38cb0d(0x1ca)];case _0x1ca23e[_0x38cb0d(0x17d)]:return _0x1ca23e[_0x38cb0d(0x1b6)];case _0x1ca23e[_0x38cb0d(0x171)]:{const _0x13667c=_0x1ca23e['NupUP'](extractOutputOption,_0xc74e76);if(!_0x13667c)return _0x1ca23e['ZxTIo'];const {name:_0x3abd30}=toStepDisplayName(_0x13667c);return'capture\x20snapshot\x20`'+_0x3abd30+'`';}case _0x1ca23e[_0x38cb0d(0x1d1)]:{const _0x4efcca=_0x1ca23e[_0x38cb0d(0x1f9)](extractOutputOption,_0xc74e76);if(!_0x4efcca)return _0x1ca23e['TTtbk'];const {name:_0x4c00db,isKeyStep:_0x1655fe}=_0x1ca23e['EGCZy'](toStepDisplayName,_0x4efcca);return _0x1655fe?_0x38cb0d(0x1c9)+_0x4c00db+'`':_0x38cb0d(0x181)+_0x4c00db+'`';}case _0x1ca23e['GEQuz']:return _0x38cb0d(0x14f);default:return _0x1a93dc;}}function getNovaActCliCommandBlockReason(_0x71b296){const _0x2037a8=_0x2f8c61,_0x27f868={'HBeXv':function(_0x2cb0ab,_0x598cd5){return _0x2cb0ab(_0x598cd5);},'TWKYK':_0x2037a8(0x14e)},_0xa55d0f=_0x27f868['HBeXv'](parseNovaActCliCommand,_0x71b296);if(!_0xa55d0f)return _0x2037a8(0x179);if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x2037a8(0x1c0)](_0xa55d0f))return'Nova\x20command\x20`'+_0xa55d0f+_0x2037a8(0x12f);if(_0xa55d0f===_0x27f868[_0x2037a8(0x1a1)]&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x71b296))return'Evaluate\x20visited-page\x20aggregate\x20requirements\x20from\x20the\x20collected\x20URLs,\x20titles,\x20headings,\x20verify\x20results,\x20and\x20screenshots.\x20Do\x20not\x20run\x20another\x20browser\x20command\x20to\x20re-check\x20pages\x20already\x20visited.';if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x71b296))return'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.';return null;}function buildFeedbackSection(_0xd3c33){const _0x154f05=_0x2f8c61,_0x12021e={'gdQyQ':_0x154f05(0x1a2),'vyEZE':_0x154f05(0x155),'EejGY':_0x154f05(0x1f3),'BmqDr':_0x154f05(0x16c),'DlGED':function(_0x54ad0d,_0x14790b){return _0x54ad0d===_0x14790b;}};if(!_0xd3c33||_0x12021e[_0x154f05(0x1dd)](_0xd3c33[_0x154f05(0x132)][_0x154f05(0x206)],0x0))return'';const _0x3fa937=_0xd3c33[_0x154f05(0x132)][_0x154f05(0x168)](_0x3b869d=>{const _0x39c2dc=_0x154f05,_0x1ffb90=new Date(_0x3b869d[_0x39c2dc(0x158)])[_0x39c2dc(0x1fd)](_0x12021e['gdQyQ'],{'month':_0x12021e['vyEZE'],'day':_0x12021e['EejGY']}),_0x418a5b=_0x3b869d['authorName']||_0x3b869d['authorEmail']||'Reviewer',_0x44cbd3=_0x3b869d['domRef']?'\x20(on\x20element:\x20<'+(_0x3b869d['domRef']['selector']['split'](_0x39c2dc(0x1e3))['pop']()?.['split'](':')[0x0]||_0x12021e['BmqDr'])+'>\x20\x22'+(_0x3b869d['domRef']['textContent']||'')[_0x39c2dc(0x1d0)](0x0,0x32)+'\x22)':'';return _0x39c2dc(0x196)+_0x3b869d['id']+']\x20**'+_0x418a5b+_0x39c2dc(0x164)+_0x1ffb90+'):\x20\x22'+_0x3b869d[_0x39c2dc(0x165)]+'\x22'+_0x44cbd3;})['join']('\x0a');return _0x154f05(0x16f)+_0x3fa937;}function buildNovaSharedOptionsInstruction(_0x218389){const _0x23a91d=_0x2f8c61;if(!_0x218389[_0x23a91d(0x1ce)]())return'The\x20command\x20prefix\x20already\x20injects\x20session,\x20auth,\x20region,\x20workflow,\x20user-data,\x20headless,\x20and\x20JSON\x20options.\x0aDo\x20not\x20run\x20raw\x20`act\x20browser`.\x20Do\x20not\x20add\x20`--auth-mode`,\x20`--aws-profile`,\x20`--region`,\x20`--workflow-name`,\x20`--session-id`,\x20`--user-data-dir`,\x20`--headless`,\x20or\x20`--headed`\x20yourself.';return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0x218389;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x1d3aff){const _0x494282=_0x2f8c61,_0x4a7a46={'etEaj':'00_initial-state.yml','PnMmM':_0x494282(0x148),'qiyjA':function(_0x6c5c7d,_0x4dfd3c,_0x2b380c){return _0x6c5c7d(_0x4dfd3c,_0x2b380c);},'KAMRK':_0x494282(0x1ee),'fniDA':function(_0x4529f5,_0xba380f,_0x3140d3){return _0x4529f5(_0xba380f,_0x3140d3);},'HUueC':function(_0x4d62e2,_0x276982){return _0x4d62e2(_0x276982);},'bNwnv':function(_0x8b884a,_0x2adef6){return _0x8b884a(_0x2adef6);}},{novaCommandPrefix:_0x5ede04,novaSharedOptionsSuffix:_0x489c1c,cliArtifactDir:_0x442e8b,url:_0x296909}=_0x1d3aff,_0x1af06c=buildCliArtifactPath(_0x442e8b,_0x4a7a46['etEaj']),_0x11f0b0=buildCliArtifactPath(_0x442e8b,_0x4a7a46[_0x494282(0x15b)]),_0x1b7cc6=_0x4a7a46['qiyjA'](buildCliArtifactPath,_0x442e8b,_0x4a7a46[_0x494282(0x18b)]),_0x4f6ddb=_0x4a7a46[_0x494282(0x130)](buildCliArtifactPath,_0x442e8b,_0x494282(0x138));return'You\x20are\x20testing\x20Nova\x20Act\x20browser\x20automation.\x20Your\x20task\x20is\x20simple.\x0a\x0aUse\x20Bash\x20and\x20Nova\x20Act\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x5ede04+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x489c1c)+_0x494282(0x1a5)+_0x5ede04+'\x20session\x20create\x20'+_0x4a7a46[_0x494282(0x1fb)](quoteShellArg,_0x296909)+'\x20'+_0x489c1c+'`\x0a2.\x20Run\x20`'+_0x5ede04+_0x494282(0x170)+_0x4a7a46[_0x494282(0x1b5)](quoteShellArg,_0x1af06c)+'\x20'+_0x489c1c+'`\x0a3.\x20Run\x20`'+_0x5ede04+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x11f0b0)+'\x20'+_0x489c1c+_0x494282(0x19c)+_0x5ede04+_0x494282(0x1b9)+_0x5ede04+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x1b7cc6)+'\x20'+_0x489c1c+_0x494282(0x183)+_0x5ede04+_0x494282(0x189)+quoteShellArg(_0x4f6ddb)+'\x20'+_0x489c1c+'`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`'+_0x442e8b+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x39ffe2){const _0x19bd5d=_0x2f8c61,_0x139b41={'aDilY':function(_0x57fc51,_0x220b6b){return _0x57fc51(_0x220b6b);},'rdYqu':function(_0x1c7539,_0xecc6ed,_0x502ca2){return _0x1c7539(_0xecc6ed,_0x502ca2);},'jcUhJ':_0x19bd5d(0x20a),'WNmCM':function(_0x4e0cee,_0x5d48ed){return _0x4e0cee(_0x5d48ed);}},{checklistItem:_0x4e30c7,itemFeedback:_0x256254,taskDescription:_0x3bf21c,novaCommandPrefix:_0x20d7c9,novaSharedOptionsSuffix:_0x2333b4,cliArtifactDir:_0x14f5c3,url:_0x117ccc,loginInstructions:_0x2e166b}=_0x39ffe2,_0x4c5614=_0x4e30c7['notes']?_0x19bd5d(0x186)+_0x4e30c7[_0x19bd5d(0x1db)]:'',_0x1a202f=_0x139b41[_0x19bd5d(0x18f)](buildFeedbackSection,_0x256254),_0x5761a4=_0x256254?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x256254[_0x19bd5d(0x1b8)]:'',_0x363104=_0x2e166b?_0x19bd5d(0x141)+_0x2e166b+_0x19bd5d(0x1fe):'',_0x5acbcd=_0x139b41[_0x19bd5d(0x1e5)](buildCliArtifactPath,_0x14f5c3,_0x19bd5d(0x1cd)),_0x3065e5=buildCliArtifactPath(_0x14f5c3,'01_initial-state.png'),_0x4db4b1=buildCliArtifactPath(_0x14f5c3,'key_03_success-state.png');return _0x19bd5d(0x1ad)+_0x4e30c7[_0x19bd5d(0x19b)]+_0x4c5614+_0x1a202f+_0x5761a4+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x3bf21c+'\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20'+_0x117ccc+_0x19bd5d(0x207)+_0x363104+_0x19bd5d(0x193)+_0x20d7c9+'\x20session\x20create\x20'+quoteShellArg(_0x117ccc)+'\x20'+_0x2333b4+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x14f5c3+_0x19bd5d(0x1e0)+_0x20d7c9+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x5acbcd)+'\x20'+_0x2333b4+_0x19bd5d(0x1df)+_0x20d7c9+_0x19bd5d(0x189)+quoteShellArg(_0x3065e5)+'\x20'+_0x2333b4+'`.\x0a7.\x20Optimize\x20for\x20few\x20browser\x20round\x20trips.\x20Each\x20Nova\x20CLI\x20call\x20has\x20high\x20latency.\x0a8.\x20Use\x203-5\x20high-level\x20`execute`\x20commands\x20total.\x20Each\x20`execute`\x20should\x20contain\x202-5\x20concrete\x20browser\x20steps\x20and\x20should\x20drive\x20to\x20the\x20next\x20milestone\x20page.\x0a9.\x20Do\x20not\x20split\x20a\x20simple\x20navigation\x20into\x20separate\x20commands\x20like\x20\x22open\x20menu\x22,\x20then\x20\x22click\x20link\x22,\x20then\x20\x22screenshot\x22.\x20Batch\x20those\x20into\x20one\x20`execute`\x20when\x20the\x20target\x20is\x20clear.\x0a10.\x20Do\x20not\x20use\x20`ask`\x20unless\x20you\x20are\x20genuinely\x20stuck\x20or\x20need\x20to\x20disambiguate\x20visible\x20page\x20content.\x20Prefer\x20reading\x20the\x20output\x20from\x20`execute`,\x20`snapshot`,\x20and\x20`verify`.\x0a11.\x20Use\x20`verify`\x20only\x20at\x20milestone\x20pages\x20that\x20map\x20directly\x20to\x20scenario\x20requirements.\x20Do\x20not\x20verify\x20after\x20every\x20click.\x0a12.\x20Take\x20screenshots\x20for\x20each\x20scenario\x20milestone\x20so\x20every\x20verified\x20step\x20has\x20reviewable\x20image\x20evidence,\x20including\x20the\x20final\x20state.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page.\x0a13.\x20After\x20the\x20required\x20initial\x20snapshot,\x20do\x20not\x20take\x20separate\x20milestone\x20snapshots\x20unless\x20you\x20cannot\x20understand\x20the\x20page\x20from\x20the\x20`execute`,\x20`verify`,\x20and\x20screenshot\x20outputs.\x0a14.\x20Mark\x20the\x20most\x20important\x20proof\x20screenshot\x20with\x20`key_`,\x20for\x20example\x20`'+_0x4db4b1+'`.\x0a15.\x20As\x20soon\x20as\x20all\x20scenario\x20requirements\x20are\x20satisfied,\x20return\x20structured\x20output\x20immediately.\x20Do\x20not\x20keep\x20exploring,\x20asking,\x20or\x20taking\x20extra\x20screenshots.\x0a16.\x20Treat\x20a\x20Nova\x20`verify`\x20result\x20with\x20`ASSERTION_FAILED`\x20as\x20useful\x20evidence,\x20not\x20as\x20a\x20tool\x20crash.\x20Do\x20not\x20retry\x20the\x20same\x20assertion\x20or\x20search\x20for\x20alternatives\x20unless\x20the\x20scenario\x20explicitly\x20asks\x20you\x20to\x20find\x20any\x20matching\x20page.\x0a17.\x20Stay\x20within\x20the\x20pages\x20and\x20flow\x20named\x20by\x20the\x20scenario.\x20If\x20a\x20required\x20condition\x20is\x20absent\x20after\x20checking\x20the\x20relevant\x20named\x20page\x20once,\x20stop\x20and\x20return\x20\x22partial\x22\x20or\x20\x22failed\x22\x20with\x20the\x20missing\x20requirement.\x20Do\x20not\x20expand\x20into\x20unrelated\x20pages\x20or\x20broad\x20site\x20searches.\x0a18.\x20After\x20you\x20reach\x20and\x20screenshot\x20the\x20final\x20named\x20scenario\x20page,\x20do\x20not\x20execute\x20more\x20browser\x20commands.\x20Evaluate\x20any\x20\x22at\x20least\x20one\x20visited\x20page\x22\x20requirement\x20from\x20the\x20pages\x20already\x20visited\x20and\x20the\x20evidence\x20already\x20collected.\x0a19.\x20Do\x20not\x20run\x20`session\x20close`,\x20`session\x20list`,\x20`session\x20export`,\x20`script`,\x20`doctor`,\x20`--help`,\x20`aws`,\x20`find`,\x20`grep`,\x20`env`,\x20`printenv`,\x20package\x20managers,\x20or\x20setup\x20commands.\x20The\x20host\x20owns\x20setup,\x20auth,\x20session\x20cleanup,\x20and\x20artifact\x20export.\x0a20.\x20The\x20host\x20also\x20captures\x20final\x20screenshots,\x20snapshots,\x20and\x20exports\x20after\x20you\x20finish,\x20but\x20every\x20scenario\x20milestone\x20still\x20needs\x20an\x20accessible\x20screenshot.\x20If\x20the\x20last\x20milestone\x20is\x20the\x20final\x20browser\x20state\x20and\x20you\x20have\x20already\x20captured\x20it,\x20you\x20do\x20not\x20need\x20a\x20duplicate\x20final\x20screenshot.\x0a21.\x20Do\x20not\x20close\x20the\x20Nova\x20session.\x20The\x20host\x20exports\x20artifacts\x20after\x20you\x20finish.\x0a22.\x20The\x20structured\x20output\x20is\x20your\x20final\x20response.\x20After\x20returning\x20it,\x20do\x20not\x20write\x20a\x20separate\x20markdown\x20summary\x20or\x20repeat\x20the\x20findings.\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Nova\x20Act\x20CLI\x20commands\x20with\x20this\x20prefix:\x0a`'+_0x20d7c9+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0x2333b4['trim']()?'`'+_0x2333b4+'`':_0x139b41['jcUhJ'])+'\x0a\x0a'+_0x139b41['WNmCM'](buildNovaSharedOptionsInstruction,_0x2333b4)+'\x0a\x0aExamples:\x0a-\x20`'+_0x20d7c9+'\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20'+_0x2333b4+_0x19bd5d(0x1a0)+_0x20d7c9+'\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20'+_0x2333b4+'`\x0a-\x20`'+_0x20d7c9+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x5acbcd)+'\x20'+_0x2333b4+'`\x0a-\x20`'+_0x20d7c9+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x4db4b1)+'\x20'+_0x2333b4+'`\x0a\x0a##\x20Screenshot\x20Guidelines\x0aTake\x20screenshots\x20at\x20scenario\x20milestones\x20so\x20a\x20human\x20can\x20review\x20each\x20completed\x20step\x20and\x20the\x20final\x20state.\x20Use\x20numbered\x20filenames\x20and\x20prefix\x201-2\x20key\x20proof\x20screenshots\x20with\x20`key_`.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page\x20when\x20an\x20existing\x20verifier\x20screenshot\x20or\x20host\x20final\x20screenshot\x20is\x20accessible.\x0a\x0a##\x20Snapshot\x20Guidelines\x0aYou\x20must\x20take\x20the\x20initial\x20snapshot\x20listed\x20above.\x20After\x20that,\x20prefer\x20screenshots\x20plus\x20the\x20page\x20summaries\x20returned\x20by\x20`execute`\x20and\x20`verify`.\x20Only\x20call\x20`snapshot`\x20again\x20if\x20you\x20cannot\x20determine\x20the\x20next\x20action\x20or\x20evaluation\x20from\x20those\x20outputs.\x0a\x0a##\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20initial\x20snapshot\x20and\x20screenshot,\x20check\x20for\x20blocking\x20HTTP\x20errors,\x20framework\x20error\x20pages,\x20blank\x20pages,\x20and\x20authentication\x20failures.\x20If\x20any\x20blocking\x20issue\x20is\x20present,\x20stop\x20and\x20return\x20evaluation\x20\x22blocked\x22\x20with\x20a\x20specific\x20reason.\x0a\x0a##\x20Failed\x20Assertions\x0aIf\x20`verify`\x20returns\x20`ASSERTION_FAILED`,\x20use\x20its\x20`actual`\x20and\x20`evidence`\x20fields\x20as\x20proof\x20for\x20the\x20final\x20evaluation.\x20Continue\x20only\x20to\x20finish\x20other\x20already-named\x20scenario\x20milestones.\x20Do\x20not\x20retry,\x20ask\x20about,\x20or\x20search\x20around\x20the\x20failed\x20condition.\x0a\x0a##\x20Final\x20Page\x20Stop\x0aWhen\x20the\x20scenario\x20names\x20a\x20final\x20page\x20or\x20final\x20navigation\x20target,\x20that\x20page\x20is\x20the\x20last\x20browser\x20milestone.\x20Once\x20it\x20is\x20loaded\x20and\x20screenshotted,\x20make\x20the\x20final\x20evaluation\x20from\x20the\x20collected\x20evidence.\x20Do\x20not\x20navigate,\x20search,\x20ask,\x20or\x20verify\x20beyond\x20that\x20final\x20page\x20unless\x20the\x20scenario\x20explicitly\x20names\x20another\x20page.\x0a\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x9ce796){const _0x4d9ed4=_0x2f8c61,_0xe91f95=[..._0x9ce796[_0x4d9ed4(0x160)]()][_0x4d9ed4(0x1a4)]();let _0x22ad40=0x0;for(const _0x5b5951 of _0x9ce796[_0x4d9ed4(0x167)]()){_0x22ad40+=_0x5b5951;}return{'cliCommandCount':_0x22ad40,'cliCommandsSeen':_0xe91f95,'noCliCommandsCalled':_0x22ad40===0x0};}export function createVerifyFeatureNovaCliHooks(_0x2423c4,_0x255cbd){const _0x4de900=_0x2f8c61,_0x381b00={'uZpbd':function(_0x3da21f,_0x30eb0a){return _0x3da21f!==_0x30eb0a;},'WKwNK':'Bash','IUsQp':function(_0x16a5d9,_0x1ead0c){return _0x16a5d9(_0x1ead0c);},'pRWmP':_0x4de900(0x205),'Kndmb':function(_0x1d53dd,_0x33db05){return _0x1d53dd!==_0x33db05;},'MWCGi':'PostToolUse','zpzlz':function(_0xab2754,_0x134563){return _0xab2754!==_0x134563;},'paEMY':function(_0x2566e4,_0x4a54a6){return _0x2566e4+_0x4a54a6;},'VwSiA':_0x4de900(0x16a),'aEXLu':function(_0x574b3b,_0x3c5e5a,_0x19bb72){return _0x574b3b(_0x3c5e5a,_0x19bb72);},'UNXeS':_0x4de900(0x163),'QAjRW':'nova-act-cli'},_0x2671fa=new Map(),_0x47e1f8=async _0xb0bc8a=>{const _0x4fb0a6=_0x4de900;if(_0x381b00['uZpbd'](_0xb0bc8a['hook_event_name'],_0x4fb0a6(0x1bf)))return{};const _0x21f277=_0xb0bc8a;if(_0x21f277['tool_name']!==_0x381b00[_0x4fb0a6(0x187)])return{};const _0x3708cb=_0x21f277[_0x4fb0a6(0x1a8)],_0x39a902=_0x381b00[_0x4fb0a6(0x1e2)](extractBashCommand,_0x3708cb);if(!_0x39a902)return{};const _0x30f4e4=getNovaActCliCommandBlockReason(_0x39a902);if(!_0x30f4e4)return{};return{'decision':_0x381b00[_0x4fb0a6(0x1bb)],'reason':_0x30f4e4};},_0x329c3c=async _0x542fca=>{const _0x2ed30f=_0x4de900;if(_0x381b00['Kndmb'](_0x542fca[_0x2ed30f(0x1f4)],_0x381b00[_0x2ed30f(0x1c3)]))return{};const _0x2c8cbf=_0x542fca;if(_0x381b00[_0x2ed30f(0x144)](_0x2c8cbf['tool_name'],'Bash'))return{};const _0x2c325e=_0x2c8cbf['tool_input'],_0x204bcd=extractBashCommand(_0x2c325e);if(!_0x204bcd)return{};const _0x225d34=parseNovaActCliCommand(_0x204bcd);if(!_0x225d34)return{};_0x2671fa[_0x2ed30f(0x1cc)](_0x225d34,_0x381b00['paEMY'](_0x2671fa['get'](_0x225d34)||0x0,0x1)),_0x2423c4[_0x2ed30f(0x13e)](_0x381b00[_0x2ed30f(0x13c)],{'subcommand':_0x225d34}),_0x2423c4[_0x2ed30f(0x185)](_0x381b00[_0x2ed30f(0x13c)],{'subcommand':_0x225d34,'commandPreview':_0x381b00['IUsQp'](previewNovaActCliCommand,_0x204bcd)}),console['log'](_0x2ed30f(0x1bd)+_0x381b00['aEXLu'](formatNovaActCliLog,_0x204bcd,_0x225d34));if(_0x225d34===_0x2ed30f(0x1be)&&_0x255cbd)try{await _0x255cbd[_0x2ed30f(0x180)]();}catch(_0xb704f5){await _0x2423c4['trackPhaseError'](_0x2ed30f(0x1ec),_0xb704f5,{'transport':_0x2ed30f(0x19e)});}return{};},_0x28506d=async _0x57d1b9=>{const _0x3aa2c5=_0x4de900;if(_0x57d1b9[_0x3aa2c5(0x1f4)]!==_0x3aa2c5(0x1de))return{};const _0x1de47a=_0x57d1b9;if(_0x381b00[_0x3aa2c5(0x204)](_0x1de47a['tool_name'],_0x381b00[_0x3aa2c5(0x187)]))return{};return await _0x2423c4[_0x3aa2c5(0x1c5)](_0x381b00['UNXeS'],_0x1de47a[_0x3aa2c5(0x151)],{'transport':_0x381b00[_0x3aa2c5(0x18d)],'toolName':_0x3aa2c5(0x1c7)}),{};};return{'preToolUseHook':_0x47e1f8,'postToolUseHook':_0x329c3c,'postToolUseFailureHook':_0x28506d,'commandCounts':_0x2671fa};}async function runNovaLifecycleCommand(_0x50cac9){const _0x15fe2c=_0x2f8c61,_0xa557e0={'vgctj':function(_0x15dc55,_0x3b4b6d){return _0x15dc55(_0x3b4b6d);},'Crhuv':function(_0x3a0ade,_0x4c3aad){return _0x3a0ade??_0x4c3aad;}},{novaOptions:_0x13dbeb,commandArgs:_0x4de418,telemetry:_0x1e0542,phase:_0x591df2,metadata:_0x27e941,timeoutMs:_0xc78cf5}=_0x50cac9;_0x1e0542['trackPhaseStart'](_0x591df2,_0x27e941);try{const _0xd7325e=await _0xa557e0['vgctj'](runNovaActCliCommand,{..._0x13dbeb,'commandArgs':_0x4de418,'cwd':process[_0x15fe2c(0x199)](),'env':process['env'],'timeoutMs':_0xa557e0['Crhuv'](_0xc78cf5,NOVA_ACT_CLI_COMMAND_TIMEOUT_MS)});_0x1e0542[_0x15fe2c(0x185)](_0x591df2,{..._0x27e941,'subcommand':_0xd7325e['invocation']['subcommand'],'commandPreview':previewNovaActCliCommand(_0xd7325e[_0x15fe2c(0x1ae)]['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0xd7325e['stdout']),'stderrPreview':_0xa557e0['vgctj'](previewNovaActCliCommand,_0xd7325e[_0x15fe2c(0x1e1)]),'logDir':_0xa557e0[_0x15fe2c(0x142)](extractNovaActLogDir,_0xd7325e[_0x15fe2c(0x13d)])});}catch(_0x1a06e1){await _0x1e0542[_0x15fe2c(0x1c5)](_0x591df2,_0x1a06e1,_0x27e941);throw _0x1a06e1;}}export async function finalizeVerifyFeatureNovaCliSession(_0x2425c7){const _0x9482e3=_0x2f8c61,_0x33c773={'lErkJ':_0x9482e3(0x15f),'NwHnp':_0x9482e3(0x182),'paPig':function(_0x12fff8,_0x486c8e,_0x50060b){return _0x12fff8(_0x486c8e,_0x50060b);},'gmYwc':'snapshot','aMVxn':'nova_act_session_export','AQcNk':_0x9482e3(0x146),'ifNqi':_0x9482e3(0x15d),'HujEh':_0x9482e3(0x184),'jkGti':_0x9482e3(0x1e4),'wwCBc':_0x9482e3(0x215),'QiYWc':'nova-report','YlLQs':_0x9482e3(0x147),'TuHwX':function(_0x12d8e7,_0x8d507e){return _0x12d8e7===_0x8d507e;},'srLYJ':'nova_act_session_close','arJKI':function(_0x151ec4,_0x433d88){return _0x151ec4(_0x433d88);}},{telemetry:_0x3aaa72,novaOptions:_0x2de9d4,cliArtifactDir:_0x3d89d6,transportMetadata:_0x4ddf20,artifactRecorder:_0x2ccebb}=_0x2425c7,_0x574860=[{'phase':_0x33c773['lErkJ'],'commandArgs':['screenshot',_0x33c773[_0x9482e3(0x198)],_0x33c773['paPig'](buildCliArtifactPath,_0x3d89d6,'key_final-state.png')]},{'phase':_0x9482e3(0x17b),'commandArgs':[_0x33c773['gmYwc'],_0x33c773['NwHnp'],buildCliArtifactPath(_0x3d89d6,_0x9482e3(0x1b3))]},{'phase':_0x33c773[_0x9482e3(0x1c6)],'commandArgs':[_0x33c773['AQcNk'],'export',_0x33c773['ifNqi'],'json',_0x33c773[_0x9482e3(0x198)],buildCliArtifactPath(_0x3d89d6,_0x33c773['HujEh'])]},{'phase':_0x33c773['jkGti'],'commandArgs':[_0x33c773[_0x9482e3(0x137)],_0x33c773[_0x9482e3(0x1f1)],_0x9482e3(0x15c),_0x9482e3(0x13a),buildCliArtifactPath(_0x3d89d6,_0x33c773['QiYWc'])]},{'phase':_0x9482e3(0x153),'commandArgs':[_0x33c773[_0x9482e3(0x137)],_0x33c773[_0x9482e3(0x15e)]]}];for(const _0x667367 of _0x574860){_0x33c773[_0x9482e3(0x15a)](_0x667367[_0x9482e3(0x1e8)],_0x33c773['srLYJ'])&&await _0x2ccebb?.['stop']();try{await _0x33c773['arJKI'](runNovaLifecycleCommand,{'novaOptions':_0x2de9d4,'commandArgs':[..._0x667367[_0x9482e3(0x13f)]],'telemetry':_0x3aaa72,'phase':_0x667367[_0x9482e3(0x1e8)],'metadata':_0x4ddf20});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x38154b){const _0x40e824=_0x2f8c61,_0x110b68={'jUfVr':function(_0x38c4db,_0x506d2f,_0x1418df){return _0x38c4db(_0x506d2f,_0x1418df);},'MEKus':function(_0x5decba,_0x4922c2){return _0x5decba(_0x4922c2);},'SbSGM':function(_0x22f48b,_0x7b9d63){return _0x22f48b<_0x7b9d63;},'PYbhK':function(_0x4b5952,_0x644ecd){return _0x4b5952===_0x644ecd;}},{cwd:_0x3f3d0a,cliArtifactDir:_0x43c681,startTime:_0x1decb1}=_0x38154b,_0x3d7d4d=[];await _0x110b68['jUfVr'](mkdir,_0x43c681,{'recursive':!![]});const _0x48d6da=await readdir(_0x3f3d0a,{'withFileTypes':!![]});for(const _0x211fb6 of _0x48d6da){if(!_0x211fb6['isFile']()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN['test'](_0x211fb6['name']))continue;const _0x41a96b=_0x110b68[_0x40e824(0x19a)](join,_0x3f3d0a,_0x211fb6[_0x40e824(0x1af)]),_0x231576=await _0x110b68['MEKus'](stat,_0x41a96b);if(_0x110b68[_0x40e824(0x19d)](_0x231576['mtimeMs']+0x7d0,_0x1decb1))continue;const _0x16f14a=_0x110b68[_0x40e824(0x19a)](buildCliArtifactPath,_0x43c681,_0x211fb6['name']);if(_0x110b68[_0x40e824(0x136)](_0x41a96b,_0x16f14a))continue;await _0x110b68[_0x40e824(0x19a)](rename,_0x41a96b,_0x16f14a),_0x3d7d4d[_0x40e824(0x197)](_0x211fb6['name']);}return _0x3d7d4d['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x522384){const _0x2b5162=_0x2f8c61,_0x1b4503={'dIDao':function(_0x5da905,_0x52fcff,_0x1f7584){return _0x5da905(_0x52fcff,_0x1f7584);},'GcWgP':function(_0x226027,_0xfc0e5e){return _0x226027(_0xfc0e5e);},'IxqWs':function(_0xf79b28,_0x10665e){return _0xf79b28(_0x10665e);}},_0x1b7b51=_0x1b4503[_0x2b5162(0x210)](join,_0x522384,'trace.zip');try{return{'buffer':await _0x1b4503[_0x2b5162(0x194)](readFile,_0x1b7b51),'source':_0x1b7b51};}catch{return{'buffer':await _0x1b4503[_0x2b5162(0x1a7)](zipVerifyFeatureNovaArtifacts,_0x522384),'source':_0x522384};}}async function zipVerifyFeatureNovaArtifacts(_0x523433){const _0x5559b6=_0x2f8c61,_0x357639={'kOkXy':'nova-artifacts.zip','CVqyD':'zip','WRBRA':_0x5559b6(0x1bc),'gZEAP':_0x5559b6(0x1a6),'Abfuh':function(_0x5be911,_0x247911,_0x2949a0){return _0x5be911(_0x247911,_0x2949a0);}},_0x49d301=join(_0x523433,'..',_0x357639[_0x5559b6(0x1d2)]);try{return await execFileAsync(_0x357639[_0x5559b6(0x1eb)],[_0x357639['WRBRA'],_0x49d301,'.','-x',_0x357639[_0x5559b6(0x14d)]],{'cwd':_0x523433}),await readFile(_0x49d301);}finally{await _0x357639['Abfuh'](rm,_0x49d301,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x3a6215){const _0x329a5c=_0x2f8c61,_0x2ffbe8={'QXbzH':function(_0x1c8280,_0x53446a,_0x27244e){return _0x1c8280(_0x53446a,_0x27244e);},'rrvcx':function(_0x3a34d0,_0x2a5b50,_0x51e7bf){return _0x3a34d0(_0x2a5b50,_0x51e7bf);}},_0xb77cdd=_0x2ffbe8['QXbzH'](buildNovaActCliInvocation,_0x3a6215[_0x329a5c(0x14c)],_0x3a6215[_0x329a5c(0x13f)]);return{'command':_0xb77cdd['command'],'args':_0xb77cdd[_0x329a5c(0x20c)],'commandPreview':previewNovaActCliCommand(_0xb77cdd[_0x329a5c(0x145)]),'subcommand':_0xb77cdd[_0x329a5c(0x209)],'sharedOptionsSuffix':_0x2ffbe8[_0x329a5c(0x13b)](buildNovaActCliSharedOptionsSuffix,_0x3a6215['novaOptions'],_0x3a6215[_0x329a5c(0x13f)])};}function _0x49fe(){const _0x188bd4=['**\x20(','content','stopScreencast','values','map','execute\x20Nova\x20browser\x20action','nova_act_command','startScreencast','element','sessionId','cdp_endpoint','\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20in\x20addressedCommentIds.\x0a\x0a','\x20snapshot\x20--output\x20','OAKtU','browser','padStart','startTraceSampling','bMKjc','finally','execute','connectOverCDP','Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','traceSampleCount','nova_act_final_snapshot','.cache','QjIcU','navigate\x20browser','xiQpK','start','capture\x20step\x20`','--output','`\x0a6.\x20Run\x20`','nova-session-export.json','trackPhaseEnd','\x0a\x0a##\x20Additional\x20Notes\x0a','WKwNK','transportMetadata','\x20screenshot\x20--output\x20','98wVluJw','KAMRK','5259774CSyCKd','QAjRW','contexts','aDilY','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','session\x20export','catch','\x0a\x0a##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Nova\x20Act\x20CLI\x20only.\x20Do\x20not\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20The\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20through\x20the\x20browser\x20command\x20prefix\x20below.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20check\x20AWS/auth\x20status,\x20read\x20env\x20files,\x20run\x20setup,\x20or\x20call\x20raw\x20`act\x20browser`.\x0a3.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20`','GcWgP','123UDOLAP','-\x20[','push','NwHnp','cwd','jUfVr','description','`\x0a4.\x20Run\x20one\x20batched\x20`','SbSGM','nova-act-cli','ask','`\x0a-\x20`','TWKYK','en-US','KFOCt','sort','\x0a\x0aThe\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20on\x20PATH.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20or\x20run\x20setup.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20the\x20session\x20create\x20command\x20below.\x0a\x0a1.\x20Run\x20`','nova-user-data/*','IxqWs','tool_input','-loglevel','startAttempted','traceSampleInFlight','data','You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a','invocation','name','tagName','Page.screencastFrameAck','queueTraceSample','final-state.yaml','wait-for','bNwnv','hcwoX','encodeScreencastVideo','canonicalFlow','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','stop','pRWmP','-qr','[nova-act-cli]\x20','session\x20create','PreToolUse','has','FVWGT','utf-8','MWCGi','ISuDz','trackPhaseError','aMVxn','Bash','from','capture\x20key\x20step\x20`','zKhhi','frameCount','set','01_initial.yml','trim','capture\x20snapshot','slice','oEaZw','kOkXy','telemetry','captureTraceSample','607176HvJinz','SmSQv','frameSession','replace','now','send','notes','state','DlGED','PostToolUseFailure','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','stderr','IUsQp','\x20>\x20','nova_act_session_report','rdYqu','session-recording.webm','frameWrites','phase','WFBCN','ffmpeg-','CVqyD','nova_act_artifact_recording','ZVbut','02_final-state.yml','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','4571832YaQdNt','wwCBc','stopped','numeric','hook_event_name','100175mDhuwO','screencastStarted','Caches','trace.zip','LkKOc','getFrameDir','HUueC','snapshot','toLocaleDateString','\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','.act_cli','ffmpeg-mac','AaNyt','base64','tracingStarted','Kndmb','block','length','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x27s\x20origin.\x0a-\x20Do\x20not\x20navigate\x20to\x20any\x20different\x20protocol,\x20host,\x20or\x20port.\x0a-\x20If\x20the\x20browser\x20leaves\x20this\x20origin,\x20navigate\x20back\x20once.\x20If\x20you\x20cannot\x20recover,\x20return\x20evaluation\x20\x22blocked\x22.\x0a','Library','subcommand','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','-version','args','ms-playwright','ffmpeg','params','dIDao','cliArtifactDir','uYpzW','libvpx-vp9','newCDPSession','export','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','fniDA','then','unaddressedComments','BqGNk','screenshot','9004WEzBbB','PYbhK','AQcNk','03_final-state.png','tracing','--output-dir','rrvcx','VwSiA','stdout','trackPhaseStart','commandArgs','create\x20Nova\x20browser\x20session','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','vgctj','traceSampleTimer','zpzlz','shellCommand','session','close','01_initial-state.png','20867418piuUnU','.jpg','mlLUp','novaOptions','gZEAP','verify','export\x20Nova\x20session','-vf','error','evaluate','nova_act_session_close','RRbbM','short','goto','videos','createdAt','context','TuHwX','PnMmM','--report','--format','YlLQs','nova_act_final_screenshot','keys','xnNmC','588405poGJqy','nova_act_command_failure'];_0x49fe=function(){return _0x188bd4;};return _0x49fe();}
|