@ranger-testing/ranger-cli 3.0.0 → 3.0.1-alpha.d9f4572-27

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.
Files changed (81) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/deleteProfile.js +1 -1
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/novaActCli.js +1 -1
  58. package/build/commands/utils/opencodeConfig.js +1 -1
  59. package/build/commands/utils/playwrightCli.js +1 -1
  60. package/build/commands/utils/profileMessages.js +1 -1
  61. package/build/commands/utils/profileSetupBanner.js +1 -1
  62. package/build/commands/utils/projectsConfig.js +1 -1
  63. package/build/commands/utils/rangerConfig.js +1 -1
  64. package/build/commands/utils/rangerRoot.js +1 -1
  65. package/build/commands/utils/resolveProfileContext.js +1 -1
  66. package/build/commands/utils/resolveProfileUrl.js +1 -1
  67. package/build/commands/utils/retry.js +1 -1
  68. package/build/commands/utils/sessionCache.js +1 -1
  69. package/build/commands/utils/settings.js +1 -1
  70. package/build/commands/utils/skillContent.js +1 -1
  71. package/build/commands/utils/skills.js +1 -1
  72. package/build/commands/utils/stitchWebmFiles.js +1 -1
  73. package/build/commands/utils/telemetry.js +1 -1
  74. package/build/commands/utils/tokenRefresh.js +1 -1
  75. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  76. package/build/commands/utils/userApi.js +1 -1
  77. package/build/commands/utils/version.js +1 -1
  78. package/build/commands/verifyFeature.js +1 -1
  79. package/build/commands/verifyFeatureCli.js +1 -1
  80. package/build/commands/verifyFeatureNovaCli.js +1 -1
  81. 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(_0x1c7a88,_0x347501){const _0xcdd52d=_0x3c19,_0x148084=_0x1c7a88();while(!![]){try{const _0x3337f2=-parseInt(_0xcdd52d(0x1ab))/0x1*(parseInt(_0xcdd52d(0x1e6))/0x2)+-parseInt(_0xcdd52d(0x1e1))/0x3*(-parseInt(_0xcdd52d(0x196))/0x4)+parseInt(_0xcdd52d(0x1d5))/0x5*(parseInt(_0xcdd52d(0x1d4))/0x6)+-parseInt(_0xcdd52d(0x177))/0x7*(parseInt(_0xcdd52d(0x1d9))/0x8)+parseInt(_0xcdd52d(0x1a3))/0x9+parseInt(_0xcdd52d(0x1f4))/0xa+parseInt(_0xcdd52d(0x1de))/0xb;if(_0x3337f2===_0x347501)break;else _0x148084['push'](_0x148084['shift']());}catch(_0x43a87e){_0x148084['push'](_0x148084['shift']());}}}(_0x182a,0xc37ae));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';function _0x182a(){const _0x281124=['ATSux','**\x20(','PostToolUse','keys','length','capture\x20snapshot','CAwBT','screenshot','jiIbb','key_04_success-state.png','stop\x20video\x20recording','domRef','hsbOk','selector','qUIiQ','open\x20browser','01_initial.yml','01_mozilla-homepage.png','trackPhaseStart','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','video-stop','zgPzO','check\x20','BegzU','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','stop\x20tracing','725442FbioLo','10cvTsRs','LrEwA','`,\x20then\x20`','ZXJbs','4272FNEXRd','stderr','values','\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.','start\x20video\x20recording','18964286nhaMZs','02_button-clicked.png','trackPhaseEnd','10386PDIuKQ','TBfrE','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','\x22,\x20\x22','PostToolUseFailure','253196zjnbLn','video-start','lHiSZ','phase','join','close','slice','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','NQKwK','\x20open\x20','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','iUMop','FfxWx','playwright_cli_video_stop','1440UUwwyB','02_state.yml','WMrsV','tracing-stop',']\x20**','isFile','split','trackPhaseError','7826QduUef','GvFwP','...','--filename=','\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-\x20Write\x20all\x20artifacts\x20under\x20`','canonicalFlow','tool_name','HHrAD','rDXab','\x20(on\x20element:\x20<','tracing-start','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','element','\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','\x20screenshot\x20--filename\x20','jdjcC','BXjco','\x0a\x0a##\x20Additional\x20Notes\x0a','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','DEBUG','Bash','\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.','`\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`','>\x20\x22','fill','numeric','playwright-cli','textContent','replace','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','324EfLWmE','capture\x20key\x20step\x20`','hAOmJ','match','trace.trace.zip','hook_event_name','subcommand','\x20snapshot\x20--filename\x20','invocation','press\x20','push','playwright_cli_close','trim','3755448dbyKyC','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','`\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`','toLocaleDateString','test','[ranger-verification-agent]\x20','ZwHNV','run-code','10DRgqEA','viqZJ','notes','UyVBg','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','\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','unaddressedComments','VXCIP','name','FUosW','capture\x20step\x20`','playwright_cli_tracing_stop','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','press','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'];_0x182a=function(){return _0x281124;};return _0x182a();}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(_0x7aa1a6,_0xa7a565=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x38ceb3=_0x3c19,_0xab9455={'zgPzO':function(_0x530e31,_0x57408e){return _0x530e31+_0x57408e;}};return _0x7aa1a6[_0x38ceb3(0x1be)]>_0xa7a565?_0xab9455[_0x38ceb3(0x1cf)](_0x7aa1a6['slice'](0x0,_0xa7a565),_0x38ceb3(0x179)):_0x7aa1a6;}function buildCliArtifactPath(_0x3846d7,_0x5c31f2){return join(_0x3846d7,_0x5c31f2);}function toStepDisplayName(_0x522a96){const _0x49b437=_0x3c19,_0x49ff61=basename(_0x522a96)[_0x49b437(0x194)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x49ff61,'isKeyStep':/^key_/i['test'](basename(_0x522a96))};}function extractShellValue(_0x4fabd1){if(!_0x4fabd1)return null;return _0x4fabd1[0x1]??_0x4fabd1[0x2]??_0x4fabd1[0x3]??null;}function extractFilenameOption(_0x4faad2){const _0x536a66=_0x3c19;return extractShellValue(_0x4faad2[_0x536a66(0x199)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x4a6901,_0x2fec16){const _0x11b441=_0x3c19,_0x53967f=_0x2fec16[_0x11b441(0x194)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return extractShellValue(_0x4a6901['match'](new RegExp('(?:^|\x5cs)'+_0x53967f+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x51a181){const _0xd5e5d3=_0x3c19,_0x59d06b={'qUIiQ':function(_0x5ada7d,_0xbccea4,_0x143239){return _0x5ada7d(_0xbccea4,_0x143239);}};if(!_0x51a181)return'target';if(/^e\d+$/i[_0xd5e5d3(0x1a7)](_0x51a181))return'ref\x20'+_0x51a181;return JSON['stringify'](_0x59d06b[_0xd5e5d3(0x1c8)](truncatePreview,_0x51a181,0x78));}function formatPlaywrightCliLog(_0x42cf0d,_0x44dabe){const _0x12c5e4=_0x3c19,_0x12f49f={'nOPGE':'open','UyVBg':function(_0x372c96,_0x1d51bd,_0x302a05){return _0x372c96(_0x1d51bd,_0x302a05);},'pvBeh':_0x12c5e4(0x1c9),'ATSux':'start\x20tracing','hwXbX':_0x12c5e4(0x1d3),'hsbOk':_0x12c5e4(0x1dd),'nWkJj':'video-stop','BXjco':_0x12c5e4(0x1c4),'FUosW':_0x12c5e4(0x1c1),'rDXab':function(_0x45ff22,_0x2501bc){return _0x45ff22(_0x2501bc);},'GZTTD':'check','OunuL':_0x12c5e4(0x1b8),'lHiSZ':_0x12c5e4(0x1aa),'JECuE':'run\x20custom\x20Playwright\x20code','HAyKm':'tab-new','MdEkE':'select\x20tab'};switch(_0x44dabe){case _0x12f49f['nOPGE']:{const _0x24d3d0=_0x12f49f[_0x12c5e4(0x1ae)](extractFirstCommandArgument,_0x42cf0d,_0x44dabe);return _0x24d3d0?'open\x20'+_0x24d3d0:_0x12f49f['pvBeh'];}case _0x12c5e4(0x182):return _0x12f49f[_0x12c5e4(0x1ba)];case _0x12c5e4(0x1f7):return _0x12f49f['hwXbX'];case _0x12c5e4(0x1e7):return _0x12f49f[_0x12c5e4(0x1c6)];case _0x12f49f['nWkJj']:return _0x12f49f[_0x12c5e4(0x188)];case'snapshot':{const _0x8e5c27=extractFilenameOption(_0x42cf0d);if(!_0x8e5c27)return _0x12c5e4(0x1bf);const {name:_0x2fab14}=toStepDisplayName(_0x8e5c27);return'capture\x20snapshot\x20`'+_0x2fab14+'`';}case _0x12f49f[_0x12c5e4(0x1b4)]:{const _0x21a32f=extractFilenameOption(_0x42cf0d);if(!_0x21a32f)return'capture\x20screenshot';const {name:_0x6761e1,isKeyStep:_0x255356}=toStepDisplayName(_0x21a32f);return _0x255356?_0x12c5e4(0x197)+_0x6761e1+'`':_0x12c5e4(0x1b5)+_0x6761e1+'`';}case'click':return'click\x20'+_0x12f49f['rDXab'](formatCommandTarget,extractFirstCommandArgument(_0x42cf0d,_0x44dabe));case _0x12f49f['GZTTD']:return _0x12c5e4(0x1d0)+_0x12f49f['rDXab'](formatCommandTarget,extractFirstCommandArgument(_0x42cf0d,_0x44dabe));case _0x12c5e4(0x190):return'fill\x20'+_0x12f49f[_0x12c5e4(0x180)](formatCommandTarget,extractFirstCommandArgument(_0x42cf0d,_0x44dabe));case _0x12f49f['OunuL']:return _0x12c5e4(0x19f)+formatCommandTarget(extractFirstCommandArgument(_0x42cf0d,_0x44dabe));case _0x12f49f[_0x12c5e4(0x1e8)]:return _0x12f49f['JECuE'];case _0x12f49f['HAyKm']:{const _0x179c7a=_0x12f49f['UyVBg'](extractFirstCommandArgument,_0x42cf0d,_0x44dabe);return _0x179c7a?'open\x20new\x20tab\x20'+_0x179c7a:'open\x20new\x20tab';}case'tab-select':{const _0x118db1=_0x12f49f['UyVBg'](extractFirstCommandArgument,_0x42cf0d,_0x44dabe);return _0x118db1?'select\x20tab\x20'+_0x118db1:_0x12f49f['MdEkE'];}default:return _0x44dabe;}}function extractPlaywrightCliToolDescription(_0x3f5241){const _0x35e478=_0x3c19,_0x58a1de={'CYJpP':'string','MLdNJ':function(_0xff9acf,_0x408462){return _0xff9acf>_0x408462;}},_0x27ced1=_0x3f5241['description'];if(typeof _0x27ced1!==_0x58a1de['CYJpP'])return null;const _0x47d8bf=_0x27ced1[_0x35e478(0x1a2)]()['replace'](/\s+/g,'\x20');return _0x58a1de['MLdNJ'](_0x47d8bf[_0x35e478(0x1be)],0x0)?_0x47d8bf:null;}export function formatPlaywrightCliConsoleLogMessage(_0xc865b4,_0x5d9f54,_0x5040b0){const _0x1bcad7=_0x3c19,_0x2023ac={'jdjcC':function(_0xe4eab0,_0x56936c,_0x37a6e5){return _0xe4eab0(_0x56936c,_0x37a6e5);}},_0x4424bc=_0x2023ac[_0x1bcad7(0x187)](formatPlaywrightCliLog,_0x5d9f54,_0x5040b0),_0x500325=extractPlaywrightCliToolDescription(_0xc865b4);if(!_0x500325)return'[playwright-cli]\x20'+_0x4424bc;if(process['env'][_0x1bcad7(0x18b)])return _0x1bcad7(0x1a8)+_0x500325+'\x20('+_0x4424bc+')';return'[ranger-verification-agent]\x20'+_0x500325;}export function buildVerifyFeatureCliDebugPrompt(_0x252876,_0x2216e0){const _0x4ad64a=_0x3c19,_0x3cc94e={'iUMop':function(_0x2ecdfc,_0x1de482,_0x32c06a){return _0x2ecdfc(_0x1de482,_0x32c06a);},'lNjyl':'00_mozilla-homepage.yml','ksXrf':function(_0x37a6c0,_0x2ecdec){return _0x37a6c0(_0x2ecdec);},'VXCIP':function(_0x51ac0e,_0xcf56d2){return _0x51ac0e(_0xcf56d2);}},_0x31eb90=_0x3cc94e[_0x4ad64a(0x1f1)](buildCliArtifactPath,_0x2216e0,_0x3cc94e['lNjyl']),_0xa92cbf=_0x3cc94e['iUMop'](buildCliArtifactPath,_0x2216e0,_0x4ad64a(0x1cb)),_0x5f21e3=_0x3cc94e[_0x4ad64a(0x1f1)](buildCliArtifactPath,_0x2216e0,'02_learn-more.yml'),_0x18ca81=buildCliArtifactPath(_0x2216e0,'03_learn-more.png'),_0x38c6c4=quoteShellArg(_0x31eb90),_0x4625a4=_0x3cc94e['ksXrf'](quoteShellArg,_0xa92cbf),_0x19f7d7=_0x3cc94e[_0x4ad64a(0x1b2)](quoteShellArg,_0x5f21e3),_0x102f9d=quoteShellArg(_0x18ca81);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x252876+'\x0a\x0a1.\x20Run\x20`'+_0x252876+_0x4ad64a(0x183)+_0x252876+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x252876+_0x4ad64a(0x1cd)+_0x2216e0+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x252876+'\x20snapshot\x20--filename\x20'+_0x38c6c4+_0x4ad64a(0x1af)+_0x252876+'\x20screenshot\x20--filename\x20'+_0x4625a4+_0x4ad64a(0x1a4)+_0x252876+'\x20snapshot\x20--filename\x20'+_0x19f7d7+'`\x0a9.\x20Run\x20`'+_0x252876+'\x20screenshot\x20--filename\x20'+_0x102f9d+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x46ccca){const _0x3ea1bb=_0x3c19,_0x6b3613={'Jgfoy':'short','BegzU':'Reviewer','LrEwA':_0x3ea1bb(0x1ca),'FfxWx':function(_0x33624f,_0x29ed02,_0x407aa0){return _0x33624f(_0x29ed02,_0x407aa0);},'eekLv':function(_0x406c16,_0xea4798){return _0x406c16(_0xea4798);},'WMrsV':function(_0x1bf5e7,_0x209dff){return _0x1bf5e7>_0x209dff;},'WDlEz':function(_0x1019b7,_0x10185b){return _0x1019b7(_0x10185b);},'GvFwP':_0x3ea1bb(0x1df),'HgkAg':'03_result-visible.png'},{checklistItem:_0x579046,itemFeedback:_0x50a4f8,taskDescription:_0x11019b,cliCommandPrefix:_0x448c3b,cliArtifactDir:_0x4f5f59,isCdpMode:_0x4c5074,url:_0x5e16d7,cdpEndpoint:_0x2dde04,loginInstructions:_0xc6888c}=_0x46ccca,_0x45e5bb=buildCliArtifactPath(_0x4f5f59,_0x6b3613[_0x3ea1bb(0x1d6)]),_0x1eb39f=buildCliArtifactPath(_0x4f5f59,_0x3ea1bb(0x1f5)),_0x511d37=_0x6b3613[_0x3ea1bb(0x1f2)](buildCliArtifactPath,_0x4f5f59,'key_03_success-state.png'),_0x41cd45=_0x6b3613[_0x3ea1bb(0x1f2)](buildCliArtifactPath,_0x4f5f59,'01_initial-state.png'),_0x3a62fd=quoteShellArg(_0x45e5bb),_0x3d5a55=quoteShellArg(_0x1eb39f),_0x45f325=_0x6b3613['eekLv'](quoteShellArg,_0x511d37),_0x410431=quoteShellArg(_0x41cd45),_0x4df4b8=_0x579046['notes']?_0x3ea1bb(0x189)+_0x579046[_0x3ea1bb(0x1ad)]:'';let _0x274c81='';if(_0x50a4f8&&_0x6b3613[_0x3ea1bb(0x1f6)](_0x50a4f8[_0x3ea1bb(0x1b1)]['length'],0x0)){const _0x6aa7cd=_0x50a4f8[_0x3ea1bb(0x1b1)]['map'](_0x43e7fe=>{const _0x1a7da5=_0x3ea1bb,_0x4402f1=new Date(_0x43e7fe['createdAt'])[_0x1a7da5(0x1a6)]('en-US',{'month':_0x6b3613['Jgfoy'],'day':_0x1a7da5(0x191)}),_0x445879=_0x43e7fe['authorName']||_0x43e7fe['authorEmail']||_0x6b3613[_0x1a7da5(0x1d1)],_0x1f7360=_0x43e7fe[_0x1a7da5(0x1c5)]?_0x1a7da5(0x181)+(_0x43e7fe['domRef'][_0x1a7da5(0x1c7)][_0x1a7da5(0x1fa)]('\x20>\x20')['pop']()?.[_0x1a7da5(0x1fa)](':')[0x0]||_0x1a7da5(0x184))+_0x1a7da5(0x18f)+(_0x43e7fe[_0x1a7da5(0x1c5)][_0x1a7da5(0x193)]||'')[_0x1a7da5(0x1ec)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x43e7fe['id']+_0x1a7da5(0x1f8)+_0x445879+_0x1a7da5(0x1bb)+_0x4402f1+'):\x20\x22'+_0x43e7fe['content']+'\x22'+_0x1f7360;})[_0x3ea1bb(0x1ea)]('\x0a');_0x274c81='\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'+_0x6aa7cd;}const _0x14a582=_0x50a4f8?.[_0x3ea1bb(0x17d)]?_0x3ea1bb(0x195)+_0x50a4f8['canonicalFlow']:'',_0x15a3fb=_0x4c5074?_0x3ea1bb(0x1ed)+_0x2dde04+'.\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'+_0x5e16d7+_0x3ea1bb(0x185),_0x47b68a=_0x5e16d7?_0x6b3613['WDlEz'](quoteShellArg,_0x5e16d7):'',_0x394fca=_0x4c5074?_0x3ea1bb(0x1e3)+_0x448c3b+'\x20open`,\x20then\x20`'+_0x448c3b+'\x20tracing-start`,\x20then\x20`'+_0x448c3b+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x4f5f59+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x448c3b+_0x3ea1bb(0x19d)+_0x3a62fd+_0x3ea1bb(0x1a5)+_0x448c3b+_0x3ea1bb(0x186)+_0x410431+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x448c3b+_0x3ea1bb(0x1b0):_0x3ea1bb(0x1e3)+_0x448c3b+_0x3ea1bb(0x1ef)+_0x47b68a+_0x3ea1bb(0x1d7)+_0x448c3b+'\x20tracing-start`,\x20then\x20`'+_0x448c3b+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x4f5f59+_0x3ea1bb(0x18a)+_0x448c3b+'\x20snapshot\x20--filename\x20'+_0x3a62fd+_0x3ea1bb(0x18e)+_0x448c3b+'\x20screenshot\x20--filename\x20'+_0x410431+_0x3ea1bb(0x1f0)+_0x448c3b+'\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',_0x210f8a=_0x4c5074?_0x3ea1bb(0x17b):_0x3ea1bb(0x18d),_0x5adffd=_0xc6888c?_0x3ea1bb(0x1d2)+_0xc6888c+_0x3ea1bb(0x1dc):'';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'+_0x579046['description']+_0x4df4b8+_0x274c81+_0x14a582+_0x3ea1bb(0x1b7)+_0x11019b+'\x0a\x0a'+_0x15a3fb+_0x5adffd+'\x0a\x0a'+_0x394fca+_0x3ea1bb(0x1b9)+_0x448c3b+_0x3ea1bb(0x17c)+_0x4f5f59+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x3d5a55+'`\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'+_0x45f325+'`\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`'+_0x4f5f59+'`:\x20\x22'+_0x41cd45+_0x3ea1bb(0x1e4)+_0x6b3613['FfxWx'](buildCliArtifactPath,_0x4f5f59,_0x6b3613[_0x3ea1bb(0x178)])+'\x22,\x20\x22'+_0x6b3613[_0x3ea1bb(0x1f2)](buildCliArtifactPath,_0x4f5f59,_0x6b3613['HgkAg'])+'\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'+buildCliArtifactPath(_0x4f5f59,_0x3ea1bb(0x1c3))+'\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'+_0x210f8a+'\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.';}function _0x3c19(_0x57809f,_0x1cc7bf){_0x57809f=_0x57809f-0x176;const _0x182ac7=_0x182a();let _0x3c1932=_0x182ac7[_0x57809f];return _0x3c1932;}export function summarizeVerifyFeatureCliCommandAvailability(_0x54f818){const _0x393ec6=_0x3c19,_0x2665c9={'jiIbb':function(_0x59a7e7,_0x5363b6){return _0x59a7e7===_0x5363b6;}},_0xcb65b8=[..._0x54f818[_0x393ec6(0x1bd)]()]['sort']();let _0x18358a=0x0;for(const _0xe421c2 of _0x54f818[_0x393ec6(0x1db)]()){_0x18358a+=_0xe421c2;}return{'cliCommandCount':_0x18358a,'cliCommandsSeen':_0xcb65b8,'noCliCommandsCalled':_0x2665c9[_0x393ec6(0x1c2)](_0x18358a,0x0)};}export function createVerifyFeatureCliHooks(_0x4c93f3){const _0x1db705=_0x3c19,_0x53e546={'ZXJbs':function(_0x2beb93,_0x59461e){return _0x2beb93!==_0x59461e;},'NQKwK':function(_0x487de8,_0x404b03){return _0x487de8(_0x404b03);},'CAwBT':'tool_call','rCFNX':_0x1db705(0x192),'HHrAD':_0x1db705(0x1e5),'ZwHNV':function(_0x46f427,_0x4eb3ba){return _0x46f427!==_0x4eb3ba;},'wJsLj':'Bash'},_0x6e3876=new Map(),_0x1d84cf=async _0x3965e3=>{const _0x541bb9=_0x1db705;if(_0x3965e3['hook_event_name']!==_0x541bb9(0x1bc))return{};const _0x5ea594=_0x3965e3;if(_0x53e546['ZXJbs'](_0x5ea594['tool_name'],_0x541bb9(0x18c)))return{};const _0x4660d7=_0x5ea594['tool_input'],_0x356d1c=_0x53e546[_0x541bb9(0x1ee)](extractBashCommand,_0x4660d7);if(!_0x356d1c)return{};const _0x736a57=parsePlaywrightCliCommand(_0x356d1c);if(!_0x736a57)return{};return _0x6e3876['set'](_0x736a57,(_0x6e3876['get'](_0x736a57)||0x0)+0x1),_0x4c93f3['trackPhaseStart'](_0x53e546[_0x541bb9(0x1c0)],{'transport':_0x53e546['rCFNX'],'toolName':_0x736a57}),_0x4c93f3[_0x541bb9(0x1e0)](_0x53e546[_0x541bb9(0x1c0)],{'transport':_0x541bb9(0x192),'toolName':_0x736a57,'bashCommandPreview':truncatePreview(_0x356d1c)}),_0x736a57!=='snapshot'&&console['log'](formatPlaywrightCliConsoleLogMessage(_0x4660d7,_0x356d1c,_0x736a57)),{};},_0x17f07e=async _0x520dfb=>{const _0x544493=_0x1db705;if(_0x53e546[_0x544493(0x1d8)](_0x520dfb[_0x544493(0x19b)],_0x53e546[_0x544493(0x17f)]))return{};const _0x21b24f=_0x520dfb;if(_0x53e546[_0x544493(0x1a9)](_0x21b24f[_0x544493(0x17e)],_0x53e546['wJsLj']))return{};return await _0x4c93f3[_0x544493(0x176)]('tool_failure',_0x21b24f['error'],{'transport':_0x544493(0x192),'toolName':_0x544493(0x18c)}),{};};return{'postToolUseHook':_0x1d84cf,'postToolUseFailureHook':_0x17f07e,'commandCounts':_0x6e3876};}async function runPlaywrightCliLifecycleCommand(_0x1b8b71){const _0x13b0d0=_0x3c19,_0x82f3e4={'oybru':function(_0x3ff6e1,_0x379dc8,_0x2202d5){return _0x3ff6e1(_0x379dc8,_0x2202d5);}},{sessionId:_0x5d56a9,configPath:_0x38af11,commandArgs:_0x4be89d,env:_0x41dcb9,telemetry:_0x58d942,phase:_0x367b27,metadata:_0x41aac4,timeoutMs:_0x6a1e65}=_0x1b8b71;_0x58d942[_0x13b0d0(0x1cc)](_0x367b27,_0x41aac4);try{const _0x5db522=await runPlaywrightCliCommand({'sessionId':_0x5d56a9,'configPath':_0x38af11,'commandArgs':_0x4be89d,'cwd':process['cwd'](),'env':_0x41dcb9,'timeoutMs':_0x6a1e65??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x58d942[_0x13b0d0(0x1e0)](_0x367b27,{..._0x41aac4,'subcommand':_0x5db522[_0x13b0d0(0x19e)][_0x13b0d0(0x19c)],'stdoutPreview':truncatePreview(_0x5db522['stdout'],0x7d0),'stderrPreview':_0x82f3e4['oybru'](truncatePreview,_0x5db522[_0x13b0d0(0x1da)],0x7d0)});}catch(_0x5e5da1){await _0x58d942['trackPhaseError'](_0x367b27,_0x5e5da1,_0x41aac4);throw _0x5e5da1;}}export async function finalizeVerifyFeatureCliSession(_0x552e86){const _0x436dbd=_0x3c19,_0x270209={'viqZJ':_0x436dbd(0x1f7),'YKTmw':function(_0x4db40b,_0x5679ee,_0x59eab6){return _0x4db40b(_0x5679ee,_0x59eab6);},'nysWD':'session-recording.webm'},{telemetry:_0x2f20c8,sessionId:_0x4d1354,configPath:_0x4418b5,cliArtifactDir:_0x218511,env:_0xb70930,transportMetadata:_0x334b40}=_0x552e86,_0x17a209=[{'phase':_0x436dbd(0x1b6),'commandArgs':[_0x270209[_0x436dbd(0x1ac)]]},{'phase':_0x436dbd(0x1f3),'commandArgs':[_0x436dbd(0x1ce),_0x436dbd(0x17a)+_0x270209['YKTmw'](buildCliArtifactPath,_0x218511,_0x270209['nysWD'])]},{'phase':_0x436dbd(0x1a1),'commandArgs':[_0x436dbd(0x1eb)]}];for(const _0x3c3fa2 of _0x17a209){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x4d1354,'configPath':_0x4418b5,'commandArgs':[..._0x3c3fa2['commandArgs']],'env':_0xb70930,'telemetry':_0x2f20c8,'phase':_0x3c3fa2[_0x436dbd(0x1e9)],'metadata':_0x334b40});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x41ce23){const _0x45edb4=_0x3c19,_0x52156d={'hAOmJ':function(_0x4aa695,_0x527f13,_0x430ed4){return _0x4aa695(_0x527f13,_0x430ed4);}},_0x1162c7=['trace.zip',_0x45edb4(0x19a)];for(const _0x3a4518 of _0x1162c7){const _0x3b8847=_0x52156d[_0x45edb4(0x198)](join,_0x41ce23,_0x3a4518);try{return{'buffer':await readFile(_0x3b8847),'source':_0x3b8847};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x457a4f){const _0x4e9415=_0x3c19,_0x939e76={'hJLFu':function(_0xe3d3b4,_0x3903f9,_0x456f7f){return _0xe3d3b4(_0x3903f9,_0x456f7f);},'vOVXW':function(_0x3cf6ec,_0x174f69){return _0x3cf6ec(_0x174f69);},'TBfrE':function(_0x333ac6,_0x43644b){return _0x333ac6+_0x43644b;}},{cwd:_0x59c9fd,cliArtifactDir:_0x1edc62,startTime:_0x47af42}=_0x457a4f,_0x365e3f=[];await mkdir(_0x1edc62,{'recursive':!![]});const _0xd9cccf=await readdir(_0x59c9fd,{'withFileTypes':!![]});for(const _0x5bd4df of _0xd9cccf){if(!_0x5bd4df[_0x4e9415(0x1f9)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x4e9415(0x1a7)](_0x5bd4df[_0x4e9415(0x1b3)]))continue;const _0x180238=_0x939e76['hJLFu'](join,_0x59c9fd,_0x5bd4df['name']),_0x149d2d=await _0x939e76['vOVXW'](stat,_0x180238);if(_0x939e76[_0x4e9415(0x1e2)](_0x149d2d['mtimeMs'],0x7d0)<_0x47af42)continue;const _0x5c695f=buildCliArtifactPath(_0x1edc62,_0x5bd4df[_0x4e9415(0x1b3)]);if(_0x180238===_0x5c695f)continue;await rename(_0x180238,_0x5c695f),_0x365e3f[_0x4e9415(0x1a0)](_0x5bd4df[_0x4e9415(0x1b3)]);}return _0x365e3f['sort']();}
@@ -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 _0x17106c=_0x3486;(function(_0x52beed,_0x3ef8f5){const _0x33c191=_0x3486,_0x4f743a=_0x52beed();while(!![]){try{const _0x2f347f=-parseInt(_0x33c191(0x1bf))/0x1+-parseInt(_0x33c191(0x222))/0x2+parseInt(_0x33c191(0x275))/0x3+parseInt(_0x33c191(0x245))/0x4*(parseInt(_0x33c191(0x230))/0x5)+parseInt(_0x33c191(0x244))/0x6+-parseInt(_0x33c191(0x25f))/0x7+-parseInt(_0x33c191(0x1f0))/0x8*(-parseInt(_0x33c191(0x25b))/0x9);if(_0x2f347f===_0x3ef8f5)break;else _0x4f743a['push'](_0x4f743a['shift']());}catch(_0x177fff){_0x4f743a['push'](_0x4f743a['shift']());}}}(_0x121c,0x2f060));function _0x3486(_0x2e2194,_0x4f403d){_0x2e2194=_0x2e2194-0x19f;const _0x121cf1=_0x121c();let _0x348615=_0x121cf1[_0x2e2194];return _0x348615;}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';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([_0x17106c(0x274),_0x17106c(0x22f),'verify','ask',_0x17106c(0x247),'wait-for','snapshot','screenshot']),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x2736d2,_0x49a4c3){return join(_0x2736d2,_0x49a4c3);}export class NovaActArtifactRecorder{[_0x17106c(0x263)];[_0x17106c(0x232)]=null;['context']=null;[_0x17106c(0x1ad)]=null;['frameWrites']=[];[_0x17106c(0x1b5)]=0x0;['traceSampleCount']=0x0;['traceSampleTimer']=null;['traceSampleInFlight']=null;[_0x17106c(0x1b9)]=![];['screencastStarted']=![];['startAttempted']=![];['stopped']=![];constructor(_0x38c3a1){this['params']=_0x38c3a1;}async['start'](){const _0x2eb8f0=_0x17106c,_0x4dcfd8={'gCJbY':function(_0x362191,_0x30ff5e,_0x39302d){return _0x362191(_0x30ff5e,_0x39302d);},'Gffll':'Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','NHYLO':_0x2eb8f0(0x270)};if(this['startAttempted'])return;this[_0x2eb8f0(0x1f5)]=!![];const _0x32198d=await this['readSessionMetadataWithRetry'](),_0x30ea3a=_0x32198d[_0x2eb8f0(0x1a1)];if(!_0x30ea3a)throw new Error('Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20'+this['params'][_0x2eb8f0(0x1e9)][_0x2eb8f0(0x26b)]);await _0x4dcfd8['gCJbY'](mkdir,this['params'][_0x2eb8f0(0x1d3)],{'recursive':!![]}),this['browser']=await chromium['connectOverCDP'](_0x30ea3a,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x2eb8f0(0x1e3)]=this['browser'][_0x2eb8f0(0x20a)]()[0x0]??null;if(!this['context'])throw new Error(_0x4dcfd8['Gffll']);await this[_0x2eb8f0(0x1e3)]['tracing'][_0x2eb8f0(0x205)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this['startTraceSampling'](),await this[_0x2eb8f0(0x23c)](),this[_0x2eb8f0(0x263)][_0x2eb8f0(0x25c)]['trackPhaseStart'](_0x4dcfd8['NHYLO'],{...this[_0x2eb8f0(0x263)][_0x2eb8f0(0x268)],'cdpEndpoint':_0x30ea3a,'browserPid':_0x32198d[_0x2eb8f0(0x1ac)],'sessionState':_0x32198d['state']}),this['params']['telemetry'][_0x2eb8f0(0x24d)]('nova_act_artifact_recording',{...this['params']['transportMetadata'],'tracingStarted':this['tracingStarted'],'screencastStarted':this['screencastStarted']});}async['stop'](){const _0x1d06fb=_0x17106c,_0x2cd91f={'zwOFh':_0x1d06fb(0x21a),'JHgRX':function(_0x3e6235,_0x154948,_0x2fa367){return _0x3e6235(_0x154948,_0x2fa367);}};if(this[_0x1d06fb(0x1e2)])return;this[_0x1d06fb(0x1e2)]=!![];const _0x4f618c={...this['params']['transportMetadata'],'frameCount':this[_0x1d06fb(0x1b5)],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this[_0x1d06fb(0x1b9)],'screencastStarted':this[_0x1d06fb(0x22d)]};this['params'][_0x1d06fb(0x25c)]['trackPhaseStart'](_0x2cd91f['zwOFh'],_0x4f618c);try{await this[_0x1d06fb(0x238)](),await this[_0x1d06fb(0x24a)](),await this['stopScreencast'](),await Promise[_0x1d06fb(0x220)](this[_0x1d06fb(0x25a)]);this[_0x1d06fb(0x1e3)]&&this[_0x1d06fb(0x1b9)]&&await this['context']['tracing'][_0x1d06fb(0x1c5)]({'path':_0x2cd91f[_0x1d06fb(0x1eb)](buildCliArtifactPath,this['params'][_0x1d06fb(0x1d3)],_0x1d06fb(0x252))});const _0x408490=await this[_0x1d06fb(0x20b)]();this[_0x1d06fb(0x263)]['telemetry']['trackPhaseEnd'](_0x2cd91f[_0x1d06fb(0x1b8)],{..._0x4f618c,'videoPath':_0x408490});}catch(_0x195f6f){await this['params'][_0x1d06fb(0x25c)][_0x1d06fb(0x21b)](_0x2cd91f[_0x1d06fb(0x1b8)],_0x195f6f,_0x4f618c);}finally{await this['browser']?.[_0x1d06fb(0x23b)]()[_0x1d06fb(0x227)](()=>undefined),this[_0x1d06fb(0x232)]=null,this['context']=null,this[_0x1d06fb(0x1ad)]=null;}}async['readSessionMetadataWithRetry'](){const _0x5716a6=_0x17106c,_0x307552={'bwMrQ':function(_0x393d77,_0x3a8645,_0x208178,_0x224edc,_0x5a1938,_0x5ae08c){return _0x393d77(_0x3a8645,_0x208178,_0x224edc,_0x5a1938,_0x5ae08c);},'luRMR':'browser','ASBPa':_0x5716a6(0x1a7),'MbzBL':function(_0x46d278,_0x452ac4,_0x56e46c){return _0x46d278(_0x452ac4,_0x56e46c);},'fjbAo':function(_0x4eac38,_0x5e4809){return _0x4eac38(_0x5e4809);},'hyIhG':function(_0x4e3f08,_0x23f1de){return _0x4e3f08<_0x23f1de;},'eZmMT':function(_0x26e299,_0x38da81){return _0x26e299 instanceof _0x38da81;}},_0x24921e=_0x307552['bwMrQ'](join,homedir(),_0x5716a6(0x1cc),_0x307552[_0x5716a6(0x240)],_0x307552[_0x5716a6(0x1fd)],this[_0x5716a6(0x263)]['novaOptions']['sessionId']+_0x5716a6(0x273)),_0x3fce5e=Date[_0x5716a6(0x1bd)]();let _0x30f190;do{try{const _0x4c6ec6=JSON[_0x5716a6(0x1fc)](await _0x307552[_0x5716a6(0x25e)](readFile,_0x24921e,_0x5716a6(0x1c3)));if(_0x4c6ec6['cdp_endpoint'])return _0x4c6ec6;_0x30f190=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0x24921e);}catch(_0x230a3a){_0x30f190=_0x230a3a;}await _0x307552[_0x5716a6(0x1d2)](delay,0x64);}while(_0x307552['hyIhG'](Date['now']()-_0x3fce5e,NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x307552[_0x5716a6(0x23d)](_0x30f190,Error))throw _0x30f190;throw new Error('Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20'+_0x24921e);}async['startScreencast'](){const _0x914176=_0x17106c,_0x43ddee={'yuQVc':function(_0x1e4ae2,_0x501488,_0x335bd7){return _0x1e4ae2(_0x501488,_0x335bd7);},'ZIUhd':'Page.screencastFrame','sCwpf':_0x914176(0x260)};if(!this['context'])return;const _0x52f154=this['context']['pages']()[0x0];if(!_0x52f154)return;const _0x27c934=this['getFrameDir']();await mkdir(_0x27c934,{'recursive':!![]});const _0x1825cd=await this['context'][_0x914176(0x1c2)](_0x52f154);this[_0x914176(0x1ad)]=_0x1825cd,_0x1825cd['on'](_0x43ddee[_0x914176(0x221)],_0x11932e=>{const _0x4b4fe3=_0x914176,_0xe482cb=++this['frameCount'],_0x24672b=_0x43ddee[_0x4b4fe3(0x242)](join,_0x27c934,_0x4b4fe3(0x225)+String(_0xe482cb)[_0x4b4fe3(0x1ea)](0x6,'0')+'.jpg'),_0x3cd56f=writeFile(_0x24672b,Buffer[_0x4b4fe3(0x1ce)](_0x11932e['data'],_0x4b4fe3(0x213)))[_0x4b4fe3(0x227)](()=>undefined)[_0x4b4fe3(0x22e)](()=>_0x1825cd['send']('Page.screencastFrameAck',{'sessionId':_0x11932e[_0x4b4fe3(0x26b)]}))[_0x4b4fe3(0x21f)](()=>undefined)['catch'](()=>undefined);this[_0x4b4fe3(0x25a)][_0x4b4fe3(0x1b6)](_0x3cd56f);}),await _0x1825cd['send'](_0x43ddee['sCwpf'],{'format':_0x914176(0x22c),'quality':0x4b,'everyNthFrame':0x6}),this[_0x914176(0x22d)]=!![];}async['stopScreencast'](){const _0x31891b=_0x17106c;if(!this['frameSession']||!this[_0x31891b(0x22d)])return;await this['frameSession']['send'](_0x31891b(0x209))['catch'](()=>undefined);}['startTraceSampling'](){const _0x304578=_0x17106c,_0x1dedd4={'bMjSo':function(_0x2ce1b1,_0x12e9a1,_0x2b3fe0){return _0x2ce1b1(_0x12e9a1,_0x2b3fe0);}};this['queueTraceSample'](),this['traceSampleTimer']=_0x1dedd4['bMjSo'](setInterval,()=>this[_0x304578(0x21d)](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x17106c(0x21d)](){const _0x5b8978=_0x17106c;if(this[_0x5b8978(0x231)])return;this['traceSampleInFlight']=this[_0x5b8978(0x24a)]()['finally'](()=>{this['traceSampleInFlight']=null;});}async['stopTraceSampling'](){const _0x326b18=_0x17106c,_0x5f3589={'kDdcA':function(_0x321daa,_0x3d085b){return _0x321daa(_0x3d085b);}};this['traceSampleTimer']&&(_0x5f3589[_0x326b18(0x20e)](clearInterval,this['traceSampleTimer']),this[_0x326b18(0x24b)]=null),await this['traceSampleInFlight']?.['catch'](()=>undefined);}async[_0x17106c(0x24a)](){const _0x57bddd=_0x17106c,_0x24fe36={'cgyHi':_0x57bddd(0x1f6)},_0x4890bf=this['context']?.['pages']()[0x0];if(!_0x4890bf)return;try{await _0x4890bf[_0x57bddd(0x1dc)](_0x24fe36['cgyHi'])[_0x57bddd(0x25d)](_0x3d311a=>_0x3d311a[_0x57bddd(0x1f4)],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async[_0x17106c(0x20b)](){const _0x498474=_0x17106c,_0x3d1fb3={'JiQoN':function(_0x2b7e39,_0x2a1aec){return _0x2b7e39<_0x2a1aec;},'OttUs':function(_0x2c552a,_0x35b940,_0x449854){return _0x2c552a(_0x35b940,_0x449854);},'Nbpvi':_0x498474(0x233),'ytpfg':function(_0x2038d7,_0x378197,_0x30b12e){return _0x2038d7(_0x378197,_0x30b12e);},'FDdvx':'error','kDTLG':'-vf','hXJmt':_0x498474(0x250)};if(_0x3d1fb3['JiQoN'](this[_0x498474(0x1b5)],0x2))return null;const _0x49fb63=await resolveFfmpegPath();if(!_0x49fb63)return null;const _0x2caa6f=_0x3d1fb3[_0x498474(0x1df)](join,this[_0x498474(0x263)]['cliArtifactDir'],_0x3d1fb3['Nbpvi']);await mkdir(_0x2caa6f,{'recursive':!![]});const _0x3a9da4=_0x3d1fb3[_0x498474(0x206)](join,_0x2caa6f,_0x498474(0x269));return await execFileAsync(_0x49fb63,['-y',_0x498474(0x23e),_0x498474(0x1a3),_0x3d1fb3[_0x498474(0x259)],'-framerate','10','-i',_0x3d1fb3['OttUs'](join,this['getFrameDir'](),'frame-%06d.jpg'),_0x3d1fb3['kDTLG'],_0x498474(0x1c7),_0x3d1fb3['hXJmt'],'libvpx-vp9','-pix_fmt','yuv420p',_0x3a9da4]),_0x3a9da4;}['getFrameDir'](){const _0x5bc89f={'ARQFc':'nova-video-frames'};return join(this['params']['cliArtifactDir'],_0x5bc89f['ARQFc']);}}async function delay(_0x43db24){await new Promise(_0x25c999=>setTimeout(_0x25c999,_0x43db24));}async function resolveFfmpegPath(){const _0x4dbd76=_0x17106c,_0x238cef={'EqJvF':function(_0x223a9f,_0x533bfe){return _0x223a9f(_0x533bfe);},'NnOKm':'ffmpeg','hqBst':function(_0x10fcca){return _0x10fcca();},'aIOCm':'Library','kPwwz':_0x4dbd76(0x1fa),'arrXH':_0x4dbd76(0x1c1),'UxmYa':'ms-playwright','vqOGq':function(_0x198bcb,_0x3827f7){return _0x198bcb(_0x3827f7);}};if(await _0x238cef[_0x4dbd76(0x1f2)](canRunFfmpeg,_0x238cef['NnOKm']))return _0x238cef['NnOKm'];const _0x520953=[join(_0x238cef[_0x4dbd76(0x257)](homedir),_0x238cef['aIOCm'],_0x238cef['kPwwz'],_0x4dbd76(0x1bc)),join(_0x238cef[_0x4dbd76(0x257)](homedir),_0x238cef[_0x4dbd76(0x237)],_0x238cef[_0x4dbd76(0x1dd)])];for(const _0x1355b1 of _0x520953){try{const _0x280e68=await _0x238cef['vqOGq'](readdir,_0x1355b1),_0xb05c31=_0x280e68[_0x4dbd76(0x1ba)](_0x18de54=>_0x18de54[_0x4dbd76(0x261)](_0x4dbd76(0x24e)))[_0x4dbd76(0x20d)]()['reverse']()['flatMap'](_0x5e9658=>[join(_0x1355b1,_0x5e9658,_0x4dbd76(0x26d)),join(_0x1355b1,_0x5e9658,_0x4dbd76(0x1fe)),join(_0x1355b1,_0x5e9658,_0x4dbd76(0x253))]);for(const _0x5643a4 of _0xb05c31){if(await _0x238cef[_0x4dbd76(0x1f2)](canRunFfmpeg,_0x5643a4))return _0x5643a4;}}catch{}}return null;}async function canRunFfmpeg(_0x2a03b0){const _0x1247ca=_0x17106c,_0x2b860f={'VhzSI':function(_0x1c6038,_0x34f09c,_0x44e73b){return _0x1c6038(_0x34f09c,_0x44e73b);},'ZlKpl':'-version'};try{return await _0x2b860f[_0x1247ca(0x1ec)](execFileAsync,_0x2a03b0,[_0x2b860f['ZlKpl']]),!![];}catch{return![];}}function toStepDisplayName(_0x36152b){const _0x21e779=_0x17106c,_0x3fe698={'atrPa':function(_0x2d4756,_0x588e7d){return _0x2d4756(_0x588e7d);},'mCstV':function(_0x1478ea,_0x4c0ad1){return _0x1478ea(_0x4c0ad1);}},_0x1b45d6=_0x3fe698[_0x21e779(0x248)](basename,_0x36152b)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x1b45d6,'isKeyStep':/^key_/i['test'](_0x3fe698[_0x21e779(0x212)](basename,_0x36152b))};}function extractShellValue(_0x2d101a){if(!_0x2d101a)return null;return _0x2d101a[0x1]??_0x2d101a[0x2]??_0x2d101a[0x3]??null;}function extractOutputOption(_0x27d08b){const _0x3c4f04=_0x17106c;return extractShellValue(_0x27d08b[_0x3c4f04(0x1e0)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x1dc40f,_0x27e65f){const _0x2dd961=_0x17106c,_0x16c559={'zmMjj':_0x2dd961(0x22f),'dtrwX':'goto','uQUgz':_0x2dd961(0x26a),'UUkrT':_0x2dd961(0x1d6),'iQyHG':'wait\x20for\x20page\x20condition','cTqPB':'snapshot','dUEki':function(_0x4e245b,_0x522013){return _0x4e245b(_0x522013);},'OGBNs':'capture\x20snapshot','CxINK':_0x2dd961(0x1f7),'tOPJY':_0x2dd961(0x1b7)};switch(_0x27e65f){case _0x2dd961(0x274):return _0x2dd961(0x241);case _0x16c559[_0x2dd961(0x1f3)]:return _0x2dd961(0x1e6);case'verify':return'verify\x20page\x20condition';case'ask':return'ask\x20page\x20question';case _0x16c559['dtrwX']:return _0x16c559[_0x2dd961(0x1c0)];case _0x16c559[_0x2dd961(0x203)]:return _0x16c559['iQyHG'];case _0x16c559[_0x2dd961(0x228)]:{const _0x28a21a=_0x16c559[_0x2dd961(0x214)](extractOutputOption,_0x1dc40f);if(!_0x28a21a)return _0x16c559[_0x2dd961(0x207)];const {name:_0x5c62da}=toStepDisplayName(_0x28a21a);return'capture\x20snapshot\x20`'+_0x5c62da+'`';}case _0x16c559['CxINK']:{const _0x531bb3=extractOutputOption(_0x1dc40f);if(!_0x531bb3)return'capture\x20screenshot';const {name:_0x5159e3,isKeyStep:_0xa3e023}=_0x16c559[_0x2dd961(0x214)](toStepDisplayName,_0x531bb3);return _0xa3e023?_0x2dd961(0x264)+_0x5159e3+'`':_0x2dd961(0x1a8)+_0x5159e3+'`';}case _0x16c559[_0x2dd961(0x218)]:return'export\x20Nova\x20session';default:return _0x27e65f;}}function getNovaActCliCommandBlockReason(_0x4eb2a0){const _0x51e39c=_0x17106c,_0xa2ec77={'XxmNm':function(_0x57a7aa,_0x35e091){return _0x57a7aa===_0x35e091;},'RjtSQ':_0x51e39c(0x210),'uuOAp':'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.','OMVBm':_0x51e39c(0x1cd)},_0x3f972c=parseNovaActCliCommand(_0x4eb2a0);if(!_0x3f972c)return _0x51e39c(0x249);if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x51e39c(0x1d1)](_0x3f972c))return'Nova\x20command\x20`'+_0x3f972c+'`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.';if(_0xa2ec77[_0x51e39c(0x1ae)](_0x3f972c,_0xa2ec77[_0x51e39c(0x1f8)])&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i[_0x51e39c(0x1fb)](_0x4eb2a0))return _0xa2ec77[_0x51e39c(0x258)];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/[_0x51e39c(0x1fb)](_0x4eb2a0))return _0xa2ec77[_0x51e39c(0x1ef)];return null;}function buildFeedbackSection(_0x3cf4b4){const _0x554a16=_0x17106c,_0x4c0da0={'yOTwD':'en-US','kKEvT':'numeric','XpmCi':'Reviewer','plNTO':'\x20>\x20','sMHzR':'element'};if(!_0x3cf4b4||_0x3cf4b4['unaddressedComments'][_0x554a16(0x256)]===0x0)return'';const _0x2d97da=_0x3cf4b4['unaddressedComments']['map'](_0x3dfbeb=>{const _0x19ebd7=_0x554a16,_0x178804=new Date(_0x3dfbeb['createdAt'])['toLocaleDateString'](_0x4c0da0[_0x19ebd7(0x1c4)],{'month':_0x19ebd7(0x1c9),'day':_0x4c0da0[_0x19ebd7(0x254)]}),_0x2421e7=_0x3dfbeb[_0x19ebd7(0x201)]||_0x3dfbeb[_0x19ebd7(0x1b1)]||_0x4c0da0[_0x19ebd7(0x24f)],_0x2e0577=_0x3dfbeb['domRef']?'\x20(on\x20element:\x20<'+(_0x3dfbeb['domRef'][_0x19ebd7(0x1e4)][_0x19ebd7(0x235)](_0x4c0da0['plNTO'])['pop']()?.[_0x19ebd7(0x235)](':')[0x0]||_0x4c0da0[_0x19ebd7(0x1b0)])+'>\x20\x22'+(_0x3dfbeb['domRef'][_0x19ebd7(0x276)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x3dfbeb['id']+_0x19ebd7(0x267)+_0x2421e7+_0x19ebd7(0x1ed)+_0x178804+_0x19ebd7(0x1a6)+_0x3dfbeb['content']+'\x22'+_0x2e0577;})[_0x554a16(0x1f1)]('\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'+_0x2d97da;}function buildNovaSharedOptionsInstruction(_0x8cb3ce){const _0x2f85e9=_0x17106c;if(!_0x8cb3ce[_0x2f85e9(0x1de)]())return _0x2f85e9(0x217);return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0x8cb3ce;}export function buildVerifyFeatureNovaCliDebugPrompt(_0xcfaec5){const _0x6ab77b=_0x17106c,_0x4dcafa={'UUpnt':'00_initial-state.yml','Nvwdm':'01_initial-state.png','GBkcX':'02_final-state.yml','BHdHY':function(_0x2a151b,_0x36900d,_0x3e003e){return _0x2a151b(_0x36900d,_0x3e003e);},'RbsKt':function(_0x24d0c7,_0x1160a2){return _0x24d0c7(_0x1160a2);},'SASVn':function(_0x3766ae,_0x502e45){return _0x3766ae(_0x502e45);}},{novaCommandPrefix:_0x2b9395,novaSharedOptionsSuffix:_0x22be2c,cliArtifactDir:_0x160608,url:_0x153f1f}=_0xcfaec5,_0x439d52=buildCliArtifactPath(_0x160608,_0x4dcafa[_0x6ab77b(0x1ca)]),_0x3f4693=buildCliArtifactPath(_0x160608,_0x4dcafa[_0x6ab77b(0x236)]),_0x3ed3e6=buildCliArtifactPath(_0x160608,_0x4dcafa['GBkcX']),_0x22d966=_0x4dcafa[_0x6ab77b(0x1cb)](buildCliArtifactPath,_0x160608,'03_final-state.png');return _0x6ab77b(0x1cf)+_0x2b9395+'\x0a\x0a'+_0x4dcafa[_0x6ab77b(0x262)](buildNovaSharedOptionsInstruction,_0x22be2c)+'\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`'+_0x2b9395+_0x6ab77b(0x1a2)+_0x4dcafa['SASVn'](quoteShellArg,_0x153f1f)+'\x20'+_0x22be2c+'`\x0a2.\x20Run\x20`'+_0x2b9395+'\x20snapshot\x20--output\x20'+_0x4dcafa[_0x6ab77b(0x26e)](quoteShellArg,_0x439d52)+'\x20'+_0x22be2c+_0x6ab77b(0x265)+_0x2b9395+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x3f4693)+'\x20'+_0x22be2c+_0x6ab77b(0x1e5)+_0x2b9395+_0x6ab77b(0x1ff)+_0x2b9395+'\x20snapshot\x20--output\x20'+_0x4dcafa[_0x6ab77b(0x26e)](quoteShellArg,_0x3ed3e6)+'\x20'+_0x22be2c+'`\x0a6.\x20Run\x20`'+_0x2b9395+_0x6ab77b(0x1f9)+quoteShellArg(_0x22d966)+'\x20'+_0x22be2c+'`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`'+_0x160608+_0x6ab77b(0x20f);}export function buildVerifyFeatureNovaCliPrompt(_0x38853b){const _0x26d8b7=_0x17106c,_0x1a6d8c={'SZPom':function(_0xcef70b,_0x1eeb29,_0x12c00c){return _0xcef70b(_0x1eeb29,_0x12c00c);},'cYlxP':'01_initial-state.png','cZrYv':_0x26d8b7(0x1be),'KirbC':function(_0x18f9ca,_0x4ae233){return _0x18f9ca(_0x4ae233);},'Radjh':function(_0x1265a0,_0x79b213){return _0x1265a0(_0x79b213);}},{checklistItem:_0x3edbfd,itemFeedback:_0x3eea29,taskDescription:_0x4951f8,novaCommandPrefix:_0x31dee4,novaSharedOptionsSuffix:_0x33ea8b,cliArtifactDir:_0x59fbb0,url:_0x322ab2,loginInstructions:_0x4ff9ae}=_0x38853b,_0x13bb6c=_0x3edbfd['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x3edbfd['notes']:'',_0x526e20=buildFeedbackSection(_0x3eea29),_0x55bfa9=_0x3eea29?.[_0x26d8b7(0x1e8)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x3eea29['canonicalFlow']:'',_0x526529=_0x4ff9ae?_0x26d8b7(0x208)+_0x4ff9ae+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x1576b5=_0x1a6d8c['SZPom'](buildCliArtifactPath,_0x59fbb0,_0x26d8b7(0x1c8)),_0xb8cca9=buildCliArtifactPath(_0x59fbb0,_0x1a6d8c[_0x26d8b7(0x255)]),_0x5a1e95=buildCliArtifactPath(_0x59fbb0,_0x1a6d8c[_0x26d8b7(0x239)]);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'+_0x3edbfd[_0x26d8b7(0x224)]+_0x13bb6c+_0x526e20+_0x55bfa9+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x4951f8+'\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20'+_0x322ab2+_0x26d8b7(0x1a9)+_0x526529+'\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`'+_0x31dee4+'\x20session\x20create\x20'+quoteShellArg(_0x322ab2)+'\x20'+_0x33ea8b+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x59fbb0+_0x26d8b7(0x23a)+_0x31dee4+_0x26d8b7(0x243)+_0x1a6d8c[_0x26d8b7(0x226)](quoteShellArg,_0x1576b5)+'\x20'+_0x33ea8b+_0x26d8b7(0x23f)+_0x31dee4+'\x20screenshot\x20--output\x20'+_0x1a6d8c[_0x26d8b7(0x226)](quoteShellArg,_0xb8cca9)+'\x20'+_0x33ea8b+'`.\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`'+_0x5a1e95+'`.\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`'+_0x31dee4+_0x26d8b7(0x1d7)+(_0x33ea8b['trim']()?'`'+_0x33ea8b+'`':_0x26d8b7(0x204))+'\x0a\x0a'+_0x1a6d8c['Radjh'](buildNovaSharedOptionsInstruction,_0x33ea8b)+'\x0a\x0aExamples:\x0a-\x20`'+_0x31dee4+'\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20'+_0x33ea8b+_0x26d8b7(0x24c)+_0x31dee4+'\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20'+_0x33ea8b+'`\x0a-\x20`'+_0x31dee4+'\x20snapshot\x20--output\x20'+_0x1a6d8c[_0x26d8b7(0x266)](quoteShellArg,_0x1576b5)+'\x20'+_0x33ea8b+_0x26d8b7(0x24c)+_0x31dee4+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x5a1e95)+'\x20'+_0x33ea8b+_0x26d8b7(0x1a5);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x4f29a5){const _0x181ed5=_0x17106c,_0x5ce2cf={'YTSZO':function(_0x457a6d,_0x4cff02){return _0x457a6d===_0x4cff02;}},_0x24fb35=[..._0x4f29a5['keys']()][_0x181ed5(0x20d)]();let _0x735cf9=0x0;for(const _0x1d197e of _0x4f29a5['values']()){_0x735cf9+=_0x1d197e;}return{'cliCommandCount':_0x735cf9,'cliCommandsSeen':_0x24fb35,'noCliCommandsCalled':_0x5ce2cf[_0x181ed5(0x234)](_0x735cf9,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x4f169a,_0x51f6ad){const _0x4e9182=_0x17106c,_0x53bbc4={'ACVem':function(_0x2e66fe,_0x35ac4a){return _0x2e66fe!==_0x35ac4a;},'WXPMZ':'Bash','PugAK':function(_0xa7b0ac,_0x2e39c8){return _0xa7b0ac(_0x2e39c8);},'mHFhn':function(_0x307107,_0x501d88){return _0x307107(_0x501d88);},'PguDv':'block','GxLZn':'PostToolUse','ZWxkB':'nova_act_command','mUOzk':'session\x20create','LPeUm':_0x4e9182(0x270),'DAYby':'nova-act-cli','ZREPU':'nova_act_command_failure'},_0x9b4ca3=new Map(),_0x304854=async _0x31fc69=>{const _0x429946=_0x4e9182;if(_0x31fc69['hook_event_name']!=='PreToolUse')return{};const _0x63a758=_0x31fc69;if(_0x53bbc4['ACVem'](_0x63a758['tool_name'],_0x53bbc4['WXPMZ']))return{};const _0x20986d=_0x63a758[_0x429946(0x22a)],_0x1d481c=_0x53bbc4['PugAK'](extractBashCommand,_0x20986d);if(!_0x1d481c)return{};const _0x14a212=_0x53bbc4[_0x429946(0x20c)](getNovaActCliCommandBlockReason,_0x1d481c);if(!_0x14a212)return{};return{'decision':_0x53bbc4[_0x429946(0x1aa)],'reason':_0x14a212};},_0x2e9fb4=async _0x3a9e8b=>{const _0x34a197=_0x4e9182;if(_0x3a9e8b[_0x34a197(0x26c)]!==_0x53bbc4[_0x34a197(0x211)])return{};const _0x18d2c5=_0x3a9e8b;if(_0x18d2c5['tool_name']!==_0x53bbc4[_0x34a197(0x1ee)])return{};const _0x36fb0a=_0x18d2c5['tool_input'],_0x6b3ee2=_0x53bbc4['mHFhn'](extractBashCommand,_0x36fb0a);if(!_0x6b3ee2)return{};const _0x1a8dcc=_0x53bbc4[_0x34a197(0x20c)](parseNovaActCliCommand,_0x6b3ee2);if(!_0x1a8dcc)return{};_0x9b4ca3[_0x34a197(0x1af)](_0x1a8dcc,(_0x9b4ca3[_0x34a197(0x1a4)](_0x1a8dcc)||0x0)+0x1),_0x4f169a[_0x34a197(0x1da)]('nova_act_command',{'subcommand':_0x1a8dcc}),_0x4f169a['trackPhaseEnd'](_0x53bbc4[_0x34a197(0x1d0)],{'subcommand':_0x1a8dcc,'commandPreview':previewNovaActCliCommand(_0x6b3ee2)}),console[_0x34a197(0x246)](_0x34a197(0x19f)+formatNovaActCliLog(_0x6b3ee2,_0x1a8dcc));if(_0x1a8dcc===_0x53bbc4['mUOzk']&&_0x51f6ad)try{await _0x51f6ad['start']();}catch(_0x449460){await _0x4f169a['trackPhaseError'](_0x53bbc4['LPeUm'],_0x449460,{'transport':_0x53bbc4['DAYby']});}return{};},_0x50a102=async _0x59b3c4=>{const _0x47ef4b=_0x4e9182;if(_0x59b3c4['hook_event_name']!=='PostToolUseFailure')return{};const _0x581d1e=_0x59b3c4;if(_0x581d1e['tool_name']!==_0x47ef4b(0x1d9))return{};return await _0x4f169a['trackPhaseError'](_0x53bbc4[_0x47ef4b(0x1d4)],_0x581d1e[_0x47ef4b(0x272)],{'transport':_0x47ef4b(0x202),'toolName':_0x47ef4b(0x1d9)}),{};};return{'preToolUseHook':_0x304854,'postToolUseHook':_0x2e9fb4,'postToolUseFailureHook':_0x50a102,'commandCounts':_0x9b4ca3};}async function runNovaLifecycleCommand(_0x18188e){const _0x14e5b8=_0x17106c,_0x39ddb2={'fQzGi':function(_0x7fc9b,_0x19463f){return _0x7fc9b(_0x19463f);}},{novaOptions:_0x528d25,commandArgs:_0x4439e7,telemetry:_0x10738e,phase:_0x398c20,metadata:_0x48e0a0,timeoutMs:_0x1986c3}=_0x18188e;_0x10738e['trackPhaseStart'](_0x398c20,_0x48e0a0);try{const _0x39d1ae=await runNovaActCliCommand({..._0x528d25,'commandArgs':_0x4439e7,'cwd':process['cwd'](),'env':process['env'],'timeoutMs':_0x1986c3??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x10738e[_0x14e5b8(0x24d)](_0x398c20,{..._0x48e0a0,'subcommand':_0x39d1ae[_0x14e5b8(0x200)]['subcommand'],'commandPreview':_0x39ddb2['fQzGi'](previewNovaActCliCommand,_0x39d1ae['invocation']['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0x39d1ae['stdout']),'stderrPreview':previewNovaActCliCommand(_0x39d1ae[_0x14e5b8(0x215)]),'logDir':extractNovaActLogDir(_0x39d1ae['stdout'])});}catch(_0x4762bf){await _0x10738e['trackPhaseError'](_0x398c20,_0x4762bf,_0x48e0a0);throw _0x4762bf;}}export async function finalizeVerifyFeatureNovaCliSession(_0x4b762c){const _0x4daa46=_0x17106c,_0x25278e={'GEmEh':'nova_act_final_screenshot','dFSlm':function(_0x4b1bb5,_0x203ba9,_0x3ece87){return _0x4b1bb5(_0x203ba9,_0x3ece87);},'MVrDr':'key_final-state.png','REeRy':'snapshot','tmoCp':_0x4daa46(0x21c),'JOMZo':'session','UKjth':'export','OutwP':'--format','yapvi':function(_0x568b3d,_0x2e3c6e,_0x3fd322){return _0x568b3d(_0x2e3c6e,_0x3fd322);},'IHbWQ':_0x4daa46(0x21e),'lbZvE':'--output-dir','ELSYR':_0x4daa46(0x277),'SIViV':function(_0x542876,_0x4c0d67){return _0x542876===_0x4c0d67;},'yggst':function(_0x166e1b,_0x341aec){return _0x166e1b(_0x341aec);}},{telemetry:_0x3c0641,novaOptions:_0x2a5987,cliArtifactDir:_0x1da8ef,transportMetadata:_0x21fc16,artifactRecorder:_0xd67f33}=_0x4b762c,_0x42476b=[{'phase':_0x25278e[_0x4daa46(0x251)],'commandArgs':['screenshot',_0x4daa46(0x1e7),_0x25278e[_0x4daa46(0x22b)](buildCliArtifactPath,_0x1da8ef,_0x25278e['MVrDr'])]},{'phase':'nova_act_final_snapshot','commandArgs':[_0x25278e[_0x4daa46(0x216)],'--output',_0x25278e[_0x4daa46(0x22b)](buildCliArtifactPath,_0x1da8ef,'final-state.yaml')]},{'phase':_0x25278e['tmoCp'],'commandArgs':[_0x25278e[_0x4daa46(0x1b3)],_0x25278e['UKjth'],_0x25278e[_0x4daa46(0x1db)],'json',_0x4daa46(0x1e7),_0x25278e['yapvi'](buildCliArtifactPath,_0x1da8ef,'nova-session-export.json')]},{'phase':_0x25278e[_0x4daa46(0x1e1)],'commandArgs':[_0x25278e['JOMZo'],_0x4daa46(0x1b4),_0x4daa46(0x223),_0x25278e['lbZvE'],_0x25278e[_0x4daa46(0x1d5)](buildCliArtifactPath,_0x1da8ef,'nova-report')]},{'phase':_0x25278e['ELSYR'],'commandArgs':[_0x25278e['JOMZo'],_0x4daa46(0x23b)]}];for(const _0x3448fb of _0x42476b){_0x25278e['SIViV'](_0x3448fb[_0x4daa46(0x1ab)],_0x25278e[_0x4daa46(0x1c6)])&&await _0xd67f33?.['stop']();try{await _0x25278e['yggst'](runNovaLifecycleCommand,{'novaOptions':_0x2a5987,'commandArgs':[..._0x3448fb['commandArgs']],'telemetry':_0x3c0641,'phase':_0x3448fb['phase'],'metadata':_0x21fc16});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x1f3c0b){const _0x20e15d=_0x17106c,_0x556af2={'DdKKr':function(_0x3d4d3a,_0x40dc57,_0x3e7396){return _0x3d4d3a(_0x40dc57,_0x3e7396);},'VJgWE':function(_0x42b461,_0x587267){return _0x42b461+_0x587267;}},{cwd:_0x534f7e,cliArtifactDir:_0x3076a0,startTime:_0xca01fc}=_0x1f3c0b,_0x4dc2b0=[];await mkdir(_0x3076a0,{'recursive':!![]});const _0x2968df=await _0x556af2[_0x20e15d(0x219)](readdir,_0x534f7e,{'withFileTypes':!![]});for(const _0x6e73f9 of _0x2968df){if(!_0x6e73f9['isFile']()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x20e15d(0x1fb)](_0x6e73f9[_0x20e15d(0x26f)]))continue;const _0x40f9d2=_0x556af2['DdKKr'](join,_0x534f7e,_0x6e73f9['name']),_0x10cea9=await stat(_0x40f9d2);if(_0x556af2['VJgWE'](_0x10cea9[_0x20e15d(0x1b2)],0x7d0)<_0xca01fc)continue;const _0x236ad0=buildCliArtifactPath(_0x3076a0,_0x6e73f9[_0x20e15d(0x26f)]);if(_0x40f9d2===_0x236ad0)continue;await rename(_0x40f9d2,_0x236ad0),_0x4dc2b0[_0x20e15d(0x1b6)](_0x6e73f9['name']);}return _0x4dc2b0['sort']();}function _0x121c(){const _0x16e132=['contexts','encodeScreencastVideo','mHFhn','sort','kDdcA','`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','verify','GxLZn','mCstV','base64','dUEki','stderr','REeRy','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.','tOPJY','DdKKr','nova_act_artifact_recording_stop','trackPhaseError','nova_act_session_export','queueTraceSample','nova_act_session_report','then','allSettled','ZIUhd','502210hJpgKQ','--report','description','frame-','KirbC','catch','cTqPB','IzWdV','tool_input','dFSlm','jpeg','screencastStarted','finally','execute','3395dMHOHG','traceSampleInFlight','browser','videos','YTSZO','split','Nvwdm','arrXH','stopTraceSampling','cZrYv','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','close','startScreencast','eZmMT','-hide_banner','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`','luRMR','create\x20Nova\x20browser\x20session','yuQVc','\x20snapshot\x20--output\x20','1179996yIsDqR','1004VMDJTJ','log','goto','atrPa','Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','captureTraceSample','traceSampleTimer','`\x0a-\x20`','trackPhaseEnd','ffmpeg-','XpmCi','-c:v','GEmEh','trace.zip','ffmpeg.exe','kKEvT','cYlxP','length','hqBst','uuOAp','FDdvx','frameWrites','207ygOKPE','telemetry','evaluate','MbzBL','309190jMXPZf','Page.startScreencast','startsWith','RbsKt','params','capture\x20key\x20step\x20`','`\x0a3.\x20Run\x20`','Radjh',']\x20**','transportMetadata','session-recording.webm','navigate\x20browser','sessionId','hook_event_name','ffmpeg-mac','SASVn','name','nova_act_artifact_recording','zip','error','.json','session\x20create','55005BRlIJv','textContent','nova_act_session_close','[nova-act-cli]\x20','commandArgs','cdp_endpoint','\x20session\x20create\x20','-loglevel','get','`\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.','):\x20\x22','sessions','capture\x20step\x20`','\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','PguDv','phase','browser_pid','frameSession','XxmNm','set','sMHzR','authorEmail','mtimeMs','JOMZo','export','frameCount','push','session\x20export','zwOFh','tracingStarted','filter','subcommand','ms-playwright','now','key_03_success-state.png','160000pbBFyF','uQUgz','.cache','newCDPSession','utf-8','yOTwD','stop','ELSYR','scale=trunc(iw/2)*2:trunc(ih/2)*2','01_initial.yml','short','UUpnt','BHdHY','.act_cli','Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.','from','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','ZWxkB','has','fjbAo','cliArtifactDir','ZREPU','yapvi','wait-for','`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a','INynH','Bash','trackPhaseStart','OutwP','locator','UxmYa','trim','OttUs','match','IHbWQ','stopped','context','selector','`\x0a4.\x20Run\x20one\x20batched\x20`','execute\x20Nova\x20browser\x20action','--output','canonicalFlow','novaOptions','padStart','JHgRX','VhzSI','**\x20(','WXPMZ','OMVBm','91288hdtGOE','join','EqJvF','zmMjj','tagName','startAttempted','body','screenshot','RjtSQ','\x20screenshot\x20--output\x20','Caches','test','parse','ASBPa','ffmpeg-linux','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','invocation','authorName','nova-act-cli','UUkrT','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','start','ytpfg','OGBNs','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','Page.stopScreencast'];_0x121c=function(){return _0x16e132;};return _0x121c();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x35d490){const _0x19d46b=_0x17106c,_0x433aaa={'CRZss':function(_0xc3df06,_0x2b1f0c,_0x40869b){return _0xc3df06(_0x2b1f0c,_0x40869b);},'UoyJP':_0x19d46b(0x252)},_0x219098=_0x433aaa['CRZss'](join,_0x35d490,_0x433aaa['UoyJP']);try{return{'buffer':await readFile(_0x219098),'source':_0x219098};}catch{return{'buffer':await zipVerifyFeatureNovaArtifacts(_0x35d490),'source':_0x35d490};}}async function zipVerifyFeatureNovaArtifacts(_0x56d0d5){const _0x2293a8=_0x17106c,_0x3c802b={'wlTfL':function(_0x27969f,_0x44fd0f,_0x2aea31,_0xbb5e24){return _0x27969f(_0x44fd0f,_0x2aea31,_0xbb5e24);},'pDmzc':'nova-artifacts.zip','IzWdV':function(_0x2ff8f1,_0x5286e5){return _0x2ff8f1(_0x5286e5);},'INynH':function(_0x572b1e,_0x2b4748,_0x30980c){return _0x572b1e(_0x2b4748,_0x30980c);}},_0x4185af=_0x3c802b['wlTfL'](join,_0x56d0d5,'..',_0x3c802b['pDmzc']);try{return await execFileAsync(_0x2293a8(0x271),['-qr',_0x4185af,'.','-x','nova-user-data/*'],{'cwd':_0x56d0d5}),await _0x3c802b[_0x2293a8(0x229)](readFile,_0x4185af);}finally{await _0x3c802b[_0x2293a8(0x1d8)](rm,_0x4185af,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x19d254){const _0x20285e=_0x17106c,_0x54f377=buildNovaActCliInvocation(_0x19d254[_0x20285e(0x1e9)],_0x19d254['commandArgs']);return{'command':_0x54f377['command'],'args':_0x54f377['args'],'commandPreview':previewNovaActCliCommand(_0x54f377['shellCommand']),'subcommand':_0x54f377[_0x20285e(0x1bb)],'sharedOptionsSuffix':buildNovaActCliSharedOptionsSuffix(_0x19d254['novaOptions'],_0x19d254[_0x20285e(0x1a0)])};}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ranger-testing/ranger-cli",
3
- "version": "3.0.0",
3
+ "version": "3.0.1-alpha.d9f4572-27",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "ranger": "./build/cli.js",