@ranger-testing/ranger-cli 3.1.5-alpha.aebd071-49 → 3.1.5
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 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/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/scenarioOriginCheck.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.js +1 -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 +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
function _0x3b00(_0x17533c,_0x1d7681){_0x17533c=_0x17533c-0x173;const _0x5477cd=_0x5477();let _0x3b00bf=_0x5477cd[_0x17533c];return _0x3b00bf;}(function(_0x2a576a,_0x3c4d87){const _0x16071b=_0x3b00,_0x300fa4=_0x2a576a();while(!![]){try{const _0x4e7f63=-parseInt(_0x16071b(0x1c1))/0x1*(parseInt(_0x16071b(0x1e1))/0x2)+parseInt(_0x16071b(0x1f5))/0x3*(parseInt(_0x16071b(0x1e7))/0x4)+-parseInt(_0x16071b(0x1c3))/0x5*(parseInt(_0x16071b(0x186))/0x6)+-parseInt(_0x16071b(0x1a2))/0x7+-parseInt(_0x16071b(0x1d6))/0x8+-parseInt(_0x16071b(0x1f2))/0x9+parseInt(_0x16071b(0x17d))/0xa;if(_0x4e7f63===_0x3c4d87)break;else _0x300fa4['push'](_0x300fa4['shift']());}catch(_0x4690cd){_0x300fa4['push'](_0x300fa4['shift']());}}}(_0x5477,0x518d2));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(_0x42ec37,_0x468626=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x23807f=_0x3b00;return _0x42ec37[_0x23807f(0x1a9)]>_0x468626?_0x42ec37['slice'](0x0,_0x468626)+_0x23807f(0x183):_0x42ec37;}function buildCliArtifactPath(_0x18b798,_0x189e64){const _0x5e21fc={'lZWSw':function(_0xd1e8eb,_0x5aa69,_0x3ab7c9){return _0xd1e8eb(_0x5aa69,_0x3ab7c9);}};return _0x5e21fc['lZWSw'](join,_0x18b798,_0x189e64);}function _0x5477(){const _0x4b7ade=['log','`\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','DEBUG','KETbQ','trackPhaseEnd','notes','tool_name','10lVSXaW','Reviewer','29395GydXiq','02_learn-more.yml','join','ooSEq','\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','invocation','[ranger-verification-agent]\x20','VorNd','authorName','fcPPM','rtqye','stop\x20video\x20recording','test','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','capture\x20step\x20`','capture\x20screenshot','press','KCJLl','\x20tracing-start`,\x20then\x20`','1775304jLrUEn','xNsIw','\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-start','00_mozilla-homepage.yml','raIcO','\x20snapshot\x20--filename\x20','playwright_cli_tracing_stop','stdout','02_button-clicked.png','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','16360OoPhjs','`\x0a9.\x20Run\x20`','tracing-stop','\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.','pZIPz','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','1379244EHaNyw','video-start','\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','session-recording.webm','-\x20[','sort','\x0a\x0a##\x20Additional\x20Notes\x0a','playwright_cli_video_stop','push','soQRa','\x20tracing-start`\x0a3.\x20Run\x20`','494928QbwmLE','trim','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','3YSvrxS','createdAt','video-stop','\x22,\x20\x22','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','click\x20','\x0a\x0a1.\x20Run\x20`','gYrEn','fkYlK','gqOKg','mtimeMs','cwd','01_initial-state.png','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','description','YfMtZ','NPIzC','PostToolUse','key_03_success-state.png','slice','\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','mwsPB','14010410KvwGHC','hook_event_name','tool_input','stop\x20tracing','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','...','canonicalFlow','key_04_success-state.png','618vHRVvQ','capture\x20snapshot\x20`','match','tab-new','RMXWy','JgpVW','aQzIZ','03_result-visible.png','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','unaddressedComments','\x20(on\x20element:\x20<','playwright_cli_close','click','\x20screenshot\x20--filename\x20','run\x20custom\x20Playwright\x20code','01_initial.yml','target','gPeDb','press\x20','phase','start\x20video\x20recording','trackPhaseStart','domRef','**\x20(','start\x20tracing','\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','close','eOfRl','3133032HSFwYN','stderr','env','open\x20','KOOvu','error','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','length','01_mozilla-homepage.png','name','dsgzg','Bash','split','vlpOJ','replace','open\x20new\x20tab\x20','pop','run-code','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','kgPxo','tab-select','oOxrE','tool_call'];_0x5477=function(){return _0x4b7ade;};return _0x5477();}function toStepDisplayName(_0x4bb1ab){const _0x1381fe=_0x3b00,_0x5e4925=basename(_0x4bb1ab)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x1381fe(0x1b0)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x5e4925,'isKeyStep':/^key_/i[_0x1381fe(0x1cf)](basename(_0x4bb1ab))};}function extractShellValue(_0x343e5b){if(!_0x343e5b)return null;return _0x343e5b[0x1]??_0x343e5b[0x2]??_0x343e5b[0x3]??null;}function extractFilenameOption(_0x4d5d1b){const _0x27e342=_0x3b00,_0x5e7328={'rpzav':function(_0x495681,_0x31be0a){return _0x495681(_0x31be0a);}};return _0x5e7328['rpzav'](extractShellValue,_0x4d5d1b[_0x27e342(0x188)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x1a463d,_0x1eff9f){const _0x39d26c=_0x3b00,_0x5789ba={'soQRa':'\x5c$&','KUXfZ':function(_0x45736f,_0x39060c){return _0x45736f(_0x39060c);}},_0x1cf996=_0x1eff9f['replace'](/[.*+?^${}()|[\]\\]/g,_0x5789ba[_0x39d26c(0x1f0)]);return _0x5789ba['KUXfZ'](extractShellValue,_0x1a463d[_0x39d26c(0x188)](new RegExp('(?:^|\x5cs)'+_0x1cf996+_0x39d26c(0x1f9))));}function formatCommandTarget(_0x5e4a42){const _0xa0c47d=_0x3b00,_0x4bbe7f={'CFFyR':function(_0x9a285e,_0x2143bd,_0x50ceec){return _0x9a285e(_0x2143bd,_0x50ceec);}};if(!_0x5e4a42)return _0xa0c47d(0x196);if(/^e\d+$/i[_0xa0c47d(0x1cf)](_0x5e4a42))return'ref\x20'+_0x5e4a42;return JSON['stringify'](_0x4bbe7f['CFFyR'](truncatePreview,_0x5e4a42,0x78));}function formatPlaywrightCliLog(_0x4daae4,_0x3b6b70){const _0x2b49cb=_0x3b00,_0x5dcc14={'KOOvu':function(_0x2f87ac,_0x51fad6,_0x26c4b1){return _0x2f87ac(_0x51fad6,_0x26c4b1);},'fiqlF':'open\x20browser','KCJLl':_0x2b49cb(0x1d9),'bfRej':_0x2b49cb(0x19e),'BODWE':_0x2b49cb(0x1e3),'JoPBv':_0x2b49cb(0x180),'RMXWy':_0x2b49cb(0x1e8),'SkxiE':_0x2b49cb(0x19a),'KrOOC':_0x2b49cb(0x1f7),'sSdeR':'snapshot','vTutP':'capture\x20snapshot','JIbmv':function(_0x33d440,_0x4df034){return _0x33d440(_0x4df034);},'BFKGa':_0x2b49cb(0x192),'eOfRl':function(_0x1dc4a8,_0x37bdca,_0x174011){return _0x1dc4a8(_0x37bdca,_0x174011);},'QykFU':_0x2b49cb(0x1d3),'VorNd':_0x2b49cb(0x1b3),'yDBSO':'select\x20tab'};switch(_0x3b6b70){case'open':{const _0x213298=_0x5dcc14[_0x2b49cb(0x1a6)](extractFirstCommandArgument,_0x4daae4,_0x3b6b70);return _0x213298?_0x2b49cb(0x1a5)+_0x213298:_0x5dcc14['fiqlF'];}case _0x5dcc14[_0x2b49cb(0x1d4)]:return _0x5dcc14['bfRej'];case _0x5dcc14['BODWE']:return _0x5dcc14['JoPBv'];case _0x5dcc14[_0x2b49cb(0x18a)]:return _0x5dcc14['SkxiE'];case _0x5dcc14['KrOOC']:return _0x2b49cb(0x1ce);case _0x5dcc14['sSdeR']:{const _0x296f26=extractFilenameOption(_0x4daae4);if(!_0x296f26)return _0x5dcc14['vTutP'];const {name:_0x474e2b}=toStepDisplayName(_0x296f26);return _0x2b49cb(0x187)+_0x474e2b+'`';}case'screenshot':{const _0x43e4ed=_0x5dcc14['JIbmv'](extractFilenameOption,_0x4daae4);if(!_0x43e4ed)return _0x2b49cb(0x1d2);const {name:_0x4844f4,isKeyStep:_0x5b6467}=toStepDisplayName(_0x43e4ed);return _0x5b6467?'capture\x20key\x20step\x20`'+_0x4844f4+'`':_0x2b49cb(0x1d1)+_0x4844f4+'`';}case _0x5dcc14['BFKGa']:return _0x2b49cb(0x1fa)+_0x5dcc14['JIbmv'](formatCommandTarget,extractFirstCommandArgument(_0x4daae4,_0x3b6b70));case'check':return'check\x20'+formatCommandTarget(_0x5dcc14[_0x2b49cb(0x1a1)](extractFirstCommandArgument,_0x4daae4,_0x3b6b70));case'fill':return'fill\x20'+_0x5dcc14['JIbmv'](formatCommandTarget,_0x5dcc14[_0x2b49cb(0x1a6)](extractFirstCommandArgument,_0x4daae4,_0x3b6b70));case _0x5dcc14['QykFU']:return _0x2b49cb(0x198)+formatCommandTarget(extractFirstCommandArgument(_0x4daae4,_0x3b6b70));case _0x5dcc14[_0x2b49cb(0x1ca)]:return _0x2b49cb(0x194);case _0x2b49cb(0x189):{const _0x35f42c=extractFirstCommandArgument(_0x4daae4,_0x3b6b70);return _0x35f42c?_0x2b49cb(0x1b1)+_0x35f42c:'open\x20new\x20tab';}case _0x2b49cb(0x1b7):{const _0x502824=_0x5dcc14[_0x2b49cb(0x1a6)](extractFirstCommandArgument,_0x4daae4,_0x3b6b70);return _0x502824?'select\x20tab\x20'+_0x502824:_0x5dcc14['yDBSO'];}default:return _0x3b6b70;}}function extractPlaywrightCliToolDescription(_0x5914ec){const _0x442044=_0x3b00,_0x4a5e48={'gYrEn':function(_0x38fe8b,_0xf24de6){return _0x38fe8b!==_0xf24de6;},'xLixO':function(_0x59baf6,_0x408381){return _0x59baf6>_0x408381;}},_0x38759f=_0x5914ec[_0x442044(0x174)];if(_0x4a5e48[_0x442044(0x1fc)](typeof _0x38759f,'string'))return null;const _0x453837=_0x38759f[_0x442044(0x1f3)]()['replace'](/\s+/g,'\x20');return _0x4a5e48['xLixO'](_0x453837[_0x442044(0x1a9)],0x0)?_0x453837:null;}export function formatPlaywrightCliConsoleLogMessage(_0x3fd18a,_0x37df16,_0x380800){const _0x1cd46f=_0x3b00,_0xb4f9f4={'RAVaK':function(_0x408252,_0x160b18){return _0x408252(_0x160b18);}},_0x433829=formatPlaywrightCliLog(_0x37df16,_0x380800),_0x5abf6d=_0xb4f9f4['RAVaK'](extractPlaywrightCliToolDescription,_0x3fd18a);if(!_0x5abf6d)return'[playwright-cli]\x20'+_0x433829;if(process[_0x1cd46f(0x1a4)][_0x1cd46f(0x1bc)])return _0x1cd46f(0x1c9)+_0x5abf6d+'\x20('+_0x433829+')';return _0x1cd46f(0x1c9)+_0x5abf6d;}export function buildVerifyFeatureCliDebugPrompt(_0x7c1adf,_0x2db182){const _0x34a092=_0x3b00,_0xd31c64={'jkFtc':_0x34a092(0x1da),'hGCGJ':function(_0x4e6f3e,_0x3ccd59,_0x308e4e){return _0x4e6f3e(_0x3ccd59,_0x308e4e);},'dsgzg':_0x34a092(0x1aa),'oOxrE':function(_0x704a71,_0x4fe0ba,_0x12df10){return _0x704a71(_0x4fe0ba,_0x12df10);},'yiHCB':'03_learn-more.png','gPeDb':function(_0x342bf4,_0x21987b){return _0x342bf4(_0x21987b);},'seBPQ':function(_0x378d29,_0x257dd){return _0x378d29(_0x257dd);}},_0x1cddbe=buildCliArtifactPath(_0x2db182,_0xd31c64['jkFtc']),_0x18f0c1=_0xd31c64['hGCGJ'](buildCliArtifactPath,_0x2db182,_0xd31c64[_0x34a092(0x1ac)]),_0x125907=buildCliArtifactPath(_0x2db182,_0x34a092(0x1c4)),_0x499d8a=_0xd31c64[_0x34a092(0x1b8)](buildCliArtifactPath,_0x2db182,_0xd31c64['yiHCB']),_0xbad031=_0xd31c64[_0x34a092(0x197)](quoteShellArg,_0x1cddbe),_0x10edf7=quoteShellArg(_0x18f0c1),_0x82f6e5=quoteShellArg(_0x125907),_0x544407=_0xd31c64['seBPQ'](quoteShellArg,_0x499d8a);return _0x34a092(0x17b)+_0x7c1adf+_0x34a092(0x1fb)+_0x7c1adf+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x7c1adf+_0x34a092(0x1f1)+_0x7c1adf+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x2db182+_0x34a092(0x1f4)+_0x7c1adf+_0x34a092(0x1dc)+_0xbad031+_0x34a092(0x173)+_0x7c1adf+_0x34a092(0x193)+_0x10edf7+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x7c1adf+_0x34a092(0x1dc)+_0x82f6e5+_0x34a092(0x1e2)+_0x7c1adf+_0x34a092(0x193)+_0x544407+_0x34a092(0x1b4);}export function buildVerifyFeatureCliPrompt(_0x1945ec){const _0x2faa39=_0x3b00,_0x221791={'KETbQ':'en-US','rtqye':function(_0x546170,_0x558a32,_0x42c951){return _0x546170(_0x558a32,_0x42c951);},'QPGSo':_0x2faa39(0x195),'MyqxO':function(_0x4ced6d,_0x1a9aa3){return _0x4ced6d(_0x1a9aa3);},'lxqvN':function(_0x795b01,_0xa3818f){return _0x795b01(_0xa3818f);},'deYhs':function(_0x1a2f42,_0x89a7df){return _0x1a2f42>_0x89a7df;},'pZIPz':function(_0x56351f,_0x6cacf4){return _0x56351f(_0x6cacf4);},'jwkhg':_0x2faa39(0x1df),'QypRK':_0x2faa39(0x185)},{checklistItem:_0x326541,itemFeedback:_0x11b9ae,taskDescription:_0x5297da,cliCommandPrefix:_0x25c6a5,cliArtifactDir:_0x18622a,isCdpMode:_0x24cfad,url:_0x238562,cdpEndpoint:_0x8c9574,loginInstructions:_0xee8d85}=_0x1945ec,_0x211651=_0x221791['rtqye'](buildCliArtifactPath,_0x18622a,_0x221791['QPGSo']),_0x2a9db9=buildCliArtifactPath(_0x18622a,'02_state.yml'),_0x270936=_0x221791['rtqye'](buildCliArtifactPath,_0x18622a,_0x2faa39(0x178)),_0x108a86=_0x221791[_0x2faa39(0x1cd)](buildCliArtifactPath,_0x18622a,_0x2faa39(0x201)),_0x42aa7f=quoteShellArg(_0x211651),_0x30b698=_0x221791['MyqxO'](quoteShellArg,_0x2a9db9),_0x1c6c61=quoteShellArg(_0x270936),_0x38e8ab=_0x221791['lxqvN'](quoteShellArg,_0x108a86),_0x2508d7=_0x326541[_0x2faa39(0x1bf)]?_0x2faa39(0x1ed)+_0x326541['notes']:'';let _0x3bf24a='';if(_0x11b9ae&&_0x221791['deYhs'](_0x11b9ae[_0x2faa39(0x18f)][_0x2faa39(0x1a9)],0x0)){const _0x40ca00=_0x11b9ae[_0x2faa39(0x18f)]['map'](_0x297a6c=>{const _0x1d8b62=_0x2faa39,_0x173180=new Date(_0x297a6c[_0x1d8b62(0x1f6)])['toLocaleDateString'](_0x221791[_0x1d8b62(0x1bd)],{'month':'short','day':'numeric'}),_0x1216bf=_0x297a6c[_0x1d8b62(0x1cb)]||_0x297a6c['authorEmail']||_0x1d8b62(0x1c2),_0x748b9e=_0x297a6c[_0x1d8b62(0x19c)]?_0x1d8b62(0x190)+(_0x297a6c['domRef']['selector']['split']('\x20>\x20')[_0x1d8b62(0x1b2)]()?.[_0x1d8b62(0x1ae)](':')[0x0]||'element')+'>\x20\x22'+(_0x297a6c['domRef']['textContent']||'')[_0x1d8b62(0x179)](0x0,0x32)+'\x22)':'';return _0x1d8b62(0x1eb)+_0x297a6c['id']+']\x20**'+_0x1216bf+_0x1d8b62(0x19d)+_0x173180+'):\x20\x22'+_0x297a6c['content']+'\x22'+_0x748b9e;})[_0x2faa39(0x1c5)]('\x0a');_0x3bf24a=_0x2faa39(0x19f)+_0x40ca00;}const _0x3df124=_0x11b9ae?.[_0x2faa39(0x184)]?_0x2faa39(0x1b5)+_0x11b9ae['canonicalFlow']:'',_0xbfd8e4=_0x24cfad?_0x2faa39(0x1e0)+_0x8c9574+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x238562+_0x2faa39(0x17a),_0x4903cd=_0x238562?_0x221791[_0x2faa39(0x1e5)](quoteShellArg,_0x238562):'',_0x5b7955=_0x24cfad?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x25c6a5+'\x20open`,\x20then\x20`'+_0x25c6a5+'\x20tracing-start`,\x20then\x20`'+_0x25c6a5+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x18622a+_0x2faa39(0x1a8)+_0x25c6a5+_0x2faa39(0x1dc)+_0x42aa7f+'`\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`'+_0x25c6a5+'\x20screenshot\x20--filename\x20'+_0x38e8ab+_0x2faa39(0x182)+_0x25c6a5+_0x2faa39(0x18e):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x25c6a5+'\x20open\x20'+_0x4903cd+'`,\x20then\x20`'+_0x25c6a5+_0x2faa39(0x1d5)+_0x25c6a5+_0x2faa39(0x1e6)+_0x18622a+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x25c6a5+'\x20snapshot\x20--filename\x20'+_0x42aa7f+'`\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`'+_0x25c6a5+_0x2faa39(0x193)+_0x38e8ab+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x25c6a5+'\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',_0x27eb6e=_0x24cfad?'\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-\x20Login/sign-in/auth\x20pages\x20when\x20no\x20Authentication\x20section\x20is\x20present\x20in\x20this\x20prompt\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0x580046=_0xee8d85?_0x2faa39(0x181)+_0xee8d85+_0x2faa39(0x1d8):'';return _0x2faa39(0x1d0)+_0x326541[_0x2faa39(0x174)]+_0x2508d7+_0x3bf24a+_0x3df124+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x5297da+'\x0a\x0a'+_0xbfd8e4+_0x580046+'\x0a\x0a'+_0x5b7955+_0x2faa39(0x1e9)+_0x25c6a5+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x18622a+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x30b698+_0x2faa39(0x1bb)+_0x1c6c61+'`\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`'+_0x18622a+'`:\x20\x22'+_0x108a86+_0x2faa39(0x1f8)+_0x221791[_0x2faa39(0x1cd)](buildCliArtifactPath,_0x18622a,_0x221791['jwkhg'])+_0x2faa39(0x1f8)+buildCliArtifactPath(_0x18622a,_0x2faa39(0x18d))+_0x2faa39(0x1c7)+_0x221791[_0x2faa39(0x1cd)](buildCliArtifactPath,_0x18622a,_0x221791['QypRK'])+'\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'+_0x27eb6e+_0x2faa39(0x1e4);}export function summarizeVerifyFeatureCliCommandAvailability(_0x428944){const _0x52c960=[..._0x428944['keys']()]['sort']();let _0x5a872a=0x0;for(const _0x47eeb5 of _0x428944['values']()){_0x5a872a+=_0x47eeb5;}return{'cliCommandCount':_0x5a872a,'cliCommandsSeen':_0x52c960,'noCliCommandsCalled':_0x5a872a===0x0};}export function createVerifyFeatureCliHooks(_0x4b161c){const _0x1eb81f={'NPIzC':'Bash','lJdWx':'playwright-cli','JgpVW':'tool_call','aQzIZ':function(_0x5c8f4a,_0x1ed0f9){return _0x5c8f4a(_0x1ed0f9);},'UjSlB':function(_0x58afe6,_0x14b7bd){return _0x58afe6!==_0x14b7bd;},'IOrSa':'snapshot','fkYlK':function(_0x158cfd,_0xde902,_0x57919b,_0x19461c){return _0x158cfd(_0xde902,_0x57919b,_0x19461c);},'kgPxo':function(_0x3e0335,_0x1b0cdf){return _0x3e0335!==_0x1b0cdf;}},_0x3d1d04=new Map(),_0x3cebab=async _0x4a00d5=>{const _0x4c03fc=_0x3b00;if(_0x4a00d5[_0x4c03fc(0x17e)]!==_0x4c03fc(0x177))return{};const _0x5020ea=_0x4a00d5;if(_0x5020ea['tool_name']!==_0x1eb81f[_0x4c03fc(0x176)])return{};const _0x46946e=_0x5020ea[_0x4c03fc(0x17f)],_0x2a185f=extractBashCommand(_0x46946e);if(!_0x2a185f)return{};const _0x300eef=parsePlaywrightCliCommand(_0x2a185f);if(!_0x300eef)return{};return _0x3d1d04['set'](_0x300eef,(_0x3d1d04['get'](_0x300eef)||0x0)+0x1),_0x4b161c[_0x4c03fc(0x19b)](_0x4c03fc(0x1b9),{'transport':_0x1eb81f['lJdWx'],'toolName':_0x300eef}),_0x4b161c[_0x4c03fc(0x1be)](_0x1eb81f[_0x4c03fc(0x18b)],{'transport':'playwright-cli','toolName':_0x300eef,'bashCommandPreview':_0x1eb81f[_0x4c03fc(0x18c)](truncatePreview,_0x2a185f)}),_0x1eb81f['UjSlB'](_0x300eef,_0x1eb81f['IOrSa'])&&console[_0x4c03fc(0x1ba)](_0x1eb81f[_0x4c03fc(0x1fd)](formatPlaywrightCliConsoleLogMessage,_0x46946e,_0x2a185f,_0x300eef)),{};},_0x52ce90=async _0x57f2bd=>{const _0x37c0d8=_0x3b00;if(_0x1eb81f[_0x37c0d8(0x1b6)](_0x57f2bd['hook_event_name'],'PostToolUseFailure'))return{};const _0x37924e=_0x57f2bd;if(_0x1eb81f[_0x37c0d8(0x1b6)](_0x37924e[_0x37c0d8(0x1c0)],_0x37c0d8(0x1ad)))return{};return await _0x4b161c['trackPhaseError']('tool_failure',_0x37924e[_0x37c0d8(0x1a7)],{'transport':'playwright-cli','toolName':_0x1eb81f[_0x37c0d8(0x176)]}),{};};return{'postToolUseHook':_0x3cebab,'postToolUseFailureHook':_0x52ce90,'commandCounts':_0x3d1d04};}async function runPlaywrightCliLifecycleCommand(_0x36c931){const _0x459ff9=_0x3b00,_0x249326={'hRjiK':function(_0x445592,_0xa9472a){return _0x445592(_0xa9472a);},'fcPPM':function(_0x50cbd1,_0x69b1f6,_0x4790fb){return _0x50cbd1(_0x69b1f6,_0x4790fb);}},{sessionId:_0x277f0e,configPath:_0x52e80a,commandArgs:_0x3c9a59,env:_0x5e97b5,telemetry:_0x52bfd6,phase:_0x65d895,metadata:_0x4c08c6,timeoutMs:_0x118fe1}=_0x36c931;_0x52bfd6[_0x459ff9(0x19b)](_0x65d895,_0x4c08c6);try{const _0x2afebf=await _0x249326['hRjiK'](runPlaywrightCliCommand,{'sessionId':_0x277f0e,'configPath':_0x52e80a,'commandArgs':_0x3c9a59,'cwd':process[_0x459ff9(0x200)](),'env':_0x5e97b5,'timeoutMs':_0x118fe1??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x52bfd6['trackPhaseEnd'](_0x65d895,{..._0x4c08c6,'subcommand':_0x2afebf[_0x459ff9(0x1c8)]['subcommand'],'stdoutPreview':truncatePreview(_0x2afebf[_0x459ff9(0x1de)],0x7d0),'stderrPreview':_0x249326[_0x459ff9(0x1cc)](truncatePreview,_0x2afebf[_0x459ff9(0x1a3)],0x7d0)});}catch(_0x627630){await _0x52bfd6['trackPhaseError'](_0x65d895,_0x627630,_0x4c08c6);throw _0x627630;}}export async function finalizeVerifyFeatureCliSession(_0x492eea){const _0x5cb39e=_0x3b00,_0x368e64={'LnEON':'video-stop','mwsPB':_0x5cb39e(0x1ea),'QkKJF':_0x5cb39e(0x191),'vlpOJ':_0x5cb39e(0x1a0),'mBWTG':function(_0x3afe44,_0x5442f4){return _0x3afe44(_0x5442f4);}},{telemetry:_0x525384,sessionId:_0x340e03,configPath:_0x487d61,cliArtifactDir:_0x2928c9,env:_0xe44b8a,transportMetadata:_0x3bbdc2}=_0x492eea,_0x47ac48=[{'phase':_0x5cb39e(0x1dd),'commandArgs':['tracing-stop']},{'phase':_0x5cb39e(0x1ee),'commandArgs':[_0x368e64['LnEON'],'--filename='+buildCliArtifactPath(_0x2928c9,_0x368e64[_0x5cb39e(0x17c)])]},{'phase':_0x368e64['QkKJF'],'commandArgs':[_0x368e64[_0x5cb39e(0x1af)]]}];for(const _0x152663 of _0x47ac48){try{await _0x368e64['mBWTG'](runPlaywrightCliLifecycleCommand,{'sessionId':_0x340e03,'configPath':_0x487d61,'commandArgs':[..._0x152663['commandArgs']],'env':_0xe44b8a,'telemetry':_0x525384,'phase':_0x152663[_0x5cb39e(0x199)],'metadata':_0x3bbdc2});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x4061ae){const _0x7e33c0=_0x3b00,_0x30ed03={'ooSEq':'trace.zip','rEoBg':function(_0x58cf40,_0xb84d02,_0x286cf4){return _0x58cf40(_0xb84d02,_0x286cf4);}},_0x23aedd=[_0x30ed03[_0x7e33c0(0x1c6)],'trace.trace.zip'];for(const _0x286342 of _0x23aedd){const _0x1b26a7=_0x30ed03['rEoBg'](join,_0x4061ae,_0x286342);try{return{'buffer':await readFile(_0x1b26a7),'source':_0x1b26a7};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x30596e){const _0x57f003=_0x3b00,_0x52d18d={'YfMtZ':function(_0x59f25d,_0x819995,_0x58633b){return _0x59f25d(_0x819995,_0x58633b);},'gGOhn':function(_0x11d91c,_0x2c38f3,_0x4b3ba4){return _0x11d91c(_0x2c38f3,_0x4b3ba4);},'xNsIw':function(_0x272878,_0x3a9a62){return _0x272878(_0x3a9a62);},'gqOKg':function(_0x499264,_0x29a65b){return _0x499264===_0x29a65b;},'raIcO':function(_0x385aa5,_0x44cdd4,_0x40ae40){return _0x385aa5(_0x44cdd4,_0x40ae40);}},{cwd:_0x51ef7a,cliArtifactDir:_0x45607f,startTime:_0xe60865}=_0x30596e,_0xa3c60e=[];await _0x52d18d['YfMtZ'](mkdir,_0x45607f,{'recursive':!![]});const _0x450d63=await readdir(_0x51ef7a,{'withFileTypes':!![]});for(const _0x23db14 of _0x450d63){if(!_0x23db14['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x57f003(0x1cf)](_0x23db14['name']))continue;const _0x2fa6cf=_0x52d18d['gGOhn'](join,_0x51ef7a,_0x23db14[_0x57f003(0x1ab)]),_0x2231de=await _0x52d18d[_0x57f003(0x1d7)](stat,_0x2fa6cf);if(_0x2231de[_0x57f003(0x1ff)]+0x7d0<_0xe60865)continue;const _0x133366=_0x52d18d[_0x57f003(0x175)](buildCliArtifactPath,_0x45607f,_0x23db14['name']);if(_0x52d18d[_0x57f003(0x1fe)](_0x2fa6cf,_0x133366))continue;await _0x52d18d[_0x57f003(0x1db)](rename,_0x2fa6cf,_0x133366),_0xa3c60e[_0x57f003(0x1ef)](_0x23db14[_0x57f003(0x1ab)]);}return _0xa3c60e[_0x57f003(0x1ec)]();}
|
|
1
|
+
(function(_0x2b6526,_0x1e11f2){const _0x29a8d4=_0x260d,_0x4d7801=_0x2b6526();while(!![]){try{const _0x392aac=-parseInt(_0x29a8d4(0xb2))/0x1+-parseInt(_0x29a8d4(0x9f))/0x2*(-parseInt(_0x29a8d4(0xd9))/0x3)+parseInt(_0x29a8d4(0xe3))/0x4*(parseInt(_0x29a8d4(0xac))/0x5)+parseInt(_0x29a8d4(0xaf))/0x6*(parseInt(_0x29a8d4(0xc5))/0x7)+parseInt(_0x29a8d4(0xf6))/0x8+-parseInt(_0x29a8d4(0x10b))/0x9+parseInt(_0x29a8d4(0xe6))/0xa;if(_0x392aac===_0x1e11f2)break;else _0x4d7801['push'](_0x4d7801['shift']());}catch(_0x2e367e){_0x4d7801['push'](_0x4d7801['shift']());}}}(_0x44a8,0x6cfa1));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(_0x4f9b6d,_0x3f6837=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x2813b6=_0x260d,_0x4751d3={'bbExS':function(_0x2d8b93,_0x10ca7a){return _0x2d8b93>_0x10ca7a;},'jnbrr':'...'};return _0x4751d3['bbExS'](_0x4f9b6d['length'],_0x3f6837)?_0x4f9b6d['slice'](0x0,_0x3f6837)+_0x4751d3[_0x2813b6(0xd3)]:_0x4f9b6d;}function buildCliArtifactPath(_0x5a4f37,_0x4c8b1b){return join(_0x5a4f37,_0x4c8b1b);}function toStepDisplayName(_0x3beec5){const _0x11f940=_0x260d,_0x40a37d={'ncTFC':function(_0x23bf31,_0x34a143){return _0x23bf31(_0x34a143);}},_0x415b9c=basename(_0x3beec5)[_0x11f940(0xf3)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x11f940(0xf3)](/-/g,'\x20');return{'name':_0x415b9c,'isKeyStep':/^key_/i['test'](_0x40a37d[_0x11f940(0xec)](basename,_0x3beec5))};}function _0x260d(_0x9024c3,_0x316c11){_0x9024c3=_0x9024c3-0x81;const _0x44a845=_0x44a8();let _0x260d12=_0x44a845[_0x9024c3];return _0x260d12;}function extractShellValue(_0x178a71){if(!_0x178a71)return null;return _0x178a71[0x1]??_0x178a71[0x2]??_0x178a71[0x3]??null;}function extractFilenameOption(_0x36e17c){const _0x5b8b00=_0x260d;return extractShellValue(_0x36e17c[_0x5b8b00(0xc7)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x3fe9bc,_0x52c4c0){const _0x1c170a=_0x260d,_0x138938={'DWHvM':'\x5c$&'},_0x40b7ed=_0x52c4c0['replace'](/[.*+?^${}()|[\]\\]/g,_0x138938[_0x1c170a(0xa2)]);return extractShellValue(_0x3fe9bc[_0x1c170a(0xc7)](new RegExp('(?:^|\x5cs)'+_0x40b7ed+_0x1c170a(0x89))));}function formatCommandTarget(_0x1be5fd){const _0x389f1c=_0x260d;if(!_0x1be5fd)return _0x389f1c(0xc1);if(/^e\d+$/i['test'](_0x1be5fd))return _0x389f1c(0xfb)+_0x1be5fd;return JSON[_0x389f1c(0x8c)](truncatePreview(_0x1be5fd,0x78));}function formatPlaywrightCliLog(_0x4df13c,_0xa5389e){const _0x98e559=_0x260d,_0x50def1={'xyxeS':'open','otRHO':_0x98e559(0xa4),'NjrMs':'video-stop','BpoZQ':_0x98e559(0x90),'jzsva':'snapshot','hNhbU':function(_0x13feba,_0x95ed7e){return _0x13feba(_0x95ed7e);},'PWZGI':function(_0x5234b1,_0x32e0a7,_0x59b2ac){return _0x5234b1(_0x32e0a7,_0x59b2ac);},'sXqXG':function(_0x39b0fa,_0x335e34,_0x17f8a0){return _0x39b0fa(_0x335e34,_0x17f8a0);},'CBSRo':function(_0x217177,_0x2a71d8,_0x464a90){return _0x217177(_0x2a71d8,_0x464a90);},'RbLbS':function(_0x9031c5,_0x6eccd8){return _0x9031c5(_0x6eccd8);},'jZtdo':function(_0x39d266,_0x4281bf,_0x9ebbab){return _0x39d266(_0x4281bf,_0x9ebbab);},'IJbhi':'run\x20custom\x20Playwright\x20code','AypgG':'tab-select','rzIUt':function(_0x3c00ac,_0x30e5c4,_0x50eb7f){return _0x3c00ac(_0x30e5c4,_0x50eb7f);}};switch(_0xa5389e){case _0x50def1[_0x98e559(0x109)]:{const _0x35dc8e=extractFirstCommandArgument(_0x4df13c,_0xa5389e);return _0x35dc8e?'open\x20'+_0x35dc8e:'open\x20browser';}case _0x50def1['otRHO']:return _0x98e559(0xa8);case _0x98e559(0xed):return'stop\x20tracing';case'video-start':return _0x98e559(0xf1);case _0x50def1['NjrMs']:return _0x50def1[_0x98e559(0xd7)];case _0x50def1[_0x98e559(0xfa)]:{const _0x419ed7=extractFilenameOption(_0x4df13c);if(!_0x419ed7)return'capture\x20snapshot';const {name:_0x140371}=toStepDisplayName(_0x419ed7);return _0x98e559(0xd8)+_0x140371+'`';}case _0x98e559(0xbc):{const _0x303892=_0x50def1[_0x98e559(0xd0)](extractFilenameOption,_0x4df13c);if(!_0x303892)return'capture\x20screenshot';const {name:_0x311a34,isKeyStep:_0x334a49}=toStepDisplayName(_0x303892);return _0x334a49?'capture\x20key\x20step\x20`'+_0x311a34+'`':_0x98e559(0x115)+_0x311a34+'`';}case'click':return'click\x20'+formatCommandTarget(_0x50def1[_0x98e559(0xae)](extractFirstCommandArgument,_0x4df13c,_0xa5389e));case'check':return'check\x20'+_0x50def1['hNhbU'](formatCommandTarget,_0x50def1[_0x98e559(0xc2)](extractFirstCommandArgument,_0x4df13c,_0xa5389e));case'fill':return _0x98e559(0xf7)+_0x50def1[_0x98e559(0xd0)](formatCommandTarget,_0x50def1[_0x98e559(0x10e)](extractFirstCommandArgument,_0x4df13c,_0xa5389e));case _0x98e559(0xb3):return'press\x20'+_0x50def1['RbLbS'](formatCommandTarget,_0x50def1[_0x98e559(0xdf)](extractFirstCommandArgument,_0x4df13c,_0xa5389e));case _0x98e559(0x97):return _0x50def1[_0x98e559(0xbb)];case _0x98e559(0xdc):{const _0x33814e=extractFirstCommandArgument(_0x4df13c,_0xa5389e);return _0x33814e?'open\x20new\x20tab\x20'+_0x33814e:_0x98e559(0xc4);}case _0x50def1[_0x98e559(0xda)]:{const _0x27f809=_0x50def1[_0x98e559(0xdb)](extractFirstCommandArgument,_0x4df13c,_0xa5389e);return _0x27f809?_0x98e559(0x107)+_0x27f809:'select\x20tab';}default:return _0xa5389e;}}function extractPlaywrightCliToolDescription(_0xe84cc){const _0x44662b=_0x260d,_0x55215e={'WGAee':function(_0x1982cc,_0x95eba){return _0x1982cc!==_0x95eba;}},_0xc28a74=_0xe84cc[_0x44662b(0x114)];if(_0x55215e[_0x44662b(0x99)](typeof _0xc28a74,_0x44662b(0xce)))return null;const _0x22efcc=_0xc28a74[_0x44662b(0x113)]()[_0x44662b(0xf3)](/\s+/g,'\x20');return _0x22efcc['length']>0x0?_0x22efcc:null;}export function formatPlaywrightCliConsoleLogMessage(_0x403087,_0x3d3549,_0xb96605){const _0x504593=_0x260d,_0x43e898={'gLFdJ':function(_0x17ca80,_0x35d3e2,_0x540177){return _0x17ca80(_0x35d3e2,_0x540177);},'hKqRd':function(_0x11e105,_0x668f39){return _0x11e105(_0x668f39);}},_0x3856ce=_0x43e898[_0x504593(0x8f)](formatPlaywrightCliLog,_0x3d3549,_0xb96605),_0x2a295d=_0x43e898[_0x504593(0xc0)](extractPlaywrightCliToolDescription,_0x403087);if(!_0x2a295d)return'[playwright-cli]\x20'+_0x3856ce;if(process[_0x504593(0x84)]['DEBUG'])return'[ranger-verification-agent]\x20'+_0x2a295d+'\x20('+_0x3856ce+')';return _0x504593(0x111)+_0x2a295d;}export function buildVerifyFeatureCliDebugPrompt(_0x576587,_0x51c861){const _0x2a37c6=_0x260d,_0x449096={'UEbWx':function(_0x4bacd6,_0x4f9e70,_0x42394d){return _0x4bacd6(_0x4f9e70,_0x42394d);},'TIvuy':'01_mozilla-homepage.png','Gfhry':'02_learn-more.yml','FoyLO':_0x2a37c6(0xfc),'geLDE':function(_0x15918d,_0xcc4492){return _0x15918d(_0xcc4492);}},_0x4cebaa=_0x449096['UEbWx'](buildCliArtifactPath,_0x51c861,'00_mozilla-homepage.yml'),_0x7d7e6c=buildCliArtifactPath(_0x51c861,_0x449096['TIvuy']),_0x59e71c=_0x449096[_0x2a37c6(0xa5)](buildCliArtifactPath,_0x51c861,_0x449096[_0x2a37c6(0xf4)]),_0x58ec13=_0x449096[_0x2a37c6(0xa5)](buildCliArtifactPath,_0x51c861,_0x449096[_0x2a37c6(0xe7)]),_0x848c9c=quoteShellArg(_0x4cebaa),_0x3d95b7=_0x449096['geLDE'](quoteShellArg,_0x7d7e6c),_0x79016d=quoteShellArg(_0x59e71c),_0x22411a=_0x449096[_0x2a37c6(0x9c)](quoteShellArg,_0x58ec13);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x576587+'\x0a\x0a1.\x20Run\x20`'+_0x576587+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x576587+'\x20tracing-start`\x0a3.\x20Run\x20`'+_0x576587+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x51c861+_0x2a37c6(0xbe)+_0x576587+'\x20snapshot\x20--filename\x20'+_0x848c9c+_0x2a37c6(0x112)+_0x576587+'\x20screenshot\x20--filename\x20'+_0x3d95b7+'`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`'+_0x576587+_0x2a37c6(0x9d)+_0x79016d+'`\x0a9.\x20Run\x20`'+_0x576587+_0x2a37c6(0xa3)+_0x22411a+_0x2a37c6(0xb0);}export function buildVerifyFeatureCliPrompt(_0x21f13c){const _0x5290f3=_0x260d,_0x1ec323={'aXkoZ':_0x5290f3(0x9e),'JVWzT':'short','BCjZO':_0x5290f3(0xc8),'cvdYq':'element','rLTkl':_0x5290f3(0xbf),'dLRlN':function(_0xfb0bb3,_0x3cfe5f,_0x37b6a8){return _0xfb0bb3(_0x3cfe5f,_0x37b6a8);},'QcmXr':_0x5290f3(0xca),'ujwyz':'01_initial-state.png','MInPj':function(_0x553ebb,_0x2b0ba5){return _0x553ebb(_0x2b0ba5);},'nXpCG':function(_0x103e7b,_0x1e55aa,_0x2ec62e){return _0x103e7b(_0x1e55aa,_0x2ec62e);},'BRrmt':'02_button-clicked.png','AUbqg':'03_result-visible.png','Irhir':function(_0x16f96b,_0x592119,_0x4b4a81){return _0x16f96b(_0x592119,_0x4b4a81);},'HAngQ':'key_04_success-state.png'},{checklistItem:_0x1982b2,itemFeedback:_0x4645d5,taskDescription:_0x50c624,cliCommandPrefix:_0x15dff2,cliArtifactDir:_0x12c90b,isCdpMode:_0x592fbb,url:_0x7bb979,cdpEndpoint:_0x47b4ef,loginInstructions:_0xb8a823}=_0x21f13c,_0x2a3474=buildCliArtifactPath(_0x12c90b,_0x5290f3(0xcd)),_0x46efd8=buildCliArtifactPath(_0x12c90b,_0x1ec323[_0x5290f3(0x8e)]),_0x147f1a=_0x1ec323[_0x5290f3(0x87)](buildCliArtifactPath,_0x12c90b,_0x1ec323['QcmXr']),_0x2e81a5=buildCliArtifactPath(_0x12c90b,_0x1ec323[_0x5290f3(0xf0)]),_0x4b5b3f=_0x1ec323[_0x5290f3(0xd6)](quoteShellArg,_0x2a3474),_0x33c334=_0x1ec323['MInPj'](quoteShellArg,_0x46efd8),_0x111387=quoteShellArg(_0x147f1a),_0x442f0c=quoteShellArg(_0x2e81a5),_0x4d4379=_0x1982b2[_0x5290f3(0xf9)]?_0x5290f3(0xc9)+_0x1982b2['notes']:'';let _0x3bcd50='';if(_0x4645d5&&_0x4645d5[_0x5290f3(0xe2)]['length']>0x0){const _0x4d2e26=_0x4645d5['unaddressedComments']['map'](_0x156ed4=>{const _0x49af16=_0x5290f3,_0x3d5c2c=new Date(_0x156ed4[_0x49af16(0xb9)])['toLocaleDateString'](_0x1ec323['aXkoZ'],{'month':_0x1ec323['JVWzT'],'day':_0x1ec323['BCjZO']}),_0x308b5b=_0x156ed4[_0x49af16(0xee)]||_0x156ed4[_0x49af16(0xef)]||_0x49af16(0x105),_0x120c60=_0x156ed4[_0x49af16(0x9b)]?_0x49af16(0xb4)+(_0x156ed4[_0x49af16(0x9b)][_0x49af16(0xcb)][_0x49af16(0xe9)]('\x20>\x20')[_0x49af16(0xeb)]()?.[_0x49af16(0xe9)](':')[0x0]||_0x1ec323['cvdYq'])+'>\x20\x22'+(_0x156ed4['domRef']['textContent']||'')[_0x49af16(0x117)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x156ed4['id']+_0x49af16(0x10c)+_0x308b5b+_0x49af16(0xe1)+_0x3d5c2c+_0x49af16(0x103)+_0x156ed4[_0x49af16(0xab)]+'\x22'+_0x120c60;})['join']('\x0a');_0x3bcd50='\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'+_0x4d2e26;}const _0x3bb1de=_0x4645d5?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x4645d5[_0x5290f3(0x86)]:'',_0x28e871=_0x592fbb?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x47b4ef+_0x5290f3(0x110):_0x5290f3(0x88)+_0x7bb979+_0x5290f3(0xd2),_0x52e43c=_0x7bb979?quoteShellArg(_0x7bb979):'',_0x552d3a=_0x592fbb?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x15dff2+'\x20open`,\x20then\x20`'+_0x15dff2+'\x20tracing-start`,\x20then\x20`'+_0x15dff2+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x12c90b+_0x5290f3(0xe8)+_0x15dff2+'\x20snapshot\x20--filename\x20'+_0x4b5b3f+'`\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`'+_0x15dff2+_0x5290f3(0xa3)+_0x442f0c+_0x5290f3(0x108)+_0x15dff2+_0x5290f3(0xa0):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x15dff2+_0x5290f3(0xcf)+_0x52e43c+_0x5290f3(0x8b)+_0x15dff2+_0x5290f3(0xbd)+_0x15dff2+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x12c90b+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x15dff2+_0x5290f3(0x9d)+_0x4b5b3f+_0x5290f3(0x116)+_0x15dff2+'\x20screenshot\x20--filename\x20'+_0x442f0c+_0x5290f3(0xa9)+_0x15dff2+_0x5290f3(0x98),_0x2f22fc=_0x592fbb?_0x5290f3(0xc3):_0x5290f3(0x92),_0x19f341=_0xb8a823?_0x5290f3(0x106)+_0xb8a823+_0x5290f3(0xff):'';return _0x5290f3(0xf2)+_0x1982b2['description']+_0x4d4379+_0x3bcd50+_0x3bb1de+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x50c624+'\x0a\x0a'+_0x28e871+_0x19f341+'\x0a\x0a'+_0x552d3a+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x15dff2+_0x5290f3(0xe4)+_0x12c90b+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x33c334+'`\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'+_0x111387+_0x5290f3(0xde)+_0x12c90b+_0x5290f3(0x100)+_0x2e81a5+'\x22,\x20\x22'+_0x1ec323[_0x5290f3(0xfe)](buildCliArtifactPath,_0x12c90b,_0x1ec323['BRrmt'])+_0x5290f3(0xf5)+buildCliArtifactPath(_0x12c90b,_0x1ec323[_0x5290f3(0xe5)])+_0x5290f3(0x10f)+_0x1ec323[_0x5290f3(0x102)](buildCliArtifactPath,_0x12c90b,_0x1ec323[_0x5290f3(0x10a)])+'\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'+_0x2f22fc+_0x5290f3(0x8a);}export function summarizeVerifyFeatureCliCommandAvailability(_0x3c435d){const _0x5cb521=_0x260d,_0x1743a2={'ogEzM':function(_0xf9ca4,_0x547b31){return _0xf9ca4===_0x547b31;}},_0x20ee5a=[..._0x3c435d[_0x5cb521(0x93)]()]['sort']();let _0x4a8774=0x0;for(const _0x40a709 of _0x3c435d['values']()){_0x4a8774+=_0x40a709;}return{'cliCommandCount':_0x4a8774,'cliCommandsSeen':_0x20ee5a,'noCliCommandsCalled':_0x1743a2['ogEzM'](_0x4a8774,0x0)};}export function createVerifyFeatureCliHooks(_0xaef0e3){const _0x2af787=_0x260d,_0x11c3ee={'gphbE':function(_0x1ee640,_0x487e28){return _0x1ee640!==_0x487e28;},'MQdpl':_0x2af787(0xb6),'uPkYz':function(_0x2462c7,_0xd2502b){return _0x2462c7(_0xd2502b);},'CcFZt':function(_0x480135,_0x43f1c0){return _0x480135+_0x43f1c0;},'oLaMR':'tool_call','xNvYp':_0x2af787(0xb1),'TvkmD':function(_0x50a82e,_0x315c1f){return _0x50a82e!==_0x315c1f;},'cJLUd':_0x2af787(0xd4),'oaPeL':'PostToolUseFailure'},_0xaea8c3=new Map(),_0x4f5de7=async _0x22eba0=>{const _0x32b6cb=_0x2af787;if(_0x11c3ee[_0x32b6cb(0x83)](_0x22eba0[_0x32b6cb(0x96)],_0x32b6cb(0x104)))return{};const _0xc154c0=_0x22eba0;if(_0xc154c0['tool_name']!==_0x11c3ee[_0x32b6cb(0xc6)])return{};const _0xa65042=_0xc154c0['tool_input'],_0x8b1bc0=_0x11c3ee[_0x32b6cb(0xaa)](extractBashCommand,_0xa65042);if(!_0x8b1bc0)return{};const _0x36588f=_0x11c3ee[_0x32b6cb(0xaa)](parsePlaywrightCliCommand,_0x8b1bc0);if(!_0x36588f)return{};return _0xaea8c3[_0x32b6cb(0x91)](_0x36588f,_0x11c3ee['CcFZt'](_0xaea8c3[_0x32b6cb(0xb5)](_0x36588f)||0x0,0x1)),_0xaef0e3['trackPhaseStart'](_0x11c3ee[_0x32b6cb(0x85)],{'transport':_0x11c3ee['xNvYp'],'toolName':_0x36588f}),_0xaef0e3['trackPhaseEnd']('tool_call',{'transport':_0x11c3ee['xNvYp'],'toolName':_0x36588f,'bashCommandPreview':_0x11c3ee[_0x32b6cb(0xaa)](truncatePreview,_0x8b1bc0)}),_0x11c3ee['TvkmD'](_0x36588f,_0x11c3ee['cJLUd'])&&console['log'](formatPlaywrightCliConsoleLogMessage(_0xa65042,_0x8b1bc0,_0x36588f)),{};},_0x27b54f=async _0xb2690a=>{const _0x136d4f=_0x2af787;if(_0xb2690a[_0x136d4f(0x96)]!==_0x11c3ee['oaPeL'])return{};const _0x401d25=_0xb2690a;if(_0x11c3ee[_0x136d4f(0x83)](_0x401d25[_0x136d4f(0xea)],_0x136d4f(0xb6)))return{};return await _0xaef0e3[_0x136d4f(0xb7)](_0x136d4f(0x9a),_0x401d25[_0x136d4f(0x81)],{'transport':'playwright-cli','toolName':'Bash'}),{};};return{'postToolUseHook':_0x4f5de7,'postToolUseFailureHook':_0x27b54f,'commandCounts':_0xaea8c3};}async function runPlaywrightCliLifecycleCommand(_0x3930f1){const _0x241ad8=_0x260d,_0x409222={'LDsHf':function(_0x21c84f,_0x27aadb){return _0x21c84f(_0x27aadb);},'uUAJf':function(_0x1921cc,_0x2dccaf){return _0x1921cc??_0x2dccaf;},'XAdlv':function(_0x4bda8b,_0x6df056,_0x1fcc34){return _0x4bda8b(_0x6df056,_0x1fcc34);}},{sessionId:_0x241df6,configPath:_0x368208,commandArgs:_0x3e8b01,env:_0x41c750,telemetry:_0x48bcfd,phase:_0x2e0251,metadata:_0x35f3c2,timeoutMs:_0x25fed8}=_0x3930f1;_0x48bcfd['trackPhaseStart'](_0x2e0251,_0x35f3c2);try{const _0x2b55e1=await _0x409222['LDsHf'](runPlaywrightCliCommand,{'sessionId':_0x241df6,'configPath':_0x368208,'commandArgs':_0x3e8b01,'cwd':process[_0x241ad8(0xd1)](),'env':_0x41c750,'timeoutMs':_0x409222['uUAJf'](_0x25fed8,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x48bcfd[_0x241ad8(0x8d)](_0x2e0251,{..._0x35f3c2,'subcommand':_0x2b55e1['invocation'][_0x241ad8(0xa1)],'stdoutPreview':_0x409222['XAdlv'](truncatePreview,_0x2b55e1['stdout'],0x7d0),'stderrPreview':_0x409222[_0x241ad8(0x101)](truncatePreview,_0x2b55e1[_0x241ad8(0x95)],0x7d0)});}catch(_0x273e3c){await _0x48bcfd[_0x241ad8(0xb7)](_0x2e0251,_0x273e3c,_0x35f3c2);throw _0x273e3c;}}export async function finalizeVerifyFeatureCliSession(_0x50ca11){const _0x49872a=_0x260d,_0x1b3165={'eVPLB':_0x49872a(0xa6),'BFqmi':'tracing-stop','eqfwX':'playwright_cli_video_stop','tSbDN':function(_0x516b27,_0x4a5f09,_0x1ccb48){return _0x516b27(_0x4a5f09,_0x1ccb48);},'qlncW':_0x49872a(0xe0),'pfCBi':'close','BqnpE':function(_0x4a035a,_0x46a701){return _0x4a035a(_0x46a701);}},{telemetry:_0x31f523,sessionId:_0x5d1b8a,configPath:_0x12ed2b,cliArtifactDir:_0xf0a697,env:_0x19e302,transportMetadata:_0x2da421}=_0x50ca11,_0x3fecd3=[{'phase':_0x1b3165[_0x49872a(0xad)],'commandArgs':[_0x1b3165['BFqmi']]},{'phase':_0x1b3165[_0x49872a(0xcc)],'commandArgs':[_0x49872a(0xfd),'--filename='+_0x1b3165['tSbDN'](buildCliArtifactPath,_0xf0a697,_0x49872a(0xba))]},{'phase':_0x1b3165['qlncW'],'commandArgs':[_0x1b3165['pfCBi']]}];for(const _0x30a7c7 of _0x3fecd3){try{await _0x1b3165[_0x49872a(0xf8)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x5d1b8a,'configPath':_0x12ed2b,'commandArgs':[..._0x30a7c7[_0x49872a(0xb8)]],'env':_0x19e302,'telemetry':_0x31f523,'phase':_0x30a7c7['phase'],'metadata':_0x2da421});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x4f727a){const _0x5a85cf=_0x260d,_0x1fda29={'cuHzL':'trace.zip'},_0x22cc03=[_0x1fda29['cuHzL'],_0x5a85cf(0x10d)];for(const _0x2bd898 of _0x22cc03){const _0x5cd05f=join(_0x4f727a,_0x2bd898);try{return{'buffer':await readFile(_0x5cd05f),'source':_0x5cd05f};}catch{}}return null;}function _0x44a8(){const _0x244a22=['MQdpl','match','numeric','\x0a\x0a##\x20Additional\x20Notes\x0a','key_03_success-state.png','selector','eqfwX','01_initial.yml','string','\x20open\x20','hNhbU','cwd','\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','jnbrr','snapshot','eNAXt','MInPj','BpoZQ','capture\x20snapshot\x20`','87dvQkvY','AypgG','rzIUt','tab-new','GbjvO','`\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`','jZtdo','playwright_cli_close','**\x20(','unaddressedComments','39388fTssyv','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','AUbqg','1038140fWsffE','FoyLO','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','split','tool_name','pop','ncTFC','tracing-stop','authorName','authorEmail','ujwyz','start\x20video\x20recording','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','replace','Gfhry','\x22,\x20\x22','1782440taGkUo','fill\x20','BqnpE','notes','jzsva','ref\x20','03_learn-more.png','video-stop','nXpCG','\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.','`:\x20\x22','XAdlv','Irhir','):\x20\x22','PostToolUse','Reviewer','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','select\x20tab\x20','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','xyxeS','HAngQ','5628294hXHOIu',']\x20**','trace.trace.zip','CBSRo','\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','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','[ranger-verification-agent]\x20','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','trim','description','capture\x20step\x20`','`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`','slice','error','JdxVS','gphbE','env','oLaMR','canonicalFlow','dLRlN','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','\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.','`,\x20then\x20`','stringify','trackPhaseEnd','rLTkl','gLFdJ','stop\x20video\x20recording','set','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a-\x20Login/sign-in/auth\x20pages\x20when\x20no\x20Authentication\x20section\x20is\x20present\x20in\x20this\x20prompt\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','keys','name','stderr','hook_event_name','run-code','\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','WGAee','tool_failure','domRef','geLDE','\x20snapshot\x20--filename\x20','en-US','27746kCbqfT','\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','subcommand','DWHvM','\x20screenshot\x20--filename\x20','tracing-start','UEbWx','playwright_cli_tracing_stop','dBsgt','start\x20tracing','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','uPkYz','content','335OBGeMF','eVPLB','PWZGI','541878ATXFKH','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','playwright-cli','678202minReb','press','\x20(on\x20element:\x20<','get','Bash','trackPhaseError','commandArgs','createdAt','session-recording.webm','IJbhi','screenshot','\x20tracing-start`,\x20then\x20`','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','02_state.yml','hKqRd','target','sXqXG','\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.','open\x20new\x20tab','28oBmThe'];_0x44a8=function(){return _0x244a22;};return _0x44a8();}export async function rehomeVerifyFeatureCliArtifacts(_0x2ea690){const _0x2f66e4=_0x260d,_0x204893={'URuGH':function(_0x310002,_0x2a5a86,_0x455f7b){return _0x310002(_0x2a5a86,_0x455f7b);},'pqLqQ':function(_0x46fd5f,_0x2f83d1,_0x3620a4){return _0x46fd5f(_0x2f83d1,_0x3620a4);},'GbjvO':function(_0x24541e,_0x5f2e0b){return _0x24541e(_0x5f2e0b);},'dBsgt':function(_0x466776,_0x39869e){return _0x466776<_0x39869e;},'APMWi':function(_0x1a23c9,_0x1f9735){return _0x1a23c9+_0x1f9735;},'eNAXt':function(_0x3f7847,_0x1d38d3,_0xf14524){return _0x3f7847(_0x1d38d3,_0xf14524);},'JdxVS':function(_0xd38d9d,_0x35e080){return _0xd38d9d===_0x35e080;}},{cwd:_0x1692d9,cliArtifactDir:_0x1ce341,startTime:_0x46447d}=_0x2ea690,_0x22851a=[];await _0x204893['URuGH'](mkdir,_0x1ce341,{'recursive':!![]});const _0x4ded51=await _0x204893['URuGH'](readdir,_0x1692d9,{'withFileTypes':!![]});for(const _0x143110 of _0x4ded51){if(!_0x143110['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN['test'](_0x143110[_0x2f66e4(0x94)]))continue;const _0x5cf107=_0x204893['pqLqQ'](join,_0x1692d9,_0x143110['name']),_0x219537=await _0x204893[_0x2f66e4(0xdd)](stat,_0x5cf107);if(_0x204893[_0x2f66e4(0xa7)](_0x204893['APMWi'](_0x219537['mtimeMs'],0x7d0),_0x46447d))continue;const _0x5cb42e=_0x204893[_0x2f66e4(0xd5)](buildCliArtifactPath,_0x1ce341,_0x143110['name']);if(_0x204893[_0x2f66e4(0x82)](_0x5cf107,_0x5cb42e))continue;await rename(_0x5cf107,_0x5cb42e),_0x22851a['push'](_0x143110[_0x2f66e4(0x94)]);}return _0x22851a['sort']();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x23891f=_0x16ff;(function(_0x28581c,_0x24f4cb){const _0x25a7d8=_0x16ff,_0x63f104=_0x28581c();while(!![]){try{const _0x57922d=parseInt(_0x25a7d8(0x272))/0x1*(parseInt(_0x25a7d8(0x1d4))/0x2)+-parseInt(_0x25a7d8(0x1cb))/0x3+parseInt(_0x25a7d8(0x25d))/0x4*(parseInt(_0x25a7d8(0x1e2))/0x5)+parseInt(_0x25a7d8(0x26b))/0x6*(-parseInt(_0x25a7d8(0x1a4))/0x7)+-parseInt(_0x25a7d8(0x23f))/0x8*(-parseInt(_0x25a7d8(0x24a))/0x9)+parseInt(_0x25a7d8(0x264))/0xa*(-parseInt(_0x25a7d8(0x1ca))/0xb)+parseInt(_0x25a7d8(0x1bb))/0xc;if(_0x57922d===_0x24f4cb)break;else _0x63f104['push'](_0x63f104['shift']());}catch(_0x4edc48){_0x63f104['push'](_0x63f104['shift']());}}}(_0x5161,0x25e98));import{execFile}from'child_process';import{mkdir,readdir,readFile,rename,rm,stat,writeFile}from'fs/promises';import{homedir}from'os';import{basename,join}from'path';import{promisify}from'util';import{chromium}from'playwright';import{buildNovaActCliInvocation,buildNovaActCliSharedOptionsSuffix,extractNovaActLogDir,parseNovaActCliCommand,previewNovaActCliCommand,runNovaActCliCommand}from'./utils/novaActCli.js';import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';const NOVA_ACT_CLI_COMMAND_TIMEOUT_MS=0x1d4c0,NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS=0x3a98,NOVA_ARTIFACT_METADATA_WAIT_MS=0x1388,NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS=0x1388,VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|final-state\.ya?ml|nova-session-export\.json)$/i,NOVA_ACT_ALLOWED_AGENT_COMMANDS=new Set(['session\x20create','execute',_0x23891f(0x1a1),_0x23891f(0x191),_0x23891f(0x217),_0x23891f(0x1a5),_0x23891f(0x225),'screenshot']),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x2839db,_0x303d74){const _0x35ae43=_0x23891f,_0x83f5d2={'TJIwo':function(_0x5c2c2d,_0x2eb52d,_0x59f251){return _0x5c2c2d(_0x2eb52d,_0x59f251);}};return _0x83f5d2[_0x35ae43(0x196)](join,_0x2839db,_0x303d74);}export class NovaActArtifactRecorder{['params'];['browser']=null;['context']=null;['frameSession']=null;[_0x23891f(0x1b2)]=[];[_0x23891f(0x25f)]=0x0;[_0x23891f(0x206)]=0x0;[_0x23891f(0x1ae)]=null;[_0x23891f(0x20a)]=null;['tracingStarted']=![];[_0x23891f(0x246)]=![];['startAttempted']=![];[_0x23891f(0x1ea)]=![];constructor(_0x33a95a){const _0x31a037=_0x23891f;this[_0x31a037(0x223)]=_0x33a95a;}async[_0x23891f(0x24e)](){const _0x599a18=_0x23891f,_0x1c4b29={'hpiOV':function(_0x3230f8,_0x3e1b19,_0x40d973){return _0x3230f8(_0x3e1b19,_0x40d973);},'KqiyX':_0x599a18(0x1cc),'hxlTn':'nova_act_artifact_recording'};if(this[_0x599a18(0x1d9)])return;this['startAttempted']=!![];const _0x1b2d53=await this[_0x599a18(0x1e9)](),_0x4e6866=_0x1b2d53[_0x599a18(0x232)];if(!_0x4e6866)throw new Error('Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20'+this[_0x599a18(0x223)]['novaOptions']['sessionId']);await _0x1c4b29['hpiOV'](mkdir,this['params']['cliArtifactDir'],{'recursive':!![]}),this['browser']=await chromium['connectOverCDP'](_0x4e6866,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this['context']=this['browser'][_0x599a18(0x19b)]()[0x0]??null;if(!this['context'])throw new Error(_0x1c4b29[_0x599a18(0x1cf)]);await this[_0x599a18(0x23a)]['tracing']['start']({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this['startTraceSampling'](),await this[_0x599a18(0x262)](),this[_0x599a18(0x223)]['telemetry'][_0x599a18(0x26f)](_0x1c4b29['hxlTn'],{...this[_0x599a18(0x223)]['transportMetadata'],'cdpEndpoint':_0x4e6866,'browserPid':_0x1b2d53[_0x599a18(0x24c)],'sessionState':_0x1b2d53['state']}),this[_0x599a18(0x223)]['telemetry'][_0x599a18(0x215)](_0x599a18(0x25e),{...this[_0x599a18(0x223)][_0x599a18(0x242)],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x599a18(0x246)]});}async['stop'](){const _0x52ac4d=_0x23891f,_0x36e3a3={'JbaZp':_0x52ac4d(0x266)};if(this['stopped'])return;this[_0x52ac4d(0x1ea)]=!![];const _0x2c6005={...this[_0x52ac4d(0x223)][_0x52ac4d(0x242)],'frameCount':this[_0x52ac4d(0x25f)],'traceSampleCount':this[_0x52ac4d(0x206)],'tracingStarted':this['tracingStarted'],'screencastStarted':this['screencastStarted']};this['params'][_0x52ac4d(0x18e)][_0x52ac4d(0x26f)](_0x36e3a3[_0x52ac4d(0x257)],_0x2c6005);try{await this[_0x52ac4d(0x24d)](),await this[_0x52ac4d(0x1b6)](),await this['stopScreencast'](),await Promise['allSettled'](this[_0x52ac4d(0x1b2)]);this['context']&&this['tracingStarted']&&await this['context'][_0x52ac4d(0x1d3)]['stop']({'path':buildCliArtifactPath(this['params']['cliArtifactDir'],_0x52ac4d(0x1b8))});const _0x38c161=await this[_0x52ac4d(0x244)]();this[_0x52ac4d(0x223)]['telemetry']['trackPhaseEnd'](_0x52ac4d(0x266),{..._0x2c6005,'videoPath':_0x38c161});}catch(_0x48c7ec){await this[_0x52ac4d(0x223)][_0x52ac4d(0x18e)][_0x52ac4d(0x271)](_0x36e3a3['JbaZp'],_0x48c7ec,_0x2c6005);}finally{await this['browser']?.['close']()['catch'](()=>undefined),this[_0x52ac4d(0x239)]=null,this['context']=null,this['frameSession']=null;}}async[_0x23891f(0x1e9)](){const _0x5bc000=_0x23891f,_0x2dbbd3={'yOCDp':function(_0x3c6525,_0x3022ce,_0x439300){return _0x3c6525(_0x3022ce,_0x439300);},'ylHem':function(_0xfbc0e8,_0x4b7f67){return _0xfbc0e8<_0x4b7f67;},'leEht':function(_0x4c5d28,_0x5a9084){return _0x4c5d28-_0x5a9084;},'xKxto':function(_0x360ea4,_0x5922a0){return _0x360ea4 instanceof _0x5922a0;}},_0x15faef=join(homedir(),'.act_cli',_0x5bc000(0x239),'sessions',this['params'][_0x5bc000(0x21b)][_0x5bc000(0x1fa)]+_0x5bc000(0x25a)),_0x690900=Date['now']();let _0xde1273;do{try{const _0x478d52=JSON[_0x5bc000(0x248)](await _0x2dbbd3['yOCDp'](readFile,_0x15faef,_0x5bc000(0x213)));if(_0x478d52[_0x5bc000(0x232)])return _0x478d52;_0xde1273=new Error(_0x5bc000(0x198)+_0x15faef);}catch(_0x389165){_0xde1273=_0x389165;}await delay(0x64);}while(_0x2dbbd3['ylHem'](_0x2dbbd3[_0x5bc000(0x1f2)](Date[_0x5bc000(0x240)](),_0x690900),NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x2dbbd3[_0x5bc000(0x25c)](_0xde1273,Error))throw _0xde1273;throw new Error(_0x5bc000(0x19c)+_0x15faef);}async[_0x23891f(0x262)](){const _0x1b34d9=_0x23891f,_0x2b5388={'ggmac':function(_0x1781c0,_0x92ec49){return _0x1781c0(_0x92ec49);},'OOfon':function(_0x392a1c,_0x35ce21,_0x47a1d6){return _0x392a1c(_0x35ce21,_0x47a1d6);},'dawCb':_0x1b34d9(0x26a)};if(!this['context'])return;const _0x4aaeb0=this[_0x1b34d9(0x23a)]['pages']()[0x0];if(!_0x4aaeb0)return;const _0x79117a=this[_0x1b34d9(0x1c5)]();await mkdir(_0x79117a,{'recursive':!![]});const _0x1ef9f5=await this[_0x1b34d9(0x23a)]['newCDPSession'](_0x4aaeb0);this[_0x1b34d9(0x20b)]=_0x1ef9f5,_0x1ef9f5['on'](_0x1b34d9(0x1fb),_0x5ebfa4=>{const _0x480522=_0x1b34d9,_0x3a9334=++this[_0x480522(0x25f)],_0x3370b5=join(_0x79117a,'frame-'+_0x2b5388[_0x480522(0x224)](String,_0x3a9334)[_0x480522(0x20d)](0x6,'0')+'.jpg'),_0x2b54d1=_0x2b5388['OOfon'](writeFile,_0x3370b5,Buffer['from'](_0x5ebfa4[_0x480522(0x251)],_0x2b5388['dawCb']))['catch'](()=>undefined)[_0x480522(0x18d)](()=>_0x1ef9f5[_0x480522(0x1b7)](_0x480522(0x22d),{'sessionId':_0x5ebfa4['sessionId']}))[_0x480522(0x1c9)](()=>undefined)['catch'](()=>undefined);this['frameWrites']['push'](_0x2b54d1);}),await _0x1ef9f5['send']('Page.startScreencast',{'format':_0x1b34d9(0x22e),'quality':0x4b,'everyNthFrame':0x6}),this[_0x1b34d9(0x246)]=!![];}async['stopScreencast'](){const _0x320d44=_0x23891f;if(!this['frameSession']||!this[_0x320d44(0x246)])return;await this[_0x320d44(0x20b)]['send'](_0x320d44(0x226))[_0x320d44(0x1c6)](()=>undefined);}[_0x23891f(0x21c)](){this['queueTraceSample'](),this['traceSampleTimer']=setInterval(()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x23891f(0x1ba)](){const _0x30ebaa=_0x23891f;if(this[_0x30ebaa(0x20a)])return;this['traceSampleInFlight']=this[_0x30ebaa(0x1b6)]()[_0x30ebaa(0x18d)](()=>{this['traceSampleInFlight']=null;});}async['stopTraceSampling'](){const _0x3dcc85=_0x23891f;this[_0x3dcc85(0x1ae)]&&(clearInterval(this[_0x3dcc85(0x1ae)]),this['traceSampleTimer']=null),await this['traceSampleInFlight']?.[_0x3dcc85(0x1c6)](()=>undefined);}async['captureTraceSample'](){const _0x313c99=_0x23891f,_0xf8ab64={'yyyOT':'body'},_0x8b3876=this['context']?.[_0x313c99(0x1e7)]()[0x0];if(!_0x8b3876)return;try{await _0x8b3876[_0x313c99(0x19f)](_0xf8ab64['yyyOT'])[_0x313c99(0x23b)](_0x3fdb6a=>_0x3fdb6a[_0x313c99(0x199)],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async['encodeScreencastVideo'](){const _0x260aa4=_0x23891f,_0x45a0f3={'wxBla':function(_0x5d331a){return _0x5d331a();},'sYneU':function(_0xbb0105,_0x11fb6a,_0x4d11d4){return _0xbb0105(_0x11fb6a,_0x4d11d4);},'MfZbe':'session-recording.webm','gbYcE':'error','Nqcob':'-vf','eQfmz':'-pix_fmt','yXfXw':'yuv420p'};if(this['frameCount']<0x2)return null;const _0x353a86=await _0x45a0f3[_0x260aa4(0x265)](resolveFfmpegPath);if(!_0x353a86)return null;const _0x22b196=join(this['params']['cliArtifactDir'],'videos');await _0x45a0f3[_0x260aa4(0x1da)](mkdir,_0x22b196,{'recursive':!![]});const _0x29f13e=join(_0x22b196,_0x45a0f3['MfZbe']);return await _0x45a0f3['sYneU'](execFileAsync,_0x353a86,['-y','-hide_banner','-loglevel',_0x45a0f3[_0x260aa4(0x1b0)],_0x260aa4(0x1d8),'10','-i',join(this[_0x260aa4(0x1c5)](),_0x260aa4(0x1f7)),_0x45a0f3[_0x260aa4(0x209)],'scale=trunc(iw/2)*2:trunc(ih/2)*2','-c:v','libvpx-vp9',_0x45a0f3[_0x260aa4(0x1a8)],_0x45a0f3['yXfXw'],_0x29f13e]),_0x29f13e;}[_0x23891f(0x1c5)](){const _0x1bedb2=_0x23891f,_0x2b9e05={'fDSlC':function(_0x5cbf77,_0x28a713,_0x466b59){return _0x5cbf77(_0x28a713,_0x466b59);}};return _0x2b9e05['fDSlC'](join,this['params']['cliArtifactDir'],_0x1bedb2(0x236));}}async function delay(_0x3ffb9f){await new Promise(_0xcf70a9=>setTimeout(_0xcf70a9,_0x3ffb9f));}async function resolveFfmpegPath(){const _0x3c24c2=_0x23891f,_0x3d2ba9={'rwrsm':function(_0x50b9cc,_0x380e05){return _0x50b9cc(_0x380e05);},'BqRbc':'ffmpeg','ThXuH':function(_0x26acba){return _0x26acba();},'QXCOX':'Caches','bexGU':function(_0x27dfa2,_0x15ee8c,_0x254375,_0x48090b){return _0x27dfa2(_0x15ee8c,_0x254375,_0x48090b);},'GfsCn':_0x3c24c2(0x1ab)};if(await _0x3d2ba9[_0x3c24c2(0x1c8)](canRunFfmpeg,_0x3d2ba9['BqRbc']))return _0x3c24c2(0x195);const _0x4899c0=[join(_0x3d2ba9[_0x3c24c2(0x1fe)](homedir),_0x3c24c2(0x1d5),_0x3d2ba9['QXCOX'],'ms-playwright'),_0x3d2ba9['bexGU'](join,_0x3d2ba9['ThXuH'](homedir),_0x3d2ba9['GfsCn'],'ms-playwright')];for(const _0x4e9a29 of _0x4899c0){try{const _0x353017=await _0x3d2ba9[_0x3c24c2(0x1c8)](readdir,_0x4e9a29),_0x3293e6=_0x353017[_0x3c24c2(0x1c2)](_0x4f4b9f=>_0x4f4b9f['startsWith']('ffmpeg-'))[_0x3c24c2(0x22f)]()[_0x3c24c2(0x263)]()[_0x3c24c2(0x25b)](_0x30a2eb=>[join(_0x4e9a29,_0x30a2eb,'ffmpeg-mac'),join(_0x4e9a29,_0x30a2eb,_0x3c24c2(0x1af)),join(_0x4e9a29,_0x30a2eb,_0x3c24c2(0x21a))]);for(const _0x56c9d0 of _0x3293e6){if(await _0x3d2ba9[_0x3c24c2(0x1c8)](canRunFfmpeg,_0x56c9d0))return _0x56c9d0;}}catch{}}return null;}async function canRunFfmpeg(_0x52ac44){const _0x5041a4=_0x23891f,_0x145f3a={'lylkW':function(_0x35ec67,_0x30d33f,_0x2b8e61){return _0x35ec67(_0x30d33f,_0x2b8e61);},'szMvA':_0x5041a4(0x231)};try{return await _0x145f3a['lylkW'](execFileAsync,_0x52ac44,[_0x145f3a[_0x5041a4(0x1f1)]]),!![];}catch{return![];}}function toStepDisplayName(_0x2d4351){const _0x414e30=_0x23891f,_0x5ea2f1={'ctCgD':function(_0xfc12ce,_0x7755e7){return _0xfc12ce(_0x7755e7);}},_0x862f16=basename(_0x2d4351)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x414e30(0x1df)](/-/g,'\x20');return{'name':_0x862f16,'isKeyStep':/^key_/i[_0x414e30(0x19d)](_0x5ea2f1['ctCgD'](basename,_0x2d4351))};}function _0x5161(){const _0x1a2437=['ask','capture\x20snapshot\x20`','set','bCgKs','ffmpeg','TJIwo','dyByQ','Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20','tagName','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','contexts','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','test','nova_act_command','locator','MOrGR','verify','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','VTqUW','563969EQnJBh','wait-for','map','short','eQfmz','Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','`.\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`','.cache','hook_event_name','match','traceSampleTimer','ffmpeg-linux','gbYcE','\x0a\x0aExamples:\x0a-\x20`','frameWrites','phase','Bash','nova_act_session_report','captureTraceSample','send','trace.zip','has','queueTraceSample','3515292qDzVIW','ryKrF','[nova-act-cli]\x20','PreToolUse',']\x20**','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','oipla','filter','NrdxJ','jBALy','getFrameDir','catch','split','rwrsm','then','2139126SeGudv','625824xOkiHz','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','slice','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','KqiyX','fSvcN','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','01_initial.yml','tracing','106GdiSrx','Library','Qlfwj','pop','-framerate','startAttempted','sYneU','subcommand','zip','cwd','KUZXa','replace','Nova\x20command\x20`','PostToolUse','155ZKNHxA','canonicalFlow','screenshot','\x20snapshot\x20--output\x20','args','pages','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`','readSessionMetadataWithRetry','stopped','mtimeMs','domRef','toLocaleDateString','cOGDK','invocation','error','szMvA','leEht','capture\x20snapshot','TWSXf','zfbGg','nova-session-export.json','frame-%06d.jpg','qvphB','RLIJc','sessionId','Page.screencastFrame','VdyUR','values','ThXuH','trim','session\x20create','stdout','nova-report','push','DplMS','createdAt','traceSampleCount','EDgFm','nova_act_session_export','Nqcob','traceSampleInFlight','frameSession','mPZCT','padStart','ZOmWC','tool_input','jcQOm','>\x20\x22','export','utf-8','`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a','trackPhaseEnd','log','goto','**\x20(','gHbqY','ffmpeg.exe','novaOptions','startTraceSampling','yEVbr','PostToolUseFailure','ibxFz','wait\x20for\x20page\x20condition','03_final-state.png','Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a','params','ggmac','snapshot','Page.stopScreencast','unaddressedComments','\x20>\x20','DBpqu','execute\x20Nova\x20browser\x20action','SDNpQ','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','Page.screencastFrameAck','jpeg','sort','zVlEY','-version','cdp_endpoint','kIoBC','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.','-\x20[','nova-video-frames','notes','capture\x20step\x20`','browser','context','evaluate','EvFMz','nova_act_final_screenshot','mNcWC','40oAbSZZ','now','`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','transportMetadata','--format','encodeScreencastVideo','pGzye','screencastStarted','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','parse','yfJNa','273510htdGTT','`\x0a-\x20`','browser_pid','stopTraceSampling','start','iPdnR','jDbyX','data','INCWM','\x20session\x20create\x20','KcGyM','\x20(on\x20element:\x20<','--output','JbaZp','`\x0a4.\x20Run\x20one\x20batched\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','.json','flatMap','xKxto','22076WlLbpl','nova_act_artifact_recording','frameCount','session\x20export','\x20screenshot\x20--output\x20','startScreencast','reverse','10BLFgpQ','wxBla','nova_act_artifact_recording_stop','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','authorName','nova_act_session_close','base64','6ivOxvg','tool_name','selector','vVyuf','trackPhaseStart','authorEmail','trackPhaseError','433dVVuga','finally','telemetry','SQpjN','command'];_0x5161=function(){return _0x1a2437;};return _0x5161();}function extractShellValue(_0x4c902e){if(!_0x4c902e)return null;return _0x4c902e[0x1]??_0x4c902e[0x2]??_0x4c902e[0x3]??null;}function extractOutputOption(_0xdba9dd){const _0x49ed5b=_0x23891f,_0x158eac={'ibxFz':function(_0x2cad7a,_0xa46bd7){return _0x2cad7a(_0xa46bd7);}};return _0x158eac[_0x49ed5b(0x21f)](extractShellValue,_0xdba9dd[_0x49ed5b(0x1ad)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x166dff,_0xf7bde1){const _0x4ffd33=_0x23891f,_0xd68265={'yEVbr':'create\x20Nova\x20browser\x20session','bRCRV':_0x4ffd33(0x22a),'hFfbD':'verify','zVlEY':'verify\x20page\x20condition','XOiyB':'ask','yfJNa':'ask\x20page\x20question','ryKrF':'navigate\x20browser','KcGyM':function(_0x31428a,_0x23ba37){return _0x31428a(_0x23ba37);},'HXyCJ':_0x4ffd33(0x260),'dyByQ':'export\x20Nova\x20session'};switch(_0xf7bde1){case'session\x20create':return _0xd68265[_0x4ffd33(0x21d)];case'execute':return _0xd68265['bRCRV'];case _0xd68265['hFfbD']:return _0xd68265[_0x4ffd33(0x230)];case _0xd68265['XOiyB']:return _0xd68265[_0x4ffd33(0x249)];case'goto':return _0xd68265[_0x4ffd33(0x1bc)];case'wait-for':return _0x4ffd33(0x220);case _0x4ffd33(0x225):{const _0x489731=_0xd68265[_0x4ffd33(0x254)](extractOutputOption,_0x166dff);if(!_0x489731)return _0x4ffd33(0x1f3);const {name:_0x40bb85}=toStepDisplayName(_0x489731);return _0x4ffd33(0x192)+_0x40bb85+'`';}case _0x4ffd33(0x1e4):{const _0x2e4739=extractOutputOption(_0x166dff);if(!_0x2e4739)return'capture\x20screenshot';const {name:_0x33db63,isKeyStep:_0x471dc0}=toStepDisplayName(_0x2e4739);return _0x471dc0?'capture\x20key\x20step\x20`'+_0x33db63+'`':_0x4ffd33(0x238)+_0x33db63+'`';}case _0xd68265['HXyCJ']:return _0xd68265[_0x4ffd33(0x197)];default:return _0xf7bde1;}}function getNovaActCliCommandBlockReason(_0x463df1){const _0x31294c=_0x23891f,_0x2c5bd2={'fSvcN':function(_0x3461a7,_0x20fe77){return _0x3461a7===_0x20fe77;},'aDzGL':_0x31294c(0x1a1),'pGzye':_0x31294c(0x234)},_0x80714a=parseNovaActCliCommand(_0x463df1);if(!_0x80714a)return _0x31294c(0x1a9);if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x31294c(0x1b9)](_0x80714a))return _0x31294c(0x1e0)+_0x80714a+_0x31294c(0x22c);if(_0x2c5bd2[_0x31294c(0x1d0)](_0x80714a,_0x2c5bd2['aDzGL'])&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i[_0x31294c(0x19d)](_0x463df1))return _0x2c5bd2[_0x31294c(0x245)];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/[_0x31294c(0x19d)](_0x463df1))return'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.';return null;}function buildFeedbackSection(_0x4488f1){const _0x1752d7=_0x23891f,_0x309b45={'WmXRz':_0x1752d7(0x1a7),'aoooa':'numeric','SDNpQ':'element'};if(!_0x4488f1||_0x4488f1[_0x1752d7(0x227)]['length']===0x0)return'';const _0x11792e=_0x4488f1['unaddressedComments'][_0x1752d7(0x1a6)](_0x17f443=>{const _0xdb2c7b=_0x1752d7,_0x4224b8=new Date(_0x17f443[_0xdb2c7b(0x205)])[_0xdb2c7b(0x1ed)]('en-US',{'month':_0x309b45['WmXRz'],'day':_0x309b45['aoooa']}),_0x250cdc=_0x17f443[_0xdb2c7b(0x268)]||_0x17f443[_0xdb2c7b(0x270)]||'Reviewer',_0x482fe4=_0x17f443[_0xdb2c7b(0x1ec)]?_0xdb2c7b(0x255)+(_0x17f443[_0xdb2c7b(0x1ec)][_0xdb2c7b(0x26d)][_0xdb2c7b(0x1c7)](_0xdb2c7b(0x228))[_0xdb2c7b(0x1d7)]()?.[_0xdb2c7b(0x1c7)](':')[0x0]||_0x309b45[_0xdb2c7b(0x22b)])+_0xdb2c7b(0x211)+(_0x17f443[_0xdb2c7b(0x1ec)]['textContent']||'')[_0xdb2c7b(0x1cd)](0x0,0x32)+'\x22)':'';return _0xdb2c7b(0x235)+_0x17f443['id']+_0xdb2c7b(0x1bf)+_0x250cdc+_0xdb2c7b(0x218)+_0x4224b8+'):\x20\x22'+_0x17f443['content']+'\x22'+_0x482fe4;})['join']('\x0a');return _0x1752d7(0x259)+_0x11792e;}function buildNovaSharedOptionsInstruction(_0x4aff11){const _0x58c515=_0x23891f;if(!_0x4aff11[_0x58c515(0x1ff)]())return'The\x20command\x20prefix\x20already\x20injects\x20session,\x20auth,\x20region,\x20workflow,\x20user-data,\x20headless,\x20and\x20JSON\x20options.\x0aDo\x20not\x20run\x20raw\x20`act\x20browser`.\x20Do\x20not\x20add\x20`--auth-mode`,\x20`--aws-profile`,\x20`--region`,\x20`--workflow-name`,\x20`--session-id`,\x20`--user-data-dir`,\x20`--headless`,\x20or\x20`--headed`\x20yourself.';return _0x58c515(0x222)+_0x4aff11;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x2a547b){const _0x263bbe=_0x23891f,_0x63e213={'DBpqu':function(_0x2cf327,_0x2529d1,_0x489a1f){return _0x2cf327(_0x2529d1,_0x489a1f);},'gHbqY':'02_final-state.yml','eJoSd':_0x263bbe(0x221),'VTkLl':function(_0x24547a,_0x25f318){return _0x24547a(_0x25f318);}},{novaCommandPrefix:_0x5cdb1d,novaSharedOptionsSuffix:_0x379d95,cliArtifactDir:_0x2d931a,url:_0x5392b9}=_0x2a547b,_0x10cefd=_0x63e213[_0x263bbe(0x229)](buildCliArtifactPath,_0x2d931a,'00_initial-state.yml'),_0xc0f929=_0x63e213[_0x263bbe(0x229)](buildCliArtifactPath,_0x2d931a,'01_initial-state.png'),_0x343789=_0x63e213[_0x263bbe(0x229)](buildCliArtifactPath,_0x2d931a,_0x63e213[_0x263bbe(0x219)]),_0x3cfd0b=buildCliArtifactPath(_0x2d931a,_0x63e213['eJoSd']);return _0x263bbe(0x1ce)+_0x5cdb1d+'\x0a\x0a'+_0x63e213['VTkLl'](buildNovaSharedOptionsInstruction,_0x379d95)+'\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`'+_0x5cdb1d+'\x20session\x20create\x20'+quoteShellArg(_0x5392b9)+'\x20'+_0x379d95+'`\x0a2.\x20Run\x20`'+_0x5cdb1d+_0x263bbe(0x1e5)+quoteShellArg(_0x10cefd)+'\x20'+_0x379d95+'`\x0a3.\x20Run\x20`'+_0x5cdb1d+'\x20screenshot\x20--output\x20'+quoteShellArg(_0xc0f929)+'\x20'+_0x379d95+_0x263bbe(0x258)+_0x5cdb1d+_0x263bbe(0x19a)+_0x5cdb1d+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x343789)+'\x20'+_0x379d95+'`\x0a6.\x20Run\x20`'+_0x5cdb1d+_0x263bbe(0x261)+_0x63e213['VTkLl'](quoteShellArg,_0x3cfd0b)+'\x20'+_0x379d95+'`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`'+_0x2d931a+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}function _0x16ff(_0x3a05a2,_0x572565){_0x3a05a2=_0x3a05a2-0x18d;const _0x516184=_0x5161();let _0x16ffc5=_0x516184[_0x3a05a2];return _0x16ffc5;}export function buildVerifyFeatureNovaCliPrompt(_0x2626be){const _0x51598c=_0x23891f,_0x366c05={'jDbyX':'01_initial-state.png','mPZCT':function(_0x4ee494,_0x28e3d5,_0x492bbf){return _0x4ee494(_0x28e3d5,_0x492bbf);},'ZNQCP':function(_0x25201d,_0x5ccdd3){return _0x25201d(_0x5ccdd3);},'mNcWC':function(_0x4cc49c,_0x5e6f56){return _0x4cc49c(_0x5e6f56);},'yZSoR':_0x51598c(0x267),'INCWM':function(_0x5861c2,_0x2bf38e){return _0x5861c2(_0x2bf38e);}},{checklistItem:_0x2a6b16,itemFeedback:_0x20f458,taskDescription:_0x2a2ff5,novaCommandPrefix:_0x253632,novaSharedOptionsSuffix:_0x4b6770,cliArtifactDir:_0x1fca70,url:_0x33270f,loginInstructions:_0x12d34c}=_0x2626be,_0x1a875b=_0x2a6b16['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x2a6b16[_0x51598c(0x237)]:'',_0x5d6100=buildFeedbackSection(_0x20f458),_0x7f1247=_0x20f458?.[_0x51598c(0x1e3)]?_0x51598c(0x247)+_0x20f458[_0x51598c(0x1e3)]:'',_0x1610af=_0x12d34c?_0x51598c(0x1d1)+_0x12d34c+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x2414ce=buildCliArtifactPath(_0x1fca70,_0x51598c(0x1d2)),_0x4bd7d5=buildCliArtifactPath(_0x1fca70,_0x366c05[_0x51598c(0x250)]),_0x1f1a00=_0x366c05[_0x51598c(0x20c)](buildCliArtifactPath,_0x1fca70,'key_03_success-state.png');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'+_0x2a6b16['description']+_0x1a875b+_0x5d6100+_0x7f1247+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x2a2ff5+_0x51598c(0x1c0)+_0x33270f+'\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'+_0x1610af+'\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`'+_0x253632+_0x51598c(0x253)+quoteShellArg(_0x33270f)+'\x20'+_0x4b6770+_0x51598c(0x241)+_0x1fca70+'`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`'+_0x253632+_0x51598c(0x1e5)+_0x366c05['ZNQCP'](quoteShellArg,_0x2414ce)+'\x20'+_0x4b6770+_0x51598c(0x1e8)+_0x253632+'\x20screenshot\x20--output\x20'+_0x366c05[_0x51598c(0x23e)](quoteShellArg,_0x4bd7d5)+'\x20'+_0x4b6770+'`.\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`'+_0x1f1a00+_0x51598c(0x1aa)+_0x253632+_0x51598c(0x214)+(_0x4b6770[_0x51598c(0x1ff)]()?'`'+_0x4b6770+'`':_0x366c05['yZSoR'])+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x4b6770)+_0x51598c(0x1b1)+_0x253632+_0x51598c(0x1a2)+_0x4b6770+'`\x0a-\x20`'+_0x253632+'\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20'+_0x4b6770+'`\x0a-\x20`'+_0x253632+'\x20snapshot\x20--output\x20'+_0x366c05[_0x51598c(0x252)](quoteShellArg,_0x2414ce)+'\x20'+_0x4b6770+_0x51598c(0x24b)+_0x253632+_0x51598c(0x261)+quoteShellArg(_0x1f1a00)+'\x20'+_0x4b6770+'`\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(_0xb4473c){const _0x174a28=_0x23891f,_0x1bc8b4={'iPdnR':function(_0xd104ed,_0x3851c9){return _0xd104ed===_0x3851c9;}},_0x227b37=[..._0xb4473c['keys']()][_0x174a28(0x22f)]();let _0x20a748=0x0;for(const _0x2daaef of _0xb4473c[_0x174a28(0x1fd)]()){_0x20a748+=_0x2daaef;}return{'cliCommandCount':_0x20a748,'cliCommandsSeen':_0x227b37,'noCliCommandsCalled':_0x1bc8b4[_0x174a28(0x24f)](_0x20a748,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x3a3615,_0x3453ff){const _0x27f396=_0x23891f,_0x44ddef={'Qlfwj':function(_0x45446b,_0x4157e1){return _0x45446b!==_0x4157e1;},'FyMXT':function(_0x218d05,_0x37afbc){return _0x218d05!==_0x37afbc;},'HJATd':_0x27f396(0x1e1),'ZECFQ':'Bash','DplMS':_0x27f396(0x19e),'bCgKs':function(_0x445fe9,_0xf20d95){return _0x445fe9(_0xf20d95);},'vVyuf':function(_0x31f6d6,_0x5ed448,_0x590bb1){return _0x31f6d6(_0x5ed448,_0x590bb1);},'DORiA':function(_0x1d99eb,_0x19849a){return _0x1d99eb===_0x19849a;},'EvFMz':_0x27f396(0x200),'IfTNJ':'nova-act-cli','YuVHz':_0x27f396(0x21e)},_0x4611a9=new Map(),_0x258def=async _0x52f269=>{const _0x475b27=_0x27f396;if(_0x52f269[_0x475b27(0x1ac)]!==_0x475b27(0x1be))return{};const _0x394f38=_0x52f269;if(_0x44ddef[_0x475b27(0x1d6)](_0x394f38[_0x475b27(0x26c)],'Bash'))return{};const _0x4fefad=_0x394f38[_0x475b27(0x20f)],_0x506e5e=extractBashCommand(_0x4fefad);if(!_0x506e5e)return{};const _0x316c56=getNovaActCliCommandBlockReason(_0x506e5e);if(!_0x316c56)return{};return{'decision':'block','reason':_0x316c56};},_0x1e8767=async _0x216359=>{const _0x3f5ecb=_0x27f396;if(_0x44ddef['FyMXT'](_0x216359['hook_event_name'],_0x44ddef['HJATd']))return{};const _0x5b0b6c=_0x216359;if(_0x5b0b6c['tool_name']!==_0x44ddef['ZECFQ'])return{};const _0x4ed183=_0x5b0b6c['tool_input'],_0x5cef46=extractBashCommand(_0x4ed183);if(!_0x5cef46)return{};const _0x495e6f=parseNovaActCliCommand(_0x5cef46);if(!_0x495e6f)return{};_0x4611a9[_0x3f5ecb(0x193)](_0x495e6f,(_0x4611a9['get'](_0x495e6f)||0x0)+0x1),_0x3a3615['trackPhaseStart'](_0x44ddef[_0x3f5ecb(0x204)],{'subcommand':_0x495e6f}),_0x3a3615['trackPhaseEnd'](_0x44ddef['DplMS'],{'subcommand':_0x495e6f,'commandPreview':_0x44ddef[_0x3f5ecb(0x194)](previewNovaActCliCommand,_0x5cef46)}),console[_0x3f5ecb(0x216)](_0x3f5ecb(0x1bd)+_0x44ddef[_0x3f5ecb(0x26e)](formatNovaActCliLog,_0x5cef46,_0x495e6f));if(_0x44ddef['DORiA'](_0x495e6f,_0x44ddef[_0x3f5ecb(0x23c)])&&_0x3453ff)try{await _0x3453ff[_0x3f5ecb(0x24e)]();}catch(_0x3cc841){await _0x3a3615[_0x3f5ecb(0x271)](_0x3f5ecb(0x25e),_0x3cc841,{'transport':_0x44ddef['IfTNJ']});}return{};},_0x110ebc=async _0x591d2f=>{const _0x50755d=_0x27f396;if(_0x44ddef['FyMXT'](_0x591d2f['hook_event_name'],_0x44ddef['YuVHz']))return{};const _0x4a0956=_0x591d2f;if(_0x4a0956['tool_name']!=='Bash')return{};return await _0x3a3615['trackPhaseError']('nova_act_command_failure',_0x4a0956[_0x50755d(0x1f0)],{'transport':'nova-act-cli','toolName':_0x50755d(0x1b4)}),{};};return{'preToolUseHook':_0x258def,'postToolUseHook':_0x1e8767,'postToolUseFailureHook':_0x110ebc,'commandCounts':_0x4611a9};}async function runNovaLifecycleCommand(_0x38161f){const _0x1bc868=_0x23891f,_0x3fe77a={'VdyUR':function(_0x24a96b,_0x59d0c3){return _0x24a96b(_0x59d0c3);}},{novaOptions:_0x23381f,commandArgs:_0x3b5293,telemetry:_0x16260f,phase:_0x40d4ae,metadata:_0x1c192c,timeoutMs:_0xc56fc8}=_0x38161f;_0x16260f['trackPhaseStart'](_0x40d4ae,_0x1c192c);try{const _0x51da47=await runNovaActCliCommand({..._0x23381f,'commandArgs':_0x3b5293,'cwd':process[_0x1bc868(0x1dd)](),'env':process['env'],'timeoutMs':_0xc56fc8??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x16260f['trackPhaseEnd'](_0x40d4ae,{..._0x1c192c,'subcommand':_0x51da47[_0x1bc868(0x1ef)]['subcommand'],'commandPreview':previewNovaActCliCommand(_0x51da47['invocation']['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0x51da47[_0x1bc868(0x201)]),'stderrPreview':previewNovaActCliCommand(_0x51da47['stderr']),'logDir':_0x3fe77a[_0x1bc868(0x1fc)](extractNovaActLogDir,_0x51da47[_0x1bc868(0x201)])});}catch(_0x163594){await _0x16260f['trackPhaseError'](_0x40d4ae,_0x163594,_0x1c192c);throw _0x163594;}}export async function finalizeVerifyFeatureNovaCliSession(_0x1e69ae){const _0x506815=_0x23891f,_0x4f185b={'EDgFm':_0x506815(0x23d),'gVufw':'--output','VTqUW':function(_0x1f9d81,_0x3764d0,_0x133d20){return _0x1f9d81(_0x3764d0,_0x133d20);},'MPaOE':_0x506815(0x208),'ZOmWC':'session','zfbGg':_0x506815(0x243),'XTEOz':'json','jcQOm':_0x506815(0x1f6),'FeiZj':_0x506815(0x1b5),'SQpjN':_0x506815(0x212),'TWSXf':'close','UuKns':function(_0x506163,_0x2b09d6){return _0x506163===_0x2b09d6;},'ErPZS':_0x506815(0x269),'emovN':function(_0x1458a4,_0x2e11bb){return _0x1458a4(_0x2e11bb);}},{telemetry:_0x5818d5,novaOptions:_0x4fcbfb,cliArtifactDir:_0x38226b,transportMetadata:_0x4df6ec,artifactRecorder:_0x1a5090}=_0x1e69ae,_0x23a743=[{'phase':_0x4f185b[_0x506815(0x207)],'commandArgs':['screenshot',_0x4f185b['gVufw'],_0x4f185b[_0x506815(0x1a3)](buildCliArtifactPath,_0x38226b,'key_final-state.png')]},{'phase':'nova_act_final_snapshot','commandArgs':[_0x506815(0x225),'--output',buildCliArtifactPath(_0x38226b,'final-state.yaml')]},{'phase':_0x4f185b['MPaOE'],'commandArgs':[_0x4f185b[_0x506815(0x20e)],'export',_0x4f185b[_0x506815(0x1f5)],_0x4f185b['XTEOz'],_0x506815(0x256),buildCliArtifactPath(_0x38226b,_0x4f185b[_0x506815(0x210)])]},{'phase':_0x4f185b['FeiZj'],'commandArgs':[_0x4f185b[_0x506815(0x20e)],_0x4f185b[_0x506815(0x18f)],'--report','--output-dir',_0x4f185b[_0x506815(0x1a3)](buildCliArtifactPath,_0x38226b,_0x506815(0x202))]},{'phase':_0x506815(0x269),'commandArgs':[_0x4f185b[_0x506815(0x20e)],_0x4f185b[_0x506815(0x1f4)]]}];for(const _0x5db30e of _0x23a743){_0x4f185b['UuKns'](_0x5db30e[_0x506815(0x1b3)],_0x4f185b['ErPZS'])&&await _0x1a5090?.['stop']();try{await _0x4f185b['emovN'](runNovaLifecycleCommand,{'novaOptions':_0x4fcbfb,'commandArgs':[..._0x5db30e['commandArgs']],'telemetry':_0x5818d5,'phase':_0x5db30e['phase'],'metadata':_0x4df6ec});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x2153da){const _0x36aea6=_0x23891f,_0xc25391={'KUZXa':function(_0x397169,_0x747de8,_0x311979){return _0x397169(_0x747de8,_0x311979);},'RLIJc':function(_0x376659,_0x20473e){return _0x376659<_0x20473e;},'jBALy':function(_0x1046a6,_0x900f04){return _0x1046a6===_0x900f04;},'cOGDK':function(_0x2a3bd1,_0x543e60,_0x148d26){return _0x2a3bd1(_0x543e60,_0x148d26);}},{cwd:_0x17fccc,cliArtifactDir:_0x38dd1c,startTime:_0xc37cef}=_0x2153da,_0x41be49=[];await _0xc25391[_0x36aea6(0x1de)](mkdir,_0x38dd1c,{'recursive':!![]});const _0x1b5f95=await readdir(_0x17fccc,{'withFileTypes':!![]});for(const _0x12614b of _0x1b5f95){if(!_0x12614b['isFile']()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x36aea6(0x19d)](_0x12614b['name']))continue;const _0x3768bb=_0xc25391[_0x36aea6(0x1de)](join,_0x17fccc,_0x12614b['name']),_0xa8bfca=await stat(_0x3768bb);if(_0xc25391[_0x36aea6(0x1f9)](_0xa8bfca[_0x36aea6(0x1eb)]+0x7d0,_0xc37cef))continue;const _0x53f82c=_0xc25391['KUZXa'](buildCliArtifactPath,_0x38dd1c,_0x12614b['name']);if(_0xc25391[_0x36aea6(0x1c4)](_0x3768bb,_0x53f82c))continue;await _0xc25391[_0x36aea6(0x1ee)](rename,_0x3768bb,_0x53f82c),_0x41be49[_0x36aea6(0x203)](_0x12614b['name']);}return _0x41be49[_0x36aea6(0x22f)]();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x18b791){const _0x1daee4=_0x23891f,_0x4024f5={'sZGCc':_0x1daee4(0x1b8),'NrdxJ':function(_0x168dc2,_0x53e5bd){return _0x168dc2(_0x53e5bd);},'SqTxE':function(_0x58d951,_0x57c3c7){return _0x58d951(_0x57c3c7);}},_0x174bfa=join(_0x18b791,_0x4024f5['sZGCc']);try{return{'buffer':await _0x4024f5[_0x1daee4(0x1c3)](readFile,_0x174bfa),'source':_0x174bfa};}catch{return{'buffer':await _0x4024f5['SqTxE'](zipVerifyFeatureNovaArtifacts,_0x18b791),'source':_0x18b791};}}async function zipVerifyFeatureNovaArtifacts(_0x5fc509){const _0x288393=_0x23891f,_0x3ffc89={'kIoBC':function(_0x2e2852,_0xccb12,_0x1dbf5b,_0x5137ed){return _0x2e2852(_0xccb12,_0x1dbf5b,_0x5137ed);},'qvphB':_0x288393(0x1dc),'oipla':'nova-user-data/*','CBImO':function(_0xd3a6d8,_0x2923e0){return _0xd3a6d8(_0x2923e0);}},_0x56e40c=_0x3ffc89[_0x288393(0x233)](join,_0x5fc509,'..','nova-artifacts.zip');try{return await _0x3ffc89[_0x288393(0x233)](execFileAsync,_0x3ffc89[_0x288393(0x1f8)],['-qr',_0x56e40c,'.','-x',_0x3ffc89[_0x288393(0x1c1)]],{'cwd':_0x5fc509}),await _0x3ffc89['CBImO'](readFile,_0x56e40c);}finally{await rm(_0x56e40c,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x2a62f5){const _0xd939f9=_0x23891f,_0x25e6f5={'MOrGR':function(_0x1889cd,_0x556939,_0x18ffe6){return _0x1889cd(_0x556939,_0x18ffe6);},'fcwgi':function(_0x464637,_0x2159bb,_0x443ac1){return _0x464637(_0x2159bb,_0x443ac1);}},_0x358262=_0x25e6f5[_0xd939f9(0x1a0)](buildNovaActCliInvocation,_0x2a62f5['novaOptions'],_0x2a62f5['commandArgs']);return{'command':_0x358262[_0xd939f9(0x190)],'args':_0x358262[_0xd939f9(0x1e6)],'commandPreview':previewNovaActCliCommand(_0x358262['shellCommand']),'subcommand':_0x358262[_0xd939f9(0x1db)],'sharedOptionsSuffix':_0x25e6f5['fcwgi'](buildNovaActCliSharedOptionsSuffix,_0x2a62f5['novaOptions'],_0x2a62f5['commandArgs'])};}
|
|
1
|
+
const _0x454f28=_0x3ae9;(function(_0x584ed0,_0xeaf2ce){const _0x4a4ab6=_0x3ae9,_0x3113f3=_0x584ed0();while(!![]){try{const _0x29e58a=parseInt(_0x4a4ab6(0x246))/0x1*(-parseInt(_0x4a4ab6(0x212))/0x2)+-parseInt(_0x4a4ab6(0x19d))/0x3*(-parseInt(_0x4a4ab6(0x236))/0x4)+-parseInt(_0x4a4ab6(0x22f))/0x5*(parseInt(_0x4a4ab6(0x185))/0x6)+parseInt(_0x4a4ab6(0x18b))/0x7+-parseInt(_0x4a4ab6(0x202))/0x8+parseInt(_0x4a4ab6(0x220))/0x9+parseInt(_0x4a4ab6(0x178))/0xa;if(_0x29e58a===_0xeaf2ce)break;else _0x3113f3['push'](_0x3113f3['shift']());}catch(_0x112a20){_0x3113f3['push'](_0x3113f3['shift']());}}}(_0x578b,0x4153d));import{execFile}from'child_process';import{mkdir,readdir,readFile,rename,rm,stat,writeFile}from'fs/promises';import{homedir}from'os';import{basename,join}from'path';import{promisify}from'util';function _0x3ae9(_0xff66a4,_0x2317cd){_0xff66a4=_0xff66a4-0x16d;const _0x578b98=_0x578b();let _0x3ae951=_0x578b98[_0xff66a4];return _0x3ae951;}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',_0x454f28(0x1fd),'verify',_0x454f28(0x1c5),'goto',_0x454f28(0x16e),_0x454f28(0x239),_0x454f28(0x1b1)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x242ac3,_0x4cc930){const _0x593ec8={'pmxXn':function(_0x37279c,_0x4ac661,_0x1a2cb0){return _0x37279c(_0x4ac661,_0x1a2cb0);}};return _0x593ec8['pmxXn'](join,_0x242ac3,_0x4cc930);}export class NovaActArtifactRecorder{[_0x454f28(0x184)];[_0x454f28(0x189)]=null;[_0x454f28(0x1c3)]=null;[_0x454f28(0x1ad)]=null;['frameWrites']=[];[_0x454f28(0x1f2)]=0x0;[_0x454f28(0x196)]=0x0;[_0x454f28(0x225)]=null;['traceSampleInFlight']=null;[_0x454f28(0x17b)]=![];[_0x454f28(0x1e6)]=![];['startAttempted']=![];[_0x454f28(0x21b)]=![];constructor(_0x59a947){this['params']=_0x59a947;}async[_0x454f28(0x22c)](){const _0x46053a=_0x454f28,_0x358bc2={'jUZuv':_0x46053a(0x1c9),'ginfV':'nova_act_artifact_recording'};if(this[_0x46053a(0x22b)])return;this[_0x46053a(0x22b)]=!![];const _0x57b43f=await this['readSessionMetadataWithRetry'](),_0x5ebb43=_0x57b43f[_0x46053a(0x1e1)];if(!_0x5ebb43)throw new Error(_0x46053a(0x1f1)+this['params']['novaOptions'][_0x46053a(0x1da)]);await mkdir(this['params']['cliArtifactDir'],{'recursive':!![]}),this['browser']=await chromium[_0x46053a(0x1be)](_0x5ebb43,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x46053a(0x1c3)]=this[_0x46053a(0x189)]['contexts']()[0x0]??null;if(!this['context'])throw new Error(_0x358bc2['jUZuv']);await this[_0x46053a(0x1c3)]['tracing'][_0x46053a(0x22c)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x46053a(0x18e)](),await this[_0x46053a(0x1ea)](),this['params'][_0x46053a(0x1e3)]['trackPhaseStart'](_0x358bc2[_0x46053a(0x1d5)],{...this[_0x46053a(0x184)][_0x46053a(0x1fb)],'cdpEndpoint':_0x5ebb43,'browserPid':_0x57b43f[_0x46053a(0x24d)],'sessionState':_0x57b43f['state']}),this['params'][_0x46053a(0x1e3)][_0x46053a(0x1d3)]('nova_act_artifact_recording',{...this['params']['transportMetadata'],'tracingStarted':this[_0x46053a(0x17b)],'screencastStarted':this['screencastStarted']});}async['stop'](){const _0x11cabf=_0x454f28,_0xe6320e={'dbwmV':_0x11cabf(0x1e4),'tWsRh':function(_0x7c1cab,_0x3b0db8,_0xb5ac4b){return _0x7c1cab(_0x3b0db8,_0xb5ac4b);},'COxHN':'trace.zip'};if(this['stopped'])return;this[_0x11cabf(0x21b)]=!![];const _0x79475f={...this['params'][_0x11cabf(0x1fb)],'frameCount':this[_0x11cabf(0x1f2)],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this[_0x11cabf(0x17b)],'screencastStarted':this['screencastStarted']};this['params'][_0x11cabf(0x1e3)]['trackPhaseStart'](_0xe6320e[_0x11cabf(0x1c0)],_0x79475f);try{await this['stopTraceSampling'](),await this['captureTraceSample'](),await this[_0x11cabf(0x1bf)](),await Promise['allSettled'](this[_0x11cabf(0x206)]);this['context']&&this[_0x11cabf(0x17b)]&&await this[_0x11cabf(0x1c3)]['tracing'][_0x11cabf(0x1dc)]({'path':_0xe6320e[_0x11cabf(0x232)](buildCliArtifactPath,this['params']['cliArtifactDir'],_0xe6320e['COxHN'])});const _0x12db51=await this[_0x11cabf(0x1c4)]();this[_0x11cabf(0x184)]['telemetry'][_0x11cabf(0x1d3)]('nova_act_artifact_recording_stop',{..._0x79475f,'videoPath':_0x12db51});}catch(_0x20fd9b){await this[_0x11cabf(0x184)]['telemetry'][_0x11cabf(0x17d)](_0xe6320e['dbwmV'],_0x20fd9b,_0x79475f);}finally{await this[_0x11cabf(0x189)]?.['close']()['catch'](()=>undefined),this['browser']=null,this[_0x11cabf(0x1c3)]=null,this[_0x11cabf(0x1ad)]=null;}}async[_0x454f28(0x177)](){const _0x2d3c09=_0x454f28,_0x5e4328={'qvuZr':function(_0x5df4b2,_0x230b25,_0x1710ea,_0x40cb49,_0x55128c,_0x17f665){return _0x5df4b2(_0x230b25,_0x1710ea,_0x40cb49,_0x55128c,_0x17f665);},'KHGNN':_0x2d3c09(0x189),'BdVOt':function(_0x86533,_0x1bacf6,_0x399a0e){return _0x86533(_0x1bacf6,_0x399a0e);},'ttFqh':'utf-8','OcApE':function(_0x5bb9db,_0x4ea90e){return _0x5bb9db(_0x4ea90e);},'qOtPB':function(_0x54a803,_0x56b479){return _0x54a803<_0x56b479;},'TOJSt':function(_0x2774e3,_0x122af0){return _0x2774e3 instanceof _0x122af0;}},_0x3f9890=_0x5e4328['qvuZr'](join,homedir(),'.act_cli',_0x5e4328[_0x2d3c09(0x19a)],_0x2d3c09(0x1a4),this[_0x2d3c09(0x184)][_0x2d3c09(0x1b3)]['sessionId']+'.json'),_0x58cf8d=Date[_0x2d3c09(0x237)]();let _0x634fea;do{try{const _0x5a2bd3=JSON[_0x2d3c09(0x203)](await _0x5e4328['BdVOt'](readFile,_0x3f9890,_0x5e4328['ttFqh']));if(_0x5a2bd3['cdp_endpoint'])return _0x5a2bd3;_0x634fea=new Error(_0x2d3c09(0x243)+_0x3f9890);}catch(_0x40461b){_0x634fea=_0x40461b;}await _0x5e4328['OcApE'](delay,0x64);}while(_0x5e4328[_0x2d3c09(0x23d)](Date[_0x2d3c09(0x237)]()-_0x58cf8d,NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x5e4328[_0x2d3c09(0x233)](_0x634fea,Error))throw _0x634fea;throw new Error(_0x2d3c09(0x1dd)+_0x3f9890);}async[_0x454f28(0x1ea)](){const _0x338980=_0x454f28,_0x2ef88e={'TGiJu':function(_0x2b5268,_0x5ba5bf){return _0x2b5268(_0x5ba5bf);},'MVBMt':function(_0x507d91,_0x440366,_0x27ef9f){return _0x507d91(_0x440366,_0x27ef9f);},'rsHyz':function(_0x5fd1db,_0x172380,_0x5c304e){return _0x5fd1db(_0x172380,_0x5c304e);},'FljDo':'Page.screencastFrame','bLmIn':_0x338980(0x231)};if(!this[_0x338980(0x1c3)])return;const _0xace71b=this[_0x338980(0x1c3)][_0x338980(0x19b)]()[0x0];if(!_0xace71b)return;const _0x3900c0=this['getFrameDir']();await _0x2ef88e[_0x338980(0x207)](mkdir,_0x3900c0,{'recursive':!![]});const _0x466957=await this[_0x338980(0x1c3)][_0x338980(0x229)](_0xace71b);this[_0x338980(0x1ad)]=_0x466957,_0x466957['on'](_0x2ef88e[_0x338980(0x23c)],_0x190cf1=>{const _0x370448=_0x338980,_0x2368d3=++this[_0x370448(0x1f2)],_0x51aef2=join(_0x3900c0,_0x370448(0x1de)+_0x2ef88e[_0x370448(0x1e5)](String,_0x2368d3)['padStart'](0x6,'0')+'.jpg'),_0x47f4da=_0x2ef88e[_0x370448(0x24b)](writeFile,_0x51aef2,Buffer['from'](_0x190cf1['data'],'base64'))['catch'](()=>undefined)['finally'](()=>_0x466957[_0x370448(0x1fc)](_0x370448(0x1d7),{'sessionId':_0x190cf1['sessionId']}))['then'](()=>undefined)[_0x370448(0x209)](()=>undefined);this['frameWrites']['push'](_0x47f4da);}),await _0x466957['send']('Page.startScreencast',{'format':_0x2ef88e['bLmIn'],'quality':0x4b,'everyNthFrame':0x6}),this['screencastStarted']=!![];}async['stopScreencast'](){const _0x1736d2=_0x454f28;if(!this[_0x1736d2(0x1ad)]||!this[_0x1736d2(0x1e6)])return;await this['frameSession'][_0x1736d2(0x1fc)](_0x1736d2(0x176))[_0x1736d2(0x209)](()=>undefined);}[_0x454f28(0x18e)](){const _0x557f8e=_0x454f28;this['queueTraceSample'](),this['traceSampleTimer']=setInterval(()=>this[_0x557f8e(0x204)](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x454f28(0x204)](){if(this['traceSampleInFlight'])return;this['traceSampleInFlight']=this['captureTraceSample']()['finally'](()=>{const _0x2312e3=_0x3ae9;this[_0x2312e3(0x222)]=null;});}async[_0x454f28(0x221)](){const _0x3eaec9=_0x454f28;this[_0x3eaec9(0x225)]&&(clearInterval(this[_0x3eaec9(0x225)]),this[_0x3eaec9(0x225)]=null),await this['traceSampleInFlight']?.[_0x3eaec9(0x209)](()=>undefined);}async[_0x454f28(0x248)](){const _0x405c0c=_0x454f28,_0x48f331=this[_0x405c0c(0x1c3)]?.[_0x405c0c(0x19b)]()[0x0];if(!_0x48f331)return;try{await _0x48f331[_0x405c0c(0x1bb)](_0x405c0c(0x21a))[_0x405c0c(0x1e8)](_0x2345ff=>_0x2345ff[_0x405c0c(0x16f)],undefined,{'timeout':0x3e8}),this[_0x405c0c(0x196)]++;}catch{}}async[_0x454f28(0x1c4)](){const _0x583966=_0x454f28,_0x5a9ea0={'Owtmq':function(_0x17be28,_0x41dad0){return _0x17be28<_0x41dad0;},'iqoho':function(_0x379320){return _0x379320();},'UQxZm':function(_0x1abbc0,_0x205804,_0x113e82){return _0x1abbc0(_0x205804,_0x113e82);},'QquFV':'videos','SCFTA':'error','ZXLVi':'-framerate','NpYlP':'-vf','ZXgBa':'-c:v','oSMJN':_0x583966(0x23a),'OFBVs':_0x583966(0x1d1)};if(_0x5a9ea0[_0x583966(0x1b4)](this[_0x583966(0x1f2)],0x2))return null;const _0x137fb0=await _0x5a9ea0[_0x583966(0x22e)](resolveFfmpegPath);if(!_0x137fb0)return null;const _0x156ccf=_0x5a9ea0[_0x583966(0x174)](join,this['params'][_0x583966(0x1ef)],_0x5a9ea0['QquFV']);await mkdir(_0x156ccf,{'recursive':!![]});const _0x5bebef=join(_0x156ccf,'session-recording.webm');return await execFileAsync(_0x137fb0,['-y',_0x583966(0x192),_0x583966(0x244),_0x5a9ea0['SCFTA'],_0x5a9ea0[_0x583966(0x1d0)],'10','-i',join(this[_0x583966(0x216)](),_0x583966(0x19f)),_0x5a9ea0['NpYlP'],'scale=trunc(iw/2)*2:trunc(ih/2)*2',_0x5a9ea0['ZXgBa'],_0x5a9ea0[_0x583966(0x1ce)],_0x5a9ea0[_0x583966(0x22d)],_0x583966(0x1a1),_0x5bebef]),_0x5bebef;}['getFrameDir'](){const _0x118115=_0x454f28,_0x33da93={'kBeDA':function(_0x52e8e9,_0x336f52,_0x122ea0){return _0x52e8e9(_0x336f52,_0x122ea0);}};return _0x33da93[_0x118115(0x17c)](join,this[_0x118115(0x184)]['cliArtifactDir'],'nova-video-frames');}}async function delay(_0x158740){await new Promise(_0x1a65b1=>setTimeout(_0x1a65b1,_0x158740));}async function resolveFfmpegPath(){const _0x5bf1b4=_0x454f28,_0x5ce3e1={'phTXo':function(_0x2b9732,_0x171c8f){return _0x2b9732(_0x171c8f);},'IlfAz':_0x5bf1b4(0x20e),'IxfAI':_0x5bf1b4(0x205)};if(await _0x5ce3e1[_0x5bf1b4(0x1fa)](canRunFfmpeg,_0x5ce3e1[_0x5bf1b4(0x1ec)]))return _0x5bf1b4(0x20e);const _0x383c09=[join(homedir(),'Library',_0x5bf1b4(0x1ae),'ms-playwright'),join(homedir(),'.cache',_0x5ce3e1['IxfAI'])];for(const _0x428c9c of _0x383c09){try{const _0x529259=await readdir(_0x428c9c),_0x18fe0e=_0x529259[_0x5bf1b4(0x214)](_0x1aa25f=>_0x1aa25f['startsWith']('ffmpeg-'))[_0x5bf1b4(0x235)]()[_0x5bf1b4(0x1a3)]()['flatMap'](_0x10eb6d=>[join(_0x428c9c,_0x10eb6d,'ffmpeg-mac'),join(_0x428c9c,_0x10eb6d,'ffmpeg-linux'),join(_0x428c9c,_0x10eb6d,'ffmpeg.exe')]);for(const _0x384ccc of _0x18fe0e){if(await canRunFfmpeg(_0x384ccc))return _0x384ccc;}}catch{}}return null;}async function canRunFfmpeg(_0x111c37){const _0x411038=_0x454f28,_0xa296f7={'rIWaZ':function(_0x4b27d8,_0x7495ad,_0x2e485a){return _0x4b27d8(_0x7495ad,_0x2e485a);}};try{return await _0xa296f7[_0x411038(0x1b9)](execFileAsync,_0x111c37,[_0x411038(0x193)]),!![];}catch{return![];}}function toStepDisplayName(_0x43e8c2){const _0x52252c=_0x454f28,_0x4879ff={'ALDOP':function(_0x74b5fb,_0x6ef91d){return _0x74b5fb(_0x6ef91d);}},_0xa09ce2=_0x4879ff['ALDOP'](basename,_0x43e8c2)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x52252c(0x1a6)](/^\d+_/,'')[_0x52252c(0x1a6)](/-/g,'\x20');return{'name':_0xa09ce2,'isKeyStep':/^key_/i['test'](basename(_0x43e8c2))};}function extractShellValue(_0x30b1ea){if(!_0x30b1ea)return null;return _0x30b1ea[0x1]??_0x30b1ea[0x2]??_0x30b1ea[0x3]??null;}function extractOutputOption(_0x405c00){const _0x56591e=_0x454f28;return extractShellValue(_0x405c00[_0x56591e(0x1f4)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function _0x578b(){const _0x5d0b24=['dYzqw','FljDo','qOtPB','env','cwd','unaddressedComments','motyR','error','Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20','-loglevel','create\x20Nova\x20browser\x20session','109913WunEJl','subcommand','captureTraceSample','jcoMi','tool_input','MVBMt','\x0a\x0a##\x20Additional\x20Notes\x0a','browser_pid','PreToolUse','wait-for','tagName','tool_name','lllLb','verify','content','UQxZm','\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`','Page.stopScreencast','readSessionMetadataWithRetry','279540wTBvdM','goto','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','tracingStarted','kBeDA','trackPhaseError','createdAt','hook_event_name','\x0a\x0aExamples:\x0a-\x20`','MEjOa','WUrKJ','oRQJM','params','150HwOWWg','Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a','gVBBn','RyKFP','browser','ImXMZ','1014433wVEuMO','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','canonicalFlow','startTraceSampling','shellCommand','name','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','-hide_banner','-version','pjUrx','--report','traceSampleCount','json','\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a','KHGNN','pages','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.','99CwNwXV','\x20snapshot\x20--output\x20','frame-%06d.jpg','`\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.','yuv420p','session','reverse','sessions','join','replace','LnIjC','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','nova_act_artifact_recording','UZlqj','-\x20[','frameSession','Caches','ZArjl','description','screenshot','`\x0a4.\x20Run\x20one\x20batched\x20`','novaOptions','Owtmq','capture\x20snapshot','nova-artifacts.zip','bJOdv','args','rIWaZ','set','locator','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','NJoJq','connectOverCDP','stopScreencast','dbwmV','jkZeP','notes','context','encodeScreencastVideo','ask','qHuuk','HnoBd','mtimeMs','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','stdout','trackPhaseStart','YNYNf','whxCz','oSMJN','domRef','ZXLVi','-pix_fmt','UqGsE','trackPhaseEnd','JyPDa','ginfV','element','Page.screencastFrameAck','LWkmp','trace.zip','sessionId','selector','stop','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','frame-','wait\x20for\x20page\x20condition','export','cdp_endpoint','sTKtC','telemetry','nova_act_artifact_recording_stop','TGiJu','screencastStarted','>\x20\x22','evaluate','03_final-state.png','startScreencast','test','IlfAz','--output','MMJFo','cliArtifactDir','nova_act_command','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','frameCount','qghzz','match','Wrjor','bisba','\x20>\x20','nova_act_session_close','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.','phTXo','transportMetadata','send','execute','commandArgs','capture\x20screenshot','`.\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`','zANsL','2278816VgeHGT','parse','queueTraceSample','ms-playwright','frameWrites','rsHyz','zip','catch','\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','pop','phase','invocation','ffmpeg','split','nova-act-cli','toLocaleDateString','2JcpgOI','Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.','filter','ucdPl','getFrameDir','kAPpB','\x20screenshot\x20--output\x20','push','body','stopped','command','navigate\x20browser','key_final-state.png','BXsUv','1299519ZRKjlA','stopTraceSampling','traceSampleInFlight','values','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','traceSampleTimer','textContent','isFile','`\x0a3.\x20Run\x20`','newCDPSession','\x20session\x20create\x20','startAttempted','start','OFBVs','iqoho','16645KjzyAS','nova_act_final_snapshot','jpeg','tWsRh','TOJSt','BfiEK','sort','51916OMbzOy','now','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','snapshot','libvpx-vp9'];_0x578b=function(){return _0x5d0b24;};return _0x578b();}function formatNovaActCliLog(_0x2f7f50,_0x3d354d){const _0x44dd2a=_0x454f28,_0x388edd={'UqGsE':_0x44dd2a(0x245),'lllLb':'verify\x20page\x20condition','zANsL':function(_0xbacc8b,_0x36af3b){return _0xbacc8b(_0x36af3b);},'FwORK':function(_0x235bee,_0xfb1ade){return _0x235bee(_0xfb1ade);}};switch(_0x3d354d){case'session\x20create':return _0x388edd[_0x44dd2a(0x1d2)];case'execute':return'execute\x20Nova\x20browser\x20action';case _0x44dd2a(0x172):return _0x388edd[_0x44dd2a(0x171)];case _0x44dd2a(0x1c5):return'ask\x20page\x20question';case _0x44dd2a(0x179):return _0x44dd2a(0x21d);case'wait-for':return _0x44dd2a(0x1df);case'snapshot':{const _0x3c3d31=extractOutputOption(_0x2f7f50);if(!_0x3c3d31)return _0x44dd2a(0x1b5);const {name:_0x2c6b25}=toStepDisplayName(_0x3c3d31);return'capture\x20snapshot\x20`'+_0x2c6b25+'`';}case _0x44dd2a(0x1b1):{const _0x1575a3=_0x388edd[_0x44dd2a(0x201)](extractOutputOption,_0x2f7f50);if(!_0x1575a3)return _0x44dd2a(0x1ff);const {name:_0xb3618c,isKeyStep:_0x49842c}=_0x388edd['FwORK'](toStepDisplayName,_0x1575a3);return _0x49842c?'capture\x20key\x20step\x20`'+_0xb3618c+'`':'capture\x20step\x20`'+_0xb3618c+'`';}case'session\x20export':return'export\x20Nova\x20session';default:return _0x3d354d;}}function getNovaActCliCommandBlockReason(_0x2ee568){const _0x567454=_0x454f28,_0x54f764={'jcoMi':'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','dShOe':_0x567454(0x1f9)},_0x2b6c50=parseNovaActCliCommand(_0x2ee568);if(!_0x2b6c50)return _0x54f764[_0x567454(0x249)];if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS['has'](_0x2b6c50))return'Nova\x20command\x20`'+_0x2b6c50+'`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.';if(_0x2b6c50===_0x567454(0x172)&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x2ee568))return _0x54f764['dShOe'];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x2ee568))return _0x567454(0x213);return null;}function buildFeedbackSection(_0x4dea06){const _0x66c731=_0x454f28,_0x44ffa8={'Wrjor':'en-US','RyKFP':'numeric','jkZeP':_0x66c731(0x1f7),'BXsUv':_0x66c731(0x1d6)};if(!_0x4dea06||_0x4dea06[_0x66c731(0x240)]['length']===0x0)return'';const _0x5240d2=_0x4dea06[_0x66c731(0x240)]['map'](_0x554f53=>{const _0x28e5d5=_0x66c731,_0x109c1b=new Date(_0x554f53[_0x28e5d5(0x17e)])[_0x28e5d5(0x211)](_0x44ffa8[_0x28e5d5(0x1f5)],{'month':'short','day':_0x44ffa8[_0x28e5d5(0x188)]}),_0xfa5902=_0x554f53['authorName']||_0x554f53['authorEmail']||'Reviewer',_0x43cb86=_0x554f53[_0x28e5d5(0x1cf)]?'\x20(on\x20element:\x20<'+(_0x554f53[_0x28e5d5(0x1cf)][_0x28e5d5(0x1db)]['split'](_0x44ffa8[_0x28e5d5(0x1c1)])[_0x28e5d5(0x20b)]()?.[_0x28e5d5(0x20f)](':')[0x0]||_0x44ffa8[_0x28e5d5(0x21f)])+_0x28e5d5(0x1e7)+(_0x554f53[_0x28e5d5(0x1cf)][_0x28e5d5(0x226)]||'')['slice'](0x0,0x32)+'\x22)':'';return _0x28e5d5(0x1ac)+_0x554f53['id']+']\x20**'+_0xfa5902+'**\x20('+_0x109c1b+'):\x20\x22'+_0x554f53[_0x28e5d5(0x173)]+'\x22'+_0x43cb86;})[_0x66c731(0x1a5)]('\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'+_0x5240d2;}function buildNovaSharedOptionsInstruction(_0x2e7333){const _0x10dab3=_0x454f28;if(!_0x2e7333['trim']())return _0x10dab3(0x19c);return _0x10dab3(0x186)+_0x2e7333;}export function buildVerifyFeatureNovaCliDebugPrompt(_0xc97456){const _0x169881=_0x454f28,_0x192416={'dYzqw':function(_0x50c6cc,_0x30ee54,_0xc6b446){return _0x50c6cc(_0x30ee54,_0xc6b446);},'bisba':'00_initial-state.yml','ZArjl':'01_initial-state.png','qHuuk':function(_0x49d39f,_0x4fffd5,_0x8ddbce){return _0x49d39f(_0x4fffd5,_0x8ddbce);},'OwDPk':'02_final-state.yml','qghzz':function(_0x25552f,_0xba8a68){return _0x25552f(_0xba8a68);}},{novaCommandPrefix:_0x44673a,novaSharedOptionsSuffix:_0xd535f8,cliArtifactDir:_0x19f499,url:_0x719748}=_0xc97456,_0x1c2b4a=_0x192416[_0x169881(0x23b)](buildCliArtifactPath,_0x19f499,_0x192416[_0x169881(0x1f6)]),_0x266423=buildCliArtifactPath(_0x19f499,_0x192416[_0x169881(0x1af)]),_0x21f064=_0x192416[_0x169881(0x1c6)](buildCliArtifactPath,_0x19f499,_0x192416['OwDPk']),_0x1ab3f7=buildCliArtifactPath(_0x19f499,_0x169881(0x1e9));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'+_0x44673a+'\x0a\x0a'+_0x192416[_0x169881(0x1f3)](buildNovaSharedOptionsInstruction,_0xd535f8)+'\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`'+_0x44673a+_0x169881(0x22a)+quoteShellArg(_0x719748)+'\x20'+_0xd535f8+'`\x0a2.\x20Run\x20`'+_0x44673a+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x1c2b4a)+'\x20'+_0xd535f8+_0x169881(0x228)+_0x44673a+'\x20screenshot\x20--output\x20'+_0x192416['qghzz'](quoteShellArg,_0x266423)+'\x20'+_0xd535f8+_0x169881(0x1b2)+_0x44673a+_0x169881(0x1a8)+_0x44673a+_0x169881(0x19e)+_0x192416['qghzz'](quoteShellArg,_0x21f064)+'\x20'+_0xd535f8+'`\x0a6.\x20Run\x20`'+_0x44673a+_0x169881(0x218)+quoteShellArg(_0x1ab3f7)+'\x20'+_0xd535f8+_0x169881(0x191)+_0x19f499+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x353eb3){const _0x1fee57=_0x454f28,_0x207d9d={'gVBBn':function(_0x25c7c1,_0x490b47){return _0x25c7c1(_0x490b47);},'WUrKJ':function(_0x382e3c,_0x5ac574,_0x48d657){return _0x382e3c(_0x5ac574,_0x48d657);},'kAPpB':'01_initial-state.png','MFHVq':_0x1fee57(0x18c),'BfiEK':function(_0x2ba099,_0xb11d25){return _0x2ba099(_0xb11d25);}},{checklistItem:_0x1f2e3f,itemFeedback:_0x32a6a7,taskDescription:_0x196ef9,novaCommandPrefix:_0x116f07,novaSharedOptionsSuffix:_0x55101d,cliArtifactDir:_0x2fd6d1,url:_0x37ce0c,loginInstructions:_0x19e2cc}=_0x353eb3,_0x292da6=_0x1f2e3f[_0x1fee57(0x1c2)]?_0x1fee57(0x24c)+_0x1f2e3f[_0x1fee57(0x1c2)]:'',_0x1df15b=_0x207d9d[_0x1fee57(0x187)](buildFeedbackSection,_0x32a6a7),_0x4ba8b4=_0x32a6a7?.['canonicalFlow']?_0x1fee57(0x238)+_0x32a6a7[_0x1fee57(0x18d)]:'',_0x5f0716=_0x19e2cc?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x19e2cc+_0x1fee57(0x198):'',_0x23ac99=_0x207d9d[_0x1fee57(0x182)](buildCliArtifactPath,_0x2fd6d1,'01_initial.yml'),_0x55ebcc=buildCliArtifactPath(_0x2fd6d1,_0x207d9d[_0x1fee57(0x217)]),_0x5f1aa9=buildCliArtifactPath(_0x2fd6d1,'key_03_success-state.png');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'+_0x1f2e3f[_0x1fee57(0x1b0)]+_0x292da6+_0x1df15b+_0x4ba8b4+_0x1fee57(0x224)+_0x196ef9+'\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20'+_0x37ce0c+_0x1fee57(0x20a)+_0x5f0716+_0x1fee57(0x175)+_0x116f07+'\x20session\x20create\x20'+_0x207d9d[_0x1fee57(0x187)](quoteShellArg,_0x37ce0c)+'\x20'+_0x55101d+_0x1fee57(0x1a9)+_0x2fd6d1+'`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`'+_0x116f07+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x23ac99)+'\x20'+_0x55101d+'`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`'+_0x116f07+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x55ebcc)+'\x20'+_0x55101d+'`.\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`'+_0x5f1aa9+_0x1fee57(0x200)+_0x116f07+_0x1fee57(0x199)+(_0x55101d['trim']()?'`'+_0x55101d+'`':_0x207d9d['MFHVq'])+'\x0a\x0a'+_0x207d9d[_0x1fee57(0x234)](buildNovaSharedOptionsInstruction,_0x55101d)+_0x1fee57(0x180)+_0x116f07+_0x1fee57(0x1bc)+_0x55101d+'`\x0a-\x20`'+_0x116f07+_0x1fee57(0x17a)+_0x55101d+'`\x0a-\x20`'+_0x116f07+'\x20snapshot\x20--output\x20'+_0x207d9d['BfiEK'](quoteShellArg,_0x23ac99)+'\x20'+_0x55101d+'`\x0a-\x20`'+_0x116f07+'\x20screenshot\x20--output\x20'+_0x207d9d[_0x1fee57(0x187)](quoteShellArg,_0x5f1aa9)+'\x20'+_0x55101d+_0x1fee57(0x1a0);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x25f80e){const _0x484267=_0x454f28,_0x1035f6={'DgMhU':function(_0x2b28c0,_0x3ef7d3){return _0x2b28c0===_0x3ef7d3;}},_0x52f91b=[..._0x25f80e['keys']()][_0x484267(0x235)]();let _0x5e48b5=0x0;for(const _0x451fad of _0x25f80e[_0x484267(0x223)]()){_0x5e48b5+=_0x451fad;}return{'cliCommandCount':_0x5e48b5,'cliCommandsSeen':_0x52f91b,'noCliCommandsCalled':_0x1035f6['DgMhU'](_0x5e48b5,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x6dc56e,_0x2774be){const _0x259925=_0x454f28,_0x435969={'LnIjC':'Bash','cOyHS':function(_0x308770,_0x34abcd){return _0x308770(_0x34abcd);},'bJOdv':'PostToolUse','whxCz':function(_0x34a149,_0x1474e1){return _0x34a149!==_0x1474e1;},'nSVvD':function(_0x41022c,_0x5bf0d0){return _0x41022c(_0x5bf0d0);},'zzncc':'session\x20create','UZlqj':_0x259925(0x1aa),'jfOsk':'nova-act-cli','LWkmp':function(_0x42cf39,_0xec2c92){return _0x42cf39!==_0xec2c92;},'MEjOa':'PostToolUseFailure','nEvlo':'nova_act_command_failure'},_0x3c30e2=new Map(),_0x465d2b=async _0x2d1370=>{const _0x4a714a=_0x259925;if(_0x2d1370[_0x4a714a(0x17f)]!==_0x4a714a(0x16d))return{};const _0x3e891b=_0x2d1370;if(_0x3e891b['tool_name']!==_0x435969['LnIjC'])return{};const _0x131428=_0x3e891b[_0x4a714a(0x24a)],_0xded53=extractBashCommand(_0x131428);if(!_0xded53)return{};const _0x271c1f=_0x435969['cOyHS'](getNovaActCliCommandBlockReason,_0xded53);if(!_0x271c1f)return{};return{'decision':'block','reason':_0x271c1f};},_0x5c7705=async _0x26688d=>{const _0x3760fc=_0x259925;if(_0x26688d[_0x3760fc(0x17f)]!==_0x435969[_0x3760fc(0x1b7)])return{};const _0x4f0e33=_0x26688d;if(_0x435969[_0x3760fc(0x1cd)](_0x4f0e33[_0x3760fc(0x170)],_0x435969['LnIjC']))return{};const _0x15d17b=_0x4f0e33['tool_input'],_0x474882=_0x435969['nSVvD'](extractBashCommand,_0x15d17b);if(!_0x474882)return{};const _0x1596ae=_0x435969['nSVvD'](parseNovaActCliCommand,_0x474882);if(!_0x1596ae)return{};_0x3c30e2[_0x3760fc(0x1ba)](_0x1596ae,(_0x3c30e2['get'](_0x1596ae)||0x0)+0x1),_0x6dc56e[_0x3760fc(0x1cb)](_0x3760fc(0x1f0),{'subcommand':_0x1596ae}),_0x6dc56e['trackPhaseEnd'](_0x3760fc(0x1f0),{'subcommand':_0x1596ae,'commandPreview':_0x435969['cOyHS'](previewNovaActCliCommand,_0x474882)}),console['log']('[nova-act-cli]\x20'+formatNovaActCliLog(_0x474882,_0x1596ae));if(_0x1596ae===_0x435969['zzncc']&&_0x2774be)try{await _0x2774be[_0x3760fc(0x22c)]();}catch(_0x1f320b){await _0x6dc56e['trackPhaseError'](_0x435969[_0x3760fc(0x1ab)],_0x1f320b,{'transport':_0x435969['jfOsk']});}return{};},_0x4f70fb=async _0x12729f=>{const _0x4c84b7=_0x259925;if(_0x435969[_0x4c84b7(0x1d8)](_0x12729f['hook_event_name'],_0x435969[_0x4c84b7(0x181)]))return{};const _0x4f25d5=_0x12729f;if(_0x4f25d5['tool_name']!=='Bash')return{};return await _0x6dc56e['trackPhaseError'](_0x435969['nEvlo'],_0x4f25d5[_0x4c84b7(0x242)],{'transport':_0x4c84b7(0x210),'toolName':_0x435969[_0x4c84b7(0x1a7)]}),{};};return{'preToolUseHook':_0x465d2b,'postToolUseHook':_0x5c7705,'postToolUseFailureHook':_0x4f70fb,'commandCounts':_0x3c30e2};}async function runNovaLifecycleCommand(_0x32a3f0){const _0x380ae3=_0x454f28,_0x5d614f={'jEYru':function(_0x5a9ca9,_0x1b5d03){return _0x5a9ca9??_0x1b5d03;},'bdmDz':function(_0x1f015f,_0x9fc465){return _0x1f015f(_0x9fc465);}},{novaOptions:_0x2e704a,commandArgs:_0x21917e,telemetry:_0x19b1b7,phase:_0x53e8e6,metadata:_0x511acc,timeoutMs:_0x574227}=_0x32a3f0;_0x19b1b7[_0x380ae3(0x1cb)](_0x53e8e6,_0x511acc);try{const _0x123639=await runNovaActCliCommand({..._0x2e704a,'commandArgs':_0x21917e,'cwd':process[_0x380ae3(0x23f)](),'env':process[_0x380ae3(0x23e)],'timeoutMs':_0x5d614f['jEYru'](_0x574227,NOVA_ACT_CLI_COMMAND_TIMEOUT_MS)});_0x19b1b7[_0x380ae3(0x1d3)](_0x53e8e6,{..._0x511acc,'subcommand':_0x123639[_0x380ae3(0x20d)][_0x380ae3(0x247)],'commandPreview':previewNovaActCliCommand(_0x123639[_0x380ae3(0x20d)]['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0x123639[_0x380ae3(0x1ca)]),'stderrPreview':_0x5d614f['bdmDz'](previewNovaActCliCommand,_0x123639['stderr']),'logDir':extractNovaActLogDir(_0x123639['stdout'])});}catch(_0x464824){await _0x19b1b7['trackPhaseError'](_0x53e8e6,_0x464824,_0x511acc);throw _0x464824;}}export async function finalizeVerifyFeatureNovaCliSession(_0x43c859){const _0x1484db=_0x454f28,_0x46f408={'BUWsA':function(_0x314b46,_0x3182e3,_0x10f032){return _0x314b46(_0x3182e3,_0x10f032);},'QilBL':_0x1484db(0x21e),'XVTBz':_0x1484db(0x230),'oRQJM':'final-state.yaml','JyPDa':_0x1484db(0x1a2),'motyR':'--format','Qxbut':_0x1484db(0x197),'CkszG':'nova_act_session_report','pjUrx':'--output-dir','PTSBY':'nova_act_session_close','ucdPl':function(_0x15fc78,_0x1e376a){return _0x15fc78===_0x1e376a;}},{telemetry:_0x46d058,novaOptions:_0x54bcb7,cliArtifactDir:_0x3ec71d,transportMetadata:_0xcd238,artifactRecorder:_0x46ce13}=_0x43c859,_0x8a40f9=[{'phase':'nova_act_final_screenshot','commandArgs':['screenshot',_0x1484db(0x1ed),_0x46f408['BUWsA'](buildCliArtifactPath,_0x3ec71d,_0x46f408['QilBL'])]},{'phase':_0x46f408['XVTBz'],'commandArgs':[_0x1484db(0x239),_0x1484db(0x1ed),buildCliArtifactPath(_0x3ec71d,_0x46f408[_0x1484db(0x183)])]},{'phase':'nova_act_session_export','commandArgs':[_0x46f408['JyPDa'],_0x1484db(0x1e0),_0x46f408[_0x1484db(0x241)],_0x46f408['Qxbut'],_0x1484db(0x1ed),buildCliArtifactPath(_0x3ec71d,'nova-session-export.json')]},{'phase':_0x46f408['CkszG'],'commandArgs':[_0x46f408[_0x1484db(0x1d4)],'export',_0x1484db(0x195),_0x46f408[_0x1484db(0x194)],_0x46f408['BUWsA'](buildCliArtifactPath,_0x3ec71d,'nova-report')]},{'phase':_0x46f408['PTSBY'],'commandArgs':[_0x46f408[_0x1484db(0x1d4)],'close']}];for(const _0x25f252 of _0x8a40f9){_0x46f408[_0x1484db(0x215)](_0x25f252[_0x1484db(0x20c)],_0x1484db(0x1f8))&&await _0x46ce13?.['stop']();try{await runNovaLifecycleCommand({'novaOptions':_0x54bcb7,'commandArgs':[..._0x25f252['commandArgs']],'telemetry':_0x46d058,'phase':_0x25f252[_0x1484db(0x20c)],'metadata':_0xcd238});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0xa901e7){const _0x49f5a0=_0x454f28,_0xd768fa={'HnoBd':function(_0x5871ba,_0x5250a7,_0xcd31dd){return _0x5871ba(_0x5250a7,_0xcd31dd);},'MMJFo':function(_0x12e2b9,_0x141f54){return _0x12e2b9(_0x141f54);},'sTKtC':function(_0x8d1100,_0x39e830){return _0x8d1100===_0x39e830;}},{cwd:_0x319a02,cliArtifactDir:_0x242785,startTime:_0x2a12d2}=_0xa901e7,_0x58ed91=[];await _0xd768fa[_0x49f5a0(0x1c7)](mkdir,_0x242785,{'recursive':!![]});const _0x2ac312=await _0xd768fa[_0x49f5a0(0x1c7)](readdir,_0x319a02,{'withFileTypes':!![]});for(const _0x5880f8 of _0x2ac312){if(!_0x5880f8[_0x49f5a0(0x227)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x49f5a0(0x1eb)](_0x5880f8['name']))continue;const _0x59f175=_0xd768fa[_0x49f5a0(0x1c7)](join,_0x319a02,_0x5880f8[_0x49f5a0(0x190)]),_0x2ade49=await _0xd768fa[_0x49f5a0(0x1ee)](stat,_0x59f175);if(_0x2ade49[_0x49f5a0(0x1c8)]+0x7d0<_0x2a12d2)continue;const _0x2fdf71=buildCliArtifactPath(_0x242785,_0x5880f8[_0x49f5a0(0x190)]);if(_0xd768fa[_0x49f5a0(0x1e2)](_0x59f175,_0x2fdf71))continue;await rename(_0x59f175,_0x2fdf71),_0x58ed91[_0x49f5a0(0x219)](_0x5880f8['name']);}return _0x58ed91['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x1396a2){const _0x40a9cb=_0x454f28,_0x48b5bc={'YNYNf':function(_0x183507,_0x5ab84a,_0x5d5cb5){return _0x183507(_0x5ab84a,_0x5d5cb5);},'NJoJq':function(_0x15e06b,_0x2f732d){return _0x15e06b(_0x2f732d);}},_0x228f68=_0x48b5bc[_0x40a9cb(0x1cc)](join,_0x1396a2,_0x40a9cb(0x1d9));try{return{'buffer':await readFile(_0x228f68),'source':_0x228f68};}catch{return{'buffer':await _0x48b5bc[_0x40a9cb(0x1bd)](zipVerifyFeatureNovaArtifacts,_0x1396a2),'source':_0x1396a2};}}async function zipVerifyFeatureNovaArtifacts(_0x2a21d7){const _0x52bb42=_0x454f28,_0x5d6c5a={'ImXMZ':function(_0xecf3d6,_0x575d6f,_0x10d3a7,_0x38dde4){return _0xecf3d6(_0x575d6f,_0x10d3a7,_0x38dde4);},'KXdhZ':_0x52bb42(0x208),'jSxyK':'nova-user-data/*','JXXZO':function(_0x37196b,_0x5eddaa,_0x72608f){return _0x37196b(_0x5eddaa,_0x72608f);}},_0x14bd29=join(_0x2a21d7,'..',_0x52bb42(0x1b6));try{return await _0x5d6c5a[_0x52bb42(0x18a)](execFileAsync,_0x5d6c5a['KXdhZ'],['-qr',_0x14bd29,'.','-x',_0x5d6c5a['jSxyK']],{'cwd':_0x2a21d7}),await readFile(_0x14bd29);}finally{await _0x5d6c5a['JXXZO'](rm,_0x14bd29,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x53aa6d){const _0x289247=_0x454f28,_0x55b0c2={'MmloN':function(_0x2694d8,_0x33b440,_0x32b350){return _0x2694d8(_0x33b440,_0x32b350);}},_0x32f024=buildNovaActCliInvocation(_0x53aa6d[_0x289247(0x1b3)],_0x53aa6d[_0x289247(0x1fe)]);return{'command':_0x32f024[_0x289247(0x21c)],'args':_0x32f024[_0x289247(0x1b8)],'commandPreview':previewNovaActCliCommand(_0x32f024[_0x289247(0x18f)]),'subcommand':_0x32f024['subcommand'],'sharedOptionsSuffix':_0x55b0c2['MmloN'](buildNovaActCliSharedOptionsSuffix,_0x53aa6d[_0x289247(0x1b3)],_0x53aa6d['commandArgs'])};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x1c186c,_0x41ca89){const _0x4130a5=_0x248c,_0x17e492=_0x1c186c();while(!![]){try{const _0x874ac4=-parseInt(_0x4130a5(0x1bd))/0x1*(parseInt(_0x4130a5(0x18f))/0x2)+parseInt(_0x4130a5(0x1a2))/0x3*(-parseInt(_0x4130a5(0x191))/0x4)+parseInt(_0x4130a5(0x190))/0x5+-parseInt(_0x4130a5(0x1e9))/0x6*(parseInt(_0x4130a5(0x1e7))/0x7)+-parseInt(_0x4130a5(0x194))/0x8+-parseInt(_0x4130a5(0x1ec))/0x9+parseInt(_0x4130a5(0x1cd))/0xa;if(_0x874ac4===_0x41ca89)break;else _0x17e492['push'](_0x17e492['shift']());}catch(_0x20abd9){_0x17e492['push'](_0x17e492['shift']());}}}(_0x1776,0xee692));function _0x1776(){const _0x1a4f17=['`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`','values','AYwQg','\x20open-and-inspect\x20','inspect\x20page','2933sqmaax','iGVlK','10254mpptzf','hook_event_name','open\x20and\x20inspect','8788239VQtXGh','`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','...','BTNHY','36458YtZCTs','631965fERcFn','89560UxWBYG','commandPrefix','aOPIw','7635256tvhVAi','Bash','stderr','rangerwright_cli_video_stop','join','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','-\x20[','\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','go\x20back\x20and\x20inspect','authorName','trackPhaseEnd','\x20inspect\x20--screenshot-path\x20','commandArgs','21XMhNkm','FjpIK','stop\x20video\x20recording','rangerwright_cli_command','stdout','canonicalFlow','\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','fzcrf','close','test','match','mCNJB','.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.','map','bWYhZ','inspect','PostToolUse','rangerwright_cli_command_failure','\x20(on\x20element:\x20<','tracing-stop','set','GtOBw','click\x20and\x20inspect\x20','\x20>\x20','length','domRef','tool_name','73EFrUtZ','HhPVS','\x0a\x0a##\x20Additional\x20Notes\x0a','[rangerwright-cli]\x20','rangerwright-cli','video-stop','cwd','VIXQr','key_99_final-state.png','HnQZW','rangerwright_cli_close','back-and-inspect','description','get','error','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20','49845330RVeFlD','trackPhaseError','ikKIN','\x20click-and-inspect\x20e37\x20--screenshot-path\x20','BSlfR','en-US','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','ftbZj','(?:^|\x5cs)','\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`','Reviewer','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','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\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','bZaNI','>\x20\x22','stringify','VCFhC','textContent','sort','click-and-inspect'];_0x1776=function(){return _0x1a4f17;};return _0x1776();}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(_0x1be1f9,_0x4b45a7=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0xffabda=_0x248c,_0x25d4f3={'mjkWQ':function(_0x4140b3,_0x2cb335){return _0x4140b3+_0x2cb335;}};return _0x1be1f9[_0xffabda(0x1ba)]>_0x4b45a7?_0x25d4f3['mjkWQ'](_0x1be1f9['slice'](0x0,_0x4b45a7),_0xffabda(0x1ef)):_0x1be1f9;}function extractShellValue(_0x543c4d){if(!_0x543c4d)return null;return _0x543c4d[0x1]??_0x543c4d[0x2]??_0x543c4d[0x3]??null;}function extractFirstCommandArgument(_0x5dcad9,_0x3935ba){const _0x20202f=_0x248c,_0x3db130=_0x3935ba['replace'](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return extractShellValue(_0x5dcad9[_0x20202f(0x1ac)](new RegExp(_0x20202f(0x1d5)+_0x3db130+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0xa99929){const _0x319eab=_0x248c,_0x5a97ec={'VtSIe':function(_0x40254e,_0x4dbce7,_0x220d81){return _0x40254e(_0x4dbce7,_0x220d81);}};if(!_0xa99929)return'target';if(/^e\d+$/i[_0x319eab(0x1ab)](_0xa99929))return'ref\x20'+_0xa99929;return JSON[_0x319eab(0x1dd)](_0x5a97ec['VtSIe'](truncatePreview,_0xa99929,0x78));}function formatRangerwrightCliLog(_0x5e848f,_0x357cb7){const _0x500d59=_0x248c,_0x4a4a39={'dIXPA':function(_0x43b732,_0x34d90a){return _0x43b732(_0x34d90a);},'yvWjg':function(_0x2841da,_0x33f42a,_0x49e3d5){return _0x2841da(_0x33f42a,_0x49e3d5);},'fzcrf':_0x500d59(0x1c8),'zHYWb':_0x500d59(0x19d),'rfNXi':_0x500d59(0x1b1),'RzIGd':_0x500d59(0x1b5),'iGVlK':'stop\x20tracing','mCNJB':'video-stop','BTNHY':'close','VIXQr':'close\x20browser\x20session'};switch(_0x357cb7){case'open-and-inspect':{const _0x107809=extractFirstCommandArgument(_0x5e848f,_0x357cb7);return _0x107809?'open\x20and\x20inspect\x20'+_0x107809:_0x500d59(0x1eb);}case _0x500d59(0x1e1):return _0x500d59(0x1b8)+_0x4a4a39['dIXPA'](formatCommandTarget,_0x4a4a39['yvWjg'](extractFirstCommandArgument,_0x5e848f,_0x357cb7));case'fill':case'fill-and-inspect':return'fill\x20'+formatCommandTarget(extractFirstCommandArgument(_0x5e848f,_0x357cb7));case _0x4a4a39[_0x500d59(0x1a9)]:return _0x4a4a39['zHYWb'];case _0x4a4a39['rfNXi']:return _0x500d59(0x1e6);case _0x4a4a39['RzIGd']:return _0x4a4a39[_0x500d59(0x1e8)];case _0x4a4a39[_0x500d59(0x1ad)]:return _0x500d59(0x1a4);case _0x4a4a39[_0x500d59(0x1f0)]:return _0x4a4a39[_0x500d59(0x1c4)];default:return _0x357cb7;}}function renderScenarioSections(_0x51e1d1){const _0x4a9ce5=_0x248c,_0xc784d3={'GtOBw':_0x4a9ce5(0x1d2),'ZvDka':_0x4a9ce5(0x1d7),'bWYhZ':_0x4a9ce5(0x1b9)},{checklistItem:_0x32ff9e,itemFeedback:_0x83fbf8}=_0x51e1d1,_0x4f418d=_0x32ff9e['notes']?_0x4a9ce5(0x1bf)+_0x32ff9e['notes']:'';let _0x2058f7='';if(_0x83fbf8&&_0x83fbf8['unaddressedComments'][_0x4a9ce5(0x1ba)]>0x0){const _0x153a7b=_0x83fbf8['unaddressedComments'][_0x4a9ce5(0x1af)](_0x46bb54=>{const _0x3f94b7=_0x4a9ce5,_0x30991a=new Date(_0x46bb54['createdAt'])['toLocaleDateString'](_0xc784d3[_0x3f94b7(0x1b7)],{'month':'short','day':'numeric'}),_0x49c35d=_0x46bb54[_0x3f94b7(0x19e)]||_0x46bb54['authorEmail']||_0xc784d3['ZvDka'],_0x3711e2=_0x46bb54[_0x3f94b7(0x1bb)]?_0x3f94b7(0x1b4)+(_0x46bb54['domRef']['selector']['split'](_0xc784d3[_0x3f94b7(0x1b0)])['pop']()?.['split'](':')[0x0]||'element')+_0x3f94b7(0x1dc)+(_0x46bb54['domRef'][_0x3f94b7(0x1df)]||'')['slice'](0x0,0x32)+'\x22)':'';return _0x3f94b7(0x19a)+_0x46bb54['id']+']\x20'+_0x49c35d+'\x20('+_0x30991a+'):\x20\x22'+_0x46bb54['content']+'\x22'+_0x3711e2;})[_0x4a9ce5(0x198)]('\x0a');_0x2058f7=_0x4a9ce5(0x1a8)+_0x153a7b;}const _0x394752=_0x83fbf8?.[_0x4a9ce5(0x1a7)]?_0x4a9ce5(0x1ee)+_0x83fbf8['canonicalFlow']:'';return''+_0x32ff9e[_0x4a9ce5(0x1c9)]+_0x4f418d+_0x2058f7+_0x394752;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x5b86c8){const _0x384814=_0x248c,_0x416d64={'BSlfR':'01_initial-state.png','ayOfx':function(_0x106ff8,_0x30f3e6){return _0x106ff8(_0x30f3e6);},'FjpIK':function(_0x34b7bf,_0x111ea7){return _0x34b7bf(_0x111ea7);},'OZABl':function(_0x27973f,_0x5d5dd1){return _0x27973f??_0x5d5dd1;},'VCFhC':'about:blank'},{checklistItem:_0x299e89,itemFeedback:_0x4bfa9c,taskDescription:_0x53b166,commandPrefix:_0x40d384,isCdpMode:_0x593c4e,url:_0x1e28dc,cdpEndpoint:_0x5cbbca,loginInstructions:_0xb188fc}=_0x5b86c8,_0x10c0f5=_0x416d64[_0x384814(0x1d1)],_0x3c8ae3=_0x384814(0x1c5),_0x4963e5=_0x593c4e?_0x40d384+_0x384814(0x1a0)+_0x416d64['ayOfx'](quoteShellArg,_0x10c0f5):_0x40d384+_0x384814(0x1e5)+_0x416d64[_0x384814(0x1a3)](quoteShellArg,_0x416d64['OZABl'](_0x1e28dc,_0x416d64[_0x384814(0x1de)]))+'\x20--screenshot-path\x20'+_0x416d64['FjpIK'](quoteShellArg,_0x10c0f5),_0x1fd444=_0x593c4e?_0x384814(0x1cc)+_0x5cbbca+_0x384814(0x1ae):_0x384814(0x1d3)+_0x1e28dc+'\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.',_0x2195e1=_0xb188fc?_0x384814(0x19c)+_0xb188fc+_0x384814(0x199):'';return _0x384814(0x1d9)+renderScenarioSections({'checklistItem':_0x299e89,'itemFeedback':_0x4bfa9c})+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x53b166+'\x0a\x0a'+_0x1fd444+_0x2195e1+_0x384814(0x19b)+_0x40d384+'\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'+_0x4963e5+_0x384814(0x1da)+_0x40d384+_0x384814(0x1d0)+_0x416d64[_0x384814(0x1a3)](quoteShellArg,_0x3c8ae3)+'\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.';}function _0x248c(_0x5e2946,_0x2a5562){_0x5e2946=_0x5e2946-0x18f;const _0x17767f=_0x1776();let _0x248c8d=_0x17767f[_0x5e2946];return _0x248c8d;}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0x2092ba){const _0x1f4c2e=_0x248c,_0x5c2053={'aOPIw':'01_mozilla-homepage.png'},_0x236537=_0x5c2053[_0x1f4c2e(0x193)],_0x598c1c='key_02_learn-more.png';return _0x1f4c2e(0x1d8)+_0x2092ba[_0x1f4c2e(0x192)]+_0x1f4c2e(0x1d6)+_0x2092ba[_0x1f4c2e(0x192)]+_0x1f4c2e(0x1e5)+quoteShellArg(_0x2092ba['url'])+'\x20--screenshot-path\x20'+quoteShellArg(_0x236537)+_0x1f4c2e(0x1e2)+_0x2092ba[_0x1f4c2e(0x192)]+'\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20'+quoteShellArg(_0x598c1c)+_0x1f4c2e(0x1ed);}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x4284bb){const _0x32b06d=_0x248c,_0x5acba9=[..._0x4284bb['keys']()][_0x32b06d(0x1e0)]();let _0xbdf9f6=0x0;for(const _0x35dbff of _0x4284bb[_0x32b06d(0x1e3)]()){_0xbdf9f6+=_0x35dbff;}return{'cliCommandCount':_0xbdf9f6,'cliCommandsSeen':_0x5acba9,'noCliCommandsCalled':_0xbdf9f6===0x0};}export function createVerifyFeatureRangerwrightCliHooks(_0x1a8340){const _0x1c8185=_0x248c,_0x346353={'HnQZW':function(_0x3dc41c,_0x13c149){return _0x3dc41c!==_0x13c149;},'HhPVS':_0x1c8185(0x195),'ftbZj':_0x1c8185(0x1a5),'bZaNI':function(_0xf0f998,_0x32e3e2){return _0xf0f998!==_0x32e3e2;},'ikKIN':_0x1c8185(0x1b3)},_0x38fb55=new Map(),_0x25c59e=async _0x1cc43f=>{const _0x5568fd=_0x1c8185;if(_0x346353[_0x5568fd(0x1c6)](_0x1cc43f[_0x5568fd(0x1ea)],_0x5568fd(0x1b2)))return{};const _0x35c59b=_0x1cc43f;if(_0x346353[_0x5568fd(0x1c6)](_0x35c59b['tool_name'],_0x346353[_0x5568fd(0x1be)]))return{};const _0x2d3001=_0x35c59b['tool_input'],_0x530b66=extractBashCommand(_0x2d3001);if(!_0x530b66)return{};const _0x2de13a=parseRangerwrightCliCommand(_0x530b66);if(!_0x2de13a)return{};return _0x38fb55[_0x5568fd(0x1b6)](_0x2de13a,(_0x38fb55[_0x5568fd(0x1ca)](_0x2de13a)||0x0)+0x1),_0x1a8340['trackPhaseStart'](_0x346353[_0x5568fd(0x1d4)],{'subcommand':_0x2de13a}),_0x1a8340[_0x5568fd(0x19f)]('rangerwright_cli_command',{'subcommand':_0x2de13a,'commandPreview':truncatePreview(_0x530b66)}),console['log'](_0x5568fd(0x1c0)+formatRangerwrightCliLog(_0x530b66,_0x2de13a)),{};},_0x107f57=async _0x5549aa=>{const _0xa57724=_0x1c8185;if(_0x346353[_0xa57724(0x1c6)](_0x5549aa[_0xa57724(0x1ea)],'PostToolUseFailure'))return{};const _0x4832e3=_0x5549aa;if(_0x346353[_0xa57724(0x1db)](_0x4832e3[_0xa57724(0x1bc)],_0xa57724(0x195)))return{};return await _0x1a8340[_0xa57724(0x1ce)](_0x346353[_0xa57724(0x1cf)],_0x4832e3[_0xa57724(0x1cb)],{'transport':_0xa57724(0x1c1),'toolName':_0x346353['HhPVS']}),{};};return{'postToolUseHook':_0x25c59e,'postToolUseFailureHook':_0x107f57,'commandCounts':_0x38fb55};}async function runRangerwrightLifecycleCommand(_0x742617){const _0x558a8f=_0x248c,{options:_0x12bf6b,commandArgs:_0x4ecba5,env:_0x38a202,telemetry:_0x445643,phase:_0x56c9f7,metadata:_0xa61126,timeoutMs:_0x292aa4}=_0x742617;_0x445643['trackPhaseStart'](_0x56c9f7,_0xa61126);try{const _0x47bd18=await runRangerwrightCliCommand({..._0x12bf6b,'commandArgs':_0x4ecba5,'cwd':process[_0x558a8f(0x1c3)](),'env':_0x38a202,'timeoutMs':_0x292aa4??RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x445643[_0x558a8f(0x19f)](_0x56c9f7,{..._0xa61126,'subcommand':_0x47bd18['invocation']['subcommand'],'stdoutPreview':truncatePreview(_0x47bd18[_0x558a8f(0x1a6)],0x7d0),'stderrPreview':truncatePreview(_0x47bd18[_0x558a8f(0x196)],0x7d0)});}catch(_0x1e7f09){await _0x445643['trackPhaseError'](_0x56c9f7,_0x1e7f09,_0xa61126);throw _0x1e7f09;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x494e92){const _0x1f6046=_0x248c,_0x4ed738={'AYwQg':'rangerwright_cli_tracing_stop','kbgbG':'tracing-stop','RczWp':_0x1f6046(0x197),'Yxyrv':_0x1f6046(0x1aa),'OHObP':function(_0x59ffba,_0x45517b){return _0x59ffba(_0x45517b);}},{telemetry:_0x29f912,rangerwrightOptions:_0x4e9b63,env:_0x57a179,transportMetadata:_0x105a62}=_0x494e92,_0x326793=[{'phase':_0x4ed738[_0x1f6046(0x1e4)],'commandArgs':[_0x4ed738['kbgbG']]},{'phase':_0x4ed738['RczWp'],'commandArgs':[_0x1f6046(0x1c2)]},{'phase':_0x1f6046(0x1c7),'commandArgs':[_0x4ed738['Yxyrv']]}];for(const _0x406b08 of _0x326793){try{await _0x4ed738['OHObP'](runRangerwrightLifecycleCommand,{'options':_0x4e9b63,'commandArgs':[..._0x406b08[_0x1f6046(0x1a1)]],'env':_0x57a179,'telemetry':_0x29f912,'phase':_0x406b08['phase'],'metadata':_0x105a62});}catch{}}}
|
|
1
|
+
(function(_0x26837d,_0x19ca1c){const _0x5bbf6d=_0x13e8,_0x2acfaa=_0x26837d();while(!![]){try{const _0x36bd3d=parseInt(_0x5bbf6d(0x15e))/0x1+-parseInt(_0x5bbf6d(0x17b))/0x2+parseInt(_0x5bbf6d(0x162))/0x3*(-parseInt(_0x5bbf6d(0x161))/0x4)+parseInt(_0x5bbf6d(0x194))/0x5*(-parseInt(_0x5bbf6d(0x16b))/0x6)+-parseInt(_0x5bbf6d(0x18f))/0x7+-parseInt(_0x5bbf6d(0x1a4))/0x8*(parseInt(_0x5bbf6d(0x171))/0x9)+parseInt(_0x5bbf6d(0x19a))/0xa*(parseInt(_0x5bbf6d(0x190))/0xb);if(_0x36bd3d===_0x19ca1c)break;else _0x2acfaa['push'](_0x2acfaa['shift']());}catch(_0x2c06ed){_0x2acfaa['push'](_0x2acfaa['shift']());}}}(_0x5c02,0xf2021));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(_0x3f51aa,_0x10c5c3=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x5debd3=_0x13e8,_0x2288a3={'LFSUy':function(_0x5b8500,_0x19b17c){return _0x5b8500+_0x19b17c;}};return _0x3f51aa['length']>_0x10c5c3?_0x2288a3[_0x5debd3(0x16e)](_0x3f51aa[_0x5debd3(0x157)](0x0,_0x10c5c3),'...'):_0x3f51aa;}function extractShellValue(_0x6a1e6e){if(!_0x6a1e6e)return null;return _0x6a1e6e[0x1]??_0x6a1e6e[0x2]??_0x6a1e6e[0x3]??null;}function extractFirstCommandArgument(_0x3e999d,_0x34fa7e){const _0x41cc77=_0x13e8,_0x520fad=_0x34fa7e[_0x41cc77(0x1a0)](/[.*+?^${}()|[\]\\]/g,_0x41cc77(0x177));return extractShellValue(_0x3e999d['match'](new RegExp(_0x41cc77(0x16f)+_0x520fad+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0xa826d6){const _0x5e72b7=_0x13e8,_0x49b98d={'DQeKp':_0x5e72b7(0x1aa)};if(!_0xa826d6)return _0x49b98d['DQeKp'];if(/^e\d+$/i[_0x5e72b7(0x192)](_0xa826d6))return'ref\x20'+_0xa826d6;return JSON['stringify'](truncatePreview(_0xa826d6,0x78));}function _0x13e8(_0x7ed535,_0x23c2ce){_0x7ed535=_0x7ed535-0x14e;const _0x5c027a=_0x5c02();let _0x13e8da=_0x5c027a[_0x7ed535];return _0x13e8da;}function formatRangerwrightCliLog(_0x35f81b,_0x13019a){const _0xd39706=_0x13e8,_0x23851c={'jJHCx':_0xd39706(0x196),'VnnNH':_0xd39706(0x167),'dzExg':function(_0x3e7a52,_0x1b542b){return _0x3e7a52(_0x1b542b);},'IYZxh':function(_0x621dd3,_0x3c544b,_0x1afe10){return _0x621dd3(_0x3c544b,_0x1afe10);},'GZQWK':_0xd39706(0x16d),'ccgZu':_0xd39706(0x170),'TVJNr':_0xd39706(0x166),'rPFGu':'tracing-stop','scyNB':'stop\x20tracing','argDI':'video-stop','Oocor':_0xd39706(0x16a)};switch(_0x13019a){case _0xd39706(0x18e):{const _0x53455e=extractFirstCommandArgument(_0x35f81b,_0x13019a);return _0x53455e?_0xd39706(0x16c)+_0x53455e:_0x23851c['jJHCx'];}case _0x23851c['VnnNH']:return'click\x20and\x20inspect\x20'+_0x23851c[_0xd39706(0x189)](formatCommandTarget,_0x23851c['IYZxh'](extractFirstCommandArgument,_0x35f81b,_0x13019a));case _0xd39706(0x163):case _0x23851c['GZQWK']:return _0xd39706(0x1a3)+_0x23851c['dzExg'](formatCommandTarget,extractFirstCommandArgument(_0x35f81b,_0x13019a));case _0xd39706(0x17d):return _0xd39706(0x19f);case _0x23851c['ccgZu']:return _0x23851c['TVJNr'];case _0x23851c[_0xd39706(0x172)]:return _0x23851c['scyNB'];case _0x23851c[_0xd39706(0x169)]:return'stop\x20video\x20recording';case'close':return _0x23851c['Oocor'];default:return _0x13019a;}}function renderScenarioSections(_0x377658){const _0x3cff41=_0x13e8,_0x2b75a1={'kYMvm':_0x3cff41(0x176),'hcoeB':_0x3cff41(0x151),'bhvHn':'Reviewer','dsLGy':_0x3cff41(0x187),'JVexd':function(_0x2eac21,_0xfacc05){return _0x2eac21>_0xfacc05;}},{checklistItem:_0x264f72,itemFeedback:_0x5aa8a9}=_0x377658,_0x558b7a=_0x264f72[_0x3cff41(0x183)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x264f72['notes']:'';let _0x56ed12='';if(_0x5aa8a9&&_0x2b75a1[_0x3cff41(0x155)](_0x5aa8a9['unaddressedComments']['length'],0x0)){const _0x54a8d5=_0x5aa8a9[_0x3cff41(0x150)][_0x3cff41(0x18a)](_0x22b224=>{const _0x117cd5=_0x3cff41,_0x405e55=new Date(_0x22b224['createdAt'])['toLocaleDateString']('en-US',{'month':_0x2b75a1['kYMvm'],'day':_0x2b75a1[_0x117cd5(0x179)]}),_0x591e2d=_0x22b224[_0x117cd5(0x181)]||_0x22b224['authorEmail']||_0x2b75a1['bhvHn'],_0x368097=_0x22b224['domRef']?_0x117cd5(0x197)+(_0x22b224['domRef']['selector']['split'](_0x2b75a1['dsLGy'])[_0x117cd5(0x19b)]()?.['split'](':')[0x0]||'element')+'>\x20\x22'+(_0x22b224[_0x117cd5(0x185)][_0x117cd5(0x191)]||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x22b224['id']+']\x20'+_0x591e2d+'\x20('+_0x405e55+_0x117cd5(0x19d)+_0x22b224[_0x117cd5(0x17c)]+'\x22'+_0x368097;})[_0x3cff41(0x152)]('\x0a');_0x56ed12=_0x3cff41(0x188)+_0x54a8d5;}const _0x4544d9=_0x5aa8a9?.[_0x3cff41(0x199)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x5aa8a9['canonicalFlow']:'';return''+_0x264f72[_0x3cff41(0x1a5)]+_0x558b7a+_0x56ed12+_0x4544d9;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x5ddf5c){const _0x5a2c1d=_0x13e8,_0x54b720={'cgWOH':_0x5a2c1d(0x1a7),'Birfv':function(_0x371390,_0x3b4651){return _0x371390(_0x3b4651);}},{checklistItem:_0xba7e02,itemFeedback:_0xd1c4cf,taskDescription:_0x5c0558,commandPrefix:_0x49c239,isCdpMode:_0x32fcc7,url:_0x121267,cdpEndpoint:_0x3b68c9,loginInstructions:_0x43655d}=_0x5ddf5c,_0xea2cf2=_0x54b720['cgWOH'],_0x6ab034=_0x5a2c1d(0x159),_0x1a5585=_0x32fcc7?_0x49c239+'\x20inspect\x20--screenshot-path\x20'+quoteShellArg(_0xea2cf2):_0x49c239+'\x20open-and-inspect\x20'+_0x54b720['Birfv'](quoteShellArg,_0x121267??_0x5a2c1d(0x14e))+_0x5a2c1d(0x184)+_0x54b720['Birfv'](quoteShellArg,_0xea2cf2),_0x29e0e2=_0x32fcc7?_0x5a2c1d(0x14f)+_0x3b68c9+_0x5a2c1d(0x174):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x121267+_0x5a2c1d(0x186),_0x286fbd=_0x43655d?_0x5a2c1d(0x18d)+_0x43655d+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+renderScenarioSections({'checklistItem':_0xba7e02,'itemFeedback':_0xd1c4cf})+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x5c0558+'\x0a\x0a'+_0x29e0e2+_0x286fbd+_0x5a2c1d(0x165)+_0x49c239+'\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'+_0x1a5585+_0x5a2c1d(0x154)+_0x49c239+_0x5a2c1d(0x180)+_0x54b720[_0x5a2c1d(0x156)](quoteShellArg,_0x6ab034)+_0x5a2c1d(0x198);}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0x590cf1){const _0x8628fd=_0x13e8,_0x408007={'sHwSI':function(_0x37bfb5,_0x393067){return _0x37bfb5(_0x393067);}},_0x1c530e='01_mozilla-homepage.png',_0x31bc47=_0x8628fd(0x15f);return _0x8628fd(0x1a8)+_0x590cf1['commandPrefix']+'\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`'+_0x590cf1['commandPrefix']+_0x8628fd(0x153)+quoteShellArg(_0x590cf1[_0x8628fd(0x18b)])+'\x20--screenshot-path\x20'+_0x408007[_0x8628fd(0x178)](quoteShellArg,_0x1c530e)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0x590cf1[_0x8628fd(0x1a2)]+_0x8628fd(0x15c)+quoteShellArg(_0x31bc47)+_0x8628fd(0x173);}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x291ccc){const _0x3fe532=_0x13e8,_0x4c0dd2=[..._0x291ccc['keys']()]['sort']();let _0x2dc267=0x0;for(const _0x541321 of _0x291ccc[_0x3fe532(0x17f)]()){_0x2dc267+=_0x541321;}return{'cliCommandCount':_0x2dc267,'cliCommandsSeen':_0x4c0dd2,'noCliCommandsCalled':_0x2dc267===0x0};}function _0x5c02(){const _0x49fdf6=['rangerwright_cli_command','key_99_final-state.png','PostToolUse','FWJXD','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','sZafP','1087293ovmbBY','key_02_learn-more.png','tracing-stop','307444dLrgcS','15MuvGkb','fill','set','\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a','inspect\x20page','click-and-inspect','uEwFf','argDI','close\x20browser\x20session','4923054cgIpgB','open\x20and\x20inspect\x20','fill-and-inspect','LFSUy','(?:^|\x5cs)','inspect','9cnTAcp','rPFGu','`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.','trackPhaseError','short','\x5c$&','sHwSI','hcoeB','cfVEV','745066bbupxk','content','back-and-inspect','PostToolUseFailure','values','\x20click-and-inspect\x20e37\x20--screenshot-path\x20','authorName','stderr','notes','\x20--screenshot-path\x20','domRef','\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.','\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','dzExg','map','url','hook_event_name','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','open-and-inspect','10066168fQIZPe','4352436ACWMis','textContent','test','log','5mlcHYi','LPQYs','open\x20and\x20inspect','\x20(on\x20element:\x20<','\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.','canonicalFlow','90HQwZRZ','pop','close','):\x20\x22','rangerwright_cli_tracing_stop','go\x20back\x20and\x20inspect','replace','video-stop','commandPrefix','fill\x20','5133928GomUmi','description','trackPhaseEnd','01_initial-state.png','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','trackPhaseStart','target','SiplA','about:blank','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20','unaddressedComments','numeric','join','\x20open-and-inspect\x20','\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','JVexd','Birfv','slice'];_0x5c02=function(){return _0x49fdf6;};return _0x5c02();}export function createVerifyFeatureRangerwrightCliHooks(_0x1a1a70){const _0x173bab=_0x13e8,_0x5e49bc={'LcFxz':function(_0x52db3d,_0x440325){return _0x52db3d!==_0x440325;},'cfVEV':'Bash','SiplA':function(_0x582e44,_0x1e2b5c){return _0x582e44(_0x1e2b5c);},'FWJXD':function(_0xdfb11a,_0x2f6421){return _0xdfb11a+_0x2f6421;},'iLfbT':_0x173bab(0x158),'sZafP':function(_0x770d6f,_0x3fad8c,_0x49e86d){return _0x770d6f(_0x3fad8c,_0x49e86d);}},_0xf0d096=new Map(),_0x4e0323=async _0x2c8c9b=>{const _0x5bdff0=_0x173bab;if(_0x5e49bc['LcFxz'](_0x2c8c9b[_0x5bdff0(0x18c)],_0x5bdff0(0x15a)))return{};const _0x541ee8=_0x2c8c9b;if(_0x541ee8['tool_name']!==_0x5e49bc['cfVEV'])return{};const _0x240639=_0x541ee8['tool_input'],_0xb61793=_0x5e49bc[_0x5bdff0(0x1ab)](extractBashCommand,_0x240639);if(!_0xb61793)return{};const _0x4d0832=parseRangerwrightCliCommand(_0xb61793);if(!_0x4d0832)return{};return _0xf0d096[_0x5bdff0(0x164)](_0x4d0832,_0x5e49bc[_0x5bdff0(0x15b)](_0xf0d096['get'](_0x4d0832)||0x0,0x1)),_0x1a1a70[_0x5bdff0(0x1a9)](_0x5bdff0(0x158),{'subcommand':_0x4d0832}),_0x1a1a70[_0x5bdff0(0x1a6)](_0x5e49bc['iLfbT'],{'subcommand':_0x4d0832,'commandPreview':truncatePreview(_0xb61793)}),console[_0x5bdff0(0x193)]('[rangerwright-cli]\x20'+_0x5e49bc[_0x5bdff0(0x15d)](formatRangerwrightCliLog,_0xb61793,_0x4d0832)),{};},_0x3b6208=async _0x284e45=>{const _0x21e5cf=_0x173bab;if(_0x284e45['hook_event_name']!==_0x21e5cf(0x17e))return{};const _0x2e602c=_0x284e45;if(_0x5e49bc['LcFxz'](_0x2e602c['tool_name'],'Bash'))return{};return await _0x1a1a70[_0x21e5cf(0x175)]('rangerwright_cli_command_failure',_0x2e602c['error'],{'transport':'rangerwright-cli','toolName':_0x5e49bc[_0x21e5cf(0x17a)]}),{};};return{'postToolUseHook':_0x4e0323,'postToolUseFailureHook':_0x3b6208,'commandCounts':_0xf0d096};}async function runRangerwrightLifecycleCommand(_0x10d086){const _0x1b899b=_0x13e8,_0x234b54={'LPQYs':function(_0x2b118f,_0x1e9680){return _0x2b118f??_0x1e9680;},'XmhPk':function(_0x5d2db2,_0x1c2757,_0x314db1){return _0x5d2db2(_0x1c2757,_0x314db1);}},{options:_0x3f5298,commandArgs:_0x458324,env:_0xfe5f69,telemetry:_0x483145,phase:_0x205cc7,metadata:_0x324129,timeoutMs:_0x25bb34}=_0x10d086;_0x483145[_0x1b899b(0x1a9)](_0x205cc7,_0x324129);try{const _0x22993f=await runRangerwrightCliCommand({..._0x3f5298,'commandArgs':_0x458324,'cwd':process['cwd'](),'env':_0xfe5f69,'timeoutMs':_0x234b54[_0x1b899b(0x195)](_0x25bb34,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x483145[_0x1b899b(0x1a6)](_0x205cc7,{..._0x324129,'subcommand':_0x22993f['invocation']['subcommand'],'stdoutPreview':_0x234b54['XmhPk'](truncatePreview,_0x22993f['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x22993f[_0x1b899b(0x182)],0x7d0)});}catch(_0x1a08f4){await _0x483145['trackPhaseError'](_0x205cc7,_0x1a08f4,_0x324129);throw _0x1a08f4;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x58f839){const _0x33c9fd=_0x13e8,_0x165318={'uEwFf':_0x33c9fd(0x19e),'KclAL':'rangerwright_cli_close'},{telemetry:_0x305031,rangerwrightOptions:_0x49a351,env:_0x527cfa,transportMetadata:_0x4c6ce5}=_0x58f839,_0x4b07b3=[{'phase':_0x165318[_0x33c9fd(0x168)],'commandArgs':[_0x33c9fd(0x160)]},{'phase':'rangerwright_cli_video_stop','commandArgs':[_0x33c9fd(0x1a1)]},{'phase':_0x165318['KclAL'],'commandArgs':[_0x33c9fd(0x19c)]}];for(const _0x1f4604 of _0x4b07b3){try{await runRangerwrightLifecycleCommand({'options':_0x49a351,'commandArgs':[..._0x1f4604['commandArgs']],'env':_0x527cfa,'telemetry':_0x305031,'phase':_0x1f4604['phase'],'metadata':_0x4c6ce5});}catch{}}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ranger-testing/ranger-cli",
|
|
3
|
-
"version": "3.1.5
|
|
3
|
+
"version": "3.1.5",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ranger": "./build/cli.js",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"@ranger-testing/rangerwright": "^0.0.27",
|
|
26
26
|
"dotenv": "^16.4.5",
|
|
27
27
|
"inquirer": "^9.2.12",
|
|
28
|
-
"playwright": "1.
|
|
28
|
+
"playwright": "1.56.1",
|
|
29
29
|
"ws": "^8.20.1",
|
|
30
30
|
"yargs": "^17.7.2",
|
|
31
31
|
"zod": "^3.23.8"
|