@ranger-testing/ranger-cli 3.0.1-alpha.ffffb5b-28 → 3.1.1-alpha.08fb70e-39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/deleteProfile.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -0
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -0
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.js +1 -0
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -0
- package/package.json +4 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x937ffc,_0xaab4f4){const _0x1530cd=_0x4ba3,_0x3b2f97=_0x937ffc();while(!![]){try{const _0x3907ee=parseInt(_0x1530cd(0x160))/0x1+parseInt(_0x1530cd(0x17d))/0x2*(parseInt(_0x1530cd(0x18c))/0x3)+-parseInt(_0x1530cd(0x192))/0x4+-parseInt(_0x1530cd(0x194))/0x5*(parseInt(_0x1530cd(0x1c4))/0x6)+-parseInt(_0x1530cd(0x19c))/0x7+-parseInt(_0x1530cd(0x183))/0x8*(parseInt(_0x1530cd(0x190))/0x9)+-parseInt(_0x1530cd(0x1c8))/0xa*(-parseInt(_0x1530cd(0x171))/0xb);if(_0x3907ee===_0xaab4f4)break;else _0x3b2f97['push'](_0x3b2f97['shift']());}catch(_0x5485d1){_0x3b2f97['push'](_0x3b2f97['shift']());}}}(_0x22d0,0xa94b6));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(_0xc7f5ac,_0x4309fa=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x36db44=_0x4ba3,_0x47089d={'Svaoe':function(_0x1323d4,_0x55e8c5){return _0x1323d4>_0x55e8c5;}};return _0x47089d[_0x36db44(0x1cc)](_0xc7f5ac['length'],_0x4309fa)?_0xc7f5ac[_0x36db44(0x195)](0x0,_0x4309fa)+_0x36db44(0x186):_0xc7f5ac;}function buildCliArtifactPath(_0xc4ba68,_0x23d15c){return join(_0xc4ba68,_0x23d15c);}function _0x22d0(){const _0x128a01=['jmQuE','`,\x20then\x20`','tab-new','open\x20new\x20tab','playwright_cli_video_stop',']\x20**','select\x20tab\x20','\x22,\x20\x22','select\x20tab','anxgt','NXqqG','312751IuVgIy','eZBQS','push','Bash','lJSIt','twEuU','\x20tracing-start`\x0a3.\x20Run\x20`','tool_failure','CQcww','capture\x20snapshot\x20`','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','\x0a\x0a1.\x20Run\x20`','error','\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','check','FMlqe','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','85206BdLoEE','tool_call','wCvoa','\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','bSwFB','match','QQkZR','WAsTx','\x5c$&','replace','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','zxQIA','42296osadAW','tool_name','env','tjOuT','CHqzr','canonicalFlow','1016KqSvRm','video-start','BZRnd','...','stop\x20video\x20recording','BxmlV','textContent','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','trackPhaseStart','93tCjQrz','name','WQeGB','authorEmail','16938UzDDwr','hook_event_name','2979988vlMoKo','\x20(on\x20element:\x20<','113335Adrvss','slice','VMGaG','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','sort','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','pop','`\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`','1618344aKCFxZ','log','dWqsV','efMco','VgrAr','stdout','tracing-start','QIrSW','open\x20browser','split','\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','key_03_success-state.png','Reviewer','gsHQO','KTRPS','zIWdy','tracing-stop','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','open','short','\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.','fill\x20','unaddressedComments','xyEBv','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','trace.trace.zip','mtimeMs','numeric','\x20snapshot\x20--filename\x20','playwright-cli','TiSiK','NBIVJ','screenshot','LwasC','stderr','phase','owArR','notes','**\x20(','string','276iDXTul','`:\x20\x22','02_learn-more.yml','set','2560xjyBEe','02_button-clicked.png','map','snapshot','Svaoe','`\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`','IbcHh','NMQDO','\x20tracing-start`,\x20then\x20`','cwd','PostToolUseFailure','subcommand','\x20screenshot\x20--filename\x20'];_0x22d0=function(){return _0x128a01;};return _0x22d0();}function toStepDisplayName(_0x5ce2c1){const _0x140fef=_0x4ba3,_0x4462b7=basename(_0x5ce2c1)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x140fef(0x17a)](/^key_/i,'')[_0x140fef(0x17a)](/^\d+_/,'')[_0x140fef(0x17a)](/-/g,'\x20');return{'name':_0x4462b7,'isKeyStep':/^key_/i['test'](basename(_0x5ce2c1))};}function extractShellValue(_0x2f66f9){if(!_0x2f66f9)return null;return _0x2f66f9[0x1]??_0x2f66f9[0x2]??_0x2f66f9[0x3]??null;}function extractFilenameOption(_0xf9ea23){const _0x38c70c=_0x4ba3,_0x5bb96b={'wxHWL':function(_0x4171e0,_0x2753f7){return _0x4171e0(_0x2753f7);}};return _0x5bb96b['wxHWL'](extractShellValue,_0xf9ea23[_0x38c70c(0x176)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x7b9f9f,_0x5bb729){const _0x299741=_0x4ba3,_0x495c93={'YLZIi':_0x299741(0x179),'lJSIt':function(_0x1caea1,_0x3ef7eb){return _0x1caea1(_0x3ef7eb);}},_0x58b409=_0x5bb729['replace'](/[.*+?^${}()|[\]\\]/g,_0x495c93['YLZIi']);return _0x495c93[_0x299741(0x164)](extractShellValue,_0x7b9f9f['match'](new RegExp('(?:^|\x5cs)'+_0x58b409+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x54fe16){if(!_0x54fe16)return'target';if(/^e\d+$/i['test'](_0x54fe16))return'ref\x20'+_0x54fe16;return JSON['stringify'](truncatePreview(_0x54fe16,0x78));}function formatPlaywrightCliLog(_0x1b06eb,_0x2ab031){const _0x86ed1a=_0x4ba3,_0x387f6d={'jmQuE':_0x86ed1a(0x1ae),'YGIrn':_0x86ed1a(0x1a2),'FMlqe':_0x86ed1a(0x184),'Toyvv':'start\x20video\x20recording','JTnVc':_0x86ed1a(0x1cb),'EIJke':'capture\x20screenshot','ZwYKB':'click','HwPRt':function(_0x7071a,_0x465f54,_0x51bd38){return _0x7071a(_0x465f54,_0x51bd38);},'zxQIA':function(_0x2cbff3,_0x127dff){return _0x2cbff3(_0x127dff);},'owArR':function(_0x25ff70,_0x1b8de4,_0x56659d){return _0x25ff70(_0x1b8de4,_0x56659d);},'eZBQS':function(_0x44351b,_0x2a8a0f){return _0x44351b(_0x2a8a0f);},'dWqsV':function(_0x3de911,_0x29ed96,_0xc67c78){return _0x3de911(_0x29ed96,_0xc67c78);},'gsHQO':'run-code','jUpdm':'tab-select'};switch(_0x2ab031){case _0x387f6d[_0x86ed1a(0x155)]:{const _0x3bc115=extractFirstCommandArgument(_0x1b06eb,_0x2ab031);return _0x3bc115?'open\x20'+_0x3bc115:_0x86ed1a(0x1a4);}case _0x387f6d['YGIrn']:return'start\x20tracing';case _0x86ed1a(0x1ac):return'stop\x20tracing';case _0x387f6d[_0x86ed1a(0x16f)]:return _0x387f6d['Toyvv'];case'video-stop':return _0x86ed1a(0x187);case _0x387f6d['JTnVc']:{const _0x291d74=extractFilenameOption(_0x1b06eb);if(!_0x291d74)return'capture\x20snapshot';const {name:_0x32ff47}=toStepDisplayName(_0x291d74);return _0x86ed1a(0x169)+_0x32ff47+'`';}case _0x86ed1a(0x1bc):{const _0x31239f=extractFilenameOption(_0x1b06eb);if(!_0x31239f)return _0x387f6d['EIJke'];const {name:_0x4334ca,isKeyStep:_0x1b9d83}=toStepDisplayName(_0x31239f);return _0x1b9d83?'capture\x20key\x20step\x20`'+_0x4334ca+'`':'capture\x20step\x20`'+_0x4334ca+'`';}case _0x387f6d['ZwYKB']:return'click\x20'+formatCommandTarget(_0x387f6d['HwPRt'](extractFirstCommandArgument,_0x1b06eb,_0x2ab031));case _0x86ed1a(0x16e):return'check\x20'+_0x387f6d[_0x86ed1a(0x17c)](formatCommandTarget,_0x387f6d['owArR'](extractFirstCommandArgument,_0x1b06eb,_0x2ab031));case'fill':return _0x86ed1a(0x1b1)+formatCommandTarget(extractFirstCommandArgument(_0x1b06eb,_0x2ab031));case'press':return'press\x20'+_0x387f6d[_0x86ed1a(0x161)](formatCommandTarget,_0x387f6d[_0x86ed1a(0x19e)](extractFirstCommandArgument,_0x1b06eb,_0x2ab031));case _0x387f6d[_0x86ed1a(0x1a9)]:return'run\x20custom\x20Playwright\x20code';case _0x86ed1a(0x157):{const _0x24f946=_0x387f6d[_0x86ed1a(0x1c0)](extractFirstCommandArgument,_0x1b06eb,_0x2ab031);return _0x24f946?'open\x20new\x20tab\x20'+_0x24f946:_0x86ed1a(0x158);}case _0x387f6d['jUpdm']:{const _0x48cfbf=extractFirstCommandArgument(_0x1b06eb,_0x2ab031);return _0x48cfbf?_0x86ed1a(0x15b)+_0x48cfbf:_0x86ed1a(0x15d);}default:return _0x2ab031;}}function _0x4ba3(_0x30a51e,_0x5ab915){_0x30a51e=_0x30a51e-0x14e;const _0x22d029=_0x22d0();let _0x4ba310=_0x22d029[_0x30a51e];return _0x4ba310;}function extractPlaywrightCliToolDescription(_0x4908dd){const _0x298c94=_0x4ba3,_0x118b78={'TiSiK':function(_0x1354b6,_0x11db5e){return _0x1354b6!==_0x11db5e;},'WQeGB':_0x298c94(0x1c3)},_0x552b03=_0x4908dd['description'];if(_0x118b78[_0x298c94(0x1ba)](typeof _0x552b03,_0x118b78[_0x298c94(0x18e)]))return null;const _0x555483=_0x552b03['trim']()[_0x298c94(0x17a)](/\s+/g,'\x20');return _0x555483['length']>0x0?_0x555483:null;}export function formatPlaywrightCliConsoleLogMessage(_0x2d1b90,_0x51b3c7,_0x459e96){const _0x33e58e=_0x4ba3,_0x37c172={'UnXNB':function(_0x21936c,_0x19e2c1,_0x4819f4){return _0x21936c(_0x19e2c1,_0x4819f4);}},_0x3ac356=_0x37c172['UnXNB'](formatPlaywrightCliLog,_0x51b3c7,_0x459e96),_0x4411d0=extractPlaywrightCliToolDescription(_0x2d1b90);if(!_0x4411d0)return'[playwright-cli]\x20'+_0x3ac356;if(process[_0x33e58e(0x17f)]['DEBUG'])return'[ranger-verification-agent]\x20'+_0x4411d0+'\x20('+_0x3ac356+')';return'[ranger-verification-agent]\x20'+_0x4411d0;}export function buildVerifyFeatureCliDebugPrompt(_0x11537c,_0x1184e5){const _0x57b2c2=_0x4ba3,_0x3aa1f8={'efMco':function(_0x3fb0f7,_0x164905,_0x560354){return _0x3fb0f7(_0x164905,_0x560354);},'NMQDO':'01_mozilla-homepage.png','qKvUE':_0x57b2c2(0x1c6),'NXqqG':'03_learn-more.png','aYJvW':function(_0x36c67d,_0x427b7b){return _0x36c67d(_0x427b7b);}},_0x1e78a6=_0x3aa1f8[_0x57b2c2(0x19f)](buildCliArtifactPath,_0x1184e5,'00_mozilla-homepage.yml'),_0x40c33a=_0x3aa1f8[_0x57b2c2(0x19f)](buildCliArtifactPath,_0x1184e5,_0x3aa1f8[_0x57b2c2(0x14f)]),_0x5c9241=buildCliArtifactPath(_0x1184e5,_0x3aa1f8['qKvUE']),_0x36b21d=buildCliArtifactPath(_0x1184e5,_0x3aa1f8[_0x57b2c2(0x15f)]),_0x532844=quoteShellArg(_0x1e78a6),_0x4f7a4f=quoteShellArg(_0x40c33a),_0x56bf1c=quoteShellArg(_0x5c9241),_0x59de24=_0x3aa1f8['aYJvW'](quoteShellArg,_0x36b21d);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x11537c+_0x57b2c2(0x16b)+_0x11537c+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x11537c+_0x57b2c2(0x166)+_0x11537c+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x1184e5+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x11537c+'\x20snapshot\x20--filename\x20'+_0x532844+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x11537c+_0x57b2c2(0x154)+_0x4f7a4f+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x11537c+'\x20snapshot\x20--filename\x20'+_0x56bf1c+'`\x0a9.\x20Run\x20`'+_0x11537c+_0x57b2c2(0x154)+_0x59de24+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x5457ee){const _0x3cbd38=_0x4ba3,_0x2af660={'VMGaG':'en-US','IbcHh':_0x3cbd38(0x1af),'ROmqp':_0x3cbd38(0x1b7),'NBIVJ':'\x20>\x20','BEOfA':'element','CHqzr':function(_0x39311e,_0x53a840,_0x56c15d){return _0x39311e(_0x53a840,_0x56c15d);},'EyrVa':'02_state.yml','wCvoa':function(_0x36f1d6,_0x5c5327,_0x48a974){return _0x36f1d6(_0x5c5327,_0x48a974);},'VgrAr':function(_0x3c458a,_0x3803f5){return _0x3c458a(_0x3803f5);},'xyEBv':function(_0x3e37d3,_0x55c330){return _0x3e37d3(_0x55c330);},'SiCgc':'03_result-visible.png','QIrSW':'key_04_success-state.png'},{checklistItem:_0x1059de,itemFeedback:_0x275144,taskDescription:_0x111ed9,cliCommandPrefix:_0xf6c6e3,cliArtifactDir:_0x1db481,isCdpMode:_0x100317,url:_0x166fda,cdpEndpoint:_0x659c1a,loginInstructions:_0x47232b}=_0x5457ee,_0x3db2fc=_0x2af660[_0x3cbd38(0x181)](buildCliArtifactPath,_0x1db481,'01_initial.yml'),_0x1d4c00=_0x2af660['CHqzr'](buildCliArtifactPath,_0x1db481,_0x2af660['EyrVa']),_0xf53b45=_0x2af660[_0x3cbd38(0x173)](buildCliArtifactPath,_0x1db481,_0x3cbd38(0x1a7)),_0x460f47=_0x2af660['wCvoa'](buildCliArtifactPath,_0x1db481,'01_initial-state.png'),_0x33ccac=_0x2af660[_0x3cbd38(0x1a0)](quoteShellArg,_0x3db2fc),_0x4bdea3=_0x2af660[_0x3cbd38(0x1b3)](quoteShellArg,_0x1d4c00),_0x14486a=quoteShellArg(_0xf53b45),_0x3b8288=_0x2af660[_0x3cbd38(0x1a0)](quoteShellArg,_0x460f47),_0x445331=_0x1059de[_0x3cbd38(0x1c1)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x1059de[_0x3cbd38(0x1c1)]:'';let _0x21717c='';if(_0x275144&&_0x275144[_0x3cbd38(0x1b2)]['length']>0x0){const _0x4a5af0=_0x275144[_0x3cbd38(0x1b2)][_0x3cbd38(0x1ca)](_0x1de2bf=>{const _0x4fe870=_0x3cbd38,_0x3b2d81=new Date(_0x1de2bf['createdAt'])['toLocaleDateString'](_0x2af660[_0x4fe870(0x196)],{'month':_0x2af660[_0x4fe870(0x14e)],'day':_0x2af660['ROmqp']}),_0x16a3b6=_0x1de2bf['authorName']||_0x1de2bf[_0x4fe870(0x18f)]||_0x4fe870(0x1a8),_0x2fff9c=_0x1de2bf['domRef']?_0x4fe870(0x193)+(_0x1de2bf['domRef']['selector']['split'](_0x2af660[_0x4fe870(0x1bb)])[_0x4fe870(0x19a)]()?.[_0x4fe870(0x1a5)](':')[0x0]||_0x2af660['BEOfA'])+'>\x20\x22'+(_0x1de2bf['domRef'][_0x4fe870(0x189)]||'')[_0x4fe870(0x195)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x1de2bf['id']+_0x4fe870(0x15a)+_0x16a3b6+_0x4fe870(0x1c2)+_0x3b2d81+'):\x20\x22'+_0x1de2bf['content']+'\x22'+_0x2fff9c;})['join']('\x0a');_0x21717c=_0x3cbd38(0x174)+_0x4a5af0;}const _0x3c3347=_0x275144?.['canonicalFlow']?_0x3cbd38(0x197)+_0x275144[_0x3cbd38(0x182)]:'',_0x364a5c=_0x100317?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x659c1a+_0x3cbd38(0x170):_0x3cbd38(0x1ad)+_0x166fda+'\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',_0x292d42=_0x166fda?quoteShellArg(_0x166fda):'',_0x475ed2=_0x100317?_0x3cbd38(0x17b)+_0xf6c6e3+'\x20open`,\x20then\x20`'+_0xf6c6e3+_0x3cbd38(0x150)+_0xf6c6e3+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x1db481+_0x3cbd38(0x1b4)+_0xf6c6e3+'\x20snapshot\x20--filename\x20'+_0x33ccac+'`\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`'+_0xf6c6e3+'\x20screenshot\x20--filename\x20'+_0x3b8288+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0xf6c6e3+_0x3cbd38(0x16d):_0x3cbd38(0x17b)+_0xf6c6e3+'\x20open\x20'+_0x292d42+_0x3cbd38(0x156)+_0xf6c6e3+'\x20tracing-start`,\x20then\x20`'+_0xf6c6e3+_0x3cbd38(0x199)+_0x1db481+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0xf6c6e3+_0x3cbd38(0x1b8)+_0x33ccac+_0x3cbd38(0x1cd)+_0xf6c6e3+'\x20screenshot\x20--filename\x20'+_0x3b8288+_0x3cbd38(0x16a)+_0xf6c6e3+'\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',_0x1cf00d=_0x100317?_0x3cbd38(0x1b0):'\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.',_0xab85f1=_0x47232b?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x47232b+'\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.':'';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'+_0x1059de['description']+_0x445331+_0x21717c+_0x3c3347+_0x3cbd38(0x18a)+_0x111ed9+'\x0a\x0a'+_0x364a5c+_0xab85f1+'\x0a\x0a'+_0x475ed2+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0xf6c6e3+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x1db481+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x4bdea3+'`\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'+_0x14486a+_0x3cbd38(0x19b)+_0x1db481+_0x3cbd38(0x1c5)+_0x460f47+'\x22,\x20\x22'+buildCliArtifactPath(_0x1db481,_0x3cbd38(0x1c9))+_0x3cbd38(0x15c)+buildCliArtifactPath(_0x1db481,_0x2af660['SiCgc'])+'\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'+_0x2af660[_0x3cbd38(0x173)](buildCliArtifactPath,_0x1db481,_0x2af660[_0x3cbd38(0x1a3)])+_0x3cbd38(0x1a6)+_0x1cf00d+'\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(_0x2ce2ec){const _0x4d6ebd=_0x4ba3,_0x1c20b4=[..._0x2ce2ec['keys']()][_0x4d6ebd(0x198)]();let _0xe0eec7=0x0;for(const _0x530466 of _0x2ce2ec['values']()){_0xe0eec7+=_0x530466;}return{'cliCommandCount':_0xe0eec7,'cliCommandsSeen':_0x1c20b4,'noCliCommandsCalled':_0xe0eec7===0x0};}export function createVerifyFeatureCliHooks(_0x375287){const _0x3e8ba2=_0x4ba3,_0x448edb={'QQkZR':function(_0x4f9e95,_0x35cd21){return _0x4f9e95!==_0x35cd21;},'EYSKV':'PostToolUse','LwasC':function(_0x1970ba,_0x487020){return _0x1970ba(_0x487020);},'jbGEW':_0x3e8ba2(0x172),'BZRnd':_0x3e8ba2(0x1b9),'bSwFB':_0x3e8ba2(0x1cb),'leETG':_0x3e8ba2(0x152),'WAsTx':function(_0x2e81f8,_0x4c13fe){return _0x2e81f8!==_0x4c13fe;},'voeCn':_0x3e8ba2(0x167),'uubIb':'Bash'},_0x2fe791=new Map(),_0x20d8f3=async _0x32001b=>{const _0x3ef8b6=_0x3e8ba2;if(_0x448edb['QQkZR'](_0x32001b[_0x3ef8b6(0x191)],_0x448edb['EYSKV']))return{};const _0x4018b5=_0x32001b;if(_0x4018b5['tool_name']!==_0x3ef8b6(0x163))return{};const _0x3128d6=_0x4018b5['tool_input'],_0x4cf071=_0x448edb[_0x3ef8b6(0x1bd)](extractBashCommand,_0x3128d6);if(!_0x4cf071)return{};const _0x2d5c61=parsePlaywrightCliCommand(_0x4cf071);if(!_0x2d5c61)return{};return _0x2fe791[_0x3ef8b6(0x1c7)](_0x2d5c61,(_0x2fe791['get'](_0x2d5c61)||0x0)+0x1),_0x375287[_0x3ef8b6(0x18b)](_0x448edb['jbGEW'],{'transport':_0x448edb['BZRnd'],'toolName':_0x2d5c61}),_0x375287['trackPhaseEnd'](_0x448edb['jbGEW'],{'transport':_0x448edb[_0x3ef8b6(0x185)],'toolName':_0x2d5c61,'bashCommandPreview':truncatePreview(_0x4cf071)}),_0x2d5c61!==_0x448edb[_0x3ef8b6(0x175)]&&console[_0x3ef8b6(0x19d)](formatPlaywrightCliConsoleLogMessage(_0x3128d6,_0x4cf071,_0x2d5c61)),{};},_0x1fa2c0=async _0x48130e=>{const _0x9094c1=_0x3e8ba2;if(_0x448edb[_0x9094c1(0x177)](_0x48130e[_0x9094c1(0x191)],_0x448edb['leETG']))return{};const _0x439628=_0x48130e;if(_0x448edb[_0x9094c1(0x178)](_0x439628[_0x9094c1(0x17e)],'Bash'))return{};return await _0x375287['trackPhaseError'](_0x448edb['voeCn'],_0x439628[_0x9094c1(0x16c)],{'transport':_0x448edb[_0x9094c1(0x185)],'toolName':_0x448edb['uubIb']}),{};};return{'postToolUseHook':_0x20d8f3,'postToolUseFailureHook':_0x1fa2c0,'commandCounts':_0x2fe791};}async function runPlaywrightCliLifecycleCommand(_0x317ae2){const _0x2d52d6=_0x4ba3,_0x543e55={'KTRPS':function(_0x5c17a1,_0x500e38,_0x5a7dde){return _0x5c17a1(_0x500e38,_0x5a7dde);}},{sessionId:_0x55787f,configPath:_0x2fa581,commandArgs:_0x31a1cd,env:_0x14fd37,telemetry:_0x325830,phase:_0x30f18b,metadata:_0x2e3fcb,timeoutMs:_0xd23d55}=_0x317ae2;_0x325830['trackPhaseStart'](_0x30f18b,_0x2e3fcb);try{const _0x1177b7=await runPlaywrightCliCommand({'sessionId':_0x55787f,'configPath':_0x2fa581,'commandArgs':_0x31a1cd,'cwd':process[_0x2d52d6(0x151)](),'env':_0x14fd37,'timeoutMs':_0xd23d55??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x325830['trackPhaseEnd'](_0x30f18b,{..._0x2e3fcb,'subcommand':_0x1177b7['invocation'][_0x2d52d6(0x153)],'stdoutPreview':_0x543e55[_0x2d52d6(0x1aa)](truncatePreview,_0x1177b7[_0x2d52d6(0x1a1)],0x7d0),'stderrPreview':truncatePreview(_0x1177b7[_0x2d52d6(0x1be)],0x7d0)});}catch(_0x3ee1b7){await _0x325830['trackPhaseError'](_0x30f18b,_0x3ee1b7,_0x2e3fcb);throw _0x3ee1b7;}}export async function finalizeVerifyFeatureCliSession(_0x1c2737){const _0x296f79=_0x4ba3,_0x347788={'tjOuT':'playwright_cli_tracing_stop','vQhYG':'tracing-stop','BTboC':function(_0x5203be,_0x3f8395){return _0x5203be(_0x3f8395);}},{telemetry:_0x3b85e8,sessionId:_0x334a6c,configPath:_0x279e87,cliArtifactDir:_0x3ca6ce,env:_0x5e45bd,transportMetadata:_0x44e6cd}=_0x1c2737,_0x3e16e1=[{'phase':_0x347788[_0x296f79(0x180)],'commandArgs':[_0x347788['vQhYG']]},{'phase':_0x296f79(0x159),'commandArgs':['video-stop','--filename='+buildCliArtifactPath(_0x3ca6ce,'session-recording.webm')]},{'phase':'playwright_cli_close','commandArgs':['close']}];for(const _0x520023 of _0x3e16e1){try{await _0x347788['BTboC'](runPlaywrightCliLifecycleCommand,{'sessionId':_0x334a6c,'configPath':_0x279e87,'commandArgs':[..._0x520023['commandArgs']],'env':_0x5e45bd,'telemetry':_0x3b85e8,'phase':_0x520023[_0x296f79(0x1bf)],'metadata':_0x44e6cd});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0xfad86b){const _0x57a83f=_0x4ba3,_0x43fca9={'zIWdy':function(_0x58729f,_0x1b4326){return _0x58729f(_0x1b4326);}},_0x32bdd2=['trace.zip',_0x57a83f(0x1b5)];for(const _0x5f9349 of _0x32bdd2){const _0x4ebaf9=join(_0xfad86b,_0x5f9349);try{return{'buffer':await _0x43fca9[_0x57a83f(0x1ab)](readFile,_0x4ebaf9),'source':_0x4ebaf9};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x370ef4){const _0x3fc70a=_0x4ba3,_0x5bc0d8={'twEuU':function(_0x15656f,_0x3846f5,_0x4f674d){return _0x15656f(_0x3846f5,_0x4f674d);},'BxmlV':function(_0x5c3400,_0xf0bf4a,_0x5e8477){return _0x5c3400(_0xf0bf4a,_0x5e8477);},'CQcww':function(_0x194325,_0xa4e365){return _0x194325===_0xa4e365;},'anxgt':function(_0x2ba598,_0x522f90,_0x536939){return _0x2ba598(_0x522f90,_0x536939);}},{cwd:_0x387a85,cliArtifactDir:_0x3867e1,startTime:_0x35ad54}=_0x370ef4,_0x488651=[];await mkdir(_0x3867e1,{'recursive':!![]});const _0x56d157=await _0x5bc0d8['twEuU'](readdir,_0x387a85,{'withFileTypes':!![]});for(const _0x275b10 of _0x56d157){if(!_0x275b10['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x275b10[_0x3fc70a(0x18d)]))continue;const _0x60089d=_0x5bc0d8[_0x3fc70a(0x165)](join,_0x387a85,_0x275b10[_0x3fc70a(0x18d)]),_0x4aa821=await stat(_0x60089d);if(_0x4aa821[_0x3fc70a(0x1b6)]+0x7d0<_0x35ad54)continue;const _0x32e91d=_0x5bc0d8[_0x3fc70a(0x188)](buildCliArtifactPath,_0x3867e1,_0x275b10['name']);if(_0x5bc0d8[_0x3fc70a(0x168)](_0x60089d,_0x32e91d))continue;await _0x5bc0d8[_0x3fc70a(0x15e)](rename,_0x60089d,_0x32e91d),_0x488651[_0x3fc70a(0x162)](_0x275b10['name']);}return _0x488651[_0x3fc70a(0x198)]();}
|
|
1
|
+
(function(_0x5bff62,_0x1ef8e5){const _0x5c8437=_0x2759,_0x45372f=_0x5bff62();while(!![]){try{const _0x51be22=parseInt(_0x5c8437(0x214))/0x1*(-parseInt(_0x5c8437(0x1f0))/0x2)+parseInt(_0x5c8437(0x20d))/0x3+parseInt(_0x5c8437(0x1e6))/0x4*(parseInt(_0x5c8437(0x252))/0x5)+-parseInt(_0x5c8437(0x265))/0x6*(parseInt(_0x5c8437(0x1ea))/0x7)+parseInt(_0x5c8437(0x200))/0x8*(parseInt(_0x5c8437(0x202))/0x9)+-parseInt(_0x5c8437(0x21e))/0xa*(parseInt(_0x5c8437(0x22f))/0xb)+parseInt(_0x5c8437(0x1e9))/0xc;if(_0x51be22===_0x1ef8e5)break;else _0x45372f['push'](_0x45372f['shift']());}catch(_0x2abbd0){_0x45372f['push'](_0x45372f['shift']());}}}(_0x1e96,0x3c387));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(_0x2347a4,_0x596f4d=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x30ab23=_0x2759,_0x4d4a91={'fPQRq':_0x30ab23(0x22e)};return _0x2347a4['length']>_0x596f4d?_0x2347a4[_0x30ab23(0x24d)](0x0,_0x596f4d)+_0x4d4a91['fPQRq']:_0x2347a4;}function buildCliArtifactPath(_0x1fbe4c,_0x2b19dc){const _0x416fb8=_0x2759,_0x374392={'vmfYG':function(_0x510307,_0x434e30,_0x16f840){return _0x510307(_0x434e30,_0x16f840);}};return _0x374392[_0x416fb8(0x267)](join,_0x1fbe4c,_0x2b19dc);}function toStepDisplayName(_0x531d48){const _0x421d5a=_0x2759,_0x3bead1={'DURUQ':function(_0x2202c3,_0x2848c1){return _0x2202c3(_0x2848c1);},'FKzkZ':function(_0x1cec6e,_0x3acafa){return _0x1cec6e(_0x3acafa);}},_0x11183b=_0x3bead1[_0x421d5a(0x268)](basename,_0x531d48)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x421d5a(0x22a)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x11183b,'isKeyStep':/^key_/i[_0x421d5a(0x253)](_0x3bead1['FKzkZ'](basename,_0x531d48))};}function _0x1e96(){const _0x181801=['fill','RvXXf','azqBf','5nndTqx','test','trace.trace.zip','element','stop\x20tracing','textContent','name','xsMKz','XigHT','invocation','03_learn-more.png','--filename=','\x0a\x0a##\x20Additional\x20Notes\x0a','lMsiv','uiYtC','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','aRfTg','DEBUG','992010geobpW','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','vmfYG','DURUQ','bhBvP','\x20tracing-start`\x0a3.\x20Run\x20`','Reviewer','`,\x20then\x20`','IhPjy','Ahavi','QovOP','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','check\x20','env','joNPI','\x20>\x20','subcommand','02_button-clicked.png','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','EAWrb','jeOqD','cTKiX','740584tuzDzP','00_mozilla-homepage.yml',']\x20**','4591656TLgzGJ','7PgDewx','gPXem','trackPhaseError','ssjJa','bvalI','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','5588EjvsRe','ucjtC','cwd','trackPhaseStart','phase','eglHc','jTxHX','press\x20','mpubw','\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','en-US','\x20tracing-start`,\x20then\x20`','`\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`','capture\x20key\x20step\x20`','\x20snapshot\x20--filename\x20','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','1096tfAwHo','open\x20new\x20tab','22518MDsmWg','>\x20\x22','HghoO','PostToolUseFailure','selector','target','yPpXO','content','split','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','282426sgwBOi','\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.','\x0a\x0a1.\x20Run\x20`','video-stop','\x20screenshot\x20--filename\x20','capture\x20step\x20`','KBmHJ','118rKmTXK','02_learn-more.yml','xkYeD','pop','notes','cntnp','canonicalFlow','rdxVb','screenshot','Bash','526020EBRUFe','02_state.yml','**\x20(','\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.','tfHkj','\x22,\x20\x22','sort','Ohrfz','set','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','kGlll','bqTWZ','replace','UPaka','):\x20\x22','QXPrA','...','55uhLLHg','fill\x20','key_04_success-state.png','select\x20tab','\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','RhLNM','length','tab-new','tab-select','03_result-visible.png','`\x0a9.\x20Run\x20`','mtimeMs','open\x20','\x20open\x20','description','`\x0a-\x20`snapshot\x20--filename\x20','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','MNTxU','numeric','start\x20video\x20recording','IXRxF','\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','oiKXt','snapshot','dyAch','\x20(on\x20element:\x20<','tool_call','tool_input','select\x20tab\x20','domRef','slice','WPuRd'];_0x1e96=function(){return _0x181801;};return _0x1e96();}function extractShellValue(_0x10f143){if(!_0x10f143)return null;return _0x10f143[0x1]??_0x10f143[0x2]??_0x10f143[0x3]??null;}function extractFilenameOption(_0xe5565){const _0x5e9e2e=_0x2759,_0x22da5c={'cTKiX':function(_0x354ad7,_0x811f11){return _0x354ad7(_0x811f11);}};return _0x22da5c[_0x5e9e2e(0x1e5)](extractShellValue,_0xe5565['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x2e2fc5,_0x401398){const _0x3f8dfd=_0x2759,_0x4e217a={'Ahavi':'\x5c$&'},_0x3e3f0a=_0x401398[_0x3f8dfd(0x22a)](/[.*+?^${}()|[\]\\]/g,_0x4e217a[_0x3f8dfd(0x26e)]);return extractShellValue(_0x2e2fc5['match'](new RegExp('(?:^|\x5cs)'+_0x3e3f0a+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x33efa4){const _0x289604=_0x2759,_0x2965d6={'UPaka':_0x289604(0x207)};if(!_0x33efa4)return _0x2965d6[_0x289604(0x22b)];if(/^e\d+$/i[_0x289604(0x253)](_0x33efa4))return'ref\x20'+_0x33efa4;return JSON['stringify'](truncatePreview(_0x33efa4,0x78));}function formatPlaywrightCliLog(_0x32dc3c,_0x30419a){const _0x26a351=_0x2759,_0x3fbf30={'cntnp':'open','bqTWZ':function(_0x26ee4c,_0x51087b,_0x6abac2){return _0x26ee4c(_0x51087b,_0x6abac2);},'IXRxF':'tracing-start','dEarx':_0x26a351(0x210),'ZXyqo':'stop\x20video\x20recording','XigHT':'snapshot','ucjtC':function(_0x4163d8,_0x268b98){return _0x4163d8(_0x268b98);},'DyofZ':'capture\x20snapshot','dpzKs':_0x26a351(0x21c),'uiYtC':function(_0x2f25ae,_0x41e6ef){return _0x2f25ae(_0x41e6ef);},'rdxVb':function(_0x22eb92,_0x204576,_0xe5a11b){return _0x22eb92(_0x204576,_0xe5a11b);},'aRfTg':function(_0xf14533,_0x4081ff,_0xc439d7){return _0xf14533(_0x4081ff,_0xc439d7);},'yPpXO':_0x26a351(0x24f),'joNPI':'press','TSLtk':'run\x20custom\x20Playwright\x20code'};switch(_0x30419a){case _0x3fbf30[_0x26a351(0x219)]:{const _0x5568fc=_0x3fbf30[_0x26a351(0x229)](extractFirstCommandArgument,_0x32dc3c,_0x30419a);return _0x5568fc?_0x26a351(0x23b)+_0x5568fc:'open\x20browser';}case _0x3fbf30[_0x26a351(0x243)]:return'start\x20tracing';case'tracing-stop':return _0x26a351(0x256);case'video-start':return _0x26a351(0x242);case _0x3fbf30['dEarx']:return _0x3fbf30['ZXyqo'];case _0x3fbf30[_0x26a351(0x25a)]:{const _0x4f0192=_0x3fbf30['ucjtC'](extractFilenameOption,_0x32dc3c);if(!_0x4f0192)return _0x3fbf30['DyofZ'];const {name:_0x49e0e6}=_0x3fbf30['ucjtC'](toStepDisplayName,_0x4f0192);return'capture\x20snapshot\x20`'+_0x49e0e6+'`';}case _0x3fbf30['dpzKs']:{const _0x51a741=_0x3fbf30[_0x26a351(0x1f1)](extractFilenameOption,_0x32dc3c);if(!_0x51a741)return'capture\x20screenshot';const {name:_0x2fe958,isKeyStep:_0x4ed8c3}=_0x3fbf30[_0x26a351(0x260)](toStepDisplayName,_0x51a741);return _0x4ed8c3?_0x26a351(0x1fd)+_0x2fe958+'`':_0x26a351(0x212)+_0x2fe958+'`';}case'click':return'click\x20'+formatCommandTarget(_0x3fbf30[_0x26a351(0x21b)](extractFirstCommandArgument,_0x32dc3c,_0x30419a));case'check':return _0x26a351(0x271)+formatCommandTarget(_0x3fbf30['aRfTg'](extractFirstCommandArgument,_0x32dc3c,_0x30419a));case _0x3fbf30[_0x26a351(0x208)]:return _0x26a351(0x230)+formatCommandTarget(extractFirstCommandArgument(_0x32dc3c,_0x30419a));case _0x3fbf30[_0x26a351(0x1de)]:return _0x26a351(0x1f7)+formatCommandTarget(_0x3fbf30[_0x26a351(0x263)](extractFirstCommandArgument,_0x32dc3c,_0x30419a));case'run-code':return _0x3fbf30['TSLtk'];case _0x26a351(0x236):{const _0x5bd8e7=extractFirstCommandArgument(_0x32dc3c,_0x30419a);return _0x5bd8e7?'open\x20new\x20tab\x20'+_0x5bd8e7:_0x26a351(0x201);}case _0x26a351(0x237):{const _0x43b59a=extractFirstCommandArgument(_0x32dc3c,_0x30419a);return _0x43b59a?_0x26a351(0x24b)+_0x43b59a:_0x26a351(0x232);}default:return _0x30419a;}}function extractPlaywrightCliToolDescription(_0x2ab01a){const _0x29fb28=_0x2759,_0xb22649=_0x2ab01a[_0x29fb28(0x23d)];if(typeof _0xb22649!=='string')return null;const _0x5c83c3=_0xb22649['trim']()['replace'](/\s+/g,'\x20');return _0x5c83c3[_0x29fb28(0x235)]>0x0?_0x5c83c3:null;}export function formatPlaywrightCliConsoleLogMessage(_0x3427b6,_0x14086f,_0x31644f){const _0x2e603f=_0x2759,_0x143a17={'MNTxU':function(_0x134a99,_0x1c49b4,_0xc891c7){return _0x134a99(_0x1c49b4,_0xc891c7);}},_0x3398a3=_0x143a17[_0x2e603f(0x240)](formatPlaywrightCliLog,_0x14086f,_0x31644f),_0x3acb9b=extractPlaywrightCliToolDescription(_0x3427b6);if(!_0x3acb9b)return'[playwright-cli]\x20'+_0x3398a3;if(process[_0x2e603f(0x1dd)][_0x2e603f(0x264)])return'[ranger-verification-agent]\x20'+_0x3acb9b+'\x20('+_0x3398a3+')';return'[ranger-verification-agent]\x20'+_0x3acb9b;}export function buildVerifyFeatureCliDebugPrompt(_0x101330,_0x59e0e3){const _0xec9ea1=_0x2759,_0x4aa50b={'EAWrb':function(_0x1d03e8,_0x5d38a3,_0x40f693){return _0x1d03e8(_0x5d38a3,_0x40f693);},'EtKYH':_0xec9ea1(0x215),'OdByz':_0xec9ea1(0x25c),'lMsiv':function(_0x489eea,_0x5350e6){return _0x489eea(_0x5350e6);},'QovOP':function(_0x5cb28c,_0x4225dd){return _0x5cb28c(_0x4225dd);}},_0x2ed996=_0x4aa50b['EAWrb'](buildCliArtifactPath,_0x59e0e3,_0xec9ea1(0x1e7)),_0xdd7c6d=buildCliArtifactPath(_0x59e0e3,'01_mozilla-homepage.png'),_0xc2c7e1=_0x4aa50b[_0xec9ea1(0x1e3)](buildCliArtifactPath,_0x59e0e3,_0x4aa50b['EtKYH']),_0x44f2a5=buildCliArtifactPath(_0x59e0e3,_0x4aa50b['OdByz']),_0x3da2c1=_0x4aa50b[_0xec9ea1(0x25f)](quoteShellArg,_0x2ed996),_0x4803f1=quoteShellArg(_0xdd7c6d),_0x118554=_0x4aa50b[_0xec9ea1(0x26f)](quoteShellArg,_0xc2c7e1),_0x2b1000=quoteShellArg(_0x44f2a5);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x101330+_0xec9ea1(0x20f)+_0x101330+_0xec9ea1(0x20b)+_0x101330+_0xec9ea1(0x26a)+_0x101330+_0xec9ea1(0x266)+_0x59e0e3+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x101330+'\x20snapshot\x20--filename\x20'+_0x3da2c1+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x101330+_0xec9ea1(0x211)+_0x4803f1+_0xec9ea1(0x1ef)+_0x101330+'\x20snapshot\x20--filename\x20'+_0x118554+_0xec9ea1(0x239)+_0x101330+_0xec9ea1(0x211)+_0x2b1000+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x4bd2a2){const _0x3ffc97=_0x2759,_0x5cc3eb={'eglHc':_0x3ffc97(0x1fa),'Vcoyk':'short','RvXXf':'01_initial.yml','KBmHJ':function(_0x4a5969,_0x57f59e){return _0x4a5969(_0x57f59e);},'mpubw':function(_0x133868,_0xa7ba5e){return _0x133868>_0xa7ba5e;},'iyfRb':_0x3ffc97(0x1e1),'bhBvP':_0x3ffc97(0x238),'zhUJP':function(_0x2d4175,_0x100682,_0x19a63f){return _0x2d4175(_0x100682,_0x19a63f);},'UhQbP':_0x3ffc97(0x231)},{checklistItem:_0x33606a,itemFeedback:_0x4443df,taskDescription:_0x789738,cliCommandPrefix:_0x28a218,cliArtifactDir:_0x3b3d83,isCdpMode:_0x5d682f,url:_0x25f18c,cdpEndpoint:_0x1ac491,loginInstructions:_0x2f9402}=_0x4bd2a2,_0x12ef68=buildCliArtifactPath(_0x3b3d83,_0x5cc3eb[_0x3ffc97(0x250)]),_0x4dbe0d=buildCliArtifactPath(_0x3b3d83,_0x3ffc97(0x21f)),_0x571683=buildCliArtifactPath(_0x3b3d83,'key_03_success-state.png'),_0x12c7f4=buildCliArtifactPath(_0x3b3d83,'01_initial-state.png'),_0x40aeaf=quoteShellArg(_0x12ef68),_0x52ccf5=_0x5cc3eb[_0x3ffc97(0x213)](quoteShellArg,_0x4dbe0d),_0x764766=quoteShellArg(_0x571683),_0x2c7606=quoteShellArg(_0x12c7f4),_0x44466b=_0x33606a['notes']?_0x3ffc97(0x25e)+_0x33606a[_0x3ffc97(0x218)]:'';let _0xd06176='';if(_0x4443df&&_0x5cc3eb[_0x3ffc97(0x1f8)](_0x4443df['unaddressedComments']['length'],0x0)){const _0x1fd2d4=_0x4443df['unaddressedComments']['map'](_0x56edd4=>{const _0x4ccd8d=_0x3ffc97,_0x3d1a5e=new Date(_0x56edd4['createdAt'])['toLocaleDateString'](_0x5cc3eb[_0x4ccd8d(0x1f5)],{'month':_0x5cc3eb['Vcoyk'],'day':_0x4ccd8d(0x241)}),_0x9e7937=_0x56edd4['authorName']||_0x56edd4['authorEmail']||_0x4ccd8d(0x26b),_0x228c2a=_0x56edd4['domRef']?_0x4ccd8d(0x248)+(_0x56edd4[_0x4ccd8d(0x24c)][_0x4ccd8d(0x206)]['split'](_0x4ccd8d(0x1df))[_0x4ccd8d(0x217)]()?.[_0x4ccd8d(0x20a)](':')[0x0]||_0x4ccd8d(0x255))+_0x4ccd8d(0x203)+(_0x56edd4['domRef'][_0x4ccd8d(0x257)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x56edd4['id']+_0x4ccd8d(0x1e8)+_0x9e7937+_0x4ccd8d(0x220)+_0x3d1a5e+_0x4ccd8d(0x22c)+_0x56edd4[_0x4ccd8d(0x209)]+'\x22'+_0x228c2a;})['join']('\x0a');_0xd06176='\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'+_0x1fd2d4;}const _0x50d269=_0x4443df?.['canonicalFlow']?_0x3ffc97(0x227)+_0x4443df[_0x3ffc97(0x21a)]:'',_0x2b4934=_0x5d682f?_0x3ffc97(0x1e2)+_0x1ac491+'.\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'+_0x25f18c+_0x3ffc97(0x1f9),_0xcd5ad9=_0x25f18c?quoteShellArg(_0x25f18c):'',_0x5bb38e=_0x5d682f?_0x3ffc97(0x23f)+_0x28a218+'\x20open`,\x20then\x20`'+_0x28a218+'\x20tracing-start`,\x20then\x20`'+_0x28a218+_0x3ffc97(0x270)+_0x3b3d83+_0x3ffc97(0x20c)+_0x28a218+'\x20snapshot\x20--filename\x20'+_0x40aeaf+'`\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`'+_0x28a218+'\x20screenshot\x20--filename\x20'+_0x2c7606+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x28a218+'\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':'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x28a218+_0x3ffc97(0x23c)+_0xcd5ad9+_0x3ffc97(0x26c)+_0x28a218+_0x3ffc97(0x1fb)+_0x28a218+_0x3ffc97(0x270)+_0x3b3d83+_0x3ffc97(0x20c)+_0x28a218+_0x3ffc97(0x1fe)+_0x40aeaf+_0x3ffc97(0x1fc)+_0x28a218+_0x3ffc97(0x211)+_0x2c7606+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x28a218+'\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',_0x1dce31=_0x5d682f?_0x3ffc97(0x221):'\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-\x20Login/sign-in/auth\x20pages\x20when\x20no\x20Authentication\x20section\x20is\x20present\x20in\x20this\x20prompt\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.',_0xfee42f=_0x2f9402?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x2f9402+_0x3ffc97(0x20e):'';return _0x3ffc97(0x1ff)+_0x33606a[_0x3ffc97(0x23d)]+_0x44466b+_0xd06176+_0x50d269+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x789738+'\x0a\x0a'+_0x2b4934+_0xfee42f+'\x0a\x0a'+_0x5bb38e+_0x3ffc97(0x261)+_0x28a218+_0x3ffc97(0x262)+_0x3b3d83+_0x3ffc97(0x23e)+_0x52ccf5+'`\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'+_0x764766+'`\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`'+_0x3b3d83+'`:\x20\x22'+_0x12c7f4+_0x3ffc97(0x223)+buildCliArtifactPath(_0x3b3d83,_0x5cc3eb['iyfRb'])+_0x3ffc97(0x223)+buildCliArtifactPath(_0x3b3d83,_0x5cc3eb[_0x3ffc97(0x269)])+_0x3ffc97(0x244)+_0x5cc3eb['zhUJP'](buildCliArtifactPath,_0x3b3d83,_0x5cc3eb['UhQbP'])+_0x3ffc97(0x233)+_0x1dce31+'\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(_0x1dfd3f){const _0x5701e3=_0x2759,_0x1a675f={'fpbJe':function(_0x4d5614,_0x1c29f5){return _0x4d5614===_0x1c29f5;}},_0x441fba=[..._0x1dfd3f['keys']()][_0x5701e3(0x224)]();let _0x2c8803=0x0;for(const _0x472a9d of _0x1dfd3f['values']()){_0x2c8803+=_0x472a9d;}return{'cliCommandCount':_0x2c8803,'cliCommandsSeen':_0x441fba,'noCliCommandsCalled':_0x1a675f['fpbJe'](_0x2c8803,0x0)};}export function createVerifyFeatureCliHooks(_0x3eda0c){const _0x178eab=_0x2759,_0x2aa535={'jeOqD':'PostToolUse','oiKXt':function(_0x3602d1,_0x5ee8ae){return _0x3602d1(_0x5ee8ae);},'QXPrA':function(_0x35eb88,_0x4735a3){return _0x35eb88+_0x4735a3;},'dyAch':_0x178eab(0x249),'bvalI':'playwright-cli','IhPjy':function(_0x50e83b,_0x49ce94,_0x3dda29,_0x4be4e3){return _0x50e83b(_0x49ce94,_0x3dda29,_0x4be4e3);},'xkYeD':function(_0x28e16e,_0x5dc323){return _0x28e16e!==_0x5dc323;},'gPXem':'tool_failure'},_0x1f6d0b=new Map(),_0x3b27ca=async _0xc32da=>{const _0x1389e3=_0x178eab;if(_0xc32da['hook_event_name']!==_0x2aa535[_0x1389e3(0x1e4)])return{};const _0x1a711e=_0xc32da;if(_0x1a711e['tool_name']!==_0x1389e3(0x21d))return{};const _0x4b5fed=_0x1a711e[_0x1389e3(0x24a)],_0x893b9b=_0x2aa535[_0x1389e3(0x245)](extractBashCommand,_0x4b5fed);if(!_0x893b9b)return{};const _0x967150=parsePlaywrightCliCommand(_0x893b9b);if(!_0x967150)return{};return _0x1f6d0b[_0x1389e3(0x226)](_0x967150,_0x2aa535[_0x1389e3(0x22d)](_0x1f6d0b['get'](_0x967150)||0x0,0x1)),_0x3eda0c['trackPhaseStart'](_0x2aa535[_0x1389e3(0x247)],{'transport':_0x2aa535[_0x1389e3(0x1ee)],'toolName':_0x967150}),_0x3eda0c['trackPhaseEnd'](_0x2aa535[_0x1389e3(0x247)],{'transport':_0x2aa535['bvalI'],'toolName':_0x967150,'bashCommandPreview':truncatePreview(_0x893b9b)}),_0x967150!==_0x1389e3(0x246)&&console['log'](_0x2aa535[_0x1389e3(0x26d)](formatPlaywrightCliConsoleLogMessage,_0x4b5fed,_0x893b9b,_0x967150)),{};},_0x3d4be3=async _0x14a32f=>{const _0x4a5d41=_0x178eab;if(_0x2aa535[_0x4a5d41(0x216)](_0x14a32f['hook_event_name'],_0x4a5d41(0x205)))return{};const _0x49a9dd=_0x14a32f;if(_0x49a9dd['tool_name']!=='Bash')return{};return await _0x3eda0c[_0x4a5d41(0x1ec)](_0x2aa535[_0x4a5d41(0x1eb)],_0x49a9dd['error'],{'transport':'playwright-cli','toolName':'Bash'}),{};};return{'postToolUseHook':_0x3b27ca,'postToolUseFailureHook':_0x3d4be3,'commandCounts':_0x1f6d0b};}function _0x2759(_0x27d58b,_0x420108){_0x27d58b=_0x27d58b-0x1dd;const _0x1e9696=_0x1e96();let _0x275906=_0x1e9696[_0x27d58b];return _0x275906;}async function runPlaywrightCliLifecycleCommand(_0xe4ec2b){const _0x28be38=_0x2759,_0x345ae1={'bLaNP':function(_0x42ee23,_0x4ecc3b,_0x36b461){return _0x42ee23(_0x4ecc3b,_0x36b461);}},{sessionId:_0x51ff8b,configPath:_0x285311,commandArgs:_0x5ebc0c,env:_0x2aa3af,telemetry:_0x4c639b,phase:_0x1252d1,metadata:_0x32d079,timeoutMs:_0x3ababb}=_0xe4ec2b;_0x4c639b[_0x28be38(0x1f3)](_0x1252d1,_0x32d079);try{const _0x44a587=await runPlaywrightCliCommand({'sessionId':_0x51ff8b,'configPath':_0x285311,'commandArgs':_0x5ebc0c,'cwd':process[_0x28be38(0x1f2)](),'env':_0x2aa3af,'timeoutMs':_0x3ababb??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x4c639b['trackPhaseEnd'](_0x1252d1,{..._0x32d079,'subcommand':_0x44a587[_0x28be38(0x25b)][_0x28be38(0x1e0)],'stdoutPreview':_0x345ae1['bLaNP'](truncatePreview,_0x44a587['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x44a587['stderr'],0x7d0)});}catch(_0x471dff){await _0x4c639b['trackPhaseError'](_0x1252d1,_0x471dff,_0x32d079);throw _0x471dff;}}export async function finalizeVerifyFeatureCliSession(_0x1f55f1){const _0x437e4a=_0x2759,_0x17f108={'TYpkQ':'playwright_cli_tracing_stop','kGlll':function(_0xa872c7,_0x5aee32,_0x22fa76){return _0xa872c7(_0x5aee32,_0x22fa76);},'RhLNM':'playwright_cli_close','aApYJ':'close','azqBf':function(_0x14bdf0,_0xb442a8){return _0x14bdf0(_0xb442a8);}},{telemetry:_0x47e11f,sessionId:_0x4bb122,configPath:_0x4c194d,cliArtifactDir:_0x497430,env:_0x4a6f6c,transportMetadata:_0x4b8649}=_0x1f55f1,_0x3353b2=[{'phase':_0x17f108['TYpkQ'],'commandArgs':['tracing-stop']},{'phase':'playwright_cli_video_stop','commandArgs':[_0x437e4a(0x210),_0x437e4a(0x25d)+_0x17f108[_0x437e4a(0x228)](buildCliArtifactPath,_0x497430,'session-recording.webm')]},{'phase':_0x17f108[_0x437e4a(0x234)],'commandArgs':[_0x17f108['aApYJ']]}];for(const _0x1a1fe6 of _0x3353b2){try{await _0x17f108[_0x437e4a(0x251)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x4bb122,'configPath':_0x4c194d,'commandArgs':[..._0x1a1fe6['commandArgs']],'env':_0x4a6f6c,'telemetry':_0x47e11f,'phase':_0x1a1fe6[_0x437e4a(0x1f4)],'metadata':_0x4b8649});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x5385b5){const _0x56c38f=_0x2759,_0x2b3b11={'WPuRd':'trace.zip','tfHkj':_0x56c38f(0x254)},_0x3916a3=[_0x2b3b11[_0x56c38f(0x24e)],_0x2b3b11[_0x56c38f(0x222)]];for(const _0x1e442f of _0x3916a3){const _0x931f36=join(_0x5385b5,_0x1e442f);try{return{'buffer':await readFile(_0x931f36),'source':_0x931f36};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x406108){const _0x4eec32=_0x2759,_0x36a291={'xsMKz':function(_0x166c02,_0x5662aa,_0x3f9985){return _0x166c02(_0x5662aa,_0x3f9985);},'jTxHX':function(_0x364f3e,_0x1615e5){return _0x364f3e(_0x1615e5);},'ssjJa':function(_0x3be4dd,_0x1596c7){return _0x3be4dd<_0x1596c7;},'Ohrfz':function(_0x14ca39,_0x487104){return _0x14ca39+_0x487104;},'HghoO':function(_0x1cc912,_0x16f079){return _0x1cc912===_0x16f079;}},{cwd:_0x24f3c3,cliArtifactDir:_0x250d11,startTime:_0x202fd8}=_0x406108,_0x13d677=[];await mkdir(_0x250d11,{'recursive':!![]});const _0x407b54=await _0x36a291[_0x4eec32(0x259)](readdir,_0x24f3c3,{'withFileTypes':!![]});for(const _0x4ceae5 of _0x407b54){if(!_0x4ceae5['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x4ceae5[_0x4eec32(0x258)]))continue;const _0x2077ba=_0x36a291['xsMKz'](join,_0x24f3c3,_0x4ceae5['name']),_0x4821cc=await _0x36a291[_0x4eec32(0x1f6)](stat,_0x2077ba);if(_0x36a291[_0x4eec32(0x1ed)](_0x36a291[_0x4eec32(0x225)](_0x4821cc[_0x4eec32(0x23a)],0x7d0),_0x202fd8))continue;const _0x8521a1=buildCliArtifactPath(_0x250d11,_0x4ceae5['name']);if(_0x36a291[_0x4eec32(0x204)](_0x2077ba,_0x8521a1))continue;await rename(_0x2077ba,_0x8521a1),_0x13d677['push'](_0x4ceae5['name']);}return _0x13d677['sort']();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x2539ac=_0x5833;(function(_0x25d811,_0x45ea3d){const _0x45c01f=_0x5833,_0x2fdec2=_0x25d811();while(!![]){try{const _0x2cfcdc=parseInt(_0x45c01f(0x1f5))/0x1*(-parseInt(_0x45c01f(0x287))/0x2)+parseInt(_0x45c01f(0x28b))/0x3+parseInt(_0x45c01f(0x28c))/0x4+parseInt(_0x45c01f(0x2c2))/0x5*(-parseInt(_0x45c01f(0x2af))/0x6)+-parseInt(_0x45c01f(0x225))/0x7*(-parseInt(_0x45c01f(0x206))/0x8)+parseInt(_0x45c01f(0x27b))/0x9*(parseInt(_0x45c01f(0x2bf))/0xa)+parseInt(_0x45c01f(0x214))/0xb*(parseInt(_0x45c01f(0x22d))/0xc);if(_0x2cfcdc===_0x45ea3d)break;else _0x2fdec2['push'](_0x2fdec2['shift']());}catch(_0x3e1fc3){_0x2fdec2['push'](_0x2fdec2['shift']());}}}(_0x436f,0xe9370));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(['session\x20create',_0x2539ac(0x247),_0x2539ac(0x200),'ask',_0x2539ac(0x1e1),_0x2539ac(0x1e4),'snapshot',_0x2539ac(0x251)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x3e11d7,_0x4c12e1){const _0x51c229={'ANaNw':function(_0x18cddf,_0xb8ff46,_0x1167df){return _0x18cddf(_0xb8ff46,_0x1167df);}};return _0x51c229['ANaNw'](join,_0x3e11d7,_0x4c12e1);}function _0x5833(_0x49e6e1,_0x4d68d4){_0x49e6e1=_0x49e6e1-0x1d8;const _0x436f99=_0x436f();let _0x583323=_0x436f99[_0x49e6e1];return _0x583323;}export class NovaActArtifactRecorder{[_0x2539ac(0x285)];[_0x2539ac(0x210)]=null;['context']=null;['frameSession']=null;[_0x2539ac(0x277)]=[];[_0x2539ac(0x263)]=0x0;['traceSampleCount']=0x0;[_0x2539ac(0x290)]=null;[_0x2539ac(0x203)]=null;['tracingStarted']=![];[_0x2539ac(0x20a)]=![];['startAttempted']=![];[_0x2539ac(0x293)]=![];constructor(_0x33128f){const _0x154260=_0x2539ac;this[_0x154260(0x285)]=_0x33128f;}async[_0x2539ac(0x1d9)](){const _0x3b4eaf=_0x2539ac,_0x33daa0={'UyDzl':_0x3b4eaf(0x2b3),'yKCWX':_0x3b4eaf(0x28a)};if(this['startAttempted'])return;this[_0x3b4eaf(0x269)]=!![];const _0x1e608d=await this[_0x3b4eaf(0x296)](),_0x87e148=_0x1e608d['cdp_endpoint'];if(!_0x87e148)throw new Error('Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20'+this[_0x3b4eaf(0x285)][_0x3b4eaf(0x250)][_0x3b4eaf(0x1fc)]);await mkdir(this[_0x3b4eaf(0x285)][_0x3b4eaf(0x26f)],{'recursive':!![]}),this['browser']=await chromium['connectOverCDP'](_0x87e148,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x3b4eaf(0x267)]=this[_0x3b4eaf(0x210)][_0x3b4eaf(0x249)]()[0x0]??null;if(!this[_0x3b4eaf(0x267)])throw new Error(_0x33daa0[_0x3b4eaf(0x272)]);await this[_0x3b4eaf(0x267)]['tracing']['start']({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x3b4eaf(0x2be)](),await this[_0x3b4eaf(0x2a8)](),this['params']['telemetry']['trackPhaseStart'](_0x33daa0['yKCWX'],{...this['params']['transportMetadata'],'cdpEndpoint':_0x87e148,'browserPid':_0x1e608d['browser_pid'],'sessionState':_0x1e608d['state']}),this[_0x3b4eaf(0x285)]['telemetry']['trackPhaseEnd'](_0x33daa0[_0x3b4eaf(0x1f9)],{...this['params']['transportMetadata'],'tracingStarted':this[_0x3b4eaf(0x24c)],'screencastStarted':this[_0x3b4eaf(0x20a)]});}async[_0x2539ac(0x278)](){const _0x11e347=_0x2539ac,_0x7b79ba={'EuUEi':function(_0x381055,_0x2177df,_0x1df808){return _0x381055(_0x2177df,_0x1df808);},'PyUKN':_0x11e347(0x29b),'oKWgI':_0x11e347(0x299)};if(this['stopped'])return;this['stopped']=!![];const _0xe599ba={...this[_0x11e347(0x285)][_0x11e347(0x20f)],'frameCount':this[_0x11e347(0x263)],'traceSampleCount':this[_0x11e347(0x27d)],'tracingStarted':this['tracingStarted'],'screencastStarted':this['screencastStarted']};this[_0x11e347(0x285)]['telemetry'][_0x11e347(0x257)]('nova_act_artifact_recording_stop',_0xe599ba);try{await this[_0x11e347(0x1e9)](),await this['captureTraceSample'](),await this[_0x11e347(0x22e)](),await Promise[_0x11e347(0x25b)](this['frameWrites']);this[_0x11e347(0x267)]&&this[_0x11e347(0x24c)]&&await this[_0x11e347(0x267)]['tracing']['stop']({'path':_0x7b79ba[_0x11e347(0x245)](buildCliArtifactPath,this[_0x11e347(0x285)]['cliArtifactDir'],_0x7b79ba['PyUKN'])});const _0x4e61fc=await this['encodeScreencastVideo']();this[_0x11e347(0x285)][_0x11e347(0x261)][_0x11e347(0x208)](_0x7b79ba['oKWgI'],{..._0xe599ba,'videoPath':_0x4e61fc});}catch(_0x300e12){await this['params'][_0x11e347(0x261)]['trackPhaseError'](_0x7b79ba[_0x11e347(0x1fb)],_0x300e12,_0xe599ba);}finally{await this[_0x11e347(0x210)]?.['close']()[_0x11e347(0x2b4)](()=>undefined),this['browser']=null,this['context']=null,this['frameSession']=null;}}async['readSessionMetadataWithRetry'](){const _0x260113=_0x2539ac,_0x500027={'dwZOu':function(_0x358b23){return _0x358b23();},'epOFI':_0x260113(0x243),'qnsPD':function(_0x1828df,_0x54b23d){return _0x1828df(_0x54b23d);},'ZlEJR':function(_0x3b177d,_0x542ea3){return _0x3b177d<_0x542ea3;},'dDUxs':function(_0x2788b2,_0x6b5826){return _0x2788b2-_0x6b5826;},'pjCbV':function(_0x748e20,_0x1b3dff){return _0x748e20 instanceof _0x1b3dff;}},_0x2d53d4=join(_0x500027[_0x260113(0x255)](homedir),_0x500027['epOFI'],_0x260113(0x210),'sessions',this['params']['novaOptions'][_0x260113(0x1fc)]+_0x260113(0x28e)),_0x5a0156=Date['now']();let _0x137aa0;do{try{const _0xad42ba=JSON[_0x260113(0x1d8)](await readFile(_0x2d53d4,_0x260113(0x295)));if(_0xad42ba['cdp_endpoint'])return _0xad42ba;_0x137aa0=new Error(_0x260113(0x24d)+_0x2d53d4);}catch(_0x2a7b23){_0x137aa0=_0x2a7b23;}await _0x500027['qnsPD'](delay,0x64);}while(_0x500027['ZlEJR'](_0x500027[_0x260113(0x1ec)](Date[_0x260113(0x1e5)](),_0x5a0156),NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x500027[_0x260113(0x25d)](_0x137aa0,Error))throw _0x137aa0;throw new Error(_0x260113(0x271)+_0x2d53d4);}async['startScreencast'](){const _0x209f27=_0x2539ac,_0x22a89a={'tAMFi':'base64','pLcSe':function(_0x3b031b,_0x32fa94,_0x40dc56){return _0x3b031b(_0x32fa94,_0x40dc56);},'KlIBE':_0x209f27(0x21b)};if(!this['context'])return;const _0x36f7b3=this[_0x209f27(0x267)][_0x209f27(0x1f2)]()[0x0];if(!_0x36f7b3)return;const _0x5091e1=this['getFrameDir']();await _0x22a89a['pLcSe'](mkdir,_0x5091e1,{'recursive':!![]});const _0x462181=await this['context']['newCDPSession'](_0x36f7b3);this['frameSession']=_0x462181,_0x462181['on'](_0x209f27(0x2a2),_0x4ab15b=>{const _0x270856=_0x209f27,_0x1c0fff=++this['frameCount'],_0x31ba19=join(_0x5091e1,_0x270856(0x23b)+String(_0x1c0fff)['padStart'](0x6,'0')+'.jpg'),_0x35fd30=writeFile(_0x31ba19,Buffer[_0x270856(0x24b)](_0x4ab15b['data'],_0x22a89a[_0x270856(0x1df)]))[_0x270856(0x2b4)](()=>undefined)['finally'](()=>_0x462181[_0x270856(0x2b6)]('Page.screencastFrameAck',{'sessionId':_0x4ab15b[_0x270856(0x1fc)]}))[_0x270856(0x298)](()=>undefined)['catch'](()=>undefined);this[_0x270856(0x277)]['push'](_0x35fd30);}),await _0x462181[_0x209f27(0x2b6)]('Page.startScreencast',{'format':_0x22a89a['KlIBE'],'quality':0x4b,'everyNthFrame':0x6}),this['screencastStarted']=!![];}async['stopScreencast'](){const _0x1afb14=_0x2539ac,_0x358113={'pzwRi':_0x1afb14(0x27f)};if(!this[_0x1afb14(0x202)]||!this['screencastStarted'])return;await this[_0x1afb14(0x202)]['send'](_0x358113['pzwRi'])[_0x1afb14(0x2b4)](()=>undefined);}['startTraceSampling'](){const _0x16c4e0=_0x2539ac;this['queueTraceSample'](),this[_0x16c4e0(0x290)]=setInterval(()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x2539ac(0x275)](){if(this['traceSampleInFlight'])return;this['traceSampleInFlight']=this['captureTraceSample']()['finally'](()=>{const _0x5960ab=_0x5833;this[_0x5960ab(0x203)]=null;});}async['stopTraceSampling'](){const _0x1cad6f=_0x2539ac,_0x2cbf5c={'Xxstm':function(_0x1136cc,_0x4830f4){return _0x1136cc(_0x4830f4);}};this[_0x1cad6f(0x290)]&&(_0x2cbf5c['Xxstm'](clearInterval,this['traceSampleTimer']),this[_0x1cad6f(0x290)]=null),await this[_0x1cad6f(0x203)]?.['catch'](()=>undefined);}async['captureTraceSample'](){const _0x29309f=_0x2539ac,_0x42b4cf={'iwbem':_0x29309f(0x26a)},_0x4cc256=this[_0x29309f(0x267)]?.[_0x29309f(0x1f2)]()[0x0];if(!_0x4cc256)return;try{await _0x4cc256[_0x29309f(0x2bc)](_0x42b4cf[_0x29309f(0x2b8)])['evaluate'](_0x3883db=>_0x3883db[_0x29309f(0x20e)],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async['encodeScreencastVideo'](){const _0x30587d=_0x2539ac,_0x372c56={'VfJdd':function(_0x44b23f,_0x4c0c5c){return _0x44b23f<_0x4c0c5c;},'tRhXw':function(_0x3634d4,_0xe2ea9c,_0x78697a){return _0x3634d4(_0xe2ea9c,_0x78697a);},'kyzMu':function(_0x38f09c,_0x3800ed,_0x2e61bf){return _0x38f09c(_0x3800ed,_0x2e61bf);},'hmjta':_0x30587d(0x1f3),'JYTYr':'-hide_banner','ekvUU':_0x30587d(0x256),'WcEZl':'-framerate','zGdvi':_0x30587d(0x232),'ktHoZ':_0x30587d(0x235),'iGZQt':_0x30587d(0x205),'ePAAB':_0x30587d(0x281),'gyBPG':'libvpx-vp9'};if(_0x372c56['VfJdd'](this[_0x30587d(0x263)],0x2))return null;const _0xf4c52f=await resolveFfmpegPath();if(!_0xf4c52f)return null;const _0x1b701e=join(this[_0x30587d(0x285)][_0x30587d(0x26f)],'videos');await _0x372c56['tRhXw'](mkdir,_0x1b701e,{'recursive':!![]});const _0x4640c9=_0x372c56[_0x30587d(0x244)](join,_0x1b701e,_0x372c56[_0x30587d(0x282)]);return await _0x372c56['tRhXw'](execFileAsync,_0xf4c52f,['-y',_0x372c56[_0x30587d(0x2b5)],_0x30587d(0x2a1),_0x372c56[_0x30587d(0x1eb)],_0x372c56[_0x30587d(0x2a7)],'10','-i',join(this[_0x30587d(0x1ee)](),_0x372c56[_0x30587d(0x231)]),_0x372c56[_0x30587d(0x211)],_0x372c56['iGZQt'],_0x372c56['ePAAB'],_0x372c56['gyBPG'],_0x30587d(0x242),_0x30587d(0x283),_0x4640c9]),_0x4640c9;}['getFrameDir'](){const _0x2a03fa=_0x2539ac;return join(this['params'][_0x2a03fa(0x26f)],'nova-video-frames');}}async function delay(_0x301327){await new Promise(_0x182587=>setTimeout(_0x182587,_0x301327));}async function resolveFfmpegPath(){const _0x19c885=_0x2539ac,_0x27b5bd={'rwJfG':'ffmpeg','JEzvB':function(_0x120200,_0x594266,_0x34f507,_0x413967,_0x4f04db){return _0x120200(_0x594266,_0x34f507,_0x413967,_0x4f04db);},'XVaZV':function(_0xb5f388){return _0xb5f388();},'CqdOe':_0x19c885(0x29f),'kASDe':_0x19c885(0x248),'cHCpX':function(_0x30129b,_0x4c3c3a){return _0x30129b(_0x4c3c3a);}};if(await canRunFfmpeg('ffmpeg'))return _0x27b5bd[_0x19c885(0x291)];const _0x4637c1=[_0x27b5bd['JEzvB'](join,_0x27b5bd[_0x19c885(0x1de)](homedir),_0x19c885(0x20d),_0x19c885(0x23c),_0x27b5bd[_0x19c885(0x2a5)]),join(homedir(),_0x27b5bd['kASDe'],_0x27b5bd[_0x19c885(0x2a5)])];for(const _0x4ac1a of _0x4637c1){try{const _0x361013=await readdir(_0x4ac1a),_0x11c02e=_0x361013[_0x19c885(0x260)](_0x1ca722=>_0x1ca722[_0x19c885(0x1f1)](_0x19c885(0x204)))[_0x19c885(0x27e)]()[_0x19c885(0x2bb)]()['flatMap'](_0x5ded53=>[join(_0x4ac1a,_0x5ded53,'ffmpeg-mac'),join(_0x4ac1a,_0x5ded53,_0x19c885(0x22b)),join(_0x4ac1a,_0x5ded53,_0x19c885(0x238))]);for(const _0x2ab66c of _0x11c02e){if(await _0x27b5bd[_0x19c885(0x1f4)](canRunFfmpeg,_0x2ab66c))return _0x2ab66c;}}catch{}}return null;}async function canRunFfmpeg(_0x347624){const _0x69b945=_0x2539ac,_0x2f030a={'jDIhK':'-version'};try{return await execFileAsync(_0x347624,[_0x2f030a[_0x69b945(0x2ab)]]),!![];}catch{return![];}}function toStepDisplayName(_0x463953){const _0x11fb2c=_0x2539ac,_0x43e379=basename(_0x463953)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x11fb2c(0x229)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x43e379,'isKeyStep':/^key_/i['test'](basename(_0x463953))};}function extractShellValue(_0xca8de){if(!_0xca8de)return null;return _0xca8de[0x1]??_0xca8de[0x2]??_0xca8de[0x3]??null;}function extractOutputOption(_0x52950f){const _0x20345a=_0x2539ac;return extractShellValue(_0x52950f[_0x20345a(0x253)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x4856e8,_0x81daf3){const _0x35866f=_0x2539ac,_0x42b907={'Uknrk':_0x35866f(0x21d),'sXBKH':_0x35866f(0x218),'UCZYg':'goto','JSVCU':_0x35866f(0x1fe),'farkY':'wait-for','WHxwt':'wait\x20for\x20page\x20condition','Mhezn':function(_0x2f1fee,_0x1418f9){return _0x2f1fee(_0x1418f9);},'BRrPT':_0x35866f(0x251),'MYpxg':_0x35866f(0x240),'LfFLU':'export\x20Nova\x20session'};switch(_0x81daf3){case _0x42b907[_0x35866f(0x21e)]:return _0x35866f(0x1e7);case _0x35866f(0x247):return _0x35866f(0x230);case _0x35866f(0x200):return _0x42b907['sXBKH'];case _0x35866f(0x2aa):return'ask\x20page\x20question';case _0x42b907[_0x35866f(0x270)]:return _0x42b907['JSVCU'];case _0x42b907['farkY']:return _0x42b907['WHxwt'];case'snapshot':{const _0x5db3b4=extractOutputOption(_0x4856e8);if(!_0x5db3b4)return _0x35866f(0x24e);const {name:_0x2f7db3}=_0x42b907['Mhezn'](toStepDisplayName,_0x5db3b4);return _0x35866f(0x2ad)+_0x2f7db3+'`';}case _0x42b907['BRrPT']:{const _0x346cb4=extractOutputOption(_0x4856e8);if(!_0x346cb4)return _0x35866f(0x274);const {name:_0x343b00,isKeyStep:_0x170d92}=toStepDisplayName(_0x346cb4);return _0x170d92?_0x35866f(0x1db)+_0x343b00+'`':_0x35866f(0x284)+_0x343b00+'`';}case _0x42b907['MYpxg']:return _0x42b907['LfFLU'];default:return _0x81daf3;}}function getNovaActCliCommandBlockReason(_0x16e30f){const _0x26795a=_0x2539ac,_0x2aa016={'RAPCw':function(_0x2a723c,_0x470668){return _0x2a723c(_0x470668);},'xYkvk':'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','UXoOM':_0x26795a(0x200),'hPueP':'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.'},_0x203484=_0x2aa016['RAPCw'](parseNovaActCliCommand,_0x16e30f);if(!_0x203484)return _0x2aa016['xYkvk'];if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x26795a(0x1f7)](_0x203484))return _0x26795a(0x2b2)+_0x203484+'`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.';if(_0x203484===_0x2aa016[_0x26795a(0x1e0)]&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x16e30f))return _0x2aa016['hPueP'];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x16e30f))return'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.';return null;}function buildFeedbackSection(_0x4d60c3){const _0x10d515=_0x2539ac,_0x19b40f={'xuBsY':_0x10d515(0x289),'gOOoF':_0x10d515(0x28d),'Ydtwo':_0x10d515(0x1e2),'KOzHr':'Reviewer','CiioT':'\x20>\x20','HrCDz':_0x10d515(0x1f6)};if(!_0x4d60c3||_0x4d60c3[_0x10d515(0x276)]['length']===0x0)return'';const _0x53dffb=_0x4d60c3[_0x10d515(0x276)][_0x10d515(0x292)](_0x4748c1=>{const _0x2c6743=_0x10d515,_0x476f47=new Date(_0x4748c1[_0x2c6743(0x2c1)])['toLocaleDateString'](_0x19b40f['xuBsY'],{'month':_0x19b40f['gOOoF'],'day':_0x19b40f['Ydtwo']}),_0x48ba3e=_0x4748c1[_0x2c6743(0x21f)]||_0x4748c1['authorEmail']||_0x19b40f[_0x2c6743(0x228)],_0x2ad7f9=_0x4748c1[_0x2c6743(0x1e6)]?_0x2c6743(0x1da)+(_0x4748c1[_0x2c6743(0x1e6)]['selector']['split'](_0x19b40f[_0x2c6743(0x262)])[_0x2c6743(0x1fd)]()?.[_0x2c6743(0x2b0)](':')[0x0]||_0x19b40f['HrCDz'])+'>\x20\x22'+(_0x4748c1[_0x2c6743(0x1e6)]['textContent']||'')[_0x2c6743(0x264)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x4748c1['id']+_0x2c6743(0x2a9)+_0x48ba3e+_0x2c6743(0x1ef)+_0x476f47+'):\x20\x22'+_0x4748c1[_0x2c6743(0x1dc)]+'\x22'+_0x2ad7f9;})['join']('\x0a');return _0x10d515(0x227)+_0x53dffb;}function _0x436f(){const _0x471132=['screenshot','SBqnT','match','03_final-state.png','dwZOu','error','trackPhaseStart','JFbxo','canonicalFlow','YYQQN','allSettled','args','pjCbV','keys','stderr','filter','telemetry','CiioT','frameCount','slice','close','PostToolUse','context','FAicx','startAttempted','body','env','Bash','description','nova-session-export.json','cliArtifactDir','UCZYg','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','UyDzl','values','capture\x20screenshot','queueTraceSample','unaddressedComments','frameWrites','stop','stdout','nova_act_session_close','19206chMmuR','ibKZc','traceSampleCount','sort','Page.stopScreencast','tool_name','-c:v','hmjta','yuv420p','capture\x20step\x20`','params','`.\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`','757766fmPbnv','hook_event_name','en-US','nova_act_artifact_recording','3584370JuzbBs','2846876KIisYp','short','.json','nova-user-data/*','traceSampleTimer','rwJfG','map','stopped','\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','utf-8','readSessionMetadataWithRetry','get','then','nova_act_artifact_recording_stop','nova_act_command_failure','trace.zip','yadrw','XCvPE','00_initial-state.yml','ms-playwright','phase','-loglevel','Page.screencastFrame','nova_act_final_screenshot','\x20session\x20create\x20','CqdOe','kEBIf','WcEZl','startScreencast',']\x20**','ask','jDIhK','sVYOA','capture\x20snapshot\x20`','IqxNT','6hYKZGz','split','pzFaE','Nova\x20command\x20`','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','catch','JYTYr','send','trackPhaseError','iwbem','nova_act_session_export','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','reverse','locator','YfnPb','startTraceSampling','4390vuCcSR','trim','createdAt','8649370kcLMXc','parse','start','\x20(on\x20element:\x20<','capture\x20key\x20step\x20`','content','\x20screenshot\x20--output\x20','XVaZV','tAMFi','UXoOM','goto','numeric','\x20snapshot\x20--output\x20','wait-for','now','domRef','create\x20Nova\x20browser\x20session','--output','stopTraceSampling','GVTWw','ekvUU','dDUxs','Nfzkm','getFrameDir','**\x20(','nova-report','startsWith','pages','session-recording.webm','cHCpX','3RApeOP','element','has','name','yKCWX','set','oKWgI','sessionId','pop','navigate\x20browser','final-state.yaml','verify','zip','frameSession','traceSampleInFlight','ffmpeg-','scale=trunc(iw/2)*2:trunc(ih/2)*2','755128viIetl','EXyWb','trackPhaseEnd','[nova-act-cli]\x20','screencastStarted','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','tool_input','Library','tagName','transportMetadata','browser','ktHoZ','Vncof','SGiQb','5571291pCxZTY','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`','pOHHT','log','verify\x20page\x20condition','`\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.','nova_act_session_report','jpeg','prrxG','session\x20create','Uknrk','authorName','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','`\x0a3.\x20Run\x20`','-qr','vlgJH','`\x0a-\x20`','35zAjqhR','Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a','\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','KOzHr','replace','commandArgs','ffmpeg-linux','fcQlD','12mXIfUd','stopScreencast','shellCommand','execute\x20Nova\x20browser\x20action','zGdvi','frame-%06d.jpg','dHQAe','nova-act-cli','-vf','YBpxt','lcKaL','ffmpeg.exe','OJjPG','ztDwN','frame-','Caches','iHCFr','ZoFgs','--output-dir','session\x20export','notes','-pix_fmt','.act_cli','kyzMu','EuUEi','subcommand','execute','.cache','contexts','--format','from','tracingStarted','Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20','capture\x20snapshot','ybmCb','novaOptions'];_0x436f=function(){return _0x471132;};return _0x436f();}function buildNovaSharedOptionsInstruction(_0x480138){const _0x3e99f3=_0x2539ac;if(!_0x480138[_0x3e99f3(0x2c0)]())return'The\x20command\x20prefix\x20already\x20injects\x20session,\x20auth,\x20region,\x20workflow,\x20user-data,\x20headless,\x20and\x20JSON\x20options.\x0aDo\x20not\x20run\x20raw\x20`act\x20browser`.\x20Do\x20not\x20add\x20`--auth-mode`,\x20`--aws-profile`,\x20`--region`,\x20`--workflow-name`,\x20`--session-id`,\x20`--user-data-dir`,\x20`--headless`,\x20or\x20`--headed`\x20yourself.';return _0x3e99f3(0x226)+_0x480138;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x52be69){const _0x52baff=_0x2539ac,_0x43255c={'JFbxo':function(_0x2244e5,_0x296165,_0x28312a){return _0x2244e5(_0x296165,_0x28312a);},'tyTJU':_0x52baff(0x29e),'OJjPG':'01_initial-state.png','ztDwN':function(_0x4c4f5a,_0x666e9e,_0x21610d){return _0x4c4f5a(_0x666e9e,_0x21610d);},'CqoiV':_0x52baff(0x254),'CdAaE':function(_0x45295c,_0x248fd4){return _0x45295c(_0x248fd4);},'YBpxt':function(_0x2f9900,_0x1a3706){return _0x2f9900(_0x1a3706);}},{novaCommandPrefix:_0x20ff40,novaSharedOptionsSuffix:_0x3fb7db,cliArtifactDir:_0x130b16,url:_0x4496e3}=_0x52be69,_0x2dc145=_0x43255c[_0x52baff(0x258)](buildCliArtifactPath,_0x130b16,_0x43255c['tyTJU']),_0xd07e45=buildCliArtifactPath(_0x130b16,_0x43255c[_0x52baff(0x239)]),_0x12abf5=_0x43255c['JFbxo'](buildCliArtifactPath,_0x130b16,'02_final-state.yml'),_0x1141b2=_0x43255c[_0x52baff(0x23a)](buildCliArtifactPath,_0x130b16,_0x43255c['CqoiV']);return'You\x20are\x20testing\x20Nova\x20Act\x20browser\x20automation.\x20Your\x20task\x20is\x20simple.\x0a\x0aUse\x20Bash\x20and\x20Nova\x20Act\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x20ff40+'\x0a\x0a'+_0x43255c['CdAaE'](buildNovaSharedOptionsInstruction,_0x3fb7db)+'\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`'+_0x20ff40+'\x20session\x20create\x20'+quoteShellArg(_0x4496e3)+'\x20'+_0x3fb7db+'`\x0a2.\x20Run\x20`'+_0x20ff40+'\x20snapshot\x20--output\x20'+_0x43255c[_0x52baff(0x236)](quoteShellArg,_0x2dc145)+'\x20'+_0x3fb7db+_0x52baff(0x221)+_0x20ff40+'\x20screenshot\x20--output\x20'+quoteShellArg(_0xd07e45)+'\x20'+_0x3fb7db+'`\x0a4.\x20Run\x20one\x20batched\x20`'+_0x20ff40+_0x52baff(0x220)+_0x20ff40+_0x52baff(0x1e3)+_0x43255c[_0x52baff(0x236)](quoteShellArg,_0x12abf5)+'\x20'+_0x3fb7db+'`\x0a6.\x20Run\x20`'+_0x20ff40+_0x52baff(0x1dd)+_0x43255c[_0x52baff(0x236)](quoteShellArg,_0x1141b2)+'\x20'+_0x3fb7db+'`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`'+_0x130b16+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x214b5c){const _0x956ce1=_0x2539ac,_0xbd1481={'djPUx':function(_0xe41321,_0x14d6c4){return _0xe41321(_0x14d6c4);},'yadrw':'01_initial.yml','eUEmg':'key_03_success-state.png','YfnPb':function(_0x4fbd53,_0x4eff7f){return _0x4fbd53(_0x4eff7f);}},{checklistItem:_0x3a0293,itemFeedback:_0xd9f674,taskDescription:_0x502e87,novaCommandPrefix:_0x4ecb9f,novaSharedOptionsSuffix:_0x57b35e,cliArtifactDir:_0x25d2fb,url:_0x222507,loginInstructions:_0x4f8573}=_0x214b5c,_0x5ec498=_0x3a0293[_0x956ce1(0x241)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x3a0293['notes']:'',_0x446025=_0xbd1481['djPUx'](buildFeedbackSection,_0xd9f674),_0x57d672=_0xd9f674?.[_0x956ce1(0x259)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0xd9f674['canonicalFlow']:'',_0x206b65=_0x4f8573?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x4f8573+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x46c7ee=buildCliArtifactPath(_0x25d2fb,_0xbd1481[_0x956ce1(0x29c)]),_0x466504=buildCliArtifactPath(_0x25d2fb,'01_initial-state.png'),_0x2ec1b5=buildCliArtifactPath(_0x25d2fb,_0xbd1481['eUEmg']);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'+_0x3a0293[_0x956ce1(0x26d)]+_0x5ec498+_0x446025+_0x57d672+_0x956ce1(0x2ba)+_0x502e87+'\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20'+_0x222507+_0x956ce1(0x294)+_0x206b65+'\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`'+_0x4ecb9f+_0x956ce1(0x2a4)+_0xbd1481['YfnPb'](quoteShellArg,_0x222507)+'\x20'+_0x57b35e+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x25d2fb+'`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`'+_0x4ecb9f+'\x20snapshot\x20--output\x20'+_0xbd1481[_0x956ce1(0x2bd)](quoteShellArg,_0x46c7ee)+'\x20'+_0x57b35e+_0x956ce1(0x215)+_0x4ecb9f+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x466504)+'\x20'+_0x57b35e+_0x956ce1(0x286)+_0x2ec1b5+'`.\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`'+_0x4ecb9f+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0x57b35e[_0x956ce1(0x2c0)]()?'`'+_0x57b35e+'`':'`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`')+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x57b35e)+'\x0a\x0aExamples:\x0a-\x20`'+_0x4ecb9f+_0x956ce1(0x20b)+_0x57b35e+'`\x0a-\x20`'+_0x4ecb9f+'\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20'+_0x57b35e+_0x956ce1(0x224)+_0x4ecb9f+_0x956ce1(0x1e3)+_0xbd1481['YfnPb'](quoteShellArg,_0x46c7ee)+'\x20'+_0x57b35e+_0x956ce1(0x224)+_0x4ecb9f+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x2ec1b5)+'\x20'+_0x57b35e+_0x956ce1(0x219);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x3313b5){const _0x47f014=_0x2539ac,_0x17147c={'EHNkg':function(_0x443989,_0x1b3862){return _0x443989===_0x1b3862;}},_0x4034e7=[..._0x3313b5[_0x47f014(0x25e)]()][_0x47f014(0x27e)]();let _0x28c1b4=0x0;for(const _0x4e0c86 of _0x3313b5[_0x47f014(0x273)]()){_0x28c1b4+=_0x4e0c86;}return{'cliCommandCount':_0x28c1b4,'cliCommandsSeen':_0x4034e7,'noCliCommandsCalled':_0x17147c['EHNkg'](_0x28c1b4,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x438e55,_0x49307a){const _0x156e99=_0x2539ac,_0x2dbb64={'IqxNT':function(_0x29c1fa,_0x3342af){return _0x29c1fa!==_0x3342af;},'IgIBF':function(_0x5a5a77,_0x34b789){return _0x5a5a77(_0x34b789);},'Nfzkm':'block','awKlD':_0x156e99(0x266),'MAtiM':function(_0x15eeb7,_0x34e65f){return _0x15eeb7(_0x34e65f);},'ucPeY':function(_0x2ab685,_0x235991){return _0x2ab685+_0x235991;},'Yzfzs':'nova_act_command','dHQAe':function(_0x210d42,_0x18320f){return _0x210d42===_0x18320f;},'HVHLt':_0x156e99(0x28a),'FAicx':_0x156e99(0x234),'iHCFr':'PostToolUseFailure'},_0x272a91=new Map(),_0x4faec4=async _0x4df169=>{const _0x5e22b0=_0x156e99;if(_0x2dbb64[_0x5e22b0(0x2ae)](_0x4df169[_0x5e22b0(0x288)],'PreToolUse'))return{};const _0x406084=_0x4df169;if(_0x2dbb64['IqxNT'](_0x406084[_0x5e22b0(0x280)],'Bash'))return{};const _0x555fac=_0x406084[_0x5e22b0(0x20c)],_0x5b0e5e=_0x2dbb64['IgIBF'](extractBashCommand,_0x555fac);if(!_0x5b0e5e)return{};const _0x4a79c1=_0x2dbb64['IgIBF'](getNovaActCliCommandBlockReason,_0x5b0e5e);if(!_0x4a79c1)return{};return{'decision':_0x2dbb64[_0x5e22b0(0x1ed)],'reason':_0x4a79c1};},_0x3f9712=async _0xd9bcba=>{const _0x167e25=_0x156e99;if(_0xd9bcba['hook_event_name']!==_0x2dbb64['awKlD'])return{};const _0x3a6d7d=_0xd9bcba;if(_0x3a6d7d[_0x167e25(0x280)]!==_0x167e25(0x26c))return{};const _0x1b6b47=_0x3a6d7d[_0x167e25(0x20c)],_0x4dffb4=_0x2dbb64['MAtiM'](extractBashCommand,_0x1b6b47);if(!_0x4dffb4)return{};const _0x2be4fa=parseNovaActCliCommand(_0x4dffb4);if(!_0x2be4fa)return{};_0x272a91[_0x167e25(0x1fa)](_0x2be4fa,_0x2dbb64['ucPeY'](_0x272a91[_0x167e25(0x297)](_0x2be4fa)||0x0,0x1)),_0x438e55[_0x167e25(0x257)]('nova_act_command',{'subcommand':_0x2be4fa}),_0x438e55[_0x167e25(0x208)](_0x2dbb64['Yzfzs'],{'subcommand':_0x2be4fa,'commandPreview':previewNovaActCliCommand(_0x4dffb4)}),console[_0x167e25(0x217)](_0x167e25(0x209)+formatNovaActCliLog(_0x4dffb4,_0x2be4fa));if(_0x2dbb64[_0x167e25(0x233)](_0x2be4fa,_0x167e25(0x21d))&&_0x49307a)try{await _0x49307a[_0x167e25(0x1d9)]();}catch(_0x1e7986){await _0x438e55[_0x167e25(0x2b7)](_0x2dbb64['HVHLt'],_0x1e7986,{'transport':_0x2dbb64[_0x167e25(0x268)]});}return{};},_0x138905=async _0x571993=>{const _0x677ef4=_0x156e99;if(_0x571993['hook_event_name']!==_0x2dbb64[_0x677ef4(0x23d)])return{};const _0x5a77b7=_0x571993;if(_0x5a77b7[_0x677ef4(0x280)]!==_0x677ef4(0x26c))return{};return await _0x438e55['trackPhaseError'](_0x677ef4(0x29a),_0x5a77b7['error'],{'transport':_0x2dbb64['FAicx'],'toolName':_0x677ef4(0x26c)}),{};};return{'preToolUseHook':_0x4faec4,'postToolUseHook':_0x3f9712,'postToolUseFailureHook':_0x138905,'commandCounts':_0x272a91};}async function runNovaLifecycleCommand(_0x176c00){const _0x305924=_0x2539ac,_0x44b949={'fcQlD':function(_0x3da59f,_0x159a8b){return _0x3da59f(_0x159a8b);},'vlgJH':function(_0x19f1e7,_0xa1ef38){return _0x19f1e7(_0xa1ef38);}},{novaOptions:_0x4979de,commandArgs:_0x31ecd7,telemetry:_0x1665eb,phase:_0x198d03,metadata:_0x459043,timeoutMs:_0x1decba}=_0x176c00;_0x1665eb[_0x305924(0x257)](_0x198d03,_0x459043);try{const _0x3fa560=await _0x44b949[_0x305924(0x22c)](runNovaActCliCommand,{..._0x4979de,'commandArgs':_0x31ecd7,'cwd':process['cwd'](),'env':process[_0x305924(0x26b)],'timeoutMs':_0x1decba??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x1665eb['trackPhaseEnd'](_0x198d03,{..._0x459043,'subcommand':_0x3fa560['invocation'][_0x305924(0x246)],'commandPreview':_0x44b949[_0x305924(0x223)](previewNovaActCliCommand,_0x3fa560['invocation'][_0x305924(0x22f)]),'stdoutPreview':previewNovaActCliCommand(_0x3fa560[_0x305924(0x279)]),'stderrPreview':previewNovaActCliCommand(_0x3fa560[_0x305924(0x25f)]),'logDir':extractNovaActLogDir(_0x3fa560[_0x305924(0x279)])});}catch(_0x305110){await _0x1665eb['trackPhaseError'](_0x198d03,_0x305110,_0x459043);throw _0x305110;}}export async function finalizeVerifyFeatureNovaCliSession(_0x3dd6c9){const _0x1a8a57=_0x2539ac,_0x428180={'YYQQN':'screenshot','XCvPE':_0x1a8a57(0x1e8),'pzFaE':function(_0x56f02c,_0x3a6c8e,_0x137e1a){return _0x56f02c(_0x3a6c8e,_0x137e1a);},'SBqnT':'key_final-state.png','Vncof':'nova_act_final_snapshot','fQcoj':'snapshot','NHeYL':_0x1a8a57(0x1ff),'sVYOA':_0x1a8a57(0x2b9),'kEBIf':'session','ZoFgs':'export','ibKZc':_0x1a8a57(0x24a),'KXfrj':_0x1a8a57(0x21a),'GVTWw':_0x1a8a57(0x1f0),'pOHHT':_0x1a8a57(0x27a),'EXyWb':_0x1a8a57(0x265),'obMCD':function(_0x24ede0,_0x585fbe){return _0x24ede0===_0x585fbe;}},{telemetry:_0x3eef3f,novaOptions:_0x174c00,cliArtifactDir:_0x39a36f,transportMetadata:_0x1e5db7,artifactRecorder:_0x3abff9}=_0x3dd6c9,_0xde24d5=[{'phase':_0x1a8a57(0x2a3),'commandArgs':[_0x428180[_0x1a8a57(0x25a)],_0x428180[_0x1a8a57(0x29d)],_0x428180['pzFaE'](buildCliArtifactPath,_0x39a36f,_0x428180[_0x1a8a57(0x252)])]},{'phase':_0x428180[_0x1a8a57(0x212)],'commandArgs':[_0x428180['fQcoj'],_0x428180['XCvPE'],buildCliArtifactPath(_0x39a36f,_0x428180['NHeYL'])]},{'phase':_0x428180[_0x1a8a57(0x2ac)],'commandArgs':[_0x428180[_0x1a8a57(0x2a6)],_0x428180[_0x1a8a57(0x23e)],_0x428180[_0x1a8a57(0x27c)],'json',_0x428180['XCvPE'],buildCliArtifactPath(_0x39a36f,_0x1a8a57(0x26e))]},{'phase':_0x428180['KXfrj'],'commandArgs':['session','export','--report',_0x1a8a57(0x23f),_0x428180[_0x1a8a57(0x2b1)](buildCliArtifactPath,_0x39a36f,_0x428180[_0x1a8a57(0x1ea)])]},{'phase':_0x428180[_0x1a8a57(0x216)],'commandArgs':[_0x428180[_0x1a8a57(0x2a6)],_0x428180[_0x1a8a57(0x207)]]}];for(const _0x293eb9 of _0xde24d5){_0x428180['obMCD'](_0x293eb9[_0x1a8a57(0x2a0)],_0x428180[_0x1a8a57(0x216)])&&await _0x3abff9?.[_0x1a8a57(0x278)]();try{await runNovaLifecycleCommand({'novaOptions':_0x174c00,'commandArgs':[..._0x293eb9[_0x1a8a57(0x22a)]],'telemetry':_0x3eef3f,'phase':_0x293eb9[_0x1a8a57(0x2a0)],'metadata':_0x1e5db7});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x5717c1){const _0x366c42=_0x2539ac,_0x486bb5={'SGiQb':function(_0x5c39fa,_0x18c958,_0xf6d9f4){return _0x5c39fa(_0x18c958,_0xf6d9f4);},'OfGeq':function(_0x58296c,_0x380269){return _0x58296c(_0x380269);},'axrTl':function(_0x3ddd92,_0x35f0d7){return _0x3ddd92+_0x35f0d7;},'lcKaL':function(_0x273e67,_0x3a6233){return _0x273e67===_0x3a6233;}},{cwd:_0x132015,cliArtifactDir:_0x133a65,startTime:_0x25a39c}=_0x5717c1,_0x433b79=[];await mkdir(_0x133a65,{'recursive':!![]});const _0x52f14b=await readdir(_0x132015,{'withFileTypes':!![]});for(const _0x1f6b48 of _0x52f14b){if(!_0x1f6b48['isFile']()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN['test'](_0x1f6b48[_0x366c42(0x1f8)]))continue;const _0x1e418f=_0x486bb5['SGiQb'](join,_0x132015,_0x1f6b48['name']),_0x319fe3=await _0x486bb5['OfGeq'](stat,_0x1e418f);if(_0x486bb5['axrTl'](_0x319fe3['mtimeMs'],0x7d0)<_0x25a39c)continue;const _0x1f7aed=_0x486bb5['SGiQb'](buildCliArtifactPath,_0x133a65,_0x1f6b48[_0x366c42(0x1f8)]);if(_0x486bb5[_0x366c42(0x237)](_0x1e418f,_0x1f7aed))continue;await _0x486bb5[_0x366c42(0x213)](rename,_0x1e418f,_0x1f7aed),_0x433b79['push'](_0x1f6b48[_0x366c42(0x1f8)]);}return _0x433b79[_0x366c42(0x27e)]();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x4e0e4e){const _0x106eaf={'DwDQk':function(_0x5317b2,_0x3e0161,_0x38a014){return _0x5317b2(_0x3e0161,_0x38a014);},'KuxgC':'trace.zip'},_0x5a73b7=_0x106eaf['DwDQk'](join,_0x4e0e4e,_0x106eaf['KuxgC']);try{return{'buffer':await readFile(_0x5a73b7),'source':_0x5a73b7};}catch{return{'buffer':await zipVerifyFeatureNovaArtifacts(_0x4e0e4e),'source':_0x4e0e4e};}}async function zipVerifyFeatureNovaArtifacts(_0x3ed24a){const _0x51afe9=_0x2539ac,_0x127d8e={'prrxG':function(_0x21d25d,_0x7a2c80,_0x2f849b,_0x1ea522){return _0x21d25d(_0x7a2c80,_0x2f849b,_0x1ea522);},'Ijocp':function(_0x111202,_0x3c3c13,_0x4ce1ce,_0x46ba44){return _0x111202(_0x3c3c13,_0x4ce1ce,_0x46ba44);},'jnTPY':_0x51afe9(0x222),'ubRdE':_0x51afe9(0x28f),'ybmCb':function(_0x178914,_0xcf6107,_0x2a9dc1){return _0x178914(_0xcf6107,_0x2a9dc1);}},_0x5be1fa=_0x127d8e[_0x51afe9(0x21c)](join,_0x3ed24a,'..','nova-artifacts.zip');try{return await _0x127d8e['Ijocp'](execFileAsync,_0x51afe9(0x201),[_0x127d8e['jnTPY'],_0x5be1fa,'.','-x',_0x127d8e['ubRdE']],{'cwd':_0x3ed24a}),await readFile(_0x5be1fa);}finally{await _0x127d8e[_0x51afe9(0x24f)](rm,_0x5be1fa,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x47f97a){const _0x23cb45=_0x2539ac,_0x54bb24={'oyhcG':function(_0x3a1871,_0x3908d6,_0x48e614){return _0x3a1871(_0x3908d6,_0x48e614);}},_0x265b3f=buildNovaActCliInvocation(_0x47f97a['novaOptions'],_0x47f97a['commandArgs']);return{'command':_0x265b3f['command'],'args':_0x265b3f[_0x23cb45(0x25c)],'commandPreview':previewNovaActCliCommand(_0x265b3f['shellCommand']),'subcommand':_0x265b3f[_0x23cb45(0x246)],'sharedOptionsSuffix':_0x54bb24['oyhcG'](buildNovaActCliSharedOptionsSuffix,_0x47f97a['novaOptions'],_0x47f97a[_0x23cb45(0x22a)])};}
|
|
1
|
+
const _0x55adbb=_0x1e19;(function(_0x67d60c,_0x47192d){const _0x1129d5=_0x1e19,_0x5d790f=_0x67d60c();while(!![]){try{const _0x1f244b=parseInt(_0x1129d5(0xfb))/0x1*(parseInt(_0x1129d5(0x17a))/0x2)+parseInt(_0x1129d5(0xf9))/0x3*(parseInt(_0x1129d5(0x12e))/0x4)+parseInt(_0x1129d5(0x116))/0x5*(-parseInt(_0x1129d5(0x16e))/0x6)+-parseInt(_0x1129d5(0xf7))/0x7+parseInt(_0x1129d5(0x169))/0x8+parseInt(_0x1129d5(0x10a))/0x9+-parseInt(_0x1129d5(0x148))/0xa;if(_0x1f244b===_0x47192d)break;else _0x5d790f['push'](_0x5d790f['shift']());}catch(_0xff0a80){_0x5d790f['push'](_0x5d790f['shift']());}}}(_0x4305,0xa1242));import{execFile}from'child_process';import{mkdir,readdir,readFile,rename,rm,stat,writeFile}from'fs/promises';import{homedir}from'os';import{basename,join}from'path';function _0x4305(){const _0x3d3344=['bHARC','\x0a\x0aExamples:\x0a-\x20`','oVEAc','oPJLT','5349220aswgbD','ask','sort','jpeg','mnbes','01_initial-state.png','session\x20export','commandArgs','short','phase','finally','hsXJZ','novaOptions','pages','`\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.','nova_act_session_close','Caches','authorEmail','\x20>\x20','tracing','nSmPk','parse','from','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','95144yshoup','-version','libvpx-vp9','btYLn','kkJPh','create\x20Nova\x20browser\x20session','subcommand','capture\x20step\x20`','authorName','AaQGK','map','lqqNZ','doJpq','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','export','\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','cdoNR','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','-pix_fmt','domRef','env','Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.','nova_act_artifact_recording_stop','nova-user-data/*','stopScreencast','evaluate','12240460sOQmvI','key_03_success-state.png','startScreencast','encodeScreencastVideo','frameCount','wait\x20for\x20page\x20condition','screencastStarted','kqBQL','enVJo','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','ms-playwright','tool_name','context','\x20session\x20create\x20','final-state.yaml','FsIua','.jpg','hIKLu','[nova-act-cli]\x20','stopped','stopTraceSampling','unaddressedComments','TBWUE','Page.screencastFrameAck','lNYpR','yuv420p','getFrameDir','transportMetadata','name','jNmPa','-vf','tagName','cdp_endpoint','9439728vLpiAs','Page.stopScreencast','split','\x20snapshot\x20--output\x20','telemetry','6mSFRMs','UEXNR','browser','`\x0a-\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','BZGtv','tool_input','gquWJ','MNmzO','jElLS','cNYqb','block','48746MQrOqI','TJNUj','log','`\x0a3.\x20Run\x20`','00_initial-state.yml','session-recording.webm','thNDo','catch','IDCEh','ffmpeg','args','createdAt','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','export\x20Nova\x20session','newCDPSession','BbZAc','Library','traceSampleCount','vpfbH','hook_event_name','execute\x20Nova\x20browser\x20action','McCye','params','startTraceSampling','NvHYg','NcZfi','videos','LzyCa','iqTDG','get','data','capture\x20snapshot\x20`','PostToolUseFailure','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.','startAttempted','state','screenshot','content','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','traceSampleInFlight','-framerate','match','Ncwvp','BrsyI','startsWith','traceSampleTimer','kBeYj','--output','allSettled','snapshot','join','zUDFX','rkwWA','test','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','stdout','queueTraceSample','VhLFg','fSJnj','command','toLocaleDateString','close','replace','session\x20create','has','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','nova-artifacts.zip','Page.startScreencast','trackPhaseError','DQnSK','pLFJp','\x20screenshot\x20--output\x20','readSessionMetadataWithRetry','textContent','ckAJh','Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a','trackPhaseEnd','`.\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`','nova-session-export.json','adDoN','sessions','5064136HmApGr','--format','96XMlUIF','XFxXi','43zaXLaJ','tracingStarted','navigate\x20browser','):\x20\x22','ffmpeg.exe','`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','start','stop','bmzrO','stderr','xHWJx','contexts','sessionId','trackPhaseStart','pcSvI','6193935QzztZu','NYBkV','DFDqa','mtimeMs','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','Page.screencastFrame','cliArtifactDir','invocation'];_0x4305=function(){return _0x3d3344;};return _0x4305();}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([_0x55adbb(0xe5),'execute','verify',_0x55adbb(0x117),'goto','wait-for',_0x55adbb(0xd7),'screenshot']),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x1e98d7,_0x15c9b3){const _0x4c305d={'lqnlv':function(_0x451720,_0x1a067c,_0x4991c3){return _0x451720(_0x1a067c,_0x4991c3);}};return _0x4c305d['lqnlv'](join,_0x1e98d7,_0x15c9b3);}export class NovaActArtifactRecorder{[_0x55adbb(0x190)];[_0x55adbb(0x170)]=null;[_0x55adbb(0x154)]=null;['frameSession']=null;['frameWrites']=[];['frameCount']=0x0;['traceSampleCount']=0x0;[_0x55adbb(0x1a7)]=null;[_0x55adbb(0x1a1)]=null;['tracingStarted']=![];[_0x55adbb(0x14e)]=![];['startAttempted']=![];[_0x55adbb(0x15b)]=![];constructor(_0x340f50){this['params']=_0x340f50;}async['start'](){const _0x6e86a9=_0x55adbb,_0x56e354={'pcSvI':function(_0x5747d7,_0x424f78,_0x1db41f){return _0x5747d7(_0x424f78,_0x1db41f);}};if(this['startAttempted'])return;this[_0x6e86a9(0x19c)]=!![];const _0x5e5f7a=await this[_0x6e86a9(0xee)](),_0x52d451=_0x5e5f7a[_0x6e86a9(0x168)];if(!_0x52d451)throw new Error(_0x6e86a9(0xe7)+this['params'][_0x6e86a9(0x122)][_0x6e86a9(0x107)]);await _0x56e354[_0x6e86a9(0x109)](mkdir,this[_0x6e86a9(0x190)]['cliArtifactDir'],{'recursive':!![]}),this[_0x6e86a9(0x170)]=await chromium['connectOverCDP'](_0x52d451,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x6e86a9(0x154)]=this[_0x6e86a9(0x170)][_0x6e86a9(0x106)]()[0x0]??null;if(!this['context'])throw new Error('Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context');await this[_0x6e86a9(0x154)]['tracing'][_0x6e86a9(0x101)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x6e86a9(0x191)](),await this['startScreencast'](),this['params'][_0x6e86a9(0x16d)]['trackPhaseStart']('nova_act_artifact_recording',{...this['params'][_0x6e86a9(0x163)],'cdpEndpoint':_0x52d451,'browserPid':_0x5e5f7a['browser_pid'],'sessionState':_0x5e5f7a[_0x6e86a9(0x19d)]}),this[_0x6e86a9(0x190)][_0x6e86a9(0x16d)][_0x6e86a9(0xf2)]('nova_act_artifact_recording',{...this[_0x6e86a9(0x190)][_0x6e86a9(0x163)],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x6e86a9(0x14e)]});}async[_0x55adbb(0x102)](){const _0x2b57ff=_0x55adbb,_0x30ea64={'hIKLu':'nova_act_artifact_recording_stop','UEXNR':function(_0x576393,_0x3f2c93,_0x135ec2){return _0x576393(_0x3f2c93,_0x135ec2);},'ckAJh':'trace.zip'};if(this['stopped'])return;this[_0x2b57ff(0x15b)]=!![];const _0x6496b6={...this['params']['transportMetadata'],'frameCount':this['frameCount'],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this[_0x2b57ff(0xfc)],'screencastStarted':this[_0x2b57ff(0x14e)]};this['params'][_0x2b57ff(0x16d)][_0x2b57ff(0x108)](_0x30ea64[_0x2b57ff(0x159)],_0x6496b6);try{await this[_0x2b57ff(0x15c)](),await this['captureTraceSample'](),await this[_0x2b57ff(0x146)](),await Promise[_0x2b57ff(0xd6)](this['frameWrites']);this[_0x2b57ff(0x154)]&&this['tracingStarted']&&await this[_0x2b57ff(0x154)][_0x2b57ff(0x129)]['stop']({'path':_0x30ea64[_0x2b57ff(0x16f)](buildCliArtifactPath,this['params'][_0x2b57ff(0x110)],_0x30ea64[_0x2b57ff(0xf0)])});const _0x328ada=await this[_0x2b57ff(0x14b)]();this['params'][_0x2b57ff(0x16d)][_0x2b57ff(0xf2)]('nova_act_artifact_recording_stop',{..._0x6496b6,'videoPath':_0x328ada});}catch(_0x47f1c3){await this['params'][_0x2b57ff(0x16d)]['trackPhaseError'](_0x2b57ff(0x144),_0x47f1c3,_0x6496b6);}finally{await this['browser']?.[_0x2b57ff(0xe3)]()[_0x2b57ff(0x181)](()=>undefined),this[_0x2b57ff(0x170)]=null,this[_0x2b57ff(0x154)]=null,this['frameSession']=null;}}async['readSessionMetadataWithRetry'](){const _0x801dde=_0x55adbb,_0x2fd0de={'NvHYg':function(_0x17fbc3,_0x3e6519,_0x407ab4,_0x3d9959,_0x5ce99a,_0x102d10){return _0x17fbc3(_0x3e6519,_0x407ab4,_0x3d9959,_0x5ce99a,_0x102d10);},'McCye':'.act_cli','vpfbH':'browser','RENxn':_0x801dde(0xf6),'ZWDHI':'utf-8','GToYx':function(_0x48084b,_0x490202){return _0x48084b-_0x490202;}},_0xf8df33=_0x2fd0de[_0x801dde(0x192)](join,homedir(),_0x2fd0de[_0x801dde(0x18f)],_0x2fd0de[_0x801dde(0x18c)],_0x2fd0de['RENxn'],this[_0x801dde(0x190)][_0x801dde(0x122)][_0x801dde(0x107)]+'.json'),_0x310a1e=Date['now']();let _0x4811fc;do{try{const _0x2a7cc3=JSON[_0x801dde(0x12b)](await readFile(_0xf8df33,_0x2fd0de['ZWDHI']));if(_0x2a7cc3['cdp_endpoint'])return _0x2a7cc3;_0x4811fc=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0xf8df33);}catch(_0x516cfa){_0x4811fc=_0x516cfa;}await delay(0x64);}while(_0x2fd0de['GToYx'](Date['now'](),_0x310a1e)<NOVA_ARTIFACT_METADATA_WAIT_MS);if(_0x4811fc instanceof Error)throw _0x4811fc;throw new Error(_0x801dde(0x10e)+_0xf8df33);}async[_0x55adbb(0x14a)](){const _0x4a0d74=_0x55adbb,_0x1d70be={'giDTZ':function(_0x19c7b8,_0x2d3e32){return _0x19c7b8(_0x2d3e32);},'ANTBC':'base64','jNmPa':function(_0x295e60,_0x32d468,_0x2c48fe){return _0x295e60(_0x32d468,_0x2c48fe);},'hIsJU':_0x4a0d74(0x10f),'WNyEL':_0x4a0d74(0xe9)};if(!this['context'])return;const _0x258f40=this[_0x4a0d74(0x154)][_0x4a0d74(0x123)]()[0x0];if(!_0x258f40)return;const _0x5e1df8=this['getFrameDir']();await _0x1d70be[_0x4a0d74(0x165)](mkdir,_0x5e1df8,{'recursive':!![]});const _0x5820ff=await this['context'][_0x4a0d74(0x188)](_0x258f40);this['frameSession']=_0x5820ff,_0x5820ff['on'](_0x1d70be['hIsJU'],_0x2aa3f2=>{const _0x1d1b95=_0x4a0d74,_0x3f9766=++this['frameCount'],_0x39fddb=join(_0x5e1df8,'frame-'+_0x1d70be['giDTZ'](String,_0x3f9766)['padStart'](0x6,'0')+_0x1d1b95(0x158)),_0xab76c3=writeFile(_0x39fddb,Buffer[_0x1d1b95(0x12c)](_0x2aa3f2[_0x1d1b95(0x198)],_0x1d70be['ANTBC']))[_0x1d1b95(0x181)](()=>undefined)['finally'](()=>_0x5820ff['send'](_0x1d1b95(0x15f),{'sessionId':_0x2aa3f2[_0x1d1b95(0x107)]}))['then'](()=>undefined)['catch'](()=>undefined);this['frameWrites']['push'](_0xab76c3);}),await _0x5820ff['send'](_0x1d70be['WNyEL'],{'format':_0x4a0d74(0x119),'quality':0x4b,'everyNthFrame':0x6}),this[_0x4a0d74(0x14e)]=!![];}async[_0x55adbb(0x146)](){const _0xacf408=_0x55adbb,_0x404793={'sLQWK':_0xacf408(0x16a)};if(!this['frameSession']||!this[_0xacf408(0x14e)])return;await this['frameSession']['send'](_0x404793['sLQWK'])['catch'](()=>undefined);}[_0x55adbb(0x191)](){const _0x581692=_0x55adbb;this['queueTraceSample'](),this[_0x581692(0x1a7)]=setInterval(()=>this[_0x581692(0xde)](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}['queueTraceSample'](){const _0x2d6435=_0x55adbb;if(this[_0x2d6435(0x1a1)])return;this[_0x2d6435(0x1a1)]=this['captureTraceSample']()[_0x2d6435(0x120)](()=>{this['traceSampleInFlight']=null;});}async[_0x55adbb(0x15c)](){const _0x19991a=_0x55adbb;this[_0x19991a(0x1a7)]&&(clearInterval(this[_0x19991a(0x1a7)]),this['traceSampleTimer']=null),await this['traceSampleInFlight']?.['catch'](()=>undefined);}async['captureTraceSample'](){const _0x294b54=_0x55adbb,_0x3973b5=this['context']?.[_0x294b54(0x123)]()[0x0];if(!_0x3973b5)return;try{await _0x3973b5['locator']('body')[_0x294b54(0x147)](_0x132c4e=>_0x132c4e[_0x294b54(0x167)],undefined,{'timeout':0x3e8}),this[_0x294b54(0x18b)]++;}catch{}}async['encodeScreencastVideo'](){const _0x41c0fc=_0x55adbb,_0x20d4d5={'VhLFg':function(_0x316fd2,_0x19be7a){return _0x316fd2<_0x19be7a;},'XIBqu':function(_0x5867c6,_0x18b786,_0x29cdb0){return _0x5867c6(_0x18b786,_0x29cdb0);},'zhshN':_0x41c0fc(0x17f),'Ncwvp':'-hide_banner','IOFlW':'-loglevel','rkwWA':'error','gquWJ':'frame-%06d.jpg','kqBQL':_0x41c0fc(0x166),'rFPUC':_0x41c0fc(0x130),'ITpDn':_0x41c0fc(0x140),'uOOpw':_0x41c0fc(0x161)};if(_0x20d4d5[_0x41c0fc(0xdf)](this[_0x41c0fc(0x14c)],0x2))return null;const _0x583f0d=await resolveFfmpegPath();if(!_0x583f0d)return null;const _0xa9f439=join(this[_0x41c0fc(0x190)][_0x41c0fc(0x110)],_0x41c0fc(0x194));await _0x20d4d5['XIBqu'](mkdir,_0xa9f439,{'recursive':!![]});const _0x182f3a=join(_0xa9f439,_0x20d4d5['zhshN']);return await execFileAsync(_0x583f0d,['-y',_0x20d4d5[_0x41c0fc(0x1a4)],_0x20d4d5['IOFlW'],_0x20d4d5[_0x41c0fc(0xda)],_0x41c0fc(0x1a2),'10','-i',join(this['getFrameDir'](),_0x20d4d5[_0x41c0fc(0x175)]),_0x20d4d5[_0x41c0fc(0x14f)],'scale=trunc(iw/2)*2:trunc(ih/2)*2','-c:v',_0x20d4d5['rFPUC'],_0x20d4d5['ITpDn'],_0x20d4d5['uOOpw'],_0x182f3a]),_0x182f3a;}[_0x55adbb(0x162)](){const _0x411a0f=_0x55adbb,_0x1f52de={'BbZAc':function(_0x42489d,_0x599299,_0x22a860){return _0x42489d(_0x599299,_0x22a860);},'LrKKw':'nova-video-frames'};return _0x1f52de[_0x411a0f(0x189)](join,this[_0x411a0f(0x190)][_0x411a0f(0x110)],_0x1f52de['LrKKw']);}}async function delay(_0x152da){await new Promise(_0x270429=>setTimeout(_0x270429,_0x152da));}async function resolveFfmpegPath(){const _0x3101b2=_0x55adbb,_0x529388={'XFxXi':function(_0x80a5cd,_0x599928){return _0x80a5cd(_0x599928);},'CIeVi':_0x3101b2(0x183),'euMhA':function(_0x4147c9,_0x521b1a,_0x2baf92,_0x1ae911){return _0x4147c9(_0x521b1a,_0x2baf92,_0x1ae911);}};if(await _0x529388[_0x3101b2(0xfa)](canRunFfmpeg,'ffmpeg'))return _0x529388['CIeVi'];const _0x2844b9=[join(homedir(),_0x3101b2(0x18a),_0x3101b2(0x126),'ms-playwright'),_0x529388['euMhA'](join,homedir(),'.cache',_0x3101b2(0x152))];for(const _0x259d62 of _0x2844b9){try{const _0x15a460=await _0x529388[_0x3101b2(0xfa)](readdir,_0x259d62),_0x14e3d9=_0x15a460['filter'](_0x3056da=>_0x3056da[_0x3101b2(0x1a6)]('ffmpeg-'))[_0x3101b2(0x118)]()['reverse']()['flatMap'](_0x2a911a=>[join(_0x259d62,_0x2a911a,'ffmpeg-mac'),join(_0x259d62,_0x2a911a,'ffmpeg-linux'),join(_0x259d62,_0x2a911a,_0x3101b2(0xff))]);for(const _0x456532 of _0x14e3d9){if(await canRunFfmpeg(_0x456532))return _0x456532;}}catch{}}return null;}async function canRunFfmpeg(_0x201056){const _0x51968d=_0x55adbb,_0x43cb92={'TBWUE':_0x51968d(0x12f)};try{return await execFileAsync(_0x201056,[_0x43cb92[_0x51968d(0x15e)]]),!![];}catch{return![];}}function toStepDisplayName(_0x15d8f1){const _0x5610e0=_0x55adbb,_0xf37bb2={'LzyCa':function(_0x574def,_0xda920b){return _0x574def(_0xda920b);},'iqTDG':function(_0x135399,_0x4c2cb5){return _0x135399(_0x4c2cb5);}},_0x30e675=_0xf37bb2[_0x5610e0(0x195)](basename,_0x15d8f1)[_0x5610e0(0xe4)](/\.(?:png|ya?ml)$/i,'')[_0x5610e0(0xe4)](/^key_/i,'')[_0x5610e0(0xe4)](/^\d+_/,'')[_0x5610e0(0xe4)](/-/g,'\x20');return{'name':_0x30e675,'isKeyStep':/^key_/i['test'](_0xf37bb2[_0x5610e0(0x196)](basename,_0x15d8f1))};}function extractShellValue(_0x3d2f26){if(!_0x3d2f26)return null;return _0x3d2f26[0x1]??_0x3d2f26[0x2]??_0x3d2f26[0x3]??null;}function extractOutputOption(_0x33b4cd){const _0x569c22=_0x55adbb,_0x192543={'AcPGc':function(_0x45cd64,_0x330580){return _0x45cd64(_0x330580);}};return _0x192543['AcPGc'](extractShellValue,_0x33b4cd[_0x569c22(0x1a3)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function _0x1e19(_0x1c294d,_0x279a47){_0x1c294d=_0x1c294d-0xd4;const _0x43059f=_0x4305();let _0x1e19ed=_0x43059f[_0x1c294d];return _0x1e19ed;}function formatNovaActCliLog(_0xa7e318,_0x2fe6aa){const _0x5ecbf8=_0x55adbb,_0x40969e={'cdoNR':_0x5ecbf8(0x18e),'btYLn':'verify','suTVv':'verify\x20page\x20condition','nugJe':'ask\x20page\x20question','bHCSq':'goto','mnbes':'wait-for','KPqoD':'snapshot','oVEAc':function(_0xbb1898,_0xa6f0a){return _0xbb1898(_0xa6f0a);},'jElLS':_0x5ecbf8(0x11c),'SBpiO':_0x5ecbf8(0x187)};switch(_0x2fe6aa){case _0x5ecbf8(0xe5):return _0x5ecbf8(0x133);case'execute':return _0x40969e[_0x5ecbf8(0x13e)];case _0x40969e[_0x5ecbf8(0x131)]:return _0x40969e['suTVv'];case _0x5ecbf8(0x117):return _0x40969e['nugJe'];case _0x40969e['bHCSq']:return _0x5ecbf8(0xfd);case _0x40969e[_0x5ecbf8(0x11a)]:return _0x5ecbf8(0x14d);case _0x40969e['KPqoD']:{const _0x28e00f=_0x40969e['oVEAc'](extractOutputOption,_0xa7e318);if(!_0x28e00f)return'capture\x20snapshot';const {name:_0x4ee6c7}=toStepDisplayName(_0x28e00f);return _0x5ecbf8(0x199)+_0x4ee6c7+'`';}case _0x5ecbf8(0x19e):{const _0x251e20=_0x40969e[_0x5ecbf8(0x114)](extractOutputOption,_0xa7e318);if(!_0x251e20)return'capture\x20screenshot';const {name:_0x3bb50e,isKeyStep:_0x6af8be}=toStepDisplayName(_0x251e20);return _0x6af8be?'capture\x20key\x20step\x20`'+_0x3bb50e+'`':_0x5ecbf8(0x135)+_0x3bb50e+'`';}case _0x40969e[_0x5ecbf8(0x177)]:return _0x40969e['SBpiO'];default:return _0x2fe6aa;}}function getNovaActCliCommandBlockReason(_0x4706d3){const _0x589c37=_0x55adbb,_0x38108c={'nQDVp':'verify'},_0x15c91d=parseNovaActCliCommand(_0x4706d3);if(!_0x15c91d)return'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.';if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x589c37(0xe6)](_0x15c91d))return'Nova\x20command\x20`'+_0x15c91d+'`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.';if(_0x15c91d===_0x38108c['nQDVp']&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i[_0x589c37(0xdb)](_0x4706d3))return _0x589c37(0x19b);if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/[_0x589c37(0xdb)](_0x4706d3))return _0x589c37(0x143);return null;}function buildFeedbackSection(_0x1a4f69){const _0x2daeee=_0x55adbb,_0x2d44fe={'VmcHT':'en-US','IbrLa':'Reviewer','oPJLT':'element'};if(!_0x1a4f69||_0x1a4f69['unaddressedComments']['length']===0x0)return'';const _0x447c96=_0x1a4f69[_0x2daeee(0x15d)][_0x2daeee(0x138)](_0x2362cd=>{const _0x4a27b8=_0x2daeee,_0x25bee2=new Date(_0x2362cd[_0x4a27b8(0x185)])[_0x4a27b8(0xe2)](_0x2d44fe['VmcHT'],{'month':_0x4a27b8(0x11e),'day':'numeric'}),_0xea526c=_0x2362cd[_0x4a27b8(0x136)]||_0x2362cd[_0x4a27b8(0x127)]||_0x2d44fe['IbrLa'],_0x2c777d=_0x2362cd['domRef']?'\x20(on\x20element:\x20<'+(_0x2362cd[_0x4a27b8(0x141)]['selector'][_0x4a27b8(0x16b)](_0x4a27b8(0x128))['pop']()?.['split'](':')[0x0]||_0x2d44fe[_0x4a27b8(0x115)])+'>\x20\x22'+(_0x2362cd['domRef'][_0x4a27b8(0xef)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x2362cd['id']+']\x20**'+_0xea526c+'**\x20('+_0x25bee2+_0x4a27b8(0xfe)+_0x2362cd[_0x4a27b8(0x19f)]+'\x22'+_0x2c777d;})[_0x2daeee(0xd8)]('\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'+_0x447c96;}function buildNovaSharedOptionsInstruction(_0x5c7887){const _0x56814e=_0x55adbb;if(!_0x5c7887['trim']())return'The\x20command\x20prefix\x20already\x20injects\x20session,\x20auth,\x20region,\x20workflow,\x20user-data,\x20headless,\x20and\x20JSON\x20options.\x0aDo\x20not\x20run\x20raw\x20`act\x20browser`.\x20Do\x20not\x20add\x20`--auth-mode`,\x20`--aws-profile`,\x20`--region`,\x20`--workflow-name`,\x20`--session-id`,\x20`--user-data-dir`,\x20`--headless`,\x20or\x20`--headed`\x20yourself.';return _0x56814e(0xf1)+_0x5c7887;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x969443){const _0x3696e0=_0x55adbb,_0x45e7fe={'BZGtv':function(_0x45444c,_0x3820c4,_0x4c4624){return _0x45444c(_0x3820c4,_0x4c4624);},'lqqNZ':_0x3696e0(0x11b),'iwRsP':'02_final-state.yml','hwEKx':function(_0x2a969b,_0x1e9c4e,_0x4bd632){return _0x2a969b(_0x1e9c4e,_0x4bd632);},'doJpq':function(_0x22f0fb,_0x618f79){return _0x22f0fb(_0x618f79);}},{novaCommandPrefix:_0x152fc0,novaSharedOptionsSuffix:_0x2b8ade,cliArtifactDir:_0x3fc7d0,url:_0x19dbeb}=_0x969443,_0x5b7e46=buildCliArtifactPath(_0x3fc7d0,_0x3696e0(0x17e)),_0xcbf50a=_0x45e7fe['BZGtv'](buildCliArtifactPath,_0x3fc7d0,_0x45e7fe[_0x3696e0(0x139)]),_0x297385=_0x45e7fe[_0x3696e0(0x173)](buildCliArtifactPath,_0x3fc7d0,_0x45e7fe['iwRsP']),_0x175a87=_0x45e7fe['hwEKx'](buildCliArtifactPath,_0x3fc7d0,'03_final-state.png');return _0x3696e0(0xdc)+_0x152fc0+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x2b8ade)+'\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`'+_0x152fc0+'\x20session\x20create\x20'+_0x45e7fe['doJpq'](quoteShellArg,_0x19dbeb)+'\x20'+_0x2b8ade+'`\x0a2.\x20Run\x20`'+_0x152fc0+_0x3696e0(0x16c)+_0x45e7fe['doJpq'](quoteShellArg,_0x5b7e46)+'\x20'+_0x2b8ade+_0x3696e0(0x17d)+_0x152fc0+'\x20screenshot\x20--output\x20'+_0x45e7fe['doJpq'](quoteShellArg,_0xcbf50a)+'\x20'+_0x2b8ade+'`\x0a4.\x20Run\x20one\x20batched\x20`'+_0x152fc0+'\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`'+_0x152fc0+_0x3696e0(0x16c)+quoteShellArg(_0x297385)+'\x20'+_0x2b8ade+'`\x0a6.\x20Run\x20`'+_0x152fc0+_0x3696e0(0xed)+_0x45e7fe[_0x3696e0(0x13a)](quoteShellArg,_0x175a87)+'\x20'+_0x2b8ade+_0x3696e0(0x186)+_0x3fc7d0+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0xb64df0){const _0x1a0fa8=_0x55adbb,_0x2eab1c={'cNYqb':function(_0x3aac83,_0x3479c7){return _0x3aac83(_0x3479c7);},'vLsfL':function(_0x39991b,_0x4fafc2,_0x1d024f){return _0x39991b(_0x4fafc2,_0x1d024f);},'pLFJp':'01_initial.yml','adDoN':function(_0x428850,_0x925cc0,_0x1c7fb4){return _0x428850(_0x925cc0,_0x1c7fb4);},'ffvdU':'01_initial-state.png','ithYX':function(_0x4371df,_0x79be09,_0xd596fb){return _0x4371df(_0x79be09,_0xd596fb);},'xHWJx':_0x1a0fa8(0x149),'nSmPk':function(_0x492742,_0x45ff6f){return _0x492742(_0x45ff6f);}},{checklistItem:_0x1b6fe3,itemFeedback:_0x3cf7cd,taskDescription:_0x4a656d,novaCommandPrefix:_0x28bde7,novaSharedOptionsSuffix:_0xdaf9e3,cliArtifactDir:_0x155a15,url:_0x1591f3,loginInstructions:_0x516682}=_0xb64df0,_0x7736f8=_0x1b6fe3['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x1b6fe3['notes']:'',_0x3aeb29=_0x2eab1c['cNYqb'](buildFeedbackSection,_0x3cf7cd),_0x2c0573=_0x3cf7cd?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x3cf7cd['canonicalFlow']:'',_0xba5249=_0x516682?_0x1a0fa8(0x12d)+_0x516682+_0x1a0fa8(0x13d):'',_0x6bd6ef=_0x2eab1c['vLsfL'](buildCliArtifactPath,_0x155a15,_0x2eab1c[_0x1a0fa8(0xec)]),_0x3065b6=_0x2eab1c[_0x1a0fa8(0xf5)](buildCliArtifactPath,_0x155a15,_0x2eab1c['ffvdU']),_0x2cacc9=_0x2eab1c['ithYX'](buildCliArtifactPath,_0x155a15,_0x2eab1c[_0x1a0fa8(0x105)]);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'+_0x1b6fe3['description']+_0x7736f8+_0x3aeb29+_0x2c0573+_0x1a0fa8(0x13b)+_0x4a656d+_0x1a0fa8(0x151)+_0x1591f3+_0x1a0fa8(0x172)+_0xba5249+'\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`'+_0x28bde7+_0x1a0fa8(0x155)+_0x2eab1c[_0x1a0fa8(0x178)](quoteShellArg,_0x1591f3)+'\x20'+_0xdaf9e3+_0x1a0fa8(0x100)+_0x155a15+_0x1a0fa8(0x1a0)+_0x28bde7+_0x1a0fa8(0x16c)+quoteShellArg(_0x6bd6ef)+'\x20'+_0xdaf9e3+'`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`'+_0x28bde7+_0x1a0fa8(0xed)+quoteShellArg(_0x3065b6)+'\x20'+_0xdaf9e3+'`.\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`'+_0x2cacc9+_0x1a0fa8(0xf3)+_0x28bde7+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0xdaf9e3['trim']()?'`'+_0xdaf9e3+'`':_0x1a0fa8(0x13f))+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0xdaf9e3)+_0x1a0fa8(0x113)+_0x28bde7+'\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20'+_0xdaf9e3+_0x1a0fa8(0x171)+_0x28bde7+'\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20'+_0xdaf9e3+_0x1a0fa8(0x171)+_0x28bde7+_0x1a0fa8(0x16c)+quoteShellArg(_0x6bd6ef)+'\x20'+_0xdaf9e3+'`\x0a-\x20`'+_0x28bde7+_0x1a0fa8(0xed)+_0x2eab1c[_0x1a0fa8(0x12a)](quoteShellArg,_0x2cacc9)+'\x20'+_0xdaf9e3+_0x1a0fa8(0x124);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x5c5fc0){const _0x5c8648={'ldEnH':function(_0x32aa9b,_0x4b7a8e){return _0x32aa9b===_0x4b7a8e;}},_0x3e8ad1=[..._0x5c5fc0['keys']()]['sort']();let _0x2e3f6b=0x0;for(const _0xc6eb03 of _0x5c5fc0['values']()){_0x2e3f6b+=_0xc6eb03;}return{'cliCommandCount':_0x2e3f6b,'cliCommandsSeen':_0x3e8ad1,'noCliCommandsCalled':_0x5c8648['ldEnH'](_0x2e3f6b,0x0)};}export function createVerifyFeatureNovaCliHooks(_0xa53e15,_0x1e2190){const _0xb768b5=_0x55adbb,_0xc6da2a={'hsXJZ':function(_0x1968c4,_0x3d86bc){return _0x1968c4!==_0x3d86bc;},'IOMyn':'PreToolUse','NcZfi':'Bash','TJNUj':_0xb768b5(0x179),'LOkin':'PostToolUse','CcqqK':function(_0x28b791,_0x235a39){return _0x28b791+_0x235a39;},'IDCEh':'nova_act_command','fSJnj':function(_0x37229d,_0x1b06d5,_0x49b394){return _0x37229d(_0x1b06d5,_0x49b394);},'MNmzO':function(_0x533eb8,_0xf57328){return _0x533eb8===_0xf57328;},'zUDFX':'nova_act_artifact_recording','bHARC':'nova-act-cli','mZVzu':_0xb768b5(0x19a),'bmzrO':'nova_act_command_failure'},_0x3af543=new Map(),_0x1fb229=async _0x50f545=>{const _0x198f7a=_0xb768b5;if(_0xc6da2a['hsXJZ'](_0x50f545['hook_event_name'],_0xc6da2a['IOMyn']))return{};const _0x2ac055=_0x50f545;if(_0xc6da2a['hsXJZ'](_0x2ac055['tool_name'],_0xc6da2a['NcZfi']))return{};const _0x3f9732=_0x2ac055[_0x198f7a(0x174)],_0x4a5bce=extractBashCommand(_0x3f9732);if(!_0x4a5bce)return{};const _0x3f7caf=getNovaActCliCommandBlockReason(_0x4a5bce);if(!_0x3f7caf)return{};return{'decision':_0xc6da2a[_0x198f7a(0x17b)],'reason':_0x3f7caf};},_0x2e6c0f=async _0x5e7a2e=>{const _0x21c5b5=_0xb768b5;if(_0x5e7a2e[_0x21c5b5(0x18d)]!==_0xc6da2a['LOkin'])return{};const _0x3712af=_0x5e7a2e;if(_0x3712af[_0x21c5b5(0x153)]!==_0xc6da2a['NcZfi'])return{};const _0x3f17d6=_0x3712af[_0x21c5b5(0x174)],_0x549337=extractBashCommand(_0x3f17d6);if(!_0x549337)return{};const _0x38c280=parseNovaActCliCommand(_0x549337);if(!_0x38c280)return{};_0x3af543['set'](_0x38c280,_0xc6da2a['CcqqK'](_0x3af543[_0x21c5b5(0x197)](_0x38c280)||0x0,0x1)),_0xa53e15['trackPhaseStart'](_0xc6da2a['IDCEh'],{'subcommand':_0x38c280}),_0xa53e15[_0x21c5b5(0xf2)](_0xc6da2a[_0x21c5b5(0x182)],{'subcommand':_0x38c280,'commandPreview':previewNovaActCliCommand(_0x549337)}),console[_0x21c5b5(0x17c)](_0x21c5b5(0x15a)+_0xc6da2a[_0x21c5b5(0xe0)](formatNovaActCliLog,_0x549337,_0x38c280));if(_0xc6da2a[_0x21c5b5(0x176)](_0x38c280,_0x21c5b5(0xe5))&&_0x1e2190)try{await _0x1e2190[_0x21c5b5(0x101)]();}catch(_0x4cf308){await _0xa53e15[_0x21c5b5(0xea)](_0xc6da2a[_0x21c5b5(0xd9)],_0x4cf308,{'transport':_0xc6da2a[_0x21c5b5(0x112)]});}return{};},_0x2049e2=async _0x91a8c3=>{const _0x5f2e8a=_0xb768b5;if(_0x91a8c3[_0x5f2e8a(0x18d)]!==_0xc6da2a['mZVzu'])return{};const _0x42f687=_0x91a8c3;if(_0xc6da2a[_0x5f2e8a(0x121)](_0x42f687['tool_name'],_0xc6da2a[_0x5f2e8a(0x193)]))return{};return await _0xa53e15[_0x5f2e8a(0xea)](_0xc6da2a[_0x5f2e8a(0x103)],_0x42f687['error'],{'transport':_0xc6da2a['bHARC'],'toolName':'Bash'}),{};};return{'preToolUseHook':_0x1fb229,'postToolUseHook':_0x2e6c0f,'postToolUseFailureHook':_0x2049e2,'commandCounts':_0x3af543};}async function runNovaLifecycleCommand(_0x48bf88){const _0x48dd42=_0x55adbb,_0xc9b285={'enVJo':function(_0xfb4954,_0x88b867){return _0xfb4954(_0x88b867);},'jjwdP':function(_0x17df00,_0x1e13a0){return _0x17df00(_0x1e13a0);}},{novaOptions:_0x278018,commandArgs:_0x176da4,telemetry:_0x4efcce,phase:_0x3fe88a,metadata:_0x313d6c,timeoutMs:_0x48be7d}=_0x48bf88;_0x4efcce['trackPhaseStart'](_0x3fe88a,_0x313d6c);try{const _0x1ac5fa=await _0xc9b285['enVJo'](runNovaActCliCommand,{..._0x278018,'commandArgs':_0x176da4,'cwd':process['cwd'](),'env':process[_0x48dd42(0x142)],'timeoutMs':_0x48be7d??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x4efcce['trackPhaseEnd'](_0x3fe88a,{..._0x313d6c,'subcommand':_0x1ac5fa[_0x48dd42(0x111)][_0x48dd42(0x134)],'commandPreview':_0xc9b285[_0x48dd42(0x150)](previewNovaActCliCommand,_0x1ac5fa[_0x48dd42(0x111)]['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0x1ac5fa[_0x48dd42(0xdd)]),'stderrPreview':previewNovaActCliCommand(_0x1ac5fa[_0x48dd42(0x104)]),'logDir':_0xc9b285['jjwdP'](extractNovaActLogDir,_0x1ac5fa['stdout'])});}catch(_0x377ad7){await _0x4efcce[_0x48dd42(0xea)](_0x3fe88a,_0x377ad7,_0x313d6c);throw _0x377ad7;}}export async function finalizeVerifyFeatureNovaCliSession(_0x537a33){const _0x309ed2=_0x55adbb,_0x21fcc5={'BrsyI':'nova_act_final_screenshot','kkJPh':'screenshot','NYBkV':_0x309ed2(0xd5),'hYUaB':function(_0x415e98,_0x2e584e,_0xe330ef){return _0x415e98(_0x2e584e,_0xe330ef);},'omFlv':'key_final-state.png','NSnlf':'snapshot','AaQGK':_0x309ed2(0x156),'lNYpR':'session','lSZsY':'json','sAjxf':function(_0x35b1ac,_0x5a0734,_0x4b885b){return _0x35b1ac(_0x5a0734,_0x4b885b);}},{telemetry:_0x3991bf,novaOptions:_0x385638,cliArtifactDir:_0x377e5f,transportMetadata:_0x57eaef,artifactRecorder:_0xffc9a8}=_0x537a33,_0x483eed=[{'phase':_0x21fcc5[_0x309ed2(0x1a5)],'commandArgs':[_0x21fcc5[_0x309ed2(0x132)],_0x21fcc5[_0x309ed2(0x10b)],_0x21fcc5['hYUaB'](buildCliArtifactPath,_0x377e5f,_0x21fcc5['omFlv'])]},{'phase':'nova_act_final_snapshot','commandArgs':[_0x21fcc5['NSnlf'],_0x21fcc5[_0x309ed2(0x10b)],_0x21fcc5['hYUaB'](buildCliArtifactPath,_0x377e5f,_0x21fcc5[_0x309ed2(0x137)])]},{'phase':'nova_act_session_export','commandArgs':[_0x21fcc5['lNYpR'],_0x309ed2(0x13c),_0x309ed2(0xf8),_0x21fcc5['lSZsY'],_0x309ed2(0xd5),_0x21fcc5['sAjxf'](buildCliArtifactPath,_0x377e5f,_0x309ed2(0xf4))]},{'phase':'nova_act_session_report','commandArgs':[_0x21fcc5[_0x309ed2(0x160)],'export','--report','--output-dir',_0x21fcc5['sAjxf'](buildCliArtifactPath,_0x377e5f,'nova-report')]},{'phase':'nova_act_session_close','commandArgs':[_0x21fcc5[_0x309ed2(0x160)],'close']}];for(const _0x27dafa of _0x483eed){_0x27dafa['phase']===_0x309ed2(0x125)&&await _0xffc9a8?.['stop']();try{await runNovaLifecycleCommand({'novaOptions':_0x385638,'commandArgs':[..._0x27dafa['commandArgs']],'telemetry':_0x3991bf,'phase':_0x27dafa[_0x309ed2(0x11f)],'metadata':_0x57eaef});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x537949){const _0x327d10=_0x55adbb,_0x28a44c={'kBeYj':function(_0x1285a5,_0x5e5bfb,_0xc951a){return _0x1285a5(_0x5e5bfb,_0xc951a);},'thNDo':function(_0x56af5e,_0x27aa91,_0xdf0b73){return _0x56af5e(_0x27aa91,_0xdf0b73);},'DFDqa':function(_0x4d296d,_0x39644a){return _0x4d296d(_0x39644a);},'FsIua':function(_0x9523fc,_0x28475d){return _0x9523fc+_0x28475d;},'XPPKc':function(_0x64f0a2,_0x1319d7){return _0x64f0a2===_0x1319d7;}},{cwd:_0x1bfd46,cliArtifactDir:_0x14b43d,startTime:_0x2a46da}=_0x537949,_0x928bc0=[];await mkdir(_0x14b43d,{'recursive':!![]});const _0x1572b1=await _0x28a44c[_0x327d10(0xd4)](readdir,_0x1bfd46,{'withFileTypes':!![]});for(const _0x1d92fe of _0x1572b1){if(!_0x1d92fe['isFile']()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x327d10(0xdb)](_0x1d92fe[_0x327d10(0x164)]))continue;const _0x125887=_0x28a44c['thNDo'](join,_0x1bfd46,_0x1d92fe[_0x327d10(0x164)]),_0xc8145c=await _0x28a44c[_0x327d10(0x10c)](stat,_0x125887);if(_0x28a44c[_0x327d10(0x157)](_0xc8145c[_0x327d10(0x10d)],0x7d0)<_0x2a46da)continue;const _0x130817=_0x28a44c[_0x327d10(0x180)](buildCliArtifactPath,_0x14b43d,_0x1d92fe[_0x327d10(0x164)]);if(_0x28a44c['XPPKc'](_0x125887,_0x130817))continue;await rename(_0x125887,_0x130817),_0x928bc0['push'](_0x1d92fe['name']);}return _0x928bc0['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x40ad0b){const _0x1b9025={'oDIQN':function(_0x506508,_0x11f8f4){return _0x506508(_0x11f8f4);}},_0x1303d1=join(_0x40ad0b,'trace.zip');try{return{'buffer':await _0x1b9025['oDIQN'](readFile,_0x1303d1),'source':_0x1303d1};}catch{return{'buffer':await _0x1b9025['oDIQN'](zipVerifyFeatureNovaArtifacts,_0x40ad0b),'source':_0x40ad0b};}}async function zipVerifyFeatureNovaArtifacts(_0x58496d){const _0xc846a4=_0x55adbb,_0x4e5cea={'PxkUW':function(_0x25f9c8,_0x5dfb40,_0x3e5a3e,_0x301a5a){return _0x25f9c8(_0x5dfb40,_0x3e5a3e,_0x301a5a);},'dowEC':function(_0x173c2e,_0x5016be,_0x3c2312,_0x507902){return _0x173c2e(_0x5016be,_0x3c2312,_0x507902);},'kqdJT':function(_0x13d453,_0x26a55b){return _0x13d453(_0x26a55b);},'PaZwo':function(_0x28ca90,_0x25cf68,_0x5c6ec5){return _0x28ca90(_0x25cf68,_0x5c6ec5);}},_0x1b19c2=_0x4e5cea['PxkUW'](join,_0x58496d,'..',_0xc846a4(0xe8));try{return await _0x4e5cea['dowEC'](execFileAsync,'zip',['-qr',_0x1b19c2,'.','-x',_0xc846a4(0x145)],{'cwd':_0x58496d}),await _0x4e5cea['kqdJT'](readFile,_0x1b19c2);}finally{await _0x4e5cea['PaZwo'](rm,_0x1b19c2,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x37503e){const _0x24bb8a=_0x55adbb,_0x55e9b0={'DQnSK':function(_0x55a1e1,_0x229234){return _0x55a1e1(_0x229234);}},_0x3989c9=buildNovaActCliInvocation(_0x37503e[_0x24bb8a(0x122)],_0x37503e[_0x24bb8a(0x11d)]);return{'command':_0x3989c9[_0x24bb8a(0xe1)],'args':_0x3989c9[_0x24bb8a(0x184)],'commandPreview':_0x55e9b0[_0x24bb8a(0xeb)](previewNovaActCliCommand,_0x3989c9['shellCommand']),'subcommand':_0x3989c9[_0x24bb8a(0x134)],'sharedOptionsSuffix':buildNovaActCliSharedOptionsSuffix(_0x37503e['novaOptions'],_0x37503e['commandArgs'])};}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(_0x432758,_0x3e670d){const _0x42d593=_0x420c,_0x5310ac=_0x432758();while(!![]){try{const _0xfb7e1e=-parseInt(_0x42d593(0x1fe))/0x1+parseInt(_0x42d593(0x204))/0x2*(parseInt(_0x42d593(0x1d0))/0x3)+parseInt(_0x42d593(0x208))/0x4*(parseInt(_0x42d593(0x1ed))/0x5)+parseInt(_0x42d593(0x1ce))/0x6+parseInt(_0x42d593(0x202))/0x7*(-parseInt(_0x42d593(0x21b))/0x8)+parseInt(_0x42d593(0x1e1))/0x9+-parseInt(_0x42d593(0x200))/0xa;if(_0xfb7e1e===_0x3e670d)break;else _0x5310ac['push'](_0x5310ac['shift']());}catch(_0x564515){_0x5310ac['push'](_0x5310ac['shift']());}}}(_0x3a3b,0x70588));import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';import{parseRangerwrightCliCommand,runRangerwrightCliCommand}from'./utils/rangerwrightCli.js';const RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,RANGERWRIGHT_CLI_PREVIEW_LIMIT=0xf0;function truncatePreview(_0x34a7bb,_0x371d38=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x26c63b=_0x420c,_0x1fc305={'ERAIh':function(_0xa0cd21,_0x1927a7){return _0xa0cd21+_0x1927a7;},'dKoSD':_0x26c63b(0x1e5)};return _0x34a7bb[_0x26c63b(0x216)]>_0x371d38?_0x1fc305['ERAIh'](_0x34a7bb[_0x26c63b(0x1ff)](0x0,_0x371d38),_0x1fc305['dKoSD']):_0x34a7bb;}function extractShellValue(_0xac83d){if(!_0xac83d)return null;return _0xac83d[0x1]??_0xac83d[0x2]??_0xac83d[0x3]??null;}function extractFirstCommandArgument(_0x1098c7,_0x4e7d51){const _0x5d27e0=_0x420c,_0x639436={'UNisj':'\x5c$&','Cayep':function(_0x279134,_0x4bfc63){return _0x279134(_0x4bfc63);}},_0x522668=_0x4e7d51[_0x5d27e0(0x1c4)](/[.*+?^${}()|[\]\\]/g,_0x639436[_0x5d27e0(0x1e7)]);return _0x639436['Cayep'](extractShellValue,_0x1098c7[_0x5d27e0(0x20d)](new RegExp('(?:^|\x5cs)'+_0x522668+_0x5d27e0(0x21a))));}function formatCommandTarget(_0x59fb03){const _0x209807=_0x420c;if(!_0x59fb03)return _0x209807(0x1d8);if(/^e\d+$/i[_0x209807(0x1f6)](_0x59fb03))return _0x209807(0x1da)+_0x59fb03;return JSON['stringify'](truncatePreview(_0x59fb03,0x78));}function formatRangerwrightCliLog(_0x374d19,_0x27c667){const _0x5894a9=_0x420c,_0x49d5e8={'zMmmA':function(_0x1ba6bd,_0x3a58d0){return _0x1ba6bd(_0x3a58d0);},'wzklT':_0x5894a9(0x1de),'ENCbS':_0x5894a9(0x20f),'XEtgI':_0x5894a9(0x1be),'WWYTW':_0x5894a9(0x1dd),'QYEno':'stop\x20tracing','jSvMB':_0x5894a9(0x209),'PktuZ':_0x5894a9(0x1cc)};switch(_0x27c667){case'open-and-inspect':{const _0x29c5=extractFirstCommandArgument(_0x374d19,_0x27c667);return _0x29c5?_0x5894a9(0x1bf)+_0x29c5:_0x5894a9(0x201);}case _0x5894a9(0x1e8):return _0x5894a9(0x1c7)+_0x49d5e8[_0x5894a9(0x1c5)](formatCommandTarget,extractFirstCommandArgument(_0x374d19,_0x27c667));case _0x5894a9(0x21d):case'fill-and-inspect':return _0x5894a9(0x1e9)+formatCommandTarget(extractFirstCommandArgument(_0x374d19,_0x27c667));case'back-and-inspect':return _0x49d5e8['wzklT'];case _0x49d5e8[_0x5894a9(0x1ca)]:return _0x49d5e8['XEtgI'];case _0x49d5e8[_0x5894a9(0x1df)]:return _0x49d5e8['QYEno'];case'video-stop':return _0x49d5e8['jSvMB'];case _0x5894a9(0x20b):return _0x49d5e8[_0x5894a9(0x1f0)];default:return _0x27c667;}}function renderScenarioSections(_0x3c1412){const _0x2e3550=_0x420c,_0xd07c67={'DRAHv':'numeric','kjyJF':_0x2e3550(0x1c1),'tlcHn':_0x2e3550(0x1eb)},{checklistItem:_0x222484,itemFeedback:_0x1c3ce4}=_0x3c1412,_0x1dcd5c=_0x222484['notes']?_0x2e3550(0x1f1)+_0x222484['notes']:'';let _0x22401c='';if(_0x1c3ce4&&_0x1c3ce4[_0x2e3550(0x1d1)]['length']>0x0){const _0x341719=_0x1c3ce4[_0x2e3550(0x1d1)][_0x2e3550(0x1dc)](_0x76ca80=>{const _0x12498e=_0x2e3550,_0x2657c0=new Date(_0x76ca80['createdAt'])['toLocaleDateString']('en-US',{'month':'short','day':_0xd07c67[_0x12498e(0x1d3)]}),_0x255003=_0x76ca80['authorName']||_0x76ca80[_0x12498e(0x1c8)]||_0xd07c67[_0x12498e(0x1d9)],_0x5c81ea=_0x76ca80[_0x12498e(0x1c9)]?'\x20(on\x20element:\x20<'+(_0x76ca80['domRef'][_0x12498e(0x1f5)]['split'](_0x12498e(0x203))[_0x12498e(0x21e)]()?.[_0x12498e(0x210)](':')[0x0]||_0xd07c67['tlcHn'])+_0x12498e(0x1f2)+(_0x76ca80[_0x12498e(0x1c9)]['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x76ca80['id']+']\x20'+_0x255003+'\x20('+_0x2657c0+_0x12498e(0x1db)+_0x76ca80[_0x12498e(0x1c6)]+'\x22'+_0x5c81ea;})['join']('\x0a');_0x22401c=_0x2e3550(0x1e6)+_0x341719;}const _0x568993=_0x1c3ce4?.['canonicalFlow']?_0x2e3550(0x20c)+_0x1c3ce4['canonicalFlow']:'';return''+_0x222484['description']+_0x1dcd5c+_0x22401c+_0x568993;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x55269e){const _0x321862=_0x420c,_0x1fb19d={'bIeMV':'01_initial-state.png','QEkXa':_0x321862(0x1e0),'WLCMT':function(_0x1fc75c,_0x2d5a79){return _0x1fc75c(_0x2d5a79);},'mBXld':'about:blank'},{checklistItem:_0x4d020a,itemFeedback:_0xd9ba96,taskDescription:_0x4b18a5,commandPrefix:_0x5989f2,isCdpMode:_0x5682d8,url:_0x5b2734,cdpEndpoint:_0x2ba78b,loginInstructions:_0x410a97}=_0x55269e,_0x9e2849=_0x1fb19d[_0x321862(0x1bc)],_0x253f3f=_0x1fb19d[_0x321862(0x1d5)],_0x3c871f=_0x5682d8?_0x5989f2+'\x20inspect\x20--screenshot-path\x20'+_0x1fb19d['WLCMT'](quoteShellArg,_0x9e2849):_0x5989f2+'\x20open-and-inspect\x20'+quoteShellArg(_0x5b2734??_0x1fb19d['mBXld'])+'\x20--screenshot-path\x20'+_0x1fb19d['WLCMT'](quoteShellArg,_0x9e2849),_0xf0f5f3=_0x5682d8?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20'+_0x2ba78b+_0x321862(0x212):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x5b2734+'\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port.\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists,\x20navigate\x20to\x20it\x20only\x20under\x20this\x20base\x20URL.',_0x31f35d=_0x410a97?_0x321862(0x1e3)+_0x410a97+_0x321862(0x1fd):'';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'+renderScenarioSections({'checklistItem':_0x4d020a,'itemFeedback':_0xd9ba96})+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x4b18a5+'\x0a\x0a'+_0xf0f5f3+_0x31f35d+_0x321862(0x1e2)+_0x5989f2+'\x0a\x0aDo\x20not\x20define\x20an\x20RW\x20variable.\x20Do\x20not\x20use\x20node_modules/.bin/rangerwright,\x20npx,\x20npm,\x20cd,\x20find,\x20grep,\x20or\x20search\x20for\x20the\x20binary.\x20Browser\x20Trek\x20only\x20counts\x20literal\x20Rangerwright\x20command\x20invocations.\x0a\x0aTreat\x20the\x20command\x20prefix\x20as\x20immutable.\x20Copy\x20it\x20exactly,\x20then\x20append\x20one\x20supported\x20Rangerwright\x20subcommand\x20and\x20its\x20arguments.\x20If\x20a\x20browser\x20command\x20fails\x20because\x20the\x20binary\x20path\x20is\x20missing\x20or\x20the\x20command\x20syntax\x20is\x20malformed,\x20retry\x20once\x20with\x20the\x20exact\x20prefix\x20from\x20this\x20prompt\x20before\x20deciding\x20the\x20task\x20is\x20blocked.\x0a\x0aFirst\x20command:\x0a\x0a'+_0x3c871f+_0x321862(0x1fb)+_0x5989f2+_0x321862(0x1d2)+quoteShellArg(_0x253f3f)+_0x321862(0x205);}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0x11d965){const _0x3834ab=_0x420c,_0x14b67c={'MYRpN':'01_mozilla-homepage.png','KTbWM':_0x3834ab(0x1cf),'eOduA':function(_0x9732b4,_0x48a3fc){return _0x9732b4(_0x48a3fc);}},_0xba1e3a=_0x14b67c['MYRpN'],_0x2c0cbd=_0x14b67c['KTbWM'];return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x20Every\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0x11d965[_0x3834ab(0x206)]+_0x3834ab(0x213)+_0x11d965['commandPrefix']+_0x3834ab(0x1f7)+quoteShellArg(_0x11d965[_0x3834ab(0x21f)])+_0x3834ab(0x1f3)+_0x14b67c[_0x3834ab(0x217)](quoteShellArg,_0xba1e3a)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0x11d965[_0x3834ab(0x206)]+_0x3834ab(0x1cb)+_0x14b67c[_0x3834ab(0x217)](quoteShellArg,_0x2c0cbd)+'`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x5ab034){const _0x2b719b=_0x420c,_0x1dd484={'sgxAm':function(_0x332f7f,_0x1df274){return _0x332f7f===_0x1df274;}},_0x1c4234=[..._0x5ab034[_0x2b719b(0x215)]()]['sort']();let _0x5e515d=0x0;for(const _0x4e56fc of _0x5ab034['values']()){_0x5e515d+=_0x4e56fc;}return{'cliCommandCount':_0x5e515d,'cliCommandsSeen':_0x1c4234,'noCliCommandsCalled':_0x1dd484['sgxAm'](_0x5e515d,0x0)};}function _0x420c(_0xfa8181,_0x20f5d3){_0xfa8181=_0xfa8181-0x1bc;const _0x3a3b9c=_0x3a3b();let _0x420c11=_0x3a3b9c[_0xfa8181];return _0x420c11;}export function createVerifyFeatureRangerwrightCliHooks(_0xdfab4a){const _0x30653c=_0x420c,_0x1d980a={'LxLPr':_0x30653c(0x1bd),'JNrSb':function(_0x3e410a,_0x5ab504){return _0x3e410a(_0x5ab504);},'yqpTC':function(_0x5d3f06,_0xf8edef){return _0x5d3f06(_0xf8edef);},'hQysb':function(_0x54e740,_0x2182b7){return _0x54e740+_0x2182b7;},'WHFCS':_0x30653c(0x1ee),'HIjwN':function(_0x546088,_0x16313a,_0x331ad4){return _0x546088(_0x16313a,_0x331ad4);},'jdLEI':'Bash','qTiuu':_0x30653c(0x1e4)},_0x18be4a=new Map(),_0x5aa7fd=async _0x1cdc87=>{const _0x229596=_0x30653c;if(_0x1cdc87['hook_event_name']!==_0x1d980a[_0x229596(0x20a)])return{};const _0x196591=_0x1cdc87;if(_0x196591['tool_name']!==_0x229596(0x1f8))return{};const _0x4e605f=_0x196591['tool_input'],_0x8d3fb=_0x1d980a['JNrSb'](extractBashCommand,_0x4e605f);if(!_0x8d3fb)return{};const _0x304f49=_0x1d980a[_0x229596(0x1f4)](parseRangerwrightCliCommand,_0x8d3fb);if(!_0x304f49)return{};return _0x18be4a[_0x229596(0x214)](_0x304f49,_0x1d980a[_0x229596(0x1c0)](_0x18be4a[_0x229596(0x1d4)](_0x304f49)||0x0,0x1)),_0xdfab4a['trackPhaseStart'](_0x1d980a['WHFCS'],{'subcommand':_0x304f49}),_0xdfab4a['trackPhaseEnd'](_0x1d980a[_0x229596(0x1d6)],{'subcommand':_0x304f49,'commandPreview':truncatePreview(_0x8d3fb)}),console['log'](_0x229596(0x1c2)+_0x1d980a['HIjwN'](formatRangerwrightCliLog,_0x8d3fb,_0x304f49)),{};},_0x197c8d=async _0x43ed3e=>{const _0x2d242e=_0x30653c;if(_0x43ed3e['hook_event_name']!==_0x2d242e(0x219))return{};const _0x9d205c=_0x43ed3e;if(_0x9d205c[_0x2d242e(0x1ef)]!==_0x1d980a['jdLEI'])return{};return await _0xdfab4a['trackPhaseError'](_0x1d980a['qTiuu'],_0x9d205c[_0x2d242e(0x1cd)],{'transport':'rangerwright-cli','toolName':'Bash'}),{};};return{'postToolUseHook':_0x5aa7fd,'postToolUseFailureHook':_0x197c8d,'commandCounts':_0x18be4a};}function _0x3a3b(){const _0xe34004=['\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','rangerwright_cli_command_failure','...','\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','UNisj','click-and-inspect','fill\x20','iqvWE','element','cCuVv','915150gVpaVz','rangerwright_cli_command','tool_name','PktuZ','\x0a\x0a##\x20Additional\x20Notes\x0a','>\x20\x22','\x20--screenshot-path\x20','yqpTC','selector','test','\x20open-and-inspect\x20','Bash','trackPhaseError','commandArgs','\x0a\x0aPrefer\x20open-and-inspect\x20and\x20click-and-inspect\x20when\x20you\x20need\x20a\x20fresh\x20snapshot\x20plus\x20evidence.\x0a\x0aUse\x20back-and-inspect\x20to\x20return\x20to\x20the\x20previous\x20page\x20after\x20checking\x20a\x20detail\x20page.\x20Refresh\x20refs\x20after\x20going\x20back.\x0a\x0aEach\x20command\x20returns\x20JSON\x20with\x20success,\x20data,\x20and\x20error\x20fields.\x0a\x0aUse\x20data.title,\x20data.headings,\x20data.pageText,\x20and\x20data.snapshotText\x20together.\x20snapshotText\x20is\x20best\x20for\x20refs\x20and\x20controls;\x20pageText\x20is\x20valid\x20visible\x20evidence\x20for\x20page\x20content.\x0a\x0aDo\x20not\x20verify\x20from\x20a\x20broad\x20landing,\x20index,\x20category,\x20search,\x20or\x20navigation\x20page\x20when\x20the\x20task\x20asks\x20for\x20a\x20specific\x20page,\x20topic,\x20item,\x20or\x20action.\x20Click\x20and\x20inspect\x20the\x20most\x20specific\x20visible\x20target\x20first;\x20if\x20no\x20specific\x20target\x20exists,\x20report\x20the\x20missing\x20target.\x0a\x0aSave\x20screenshots\x20by\x20using\x20--screenshot-path\x20on\x20inspect\x20commands.\x20Relative\x20screenshot\x20paths\x20are\x20saved\x20under\x20the\x20run\x20artifact\x20directory.\x20Do\x20not\x20call\x20screenshot\x20--path.\x0a\x0aExample:\x0a\x0a','invocation','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','572745bVHlFZ','slice','1997610YdzkEu','open\x20and\x20inspect','7DssCLQ','\x20>\x20','69500RAvgJO','\x0a\x0aRefs\x20like\x20e37\x20are\x20only\x20valid\x20for\x20the\x20snapshot\x20that\x20produced\x20them.\x20Refresh\x20refs\x20after\x20navigation.\x0a\x0aUse\x20short\x20concrete\x20checkpoints\x20internally:\x20what\x20target\x20is\x20visible,\x20what\x20command\x20changes\x20state,\x20and\x20what\x20evidence\x20is\x20still\x20missing.\x20Issue\x20one\x20browser\x20command\x20at\x20a\x20time.\x20After\x20navigation,\x20validation,\x20or\x20a\x20changed\x20page,\x20inspect\x20before\x20deciding\x20the\x20next\x20action.\x0a\x0aBefore\x20reporting\x20success,\x20compare\x20each\x20required\x20CTA,\x20page\x20purpose,\x20and\x20topic\x20against\x20visible\x20page\x20evidence.\x20A\x20related\x20page\x20does\x20not\x20satisfy\x20a\x20different\x20required\x20topic\x20unless\x20the\x20page\x20text\x20directly\x20supports\x20that\x20topic\x20or\x20an\x20obvious\x20synonym.\x20If\x20required\x20evidence\x20is\x20missing,\x20mismatched,\x20or\x20only\x20inferred\x20from\x20adjacent\x20content,\x20report\x20that\x20plainly\x20and\x20do\x20not\x20mark\x20the\x20task\x20verified.\x0a\x0aFor\x20goals\x20with\x20more\x20than\x20one\x20required\x20condition,\x20use\x20an\x20internal\x20checklist\x20built\x20from\x20the\x20user\x27s\x20exact\x20requested\x20conditions.\x20Verify\x20each\x20checklist\x20item\x20against\x20visible\x20evidence\x20from\x20the\x20latest\x20browser\x20result.\x20If\x20any\x20item\x20lacks\x20direct\x20evidence,\x20report\x20the\x20task\x20as\x20not\x20verified\x20and\x20name\x20the\x20missing\x20item.\x0a\x0aOn\x20forms,\x20fill\x20only\x20visible\x20task-relevant\x20editable\x20fields\x20in\x20the\x20current\x20step\x20before\x20submitting\x20or\x20advancing.\x20Use\x20labels,\x20placeholders,\x20and\x20current\x20page\x20text\x20to\x20decide\x20which\x20fields\x20are\x20required.\x20Do\x20not\x20fill\x20fields\x20that\x20are\x20not\x20visible\x20in\x20the\x20latest\x20snapshot.\x0a\x0aUse\x20one\x20fill\x20command\x20per\x20field.\x20Do\x20not\x20combine\x20multiple\x20fields\x20into\x20one\x20fill\x20command\x20with\x20semicolons.\x0a\x0aIf\x20an\x20inspect-action\x20click\x20returns\x20the\x20same\x20page\x20or\x20shows\x20validation,\x20inspect\x20the\x20current\x20page\x20and\x20fill\x20blank\x20required\x20fields\x20before\x20retrying.\x20Do\x20not\x20repeat\x20the\x20same\x20blocked\x20click\x20unchanged.\x0a\x0aIf\x20a\x20click-and-inspect\x20result\x20keeps\x20the\x20same\x20URL\x20and\x20does\x20not\x20show\x20the\x20intended\x20target,\x20treat\x20it\x20as\x20a\x20no-op.\x20Refresh\x20refs\x20and\x20choose\x20a\x20different\x20visible\x20link,\x20or\x20use\x20back-and-inspect\x20if\x20you\x20need\x20the\x20prior\x20page.\x0a\x0aA\x20page\x20with\x20visible\x20required\x20fields\x20and\x20a\x20next,\x20submit,\x20continue,\x20or\x20confirm\x20control\x20is\x20still\x20actionable.\x20Fill\x20the\x20required\x20fields\x20with\x20values\x20from\x20the\x20task\x20before\x20reporting\x20incomplete\x20or\x20blocked.\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20first\x20inspect\x20result,\x20check\x20for\x20blocking\x20errors:\x0a-\x20HTTP\x20404,\x20500,\x20400,\x20\x22Not\x20Found\x22,\x20\x22Server\x20Error\x22,\x20or\x20\x22Bad\x20Request\x22\x0a-\x20Framework\x20error\x20pages\x0a-\x20Blank\x20pages\x20with\x20no\x20content\x0a-\x20App\x20crash\x20or\x20error\x20dialogs\x0a\x0aIf\x20any\x20blocking\x20error\x20is\x20visible,\x20return\x20evaluation\x20\x22blocked\x22\x20immediately\x20with\x20a\x20specific\x20reason.\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\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.','commandPrefix','xPUXU','4LQhJEg','stop\x20video\x20recording','LxLPr','close','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','match','FyfUQ','inspect','split','rangerwright_cli_tracing_stop','.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.','\x0a\x0aDo\x20not\x20define\x20an\x20RW\x20variable.\x20Do\x20not\x20use\x20node_modules/.bin/rangerwright,\x20npx,\x20npm,\x20cd,\x20find,\x20grep,\x20or\x20search\x20for\x20the\x20binary.\x0a\x0a1.\x20Run\x20`','set','keys','length','eOduA','xiZEr','PostToolUseFailure','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','4207736VXBQXy','tjcAF','fill','pop','url','bIeMV','PostToolUse','inspect\x20page','open\x20and\x20inspect\x20','hQysb','Reviewer','[rangerwright-cli]\x20','phase','replace','zMmmA','content','click\x20and\x20inspect\x20','authorEmail','domRef','ENCbS','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','close\x20browser\x20session','error','648720jspvjF','key_02_learn-more.png','75GYzyvU','unaddressedComments','\x20click-and-inspect\x20e37\x20--screenshot-path\x20','DRAHv','get','QEkXa','WHFCS','rangerwright_cli_video_stop','target','kjyJF','ref\x20','):\x20\x22','map','tracing-stop','go\x20back\x20and\x20inspect','WWYTW','key_99_final-state.png','5388669ThOxHQ','\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'];_0x3a3b=function(){return _0xe34004;};return _0x3a3b();}async function runRangerwrightLifecycleCommand(_0x5f179c){const _0x37d80d=_0x420c,_0xf42c7={'FyfUQ':function(_0x2290f0,_0x1444b9){return _0x2290f0(_0x1444b9);},'xPUXU':function(_0x1c4db3,_0x49537b){return _0x1c4db3??_0x49537b;},'xiZEr':function(_0x147d1a,_0xac863f,_0x264e3d){return _0x147d1a(_0xac863f,_0x264e3d);},'cCuVv':function(_0x3948a9,_0x3da20a,_0x3768ca){return _0x3948a9(_0x3da20a,_0x3768ca);}},{options:_0x59293e,commandArgs:_0x52e5d1,env:_0x5c4ec8,telemetry:_0xf5a3dd,phase:_0xc9d10,metadata:_0x109d2c,timeoutMs:_0x417ed7}=_0x5f179c;_0xf5a3dd['trackPhaseStart'](_0xc9d10,_0x109d2c);try{const _0x310f57=await _0xf42c7[_0x37d80d(0x20e)](runRangerwrightCliCommand,{..._0x59293e,'commandArgs':_0x52e5d1,'cwd':process['cwd'](),'env':_0x5c4ec8,'timeoutMs':_0xf42c7[_0x37d80d(0x207)](_0x417ed7,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0xf5a3dd['trackPhaseEnd'](_0xc9d10,{..._0x109d2c,'subcommand':_0x310f57[_0x37d80d(0x1fc)]['subcommand'],'stdoutPreview':_0xf42c7[_0x37d80d(0x218)](truncatePreview,_0x310f57['stdout'],0x7d0),'stderrPreview':_0xf42c7[_0x37d80d(0x1ec)](truncatePreview,_0x310f57['stderr'],0x7d0)});}catch(_0x3a4d8f){await _0xf5a3dd[_0x37d80d(0x1f9)](_0xc9d10,_0x3a4d8f,_0x109d2c);throw _0x3a4d8f;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x1ba2db){const _0x3ff366=_0x420c,_0x1819c8={'mFHBy':_0x3ff366(0x1dd),'tjcAF':'video-stop','lvdRt':'rangerwright_cli_close','iqvWE':_0x3ff366(0x20b),'cNitU':function(_0x5eff9d,_0x39408a){return _0x5eff9d(_0x39408a);}},{telemetry:_0x342a7e,rangerwrightOptions:_0x5ee1d8,env:_0x470139,transportMetadata:_0x43f154}=_0x1ba2db,_0x4389f4=[{'phase':_0x3ff366(0x211),'commandArgs':[_0x1819c8['mFHBy']]},{'phase':_0x3ff366(0x1d7),'commandArgs':[_0x1819c8[_0x3ff366(0x21c)]]},{'phase':_0x1819c8['lvdRt'],'commandArgs':[_0x1819c8[_0x3ff366(0x1ea)]]}];for(const _0x5c56c5 of _0x4389f4){try{await _0x1819c8['cNitU'](runRangerwrightLifecycleCommand,{'options':_0x5ee1d8,'commandArgs':[..._0x5c56c5[_0x3ff366(0x1fa)]],'env':_0x470139,'telemetry':_0x342a7e,'phase':_0x5c56c5[_0x3ff366(0x1c3)],'metadata':_0x43f154});}catch{}}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ranger-testing/ranger-cli",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.1-alpha.08fb70e-39",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ranger": "./build/cli.js",
|
|
@@ -22,9 +22,11 @@
|
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"@anthropic-ai/claude-agent-sdk": "^0.1.0",
|
|
24
24
|
"@playwright/cli": "0.1.1",
|
|
25
|
+
"@ranger-testing/rangerwright": "^0.0.27",
|
|
25
26
|
"dotenv": "^16.4.5",
|
|
26
27
|
"inquirer": "^9.2.12",
|
|
27
28
|
"playwright": "^1.57.0",
|
|
29
|
+
"ws": "^8.20.1",
|
|
28
30
|
"yargs": "^17.7.2",
|
|
29
31
|
"zod": "^3.23.8"
|
|
30
32
|
},
|
|
@@ -32,6 +34,7 @@
|
|
|
32
34
|
"@types/inquirer": "^9.0.7",
|
|
33
35
|
"@types/jest": "^29.5.0",
|
|
34
36
|
"@types/node": "^22.0.0",
|
|
37
|
+
"@types/ws": "^8.18.1",
|
|
35
38
|
"@types/yargs": "^17.0.32",
|
|
36
39
|
"jest": "^29.7.0",
|
|
37
40
|
"javascript-obfuscator": "^4.1.1",
|