@ranger-testing/ranger-cli 3.0.1-alpha.476607f-31 → 3.0.1-alpha.4fcf7f7-33
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 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x57c2a7,_0x50df33){const _0x80f39a=_0x3625,_0x201905=_0x57c2a7();while(!![]){try{const _0x21a8aa=parseInt(_0x80f39a(0x91))/0x1+-parseInt(_0x80f39a(0x82))/0x2+parseInt(_0x80f39a(0x9b))/0x3+-parseInt(_0x80f39a(0x8a))/0x4*(parseInt(_0x80f39a(0x88))/0x5)+-parseInt(_0x80f39a(0xfd))/0x6+parseInt(_0x80f39a(0xef))/0x7*(-parseInt(_0x80f39a(0xd9))/0x8)+parseInt(_0x80f39a(0x6b))/0x9;if(_0x21a8aa===_0x50df33)break;else _0x201905['push'](_0x201905['shift']());}catch(_0x4e4591){_0x201905['push'](_0x201905['shift']());}}}(_0x1aef,0xe32f3));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';function _0x1aef(){const _0x1eba7b=['VSfAS','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','tab-new','check\x20','\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.','selector','Xvyep','`\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`','values','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','content','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','playwright_cli_tracing_stop','42637nREQfP','`\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','hook_event_name','click\x20','playwright-cli','stringify','keys','get','PXtxN','cxxVu','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','short','fill','oyhUj','10460898mkptaf','APdMf','press','invocation','31983129qnDAeG','video-stop','snapshot','AnaVn','eRMkH','tab-select','trace.trace.zip','jjlmD','\x20snapshot\x20--filename\x20','phase','start\x20video\x20recording','...','playwright_cli_video_stop','[playwright-cli]\x20','tool_failure','omIPM','01_initial.yml','DqKap','ZvGyX','aliZw','UaXMS','test','match','2785450FmPADs','tTuAm','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','cilxc','NbiQG','--filename=','156590MiTEGM','rTIHa','128IoysoE','\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','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','push','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','\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','`,\x20then\x20`','589536sOjiWB','capture\x20snapshot','element','trackPhaseEnd','EFmZO','YKiYG','name','02_state.yml','key_03_success-state.png','pop','3069510bjlJQN','nxGZw','02_learn-more.yml','trackPhaseStart','trace.zip','domRef','\x20screenshot\x20--filename\x20','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','oDKzK','target','DEBUG','stop\x20video\x20recording','tool_input','split','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','fill\x20','kJYSM','sKZuo','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','JRryp','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','isFile','open','HLFRX','(?:^|\x5cs)','ekfES','yIxLn','ugDcp','tracing-stop','\x20open\x20','\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.','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','\x0a\x0a1.\x20Run\x20`','env','fILLV','subcommand','03_result-visible.png','IGoYt','en-US','\x5c$&','run-code','session-recording.webm','JVHjx','length','unaddressedComments','GMetm','open\x20browser','description','trackPhaseError','**\x20(','03_learn-more.png','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','check','oWGQQ','[ranger-verification-agent]\x20','commandArgs','authorName','\x20tracing-start`,\x20then\x20`','start\x20tracing','\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','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','lxEZr','128TkAPKn','rptMD','zQuBi','giuWf','GEZBG','tool_call','`\x0a-\x20`snapshot\x20--filename\x20','join','replace'];_0x1aef=function(){return _0x1eba7b;};return _0x1aef();}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(_0x461e84,_0x568200=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x4363f1=_0x3625,_0x38382f={'VmDMy':_0x4363f1(0x76)};return _0x461e84['length']>_0x568200?_0x461e84['slice'](0x0,_0x568200)+_0x38382f['VmDMy']:_0x461e84;}function buildCliArtifactPath(_0x1bb458,_0x379980){const _0x121cec={'iTokE':function(_0x195edd,_0x18c2f4,_0xcb9f09){return _0x195edd(_0x18c2f4,_0xcb9f09);}};return _0x121cec['iTokE'](join,_0x1bb458,_0x379980);}function toStepDisplayName(_0x266956){const _0x1ca1de=_0x3625,_0x2593ca={'GMetm':function(_0x2615a1,_0x234db3){return _0x2615a1(_0x234db3);}},_0x5b180f=basename(_0x266956)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x1ca1de(0xe1)](/^key_/i,'')[_0x1ca1de(0xe1)](/^\d+_/,'')[_0x1ca1de(0xe1)](/-/g,'\x20');return{'name':_0x5b180f,'isKeyStep':/^key_/i[_0x1ca1de(0x80)](_0x2593ca[_0x1ca1de(0xc8)](basename,_0x266956))};}function extractShellValue(_0x510f12){if(!_0x510f12)return null;return _0x510f12[0x1]??_0x510f12[0x2]??_0x510f12[0x3]??null;}function extractFilenameOption(_0xe44279){const _0x5bd390=_0x3625,_0x477dbf={'tEPaY':function(_0x41eb48,_0x6fca44){return _0x41eb48(_0x6fca44);}};return _0x477dbf['tEPaY'](extractShellValue,_0xe44279[_0x5bd390(0x81)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0xd9e1da,_0x3bf68c){const _0xee28b=_0x3625,_0x47f92f={'YKiYG':function(_0x2d89bc,_0x4b6127){return _0x2d89bc(_0x4b6127);}},_0x578c75=_0x3bf68c['replace'](/[.*+?^${}()|[\]\\]/g,_0xee28b(0xc2));return _0x47f92f[_0xee28b(0x96)](extractShellValue,_0xd9e1da[_0xee28b(0x81)](new RegExp(_0xee28b(0xb3)+_0x578c75+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x414749){const _0x31ec6e=_0x3625,_0x574127={'oDKzK':function(_0x1f2dd4,_0x38432f,_0x137c50){return _0x1f2dd4(_0x38432f,_0x137c50);}};if(!_0x414749)return _0x31ec6e(0xa4);if(/^e\d+$/i[_0x31ec6e(0x80)](_0x414749))return'ref\x20'+_0x414749;return JSON[_0x31ec6e(0xf4)](_0x574127[_0x31ec6e(0xa3)](truncatePreview,_0x414749,0x78));}function formatPlaywrightCliLog(_0x384032,_0x2e4be3){const _0xfe5bf6=_0x3625,_0x33e9e8={'cilxc':_0xfe5bf6(0xc9),'rKTrg':'tracing-start','eRMkH':_0xfe5bf6(0xd5),'MOqGN':'stop\x20tracing','ZcOYj':_0xfe5bf6(0x6d),'APdMf':function(_0x391759,_0x9d5e2){return _0x391759(_0x9d5e2);},'lOjAQ':'screenshot','GhgIL':function(_0xb72704,_0x4942d5){return _0xb72704(_0x4942d5);},'TfsLS':_0xfe5bf6(0xcf),'UZXpv':function(_0x1320b2,_0x5b090e,_0x26af80){return _0x1320b2(_0x5b090e,_0x26af80);},'lxEZr':function(_0x2724e7,_0x5e46e3,_0x5cb26d){return _0x2724e7(_0x5e46e3,_0x5cb26d);},'zQuBi':_0xfe5bf6(0xc3),'YXzbd':'run\x20custom\x20Playwright\x20code','rptMD':_0xfe5bf6(0x70),'ZtNrl':'select\x20tab'};switch(_0x2e4be3){case _0xfe5bf6(0xb1):{const _0x4fccbf=extractFirstCommandArgument(_0x384032,_0x2e4be3);return _0x4fccbf?'open\x20'+_0x4fccbf:_0x33e9e8[_0xfe5bf6(0x85)];}case _0x33e9e8['rKTrg']:return _0x33e9e8[_0xfe5bf6(0x6f)];case'tracing-stop':return _0x33e9e8['MOqGN'];case'video-start':return _0xfe5bf6(0x75);case _0xfe5bf6(0x6c):return _0xfe5bf6(0xa6);case _0x33e9e8['ZcOYj']:{const _0x2346f7=_0x33e9e8[_0xfe5bf6(0x68)](extractFilenameOption,_0x384032);if(!_0x2346f7)return _0xfe5bf6(0x92);const {name:_0x9d2f44}=_0x33e9e8[_0xfe5bf6(0x68)](toStepDisplayName,_0x2346f7);return'capture\x20snapshot\x20`'+_0x9d2f44+'`';}case _0x33e9e8['lOjAQ']:{const _0x5a6247=extractFilenameOption(_0x384032);if(!_0x5a6247)return'capture\x20screenshot';const {name:_0x3a9bad,isKeyStep:_0x3f085c}=toStepDisplayName(_0x5a6247);return _0x3f085c?'capture\x20key\x20step\x20`'+_0x3a9bad+'`':'capture\x20step\x20`'+_0x3a9bad+'`';}case'click':return _0xfe5bf6(0xf2)+_0x33e9e8['GhgIL'](formatCommandTarget,extractFirstCommandArgument(_0x384032,_0x2e4be3));case _0x33e9e8['TfsLS']:return _0xfe5bf6(0xe5)+formatCommandTarget(extractFirstCommandArgument(_0x384032,_0x2e4be3));case _0xfe5bf6(0xfb):return _0xfe5bf6(0xaa)+formatCommandTarget(_0x33e9e8['UZXpv'](extractFirstCommandArgument,_0x384032,_0x2e4be3));case _0xfe5bf6(0x69):return'press\x20'+formatCommandTarget(_0x33e9e8[_0xfe5bf6(0xd8)](extractFirstCommandArgument,_0x384032,_0x2e4be3));case _0x33e9e8[_0xfe5bf6(0xdb)]:return _0x33e9e8['YXzbd'];case _0xfe5bf6(0xe4):{const _0x23e819=extractFirstCommandArgument(_0x384032,_0x2e4be3);return _0x23e819?'open\x20new\x20tab\x20'+_0x23e819:'open\x20new\x20tab';}case _0x33e9e8[_0xfe5bf6(0xda)]:{const _0x17936a=extractFirstCommandArgument(_0x384032,_0x2e4be3);return _0x17936a?'select\x20tab\x20'+_0x17936a:_0x33e9e8['ZtNrl'];}default:return _0x2e4be3;}}function extractPlaywrightCliToolDescription(_0x180356){const _0x1301aa=_0x3625,_0x519f8b={'UaXMS':'string'},_0x464e53=_0x180356[_0x1301aa(0xca)];if(typeof _0x464e53!==_0x519f8b[_0x1301aa(0x7f)])return null;const _0xc77275=_0x464e53['trim']()['replace'](/\s+/g,'\x20');return _0xc77275[_0x1301aa(0xc6)]>0x0?_0xc77275:null;}function _0x3625(_0x3131a,_0x55dba2){_0x3131a=_0x3131a-0x68;const _0x1aefca=_0x1aef();let _0x3625e9=_0x1aefca[_0x3131a];return _0x3625e9;}export function formatPlaywrightCliConsoleLogMessage(_0x2276e7,_0x5b7cfa,_0x342a2c){const _0x489e7e=_0x3625,_0xb48f37={'yIxLn':function(_0x18ee0f,_0x5fe3ac,_0x5dc80d){return _0x18ee0f(_0x5fe3ac,_0x5dc80d);}},_0x2f3193=_0xb48f37[_0x489e7e(0xb5)](formatPlaywrightCliLog,_0x5b7cfa,_0x342a2c),_0x117c52=extractPlaywrightCliToolDescription(_0x2276e7);if(!_0x117c52)return _0x489e7e(0x78)+_0x2f3193;if(process[_0x489e7e(0xbc)][_0x489e7e(0xa5)])return _0x489e7e(0xd1)+_0x117c52+'\x20('+_0x2f3193+')';return'[ranger-verification-agent]\x20'+_0x117c52;}export function buildVerifyFeatureCliDebugPrompt(_0x5234cd,_0x386210){const _0x16f511=_0x3625,_0x2db816={'WQZHH':function(_0x2cc811,_0x3e9bb6,_0x3584fa){return _0x2cc811(_0x3e9bb6,_0x3584fa);},'VIPTI':'00_mozilla-homepage.yml','Flqhx':'01_mozilla-homepage.png','uYbUX':_0x16f511(0x9d),'FocON':function(_0x45c022,_0x4df504){return _0x45c022(_0x4df504);},'mAIdS':function(_0x5908be,_0x92635f){return _0x5908be(_0x92635f);},'RXYze':function(_0x2da15c,_0x3ad85a){return _0x2da15c(_0x3ad85a);}},_0x52bd31=_0x2db816['WQZHH'](buildCliArtifactPath,_0x386210,_0x2db816['VIPTI']),_0x58143e=buildCliArtifactPath(_0x386210,_0x2db816['Flqhx']),_0x38ce8c=buildCliArtifactPath(_0x386210,_0x2db816['uYbUX']),_0x50c6af=buildCliArtifactPath(_0x386210,_0x16f511(0xcd)),_0x3425a3=quoteShellArg(_0x52bd31),_0x41d19c=_0x2db816['FocON'](quoteShellArg,_0x58143e),_0x53b540=_0x2db816['mAIdS'](quoteShellArg,_0x38ce8c),_0x5bc0c6=_0x2db816['RXYze'](quoteShellArg,_0x50c6af);return _0x16f511(0xce)+_0x5234cd+_0x16f511(0xbb)+_0x5234cd+_0x16f511(0xba)+_0x5234cd+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x5234cd+_0x16f511(0xaf)+_0x386210+_0x16f511(0xd7)+_0x5234cd+'\x20snapshot\x20--filename\x20'+_0x3425a3+_0x16f511(0x84)+_0x5234cd+'\x20screenshot\x20--filename\x20'+_0x41d19c+_0x16f511(0xf9)+_0x5234cd+_0x16f511(0x73)+_0x53b540+'`\x0a9.\x20Run\x20`'+_0x5234cd+_0x16f511(0xa1)+_0x5bc0c6+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x3d79e4){const _0x2cacf5=_0x3625,_0x50a280={'nxGZw':_0x2cacf5(0xc1),'GEZBG':'numeric','GXjYq':'Reviewer','VSfAS':'\x20>\x20','Uzgbd':function(_0x9afed3,_0x41f75c,_0x1104aa){return _0x9afed3(_0x41f75c,_0x1104aa);},'ekfES':function(_0x4867f0,_0x90eccb,_0xe72d73){return _0x4867f0(_0x90eccb,_0xe72d73);},'jjlmD':_0x2cacf5(0x99),'JRryp':'01_initial-state.png','cxxVu':function(_0x525350,_0x2ca3d6){return _0x525350(_0x2ca3d6);},'giuWf':function(_0x153866,_0x39ea4a){return _0x153866>_0x39ea4a;},'PXtxN':_0x2cacf5(0xbf),'DHGUD':function(_0x564d1a,_0x2b1601,_0x1b3508){return _0x564d1a(_0x2b1601,_0x1b3508);},'NbiQG':'key_04_success-state.png'},{checklistItem:_0x5bd34c,itemFeedback:_0x18618b,taskDescription:_0x109c59,cliCommandPrefix:_0x8e83b3,cliArtifactDir:_0x31d79c,isCdpMode:_0x5819df,url:_0x3a11de,cdpEndpoint:_0xf5e32f,loginInstructions:_0x5881ac}=_0x3d79e4,_0x14948b=_0x50a280['Uzgbd'](buildCliArtifactPath,_0x31d79c,_0x2cacf5(0x7b)),_0x26645f=_0x50a280[_0x2cacf5(0xb4)](buildCliArtifactPath,_0x31d79c,_0x2cacf5(0x98)),_0x121cb2=buildCliArtifactPath(_0x31d79c,_0x50a280[_0x2cacf5(0x72)]),_0xd6f85f=buildCliArtifactPath(_0x31d79c,_0x50a280[_0x2cacf5(0xae)]),_0x10fd33=quoteShellArg(_0x14948b),_0x5c0095=quoteShellArg(_0x26645f),_0x425d8b=quoteShellArg(_0x121cb2),_0x461f02=_0x50a280[_0x2cacf5(0xf8)](quoteShellArg,_0xd6f85f),_0xddeeb8=_0x5bd34c['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x5bd34c['notes']:'';let _0x52c198='';if(_0x18618b&&_0x50a280[_0x2cacf5(0xdc)](_0x18618b[_0x2cacf5(0xc7)]['length'],0x0)){const _0xe5559d=_0x18618b[_0x2cacf5(0xc7)]['map'](_0x5103bd=>{const _0x24591d=_0x2cacf5,_0x23c1dd=new Date(_0x5103bd['createdAt'])['toLocaleDateString'](_0x50a280[_0x24591d(0x9c)],{'month':_0x24591d(0xfa),'day':_0x50a280[_0x24591d(0xdd)]}),_0x497868=_0x5103bd[_0x24591d(0xd3)]||_0x5103bd['authorEmail']||_0x50a280['GXjYq'],_0x374cec=_0x5103bd[_0x24591d(0xa0)]?'\x20(on\x20element:\x20<'+(_0x5103bd[_0x24591d(0xa0)][_0x24591d(0xe7)][_0x24591d(0xa8)](_0x50a280[_0x24591d(0xe2)])[_0x24591d(0x9a)]()?.['split'](':')[0x0]||_0x24591d(0x93))+'>\x20\x22'+(_0x5103bd['domRef']['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x5103bd['id']+']\x20**'+_0x497868+_0x24591d(0xcc)+_0x23c1dd+'):\x20\x22'+_0x5103bd[_0x24591d(0xec)]+'\x22'+_0x374cec;})[_0x2cacf5(0xe0)]('\x0a');_0x52c198='\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'+_0xe5559d;}const _0x50699d=_0x18618b?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x18618b['canonicalFlow']:'',_0x294c46=_0x5819df?_0x2cacf5(0xe3)+_0xf5e32f+_0x2cacf5(0x8e):_0x2cacf5(0xeb)+_0x3a11de+'\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',_0xf52915=_0x3a11de?quoteShellArg(_0x3a11de):'',_0x38f6fa=_0x5819df?_0x2cacf5(0xa2)+_0x8e83b3+'\x20open`,\x20then\x20`'+_0x8e83b3+_0x2cacf5(0xd4)+_0x8e83b3+_0x2cacf5(0x8c)+_0x31d79c+_0x2cacf5(0xa9)+_0x8e83b3+_0x2cacf5(0x73)+_0x10fd33+'`\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`'+_0x8e83b3+'\x20screenshot\x20--filename\x20'+_0x461f02+_0x2cacf5(0xed)+_0x8e83b3+'\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':_0x2cacf5(0xa2)+_0x8e83b3+_0x2cacf5(0xb8)+_0xf52915+_0x2cacf5(0x90)+_0x8e83b3+_0x2cacf5(0xd4)+_0x8e83b3+_0x2cacf5(0x8c)+_0x31d79c+_0x2cacf5(0xa9)+_0x8e83b3+_0x2cacf5(0x73)+_0x10fd33+'`\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`'+_0x8e83b3+_0x2cacf5(0xa1)+_0x461f02+_0x2cacf5(0xad)+_0x8e83b3+_0x2cacf5(0x8b),_0x405891=_0x5819df?'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.':'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0x3f8d61=_0x5881ac?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x5881ac+_0x2cacf5(0xe6):'';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'+_0x5bd34c[_0x2cacf5(0xca)]+_0xddeeb8+_0x52c198+_0x50699d+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x109c59+'\x0a\x0a'+_0x294c46+_0x3f8d61+'\x0a\x0a'+_0x38f6fa+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x8e83b3+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x31d79c+_0x2cacf5(0xdf)+_0x5c0095+_0x2cacf5(0xf0)+_0x425d8b+_0x2cacf5(0xe9)+_0x31d79c+'`:\x20\x22'+_0xd6f85f+'\x22,\x20\x22'+buildCliArtifactPath(_0x31d79c,'02_button-clicked.png')+'\x22,\x20\x22'+buildCliArtifactPath(_0x31d79c,_0x50a280[_0x2cacf5(0xf7)])+_0x2cacf5(0x8f)+_0x50a280['DHGUD'](buildCliArtifactPath,_0x31d79c,_0x50a280[_0x2cacf5(0x86)])+_0x2cacf5(0xd6)+_0x405891+_0x2cacf5(0xb9);}export function summarizeVerifyFeatureCliCommandAvailability(_0x5a9978){const _0x2e99b2=_0x3625,_0x565829={'oyhUj':function(_0x1576e8,_0x1471b2){return _0x1576e8===_0x1471b2;}},_0x20f91a=[..._0x5a9978[_0x2e99b2(0xf5)]()]['sort']();let _0x2de097=0x0;for(const _0x41e4b5 of _0x5a9978[_0x2e99b2(0xea)]()){_0x2de097+=_0x41e4b5;}return{'cliCommandCount':_0x2de097,'cliCommandsSeen':_0x20f91a,'noCliCommandsCalled':_0x565829[_0x2e99b2(0xfc)](_0x2de097,0x0)};}export function createVerifyFeatureCliHooks(_0x1b74fd){const _0x295550=_0x3625,_0x25154f={'EFmZO':function(_0x540ffa,_0x5e7540){return _0x540ffa!==_0x5e7540;},'rTIHa':'PostToolUse','haqDc':'Bash','tTuAm':function(_0x719943,_0x886d8a){return _0x719943(_0x886d8a);},'fILLV':function(_0xacc66b,_0x1050ae){return _0xacc66b(_0x1050ae);},'wXhZr':_0x295550(0xde),'Xvyep':'playwright-cli','JVHjx':function(_0x385ac8,_0x1ca3ab){return _0x385ac8!==_0x1ca3ab;},'vjljl':'snapshot','IGoYt':'PostToolUseFailure','oWGQQ':_0x295550(0x79)},_0x5becbd=new Map(),_0x270d57=async _0x388842=>{const _0x56b957=_0x295550;if(_0x25154f['EFmZO'](_0x388842['hook_event_name'],_0x25154f[_0x56b957(0x89)]))return{};const _0x1a9e49=_0x388842;if(_0x25154f[_0x56b957(0x95)](_0x1a9e49['tool_name'],_0x25154f['haqDc']))return{};const _0x4258ac=_0x1a9e49[_0x56b957(0xa7)],_0x59d40a=_0x25154f[_0x56b957(0x83)](extractBashCommand,_0x4258ac);if(!_0x59d40a)return{};const _0x39e4a0=_0x25154f[_0x56b957(0xbd)](parsePlaywrightCliCommand,_0x59d40a);if(!_0x39e4a0)return{};return _0x5becbd['set'](_0x39e4a0,(_0x5becbd[_0x56b957(0xf6)](_0x39e4a0)||0x0)+0x1),_0x1b74fd[_0x56b957(0x9e)](_0x25154f['wXhZr'],{'transport':_0x25154f[_0x56b957(0xe8)],'toolName':_0x39e4a0}),_0x1b74fd[_0x56b957(0x94)](_0x56b957(0xde),{'transport':_0x25154f[_0x56b957(0xe8)],'toolName':_0x39e4a0,'bashCommandPreview':truncatePreview(_0x59d40a)}),_0x25154f[_0x56b957(0xc5)](_0x39e4a0,_0x25154f['vjljl'])&&console['log'](formatPlaywrightCliConsoleLogMessage(_0x4258ac,_0x59d40a,_0x39e4a0)),{};},_0x1eccde=async _0x548175=>{const _0x1ab974=_0x295550;if(_0x25154f['EFmZO'](_0x548175[_0x1ab974(0xf1)],_0x25154f[_0x1ab974(0xc0)]))return{};const _0x1a16db=_0x548175;if(_0x25154f[_0x1ab974(0xc5)](_0x1a16db['tool_name'],'Bash'))return{};return await _0x1b74fd[_0x1ab974(0xcb)](_0x25154f[_0x1ab974(0xd0)],_0x1a16db['error'],{'transport':_0x1ab974(0xf3),'toolName':_0x25154f['haqDc']}),{};};return{'postToolUseHook':_0x270d57,'postToolUseFailureHook':_0x1eccde,'commandCounts':_0x5becbd};}async function runPlaywrightCliLifecycleCommand(_0x555340){const _0x51f077=_0x3625,_0x3caff0={'sKZuo':function(_0x3960fa,_0xe2afe7,_0x10d312){return _0x3960fa(_0xe2afe7,_0x10d312);}},{sessionId:_0x2d8090,configPath:_0x5841df,commandArgs:_0x1d31d7,env:_0x1f9588,telemetry:_0x2fa617,phase:_0x3c06ce,metadata:_0xa28403,timeoutMs:_0x544360}=_0x555340;_0x2fa617[_0x51f077(0x9e)](_0x3c06ce,_0xa28403);try{const _0x303a7b=await runPlaywrightCliCommand({'sessionId':_0x2d8090,'configPath':_0x5841df,'commandArgs':_0x1d31d7,'cwd':process['cwd'](),'env':_0x1f9588,'timeoutMs':_0x544360??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x2fa617[_0x51f077(0x94)](_0x3c06ce,{..._0xa28403,'subcommand':_0x303a7b[_0x51f077(0x6a)][_0x51f077(0xbe)],'stdoutPreview':_0x3caff0['sKZuo'](truncatePreview,_0x303a7b['stdout'],0x7d0),'stderrPreview':_0x3caff0[_0x51f077(0xac)](truncatePreview,_0x303a7b['stderr'],0x7d0)});}catch(_0x3f4e94){await _0x2fa617['trackPhaseError'](_0x3c06ce,_0x3f4e94,_0xa28403);throw _0x3f4e94;}}export async function finalizeVerifyFeatureCliSession(_0x3af914){const _0x56cf6c=_0x3625,_0x427682={'HLFRX':_0x56cf6c(0xb7),'fzzGY':_0x56cf6c(0x6c),'aliZw':_0x56cf6c(0xc4),'kJYSM':'close','ugDcp':function(_0x218e29,_0x114ff0){return _0x218e29(_0x114ff0);}},{telemetry:_0x205473,sessionId:_0x1202c2,configPath:_0x235786,cliArtifactDir:_0x11830b,env:_0x13cc4a,transportMetadata:_0x2ace87}=_0x3af914,_0x273fe0=[{'phase':_0x56cf6c(0xee),'commandArgs':[_0x427682[_0x56cf6c(0xb2)]]},{'phase':_0x56cf6c(0x77),'commandArgs':[_0x427682['fzzGY'],_0x56cf6c(0x87)+buildCliArtifactPath(_0x11830b,_0x427682[_0x56cf6c(0x7e)])]},{'phase':'playwright_cli_close','commandArgs':[_0x427682[_0x56cf6c(0xab)]]}];for(const _0x56ef17 of _0x273fe0){try{await _0x427682[_0x56cf6c(0xb6)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x1202c2,'configPath':_0x235786,'commandArgs':[..._0x56ef17[_0x56cf6c(0xd2)]],'env':_0x13cc4a,'telemetry':_0x205473,'phase':_0x56ef17[_0x56cf6c(0x74)],'metadata':_0x2ace87});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x40ae36){const _0x581da6=_0x3625,_0x648681={'AnaVn':_0x581da6(0x9f),'wdmBt':_0x581da6(0x71),'eOtMt':function(_0x30affd,_0x156b8b,_0x52f6f0){return _0x30affd(_0x156b8b,_0x52f6f0);},'omIPM':function(_0x239c34,_0x35b68f){return _0x239c34(_0x35b68f);}},_0x2b3852=[_0x648681[_0x581da6(0x6e)],_0x648681['wdmBt']];for(const _0xb40fad of _0x2b3852){const _0x40fcc3=_0x648681['eOtMt'](join,_0x40ae36,_0xb40fad);try{return{'buffer':await _0x648681[_0x581da6(0x7a)](readFile,_0x40fcc3),'source':_0x40fcc3};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x6768f4){const _0x2ab89a=_0x3625,_0xe8c6e6={'ewgXQ':function(_0x501bd8,_0x171d66){return _0x501bd8(_0x171d66);},'DqKap':function(_0x16fa1e,_0x47fd2b){return _0x16fa1e+_0x47fd2b;},'LOaEb':function(_0x45b4f1,_0x426d41,_0x29eb51){return _0x45b4f1(_0x426d41,_0x29eb51);},'ZvGyX':function(_0x15fff8,_0x22104c,_0xe35f0f){return _0x15fff8(_0x22104c,_0xe35f0f);}},{cwd:_0x1df997,cliArtifactDir:_0x647b54,startTime:_0x2ee014}=_0x6768f4,_0x47f9ef=[];await mkdir(_0x647b54,{'recursive':!![]});const _0x4350ea=await readdir(_0x1df997,{'withFileTypes':!![]});for(const _0x34bc87 of _0x4350ea){if(!_0x34bc87[_0x2ab89a(0xb0)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x34bc87[_0x2ab89a(0x97)]))continue;const _0x374abc=join(_0x1df997,_0x34bc87['name']),_0x4630ec=await _0xe8c6e6['ewgXQ'](stat,_0x374abc);if(_0xe8c6e6[_0x2ab89a(0x7c)](_0x4630ec['mtimeMs'],0x7d0)<_0x2ee014)continue;const _0x4aff59=_0xe8c6e6['LOaEb'](buildCliArtifactPath,_0x647b54,_0x34bc87[_0x2ab89a(0x97)]);if(_0x374abc===_0x4aff59)continue;await _0xe8c6e6[_0x2ab89a(0x7d)](rename,_0x374abc,_0x4aff59),_0x47f9ef[_0x2ab89a(0x8d)](_0x34bc87['name']);}return _0x47f9ef['sort']();}
|
|
1
|
+
(function(_0x3e0f2e,_0x9f5d7c){const _0x1f3e30=_0x3d94,_0x18ea55=_0x3e0f2e();while(!![]){try{const _0x49f71c=parseInt(_0x1f3e30(0x9e))/0x1+parseInt(_0x1f3e30(0xbe))/0x2+-parseInt(_0x1f3e30(0xcc))/0x3+parseInt(_0x1f3e30(0xce))/0x4*(parseInt(_0x1f3e30(0xdb))/0x5)+-parseInt(_0x1f3e30(0xe7))/0x6+parseInt(_0x1f3e30(0xee))/0x7+parseInt(_0x1f3e30(0xb4))/0x8*(-parseInt(_0x1f3e30(0xff))/0x9);if(_0x49f71c===_0x9f5d7c)break;else _0x18ea55['push'](_0x18ea55['shift']());}catch(_0x1dce68){_0x18ea55['push'](_0x18ea55['shift']());}}}(_0x33b2,0x9bb51));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(_0x513359,_0xece6da=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x55faa3=_0x3d94,_0x40a70a={'UtKjc':function(_0x7d627b,_0x59906c){return _0x7d627b+_0x59906c;},'AZOaI':'...'};return _0x513359[_0x55faa3(0x9b)]>_0xece6da?_0x40a70a[_0x55faa3(0x107)](_0x513359['slice'](0x0,_0xece6da),_0x40a70a[_0x55faa3(0xa3)]):_0x513359;}function buildCliArtifactPath(_0x32d223,_0x362147){const _0x3c32d0=_0x3d94,_0x394071={'GeAAd':function(_0x52079c,_0x32fc9a,_0x1fd977){return _0x52079c(_0x32fc9a,_0x1fd977);}};return _0x394071[_0x3c32d0(0xe9)](join,_0x32d223,_0x362147);}function toStepDisplayName(_0x19a330){const _0x9618f1=_0x3d94,_0x2b622d={'AbKcR':function(_0x39a66d,_0x4ccfde){return _0x39a66d(_0x4ccfde);}},_0x3d966d=basename(_0x19a330)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x9618f1(0xe2)](/^key_/i,'')['replace'](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x3d966d,'isKeyStep':/^key_/i[_0x9618f1(0xfc)](_0x2b622d['AbKcR'](basename,_0x19a330))};}function extractShellValue(_0xcb888d){if(!_0xcb888d)return null;return _0xcb888d[0x1]??_0xcb888d[0x2]??_0xcb888d[0x3]??null;}function extractFilenameOption(_0x1c9d35){const _0xbc9ca3=_0x3d94;return extractShellValue(_0x1c9d35[_0xbc9ca3(0x11c)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x1cf50d,_0x384c4b){const _0x16541d=_0x3d94,_0x3aef97={'SQUUh':'\x5c$&'},_0x485f0c=_0x384c4b[_0x16541d(0xe2)](/[.*+?^${}()|[\]\\]/g,_0x3aef97[_0x16541d(0xf0)]);return extractShellValue(_0x1cf50d['match'](new RegExp(_0x16541d(0xac)+_0x485f0c+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0xd11e35){const _0x26bd7d=_0x3d94,_0x369e57={'skoxS':function(_0x14641f,_0x57fd30,_0x114720){return _0x14641f(_0x57fd30,_0x114720);}};if(!_0xd11e35)return'target';if(/^e\d+$/i[_0x26bd7d(0xfc)](_0xd11e35))return _0x26bd7d(0xd4)+_0xd11e35;return JSON['stringify'](_0x369e57[_0x26bd7d(0xa6)](truncatePreview,_0xd11e35,0x78));}function formatPlaywrightCliLog(_0x5746ba,_0x41fd6e){const _0x436c64=_0x3d94,_0x2ca44f={'vrToh':_0x436c64(0xe8),'IrutP':function(_0x596b6e,_0x5604a7,_0x4bfd77){return _0x596b6e(_0x5604a7,_0x4bfd77);},'PbaWO':'tracing-start','PXsVy':_0x436c64(0x114),'bURST':_0x436c64(0x11b),'UfilC':_0x436c64(0x9f),'KRCyo':'click','VlFpx':_0x436c64(0xc5),'VBKoi':function(_0x4fb69f,_0x513cb6,_0x2bddc0){return _0x4fb69f(_0x513cb6,_0x2bddc0);},'LRhBD':function(_0x406a2c,_0x3fb54e){return _0x406a2c(_0x3fb54e);},'ZepPS':function(_0x1d6a11,_0x42df02,_0x478374){return _0x1d6a11(_0x42df02,_0x478374);},'mXRWy':'tab-select','Mfqmr':function(_0xbf9ce2,_0x567a54,_0x113394){return _0xbf9ce2(_0x567a54,_0x113394);},'AKRBf':_0x436c64(0xd2)};switch(_0x41fd6e){case _0x2ca44f[_0x436c64(0xbc)]:{const _0x52b8e3=_0x2ca44f[_0x436c64(0xcb)](extractFirstCommandArgument,_0x5746ba,_0x41fd6e);return _0x52b8e3?'open\x20'+_0x52b8e3:'open\x20browser';}case _0x2ca44f[_0x436c64(0x116)]:return _0x2ca44f[_0x436c64(0xb1)];case _0x2ca44f['bURST']:return'stop\x20tracing';case _0x436c64(0xfb):return'start\x20video\x20recording';case'video-stop':return _0x2ca44f[_0x436c64(0xd9)];case _0x436c64(0xc9):{const _0xf69066=extractFilenameOption(_0x5746ba);if(!_0xf69066)return _0x436c64(0xa5);const {name:_0xf187cd}=toStepDisplayName(_0xf69066);return'capture\x20snapshot\x20`'+_0xf187cd+'`';}case'screenshot':{const _0x574b6b=extractFilenameOption(_0x5746ba);if(!_0x574b6b)return'capture\x20screenshot';const {name:_0x1caedb,isKeyStep:_0x2d9d77}=toStepDisplayName(_0x574b6b);return _0x2d9d77?'capture\x20key\x20step\x20`'+_0x1caedb+'`':_0x436c64(0xe4)+_0x1caedb+'`';}case _0x2ca44f['KRCyo']:return _0x436c64(0xa0)+formatCommandTarget(_0x2ca44f['IrutP'](extractFirstCommandArgument,_0x5746ba,_0x41fd6e));case _0x2ca44f['VlFpx']:return'check\x20'+formatCommandTarget(extractFirstCommandArgument(_0x5746ba,_0x41fd6e));case'fill':return _0x436c64(0xf2)+formatCommandTarget(_0x2ca44f['VBKoi'](extractFirstCommandArgument,_0x5746ba,_0x41fd6e));case'press':return _0x436c64(0xf4)+_0x2ca44f[_0x436c64(0x102)](formatCommandTarget,_0x2ca44f['ZepPS'](extractFirstCommandArgument,_0x5746ba,_0x41fd6e));case _0x436c64(0xbb):return _0x436c64(0xaf);case _0x436c64(0xd3):{const _0x1c3587=extractFirstCommandArgument(_0x5746ba,_0x41fd6e);return _0x1c3587?'open\x20new\x20tab\x20'+_0x1c3587:_0x436c64(0x105);}case _0x2ca44f[_0x436c64(0xb6)]:{const _0x52290a=_0x2ca44f['Mfqmr'](extractFirstCommandArgument,_0x5746ba,_0x41fd6e);return _0x52290a?_0x436c64(0xe1)+_0x52290a:_0x2ca44f['AKRBf'];}default:return _0x41fd6e;}}function extractPlaywrightCliToolDescription(_0x1176f4){const _0x5466f4=_0x3d94,_0x2a1a26={'GUEKl':function(_0xdc6933,_0x3df27b){return _0xdc6933!==_0x3df27b;}},_0x3335a4=_0x1176f4[_0x5466f4(0xa2)];if(_0x2a1a26[_0x5466f4(0xb2)](typeof _0x3335a4,_0x5466f4(0xfa)))return null;const _0x5d97a2=_0x3335a4['trim']()['replace'](/\s+/g,'\x20');return _0x5d97a2[_0x5466f4(0x9b)]>0x0?_0x5d97a2:null;}export function formatPlaywrightCliConsoleLogMessage(_0x595ba9,_0x2c401a,_0x4fbdfa){const _0x297d5e=_0x3d94,_0x5c826c={'EIDsf':function(_0x20b99b,_0x5115f4){return _0x20b99b(_0x5115f4);}},_0x45df89=formatPlaywrightCliLog(_0x2c401a,_0x4fbdfa),_0x1e2930=_0x5c826c[_0x297d5e(0xa7)](extractPlaywrightCliToolDescription,_0x595ba9);if(!_0x1e2930)return _0x297d5e(0xa4)+_0x45df89;if(process['env'][_0x297d5e(0x99)])return'[ranger-verification-agent]\x20'+_0x1e2930+'\x20('+_0x45df89+')';return'[ranger-verification-agent]\x20'+_0x1e2930;}export function buildVerifyFeatureCliDebugPrompt(_0x5b21f0,_0x49e790){const _0x2cff9d=_0x3d94,_0x5a9d56={'NugHZ':function(_0x539ad5,_0x4352be,_0x3c9922){return _0x539ad5(_0x4352be,_0x3c9922);},'LUcOr':'03_learn-more.png','pWUUk':function(_0x1e1839,_0xa49349){return _0x1e1839(_0xa49349);},'UfQUp':function(_0x59cc79,_0x285fcf){return _0x59cc79(_0x285fcf);},'tUYwa':function(_0x5e6206,_0x38d877){return _0x5e6206(_0x38d877);},'kXPYu':function(_0x24f5ec,_0x499b32){return _0x24f5ec(_0x499b32);}},_0x31d474=_0x5a9d56['NugHZ'](buildCliArtifactPath,_0x49e790,'00_mozilla-homepage.yml'),_0x3b2bbf=buildCliArtifactPath(_0x49e790,_0x2cff9d(0xf7)),_0x153e18=buildCliArtifactPath(_0x49e790,_0x2cff9d(0xec)),_0x289f97=_0x5a9d56[_0x2cff9d(0x10e)](buildCliArtifactPath,_0x49e790,_0x5a9d56[_0x2cff9d(0x9a)]),_0x49d75f=_0x5a9d56['pWUUk'](quoteShellArg,_0x31d474),_0x2f2a81=_0x5a9d56['UfQUp'](quoteShellArg,_0x3b2bbf),_0x28cd95=_0x5a9d56['tUYwa'](quoteShellArg,_0x153e18),_0x48379e=_0x5a9d56['kXPYu'](quoteShellArg,_0x289f97);return _0x2cff9d(0xd8)+_0x5b21f0+'\x0a\x0a1.\x20Run\x20`'+_0x5b21f0+_0x2cff9d(0x103)+_0x5b21f0+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x5b21f0+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x49e790+_0x2cff9d(0xe0)+_0x5b21f0+'\x20snapshot\x20--filename\x20'+_0x49d75f+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x5b21f0+_0x2cff9d(0x115)+_0x2f2a81+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x5b21f0+_0x2cff9d(0xbd)+_0x28cd95+'`\x0a9.\x20Run\x20`'+_0x5b21f0+_0x2cff9d(0x115)+_0x48379e+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x4b1f0c){const _0x3eb866=_0x3d94,_0x55919c={'VmBDz':_0x3eb866(0xc3),'PygZX':_0x3eb866(0xb5),'OjSJM':'\x20>\x20','QXYDS':'01_initial.yml','hoFVS':function(_0x4d4973,_0x134f1c,_0x2eed77){return _0x4d4973(_0x134f1c,_0x2eed77);},'pztBI':function(_0x155243,_0x5ba1a4,_0x26018c){return _0x155243(_0x5ba1a4,_0x26018c);},'PCOcZ':function(_0x41d28d,_0xfec312,_0xbe23dc){return _0x41d28d(_0xfec312,_0xbe23dc);},'uXrKt':_0x3eb866(0xab),'MwCHF':function(_0x44e76e,_0x35acee){return _0x44e76e(_0x35acee);},'YnOXr':function(_0x33bb3b,_0x5bdc94){return _0x33bb3b(_0x5bdc94);}},{checklistItem:_0x56f42d,itemFeedback:_0x187344,taskDescription:_0x2c161e,cliCommandPrefix:_0x46990b,cliArtifactDir:_0x35a855,isCdpMode:_0x24d7aa,url:_0x1ae308,cdpEndpoint:_0x483147,loginInstructions:_0x5c2bf6}=_0x4b1f0c,_0x465cdc=buildCliArtifactPath(_0x35a855,_0x55919c['QXYDS']),_0x50f0d8=_0x55919c[_0x3eb866(0xb9)](buildCliArtifactPath,_0x35a855,_0x3eb866(0xcd)),_0x408944=_0x55919c['pztBI'](buildCliArtifactPath,_0x35a855,'key_03_success-state.png'),_0x4087b3=_0x55919c['PCOcZ'](buildCliArtifactPath,_0x35a855,_0x55919c['uXrKt']),_0x201dfb=_0x55919c['MwCHF'](quoteShellArg,_0x465cdc),_0x38d2ca=_0x55919c['YnOXr'](quoteShellArg,_0x50f0d8),_0xfbf875=_0x55919c[_0x3eb866(0xb0)](quoteShellArg,_0x408944),_0x4fb8ff=quoteShellArg(_0x4087b3),_0x3723b7=_0x56f42d[_0x3eb866(0xc4)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x56f42d['notes']:'';let _0x42fde4='';if(_0x187344&&_0x187344['unaddressedComments']['length']>0x0){const _0xd5fc12=_0x187344['unaddressedComments']['map'](_0x53705a=>{const _0x17f3e5=_0x3eb866,_0x2823a5=new Date(_0x53705a[_0x17f3e5(0xa9)])[_0x17f3e5(0xca)](_0x55919c['VmBDz'],{'month':_0x17f3e5(0xda),'day':_0x55919c[_0x17f3e5(0xdd)]}),_0x9c2c8f=_0x53705a['authorName']||_0x53705a['authorEmail']||_0x17f3e5(0xd5),_0x2f7fb8=_0x53705a[_0x17f3e5(0xea)]?_0x17f3e5(0xe6)+(_0x53705a[_0x17f3e5(0xea)][_0x17f3e5(0xbf)][_0x17f3e5(0xc1)](_0x55919c['OjSJM'])[_0x17f3e5(0x10c)]()?.['split'](':')[0x0]||_0x17f3e5(0xd0))+_0x17f3e5(0x9d)+(_0x53705a[_0x17f3e5(0xea)]['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return _0x17f3e5(0xaa)+_0x53705a['id']+_0x17f3e5(0xde)+_0x9c2c8f+'**\x20('+_0x2823a5+_0x17f3e5(0xcf)+_0x53705a[_0x17f3e5(0xf3)]+'\x22'+_0x2f7fb8;})[_0x3eb866(0xc7)]('\x0a');_0x42fde4='\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'+_0xd5fc12;}const _0x3a0c6d=_0x187344?.[_0x3eb866(0xba)]?_0x3eb866(0xf5)+_0x187344[_0x3eb866(0xba)]:'',_0x37420a=_0x24d7aa?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x483147+_0x3eb866(0x109):_0x3eb866(0xed)+_0x1ae308+_0x3eb866(0xd7),_0x103119=_0x1ae308?quoteShellArg(_0x1ae308):'',_0x2e5f63=_0x24d7aa?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x46990b+_0x3eb866(0xb3)+_0x46990b+_0x3eb866(0xa8)+_0x46990b+_0x3eb866(0xf1)+_0x35a855+_0x3eb866(0x108)+_0x46990b+_0x3eb866(0xbd)+_0x201dfb+'`\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`'+_0x46990b+_0x3eb866(0x115)+_0x4fb8ff+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x46990b+'\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':_0x3eb866(0xfe)+_0x46990b+'\x20open\x20'+_0x103119+_0x3eb866(0xc2)+_0x46990b+'\x20tracing-start`,\x20then\x20`'+_0x46990b+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x35a855+_0x3eb866(0x108)+_0x46990b+'\x20snapshot\x20--filename\x20'+_0x201dfb+_0x3eb866(0x112)+_0x46990b+'\x20screenshot\x20--filename\x20'+_0x4fb8ff+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x46990b+'\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',_0x25c9d4=_0x24d7aa?'\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.':_0x3eb866(0xef),_0xbb5fbc=_0x5c2bf6?_0x3eb866(0x110)+_0x5c2bf6+_0x3eb866(0x11a):'';return _0x3eb866(0x10a)+_0x56f42d[_0x3eb866(0xa2)]+_0x3723b7+_0x42fde4+_0x3a0c6d+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x2c161e+'\x0a\x0a'+_0x37420a+_0xbb5fbc+'\x0a\x0a'+_0x2e5f63+_0x3eb866(0x10f)+_0x46990b+_0x3eb866(0xfd)+_0x35a855+_0x3eb866(0xe5)+_0x38d2ca+'`\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'+_0xfbf875+'`\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`'+_0x35a855+'`:\x20\x22'+_0x4087b3+'\x22,\x20\x22'+buildCliArtifactPath(_0x35a855,_0x3eb866(0xd1))+'\x22,\x20\x22'+buildCliArtifactPath(_0x35a855,_0x3eb866(0xd6))+'\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22'+buildCliArtifactPath(_0x35a855,'key_04_success-state.png')+'\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a'+_0x25c9d4+'\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(_0x21799e){const _0x70a736=_0x3d94,_0x518c0a={'RWlnN':function(_0xa3e8a5,_0x48f074){return _0xa3e8a5===_0x48f074;}},_0x55a9e2=[..._0x21799e['keys']()][_0x70a736(0x119)]();let _0x4fa99a=0x0;for(const _0x13655f of _0x21799e[_0x70a736(0xf8)]()){_0x4fa99a+=_0x13655f;}return{'cliCommandCount':_0x4fa99a,'cliCommandsSeen':_0x55a9e2,'noCliCommandsCalled':_0x518c0a['RWlnN'](_0x4fa99a,0x0)};}export function createVerifyFeatureCliHooks(_0xf31845){const _0x531226=_0x3d94,_0x1cb1e1={'qYwHC':function(_0xd63e79,_0x4b7bf2){return _0xd63e79!==_0x4b7bf2;},'ptPOl':'PostToolUse','WPDGj':_0x531226(0xf9),'ocYFL':function(_0x1c09d0,_0x3efd1f){return _0x1c09d0+_0x3efd1f;},'xcNuH':'tool_call','EvlXP':_0x531226(0xdf),'BNREV':function(_0x4cf6c7,_0x23f5a0){return _0x4cf6c7(_0x23f5a0);},'mZYMk':function(_0x5a6055,_0x959bc3){return _0x5a6055!==_0x959bc3;},'PpcDF':function(_0x52136e,_0x58ac2e){return _0x52136e!==_0x58ac2e;}},_0x269563=new Map(),_0x12ff17=async _0x364ab3=>{const _0x363d98=_0x531226;if(_0x1cb1e1['qYwHC'](_0x364ab3[_0x363d98(0xb8)],_0x1cb1e1['ptPOl']))return{};const _0x376bce=_0x364ab3;if(_0x376bce['tool_name']!==_0x1cb1e1['WPDGj'])return{};const _0xcfbac4=_0x376bce[_0x363d98(0xeb)],_0x42b5dc=extractBashCommand(_0xcfbac4);if(!_0x42b5dc)return{};const _0x2b079a=parsePlaywrightCliCommand(_0x42b5dc);if(!_0x2b079a)return{};return _0x269563[_0x363d98(0xa1)](_0x2b079a,_0x1cb1e1['ocYFL'](_0x269563[_0x363d98(0x9c)](_0x2b079a)||0x0,0x1)),_0xf31845['trackPhaseStart'](_0x1cb1e1[_0x363d98(0x100)],{'transport':_0x1cb1e1['EvlXP'],'toolName':_0x2b079a}),_0xf31845[_0x363d98(0x111)](_0x363d98(0xc0),{'transport':_0x1cb1e1['EvlXP'],'toolName':_0x2b079a,'bashCommandPreview':_0x1cb1e1[_0x363d98(0xdc)](truncatePreview,_0x42b5dc)}),_0x2b079a!==_0x363d98(0xc9)&&console[_0x363d98(0xae)](formatPlaywrightCliConsoleLogMessage(_0xcfbac4,_0x42b5dc,_0x2b079a)),{};},_0x207366=async _0x3bb12f=>{const _0x5ac561=_0x531226;if(_0x1cb1e1['mZYMk'](_0x3bb12f[_0x5ac561(0xb8)],'PostToolUseFailure'))return{};const _0x2e2b4c=_0x3bb12f;if(_0x1cb1e1[_0x5ac561(0x117)](_0x2e2b4c[_0x5ac561(0x104)],_0x1cb1e1[_0x5ac561(0x10d)]))return{};return await _0xf31845['trackPhaseError']('tool_failure',_0x2e2b4c[_0x5ac561(0xe3)],{'transport':_0x5ac561(0xdf),'toolName':_0x1cb1e1['WPDGj']}),{};};return{'postToolUseHook':_0x12ff17,'postToolUseFailureHook':_0x207366,'commandCounts':_0x269563};}async function runPlaywrightCliLifecycleCommand(_0x1fc99d){const _0x35e703=_0x3d94,_0x34cca7={'qqMxD':function(_0x3d9182,_0x2aa732){return _0x3d9182??_0x2aa732;}},{sessionId:_0x250e86,configPath:_0x39e162,commandArgs:_0x50969f,env:_0x522bcd,telemetry:_0x271809,phase:_0x204e44,metadata:_0x403e5d,timeoutMs:_0x57693a}=_0x1fc99d;_0x271809[_0x35e703(0x118)](_0x204e44,_0x403e5d);try{const _0xea2ba4=await runPlaywrightCliCommand({'sessionId':_0x250e86,'configPath':_0x39e162,'commandArgs':_0x50969f,'cwd':process[_0x35e703(0x10b)](),'env':_0x522bcd,'timeoutMs':_0x34cca7[_0x35e703(0xb7)](_0x57693a,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x271809['trackPhaseEnd'](_0x204e44,{..._0x403e5d,'subcommand':_0xea2ba4['invocation']['subcommand'],'stdoutPreview':truncatePreview(_0xea2ba4['stdout'],0x7d0),'stderrPreview':truncatePreview(_0xea2ba4['stderr'],0x7d0)});}catch(_0x1d34c){await _0x271809[_0x35e703(0x106)](_0x204e44,_0x1d34c,_0x403e5d);throw _0x1d34c;}}function _0x3d94(_0x30e4d2,_0x37d3ec){_0x30e4d2=_0x30e4d2-0x99;const _0x33b236=_0x33b2();let _0x3d941d=_0x33b236[_0x30e4d2];return _0x3d941d;}export async function finalizeVerifyFeatureCliSession(_0x563f5f){const _0x5cc32e=_0x3d94,_0x54ce5c={'SklCZ':_0x5cc32e(0xc6),'ItCiR':'close'},{telemetry:_0x447ea5,sessionId:_0xe08b90,configPath:_0x445bb8,cliArtifactDir:_0x131b27,env:_0x1ce02f,transportMetadata:_0x3e459a}=_0x563f5f,_0x15bd10=[{'phase':_0x5cc32e(0xc8),'commandArgs':['tracing-stop']},{'phase':'playwright_cli_video_stop','commandArgs':[_0x5cc32e(0x101),'--filename='+buildCliArtifactPath(_0x131b27,_0x54ce5c['SklCZ'])]},{'phase':'playwright_cli_close','commandArgs':[_0x54ce5c['ItCiR']]}];for(const _0x5859b2 of _0x15bd10){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0xe08b90,'configPath':_0x445bb8,'commandArgs':[..._0x5859b2['commandArgs']],'env':_0x1ce02f,'telemetry':_0x447ea5,'phase':_0x5859b2['phase'],'metadata':_0x3e459a});}catch{}}}function _0x33b2(){const _0x17d49c=['fill\x20','content','press\x20','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','name','01_mozilla-homepage.png','values','Bash','string','video-start','test','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','1845zkGWXB','xcNuH','video-stop','LRhBD','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','tool_name','open\x20new\x20tab','trackPhaseError','UtKjc','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','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','cwd','pop','WPDGj','NugHZ','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','trackPhaseEnd','`\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`','OqqKD','start\x20tracing','\x20screenshot\x20--filename\x20','PbaWO','PpcDF','trackPhaseStart','sort','\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.','tracing-stop','match','DEBUG','LUcOr','length','get','>\x20\x22','883564VeueLx','stop\x20video\x20recording','click\x20','set','description','AZOaI','[playwright-cli]\x20','capture\x20snapshot','skoxS','EIDsf','\x20tracing-start`,\x20then\x20`','createdAt','-\x20[','01_initial-state.png','(?:^|\x5cs)','push','log','run\x20custom\x20Playwright\x20code','MwCHF','PXsVy','GUEKl','\x20open`,\x20then\x20`','39392MCzCHj','numeric','mXRWy','qqMxD','hook_event_name','hoFVS','canonicalFlow','run-code','vrToh','\x20snapshot\x20--filename\x20','1749840iwzkrV','selector','tool_call','split','`,\x20then\x20`','en-US','notes','check','session-recording.webm','join','playwright_cli_tracing_stop','snapshot','toLocaleDateString','IrutP','2296167pSuARc','02_state.yml','1148fefIIU','):\x20\x22','element','02_button-clicked.png','select\x20tab','tab-new','ref\x20','Reviewer','03_result-visible.png','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x20(same\x20protocol,\x20host,\x20and\x20port)\x0a-\x20For\x20example,\x20if\x20the\x20base\x20URL\x20is\x20\x22http://localhost:3000\x22,\x20you\x20can\x20navigate\x20to\x20\x22http://localhost:3000/home\x22,\x20\x22http://localhost:3000/settings\x22,\x20etc.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port\x20under\x20any\x20circumstances\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists\x20(e.g.,\x20\x22/dashboard\x22),\x20you\x20may\x20navigate\x20to\x20that\x20path\x20ONLY\x20under\x20the\x20base\x20URL\x20above\x0a-\x20The\x20base\x20URL\x20above\x20is\x20the\x20ONLY\x20authorized\x20profile\x20for\x20this\x20verification','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','UfilC','short','10770JXpHgs','BNREV','PygZX',']\x20**','playwright-cli','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','select\x20tab\x20','replace','error','capture\x20step\x20`','`\x0a-\x20`snapshot\x20--filename\x20','\x20(on\x20element:\x20<','1704114XIaZme','open','GeAAd','domRef','tool_input','02_learn-more.yml','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','2239461KuLszR','\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.','SQUUh','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'];_0x33b2=function(){return _0x17d49c;};return _0x33b2();}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x4a21ef){const _0x184664={'VSGxc':'trace.zip','okTWy':function(_0x4308ba,_0x17f4c7){return _0x4308ba(_0x17f4c7);}},_0x107cf5=[_0x184664['VSGxc'],'trace.trace.zip'];for(const _0x4d6ec2 of _0x107cf5){const _0x3b6bfb=join(_0x4a21ef,_0x4d6ec2);try{return{'buffer':await _0x184664['okTWy'](readFile,_0x3b6bfb),'source':_0x3b6bfb};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x1dc042){const _0x13b657=_0x3d94,_0x2e37c0={'OqqKD':function(_0x30cdf9,_0x1b35dc){return _0x30cdf9+_0x1b35dc;},'mypZZ':function(_0x573276,_0x14e666,_0x34b414){return _0x573276(_0x14e666,_0x34b414);}},{cwd:_0x318e9c,cliArtifactDir:_0x213452,startTime:_0x50dded}=_0x1dc042,_0x4599d7=[];await mkdir(_0x213452,{'recursive':!![]});const _0xc523bf=await readdir(_0x318e9c,{'withFileTypes':!![]});for(const _0x1731d of _0xc523bf){if(!_0x1731d['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x1731d[_0x13b657(0xf6)]))continue;const _0x1fc067=join(_0x318e9c,_0x1731d[_0x13b657(0xf6)]),_0x427fe2=await stat(_0x1fc067);if(_0x2e37c0[_0x13b657(0x113)](_0x427fe2['mtimeMs'],0x7d0)<_0x50dded)continue;const _0x17539c=buildCliArtifactPath(_0x213452,_0x1731d['name']);if(_0x1fc067===_0x17539c)continue;await _0x2e37c0['mypZZ'](rename,_0x1fc067,_0x17539c),_0x4599d7[_0x13b657(0xad)](_0x1731d[_0x13b657(0xf6)]);}return _0x4599d7['sort']();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x7ec90f=_0x5c16;(function(_0x730338,_0x3bee1c){const _0x24ceb4=_0x5c16,_0x2d7bb4=_0x730338();while(!![]){try{const _0xec108=parseInt(_0x24ceb4(0x1ba))/0x1*(-parseInt(_0x24ceb4(0x15b))/0x2)+-parseInt(_0x24ceb4(0x1ce))/0x3*(-parseInt(_0x24ceb4(0x1ee))/0x4)+-parseInt(_0x24ceb4(0x177))/0x5*(-parseInt(_0x24ceb4(0x158))/0x6)+-parseInt(_0x24ceb4(0x18f))/0x7+parseInt(_0x24ceb4(0x1eb))/0x8+-parseInt(_0x24ceb4(0x1f5))/0x9*(-parseInt(_0x24ceb4(0x163))/0xa)+-parseInt(_0x24ceb4(0x1bf))/0xb;if(_0xec108===_0x3bee1c)break;else _0x2d7bb4['push'](_0x2d7bb4['shift']());}catch(_0x496f8e){_0x2d7bb4['push'](_0x2d7bb4['shift']());}}}(_0x4d1b,0x2884c));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 _0x5c16(_0x3bda84,_0x489731){_0x3bda84=_0x3bda84-0x134;const _0x4d1b08=_0x4d1b();let _0x5c1682=_0x4d1b08[_0x3bda84];return _0x5c1682;}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','execute',_0x7ec90f(0x1d9),'ask','goto','wait-for','snapshot',_0x7ec90f(0x14a)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x4eb22f,_0x5aa692){return join(_0x4eb22f,_0x5aa692);}export class NovaActArtifactRecorder{[_0x7ec90f(0x134)];[_0x7ec90f(0x1cc)]=null;[_0x7ec90f(0x152)]=null;['frameSession']=null;['frameWrites']=[];['frameCount']=0x0;['traceSampleCount']=0x0;['traceSampleTimer']=null;[_0x7ec90f(0x1e8)]=null;[_0x7ec90f(0x1c4)]=![];['screencastStarted']=![];[_0x7ec90f(0x1f2)]=![];[_0x7ec90f(0x155)]=![];constructor(_0x45cd1e){this['params']=_0x45cd1e;}async['start'](){const _0x362e75=_0x7ec90f,_0x24bf53={'eAHqC':'nova_act_artifact_recording'};if(this[_0x362e75(0x1f2)])return;this['startAttempted']=!![];const _0x474ed2=await this[_0x362e75(0x199)](),_0x49ff52=_0x474ed2[_0x362e75(0x193)];if(!_0x49ff52)throw new Error(_0x362e75(0x201)+this[_0x362e75(0x134)][_0x362e75(0x1a5)][_0x362e75(0x1b0)]);await mkdir(this[_0x362e75(0x134)][_0x362e75(0x1dd)],{'recursive':!![]}),this[_0x362e75(0x1cc)]=await chromium[_0x362e75(0x16c)](_0x49ff52,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x362e75(0x152)]=this['browser'][_0x362e75(0x17a)]()[0x0]??null;if(!this[_0x362e75(0x152)])throw new Error(_0x362e75(0x170));await this[_0x362e75(0x152)]['tracing'][_0x362e75(0x183)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x362e75(0x1d5)](),await this['startScreencast'](),this['params'][_0x362e75(0x1c8)]['trackPhaseStart'](_0x24bf53[_0x362e75(0x150)],{...this['params'][_0x362e75(0x1c3)],'cdpEndpoint':_0x49ff52,'browserPid':_0x474ed2['browser_pid'],'sessionState':_0x474ed2['state']}),this[_0x362e75(0x134)][_0x362e75(0x1c8)][_0x362e75(0x203)]('nova_act_artifact_recording',{...this['params']['transportMetadata'],'tracingStarted':this[_0x362e75(0x1c4)],'screencastStarted':this[_0x362e75(0x197)]});}async['stop'](){const _0x2b1beb=_0x7ec90f,_0x45b8dd={'vdkxg':_0x2b1beb(0x173),'gYQEN':_0x2b1beb(0x18e)};if(this['stopped'])return;this['stopped']=!![];const _0x4bc2de={...this[_0x2b1beb(0x134)][_0x2b1beb(0x1c3)],'frameCount':this[_0x2b1beb(0x1bb)],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this[_0x2b1beb(0x1c4)],'screencastStarted':this[_0x2b1beb(0x197)]};this[_0x2b1beb(0x134)]['telemetry']['trackPhaseStart'](_0x45b8dd[_0x2b1beb(0x1b6)],_0x4bc2de);try{await this['stopTraceSampling'](),await this['captureTraceSample'](),await this['stopScreencast'](),await Promise[_0x2b1beb(0x137)](this['frameWrites']);this['context']&&this['tracingStarted']&&await this['context'][_0x2b1beb(0x20d)]['stop']({'path':buildCliArtifactPath(this['params']['cliArtifactDir'],_0x45b8dd[_0x2b1beb(0x1f6)])});const _0x185084=await this['encodeScreencastVideo']();this[_0x2b1beb(0x134)]['telemetry']['trackPhaseEnd'](_0x2b1beb(0x173),{..._0x4bc2de,'videoPath':_0x185084});}catch(_0x2a12cc){await this['params'][_0x2b1beb(0x1c8)]['trackPhaseError']('nova_act_artifact_recording_stop',_0x2a12cc,_0x4bc2de);}finally{await this[_0x2b1beb(0x1cc)]?.['close']()[_0x2b1beb(0x138)](()=>undefined),this['browser']=null,this['context']=null,this[_0x2b1beb(0x178)]=null;}}async[_0x7ec90f(0x199)](){const _0x41e29d=_0x7ec90f,_0x1deb37={'ZWUJF':function(_0x2748f6){return _0x2748f6();},'mkSPz':_0x41e29d(0x1c7)},_0x136b8d=join(_0x1deb37['ZWUJF'](homedir),_0x41e29d(0x1e2),_0x41e29d(0x1cc),_0x1deb37[_0x41e29d(0x191)],this['params'][_0x41e29d(0x1a5)][_0x41e29d(0x1b0)]+_0x41e29d(0x198)),_0x3a7ec8=Date[_0x41e29d(0x1f9)]();let _0x21e244;do{try{const _0x387e06=JSON['parse'](await readFile(_0x136b8d,'utf-8'));if(_0x387e06[_0x41e29d(0x193)])return _0x387e06;_0x21e244=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0x136b8d);}catch(_0x456bca){_0x21e244=_0x456bca;}await delay(0x64);}while(Date[_0x41e29d(0x1f9)]()-_0x3a7ec8<NOVA_ARTIFACT_METADATA_WAIT_MS);if(_0x21e244 instanceof Error)throw _0x21e244;throw new Error(_0x41e29d(0x16f)+_0x136b8d);}async[_0x7ec90f(0x1b7)](){const _0x12f4fa=_0x7ec90f,_0x4d3cef={'JCIKi':function(_0x54d73c,_0x513864){return _0x54d73c(_0x513864);},'IyBlj':_0x12f4fa(0x153),'UVVyE':_0x12f4fa(0x171),'uTqIo':'jpeg'};if(!this[_0x12f4fa(0x152)])return;const _0x1ba5e2=this['context'][_0x12f4fa(0x1d8)]()[0x0];if(!_0x1ba5e2)return;const _0x1164f8=this['getFrameDir']();await mkdir(_0x1164f8,{'recursive':!![]});const _0x2618b7=await this['context']['newCDPSession'](_0x1ba5e2);this['frameSession']=_0x2618b7,_0x2618b7['on'](_0x4d3cef['IyBlj'],_0x45d1da=>{const _0x4cdd53=_0x12f4fa,_0x282340=++this['frameCount'],_0x474fc8=join(_0x1164f8,_0x4cdd53(0x1fe)+_0x4d3cef['JCIKi'](String,_0x282340)['padStart'](0x6,'0')+_0x4cdd53(0x185)),_0x332541=writeFile(_0x474fc8,Buffer['from'](_0x45d1da['data'],_0x4cdd53(0x1e3)))['catch'](()=>undefined)[_0x4cdd53(0x17b)](()=>_0x2618b7[_0x4cdd53(0x143)](_0x4cdd53(0x14e),{'sessionId':_0x45d1da[_0x4cdd53(0x1b0)]}))[_0x4cdd53(0x13e)](()=>undefined)['catch'](()=>undefined);this['frameWrites'][_0x4cdd53(0x168)](_0x332541);}),await _0x2618b7[_0x12f4fa(0x143)](_0x4d3cef['UVVyE'],{'format':_0x4d3cef['uTqIo'],'quality':0x4b,'everyNthFrame':0x6}),this[_0x12f4fa(0x197)]=!![];}async[_0x7ec90f(0x194)](){const _0x2a72bb=_0x7ec90f,_0x4ebc86={'zyYLM':_0x2a72bb(0x1a7)};if(!this[_0x2a72bb(0x178)]||!this[_0x2a72bb(0x197)])return;await this[_0x2a72bb(0x178)]['send'](_0x4ebc86['zyYLM'])[_0x2a72bb(0x138)](()=>undefined);}['startTraceSampling'](){const _0xabcd71=_0x7ec90f,_0x299fff={'FZFmU':function(_0x49d938,_0x54552b,_0x187ee3){return _0x49d938(_0x54552b,_0x187ee3);}};this[_0xabcd71(0x1ac)](),this[_0xabcd71(0x1ec)]=_0x299fff[_0xabcd71(0x1d0)](setInterval,()=>this[_0xabcd71(0x1ac)](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}['queueTraceSample'](){const _0x422fe4=_0x7ec90f;if(this['traceSampleInFlight'])return;this[_0x422fe4(0x1e8)]=this[_0x422fe4(0x145)]()[_0x422fe4(0x17b)](()=>{const _0x35684d=_0x422fe4;this[_0x35684d(0x1e8)]=null;});}async['stopTraceSampling'](){const _0x4cabe6=_0x7ec90f;this[_0x4cabe6(0x1ec)]&&(clearInterval(this[_0x4cabe6(0x1ec)]),this[_0x4cabe6(0x1ec)]=null),await this[_0x4cabe6(0x1e8)]?.['catch'](()=>undefined);}async[_0x7ec90f(0x145)](){const _0x1497ec=_0x7ec90f,_0x52092c=this[_0x1497ec(0x152)]?.['pages']()[0x0];if(!_0x52092c)return;try{await _0x52092c['locator'](_0x1497ec(0x1d1))['evaluate'](_0x4388ab=>_0x4388ab['tagName'],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async[_0x7ec90f(0x1ae)](){const _0x251fef=_0x7ec90f,_0x48aa85={'fXlQf':function(_0x26d27b,_0x40c6c7){return _0x26d27b<_0x40c6c7;},'fwnpw':function(_0x469346,_0x50dc0e,_0x566036){return _0x469346(_0x50dc0e,_0x566036);},'YMsuH':_0x251fef(0x1a3),'ZvqCv':'session-recording.webm','rGJXr':function(_0x2b3563,_0x1c1009,_0x20da11){return _0x2b3563(_0x1c1009,_0x20da11);},'wNOcN':'-hide_banner','NwRuk':_0x251fef(0x15a),'NKerQ':'scale=trunc(iw/2)*2:trunc(ih/2)*2','yDadb':'-c:v','nJElG':_0x251fef(0x1be),'WrSpa':'yuv420p'};if(_0x48aa85['fXlQf'](this[_0x251fef(0x1bb)],0x2))return null;const _0x497507=await resolveFfmpegPath();if(!_0x497507)return null;const _0x158bca=_0x48aa85[_0x251fef(0x1a4)](join,this[_0x251fef(0x134)]['cliArtifactDir'],_0x48aa85['YMsuH']);await mkdir(_0x158bca,{'recursive':!![]});const _0x5370f1=join(_0x158bca,_0x48aa85[_0x251fef(0x1aa)]);return await _0x48aa85['rGJXr'](execFileAsync,_0x497507,['-y',_0x48aa85['wNOcN'],_0x48aa85['NwRuk'],'error','-framerate','10','-i',join(this[_0x251fef(0x14f)](),_0x251fef(0x1f3)),'-vf',_0x48aa85[_0x251fef(0x19a)],_0x48aa85['yDadb'],_0x251fef(0x1e9),_0x48aa85[_0x251fef(0x1e5)],_0x48aa85['WrSpa'],_0x5370f1]),_0x5370f1;}[_0x7ec90f(0x14f)](){const _0x30a0b6=_0x7ec90f,_0x5d1609={'gshWv':'nova-video-frames'};return join(this['params'][_0x30a0b6(0x1dd)],_0x5d1609['gshWv']);}}async function delay(_0x1275e0){await new Promise(_0xbf12c9=>setTimeout(_0xbf12c9,_0x1275e0));}async function resolveFfmpegPath(){const _0xcae57=_0x7ec90f,_0x255d91={'wHxfX':function(_0x3c4d4a,_0x151c57){return _0x3c4d4a(_0x151c57);},'IlhoQ':'ffmpeg','oXEbp':function(_0x184943){return _0x184943();},'BdYlM':'Library','EsYnm':function(_0x42341e){return _0x42341e();},'uLscz':'ms-playwright'};if(await _0x255d91[_0xcae57(0x19b)](canRunFfmpeg,_0x255d91['IlhoQ']))return _0x255d91['IlhoQ'];const _0xafd9a7=[join(_0x255d91['oXEbp'](homedir),_0x255d91['BdYlM'],'Caches','ms-playwright'),join(_0x255d91[_0xcae57(0x140)](homedir),'.cache',_0x255d91[_0xcae57(0x1d7)])];for(const _0x368afb of _0xafd9a7){try{const _0xf649d2=await readdir(_0x368afb),_0x38c062=_0xf649d2[_0xcae57(0x1b2)](_0x2f4b8b=>_0x2f4b8b[_0xcae57(0x166)]('ffmpeg-'))[_0xcae57(0x14d)]()['reverse']()['flatMap'](_0x2984f5=>[join(_0x368afb,_0x2984f5,_0xcae57(0x1fb)),join(_0x368afb,_0x2984f5,'ffmpeg-linux'),join(_0x368afb,_0x2984f5,_0xcae57(0x1c9))]);for(const _0x2ffbf6 of _0x38c062){if(await _0x255d91[_0xcae57(0x19b)](canRunFfmpeg,_0x2ffbf6))return _0x2ffbf6;}}catch{}}return null;}async function canRunFfmpeg(_0x11b67d){const _0x5d5bca=_0x7ec90f,_0x9aedbf={'xcvPJ':function(_0x550e54,_0x589cd4,_0x59f385){return _0x550e54(_0x589cd4,_0x59f385);},'uPMUm':'-version'};try{return await _0x9aedbf[_0x5d5bca(0x1fd)](execFileAsync,_0x11b67d,[_0x9aedbf[_0x5d5bca(0x1e4)]]),!![];}catch{return![];}}function toStepDisplayName(_0x58359e){const _0x2c40d3=_0x7ec90f,_0x252b30=basename(_0x58359e)[_0x2c40d3(0x17c)](/\.(?:png|ya?ml)$/i,'')[_0x2c40d3(0x17c)](/^key_/i,'')[_0x2c40d3(0x17c)](/^\d+_/,'')[_0x2c40d3(0x17c)](/-/g,'\x20');return{'name':_0x252b30,'isKeyStep':/^key_/i[_0x2c40d3(0x186)](basename(_0x58359e))};}function extractShellValue(_0x2b02e0){if(!_0x2b02e0)return null;return _0x2b02e0[0x1]??_0x2b02e0[0x2]??_0x2b02e0[0x3]??null;}function extractOutputOption(_0x26b237){return extractShellValue(_0x26b237['match'](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x1c90b5,_0x27e0a4){const _0x2aad26=_0x7ec90f,_0x21e881={'UzFZA':_0x2aad26(0x207),'TQhnx':_0x2aad26(0x209),'oHlyL':_0x2aad26(0x15e),'LjdVF':'wait\x20for\x20page\x20condition','WTFGC':function(_0x4baf9a,_0x35d4a7){return _0x4baf9a(_0x35d4a7);},'PyOpz':'screenshot','tCrob':function(_0x327c05,_0xfadc77){return _0x327c05(_0xfadc77);},'zJfVy':'export\x20Nova\x20session'};switch(_0x27e0a4){case _0x21e881['UzFZA']:return'create\x20Nova\x20browser\x20session';case _0x2aad26(0x179):return _0x21e881['TQhnx'];case _0x2aad26(0x1d9):return'verify\x20page\x20condition';case _0x2aad26(0x189):return'ask\x20page\x20question';case _0x21e881['oHlyL']:return _0x2aad26(0x190);case _0x2aad26(0x181):return _0x21e881[_0x2aad26(0x160)];case _0x2aad26(0x1d3):{const _0xc46a65=_0x21e881['WTFGC'](extractOutputOption,_0x1c90b5);if(!_0xc46a65)return _0x2aad26(0x204);const {name:_0x3d5041}=_0x21e881['WTFGC'](toStepDisplayName,_0xc46a65);return _0x2aad26(0x15f)+_0x3d5041+'`';}case _0x21e881['PyOpz']:{const _0xfd0578=_0x21e881[_0x2aad26(0x1af)](extractOutputOption,_0x1c90b5);if(!_0xfd0578)return _0x2aad26(0x1df);const {name:_0x101417,isKeyStep:_0x4b5640}=_0x21e881[_0x2aad26(0x156)](toStepDisplayName,_0xfd0578);return _0x4b5640?'capture\x20key\x20step\x20`'+_0x101417+'`':_0x2aad26(0x1a8)+_0x101417+'`';}case'session\x20export':return _0x21e881[_0x2aad26(0x195)];default:return _0x27e0a4;}}function getNovaActCliCommandBlockReason(_0x3c5d98){const _0x3be6c4=_0x7ec90f,_0x389b30={'zZOCg':'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','KoPjg':function(_0x2e4798,_0x46319f){return _0x2e4798===_0x46319f;},'GJAim':_0x3be6c4(0x196),'rNvsP':_0x3be6c4(0x18b)},_0x3fd4d6=parseNovaActCliCommand(_0x3c5d98);if(!_0x3fd4d6)return _0x389b30['zZOCg'];if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS['has'](_0x3fd4d6))return'Nova\x20command\x20`'+_0x3fd4d6+_0x3be6c4(0x15c);if(_0x389b30[_0x3be6c4(0x148)](_0x3fd4d6,_0x3be6c4(0x1d9))&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x3c5d98))return _0x389b30['GJAim'];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/[_0x3be6c4(0x186)](_0x3c5d98))return _0x389b30[_0x3be6c4(0x205)];return null;}function buildFeedbackSection(_0x36fcb8){const _0x38c2cd=_0x7ec90f,_0x3ba786={'nbVMt':_0x38c2cd(0x142),'ayyyl':_0x38c2cd(0x1a0),'MtQug':function(_0x35f04e,_0x112c92){return _0x35f04e===_0x112c92;}};if(!_0x36fcb8||_0x3ba786['MtQug'](_0x36fcb8[_0x38c2cd(0x1d6)][_0x38c2cd(0x206)],0x0))return'';const _0x35f3be=_0x36fcb8['unaddressedComments'][_0x38c2cd(0x20a)](_0x1bdb0f=>{const _0x50c85f=_0x38c2cd,_0x18e9da=new Date(_0x1bdb0f[_0x50c85f(0x1b9)])['toLocaleDateString'](_0x3ba786[_0x50c85f(0x154)],{'month':_0x50c85f(0x20e),'day':_0x50c85f(0x1ff)}),_0x46549a=_0x1bdb0f['authorName']||_0x1bdb0f[_0x50c85f(0x149)]||_0x3ba786['ayyyl'],_0x5ef6c2=_0x1bdb0f['domRef']?_0x50c85f(0x1c5)+(_0x1bdb0f['domRef'][_0x50c85f(0x1a6)]['split']('\x20>\x20')[_0x50c85f(0x161)]()?.['split'](':')[0x0]||_0x50c85f(0x175))+_0x50c85f(0x172)+(_0x1bdb0f['domRef']['textContent']||'')[_0x50c85f(0x1bc)](0x0,0x32)+'\x22)':'';return _0x50c85f(0x1f1)+_0x1bdb0f['id']+']\x20**'+_0x46549a+_0x50c85f(0x17e)+_0x18e9da+_0x50c85f(0x174)+_0x1bdb0f['content']+'\x22'+_0x5ef6c2;})['join']('\x0a');return'\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20in\x20addressedCommentIds.\x0a\x0a'+_0x35f3be;}function _0x4d1b(){const _0x26319b=['values','params','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','\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','allSettled','catch','session','name','ikFQl','yhcLe','swpxR','then','tool_name','EsYnm','ouIjJ','en-US','send','PostToolUseFailure','captureTraceSample','canonicalFlow','DOWcM','KoPjg','authorEmail','screenshot','`\x0a6.\x20Run\x20`','DsOBb','sort','Page.screencastFrameAck','getFrameDir','eAHqC','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','context','Page.screencastFrame','nbVMt','stopped','tCrob','lAreC','798zZYYhf','\x20snapshot\x20--output\x20','-loglevel','4rktBvP','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','zSDqJ','goto','capture\x20snapshot\x20`','LjdVF','pop','Bash','2282330JiPZON','stdout','nova-user-data/*','startsWith','MecSO','push','PostToolUse','trackPhaseStart','notes','connectOverCDP','args','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','Page.startScreencast','>\x20\x22','nova_act_artifact_recording_stop','):\x20\x22','element','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.','9000lSqvWl','frameSession','execute','contexts','finally','replace','xCOCR','**\x20(','EFMTK','`\x0a-\x20`','wait-for','stderr','start','mtimeMs','.jpg','test','key_03_success-state.png','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','ask','xAqme','Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.','phase','subcommand','trace.zip','1731968NSNUDl','navigate\x20browser','mkSPz','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','cdp_endpoint','stopScreencast','zJfVy','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.','screencastStarted','.json','readSessionMetadataWithRetry','NKerQ','wHxfX','ZtTSY','error','--output','trackPhaseError','Reviewer','KMYIE','WvvbV','videos','fwnpw','novaOptions','selector','Page.stopScreencast','capture\x20step\x20`','env','ZvqCv','ysKmG','queueTraceSample','--output-dir','encodeScreencastVideo','WTFGC','sessionId','\x0a\x0a##\x20Additional\x20Notes\x0a','filter','commandArgs','02_final-state.yml','shellCommand','vdkxg','startScreencast','XqCdo','createdAt','27396LdlAXO','frameCount','slice','01_initial-state.png','-pix_fmt','335973MsIObP','foYKM','key_final-state.png','pWPQL','transportMetadata','tracingStarted','\x20(on\x20element:\x20<','zip','sessions','telemetry','ffmpeg.exe','nova_act_final_snapshot','VCBKQ','browser','nova_act_session_close','3wzCIsk','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','FZFmU','body','MRemg','snapshot','description','startTraceSampling','unaddressedComments','uLscz','pages','verify','EAGYp','`\x0a3.\x20Run\x20`','-qr','cliArtifactDir','`.\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`','capture\x20screenshot','hook_event_name','MXVNY','.act_cli','base64','uPMUm','nJElG','export','block','traceSampleInFlight','libvpx-vp9','nova_act_command','59928LwRSsO','traceSampleTimer','01_initial.yml','94396qWNCwd','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','nova_act_artifact_recording','-\x20[','startAttempted','frame-%06d.jpg','nova_act_final_screenshot','9NSXbZn','gYQEN','pJtbo','invocation','now','stop','ffmpeg-mac','nova_act_session_report','xcvPJ','frame-','numeric','uUtGu','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','OKlvb','trackPhaseEnd','capture\x20snapshot','rNvsP','length','session\x20create','tool_input','execute\x20Nova\x20browser\x20action','map','rcvNg','PreToolUse','tracing','short','json','\x20screenshot\x20--output\x20'];_0x4d1b=function(){return _0x26319b;};return _0x4d1b();}function buildNovaSharedOptionsInstruction(_0x2a424d){const _0x2bba4=_0x7ec90f;if(!_0x2a424d['trim']())return _0x2bba4(0x176);return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0x2a424d;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x118ec7){const _0x53354f=_0x7ec90f,_0x5b53bd={'WvvbV':function(_0x1cffaf,_0x2cec2b,_0x1e10c1){return _0x1cffaf(_0x2cec2b,_0x1e10c1);},'inYXX':function(_0x35ac3d,_0x1825de,_0x1d9595){return _0x35ac3d(_0x1825de,_0x1d9595);},'ZtTSY':function(_0x3511fe,_0x13c19c,_0x558db1){return _0x3511fe(_0x13c19c,_0x558db1);},'yhcLe':function(_0x12703d,_0x3e9911){return _0x12703d(_0x3e9911);},'KMYIE':function(_0x31273d,_0x561691){return _0x31273d(_0x561691);}},{novaCommandPrefix:_0x23a636,novaSharedOptionsSuffix:_0x25366b,cliArtifactDir:_0x3f1334,url:_0x30c11a}=_0x118ec7,_0x5c9167=_0x5b53bd[_0x53354f(0x1a2)](buildCliArtifactPath,_0x3f1334,'00_initial-state.yml'),_0x18b81c=_0x5b53bd['inYXX'](buildCliArtifactPath,_0x3f1334,_0x53354f(0x1bd)),_0x1e087e=_0x5b53bd[_0x53354f(0x19c)](buildCliArtifactPath,_0x3f1334,_0x53354f(0x1b4)),_0x818b35=_0x5b53bd['inYXX'](buildCliArtifactPath,_0x3f1334,'03_final-state.png');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'+_0x23a636+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x25366b)+'\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`'+_0x23a636+'\x20session\x20create\x20'+_0x5b53bd['yhcLe'](quoteShellArg,_0x30c11a)+'\x20'+_0x25366b+'`\x0a2.\x20Run\x20`'+_0x23a636+'\x20snapshot\x20--output\x20'+_0x5b53bd['yhcLe'](quoteShellArg,_0x5c9167)+'\x20'+_0x25366b+_0x53354f(0x1db)+_0x23a636+_0x53354f(0x210)+quoteShellArg(_0x18b81c)+'\x20'+_0x25366b+'`\x0a4.\x20Run\x20one\x20batched\x20`'+_0x23a636+'\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`'+_0x23a636+'\x20snapshot\x20--output\x20'+_0x5b53bd[_0x53354f(0x13c)](quoteShellArg,_0x1e087e)+'\x20'+_0x25366b+_0x53354f(0x14b)+_0x23a636+'\x20screenshot\x20--output\x20'+_0x5b53bd[_0x53354f(0x1a1)](quoteShellArg,_0x818b35)+'\x20'+_0x25366b+_0x53354f(0x1ef)+_0x3f1334+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x2d6918){const _0x5bf5d4=_0x7ec90f,_0x1f3a79={'MXVNY':function(_0x1ce16a,_0x5ef5f8,_0x293f9b){return _0x1ce16a(_0x5ef5f8,_0x293f9b);},'BXTNQ':_0x5bf5d4(0x187),'zSDqJ':function(_0x135fed,_0x33a9fc){return _0x135fed(_0x33a9fc);},'jxNBu':'`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`'},{checklistItem:_0x5c0b90,itemFeedback:_0x6d4ffa,taskDescription:_0x5a9bef,novaCommandPrefix:_0x4914f1,novaSharedOptionsSuffix:_0xb3cfb8,cliArtifactDir:_0x356ef1,url:_0x2392a5,loginInstructions:_0x1e2e63}=_0x2d6918,_0x10acc7=_0x5c0b90['notes']?_0x5bf5d4(0x1b1)+_0x5c0b90[_0x5bf5d4(0x16b)]:'',_0x260dfa=buildFeedbackSection(_0x6d4ffa),_0x410003=_0x6d4ffa?.[_0x5bf5d4(0x146)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x6d4ffa['canonicalFlow']:'',_0x49368c=_0x1e2e63?_0x5bf5d4(0x188)+_0x1e2e63+_0x5bf5d4(0x136):'',_0x21024e=buildCliArtifactPath(_0x356ef1,_0x5bf5d4(0x1ed)),_0x5c7f26=_0x1f3a79[_0x5bf5d4(0x1e1)](buildCliArtifactPath,_0x356ef1,_0x5bf5d4(0x1bd)),_0xa496fb=_0x1f3a79['MXVNY'](buildCliArtifactPath,_0x356ef1,_0x1f3a79['BXTNQ']);return _0x5bf5d4(0x135)+_0x5c0b90[_0x5bf5d4(0x1d4)]+_0x10acc7+_0x260dfa+_0x410003+_0x5bf5d4(0x151)+_0x5a9bef+_0x5bf5d4(0x1cf)+_0x2392a5+'\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'+_0x49368c+'\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`'+_0x4914f1+'\x20session\x20create\x20'+_0x1f3a79[_0x5bf5d4(0x15d)](quoteShellArg,_0x2392a5)+'\x20'+_0xb3cfb8+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x356ef1+_0x5bf5d4(0x16e)+_0x4914f1+_0x5bf5d4(0x159)+quoteShellArg(_0x21024e)+'\x20'+_0xb3cfb8+'`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`'+_0x4914f1+_0x5bf5d4(0x210)+quoteShellArg(_0x5c7f26)+'\x20'+_0xb3cfb8+_0x5bf5d4(0x1de)+_0xa496fb+'`.\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`'+_0x4914f1+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0xb3cfb8['trim']()?'`'+_0xb3cfb8+'`':_0x1f3a79['jxNBu'])+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0xb3cfb8)+'\x0a\x0aExamples:\x0a-\x20`'+_0x4914f1+'\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20'+_0xb3cfb8+'`\x0a-\x20`'+_0x4914f1+_0x5bf5d4(0x192)+_0xb3cfb8+_0x5bf5d4(0x180)+_0x4914f1+_0x5bf5d4(0x159)+_0x1f3a79[_0x5bf5d4(0x15d)](quoteShellArg,_0x21024e)+'\x20'+_0xb3cfb8+_0x5bf5d4(0x180)+_0x4914f1+_0x5bf5d4(0x210)+quoteShellArg(_0xa496fb)+'\x20'+_0xb3cfb8+'`\x0a\x0a##\x20Screenshot\x20Guidelines\x0aTake\x20screenshots\x20at\x20scenario\x20milestones\x20so\x20a\x20human\x20can\x20review\x20each\x20completed\x20step\x20and\x20the\x20final\x20state.\x20Use\x20numbered\x20filenames\x20and\x20prefix\x201-2\x20key\x20proof\x20screenshots\x20with\x20`key_`.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page\x20when\x20an\x20existing\x20verifier\x20screenshot\x20or\x20host\x20final\x20screenshot\x20is\x20accessible.\x0a\x0a##\x20Snapshot\x20Guidelines\x0aYou\x20must\x20take\x20the\x20initial\x20snapshot\x20listed\x20above.\x20After\x20that,\x20prefer\x20screenshots\x20plus\x20the\x20page\x20summaries\x20returned\x20by\x20`execute`\x20and\x20`verify`.\x20Only\x20call\x20`snapshot`\x20again\x20if\x20you\x20cannot\x20determine\x20the\x20next\x20action\x20or\x20evaluation\x20from\x20those\x20outputs.\x0a\x0a##\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20initial\x20snapshot\x20and\x20screenshot,\x20check\x20for\x20blocking\x20HTTP\x20errors,\x20framework\x20error\x20pages,\x20blank\x20pages,\x20and\x20authentication\x20failures.\x20If\x20any\x20blocking\x20issue\x20is\x20present,\x20stop\x20and\x20return\x20evaluation\x20\x22blocked\x22\x20with\x20a\x20specific\x20reason.\x0a\x0a##\x20Failed\x20Assertions\x0aIf\x20`verify`\x20returns\x20`ASSERTION_FAILED`,\x20use\x20its\x20`actual`\x20and\x20`evidence`\x20fields\x20as\x20proof\x20for\x20the\x20final\x20evaluation.\x20Continue\x20only\x20to\x20finish\x20other\x20already-named\x20scenario\x20milestones.\x20Do\x20not\x20retry,\x20ask\x20about,\x20or\x20search\x20around\x20the\x20failed\x20condition.\x0a\x0a##\x20Final\x20Page\x20Stop\x0aWhen\x20the\x20scenario\x20names\x20a\x20final\x20page\x20or\x20final\x20navigation\x20target,\x20that\x20page\x20is\x20the\x20last\x20browser\x20milestone.\x20Once\x20it\x20is\x20loaded\x20and\x20screenshotted,\x20make\x20the\x20final\x20evaluation\x20from\x20the\x20collected\x20evidence.\x20Do\x20not\x20navigate,\x20search,\x20ask,\x20or\x20verify\x20beyond\x20that\x20final\x20page\x20unless\x20the\x20scenario\x20explicitly\x20names\x20another\x20page.\x0a\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x284062){const _0x33b9eb=_0x7ec90f,_0xf61adc={'bfKDn':function(_0x4bcf7f,_0x416316){return _0x4bcf7f===_0x416316;}},_0x36c9bd=[..._0x284062['keys']()]['sort']();let _0x22565e=0x0;for(const _0x5394dc of _0x284062[_0x33b9eb(0x211)]()){_0x22565e+=_0x5394dc;}return{'cliCommandCount':_0x22565e,'cliCommandsSeen':_0x36c9bd,'noCliCommandsCalled':_0xf61adc['bfKDn'](_0x22565e,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x1572c7,_0x4a8afc){const _0x5b076d=_0x7ec90f,_0x5b75f3={'ysKmG':_0x5b076d(0x20c),'lBZKM':function(_0x362a69,_0x4c6979){return _0x362a69!==_0x4c6979;},'EAGYp':_0x5b076d(0x162),'pkoSw':function(_0x4321bf,_0x348ff6){return _0x4321bf!==_0x348ff6;},'DsOBb':function(_0x285a97,_0x3561fb){return _0x285a97(_0x3561fb);},'EFMTK':function(_0x4dbd86,_0x4049de){return _0x4dbd86+_0x4049de;},'DOWcM':_0x5b076d(0x1ea),'GlTXZ':_0x5b076d(0x207),'OKlvb':'nova-act-cli','lkYkW':function(_0xb8b50e,_0x4acaae){return _0xb8b50e!==_0x4acaae;},'wJLdg':_0x5b076d(0x144)},_0xca94e3=new Map(),_0xc92bfc=async _0x472c3d=>{const _0x35374a=_0x5b076d;if(_0x472c3d[_0x35374a(0x1e0)]!==_0x5b75f3[_0x35374a(0x1ab)])return{};const _0x140454=_0x472c3d;if(_0x5b75f3['lBZKM'](_0x140454['tool_name'],_0x5b75f3[_0x35374a(0x1da)]))return{};const _0x2cc3e2=_0x140454[_0x35374a(0x208)],_0x4a9412=extractBashCommand(_0x2cc3e2);if(!_0x4a9412)return{};const _0x170a68=getNovaActCliCommandBlockReason(_0x4a9412);if(!_0x170a68)return{};return{'decision':_0x35374a(0x1e7),'reason':_0x170a68};},_0xe42ead=async _0xe69636=>{const _0x5a0fdb=_0x5b076d;if(_0xe69636[_0x5a0fdb(0x1e0)]!==_0x5a0fdb(0x169))return{};const _0x57b61f=_0xe69636;if(_0x5b75f3['pkoSw'](_0x57b61f[_0x5a0fdb(0x13f)],'Bash'))return{};const _0x52c3f5=_0x57b61f[_0x5a0fdb(0x208)],_0x50a3b1=_0x5b75f3[_0x5a0fdb(0x14c)](extractBashCommand,_0x52c3f5);if(!_0x50a3b1)return{};const _0x16bbf6=parseNovaActCliCommand(_0x50a3b1);if(!_0x16bbf6)return{};_0xca94e3['set'](_0x16bbf6,_0x5b75f3[_0x5a0fdb(0x17f)](_0xca94e3['get'](_0x16bbf6)||0x0,0x1)),_0x1572c7[_0x5a0fdb(0x16a)](_0x5b75f3[_0x5a0fdb(0x147)],{'subcommand':_0x16bbf6}),_0x1572c7['trackPhaseEnd'](_0x5b75f3[_0x5a0fdb(0x147)],{'subcommand':_0x16bbf6,'commandPreview':_0x5b75f3[_0x5a0fdb(0x14c)](previewNovaActCliCommand,_0x50a3b1)}),console['log']('[nova-act-cli]\x20'+formatNovaActCliLog(_0x50a3b1,_0x16bbf6));if(_0x16bbf6===_0x5b75f3['GlTXZ']&&_0x4a8afc)try{await _0x4a8afc[_0x5a0fdb(0x183)]();}catch(_0x404af2){await _0x1572c7['trackPhaseError'](_0x5a0fdb(0x1f0),_0x404af2,{'transport':_0x5b75f3[_0x5a0fdb(0x202)]});}return{};},_0x297019=async _0x568e97=>{const _0x3fb173=_0x5b076d;if(_0x5b75f3['lkYkW'](_0x568e97['hook_event_name'],_0x5b75f3['wJLdg']))return{};const _0x1f7c59=_0x568e97;if(_0x1f7c59['tool_name']!==_0x3fb173(0x162))return{};return await _0x1572c7[_0x3fb173(0x19f)]('nova_act_command_failure',_0x1f7c59[_0x3fb173(0x19d)],{'transport':_0x5b75f3[_0x3fb173(0x202)],'toolName':_0x3fb173(0x162)}),{};};return{'preToolUseHook':_0xc92bfc,'postToolUseHook':_0xe42ead,'postToolUseFailureHook':_0x297019,'commandCounts':_0xca94e3};}async function runNovaLifecycleCommand(_0x5abe77){const _0x35a721=_0x7ec90f,_0x5a76ac={'KKLZM':function(_0x2306b4,_0x14f760){return _0x2306b4(_0x14f760);},'lAreC':function(_0x39eadd,_0x1882a3){return _0x39eadd(_0x1882a3);}},{novaOptions:_0x27a16d,commandArgs:_0x4cd6ba,telemetry:_0x3eab9b,phase:_0xefb965,metadata:_0x468beb,timeoutMs:_0x5536ae}=_0x5abe77;_0x3eab9b[_0x35a721(0x16a)](_0xefb965,_0x468beb);try{const _0x443003=await _0x5a76ac['KKLZM'](runNovaActCliCommand,{..._0x27a16d,'commandArgs':_0x4cd6ba,'cwd':process['cwd'](),'env':process[_0x35a721(0x1a9)],'timeoutMs':_0x5536ae??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x3eab9b['trackPhaseEnd'](_0xefb965,{..._0x468beb,'subcommand':_0x443003[_0x35a721(0x1f8)][_0x35a721(0x18d)],'commandPreview':_0x5a76ac['KKLZM'](previewNovaActCliCommand,_0x443003[_0x35a721(0x1f8)]['shellCommand']),'stdoutPreview':_0x5a76ac['KKLZM'](previewNovaActCliCommand,_0x443003[_0x35a721(0x164)]),'stderrPreview':_0x5a76ac[_0x35a721(0x157)](previewNovaActCliCommand,_0x443003[_0x35a721(0x182)]),'logDir':_0x5a76ac['KKLZM'](extractNovaActLogDir,_0x443003['stdout'])});}catch(_0x398de3){await _0x3eab9b[_0x35a721(0x19f)](_0xefb965,_0x398de3,_0x468beb);throw _0x398de3;}}export async function finalizeVerifyFeatureNovaCliSession(_0x3484c9){const _0x378dcb=_0x7ec90f,_0x41b24e={'ouIjJ':'screenshot','pWPQL':'--output','zlkjS':_0x378dcb(0x1c1),'xCOCR':_0x378dcb(0x1ca),'xAqme':'nova_act_session_export','swpxR':_0x378dcb(0x139),'MecSO':'export','wwoda':'--report','aaPmu':_0x378dcb(0x1ad),'ikFQl':function(_0xd702e7,_0x42bfa4,_0xb8b094){return _0xd702e7(_0x42bfa4,_0xb8b094);},'dXPsd':_0x378dcb(0x1cd)},{telemetry:_0xce1686,novaOptions:_0x141a77,cliArtifactDir:_0x175dc5,transportMetadata:_0x32dd86,artifactRecorder:_0x4ae03b}=_0x3484c9,_0x213b2b=[{'phase':_0x378dcb(0x1f4),'commandArgs':[_0x41b24e[_0x378dcb(0x141)],_0x41b24e[_0x378dcb(0x1c2)],buildCliArtifactPath(_0x175dc5,_0x41b24e['zlkjS'])]},{'phase':_0x41b24e[_0x378dcb(0x17d)],'commandArgs':['snapshot',_0x41b24e[_0x378dcb(0x1c2)],buildCliArtifactPath(_0x175dc5,'final-state.yaml')]},{'phase':_0x41b24e[_0x378dcb(0x18a)],'commandArgs':[_0x41b24e['swpxR'],_0x41b24e[_0x378dcb(0x167)],'--format',_0x378dcb(0x20f),_0x378dcb(0x19e),buildCliArtifactPath(_0x175dc5,'nova-session-export.json')]},{'phase':_0x378dcb(0x1fc),'commandArgs':[_0x41b24e[_0x378dcb(0x13d)],_0x378dcb(0x1e6),_0x41b24e['wwoda'],_0x41b24e['aaPmu'],_0x41b24e[_0x378dcb(0x13b)](buildCliArtifactPath,_0x175dc5,'nova-report')]},{'phase':_0x41b24e['dXPsd'],'commandArgs':['session','close']}];for(const _0x52af55 of _0x213b2b){_0x52af55[_0x378dcb(0x18c)]===_0x378dcb(0x1cd)&&await _0x4ae03b?.[_0x378dcb(0x1fa)]();try{await runNovaLifecycleCommand({'novaOptions':_0x141a77,'commandArgs':[..._0x52af55['commandArgs']],'telemetry':_0xce1686,'phase':_0x52af55['phase'],'metadata':_0x32dd86});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x2ea073){const _0x4c4aa7=_0x7ec90f,_0x2fa912={'VCBKQ':function(_0x29ec9c,_0x1bda63,_0x21b1c5){return _0x29ec9c(_0x1bda63,_0x21b1c5);},'XqCdo':function(_0xaec078,_0x48b9c4){return _0xaec078+_0x48b9c4;},'oFnEZ':function(_0x63ddf2,_0x27c560,_0x13cc7f){return _0x63ddf2(_0x27c560,_0x13cc7f);},'rcvNg':function(_0x19295f,_0x55dc07){return _0x19295f===_0x55dc07;}},{cwd:_0x1ebd84,cliArtifactDir:_0x2d9e39,startTime:_0x4c827c}=_0x2ea073,_0x2b3c63=[];await mkdir(_0x2d9e39,{'recursive':!![]});const _0x5ef1cc=await _0x2fa912['VCBKQ'](readdir,_0x1ebd84,{'withFileTypes':!![]});for(const _0x47a6b6 of _0x5ef1cc){if(!_0x47a6b6['isFile']()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN['test'](_0x47a6b6[_0x4c4aa7(0x13a)]))continue;const _0x36fe8d=_0x2fa912[_0x4c4aa7(0x1cb)](join,_0x1ebd84,_0x47a6b6['name']),_0x442de2=await stat(_0x36fe8d);if(_0x2fa912[_0x4c4aa7(0x1b8)](_0x442de2[_0x4c4aa7(0x184)],0x7d0)<_0x4c827c)continue;const _0x213ab5=_0x2fa912['oFnEZ'](buildCliArtifactPath,_0x2d9e39,_0x47a6b6['name']);if(_0x2fa912[_0x4c4aa7(0x20b)](_0x36fe8d,_0x213ab5))continue;await rename(_0x36fe8d,_0x213ab5),_0x2b3c63['push'](_0x47a6b6[_0x4c4aa7(0x13a)]);}return _0x2b3c63['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x16e0ad){const _0x119c2a=_0x7ec90f,_0x529fc1={'ALmHf':function(_0x5e55a2,_0x3105fa,_0xd6a622){return _0x5e55a2(_0x3105fa,_0xd6a622);},'HNrEG':_0x119c2a(0x18e),'CVdRe':function(_0x2611f8,_0x471506){return _0x2611f8(_0x471506);}},_0x1d1047=_0x529fc1['ALmHf'](join,_0x16e0ad,_0x529fc1['HNrEG']);try{return{'buffer':await _0x529fc1['CVdRe'](readFile,_0x1d1047),'source':_0x1d1047};}catch{return{'buffer':await _0x529fc1['CVdRe'](zipVerifyFeatureNovaArtifacts,_0x16e0ad),'source':_0x16e0ad};}}async function zipVerifyFeatureNovaArtifacts(_0x5b017e){const _0x12fa3f=_0x7ec90f,_0x4a0263={'yilOl':function(_0x53a53e,_0x56868e,_0xe24656,_0x9ac8a8){return _0x53a53e(_0x56868e,_0xe24656,_0x9ac8a8);},'foYKM':_0x12fa3f(0x1dc),'MRemg':function(_0x10746c,_0x4ca8c3,_0x3efb26){return _0x10746c(_0x4ca8c3,_0x3efb26);}},_0x1d2c66=_0x4a0263['yilOl'](join,_0x5b017e,'..','nova-artifacts.zip');try{return await execFileAsync(_0x12fa3f(0x1c6),[_0x4a0263[_0x12fa3f(0x1c0)],_0x1d2c66,'.','-x',_0x12fa3f(0x165)],{'cwd':_0x5b017e}),await readFile(_0x1d2c66);}finally{await _0x4a0263[_0x12fa3f(0x1d2)](rm,_0x1d2c66,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x4d745a){const _0x1655c2=_0x7ec90f,_0x585714={'pJtbo':function(_0xdf30e5,_0x5dc3a8,_0x2ceaab){return _0xdf30e5(_0x5dc3a8,_0x2ceaab);},'uUtGu':function(_0x3f96c0,_0x2c5f03){return _0x3f96c0(_0x2c5f03);}},_0x2f6035=_0x585714[_0x1655c2(0x1f7)](buildNovaActCliInvocation,_0x4d745a[_0x1655c2(0x1a5)],_0x4d745a[_0x1655c2(0x1b3)]);return{'command':_0x2f6035['command'],'args':_0x2f6035[_0x1655c2(0x16d)],'commandPreview':_0x585714[_0x1655c2(0x200)](previewNovaActCliCommand,_0x2f6035[_0x1655c2(0x1b5)]),'subcommand':_0x2f6035['subcommand'],'sharedOptionsSuffix':buildNovaActCliSharedOptionsSuffix(_0x4d745a['novaOptions'],_0x4d745a['commandArgs'])};}
|
|
1
|
+
const _0x577b72=_0x1766;(function(_0x31073f,_0x18b3d4){const _0x398802=_0x1766,_0x25d5b9=_0x31073f();while(!![]){try{const _0x5d5e4f=-parseInt(_0x398802(0x18f))/0x1+-parseInt(_0x398802(0x17d))/0x2*(-parseInt(_0x398802(0x160))/0x3)+parseInt(_0x398802(0x180))/0x4*(-parseInt(_0x398802(0xdd))/0x5)+parseInt(_0x398802(0xd9))/0x6+parseInt(_0x398802(0xf2))/0x7+parseInt(_0x398802(0x15a))/0x8*(parseInt(_0x398802(0x127))/0x9)+-parseInt(_0x398802(0x13c))/0xa;if(_0x5d5e4f===_0x18b3d4)break;else _0x25d5b9['push'](_0x25d5b9['shift']());}catch(_0x2c9c7e){_0x25d5b9['push'](_0x25d5b9['shift']());}}}(_0x3310,0x7c69d));import{execFile}from'child_process';function _0x1766(_0xce52e6,_0x4b70b8){_0xce52e6=_0xce52e6-0xbd;const _0x331028=_0x3310();let _0x176678=_0x331028[_0xce52e6];return _0x176678;}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','execute',_0x577b72(0x139),'ask',_0x577b72(0x195),_0x577b72(0x194),'snapshot','screenshot']),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x7cb2f0,_0x36ed9f){return join(_0x7cb2f0,_0x36ed9f);}export class NovaActArtifactRecorder{[_0x577b72(0xe6)];[_0x577b72(0xc9)]=null;['context']=null;['frameSession']=null;[_0x577b72(0x153)]=[];['frameCount']=0x0;['traceSampleCount']=0x0;['traceSampleTimer']=null;['traceSampleInFlight']=null;['tracingStarted']=![];['screencastStarted']=![];['startAttempted']=![];[_0x577b72(0x165)]=![];constructor(_0x2d394d){const _0x1b294c=_0x577b72;this[_0x1b294c(0xe6)]=_0x2d394d;}async['start'](){const _0xa54cba=_0x577b72,_0x55dc18={'dxbGd':function(_0x4667ad,_0x2e4b07,_0x3cfe72){return _0x4667ad(_0x2e4b07,_0x3cfe72);}};if(this[_0xa54cba(0xe1)])return;this[_0xa54cba(0xe1)]=!![];const _0x196ac0=await this[_0xa54cba(0x121)](),_0x24a170=_0x196ac0[_0xa54cba(0x1a3)];if(!_0x24a170)throw new Error(_0xa54cba(0x182)+this[_0xa54cba(0xe6)]['novaOptions'][_0xa54cba(0x13d)]);await _0x55dc18['dxbGd'](mkdir,this[_0xa54cba(0xe6)][_0xa54cba(0x132)],{'recursive':!![]}),this['browser']=await chromium['connectOverCDP'](_0x24a170,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0xa54cba(0xf4)]=this[_0xa54cba(0xc9)]['contexts']()[0x0]??null;if(!this['context'])throw new Error('Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context');await this[_0xa54cba(0xf4)]['tracing'][_0xa54cba(0x119)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0xa54cba(0x135)](),await this['startScreencast'](),this[_0xa54cba(0xe6)][_0xa54cba(0x198)][_0xa54cba(0x134)]('nova_act_artifact_recording',{...this[_0xa54cba(0xe6)][_0xa54cba(0x109)],'cdpEndpoint':_0x24a170,'browserPid':_0x196ac0[_0xa54cba(0xf0)],'sessionState':_0x196ac0[_0xa54cba(0x14c)]}),this[_0xa54cba(0xe6)]['telemetry']['trackPhaseEnd'](_0xa54cba(0x113),{...this[_0xa54cba(0xe6)]['transportMetadata'],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0xa54cba(0x193)]});}async[_0x577b72(0x11f)](){const _0x35b8c2=_0x577b72,_0x59da17={'PPenT':_0x35b8c2(0x19d),'QtuqZ':'trace.zip'};if(this[_0x35b8c2(0x165)])return;this[_0x35b8c2(0x165)]=!![];const _0x178f98={...this['params']['transportMetadata'],'frameCount':this[_0x35b8c2(0x124)],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this[_0x35b8c2(0x15c)],'screencastStarted':this[_0x35b8c2(0x193)]};this[_0x35b8c2(0xe6)][_0x35b8c2(0x198)][_0x35b8c2(0x134)](_0x59da17[_0x35b8c2(0xdb)],_0x178f98);try{await this[_0x35b8c2(0xcf)](),await this[_0x35b8c2(0x100)](),await this[_0x35b8c2(0x149)](),await Promise['allSettled'](this['frameWrites']);this[_0x35b8c2(0xf4)]&&this[_0x35b8c2(0x15c)]&&await this['context']['tracing'][_0x35b8c2(0x11f)]({'path':buildCliArtifactPath(this['params']['cliArtifactDir'],_0x59da17['QtuqZ'])});const _0x5b571c=await this[_0x35b8c2(0xbe)]();this['params']['telemetry']['trackPhaseEnd'](_0x35b8c2(0x19d),{..._0x178f98,'videoPath':_0x5b571c});}catch(_0x43ba66){await this['params']['telemetry']['trackPhaseError'](_0x59da17[_0x35b8c2(0xdb)],_0x43ba66,_0x178f98);}finally{await this['browser']?.['close']()['catch'](()=>undefined),this[_0x35b8c2(0xc9)]=null,this[_0x35b8c2(0xf4)]=null,this['frameSession']=null;}}async[_0x577b72(0x121)](){const _0x3d79bf=_0x577b72,_0x494998={'sXAQo':'utf-8','iHcKp':function(_0x32c627,_0x43c0e4){return _0x32c627(_0x43c0e4);},'VLChN':function(_0x553110,_0x16d84d){return _0x553110<_0x16d84d;}},_0x2ff005=join(homedir(),_0x3d79bf(0x108),'browser','sessions',this['params']['novaOptions']['sessionId']+_0x3d79bf(0x164)),_0x416430=Date[_0x3d79bf(0x144)]();let _0x21dca7;do{try{const _0x46ec1a=JSON[_0x3d79bf(0x1a8)](await readFile(_0x2ff005,_0x494998[_0x3d79bf(0xc0)]));if(_0x46ec1a[_0x3d79bf(0x1a3)])return _0x46ec1a;_0x21dca7=new Error(_0x3d79bf(0x189)+_0x2ff005);}catch(_0x45554c){_0x21dca7=_0x45554c;}await _0x494998[_0x3d79bf(0xda)](delay,0x64);}while(_0x494998['VLChN'](Date[_0x3d79bf(0x144)]()-_0x416430,NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x21dca7 instanceof Error)throw _0x21dca7;throw new Error(_0x3d79bf(0x12e)+_0x2ff005);}async['startScreencast'](){const _0xaf0e85=_0x577b72,_0x30c28f={'gatTi':function(_0x588708,_0x5e9827){return _0x588708(_0x5e9827);}};if(!this['context'])return;const _0x586450=this[_0xaf0e85(0xf4)]['pages']()[0x0];if(!_0x586450)return;const _0x35c6a3=this['getFrameDir']();await mkdir(_0x35c6a3,{'recursive':!![]});const _0x3928ef=await this[_0xaf0e85(0xf4)][_0xaf0e85(0xfc)](_0x586450);this[_0xaf0e85(0x1a7)]=_0x3928ef,_0x3928ef['on'](_0xaf0e85(0x11c),_0x4d0aee=>{const _0x35427f=_0xaf0e85,_0x1001d1=++this[_0x35427f(0x124)],_0x7e6f67=join(_0x35c6a3,_0x35427f(0x18e)+_0x30c28f[_0x35427f(0x120)](String,_0x1001d1)['padStart'](0x6,'0')+_0x35427f(0x14b)),_0x22d537=writeFile(_0x7e6f67,Buffer['from'](_0x4d0aee[_0x35427f(0x12d)],_0x35427f(0x1a4)))[_0x35427f(0x123)](()=>undefined)[_0x35427f(0x150)](()=>_0x3928ef[_0x35427f(0xf1)]('Page.screencastFrameAck',{'sessionId':_0x4d0aee[_0x35427f(0x13d)]}))[_0x35427f(0x1a1)](()=>undefined)['catch'](()=>undefined);this[_0x35427f(0x153)][_0x35427f(0x18a)](_0x22d537);}),await _0x3928ef['send']('Page.startScreencast',{'format':'jpeg','quality':0x4b,'everyNthFrame':0x6}),this['screencastStarted']=!![];}async[_0x577b72(0x149)](){const _0x479f07=_0x577b72;if(!this[_0x479f07(0x1a7)]||!this['screencastStarted'])return;await this[_0x479f07(0x1a7)][_0x479f07(0xf1)]('Page.stopScreencast')['catch'](()=>undefined);}[_0x577b72(0x135)](){const _0x842431=_0x577b72;this[_0x842431(0x175)](),this[_0x842431(0x157)]=setInterval(()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x577b72(0x175)](){const _0x416c9d=_0x577b72;if(this['traceSampleInFlight'])return;this['traceSampleInFlight']=this[_0x416c9d(0x100)]()['finally'](()=>{const _0x398027=_0x416c9d;this[_0x398027(0x177)]=null;});}async[_0x577b72(0xcf)](){const _0x2e05e5=_0x577b72,_0x400628={'ziyOe':function(_0x351567,_0x2d214b){return _0x351567(_0x2d214b);}};this['traceSampleTimer']&&(_0x400628[_0x2e05e5(0x14f)](clearInterval,this[_0x2e05e5(0x157)]),this[_0x2e05e5(0x157)]=null),await this[_0x2e05e5(0x177)]?.[_0x2e05e5(0x123)](()=>undefined);}async[_0x577b72(0x100)](){const _0x4305d7=_0x577b72,_0x5607e6=this['context']?.[_0x4305d7(0xd5)]()[0x0];if(!_0x5607e6)return;try{await _0x5607e6[_0x4305d7(0x105)]('body')['evaluate'](_0x2fbb6c=>_0x2fbb6c['tagName'],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async[_0x577b72(0xbe)](){const _0x5ce815=_0x577b72,_0x4e0845={'IAXMO':function(_0x2c7ea8,_0x96090c,_0x57bf55){return _0x2c7ea8(_0x96090c,_0x57bf55);},'bBIJn':_0x5ce815(0xf7),'cRtOj':'-hide_banner','OBTfW':_0x5ce815(0x188),'kLyNB':_0x5ce815(0x186),'FXvuS':function(_0x2d5f81,_0x5d0db7,_0x5560c1){return _0x2d5f81(_0x5d0db7,_0x5560c1);},'OaWwN':'-c:v','ZSysj':'libvpx-vp9','fNCUo':_0x5ce815(0xd1),'QMvrQ':'yuv420p'};if(this['frameCount']<0x2)return null;const _0x5992ef=await resolveFfmpegPath();if(!_0x5992ef)return null;const _0x375853=join(this['params'][_0x5ce815(0x132)],_0x5ce815(0x114));await mkdir(_0x375853,{'recursive':!![]});const _0x402746=_0x4e0845['IAXMO'](join,_0x375853,_0x4e0845['bBIJn']);return await execFileAsync(_0x5992ef,['-y',_0x4e0845['cRtOj'],_0x5ce815(0xdc),_0x4e0845['OBTfW'],_0x4e0845[_0x5ce815(0x147)],'10','-i',_0x4e0845['FXvuS'](join,this['getFrameDir'](),_0x5ce815(0x112)),_0x5ce815(0x174),_0x5ce815(0x129),_0x4e0845[_0x5ce815(0xfa)],_0x4e0845[_0x5ce815(0x142)],_0x4e0845['fNCUo'],_0x4e0845[_0x5ce815(0xce)],_0x402746]),_0x402746;}['getFrameDir'](){const _0x3a45e4=_0x577b72;return join(this[_0x3a45e4(0xe6)]['cliArtifactDir'],'nova-video-frames');}}async function delay(_0x1e8bbc){await new Promise(_0x1053d6=>setTimeout(_0x1053d6,_0x1e8bbc));}async function resolveFfmpegPath(){const _0xbc054=_0x577b72,_0x2a05bc={'MVOIO':function(_0x3b1749,_0x7a7c84){return _0x3b1749(_0x7a7c84);},'PgVwp':'ffmpeg','dxeFa':function(_0x24b5d5,_0x35442a,_0x1dc400,_0x8a9609,_0x140a4d){return _0x24b5d5(_0x35442a,_0x1dc400,_0x8a9609,_0x140a4d);},'SmoYp':'Library','CuxjD':_0xbc054(0x162),'cZrrK':'ms-playwright','TVSUu':function(_0x572723,_0x51cd3b,_0x58c47a,_0x4b72da){return _0x572723(_0x51cd3b,_0x58c47a,_0x4b72da);},'TXZvN':function(_0x269feb){return _0x269feb();},'yGzOG':function(_0x57add0,_0x3274fb){return _0x57add0(_0x3274fb);}};if(await _0x2a05bc[_0xbc054(0x184)](canRunFfmpeg,_0x2a05bc[_0xbc054(0x159)]))return'ffmpeg';const _0x30b1bd=[_0x2a05bc[_0xbc054(0xed)](join,homedir(),_0x2a05bc['SmoYp'],_0x2a05bc[_0xbc054(0xfd)],_0x2a05bc['cZrrK']),_0x2a05bc[_0xbc054(0x16c)](join,_0x2a05bc[_0xbc054(0x106)](homedir),_0xbc054(0x13f),_0xbc054(0x102))];for(const _0x50439d of _0x30b1bd){try{const _0x2ecde4=await _0x2a05bc[_0xbc054(0x184)](readdir,_0x50439d),_0x71c537=_0x2ecde4[_0xbc054(0xe8)](_0x246edb=>_0x246edb[_0xbc054(0x170)]('ffmpeg-'))[_0xbc054(0x128)]()['reverse']()['flatMap'](_0x18b26f=>[join(_0x50439d,_0x18b26f,'ffmpeg-mac'),join(_0x50439d,_0x18b26f,'ffmpeg-linux'),join(_0x50439d,_0x18b26f,_0xbc054(0xcd))]);for(const _0x1619da of _0x71c537){if(await _0x2a05bc['yGzOG'](canRunFfmpeg,_0x1619da))return _0x1619da;}}catch{}}return null;}async function canRunFfmpeg(_0x4a8da3){const _0x3d0fd=_0x577b72,_0x41afef={'SaVcG':_0x3d0fd(0x136)};try{return await execFileAsync(_0x4a8da3,[_0x41afef['SaVcG']]),!![];}catch{return![];}}function toStepDisplayName(_0x28db14){const _0x1ca49a=_0x577b72,_0x5488cc={'QRRDz':function(_0x406d84,_0x20c404){return _0x406d84(_0x20c404);}},_0x53cb2e=basename(_0x28db14)[_0x1ca49a(0x141)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x1ca49a(0x141)](/^\d+_/,'')[_0x1ca49a(0x141)](/-/g,'\x20');return{'name':_0x53cb2e,'isKeyStep':/^key_/i['test'](_0x5488cc['QRRDz'](basename,_0x28db14))};}function extractShellValue(_0x240cc7){if(!_0x240cc7)return null;return _0x240cc7[0x1]??_0x240cc7[0x2]??_0x240cc7[0x3]??null;}function extractOutputOption(_0x3ed835){return extractShellValue(_0x3ed835['match'](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x57d061,_0x4ef4a4){const _0x550d41=_0x577b72,_0x4736cd={'cKJXI':'create\x20Nova\x20browser\x20session','YJwVZ':'execute\x20Nova\x20browser\x20action','EIIJl':_0x550d41(0x139),'YLcQm':'ask\x20page\x20question','bXUPR':_0x550d41(0x195),'bcOHF':_0x550d41(0x115),'qRPBH':_0x550d41(0x194),'ObpVJ':'wait\x20for\x20page\x20condition','Msaem':_0x550d41(0xd3),'FSEsl':function(_0x33a5c9,_0x5b266f){return _0x33a5c9(_0x5b266f);},'JUcjD':function(_0x417a91,_0x5b6598){return _0x417a91(_0x5b6598);},'zHyQP':'capture\x20screenshot','WwrSN':_0x550d41(0xc8),'TEqnh':'export\x20Nova\x20session'};switch(_0x4ef4a4){case'session\x20create':return _0x4736cd[_0x550d41(0x122)];case _0x550d41(0x110):return _0x4736cd['YJwVZ'];case _0x4736cd[_0x550d41(0x104)]:return _0x550d41(0x17b);case'ask':return _0x4736cd[_0x550d41(0x10c)];case _0x4736cd[_0x550d41(0xc4)]:return _0x4736cd[_0x550d41(0x11b)];case _0x4736cd['qRPBH']:return _0x4736cd[_0x550d41(0x118)];case _0x4736cd[_0x550d41(0x1a0)]:{const _0x12532c=extractOutputOption(_0x57d061);if(!_0x12532c)return'capture\x20snapshot';const {name:_0x457187}=_0x4736cd[_0x550d41(0x154)](toStepDisplayName,_0x12532c);return'capture\x20snapshot\x20`'+_0x457187+'`';}case _0x550d41(0xe4):{const _0x1de608=_0x4736cd[_0x550d41(0x19e)](extractOutputOption,_0x57d061);if(!_0x1de608)return _0x4736cd[_0x550d41(0x17e)];const {name:_0x932aa8,isKeyStep:_0x22c5e3}=toStepDisplayName(_0x1de608);return _0x22c5e3?_0x550d41(0x15f)+_0x932aa8+'`':_0x550d41(0xf5)+_0x932aa8+'`';}case _0x4736cd[_0x550d41(0x10b)]:return _0x4736cd['TEqnh'];default:return _0x4ef4a4;}}function getNovaActCliCommandBlockReason(_0x296734){const _0x347aee=_0x577b72,_0x17e1f3={'oeSto':function(_0x49bde1,_0x34accb){return _0x49bde1(_0x34accb);},'eHiCY':function(_0x112f5e,_0x166f50){return _0x112f5e===_0x166f50;},'irUGo':_0x347aee(0x1a2),'MyHnU':'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.'},_0x381379=_0x17e1f3[_0x347aee(0xc3)](parseNovaActCliCommand,_0x296734);if(!_0x381379)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['has'](_0x381379))return _0x347aee(0x18d)+_0x381379+_0x347aee(0x130);if(_0x17e1f3['eHiCY'](_0x381379,_0x347aee(0x139))&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i[_0x347aee(0xbd)](_0x296734))return _0x17e1f3['irUGo'];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/[_0x347aee(0xbd)](_0x296734))return _0x17e1f3['MyHnU'];return null;}function buildFeedbackSection(_0x307ce2){const _0xbbd46=_0x577b72,_0x5e991d={'NIcPG':'Reviewer','kyDFK':'element'};if(!_0x307ce2||_0x307ce2[_0xbbd46(0x178)][_0xbbd46(0x12c)]===0x0)return'';const _0x25a2f2=_0x307ce2[_0xbbd46(0x178)]['map'](_0x24b4a5=>{const _0x4d7a8f=_0xbbd46,_0x1c9c4b=new Date(_0x24b4a5[_0x4d7a8f(0xf6)])[_0x4d7a8f(0x133)]('en-US',{'month':'short','day':'numeric'}),_0x510d04=_0x24b4a5['authorName']||_0x24b4a5[_0x4d7a8f(0xef)]||_0x5e991d['NIcPG'],_0x220ef9=_0x24b4a5[_0x4d7a8f(0xe3)]?_0x4d7a8f(0xe0)+(_0x24b4a5['domRef']['selector']['split'](_0x4d7a8f(0x140))[_0x4d7a8f(0x1a6)]()?.[_0x4d7a8f(0x10f)](':')[0x0]||_0x5e991d['kyDFK'])+_0x4d7a8f(0xc5)+(_0x24b4a5['domRef'][_0x4d7a8f(0x185)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x24b4a5['id']+_0x4d7a8f(0xeb)+_0x510d04+'**\x20('+_0x1c9c4b+_0x4d7a8f(0xc1)+_0x24b4a5[_0x4d7a8f(0x156)]+'\x22'+_0x220ef9;})['join']('\x0a');return _0xbbd46(0xec)+_0x25a2f2;}function buildNovaSharedOptionsInstruction(_0x54773e){const _0x2499f2=_0x577b72;if(!_0x54773e[_0x2499f2(0x16e)]())return _0x2499f2(0x158);return _0x2499f2(0x187)+_0x54773e;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x146058){const _0x4815bf=_0x577b72,_0x223be5={'IHPpF':'00_initial-state.yml','QdCvZ':_0x4815bf(0xcc),'CKXfc':function(_0x16d707,_0x4421c7,_0x73113a){return _0x16d707(_0x4421c7,_0x73113a);},'vcmYg':function(_0x4d18cd,_0x170ea3){return _0x4d18cd(_0x170ea3);},'DyndP':function(_0xb70986,_0x5b2cd3){return _0xb70986(_0x5b2cd3);}},{novaCommandPrefix:_0x56bcda,novaSharedOptionsSuffix:_0x128097,cliArtifactDir:_0x49187b,url:_0x4f224a}=_0x146058,_0x38cc0a=buildCliArtifactPath(_0x49187b,_0x223be5[_0x4815bf(0x11e)]),_0x24587b=buildCliArtifactPath(_0x49187b,'01_initial-state.png'),_0x1cad90=buildCliArtifactPath(_0x49187b,_0x223be5['QdCvZ']),_0xe06737=_0x223be5[_0x4815bf(0xc6)](buildCliArtifactPath,_0x49187b,_0x4815bf(0x161));return _0x4815bf(0x101)+_0x56bcda+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x128097)+_0x4815bf(0x13a)+_0x56bcda+'\x20session\x20create\x20'+_0x223be5[_0x4815bf(0xd4)](quoteShellArg,_0x4f224a)+'\x20'+_0x128097+_0x4815bf(0x181)+_0x56bcda+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x38cc0a)+'\x20'+_0x128097+'`\x0a3.\x20Run\x20`'+_0x56bcda+'\x20screenshot\x20--output\x20'+_0x223be5[_0x4815bf(0xd4)](quoteShellArg,_0x24587b)+'\x20'+_0x128097+_0x4815bf(0x191)+_0x56bcda+'\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`'+_0x56bcda+_0x4815bf(0x146)+_0x223be5['DyndP'](quoteShellArg,_0x1cad90)+'\x20'+_0x128097+'`\x0a6.\x20Run\x20`'+_0x56bcda+'\x20screenshot\x20--output\x20'+quoteShellArg(_0xe06737)+'\x20'+_0x128097+'`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`'+_0x49187b+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}function _0x3310(){const _0x47619c=['GCWzO','subcommand','KpwAQ','TVSUu','hZtvc','trim','\x20session\x20create\x20','startsWith','WJmnp','nova_act_session_close','key_03_success-state.png','-vf','queueTraceSample','log','traceSampleInFlight','unaddressedComments','nova-report','zip','verify\x20page\x20condition','`.\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`','521900MZlRvD','zHyQP','notes','28hhMKRR','`\x0a2.\x20Run\x20`','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','\x20screenshot\x20--output\x20','MVOIO','textContent','-framerate','Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a','error','Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20','push','Bash','nova-session-export.json','Nova\x20command\x20`','frame-','311713aWvVyR','trackPhaseError','`\x0a4.\x20Run\x20one\x20batched\x20`','mtimeMs','screencastStarted','wait-for','goto','IBbOm','env','telemetry','values','DnOfn','`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a','YKyet','nova_act_artifact_recording_stop','JUcjD','HoZRt','Msaem','then','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.','cdp_endpoint','base64','wcPXq','pop','frameSession','parse','test','encodeScreencastVideo','cwd','sXAQo','):\x20\x22','command','oeSto','bXUPR','>\x20\x22','CKXfc','nova_act_final_snapshot','session\x20export','browser','stdout','tool_name','02_final-state.yml','ffmpeg.exe','QMvrQ','stopTraceSampling','Ztthc','-pix_fmt','\x0a\x0aExamples:\x0a-\x20`','snapshot','vcmYg','pages','`\x0a-\x20`','isFile','set','5234160MGsAMp','iHcKp','PPenT','-loglevel','544695UaEmMD','RrMQg','gJiDI','\x20(on\x20element:\x20<','startAttempted','skJfi','domRef','screenshot','nova_act_session_export','params','export','filter','zHudu','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`',']\x20**','\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','dxeFa','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','authorEmail','browser_pid','send','6334286NVixIY','args','context','capture\x20step\x20`','createdAt','session-recording.webm','session','SnnHw','OaWwN','BEJqI','newCDPSession','CuxjD','close','shellCommand','captureTraceSample','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','ms-playwright','name','EIIJl','locator','TXZvN','01_initial-state.png','.act_cli','transportMetadata','trace.zip','WwrSN','YLcQm','vzrpD','commandArgs','split','execute','ItORG','frame-%06d.jpg','nova_act_artifact_recording','videos','navigate\x20browser','cEDsg','[nova-act-cli]\x20','ObpVJ','start','BglpG','bcOHF','Page.screencastFrame','LRbuX','IHPpF','stop','gatTi','readSessionMetadataWithRetry','cKJXI','catch','frameCount','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','xiSAL','9ksxGRH','sort','scale=trunc(iw/2)*2:trunc(ih/2)*2','--format','json','length','data','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','nova_act_session_report','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','stderr','cliArtifactDir','toLocaleDateString','trackPhaseStart','startTraceSampling','-version','--output-dir','ApulP','verify','\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`','`\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.','14727170uoNbBi','sessionId','tool_input','.cache','\x20>\x20','replace','ZSysj','session\x20create','now','CAHvt','\x20snapshot\x20--output\x20','kLyNB','nova-user-data/*','stopScreencast','ixMmW','.jpg','state','OrTNH','nova_act_final_screenshot','ziyOe','finally','--output','UASbj','frameWrites','FSEsl','PreToolUse','content','traceSampleTimer','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.','PgVwp','8147136dOoclQ','01_initial.yml','tracingStarted','keys','nova_act_command','capture\x20key\x20step\x20`','3wmhbYc','03_final-state.png','Caches','nova_act_command_failure','.json','stopped','phase','novaOptions','canonicalFlow'];_0x3310=function(){return _0x47619c;};return _0x3310();}export function buildVerifyFeatureNovaCliPrompt(_0x425aed){const _0x527271=_0x577b72,_0x556e90={'ApulP':function(_0x21e108,_0xafef6f,_0x38ce04){return _0x21e108(_0xafef6f,_0x38ce04);},'ZbEIJ':_0x527271(0x15b),'IBbOm':function(_0x1f0a49,_0x575178,_0x46bf5b){return _0x1f0a49(_0x575178,_0x46bf5b);},'zHudu':_0x527271(0x107),'RngEi':function(_0x454283,_0x325d78,_0x510ad1){return _0x454283(_0x325d78,_0x510ad1);},'gJiDI':_0x527271(0x173),'BglpG':function(_0x5d84b1,_0x351237){return _0x5d84b1(_0x351237);},'HoZRt':'`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`'},{checklistItem:_0x41be4e,itemFeedback:_0x5ab4e0,taskDescription:_0x5cca47,novaCommandPrefix:_0x5aa298,novaSharedOptionsSuffix:_0x46854d,cliArtifactDir:_0x5bc066,url:_0x1f5626,loginInstructions:_0x5c939f}=_0x425aed,_0x139a1c=_0x41be4e[_0x527271(0x17f)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x41be4e[_0x527271(0x17f)]:'',_0xab1f02=buildFeedbackSection(_0x5ab4e0),_0x41a340=_0x5ab4e0?.[_0x527271(0x168)]?_0x527271(0xee)+_0x5ab4e0[_0x527271(0x168)]:'',_0x2af289=_0x5c939f?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x5c939f+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x5afb4a=_0x556e90[_0x527271(0x138)](buildCliArtifactPath,_0x5bc066,_0x556e90['ZbEIJ']),_0x553e9b=_0x556e90[_0x527271(0x196)](buildCliArtifactPath,_0x5bc066,_0x556e90[_0x527271(0xe9)]),_0x674004=_0x556e90['RngEi'](buildCliArtifactPath,_0x5bc066,_0x556e90[_0x527271(0xdf)]);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'+_0x41be4e['description']+_0x139a1c+_0xab1f02+_0x41a340+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x5cca47+'\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20'+_0x1f5626+'\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'+_0x2af289+'\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`'+_0x5aa298+_0x527271(0x16f)+_0x556e90['BglpG'](quoteShellArg,_0x1f5626)+'\x20'+_0x46854d+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x5bc066+'`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`'+_0x5aa298+_0x527271(0x146)+quoteShellArg(_0x5afb4a)+'\x20'+_0x46854d+_0x527271(0xea)+_0x5aa298+_0x527271(0x183)+_0x556e90['BglpG'](quoteShellArg,_0x553e9b)+'\x20'+_0x46854d+_0x527271(0x17c)+_0x674004+'`.\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`'+_0x5aa298+_0x527271(0x19b)+(_0x46854d[_0x527271(0x16e)]()?'`'+_0x46854d+'`':_0x556e90[_0x527271(0x19f)])+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x46854d)+_0x527271(0xd2)+_0x5aa298+'\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20'+_0x46854d+'`\x0a-\x20`'+_0x5aa298+_0x527271(0x125)+_0x46854d+'`\x0a-\x20`'+_0x5aa298+'\x20snapshot\x20--output\x20'+_0x556e90[_0x527271(0x11a)](quoteShellArg,_0x5afb4a)+'\x20'+_0x46854d+_0x527271(0xd6)+_0x5aa298+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x674004)+'\x20'+_0x46854d+_0x527271(0x13b);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x5377d7){const _0x9076f5=_0x577b72,_0x10ac00={'kilEQ':function(_0x3662cc,_0x42bbeb){return _0x3662cc===_0x42bbeb;}},_0x49fead=[..._0x5377d7[_0x9076f5(0x15d)]()]['sort']();let _0xca41c7=0x0;for(const _0xd83644 of _0x5377d7[_0x9076f5(0x199)]()){_0xca41c7+=_0xd83644;}return{'cliCommandCount':_0xca41c7,'cliCommandsSeen':_0x49fead,'noCliCommandsCalled':_0x10ac00['kilEQ'](_0xca41c7,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x292c54,_0x36dc85){const _0x20fa09=_0x577b72,_0x6b9c1b={'xiSAL':function(_0x3f860a,_0x8b04fc){return _0x3f860a!==_0x8b04fc;},'omixt':_0x20fa09(0x155),'RZjnV':function(_0x53a0a3,_0x4fd07c){return _0x53a0a3!==_0x4fd07c;},'fxsbF':_0x20fa09(0x18b),'RrMQg':function(_0xd89f8b,_0x40945c){return _0xd89f8b(_0x40945c);},'ItORG':function(_0x182cb8,_0x593162){return _0x182cb8(_0x593162);},'bCkhD':function(_0x248d83,_0x4339fc){return _0x248d83!==_0x4339fc;},'JKEiB':'PostToolUse','vzrpD':function(_0x3f2ba0,_0x33a077){return _0x3f2ba0(_0x33a077);},'LRbuX':_0x20fa09(0x15e),'iEyda':function(_0x785046,_0x2eec85,_0x1363a6){return _0x785046(_0x2eec85,_0x1363a6);},'CAHvt':function(_0x4b74cc,_0x33e5ed){return _0x4b74cc===_0x33e5ed;},'KMLLu':_0x20fa09(0x143),'TGDHf':'nova_act_artifact_recording','ZGcdC':'nova-act-cli','oSbxK':'PostToolUseFailure','SnnHw':_0x20fa09(0x163)},_0x9a7e44=new Map(),_0x5dd54b=async _0x290047=>{const _0x4e102f=_0x20fa09;if(_0x6b9c1b[_0x4e102f(0x126)](_0x290047['hook_event_name'],_0x6b9c1b['omixt']))return{};const _0x3d0626=_0x290047;if(_0x6b9c1b['RZjnV'](_0x3d0626['tool_name'],_0x6b9c1b['fxsbF']))return{};const _0x35b9cb=_0x3d0626[_0x4e102f(0x13e)],_0x1be978=_0x6b9c1b[_0x4e102f(0xde)](extractBashCommand,_0x35b9cb);if(!_0x1be978)return{};const _0x56736e=_0x6b9c1b[_0x4e102f(0x111)](getNovaActCliCommandBlockReason,_0x1be978);if(!_0x56736e)return{};return{'decision':'block','reason':_0x56736e};},_0x3d7eb2=async _0x262f07=>{const _0x33cae2=_0x20fa09;if(_0x6b9c1b['bCkhD'](_0x262f07['hook_event_name'],_0x6b9c1b['JKEiB']))return{};const _0x3ef459=_0x262f07;if(_0x6b9c1b['RZjnV'](_0x3ef459[_0x33cae2(0xcb)],_0x33cae2(0x18b)))return{};const _0x50f037=_0x3ef459[_0x33cae2(0x13e)],_0x274eb5=extractBashCommand(_0x50f037);if(!_0x274eb5)return{};const _0x52a0a9=_0x6b9c1b[_0x33cae2(0x10d)](parseNovaActCliCommand,_0x274eb5);if(!_0x52a0a9)return{};_0x9a7e44[_0x33cae2(0xd8)](_0x52a0a9,(_0x9a7e44['get'](_0x52a0a9)||0x0)+0x1),_0x292c54['trackPhaseStart'](_0x6b9c1b[_0x33cae2(0x11d)],{'subcommand':_0x52a0a9}),_0x292c54['trackPhaseEnd'](_0x33cae2(0x15e),{'subcommand':_0x52a0a9,'commandPreview':_0x6b9c1b['RrMQg'](previewNovaActCliCommand,_0x274eb5)}),console[_0x33cae2(0x176)](_0x33cae2(0x117)+_0x6b9c1b['iEyda'](formatNovaActCliLog,_0x274eb5,_0x52a0a9));if(_0x6b9c1b[_0x33cae2(0x145)](_0x52a0a9,_0x6b9c1b['KMLLu'])&&_0x36dc85)try{await _0x36dc85[_0x33cae2(0x119)]();}catch(_0x2845e8){await _0x292c54[_0x33cae2(0x190)](_0x6b9c1b['TGDHf'],_0x2845e8,{'transport':_0x6b9c1b['ZGcdC']});}return{};},_0x5f2eae=async _0x3f7331=>{const _0x2169fd=_0x20fa09;if(_0x3f7331['hook_event_name']!==_0x6b9c1b['oSbxK'])return{};const _0x46441c=_0x3f7331;if(_0x6b9c1b['bCkhD'](_0x46441c['tool_name'],_0x2169fd(0x18b)))return{};return await _0x292c54['trackPhaseError'](_0x6b9c1b[_0x2169fd(0xf9)],_0x46441c[_0x2169fd(0x188)],{'transport':'nova-act-cli','toolName':_0x6b9c1b['fxsbF']}),{};};return{'preToolUseHook':_0x5dd54b,'postToolUseHook':_0x3d7eb2,'postToolUseFailureHook':_0x5f2eae,'commandCounts':_0x9a7e44};}async function runNovaLifecycleCommand(_0x3f8b1d){const _0x1d4122=_0x577b72,{novaOptions:_0x2a5321,commandArgs:_0x31e8f7,telemetry:_0x3592dc,phase:_0x342f84,metadata:_0x8af704,timeoutMs:_0x96e2d3}=_0x3f8b1d;_0x3592dc[_0x1d4122(0x134)](_0x342f84,_0x8af704);try{const _0x372601=await runNovaActCliCommand({..._0x2a5321,'commandArgs':_0x31e8f7,'cwd':process[_0x1d4122(0xbf)](),'env':process[_0x1d4122(0x197)],'timeoutMs':_0x96e2d3??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x3592dc['trackPhaseEnd'](_0x342f84,{..._0x8af704,'subcommand':_0x372601['invocation'][_0x1d4122(0x16a)],'commandPreview':previewNovaActCliCommand(_0x372601['invocation']['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0x372601['stdout']),'stderrPreview':previewNovaActCliCommand(_0x372601[_0x1d4122(0x131)]),'logDir':extractNovaActLogDir(_0x372601[_0x1d4122(0xca)])});}catch(_0x5b635b){await _0x3592dc[_0x1d4122(0x190)](_0x342f84,_0x5b635b,_0x8af704);throw _0x5b635b;}}export async function finalizeVerifyFeatureNovaCliSession(_0x5aeab6){const _0x2b18a4=_0x577b72,_0x590f08={'OrTNH':_0x2b18a4(0x14e),'skJfi':'screenshot','GCWzO':_0x2b18a4(0x151),'RVhQZ':function(_0x52a22f,_0x3573db,_0x4f1d96){return _0x52a22f(_0x3573db,_0x4f1d96);},'BEJqI':'key_final-state.png','hZtvc':_0x2b18a4(0xc7),'ixMmW':'snapshot','MTNUx':function(_0x5db215,_0x2b8252,_0x2bfaaa){return _0x5db215(_0x2b8252,_0x2bfaaa);},'MxxTY':_0x2b18a4(0xe5),'GGgpj':_0x2b18a4(0x12b),'Ztthc':'nova_act_session_close','HxNEK':_0x2b18a4(0xf8),'cEDsg':_0x2b18a4(0xfe),'wcPXq':function(_0x229be4,_0x194d51){return _0x229be4(_0x194d51);}},{telemetry:_0x2126d4,novaOptions:_0xb55694,cliArtifactDir:_0x3dc63d,transportMetadata:_0x2ecc70,artifactRecorder:_0x45673b}=_0x5aeab6,_0x4e534d=[{'phase':_0x590f08[_0x2b18a4(0x14d)],'commandArgs':[_0x590f08[_0x2b18a4(0xe2)],_0x590f08[_0x2b18a4(0x169)],_0x590f08['RVhQZ'](buildCliArtifactPath,_0x3dc63d,_0x590f08[_0x2b18a4(0xfb)])]},{'phase':_0x590f08[_0x2b18a4(0x16d)],'commandArgs':[_0x590f08[_0x2b18a4(0x14a)],_0x590f08[_0x2b18a4(0x169)],_0x590f08['MTNUx'](buildCliArtifactPath,_0x3dc63d,'final-state.yaml')]},{'phase':_0x590f08['MxxTY'],'commandArgs':['session','export',_0x2b18a4(0x12a),_0x590f08['GGgpj'],_0x590f08[_0x2b18a4(0x169)],_0x590f08['MTNUx'](buildCliArtifactPath,_0x3dc63d,_0x2b18a4(0x18c))]},{'phase':_0x2b18a4(0x12f),'commandArgs':[_0x2b18a4(0xf8),_0x2b18a4(0xe7),'--report',_0x2b18a4(0x137),_0x590f08['MTNUx'](buildCliArtifactPath,_0x3dc63d,_0x2b18a4(0x179))]},{'phase':_0x590f08[_0x2b18a4(0xd0)],'commandArgs':[_0x590f08['HxNEK'],_0x590f08[_0x2b18a4(0x116)]]}];for(const _0x4b1579 of _0x4e534d){_0x4b1579[_0x2b18a4(0x166)]===_0x2b18a4(0x172)&&await _0x45673b?.[_0x2b18a4(0x11f)]();try{await _0x590f08[_0x2b18a4(0x1a5)](runNovaLifecycleCommand,{'novaOptions':_0xb55694,'commandArgs':[..._0x4b1579[_0x2b18a4(0x10e)]],'telemetry':_0x2126d4,'phase':_0x4b1579['phase'],'metadata':_0x2ecc70});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x2a6259){const _0x19bc5d=_0x577b72,_0x3bf52f={'UASbj':function(_0x291a87,_0x507c4a,_0x2d84e4){return _0x291a87(_0x507c4a,_0x2d84e4);},'DnOfn':function(_0x3dbec3,_0x51789b){return _0x3dbec3<_0x51789b;},'KpwAQ':function(_0x58dd25,_0x56796c){return _0x58dd25+_0x56796c;}},{cwd:_0x5ef394,cliArtifactDir:_0x47525a,startTime:_0x3a133e}=_0x2a6259,_0x464de9=[];await mkdir(_0x47525a,{'recursive':!![]});const _0x1898cd=await readdir(_0x5ef394,{'withFileTypes':!![]});for(const _0x3af1ea of _0x1898cd){if(!_0x3af1ea[_0x19bc5d(0xd7)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x19bc5d(0xbd)](_0x3af1ea[_0x19bc5d(0x103)]))continue;const _0x18a643=_0x3bf52f[_0x19bc5d(0x152)](join,_0x5ef394,_0x3af1ea[_0x19bc5d(0x103)]),_0x2479ae=await stat(_0x18a643);if(_0x3bf52f[_0x19bc5d(0x19a)](_0x3bf52f[_0x19bc5d(0x16b)](_0x2479ae[_0x19bc5d(0x192)],0x7d0),_0x3a133e))continue;const _0x116887=buildCliArtifactPath(_0x47525a,_0x3af1ea[_0x19bc5d(0x103)]);if(_0x18a643===_0x116887)continue;await rename(_0x18a643,_0x116887),_0x464de9[_0x19bc5d(0x18a)](_0x3af1ea['name']);}return _0x464de9['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x8ec524){const _0x3eaae1=_0x577b72,_0x3f02f0={'KvdVJ':function(_0x54bca0,_0x57e58e){return _0x54bca0(_0x57e58e);},'UToCb':function(_0x6b78ee,_0x5dfd08){return _0x6b78ee(_0x5dfd08);}},_0x524da2=join(_0x8ec524,_0x3eaae1(0x10a));try{return{'buffer':await _0x3f02f0['KvdVJ'](readFile,_0x524da2),'source':_0x524da2};}catch{return{'buffer':await _0x3f02f0['UToCb'](zipVerifyFeatureNovaArtifacts,_0x8ec524),'source':_0x8ec524};}}async function zipVerifyFeatureNovaArtifacts(_0x56b1cd){const _0x2e4113=_0x577b72,_0x158b4d={'WJmnp':function(_0x166baf,_0x4ba750,_0x355bc0,_0x5e478d){return _0x166baf(_0x4ba750,_0x355bc0,_0x5e478d);},'mEmEe':'nova-artifacts.zip','YKyet':_0x2e4113(0x17a),'ZcSNC':'-qr','Quixf':function(_0x144075,_0x13b2ad){return _0x144075(_0x13b2ad);},'Psfuc':function(_0x216789,_0x1b24e4,_0x4386b3){return _0x216789(_0x1b24e4,_0x4386b3);}},_0x50ea69=_0x158b4d[_0x2e4113(0x171)](join,_0x56b1cd,'..',_0x158b4d['mEmEe']);try{return await execFileAsync(_0x158b4d[_0x2e4113(0x19c)],[_0x158b4d['ZcSNC'],_0x50ea69,'.','-x',_0x2e4113(0x148)],{'cwd':_0x56b1cd}),await _0x158b4d['Quixf'](readFile,_0x50ea69);}finally{await _0x158b4d['Psfuc'](rm,_0x50ea69,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x308383){const _0x5b52a2=_0x577b72,_0x19cc43=buildNovaActCliInvocation(_0x308383[_0x5b52a2(0x167)],_0x308383['commandArgs']);return{'command':_0x19cc43[_0x5b52a2(0xc2)],'args':_0x19cc43[_0x5b52a2(0xf3)],'commandPreview':previewNovaActCliCommand(_0x19cc43[_0x5b52a2(0xff)]),'subcommand':_0x19cc43['subcommand'],'sharedOptionsSuffix':buildNovaActCliSharedOptionsSuffix(_0x308383[_0x5b52a2(0x167)],_0x308383[_0x5b52a2(0x10e)])};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x565d6d,_0x31fea8){const _0xa738e6=_0xbd5c,_0x5e7411=_0x565d6d();while(!![]){try{const _0x46181a=parseInt(_0xa738e6(0xea))/0x1*(-parseInt(_0xa738e6(0xd1))/0x2)+parseInt(_0xa738e6(0xcb))/0x3+-parseInt(_0xa738e6(0xba))/0x4+parseInt(_0xa738e6(0x106))/0x5*(parseInt(_0xa738e6(0x107))/0x6)+-parseInt(_0xa738e6(0x105))/0x7*(parseInt(_0xa738e6(0xcf))/0x8)+parseInt(_0xa738e6(0xf9))/0x9+parseInt(_0xa738e6(0xd6))/0xa*(-parseInt(_0xa738e6(0xe6))/0xb);if(_0x46181a===_0x31fea8)break;else _0x5e7411['push'](_0x5e7411['shift']());}catch(_0x34baf5){_0x5e7411['push'](_0x5e7411['shift']());}}}(_0x34f7,0xeb0fe));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(_0x482389,_0xa119ee=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x161cb6=_0xbd5c,_0x44d7ff={'fIRVD':function(_0x5c3366,_0x57e5a8){return _0x5c3366>_0x57e5a8;},'dWrmL':function(_0x41a6f8,_0x590135){return _0x41a6f8+_0x590135;}};return _0x44d7ff['fIRVD'](_0x482389['length'],_0xa119ee)?_0x44d7ff[_0x161cb6(0xe1)](_0x482389[_0x161cb6(0x10a)](0x0,_0xa119ee),'...'):_0x482389;}function extractShellValue(_0x154833){if(!_0x154833)return null;return _0x154833[0x1]??_0x154833[0x2]??_0x154833[0x3]??null;}function _0xbd5c(_0x33ed78,_0x292988){_0x33ed78=_0x33ed78-0xb8;const _0x34f77c=_0x34f7();let _0xbd5c73=_0x34f77c[_0x33ed78];return _0xbd5c73;}function extractFirstCommandArgument(_0x156b50,_0x5838b4){const _0x1ebe57=_0xbd5c,_0xbe81a6={'yNuAx':'\x5c$&'},_0x2352e6=_0x5838b4[_0x1ebe57(0xd3)](/[.*+?^${}()|[\]\\]/g,_0xbe81a6[_0x1ebe57(0xd9)]);return extractShellValue(_0x156b50['match'](new RegExp(_0x1ebe57(0xc9)+_0x2352e6+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x382516){const _0x5d0f06=_0xbd5c,_0x1e3b8b={'CvVzj':_0x5d0f06(0xd5),'fbXAF':function(_0x149090,_0x65865e,_0x5c2d21){return _0x149090(_0x65865e,_0x5c2d21);}};if(!_0x382516)return _0x1e3b8b['CvVzj'];if(/^e\d+$/i[_0x5d0f06(0xf7)](_0x382516))return'ref\x20'+_0x382516;return JSON['stringify'](_0x1e3b8b[_0x5d0f06(0xf1)](truncatePreview,_0x382516,0x78));}function formatRangerwrightCliLog(_0x63e186,_0x50ad09){const _0x4432f2=_0xbd5c,_0x4d4c7b={'vRgMg':function(_0x3a5433,_0x477d72,_0x373328){return _0x3a5433(_0x477d72,_0x373328);},'NRrdB':_0x4432f2(0xc7),'bHthi':'back-and-inspect','QYbWF':'go\x20back\x20and\x20inspect','ZCPjQ':'stop\x20tracing','WSoRU':_0x4432f2(0xde)};switch(_0x50ad09){case'open-and-inspect':{const _0xc6dfd=_0x4d4c7b[_0x4432f2(0x103)](extractFirstCommandArgument,_0x63e186,_0x50ad09);return _0xc6dfd?_0x4432f2(0xf5)+_0xc6dfd:_0x4432f2(0xe0);}case'click-and-inspect':return _0x4432f2(0xd7)+formatCommandTarget(_0x4d4c7b[_0x4432f2(0x103)](extractFirstCommandArgument,_0x63e186,_0x50ad09));case'fill':case _0x4d4c7b['NRrdB']:return'fill\x20'+formatCommandTarget(extractFirstCommandArgument(_0x63e186,_0x50ad09));case _0x4d4c7b['bHthi']:return _0x4d4c7b['QYbWF'];case'inspect':return _0x4432f2(0xf0);case _0x4432f2(0xc8):return _0x4d4c7b[_0x4432f2(0xe8)];case _0x4d4c7b[_0x4432f2(0xeb)]:return'stop\x20video\x20recording';case'close':return _0x4432f2(0xb9);default:return _0x50ad09;}}function renderScenarioSections(_0x1f9ebe){const _0x24f4c8=_0xbd5c,_0x4fefc4={'NXYdA':'en-US','WPRrd':'numeric','ZpXWI':'Reviewer','FYyzU':_0x24f4c8(0xd8)},{checklistItem:_0x438ecf,itemFeedback:_0x1df37a}=_0x1f9ebe,_0x1d6352=_0x438ecf[_0x24f4c8(0xe9)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x438ecf['notes']:'';let _0x24c3e3='';if(_0x1df37a&&_0x1df37a['unaddressedComments']['length']>0x0){const _0x5c6c59=_0x1df37a['unaddressedComments'][_0x24f4c8(0xd2)](_0x110242=>{const _0x5f3522=_0x24f4c8,_0x353039=new Date(_0x110242['createdAt'])['toLocaleDateString'](_0x4fefc4[_0x5f3522(0x109)],{'month':_0x5f3522(0xff),'day':_0x4fefc4['WPRrd']}),_0x5569f7=_0x110242['authorName']||_0x110242['authorEmail']||_0x4fefc4['ZpXWI'],_0x52e9ed=_0x110242[_0x5f3522(0xfc)]?_0x5f3522(0xf3)+(_0x110242['domRef'][_0x5f3522(0xce)][_0x5f3522(0xbb)](_0x4fefc4['FYyzU'])['pop']()?.[_0x5f3522(0xbb)](':')[0x0]||'element')+_0x5f3522(0xb8)+(_0x110242['domRef']['textContent']||'')[_0x5f3522(0x10a)](0x0,0x32)+'\x22)':'';return _0x5f3522(0xc5)+_0x110242['id']+']\x20'+_0x5569f7+'\x20('+_0x353039+_0x5f3522(0xbc)+_0x110242['content']+'\x22'+_0x52e9ed;})[_0x24f4c8(0xbe)]('\x0a');_0x24c3e3=_0x24f4c8(0xc0)+_0x5c6c59;}const _0x48b4f7=_0x1df37a?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x1df37a[_0x24f4c8(0xed)]:'';return''+_0x438ecf['description']+_0x1d6352+_0x24c3e3+_0x48b4f7;}export function buildVerifyFeatureRangerwrightCliPrompt(_0xb6c8c5){const _0x7632b0=_0xbd5c,_0x2f4d43={'OlJxJ':_0x7632b0(0xbd),'uuVrU':function(_0x1398f4,_0x503bf7){return _0x1398f4(_0x503bf7);},'ELAZK':function(_0x2461de,_0x4fdc4e){return _0x2461de??_0x4fdc4e;}},{checklistItem:_0xa9adc8,itemFeedback:_0x301a9b,taskDescription:_0x23072e,commandPrefix:_0x373ed7,isCdpMode:_0x10badb,url:_0x119f26,cdpEndpoint:_0x4f597b,loginInstructions:_0x512954}=_0xb6c8c5,_0x16ab94=_0x2f4d43['OlJxJ'],_0x52d08e=_0x7632b0(0xdb),_0x4d62a3=_0x10badb?_0x373ed7+_0x7632b0(0xfb)+_0x2f4d43[_0x7632b0(0xf6)](quoteShellArg,_0x16ab94):_0x373ed7+_0x7632b0(0xf2)+_0x2f4d43[_0x7632b0(0xf6)](quoteShellArg,_0x2f4d43['ELAZK'](_0x119f26,'about:blank'))+_0x7632b0(0x102)+_0x2f4d43['uuVrU'](quoteShellArg,_0x16ab94),_0x36325d=_0x10badb?_0x7632b0(0xc4)+_0x4f597b+_0x7632b0(0x100):_0x7632b0(0xdf)+_0x119f26+_0x7632b0(0xee),_0x2af26f=_0x512954?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x512954+_0x7632b0(0xcc):'';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':_0xa9adc8,'itemFeedback':_0x301a9b})+_0x7632b0(0xec)+_0x23072e+'\x0a\x0a'+_0x36325d+_0x2af26f+'\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0x373ed7+'\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'+_0x4d62a3+'\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'+_0x373ed7+'\x20click-and-inspect\x20e37\x20--screenshot-path\x20'+_0x2f4d43[_0x7632b0(0xf6)](quoteShellArg,_0x52d08e)+'\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.';}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0x367c39){const _0x2be201=_0xbd5c,_0x24d1cf={'FfaVq':'01_mozilla-homepage.png'},_0x351250=_0x24d1cf['FfaVq'],_0x100d1d='key_02_learn-more.png';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'+_0x367c39['commandPrefix']+_0x2be201(0x104)+_0x367c39[_0x2be201(0xdd)]+'\x20open-and-inspect\x20'+quoteShellArg(_0x367c39['url'])+_0x2be201(0x102)+quoteShellArg(_0x351250)+_0x2be201(0xd4)+_0x367c39['commandPrefix']+'\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20'+quoteShellArg(_0x100d1d)+'`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x299628){const _0x11a8b1=_0xbd5c,_0x291a87=[..._0x299628[_0x11a8b1(0xfe)]()]['sort']();let _0x51f1c6=0x0;for(const _0x26b3f8 of _0x299628['values']()){_0x51f1c6+=_0x26b3f8;}return{'cliCommandCount':_0x51f1c6,'cliCommandsSeen':_0x291a87,'noCliCommandsCalled':_0x51f1c6===0x0};}export function createVerifyFeatureRangerwrightCliHooks(_0x16ae98){const _0x70d0ae=_0xbd5c,_0x3efa56={'opOCW':function(_0xeeafd2,_0x3bdcf4){return _0xeeafd2!==_0x3bdcf4;},'KyXaT':'PostToolUse','ZKvoA':function(_0x11e9cb,_0xc7b9b8){return _0x11e9cb(_0xc7b9b8);},'foPpY':_0x70d0ae(0xef),'yDbVY':function(_0x5b2fed,_0x4436e0){return _0x5b2fed!==_0x4436e0;},'mxjuS':_0x70d0ae(0xc3),'XFQzT':_0x70d0ae(0xda)},_0xe6634b=new Map(),_0x5cbd0d=async _0x15bc3e=>{const _0x447923=_0x70d0ae;if(_0x3efa56['opOCW'](_0x15bc3e['hook_event_name'],_0x3efa56['KyXaT']))return{};const _0x33dd2b=_0x15bc3e;if(_0x33dd2b[_0x447923(0xfa)]!=='Bash')return{};const _0x3723ae=_0x33dd2b['tool_input'],_0x18078a=_0x3efa56['ZKvoA'](extractBashCommand,_0x3723ae);if(!_0x18078a)return{};const _0x5197c7=parseRangerwrightCliCommand(_0x18078a);if(!_0x5197c7)return{};return _0xe6634b['set'](_0x5197c7,(_0xe6634b['get'](_0x5197c7)||0x0)+0x1),_0x16ae98['trackPhaseStart'](_0x3efa56[_0x447923(0xc2)],{'subcommand':_0x5197c7}),_0x16ae98[_0x447923(0xdc)](_0x3efa56['foPpY'],{'subcommand':_0x5197c7,'commandPreview':truncatePreview(_0x18078a)}),console[_0x447923(0xe3)](_0x447923(0xcd)+formatRangerwrightCliLog(_0x18078a,_0x5197c7)),{};},_0xcb0bce=async _0x44e8d6=>{const _0x4ac206=_0x70d0ae;if(_0x44e8d6['hook_event_name']!=='PostToolUseFailure')return{};const _0x29a541=_0x44e8d6;if(_0x3efa56[_0x4ac206(0xe4)](_0x29a541['tool_name'],_0x4ac206(0xda)))return{};return await _0x16ae98['trackPhaseError'](_0x3efa56[_0x4ac206(0xfd)],_0x29a541['error'],{'transport':_0x4ac206(0xe7),'toolName':_0x3efa56[_0x4ac206(0xc6)]}),{};};return{'postToolUseHook':_0x5cbd0d,'postToolUseFailureHook':_0xcb0bce,'commandCounts':_0xe6634b};}function _0x34f7(){const _0x1af2f6=['ZCPjQ','notes','1000453NLFxgr','WSoRU','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','canonicalFlow','\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.','rangerwright_cli_command','inspect\x20page','fbXAF','\x20open-and-inspect\x20','\x20(on\x20element:\x20<','stderr','open\x20and\x20inspect\x20','uuVrU','test','close','12430116hMwzIs','tool_name','\x20inspect\x20--screenshot-path\x20','domRef','mxjuS','keys','short','.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.','stdout','\x20--screenshot-path\x20','vRgMg','\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`','4260795JLatcX','340195NZUNWH','126BQEcyt','subcommand','NXYdA','slice','>\x20\x22','close\x20browser\x20session','2005768ONygzC','split','):\x20\x22','01_initial-state.png','join','DpRmI','\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','cwd','foPpY','rangerwright_cli_command_failure','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20','-\x20[','XFQzT','fill-and-inspect','tracing-stop','(?:^|\x5cs)','lbiBu','3844011xEwQLx','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','[rangerwright-cli]\x20','selector','8UqnLyt','oveov','2YVjWVN','map','replace','`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`','target','5089430EqTxmP','click\x20and\x20inspect\x20','\x20>\x20','yNuAx','Bash','key_99_final-state.png','trackPhaseEnd','commandPrefix','video-stop','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','open\x20and\x20inspect','dWrmL','jIWrD','log','yDbVY','rangerwright_cli_tracing_stop','22ngQpMg','rangerwright-cli'];_0x34f7=function(){return _0x1af2f6;};return _0x34f7();}async function runRangerwrightLifecycleCommand(_0x29884c){const _0xb20cdf=_0xbd5c,_0x270208={'crLrY':function(_0x50c525,_0x2dce79){return _0x50c525??_0x2dce79;},'MJVJs':function(_0x1aec65,_0xc0473,_0x2d54ab){return _0x1aec65(_0xc0473,_0x2d54ab);}},{options:_0x31aff0,commandArgs:_0x4a2d72,env:_0x24f197,telemetry:_0x266e39,phase:_0x11e2e1,metadata:_0x4e61cd,timeoutMs:_0x450b12}=_0x29884c;_0x266e39['trackPhaseStart'](_0x11e2e1,_0x4e61cd);try{const _0x584cee=await runRangerwrightCliCommand({..._0x31aff0,'commandArgs':_0x4a2d72,'cwd':process[_0xb20cdf(0xc1)](),'env':_0x24f197,'timeoutMs':_0x270208['crLrY'](_0x450b12,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x266e39['trackPhaseEnd'](_0x11e2e1,{..._0x4e61cd,'subcommand':_0x584cee['invocation'][_0xb20cdf(0x108)],'stdoutPreview':_0x270208['MJVJs'](truncatePreview,_0x584cee[_0xb20cdf(0x101)],0x7d0),'stderrPreview':truncatePreview(_0x584cee[_0xb20cdf(0xf4)],0x7d0)});}catch(_0x23206a){await _0x266e39['trackPhaseError'](_0x11e2e1,_0x23206a,_0x4e61cd);throw _0x23206a;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x11dbaa){const _0x124842=_0xbd5c,_0x492cd0={'oveov':_0x124842(0xe5),'lbiBu':'tracing-stop','jIWrD':'rangerwright_cli_close','DpRmI':function(_0x2a83ea,_0x1ed6c0){return _0x2a83ea(_0x1ed6c0);}},{telemetry:_0x148e04,rangerwrightOptions:_0x40dc99,env:_0x3ffc46,transportMetadata:_0x2188dc}=_0x11dbaa,_0x3afe09=[{'phase':_0x492cd0[_0x124842(0xd0)],'commandArgs':[_0x492cd0[_0x124842(0xca)]]},{'phase':'rangerwright_cli_video_stop','commandArgs':['video-stop']},{'phase':_0x492cd0[_0x124842(0xe2)],'commandArgs':[_0x124842(0xf8)]}];for(const _0xd1a836 of _0x3afe09){try{await _0x492cd0[_0x124842(0xbf)](runRangerwrightLifecycleCommand,{'options':_0x40dc99,'commandArgs':[..._0xd1a836['commandArgs']],'env':_0x3ffc46,'telemetry':_0x148e04,'phase':_0xd1a836['phase'],'metadata':_0x2188dc});}catch{}}}
|
|
1
|
+
function _0x2db6(_0x5a3ec2,_0x2e310b){_0x5a3ec2=_0x5a3ec2-0x1bf;const _0x122126=_0x1221();let _0x2db6ab=_0x122126[_0x5a3ec2];return _0x2db6ab;}(function(_0x3ee8c1,_0x2259fd){const _0x1010c7=_0x2db6,_0x5c63cb=_0x3ee8c1();while(!![]){try{const _0x5e0213=-parseInt(_0x1010c7(0x1d1))/0x1*(-parseInt(_0x1010c7(0x1d3))/0x2)+-parseInt(_0x1010c7(0x1cf))/0x3+parseInt(_0x1010c7(0x1d0))/0x4*(-parseInt(_0x1010c7(0x211))/0x5)+-parseInt(_0x1010c7(0x1ed))/0x6+-parseInt(_0x1010c7(0x1cb))/0x7+parseInt(_0x1010c7(0x1ea))/0x8+-parseInt(_0x1010c7(0x203))/0x9*(-parseInt(_0x1010c7(0x21d))/0xa);if(_0x5e0213===_0x2259fd)break;else _0x5c63cb['push'](_0x5c63cb['shift']());}catch(_0x50f611){_0x5c63cb['push'](_0x5c63cb['shift']());}}}(_0x1221,0x735df));import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';import{parseRangerwrightCliCommand,runRangerwrightCliCommand}from'./utils/rangerwrightCli.js';function _0x1221(){const _0x4c9bb9=['trackPhaseStart','10hfycoQ','rNJQk','\x20click-and-inspect\x20e37\x20--screenshot-path\x20','numeric','key_99_final-state.png','stderr','`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','hGTvf','\x20>\x20','\x20open-and-inspect\x20','video-stop','20hccqao','textContent','-\x20[','commandPrefix','content','phase','PostToolUseFailure','\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a','domRef','ksSji','\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`','EhRGr','back-and-inspect','length','cwd','unaddressedComments','YhJrd','mwsfl','rangerwright_cli_close','trackPhaseError','open-and-inspect','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','1180795UAgXkC','authorName','sort','oQOKr','1900083OipTWx','884972xVdHhv','1011rsJpKY','UjyXF','1418ZxSovN','\x20--screenshot-path\x20','tool_name','Reviewer','split','uokWZ','match','\x5c$&','(?:^|\x5cs)','KTOZV','\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','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','stringify','map','01_mozilla-homepage.png','KCdNP','frOQU','log','IHIFo','click\x20and\x20inspect\x20','fill-and-inspect','\x0a\x0a##\x20Additional\x20Notes\x0a','rangerwright_cli_video_stop','669568YqMiDg','stop\x20tracing','hook_event_name','3914532EAQPuq','canonicalFlow','ref\x20','get','notes','short','GaTZc','join','MIPgB','):\x20\x22','en-US','XSBXU','AYQwX','\x20(on\x20element:\x20<','about:blank','01_initial-state.png','open\x20and\x20inspect\x20','url','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','rangerwright_cli_tracing_stop','slice','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','7060509RszacI','QypPX','invocation','UVTjn','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','UJItf','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20','commandArgs','Bash','inspect','target','authorEmail'];_0x1221=function(){return _0x4c9bb9;};return _0x1221();}const RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,RANGERWRIGHT_CLI_PREVIEW_LIMIT=0xf0;function truncatePreview(_0x13edc3,_0x3fc078=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x5dbde9=_0x2db6,_0x5e7051={'KCdNP':function(_0x184afe,_0x155076){return _0x184afe>_0x155076;},'mwsfl':function(_0x1e3137,_0x11464d){return _0x1e3137+_0x11464d;},'iPvNQ':'...'};return _0x5e7051[_0x5dbde9(0x1e2)](_0x13edc3[_0x5dbde9(0x1c2)],_0x3fc078)?_0x5e7051[_0x5dbde9(0x1c6)](_0x13edc3[_0x5dbde9(0x201)](0x0,_0x3fc078),_0x5e7051['iPvNQ']):_0x13edc3;}function extractShellValue(_0x304f7b){if(!_0x304f7b)return null;return _0x304f7b[0x1]??_0x304f7b[0x2]??_0x304f7b[0x3]??null;}function extractFirstCommandArgument(_0x5a9498,_0x5ee3fd){const _0x3e832d=_0x2db6,_0x26ab18={'EhRGr':function(_0xd4ed7a,_0x421207){return _0xd4ed7a(_0x421207);}},_0x1b8775=_0x5ee3fd['replace'](/[.*+?^${}()|[\]\\]/g,_0x3e832d(0x1da));return _0x26ab18[_0x3e832d(0x1c0)](extractShellValue,_0x5a9498[_0x3e832d(0x1d9)](new RegExp(_0x3e832d(0x1db)+_0x1b8775+_0x3e832d(0x1ca))));}function formatCommandTarget(_0x233134){const _0x458b7e=_0x2db6,_0x391d79={'nXxrM':_0x458b7e(0x20e),'jsknS':function(_0x5a7f34,_0xcfbb49,_0x27944c){return _0x5a7f34(_0xcfbb49,_0x27944c);}};if(!_0x233134)return _0x391d79['nXxrM'];if(/^e\d+$/i['test'](_0x233134))return _0x458b7e(0x1ef)+_0x233134;return JSON[_0x458b7e(0x1df)](_0x391d79['jsknS'](truncatePreview,_0x233134,0x78));}function formatRangerwrightCliLog(_0x468d0c,_0x194865){const _0x5944ee=_0x2db6,_0x229e13={'uokWZ':function(_0x15fdce,_0x5545af,_0x1bc01e){return _0x15fdce(_0x5545af,_0x1bc01e);},'ksSji':'open\x20and\x20inspect','frOQU':'fill','ihOOz':_0x5944ee(0x1e7),'hGTvf':function(_0x1259e5,_0x1cda99,_0x5791ae){return _0x1259e5(_0x1cda99,_0x5791ae);},'eGCgW':'go\x20back\x20and\x20inspect','Vsvgi':_0x5944ee(0x20d),'GaTZc':'tracing-stop','ngKDd':'video-stop','oQOKr':'stop\x20video\x20recording'};switch(_0x194865){case _0x5944ee(0x1c9):{const _0x4f9818=_0x229e13[_0x5944ee(0x1d8)](extractFirstCommandArgument,_0x468d0c,_0x194865);return _0x4f9818?_0x5944ee(0x1fd)+_0x4f9818:_0x229e13[_0x5944ee(0x226)];}case'click-and-inspect':return _0x5944ee(0x1e6)+formatCommandTarget(extractFirstCommandArgument(_0x468d0c,_0x194865));case _0x229e13[_0x5944ee(0x1e3)]:case _0x229e13['ihOOz']:return'fill\x20'+formatCommandTarget(_0x229e13[_0x5944ee(0x219)](extractFirstCommandArgument,_0x468d0c,_0x194865));case _0x5944ee(0x1c1):return _0x229e13['eGCgW'];case _0x229e13['Vsvgi']:return'inspect\x20page';case _0x229e13[_0x5944ee(0x1f3)]:return _0x5944ee(0x1eb);case _0x229e13['ngKDd']:return _0x229e13[_0x5944ee(0x1ce)];case'close':return'close\x20browser\x20session';default:return _0x194865;}}function renderScenarioSections(_0x35ef2f){const _0x8e0b6=_0x2db6,_0x59111e={'XSBXU':_0x8e0b6(0x1f7),'UjyXF':_0x8e0b6(0x1f2),'iDnTI':_0x8e0b6(0x214),'bmKOo':'element','UJItf':function(_0x2bf098,_0x2c4a07){return _0x2bf098>_0x2c4a07;}},{checklistItem:_0x110b0f,itemFeedback:_0x5f3b98}=_0x35ef2f,_0x197bac=_0x110b0f[_0x8e0b6(0x1f1)]?_0x8e0b6(0x1e8)+_0x110b0f[_0x8e0b6(0x1f1)]:'';let _0x58275='';if(_0x5f3b98&&_0x59111e[_0x8e0b6(0x208)](_0x5f3b98['unaddressedComments'][_0x8e0b6(0x1c2)],0x0)){const _0x5b2fe8=_0x5f3b98[_0x8e0b6(0x1c4)][_0x8e0b6(0x1e0)](_0x1779be=>{const _0x3858f9=_0x8e0b6,_0x25c38f=new Date(_0x1779be['createdAt'])['toLocaleDateString'](_0x59111e[_0x3858f9(0x1f8)],{'month':_0x59111e[_0x3858f9(0x1d2)],'day':_0x59111e['iDnTI']}),_0x4d61a7=_0x1779be[_0x3858f9(0x1cc)]||_0x1779be[_0x3858f9(0x20f)]||_0x3858f9(0x1d6),_0x357827=_0x1779be[_0x3858f9(0x225)]?_0x3858f9(0x1fa)+(_0x1779be[_0x3858f9(0x225)]['selector'][_0x3858f9(0x1d7)](_0x3858f9(0x21a))['pop']()?.[_0x3858f9(0x1d7)](':')[0x0]||_0x59111e['bmKOo'])+'>\x20\x22'+(_0x1779be[_0x3858f9(0x225)][_0x3858f9(0x21e)]||'')[_0x3858f9(0x201)](0x0,0x32)+'\x22)':'';return _0x3858f9(0x21f)+_0x1779be['id']+']\x20'+_0x4d61a7+'\x20('+_0x25c38f+_0x3858f9(0x1f6)+_0x1779be[_0x3858f9(0x221)]+'\x22'+_0x357827;})[_0x8e0b6(0x1f4)]('\x0a');_0x58275='\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'+_0x5b2fe8;}const _0x56c4cb=_0x5f3b98?.[_0x8e0b6(0x1ee)]?_0x8e0b6(0x207)+_0x5f3b98['canonicalFlow']:'';return''+_0x110b0f['description']+_0x197bac+_0x58275+_0x56c4cb;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x21a4a0){const _0x5d30b7=_0x2db6,_0x512467={'ywCIe':function(_0x3c6c7d,_0x2f52d3){return _0x3c6c7d(_0x2f52d3);},'lMoEw':function(_0x663faa,_0x5151ec){return _0x663faa??_0x5151ec;},'YhJrd':_0x5d30b7(0x1fb),'MUsLq':function(_0x41d7b9,_0x230ec6){return _0x41d7b9(_0x230ec6);}},{checklistItem:_0x35f218,itemFeedback:_0x1dd611,taskDescription:_0x58535e,commandPrefix:_0x2c2168,isCdpMode:_0x31b1aa,url:_0x9dcdf8,cdpEndpoint:_0x356a8d,loginInstructions:_0x1ffd3}=_0x21a4a0,_0x48a3f3=_0x5d30b7(0x1fc),_0x215b54=_0x5d30b7(0x215),_0x4ffe03=_0x31b1aa?_0x2c2168+'\x20inspect\x20--screenshot-path\x20'+_0x512467['ywCIe'](quoteShellArg,_0x48a3f3):_0x2c2168+'\x20open-and-inspect\x20'+quoteShellArg(_0x512467['lMoEw'](_0x9dcdf8,_0x512467[_0x5d30b7(0x1c5)]))+_0x5d30b7(0x1d4)+_0x512467['MUsLq'](quoteShellArg,_0x48a3f3),_0x3c36d1=_0x31b1aa?_0x5d30b7(0x20a)+_0x356a8d+'.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.':_0x5d30b7(0x218)+_0x9dcdf8+'\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.',_0x471b13=_0x1ffd3?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x1ffd3+_0x5d30b7(0x209):'';return _0x5d30b7(0x1de)+renderScenarioSections({'checklistItem':_0x35f218,'itemFeedback':_0x1dd611})+_0x5d30b7(0x202)+_0x58535e+'\x0a\x0a'+_0x3c36d1+_0x471b13+_0x5d30b7(0x224)+_0x2c2168+_0x5d30b7(0x1dd)+_0x4ffe03+'\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'+_0x2c2168+_0x5d30b7(0x213)+quoteShellArg(_0x215b54)+'\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.';}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0xad335a){const _0x205803=_0x2db6,_0x2b9d0a={'IHIFo':_0x205803(0x1e1),'vLSWR':function(_0x1298f7,_0x5e75ab){return _0x1298f7(_0x5e75ab);},'jGgwG':function(_0x384638,_0x88f331){return _0x384638(_0x88f331);},'UhFRn':function(_0x570052,_0x38faad){return _0x570052(_0x38faad);}},_0x4a2454=_0x2b9d0a[_0x205803(0x1e5)],_0x5b9095='key_02_learn-more.png';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'+_0xad335a['commandPrefix']+_0x205803(0x1bf)+_0xad335a['commandPrefix']+_0x205803(0x21b)+_0x2b9d0a['vLSWR'](quoteShellArg,_0xad335a[_0x205803(0x1fe)])+_0x205803(0x1d4)+_0x2b9d0a['jGgwG'](quoteShellArg,_0x4a2454)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0xad335a[_0x205803(0x220)]+_0x205803(0x1ff)+_0x2b9d0a['UhFRn'](quoteShellArg,_0x5b9095)+_0x205803(0x217);}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x2b7c36){const _0x2dcc2c=_0x2db6,_0x1ccc4a=[..._0x2b7c36['keys']()][_0x2dcc2c(0x1cd)]();let _0x1247b6=0x0;for(const _0x1d2f96 of _0x2b7c36['values']()){_0x1247b6+=_0x1d2f96;}return{'cliCommandCount':_0x1247b6,'cliCommandsSeen':_0x1ccc4a,'noCliCommandsCalled':_0x1247b6===0x0};}export function createVerifyFeatureRangerwrightCliHooks(_0x26aa79){const _0x43519c=_0x2db6,_0x1e0bc2={'UVTjn':'PostToolUse','DbZOO':'Bash','QypPX':'rangerwright_cli_command','llUHL':_0x43519c(0x223),'zeFFh':'rangerwright-cli'},_0x15862f=new Map(),_0x37dd28=async _0x4f877b=>{const _0x3c530b=_0x43519c;if(_0x4f877b[_0x3c530b(0x1ec)]!==_0x1e0bc2[_0x3c530b(0x206)])return{};const _0x5cbce1=_0x4f877b;if(_0x5cbce1[_0x3c530b(0x1d5)]!==_0x1e0bc2['DbZOO'])return{};const _0x2e9cba=_0x5cbce1['tool_input'],_0x44358c=extractBashCommand(_0x2e9cba);if(!_0x44358c)return{};const _0x21bfcb=parseRangerwrightCliCommand(_0x44358c);if(!_0x21bfcb)return{};return _0x15862f['set'](_0x21bfcb,(_0x15862f[_0x3c530b(0x1f0)](_0x21bfcb)||0x0)+0x1),_0x26aa79[_0x3c530b(0x210)](_0x1e0bc2[_0x3c530b(0x204)],{'subcommand':_0x21bfcb}),_0x26aa79['trackPhaseEnd'](_0x1e0bc2['QypPX'],{'subcommand':_0x21bfcb,'commandPreview':truncatePreview(_0x44358c)}),console[_0x3c530b(0x1e4)]('[rangerwright-cli]\x20'+formatRangerwrightCliLog(_0x44358c,_0x21bfcb)),{};},_0x4b660a=async _0x514401=>{const _0x4dfd5e=_0x43519c;if(_0x514401[_0x4dfd5e(0x1ec)]!==_0x1e0bc2['llUHL'])return{};const _0x660d4a=_0x514401;if(_0x660d4a[_0x4dfd5e(0x1d5)]!=='Bash')return{};return await _0x26aa79['trackPhaseError']('rangerwright_cli_command_failure',_0x660d4a['error'],{'transport':_0x1e0bc2['zeFFh'],'toolName':_0x4dfd5e(0x20c)}),{};};return{'postToolUseHook':_0x37dd28,'postToolUseFailureHook':_0x4b660a,'commandCounts':_0x15862f};}async function runRangerwrightLifecycleCommand(_0x2a4b04){const _0x1096ce=_0x2db6,_0x4ce6bd={'PQSOY':function(_0x4b1824,_0x397a87){return _0x4b1824??_0x397a87;},'KTOZV':function(_0x589f54,_0x17b0b1,_0x120dcb){return _0x589f54(_0x17b0b1,_0x120dcb);}},{options:_0x5c2d43,commandArgs:_0x5877e5,env:_0x5f31e8,telemetry:_0xfffe6b,phase:_0x272a71,metadata:_0x3969c1,timeoutMs:_0x69bfe8}=_0x2a4b04;_0xfffe6b[_0x1096ce(0x210)](_0x272a71,_0x3969c1);try{const _0x435d87=await runRangerwrightCliCommand({..._0x5c2d43,'commandArgs':_0x5877e5,'cwd':process[_0x1096ce(0x1c3)](),'env':_0x5f31e8,'timeoutMs':_0x4ce6bd['PQSOY'](_0x69bfe8,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0xfffe6b['trackPhaseEnd'](_0x272a71,{..._0x3969c1,'subcommand':_0x435d87[_0x1096ce(0x205)]['subcommand'],'stdoutPreview':truncatePreview(_0x435d87['stdout'],0x7d0),'stderrPreview':_0x4ce6bd[_0x1096ce(0x1dc)](truncatePreview,_0x435d87[_0x1096ce(0x216)],0x7d0)});}catch(_0x56b8da){await _0xfffe6b[_0x1096ce(0x1c8)](_0x272a71,_0x56b8da,_0x3969c1);throw _0x56b8da;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x1513ca){const _0x49457b=_0x2db6,_0xa5f029={'rNJQk':_0x49457b(0x200),'sgqXQ':_0x49457b(0x1c7),'MIPgB':'close','AYQwX':function(_0x252046,_0xe18cb1){return _0x252046(_0xe18cb1);}},{telemetry:_0x38441c,rangerwrightOptions:_0x34dcd9,env:_0x5394b3,transportMetadata:_0x1ced04}=_0x1513ca,_0x1aedbf=[{'phase':_0xa5f029[_0x49457b(0x212)],'commandArgs':['tracing-stop']},{'phase':_0x49457b(0x1e9),'commandArgs':[_0x49457b(0x21c)]},{'phase':_0xa5f029['sgqXQ'],'commandArgs':[_0xa5f029[_0x49457b(0x1f5)]]}];for(const _0x374b5e of _0x1aedbf){try{await _0xa5f029[_0x49457b(0x1f9)](runRangerwrightLifecycleCommand,{'options':_0x34dcd9,'commandArgs':[..._0x374b5e[_0x49457b(0x20b)]],'env':_0x5394b3,'telemetry':_0x38441c,'phase':_0x374b5e[_0x49457b(0x222)],'metadata':_0x1ced04});}catch{}}}
|