@ranger-testing/ranger-cli 3.0.1-alpha.aab0a1c-26 → 3.0.1-alpha.f6aba6c-32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/deleteProfile.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -0
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -0
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -0
- package/package.json +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x16253f,_0x5ccd8d){const _0x2a04bf=_0x982c,_0x957b20=_0x16253f();while(!![]){try{const _0x37dd28=parseInt(_0x2a04bf(0x10a))/0x1*(parseInt(_0x2a04bf(0xc5))/0x2)+parseInt(_0x2a04bf(0xe1))/0x3+-parseInt(_0x2a04bf(0xcf))/0x4*(parseInt(_0x2a04bf(0xaa))/0x5)+parseInt(_0x2a04bf(0x11f))/0x6+-parseInt(_0x2a04bf(0xd0))/0x7+parseInt(_0x2a04bf(0x102))/0x8*(-parseInt(_0x2a04bf(0x103))/0x9)+parseInt(_0x2a04bf(0xf4))/0xa*(parseInt(_0x2a04bf(0x123))/0xb);if(_0x37dd28===_0x5ccd8d)break;else _0x957b20['push'](_0x957b20['shift']());}catch(_0x12d222){_0x957b20['push'](_0x957b20['shift']());}}}(_0x3689,0xd81e3));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function _0x982c(_0x799165,_0x3b5486){_0x799165=_0x799165-0x8a;const _0x368935=_0x3689();let _0x982cae=_0x368935[_0x799165];return _0x982cae;}function _0x3689(){const _0x24d23f=['\x0a\x0a##\x20Task\x20to\x20Execute\x0a','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','1956144fXijTi','BNzST','02_learn-more.yml','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','playwright_cli_tracing_stop','check','01_initial.yml','AgYsg','map','03_learn-more.png','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','phase','authorEmail','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','tool_call','sort','key_03_success-state.png','tab-new','10xGRCIF','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','OOpGN','Reviewer','SsDPB','AljAQ','wLllb','01_mozilla-homepage.png','pop','press\x20','HlNbY','PjBES','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','string','1228856hRqRYo','36jiuDRy','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a','isFile','\x0a\x0a1.\x20Run\x20`','invocation','target','numeric','1158054GpCLSj','playwright_cli_close','replace','snapshot','press','select\x20tab\x20','trackPhaseEnd','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x20(same\x20protocol,\x20host,\x20and\x20port)\x0a-\x20For\x20example,\x20if\x20the\x20base\x20URL\x20is\x20\x22http://localhost:3000\x22,\x20you\x20can\x20navigate\x20to\x20\x22http://localhost:3000/home\x22,\x20\x22http://localhost:3000/settings\x22,\x20etc.\x0a-\x20DO\x20NOT\x20navigate\x20to\x20any\x20different\x20domain,\x20host,\x20or\x20port\x20under\x20any\x20circumstances\x0a-\x20If\x20documentation\x20or\x20code\x20diffs\x20suggest\x20a\x20path\x20exists\x20(e.g.,\x20\x22/dashboard\x22),\x20you\x20may\x20navigate\x20to\x20that\x20path\x20ONLY\x20under\x20the\x20base\x20URL\x20above\x0a-\x20The\x20base\x20URL\x20above\x20is\x20the\x20ONLY\x20authorized\x20profile\x20for\x20this\x20verification','run\x20custom\x20Playwright\x20code','FLlxS','--filename=','PostToolUse','UpUQu','[ranger-verification-agent]\x20',']\x20**','DEBUG','content','pbmhK','tracing-start','fill\x20','split','241362carfjW','\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20(the\x20bracketed\x20value)\x20in\x20the\x20addressedCommentIds\x20array\x20in\x20your\x20output.\x0a\x0a','tBrwg','createdAt','8599129qJDlpr','selector','\x20tracing-start`,\x20then\x20`','screenshot','FHcYo','match','click','nJcUT','RGjJH','\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.','short','video-stop','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','xBemv','notes','##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`','rkSzP','tracing-stop','stringify','`\x20to\x20inspect\x20the\x20current\x20app\x20state.\x0a5.\x20Read\x20snapshot\x20YAML\x20files\x20to\x20find\x20element\x20references\x20like\x20`e12`,\x20then\x20use\x20them\x20with\x20`click`,\x20`fill`,\x20`check`,\x20or\x20`select`.\x0a6.\x20Use\x20`','\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22','\x20snapshot\x20--filename\x20','trace.trace.zip','STsmt','test','stderr','bvKsh','tool_failure','\x20tracing-start`\x0a3.\x20Run\x20`','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','ref\x20','`,\x20then\x20`','\x20>\x20','cwd','playwright-cli','LTUbd','-\x20[','playwright_cli_video_stop','qfWHi','355fMCvbA','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','mltDV','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','unaddressedComments','values','`:\x20\x22','brZMY','domRef','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','BSJZU','env','`\x0a-\x20`run-code\x20\x22await\x20page.waitForTimeout(1000)\x22`\x20for\x20waits\x20or\x20small\x20custom\x20checks\x0a\x0a##\x20Screenshot\x20Guidelines\x20-\x20IMPORTANT\x0aTake\x20screenshots\x20throughout\x20the\x20verification\x20flow\x20so\x20a\x20human\x20can\x20review\x20it\x20for\x20completeness.\x20Screenshots\x20are\x20your\x20evidence\x20trail.\x0a\x0a**When\x20to\x20take\x20screenshots\x20(use\x20Playwright\x20CLI\x20screenshot):**\x0a-\x20After\x20the\x20initial\x20snapshot\x20(capture\x20starting\x20state)\x0a-\x20Before\x20and\x20after\x20clicking\x20buttons\x20or\x20submitting\x20forms\x0a-\x20When\x20important\x20UI\x20elements\x20appear\x20(modals,\x20notifications,\x20loading\x20states)\x0a-\x20After\x20navigating\x20to\x20different\x20views\x20or\x20pages\x0a-\x20When\x20verifying\x20specific\x20elements\x20exist\x0a-\x20At\x20the\x20final\x20state\x20showing\x20the\x20completed\x20action\x0a\x0a**Screenshot\x20naming:**\x0a-\x20Use\x20descriptive\x20filenames\x20under\x20`','slice','WfMGo','\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.','FvEuE','trace.zip','stop\x20tracing','xdEiD','\x5c$&','\x20screenshot\x20--filename\x20','join','...','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20','tab-select','2OcZSXQ','SdmLX','toLocaleDateString','tool_input','bKuFj','01_initial-state.png','length','IIXff','ALiwG','tool_name','16572CTEjTN','5867876gjNWdd','log','frEOx','\x20(on\x20element:\x20<','DBPbX','Bash','start\x20video\x20recording','check\x20','\x20open\x20','name','AFzJT','**\x20(','[playwright-cli]\x20','trim','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'];_0x3689=function(){return _0x24d23f;};return _0x3689();}function truncatePreview(_0xfe04dd,_0x23f2b4=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x4a2b8e=_0x982c,_0x38f33e={'STsmt':function(_0x36a36b,_0x26d4ac){return _0x36a36b>_0x26d4ac;},'ALiwG':function(_0x5498e5,_0x7fd3f3){return _0x5498e5+_0x7fd3f3;},'PANrP':_0x4a2b8e(0xc2)};return _0x38f33e[_0x4a2b8e(0x9a)](_0xfe04dd['length'],_0x23f2b4)?_0x38f33e[_0x4a2b8e(0xcd)](_0xfe04dd[_0x4a2b8e(0xb8)](0x0,_0x23f2b4),_0x38f33e['PANrP']):_0xfe04dd;}function buildCliArtifactPath(_0x5c5c40,_0x580ebb){return join(_0x5c5c40,_0x580ebb);}function toStepDisplayName(_0x52e587){const _0x5939aa=_0x982c,_0x332a37=basename(_0x52e587)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x5939aa(0x10c)](/^key_/i,'')[_0x5939aa(0x10c)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x332a37,'isKeyStep':/^key_/i[_0x5939aa(0x9b)](basename(_0x52e587))};}function extractShellValue(_0x4c4fc7){if(!_0x4c4fc7)return null;return _0x4c4fc7[0x1]??_0x4c4fc7[0x2]??_0x4c4fc7[0x3]??null;}function extractFilenameOption(_0x1048cf){const _0x4af235=_0x982c,_0x36e5e5={'pbmhK':function(_0x22e176,_0x32f9d0){return _0x22e176(_0x32f9d0);}};return _0x36e5e5[_0x4af235(0x11b)](extractShellValue,_0x1048cf[_0x4af235(0x128)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x4efd3a,_0x289f6a){const _0x354342=_0x982c,_0x204004={'wLllb':_0x354342(0xbf),'PiPTD':function(_0x30e03c,_0x41613d){return _0x30e03c(_0x41613d);}},_0x506093=_0x289f6a[_0x354342(0x10c)](/[.*+?^${}()|[\]\\]/g,_0x204004[_0x354342(0xfa)]);return _0x204004['PiPTD'](extractShellValue,_0x4efd3a['match'](new RegExp('(?:^|\x5cs)'+_0x506093+_0x354342(0xe4))));}function formatCommandTarget(_0x438796){const _0x42b181=_0x982c,_0x380f68={'BNzST':_0x42b181(0x108),'tmuIk':function(_0x11e4ee,_0x205fb2,_0x529031){return _0x11e4ee(_0x205fb2,_0x529031);}};if(!_0x438796)return _0x380f68[_0x42b181(0xe2)];if(/^e\d+$/i[_0x42b181(0x9b)](_0x438796))return _0x42b181(0xa1)+_0x438796;return JSON[_0x42b181(0x95)](_0x380f68['tmuIk'](truncatePreview,_0x438796,0x78));}function formatPlaywrightCliLog(_0x25553b,_0xa2abf9){const _0x271cbd=_0x982c,_0x3b0741={'bvKsh':_0x271cbd(0x11c),'HlNbY':'capture\x20snapshot','sIaTl':_0x271cbd(0x126),'IIXff':function(_0x3118c9,_0x6d216e){return _0x3118c9(_0x6d216e);},'PjBES':'capture\x20screenshot','DzoVY':function(_0x2166d0,_0x36844a,_0x222cb5){return _0x2166d0(_0x36844a,_0x222cb5);},'xUFLx':_0x271cbd(0xe7),'FvEuE':'fill','SsDPB':_0x271cbd(0x10e),'FSesD':'run-code','xdEiD':_0x271cbd(0xf3),'oxUzL':_0x271cbd(0xc4),'xBemv':'select\x20tab'};switch(_0xa2abf9){case'open':{const _0x156818=extractFirstCommandArgument(_0x25553b,_0xa2abf9);return _0x156818?'open\x20'+_0x156818:'open\x20browser';}case _0x3b0741[_0x271cbd(0x9d)]:return'start\x20tracing';case _0x271cbd(0x94):return _0x271cbd(0xbd);case'video-start':return _0x271cbd(0xd6);case'video-stop':return'stop\x20video\x20recording';case _0x271cbd(0x10d):{const _0x1132fd=extractFilenameOption(_0x25553b);if(!_0x1132fd)return _0x3b0741[_0x271cbd(0xfe)];const {name:_0x22e8d8}=toStepDisplayName(_0x1132fd);return'capture\x20snapshot\x20`'+_0x22e8d8+'`';}case _0x3b0741['sIaTl']:{const _0x3f3160=_0x3b0741[_0x271cbd(0xcc)](extractFilenameOption,_0x25553b);if(!_0x3f3160)return _0x3b0741[_0x271cbd(0xff)];const {name:_0x5148a7,isKeyStep:_0x51bd4b}=toStepDisplayName(_0x3f3160);return _0x51bd4b?'capture\x20key\x20step\x20`'+_0x5148a7+'`':'capture\x20step\x20`'+_0x5148a7+'`';}case _0x271cbd(0x129):return'click\x20'+formatCommandTarget(_0x3b0741['DzoVY'](extractFirstCommandArgument,_0x25553b,_0xa2abf9));case _0x3b0741['xUFLx']:return _0x271cbd(0xd7)+formatCommandTarget(extractFirstCommandArgument(_0x25553b,_0xa2abf9));case _0x3b0741[_0x271cbd(0xbb)]:return _0x271cbd(0x11d)+formatCommandTarget(extractFirstCommandArgument(_0x25553b,_0xa2abf9));case _0x3b0741[_0x271cbd(0xf8)]:return _0x271cbd(0xfd)+_0x3b0741[_0x271cbd(0xcc)](formatCommandTarget,extractFirstCommandArgument(_0x25553b,_0xa2abf9));case _0x3b0741['FSesD']:return _0x271cbd(0x112);case _0x3b0741[_0x271cbd(0xbe)]:{const _0xe99780=extractFirstCommandArgument(_0x25553b,_0xa2abf9);return _0xe99780?'open\x20new\x20tab\x20'+_0xe99780:'open\x20new\x20tab';}case _0x3b0741['oxUzL']:{const _0x24d99b=extractFirstCommandArgument(_0x25553b,_0xa2abf9);return _0x24d99b?_0x271cbd(0x10f)+_0x24d99b:_0x3b0741[_0x271cbd(0x90)];}default:return _0xa2abf9;}}function extractPlaywrightCliToolDescription(_0x4cc582){const _0x169a86=_0x982c,_0x30d1e1=_0x4cc582['description'];if(typeof _0x30d1e1!==_0x169a86(0x101))return null;const _0x8bbaa4=_0x30d1e1[_0x169a86(0xdd)]()['replace'](/\s+/g,'\x20');return _0x8bbaa4['length']>0x0?_0x8bbaa4:null;}export function formatPlaywrightCliConsoleLogMessage(_0x22ee46,_0x343eff,_0x4876de){const _0x47ea7f=_0x982c,_0x28df74={'LTUbd':function(_0x2c0684,_0x11d9df,_0x53c101){return _0x2c0684(_0x11d9df,_0x53c101);},'FYkUc':function(_0x55f68a,_0x40e8a2){return _0x55f68a(_0x40e8a2);}},_0x5218fd=_0x28df74[_0x47ea7f(0xa6)](formatPlaywrightCliLog,_0x343eff,_0x4876de),_0x16025c=_0x28df74['FYkUc'](extractPlaywrightCliToolDescription,_0x22ee46);if(!_0x16025c)return _0x47ea7f(0xdc)+_0x5218fd;if(process[_0x47ea7f(0xb6)][_0x47ea7f(0x119)])return'[ranger-verification-agent]\x20'+_0x16025c+'\x20('+_0x5218fd+')';return _0x47ea7f(0x117)+_0x16025c;}export function buildVerifyFeatureCliDebugPrompt(_0x1313bf,_0x39b2d5){const _0x347b44=_0x982c,_0x236edd={'AFzJT':_0x347b44(0xfb),'FLlxS':function(_0x1b139d,_0x3af56e,_0x2dccc1){return _0x1b139d(_0x3af56e,_0x2dccc1);},'UpUQu':_0x347b44(0xe3),'wDNNJ':_0x347b44(0xeb),'WfMGo':function(_0x14dc97,_0x149176){return _0x14dc97(_0x149176);},'SdmLX':function(_0x50dbd9,_0x11a1ab){return _0x50dbd9(_0x11a1ab);},'TbeuA':function(_0x3958ce,_0xe1d212){return _0x3958ce(_0xe1d212);}},_0x4eb204=buildCliArtifactPath(_0x39b2d5,'00_mozilla-homepage.yml'),_0x338ebf=buildCliArtifactPath(_0x39b2d5,_0x236edd[_0x347b44(0xda)]),_0x2b6697=_0x236edd[_0x347b44(0x113)](buildCliArtifactPath,_0x39b2d5,_0x236edd[_0x347b44(0x116)]),_0xe5417f=buildCliArtifactPath(_0x39b2d5,_0x236edd['wDNNJ']),_0x255a38=quoteShellArg(_0x4eb204),_0x5956a8=_0x236edd[_0x347b44(0xb9)](quoteShellArg,_0x338ebf),_0x4da8cd=_0x236edd[_0x347b44(0xc6)](quoteShellArg,_0x2b6697),_0x25e614=_0x236edd['TbeuA'](quoteShellArg,_0xe5417f);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x1313bf+_0x347b44(0x106)+_0x1313bf+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x1313bf+_0x347b44(0x9f)+_0x1313bf+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x39b2d5+_0x347b44(0xe0)+_0x1313bf+'\x20snapshot\x20--filename\x20'+_0x255a38+_0x347b44(0xe5)+_0x1313bf+_0x347b44(0xc0)+_0x5956a8+_0x347b44(0xae)+_0x1313bf+_0x347b44(0x98)+_0x4da8cd+'`\x0a9.\x20Run\x20`'+_0x1313bf+_0x347b44(0xc0)+_0x25e614+_0x347b44(0xef);}export function buildVerifyFeatureCliPrompt(_0x2c5f3f){const _0x3037e0=_0x982c,_0x2a6b7e={'nACJL':_0x3037e0(0x8d),'fSlVY':_0x3037e0(0xe8),'jBpOg':'02_state.yml','mltDV':function(_0x252a64,_0x58d380,_0x4ea6d5){return _0x252a64(_0x58d380,_0x4ea6d5);},'uAWVg':_0x3037e0(0xca),'NJmMp':function(_0x116901,_0x2f7681){return _0x116901(_0x2f7681);},'DBPbX':function(_0x476b8d,_0x51c445){return _0x476b8d>_0x51c445;}},{checklistItem:_0x210919,itemFeedback:_0xb7c53f,taskDescription:_0x4c3d0c,cliCommandPrefix:_0x3a0914,cliArtifactDir:_0x486dc4,isCdpMode:_0x5cdebc,url:_0x3c05b1,cdpEndpoint:_0x1cd339,loginInstructions:_0xda5b65}=_0x2c5f3f,_0x3990cd=buildCliArtifactPath(_0x486dc4,_0x2a6b7e['fSlVY']),_0x43c29c=buildCliArtifactPath(_0x486dc4,_0x2a6b7e['jBpOg']),_0x59cbf1=_0x2a6b7e[_0x3037e0(0xac)](buildCliArtifactPath,_0x486dc4,_0x3037e0(0xf2)),_0x2bf84c=buildCliArtifactPath(_0x486dc4,_0x2a6b7e['uAWVg']),_0x156f02=quoteShellArg(_0x3990cd),_0x23282a=_0x2a6b7e['NJmMp'](quoteShellArg,_0x43c29c),_0xd45ad4=quoteShellArg(_0x59cbf1),_0x2d3dbf=quoteShellArg(_0x2bf84c),_0x36dafe=_0x210919[_0x3037e0(0x91)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x210919['notes']:'';let _0x3604c4='';if(_0xb7c53f&&_0x2a6b7e[_0x3037e0(0xd4)](_0xb7c53f['unaddressedComments'][_0x3037e0(0xcb)],0x0)){const _0x49e0ce=_0xb7c53f[_0x3037e0(0xaf)][_0x3037e0(0xea)](_0x4ed144=>{const _0x538d4b=_0x3037e0,_0x10688e=new Date(_0x4ed144[_0x538d4b(0x122)])[_0x538d4b(0xc7)]('en-US',{'month':_0x2a6b7e['nACJL'],'day':_0x538d4b(0x109)}),_0x5cfaf3=_0x4ed144['authorName']||_0x4ed144[_0x538d4b(0xee)]||_0x538d4b(0xf7),_0x1c8df0=_0x4ed144[_0x538d4b(0xb3)]?_0x538d4b(0xd3)+(_0x4ed144[_0x538d4b(0xb3)][_0x538d4b(0x124)][_0x538d4b(0x11e)](_0x538d4b(0xa3))[_0x538d4b(0xfc)]()?.[_0x538d4b(0x11e)](':')[0x0]||'element')+'>\x20\x22'+(_0x4ed144['domRef']['textContent']||'')[_0x538d4b(0xb8)](0x0,0x32)+'\x22)':'';return _0x538d4b(0xa7)+_0x4ed144['id']+_0x538d4b(0x118)+_0x5cfaf3+_0x538d4b(0xdb)+_0x10688e+'):\x20\x22'+_0x4ed144[_0x538d4b(0x11a)]+'\x22'+_0x1c8df0;})[_0x3037e0(0xc1)]('\x0a');_0x3604c4=_0x3037e0(0x120)+_0x49e0ce;}const _0x1c1dd2=_0xb7c53f?.['canonicalFlow']?_0x3037e0(0xa0)+_0xb7c53f['canonicalFlow']:'',_0x453b68=_0x5cdebc?_0x3037e0(0xc3)+_0x1cd339+_0x3037e0(0x100):_0x3037e0(0xf5)+_0x3c05b1+_0x3037e0(0x111),_0x2dad57=_0x3c05b1?quoteShellArg(_0x3c05b1):'',_0x3bf863=_0x5cdebc?_0x3037e0(0x92)+_0x3a0914+'\x20open`,\x20then\x20`'+_0x3a0914+'\x20tracing-start`,\x20then\x20`'+_0x3a0914+_0x3037e0(0x8f)+_0x486dc4+_0x3037e0(0xad)+_0x3a0914+'\x20snapshot\x20--filename\x20'+_0x156f02+_0x3037e0(0x96)+_0x3a0914+'\x20screenshot\x20--filename\x20'+_0x2d3dbf+_0x3037e0(0xde)+_0x3a0914+_0x3037e0(0xec):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x3a0914+_0x3037e0(0xd8)+_0x2dad57+_0x3037e0(0xa2)+_0x3a0914+_0x3037e0(0x125)+_0x3a0914+_0x3037e0(0x8f)+_0x486dc4+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x3a0914+_0x3037e0(0x98)+_0x156f02+'`\x20and\x20read\x20the\x20snapshot\x20file\x20to\x20inspect\x20the\x20page.\x0a5.\x20**IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors\x20before\x20proceeding.**\x0a6.\x20Execute\x20the\x20task\x20step-by-step\x20with\x20Playwright\x20CLI\x20commands.\x0a7.\x20Use\x20`'+_0x3a0914+_0x3037e0(0xc0)+_0x2d3dbf+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x3a0914+'\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a9.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a10.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario',_0x5d187b=_0x5cdebc?_0x3037e0(0xba):_0x3037e0(0xb4),_0x124cba=_0xda5b65?_0x3037e0(0x104)+_0xda5b65+_0x3037e0(0xab):'';return'You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a'+_0x210919['description']+_0x36dafe+_0x3604c4+_0x1c1dd2+_0x3037e0(0xdf)+_0x4c3d0c+'\x0a\x0a'+_0x453b68+_0x124cba+'\x0a\x0a'+_0x3bf863+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x3a0914+'`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`'+_0x486dc4+'`\x0a-\x20`snapshot\x20--filename\x20'+_0x23282a+'`\x20writes\x20a\x20YAML\x20snapshot\x20you\x20can\x20read\x20for\x20element\x20refs\x0a-\x20`click\x20<ref>`,\x20`fill\x20<ref>\x20\x22text\x22`,\x20`check\x20<ref>`,\x20`press\x20Enter`\x0a-\x20`tab-list`,\x20`tab-select\x20<index>`,\x20`tab-new\x20<url>`\x0a-\x20`screenshot\x20--filename\x20'+_0xd45ad4+_0x3037e0(0xb7)+_0x486dc4+_0x3037e0(0xb1)+_0x2bf84c+'\x22,\x20\x22'+buildCliArtifactPath(_0x486dc4,'02_button-clicked.png')+'\x22,\x20\x22'+_0x2a6b7e['mltDV'](buildCliArtifactPath,_0x486dc4,'03_result-visible.png')+_0x3037e0(0x97)+buildCliArtifactPath(_0x486dc4,'key_04_success-state.png')+'\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a'+_0x5d187b+_0x3037e0(0x8c);}export function summarizeVerifyFeatureCliCommandAvailability(_0x209b3b){const _0x5f11a2=_0x982c,_0xb5516e={'FswFO':function(_0x2e7add,_0x1a6e4f){return _0x2e7add===_0x1a6e4f;}},_0x3782fc=[..._0x209b3b['keys']()]['sort']();let _0x2fb8d3=0x0;for(const _0x556705 of _0x209b3b[_0x5f11a2(0xb0)]()){_0x2fb8d3+=_0x556705;}return{'cliCommandCount':_0x2fb8d3,'cliCommandsSeen':_0x3782fc,'noCliCommandsCalled':_0xb5516e['FswFO'](_0x2fb8d3,0x0)};}export function createVerifyFeatureCliHooks(_0xed1c33){const _0x3d51ed=_0x982c,_0xa0e360={'xYoMw':function(_0x38b88b,_0x2bfb71){return _0x38b88b(_0x2bfb71);},'rkSzP':function(_0x10e3d1,_0x28bf8c){return _0x10e3d1+_0x28bf8c;},'nJcUT':'playwright-cli','FufkE':_0x3d51ed(0x10d),'OIXUC':function(_0x3b4660,_0x50f166,_0x3657bd,_0x36fc45){return _0x3b4660(_0x50f166,_0x3657bd,_0x36fc45);},'BSJZU':function(_0x18c107,_0x17a6a5){return _0x18c107!==_0x17a6a5;},'OOpGN':_0x3d51ed(0xd5),'tBrwg':_0x3d51ed(0x9e)},_0x441281=new Map(),_0x8e521b=async _0x4d6fdc=>{const _0x2e2575=_0x3d51ed;if(_0x4d6fdc['hook_event_name']!==_0x2e2575(0x115))return{};const _0x27f712=_0x4d6fdc;if(_0x27f712[_0x2e2575(0xce)]!==_0x2e2575(0xd5))return{};const _0xb48849=_0x27f712[_0x2e2575(0xc8)],_0x1c1001=extractBashCommand(_0xb48849);if(!_0x1c1001)return{};const _0x6e71d8=_0xa0e360['xYoMw'](parsePlaywrightCliCommand,_0x1c1001);if(!_0x6e71d8)return{};return _0x441281['set'](_0x6e71d8,_0xa0e360[_0x2e2575(0x93)](_0x441281['get'](_0x6e71d8)||0x0,0x1)),_0xed1c33['trackPhaseStart'](_0x2e2575(0xf0),{'transport':_0xa0e360[_0x2e2575(0x8a)],'toolName':_0x6e71d8}),_0xed1c33['trackPhaseEnd']('tool_call',{'transport':'playwright-cli','toolName':_0x6e71d8,'bashCommandPreview':truncatePreview(_0x1c1001)}),_0x6e71d8!==_0xa0e360['FufkE']&&console[_0x2e2575(0xd1)](_0xa0e360['OIXUC'](formatPlaywrightCliConsoleLogMessage,_0xb48849,_0x1c1001,_0x6e71d8)),{};},_0x730f62=async _0x358c11=>{const _0x30cf16=_0x3d51ed;if(_0xa0e360[_0x30cf16(0xb5)](_0x358c11['hook_event_name'],'PostToolUseFailure'))return{};const _0x518aa9=_0x358c11;if(_0x518aa9['tool_name']!==_0xa0e360[_0x30cf16(0xf6)])return{};return await _0xed1c33['trackPhaseError'](_0xa0e360[_0x30cf16(0x121)],_0x518aa9['error'],{'transport':_0x30cf16(0xa5),'toolName':_0x30cf16(0xd5)}),{};};return{'postToolUseHook':_0x8e521b,'postToolUseFailureHook':_0x730f62,'commandCounts':_0x441281};}async function runPlaywrightCliLifecycleCommand(_0x11a414){const _0x262c39=_0x982c,_0x387d6f={'zDDBF':function(_0x30363a,_0x56e890){return _0x30363a??_0x56e890;}},{sessionId:_0x2f65f8,configPath:_0xc07fb2,commandArgs:_0x5bfa78,env:_0x3638bd,telemetry:_0x119bfe,phase:_0x4de3e7,metadata:_0x52c3e3,timeoutMs:_0x5702a8}=_0x11a414;_0x119bfe['trackPhaseStart'](_0x4de3e7,_0x52c3e3);try{const _0x11f024=await runPlaywrightCliCommand({'sessionId':_0x2f65f8,'configPath':_0xc07fb2,'commandArgs':_0x5bfa78,'cwd':process[_0x262c39(0xa4)](),'env':_0x3638bd,'timeoutMs':_0x387d6f['zDDBF'](_0x5702a8,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x119bfe[_0x262c39(0x110)](_0x4de3e7,{..._0x52c3e3,'subcommand':_0x11f024[_0x262c39(0x107)]['subcommand'],'stdoutPreview':truncatePreview(_0x11f024['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x11f024[_0x262c39(0x9c)],0x7d0)});}catch(_0x31573b){await _0x119bfe['trackPhaseError'](_0x4de3e7,_0x31573b,_0x52c3e3);throw _0x31573b;}}export async function finalizeVerifyFeatureCliSession(_0x342928){const _0x124e3e=_0x982c,_0x309e33={'frEOx':_0x124e3e(0x94),'RGjJH':_0x124e3e(0xa8),'jPkfE':_0x124e3e(0x8e),'IOesu':'session-recording.webm','AgYsg':_0x124e3e(0x10b),'zXWBa':'close'},{telemetry:_0x5eea9e,sessionId:_0xbc3da5,configPath:_0x17bfdf,cliArtifactDir:_0x42f5c4,env:_0x4f96cc,transportMetadata:_0x425aa6}=_0x342928,_0xf0bd8a=[{'phase':_0x124e3e(0xe6),'commandArgs':[_0x309e33[_0x124e3e(0xd2)]]},{'phase':_0x309e33[_0x124e3e(0x8b)],'commandArgs':[_0x309e33['jPkfE'],_0x124e3e(0x114)+buildCliArtifactPath(_0x42f5c4,_0x309e33['IOesu'])]},{'phase':_0x309e33[_0x124e3e(0xe9)],'commandArgs':[_0x309e33['zXWBa']]}];for(const _0x544f4b of _0xf0bd8a){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0xbc3da5,'configPath':_0x17bfdf,'commandArgs':[..._0x544f4b['commandArgs']],'env':_0x4f96cc,'telemetry':_0x5eea9e,'phase':_0x544f4b[_0x124e3e(0xed)],'metadata':_0x425aa6});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x26d21d){const _0xfecef2=_0x982c,_0x51dde6={'FHcYo':_0xfecef2(0xbc),'qfWHi':_0xfecef2(0x99)},_0x4b437a=[_0x51dde6[_0xfecef2(0x127)],_0x51dde6[_0xfecef2(0xa9)]];for(const _0x956035 of _0x4b437a){const _0x47c63e=join(_0x26d21d,_0x956035);try{return{'buffer':await readFile(_0x47c63e),'source':_0x47c63e};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x2a4aa1){const _0x3ae6ea=_0x982c,_0x1beced={'brZMY':function(_0xdef8a6,_0x11222d,_0x4a6e94){return _0xdef8a6(_0x11222d,_0x4a6e94);},'AljAQ':function(_0x3f32d0,_0x134654,_0x3b6a3c){return _0x3f32d0(_0x134654,_0x3b6a3c);},'bKuFj':function(_0x1ceb1c,_0x288894){return _0x1ceb1c===_0x288894;}},{cwd:_0x33d189,cliArtifactDir:_0x37d147,startTime:_0x2badec}=_0x2a4aa1,_0x162355=[];await _0x1beced[_0x3ae6ea(0xb2)](mkdir,_0x37d147,{'recursive':!![]});const _0x5e77e7=await readdir(_0x33d189,{'withFileTypes':!![]});for(const _0x2d843e of _0x5e77e7){if(!_0x2d843e[_0x3ae6ea(0x105)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x3ae6ea(0x9b)](_0x2d843e[_0x3ae6ea(0xd9)]))continue;const _0x110915=join(_0x33d189,_0x2d843e[_0x3ae6ea(0xd9)]),_0x2eb58c=await stat(_0x110915);if(_0x2eb58c['mtimeMs']+0x7d0<_0x2badec)continue;const _0x569040=_0x1beced[_0x3ae6ea(0xf9)](buildCliArtifactPath,_0x37d147,_0x2d843e[_0x3ae6ea(0xd9)]);if(_0x1beced[_0x3ae6ea(0xc9)](_0x110915,_0x569040))continue;await _0x1beced['brZMY'](rename,_0x110915,_0x569040),_0x162355['push'](_0x2d843e['name']);}return _0x162355[_0x3ae6ea(0xf1)]();}
|
|
1
|
+
(function(_0x504109,_0x2de089){const _0x36cd28=_0x1c48,_0x3d8896=_0x504109();while(!![]){try{const _0x39334a=-parseInt(_0x36cd28(0x22a))/0x1*(parseInt(_0x36cd28(0x1ef))/0x2)+parseInt(_0x36cd28(0x1cc))/0x3+-parseInt(_0x36cd28(0x214))/0x4+parseInt(_0x36cd28(0x1b9))/0x5+parseInt(_0x36cd28(0x1d2))/0x6+parseInt(_0x36cd28(0x225))/0x7+-parseInt(_0x36cd28(0x1c9))/0x8*(parseInt(_0x36cd28(0x201))/0x9);if(_0x39334a===_0x2de089)break;else _0x3d8896['push'](_0x3d8896['shift']());}catch(_0x10d4e4){_0x3d8896['push'](_0x3d8896['shift']());}}}(_0x2000,0xb9766));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';function _0x1c48(_0x1db086,_0x4e9bf7){_0x1db086=_0x1db086-0x1b5;const _0x200048=_0x2000();let _0x1c48db=_0x200048[_0x1db086];return _0x1c48db;}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(_0x1ba293,_0x4f05aa=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x44de21=_0x1c48,_0x89231a={'fFrDd':function(_0x245e3,_0x2e8653){return _0x245e3>_0x2e8653;},'QqdvF':function(_0x4b71c7,_0x11ad35){return _0x4b71c7+_0x11ad35;},'EQWEk':_0x44de21(0x1bc)};return _0x89231a['fFrDd'](_0x1ba293[_0x44de21(0x23b)],_0x4f05aa)?_0x89231a['QqdvF'](_0x1ba293['slice'](0x0,_0x4f05aa),_0x89231a['EQWEk']):_0x1ba293;}function buildCliArtifactPath(_0x4d5a49,_0x2df666){const _0x5c1bb9=_0x1c48,_0x4ce004={'nZFBA':function(_0x5c7f6e,_0x56ee6a,_0x202ad6){return _0x5c7f6e(_0x56ee6a,_0x202ad6);}};return _0x4ce004[_0x5c1bb9(0x1f1)](join,_0x4d5a49,_0x2df666);}function toStepDisplayName(_0x34af3e){const _0x256aeb=_0x1c48,_0x4ec252={'hReDW':function(_0x489add,_0x4db42d){return _0x489add(_0x4db42d);}},_0x44a2fe=basename(_0x34af3e)[_0x256aeb(0x22f)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')['replace'](/^\d+_/,'')[_0x256aeb(0x22f)](/-/g,'\x20');return{'name':_0x44a2fe,'isKeyStep':/^key_/i[_0x256aeb(0x231)](_0x4ec252[_0x256aeb(0x1cf)](basename,_0x34af3e))};}function extractShellValue(_0x3bbc43){if(!_0x3bbc43)return null;return _0x3bbc43[0x1]??_0x3bbc43[0x2]??_0x3bbc43[0x3]??null;}function extractFilenameOption(_0xf03bc1){const _0x5e4eda=_0x1c48,_0x2e204f={'hVGNK':function(_0x1b13c3,_0x23279f){return _0x1b13c3(_0x23279f);}};return _0x2e204f['hVGNK'](extractShellValue,_0xf03bc1[_0x5e4eda(0x1f6)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x4f60ae,_0x5871cd){const _0x5adade=_0x1c48,_0x23cd16=_0x5871cd['replace'](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return extractShellValue(_0x4f60ae[_0x5adade(0x1f6)](new RegExp(_0x5adade(0x22d)+_0x23cd16+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x17fd1e){const _0x3ec1ed=_0x1c48;if(!_0x17fd1e)return _0x3ec1ed(0x1ed);if(/^e\d+$/i['test'](_0x17fd1e))return _0x3ec1ed(0x1e0)+_0x17fd1e;return JSON[_0x3ec1ed(0x22e)](truncatePreview(_0x17fd1e,0x78));}function formatPlaywrightCliLog(_0x355a08,_0x411ead){const _0x5b6f5c=_0x1c48,_0x4a911c={'xAkiR':'open\x20browser','lqFNx':_0x5b6f5c(0x1bd),'kwFMH':'start\x20tracing','vVJxI':'video-start','aPAVz':_0x5b6f5c(0x1eb),'SwILy':function(_0x306588,_0x17b0e5){return _0x306588(_0x17b0e5);},'xLpUY':function(_0xf4eca7,_0xee48cf){return _0xf4eca7(_0xee48cf);},'HznHD':_0x5b6f5c(0x1d5),'aEPjd':_0x5b6f5c(0x238),'KMrcE':function(_0x1adc3f,_0x167bab){return _0x1adc3f(_0x167bab);},'KkCHY':function(_0xc0785f,_0x261698,_0x18c1ba){return _0xc0785f(_0x261698,_0x18c1ba);},'nZhcE':_0x5b6f5c(0x1d0),'JvgAN':_0x5b6f5c(0x216),'wObcc':function(_0x320433,_0x19706f,_0x1ff4f3){return _0x320433(_0x19706f,_0x1ff4f3);},'EIVGB':_0x5b6f5c(0x1c5),'gPnSL':'tab-select'};switch(_0x411ead){case _0x5b6f5c(0x1d6):{const _0x20b740=extractFirstCommandArgument(_0x355a08,_0x411ead);return _0x20b740?_0x5b6f5c(0x1da)+_0x20b740:_0x4a911c[_0x5b6f5c(0x21a)];}case _0x4a911c['lqFNx']:return _0x4a911c[_0x5b6f5c(0x22b)];case'tracing-stop':return'stop\x20tracing';case _0x4a911c['vVJxI']:return _0x5b6f5c(0x1d3);case _0x5b6f5c(0x1ee):return'stop\x20video\x20recording';case _0x4a911c['aPAVz']:{const _0x197628=_0x4a911c['SwILy'](extractFilenameOption,_0x355a08);if(!_0x197628)return _0x5b6f5c(0x205);const {name:_0x5c3ac5}=_0x4a911c['xLpUY'](toStepDisplayName,_0x197628);return _0x5b6f5c(0x1f4)+_0x5c3ac5+'`';}case _0x4a911c[_0x5b6f5c(0x1c1)]:{const _0x2ce5f7=extractFilenameOption(_0x355a08);if(!_0x2ce5f7)return _0x4a911c['aEPjd'];const {name:_0x443a20,isKeyStep:_0x191f6d}=_0x4a911c[_0x5b6f5c(0x240)](toStepDisplayName,_0x2ce5f7);return _0x191f6d?'capture\x20key\x20step\x20`'+_0x443a20+'`':_0x5b6f5c(0x239)+_0x443a20+'`';}case _0x5b6f5c(0x1ff):return _0x5b6f5c(0x21b)+_0x4a911c['KMrcE'](formatCommandTarget,_0x4a911c[_0x5b6f5c(0x235)](extractFirstCommandArgument,_0x355a08,_0x411ead));case'check':return _0x5b6f5c(0x1fe)+formatCommandTarget(_0x4a911c[_0x5b6f5c(0x235)](extractFirstCommandArgument,_0x355a08,_0x411ead));case'fill':return'fill\x20'+formatCommandTarget(extractFirstCommandArgument(_0x355a08,_0x411ead));case _0x5b6f5c(0x217):return _0x5b6f5c(0x237)+_0x4a911c['xLpUY'](formatCommandTarget,extractFirstCommandArgument(_0x355a08,_0x411ead));case'run-code':return _0x4a911c[_0x5b6f5c(0x1e7)];case _0x4a911c[_0x5b6f5c(0x229)]:{const _0x523078=_0x4a911c['wObcc'](extractFirstCommandArgument,_0x355a08,_0x411ead);return _0x523078?'open\x20new\x20tab\x20'+_0x523078:_0x4a911c[_0x5b6f5c(0x220)];}case _0x4a911c[_0x5b6f5c(0x226)]:{const _0x2f3346=extractFirstCommandArgument(_0x355a08,_0x411ead);return _0x2f3346?_0x5b6f5c(0x221)+_0x2f3346:'select\x20tab';}default:return _0x411ead;}}function extractPlaywrightCliToolDescription(_0x53db24){const _0x491a03=_0x1c48,_0x56f2ed={'gSCqw':function(_0x263488,_0x210587){return _0x263488!==_0x210587;},'zPYNb':_0x491a03(0x228)},_0x132884=_0x53db24['description'];if(_0x56f2ed[_0x491a03(0x206)](typeof _0x132884,_0x56f2ed[_0x491a03(0x1c8)]))return null;const _0x41bab9=_0x132884['trim']()[_0x491a03(0x22f)](/\s+/g,'\x20');return _0x41bab9[_0x491a03(0x23b)]>0x0?_0x41bab9:null;}function _0x2000(){const _0x4b67f7=['PostToolUse','4469352SZPZtP','name','tab-new','press','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20(bug,\x20error,\x20missing\x20feature)\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.','xAkiR','click\x20','tool_input','key_03_success-state.png','\x20screenshot\x20--filename\x20','\x0a\x0a1.\x20Run\x20`','EIVGB','select\x20tab\x20','\x22\x0a-\x20The\x20\x22key_\x22\x20prefix\x20marks\x20screenshots\x20as\x20high-priority\x20evidence\x20for\x20human\x20reviewers\x0a\x0a**Aim\x20for\x203-6\x20screenshots\x20per\x20verification**\x20to\x20document\x20the\x20complete\x20flow.\x20Mark\x201-2\x20of\x20the\x20most\x20important\x20ones\x20with\x20the\x20\x22key_\x22\x20prefix.\x0a','\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.','unaddressedComments','8112685bnrBoo','gPnSL','):\x20\x22','string','JvgAN','3zFSmub','kwFMH','slice','(?:^|\x5cs)','stringify','replace','You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a','test','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','`:\x20\x22','playwright-cli','KkCHY','GWJWI','press\x20','capture\x20screenshot','capture\x20step\x20`','\x20snapshot\x20--filename\x20','length','trackPhaseStart','push','02_learn-more.yml','subcommand','KMrcE','phxKm','cwd','00_mozilla-homepage.yml','01_initial.yml','tool_name','3901745mAsxuK','log',']\x20**','...','tracing-start','BkMcn','keys','session-recording.webm','HznHD','**\x20(','stdout','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','open\x20new\x20tab','FzayX','ncavt','zPYNb','26104SIHevx','split','[playwright-cli]\x20','847359EVFVHf','stderr','\x20(on\x20element:\x20<','hReDW','run\x20custom\x20Playwright\x20code','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','6713850GmaDYs','start\x20video\x20recording','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','screenshot','open','domRef','trace.zip','02_button-clicked.png','open\x20','pop','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','--filename=','wpirt','QIePA','ref\x20','snHvs','ImhPz','canonicalFlow','mtimeMs','ZscMC','key_04_success-state.png','nZhcE','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','hook_event_name','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','snapshot','VeBTN','target','video-stop','625598FaLfLV','Reviewer','nZFBA','trace.trace.zip','join','capture\x20snapshot\x20`','createdAt','match','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','tracing-stop','>\x20\x22','CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20','\x20open\x20','01_mozilla-homepage.png','lyNsC','check\x20','click','sort','1449lLnUIv','Bash','authorEmail','\x20tracing-start`\x0a3.\x20Run\x20`','capture\x20snapshot','gSCqw','\x22,\x20\x22','trXZw','tool_failure','values','\x20open`,\x20then\x20`','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','jTiyq','nVxMo','EIBib','02_state.yml','JgqHp','trackPhaseEnd'];_0x2000=function(){return _0x4b67f7;};return _0x2000();}export function formatPlaywrightCliConsoleLogMessage(_0x20038c,_0x54d202,_0x535a54){const _0x4fc522=_0x1c48,_0x2231be=formatPlaywrightCliLog(_0x54d202,_0x535a54),_0x433db5=extractPlaywrightCliToolDescription(_0x20038c);if(!_0x433db5)return _0x4fc522(0x1cb)+_0x2231be;if(process['env']['DEBUG'])return'[ranger-verification-agent]\x20'+_0x433db5+'\x20('+_0x2231be+')';return'[ranger-verification-agent]\x20'+_0x433db5;}export function buildVerifyFeatureCliDebugPrompt(_0x36f339,_0x182d7b){const _0x13cfa9=_0x1c48,_0x36dac7={'GWJWI':function(_0x7ae1b4,_0x14407b,_0x4afcfe){return _0x7ae1b4(_0x14407b,_0x4afcfe);},'tjSkp':function(_0x13904c,_0x4b3f60,_0x3bcbce){return _0x13904c(_0x4b3f60,_0x3bcbce);},'hbnen':function(_0x34003e,_0x578be1){return _0x34003e(_0x578be1);}},_0x27c677=_0x36dac7[_0x13cfa9(0x236)](buildCliArtifactPath,_0x182d7b,_0x13cfa9(0x1b6)),_0x554698=_0x36dac7['tjSkp'](buildCliArtifactPath,_0x182d7b,_0x13cfa9(0x1fc)),_0x3f425a=buildCliArtifactPath(_0x182d7b,_0x13cfa9(0x23e)),_0x5732b2=_0x36dac7['GWJWI'](buildCliArtifactPath,_0x182d7b,'03_learn-more.png'),_0x171ab1=_0x36dac7['hbnen'](quoteShellArg,_0x27c677),_0xee864a=quoteShellArg(_0x554698),_0xa9d92b=quoteShellArg(_0x3f425a),_0x262f85=quoteShellArg(_0x5732b2);return _0x13cfa9(0x230)+_0x36f339+_0x13cfa9(0x21f)+_0x36f339+_0x13cfa9(0x1c4)+_0x36f339+_0x13cfa9(0x204)+_0x36f339+_0x13cfa9(0x232)+_0x182d7b+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x36f339+_0x13cfa9(0x23a)+_0x171ab1+_0x13cfa9(0x1d4)+_0x36f339+_0x13cfa9(0x21e)+_0xee864a+_0x13cfa9(0x1ea)+_0x36f339+'\x20snapshot\x20--filename\x20'+_0xa9d92b+'`\x0a9.\x20Run\x20`'+_0x36f339+_0x13cfa9(0x21e)+_0x262f85+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x93fb92){const _0x3c3cbd=_0x1c48,_0x336677={'IRiOv':'short','zeTTm':'numeric','JgqHp':function(_0x2a66e5,_0x180ab7,_0x2fafe3){return _0x2a66e5(_0x180ab7,_0x2fafe3);},'wpirt':_0x3c3cbd(0x210),'lyNsC':_0x3c3cbd(0x21d),'ImhPz':function(_0x1937e1,_0x58b4ac){return _0x1937e1(_0x58b4ac);},'VeBTN':function(_0x3476b7,_0x28dc73){return _0x3476b7(_0x28dc73);},'aXYFk':_0x3c3cbd(0x1d9),'ZscMC':'03_result-visible.png'},{checklistItem:_0x3b98c0,itemFeedback:_0x4069a4,taskDescription:_0x4f7831,cliCommandPrefix:_0x485a34,cliArtifactDir:_0xb09b4d,isCdpMode:_0x55870f,url:_0x4f094a,cdpEndpoint:_0x5a6071,loginInstructions:_0x2d06af}=_0x93fb92,_0x150370=buildCliArtifactPath(_0xb09b4d,_0x3c3cbd(0x1b7)),_0x56e02f=_0x336677[_0x3c3cbd(0x211)](buildCliArtifactPath,_0xb09b4d,_0x336677[_0x3c3cbd(0x1de)]),_0x3d7f02=_0x336677['JgqHp'](buildCliArtifactPath,_0xb09b4d,_0x336677[_0x3c3cbd(0x1fd)]),_0xe20c57=_0x336677['JgqHp'](buildCliArtifactPath,_0xb09b4d,'01_initial-state.png'),_0x50d322=_0x336677['ImhPz'](quoteShellArg,_0x150370),_0xc0ddda=_0x336677[_0x3c3cbd(0x1e2)](quoteShellArg,_0x56e02f),_0x4ff87d=_0x336677[_0x3c3cbd(0x1e2)](quoteShellArg,_0x3d7f02),_0x56d70f=quoteShellArg(_0xe20c57),_0x171d87=_0x3b98c0['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x3b98c0['notes']:'';let _0x22bff4='';if(_0x4069a4&&_0x4069a4['unaddressedComments']['length']>0x0){const _0x32268c=_0x4069a4[_0x3c3cbd(0x224)]['map'](_0x5b3e24=>{const _0x27b6e0=_0x3c3cbd,_0x490a68=new Date(_0x5b3e24[_0x27b6e0(0x1f5)])['toLocaleDateString']('en-US',{'month':_0x336677['IRiOv'],'day':_0x336677['zeTTm']}),_0x2863f1=_0x5b3e24['authorName']||_0x5b3e24[_0x27b6e0(0x203)]||_0x27b6e0(0x1f0),_0x1763d2=_0x5b3e24['domRef']?_0x27b6e0(0x1ce)+(_0x5b3e24['domRef']['selector'][_0x27b6e0(0x1ca)]('\x20>\x20')[_0x27b6e0(0x1db)]()?.[_0x27b6e0(0x1ca)](':')[0x0]||'element')+_0x27b6e0(0x1f9)+(_0x5b3e24[_0x27b6e0(0x1d7)]['textContent']||'')[_0x27b6e0(0x22c)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x5b3e24['id']+_0x27b6e0(0x1bb)+_0x2863f1+_0x27b6e0(0x1c2)+_0x490a68+_0x27b6e0(0x227)+_0x5b3e24['content']+'\x22'+_0x1763d2;})[_0x3c3cbd(0x1f3)]('\x0a');_0x22bff4='\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'+_0x32268c;}const _0x3f8e22=_0x4069a4?.[_0x3c3cbd(0x1e3)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x4069a4[_0x3c3cbd(0x1e3)]:'',_0x34bb80=_0x55870f?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x5a6071+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':_0x3c3cbd(0x1fa)+_0x4f094a+'\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',_0xcbb744=_0x4f094a?_0x336677[_0x3c3cbd(0x1ec)](quoteShellArg,_0x4f094a):'',_0x3450fc=_0x55870f?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x485a34+_0x3c3cbd(0x20b)+_0x485a34+'\x20tracing-start`,\x20then\x20`'+_0x485a34+_0x3c3cbd(0x1d1)+_0xb09b4d+_0x3c3cbd(0x218)+_0x485a34+_0x3c3cbd(0x23a)+_0x50d322+'`\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`'+_0x485a34+'\x20screenshot\x20--filename\x20'+_0x56d70f+_0x3c3cbd(0x20c)+_0x485a34+'\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario':'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x485a34+_0x3c3cbd(0x1fb)+_0xcbb744+'`,\x20then\x20`'+_0x485a34+'\x20tracing-start`,\x20then\x20`'+_0x485a34+_0x3c3cbd(0x1d1)+_0xb09b4d+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x485a34+_0x3c3cbd(0x23a)+_0x50d322+'`\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`'+_0x485a34+_0x3c3cbd(0x21e)+_0x56d70f+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x485a34+'\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',_0xb898ae=_0x55870f?_0x3c3cbd(0x223):'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0x271cdb=_0x2d06af?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x2d06af+_0x3c3cbd(0x1f7):'';return _0x3c3cbd(0x1e8)+_0x3b98c0['description']+_0x171d87+_0x22bff4+_0x3f8e22+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x4f7831+'\x0a\x0a'+_0x34bb80+_0x271cdb+'\x0a\x0a'+_0x3450fc+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0x485a34+_0x3c3cbd(0x1dc)+_0xb09b4d+'`\x0a-\x20`snapshot\x20--filename\x20'+_0xc0ddda+'`\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'+_0x4ff87d+'`\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`'+_0xb09b4d+_0x3c3cbd(0x233)+_0xe20c57+_0x3c3cbd(0x207)+buildCliArtifactPath(_0xb09b4d,_0x336677['aXYFk'])+'\x22,\x20\x22'+_0x336677[_0x3c3cbd(0x211)](buildCliArtifactPath,_0xb09b4d,_0x336677[_0x3c3cbd(0x1e5)])+'\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22'+buildCliArtifactPath(_0xb09b4d,_0x3c3cbd(0x1e6))+_0x3c3cbd(0x222)+_0xb898ae+_0x3c3cbd(0x219);}export function summarizeVerifyFeatureCliCommandAvailability(_0x2016de){const _0x13d51c=_0x1c48,_0x3218be={'xmYkl':function(_0x18b50f,_0x5ef4eb){return _0x18b50f===_0x5ef4eb;}},_0x1e5231=[..._0x2016de[_0x13d51c(0x1bf)]()][_0x13d51c(0x200)]();let _0x4159a9=0x0;for(const _0xcdb714 of _0x2016de[_0x13d51c(0x20a)]()){_0x4159a9+=_0xcdb714;}return{'cliCommandCount':_0x4159a9,'cliCommandsSeen':_0x1e5231,'noCliCommandsCalled':_0x3218be['xmYkl'](_0x4159a9,0x0)};}export function createVerifyFeatureCliHooks(_0x8e10b5){const _0x269d37=_0x1c48,_0x260a66={'ncavt':_0x269d37(0x213),'phxKm':function(_0x569d50,_0x43f8ca){return _0x569d50!==_0x43f8ca;},'taKyL':function(_0x51f198,_0x257784){return _0x51f198(_0x257784);},'BkMcn':_0x269d37(0x234),'nVxMo':function(_0x3a77d5,_0x1e7e66){return _0x3a77d5!==_0x1e7e66;},'stQzh':function(_0x2e4b31,_0x54b7a9,_0x4f64bc,_0x5fbb49){return _0x2e4b31(_0x54b7a9,_0x4f64bc,_0x5fbb49);},'FzayX':function(_0x46a5bb,_0x5af4ad){return _0x46a5bb!==_0x5af4ad;},'GEymU':_0x269d37(0x202)},_0x1bf303=new Map(),_0x563b2f=async _0x10b72b=>{const _0x281c68=_0x269d37;if(_0x10b72b[_0x281c68(0x1e9)]!==_0x260a66[_0x281c68(0x1c7)])return{};const _0x3c6e42=_0x10b72b;if(_0x260a66[_0x281c68(0x241)](_0x3c6e42['tool_name'],_0x281c68(0x202)))return{};const _0x115f22=_0x3c6e42[_0x281c68(0x21c)],_0x17f5fb=extractBashCommand(_0x115f22);if(!_0x17f5fb)return{};const _0x475bc6=_0x260a66['taKyL'](parsePlaywrightCliCommand,_0x17f5fb);if(!_0x475bc6)return{};return _0x1bf303['set'](_0x475bc6,(_0x1bf303['get'](_0x475bc6)||0x0)+0x1),_0x8e10b5['trackPhaseStart']('tool_call',{'transport':_0x260a66[_0x281c68(0x1be)],'toolName':_0x475bc6}),_0x8e10b5[_0x281c68(0x212)]('tool_call',{'transport':'playwright-cli','toolName':_0x475bc6,'bashCommandPreview':truncatePreview(_0x17f5fb)}),_0x260a66[_0x281c68(0x20e)](_0x475bc6,'snapshot')&&console[_0x281c68(0x1ba)](_0x260a66['stQzh'](formatPlaywrightCliConsoleLogMessage,_0x115f22,_0x17f5fb,_0x475bc6)),{};},_0x2ca814=async _0x57ff74=>{const _0x21d226=_0x269d37;if(_0x260a66[_0x21d226(0x20e)](_0x57ff74['hook_event_name'],'PostToolUseFailure'))return{};const _0x21b6e7=_0x57ff74;if(_0x260a66[_0x21d226(0x1c6)](_0x21b6e7[_0x21d226(0x1b8)],_0x260a66['GEymU']))return{};return await _0x8e10b5['trackPhaseError'](_0x21d226(0x209),_0x21b6e7['error'],{'transport':_0x21d226(0x234),'toolName':_0x260a66['GEymU']}),{};};return{'postToolUseHook':_0x563b2f,'postToolUseFailureHook':_0x2ca814,'commandCounts':_0x1bf303};}async function runPlaywrightCliLifecycleCommand(_0x5da7a6){const _0x20cedc=_0x1c48,_0x2b44bd={'OkEIy':function(_0x7014e8,_0xfc9aa0){return _0x7014e8(_0xfc9aa0);},'jTiyq':function(_0x34208c,_0xdb6a46,_0x4a859b){return _0x34208c(_0xdb6a46,_0x4a859b);}},{sessionId:_0x8c4414,configPath:_0x4ac4af,commandArgs:_0x31d049,env:_0x41e54c,telemetry:_0x14d756,phase:_0x362c2e,metadata:_0x4fed74,timeoutMs:_0x10ba91}=_0x5da7a6;_0x14d756[_0x20cedc(0x23c)](_0x362c2e,_0x4fed74);try{const _0x214e26=await _0x2b44bd['OkEIy'](runPlaywrightCliCommand,{'sessionId':_0x8c4414,'configPath':_0x4ac4af,'commandArgs':_0x31d049,'cwd':process[_0x20cedc(0x1b5)](),'env':_0x41e54c,'timeoutMs':_0x10ba91??PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS});_0x14d756[_0x20cedc(0x212)](_0x362c2e,{..._0x4fed74,'subcommand':_0x214e26['invocation'][_0x20cedc(0x23f)],'stdoutPreview':truncatePreview(_0x214e26[_0x20cedc(0x1c3)],0x7d0),'stderrPreview':_0x2b44bd[_0x20cedc(0x20d)](truncatePreview,_0x214e26[_0x20cedc(0x1cd)],0x7d0)});}catch(_0x1c9845){await _0x14d756['trackPhaseError'](_0x362c2e,_0x1c9845,_0x4fed74);throw _0x1c9845;}}export async function finalizeVerifyFeatureCliSession(_0x1a60d3){const _0x49c82e=_0x1c48,_0x559f61={'EIBib':'playwright_cli_video_stop','QIePA':_0x49c82e(0x1ee),'PjirH':_0x49c82e(0x1c0),'IKTvr':'playwright_cli_close','aTZPo':'close'},{telemetry:_0x2ebfa5,sessionId:_0x565f79,configPath:_0xcf8fd6,cliArtifactDir:_0x14dd02,env:_0x4126b8,transportMetadata:_0x20e6d0}=_0x1a60d3,_0x47ae43=[{'phase':'playwright_cli_tracing_stop','commandArgs':[_0x49c82e(0x1f8)]},{'phase':_0x559f61[_0x49c82e(0x20f)],'commandArgs':[_0x559f61[_0x49c82e(0x1df)],_0x49c82e(0x1dd)+buildCliArtifactPath(_0x14dd02,_0x559f61['PjirH'])]},{'phase':_0x559f61['IKTvr'],'commandArgs':[_0x559f61['aTZPo']]}];for(const _0xef2973 of _0x47ae43){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x565f79,'configPath':_0xcf8fd6,'commandArgs':[..._0xef2973['commandArgs']],'env':_0x4126b8,'telemetry':_0x2ebfa5,'phase':_0xef2973['phase'],'metadata':_0x20e6d0});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x488421){const _0x5be4e5=_0x1c48,_0x2efdab={'snHvs':_0x5be4e5(0x1f2),'QPSHD':function(_0x1d6baf,_0x3077fc,_0x5f249a){return _0x1d6baf(_0x3077fc,_0x5f249a);},'ufAQw':function(_0x53a075,_0x12919d){return _0x53a075(_0x12919d);}},_0x4046c6=[_0x5be4e5(0x1d8),_0x2efdab[_0x5be4e5(0x1e1)]];for(const _0x453a10 of _0x4046c6){const _0x259869=_0x2efdab['QPSHD'](join,_0x488421,_0x453a10);try{return{'buffer':await _0x2efdab['ufAQw'](readFile,_0x259869),'source':_0x259869};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x21fc10){const _0x1a7bf0=_0x1c48,_0x1ea763={'SKJAk':function(_0x592ac6,_0x2c6491,_0x1f2faa){return _0x592ac6(_0x2c6491,_0x1f2faa);},'EWrLP':function(_0x89a3ec,_0x5379bc){return _0x89a3ec(_0x5379bc);},'NbmDy':function(_0x120149,_0x571c72){return _0x120149+_0x571c72;},'trXZw':function(_0x22525a,_0x49a8d0){return _0x22525a===_0x49a8d0;}},{cwd:_0x5534d0,cliArtifactDir:_0x2a993d,startTime:_0x473bf9}=_0x21fc10,_0x339a90=[];await _0x1ea763['SKJAk'](mkdir,_0x2a993d,{'recursive':!![]});const _0x24d0eb=await readdir(_0x5534d0,{'withFileTypes':!![]});for(const _0x1e779e of _0x24d0eb){if(!_0x1e779e['isFile']()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x1a7bf0(0x231)](_0x1e779e['name']))continue;const _0x19b72=join(_0x5534d0,_0x1e779e['name']),_0x501c37=await _0x1ea763['EWrLP'](stat,_0x19b72);if(_0x1ea763['NbmDy'](_0x501c37[_0x1a7bf0(0x1e4)],0x7d0)<_0x473bf9)continue;const _0x303271=buildCliArtifactPath(_0x2a993d,_0x1e779e['name']);if(_0x1ea763[_0x1a7bf0(0x208)](_0x19b72,_0x303271))continue;await rename(_0x19b72,_0x303271),_0x339a90[_0x1a7bf0(0x23d)](_0x1e779e[_0x1a7bf0(0x215)]);}return _0x339a90['sort']();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x2f8c61=_0x30df;(function(_0x5bf978,_0x14c322){const _0x366405=_0x30df,_0x478c41=_0x5bf978();while(!![]){try{const _0x3b2e4b=-parseInt(_0x366405(0x195))/0x1*(parseInt(_0x366405(0x135))/0x2)+parseInt(_0x366405(0x162))/0x3+-parseInt(_0x366405(0x1f0))/0x4+-parseInt(_0x366405(0x1f5))/0x5+parseInt(_0x366405(0x18c))/0x6+-parseInt(_0x366405(0x18a))/0x7*(parseInt(_0x366405(0x1d5))/0x8)+parseInt(_0x366405(0x149))/0x9;if(_0x3b2e4b===_0x14c322)break;else _0x478c41['push'](_0x478c41['shift']());}catch(_0x43c6fa){_0x478c41['push'](_0x478c41['shift']());}}}(_0x49fe,0x956e5));import{execFile}from'child_process';import{mkdir,readdir,readFile,rename,rm,stat,writeFile}from'fs/promises';import{homedir}from'os';import{basename,join}from'path';function _0x30df(_0x32556a,_0x3a8472){_0x32556a=_0x32556a-0x12f;const _0x49fe66=_0x49fe();let _0x30df10=_0x49fe66[_0x32556a];return _0x30df10;}import{promisify}from'util';import{chromium}from'playwright';import{buildNovaActCliInvocation,buildNovaActCliSharedOptionsSuffix,extractNovaActLogDir,parseNovaActCliCommand,previewNovaActCliCommand,runNovaActCliCommand}from'./utils/novaActCli.js';import{extractBashCommand,quoteShellArg}from'./utils/playwrightCli.js';const NOVA_ACT_CLI_COMMAND_TIMEOUT_MS=0x1d4c0,NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS=0x3a98,NOVA_ARTIFACT_METADATA_WAIT_MS=0x1388,NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS=0x1388,VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|final-state\.ya?ml|nova-session-export\.json)$/i,NOVA_ACT_ALLOWED_AGENT_COMMANDS=new Set([_0x2f8c61(0x1be),_0x2f8c61(0x177),'verify',_0x2f8c61(0x19f),'goto',_0x2f8c61(0x1b4),'snapshot',_0x2f8c61(0x134)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x15b63e,_0x48ee19){return join(_0x15b63e,_0x48ee19);}export class NovaActArtifactRecorder{[_0x2f8c61(0x20f)];[_0x2f8c61(0x172)]=null;['context']=null;['frameSession']=null;[_0x2f8c61(0x1e7)]=[];[_0x2f8c61(0x1cb)]=0x0;[_0x2f8c61(0x17a)]=0x0;['traceSampleTimer']=null;['traceSampleInFlight']=null;[_0x2f8c61(0x203)]=![];[_0x2f8c61(0x1f6)]=![];[_0x2f8c61(0x1aa)]=![];[_0x2f8c61(0x1f2)]=![];constructor(_0x39b789){const _0xbf8d73=_0x2f8c61;this[_0xbf8d73(0x20f)]=_0x39b789;}async['start'](){const _0x5eb498=_0x2f8c61,_0x567db2={'ZVbut':function(_0x3b6432,_0x2670f9,_0x5cd3f7){return _0x3b6432(_0x2670f9,_0x5cd3f7);},'KXrZe':'nova_act_artifact_recording'};if(this[_0x5eb498(0x1aa)])return;this[_0x5eb498(0x1aa)]=!![];const _0x13e05c=await this['readSessionMetadataWithRetry'](),_0xe51929=_0x13e05c[_0x5eb498(0x16e)];if(!_0xe51929)throw new Error('Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20'+this[_0x5eb498(0x20f)]['novaOptions']['sessionId']);await _0x567db2[_0x5eb498(0x1ed)](mkdir,this[_0x5eb498(0x20f)]['cliArtifactDir'],{'recursive':!![]}),this[_0x5eb498(0x172)]=await chromium[_0x5eb498(0x178)](_0xe51929,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this['context']=this['browser'][_0x5eb498(0x18e)]()[0x0]??null;if(!this[_0x5eb498(0x159)])throw new Error(_0x5eb498(0x190));await this[_0x5eb498(0x159)][_0x5eb498(0x139)][_0x5eb498(0x180)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x5eb498(0x174)](),await this[_0x5eb498(0x16b)](),this['params']['telemetry']['trackPhaseStart'](_0x567db2['KXrZe'],{...this[_0x5eb498(0x20f)][_0x5eb498(0x188)],'cdpEndpoint':_0xe51929,'browserPid':_0x13e05c['browser_pid'],'sessionState':_0x13e05c[_0x5eb498(0x1dc)]}),this[_0x5eb498(0x20f)]['telemetry']['trackPhaseEnd'](_0x567db2['KXrZe'],{...this['params']['transportMetadata'],'tracingStarted':this['tracingStarted'],'screencastStarted':this['screencastStarted']});}async[_0x2f8c61(0x1ba)](){const _0x17d953=_0x2f8c61,_0x5d3a76={'CSGFL':'nova_act_artifact_recording_stop'};if(this[_0x17d953(0x1f2)])return;this['stopped']=!![];const _0x41570b={...this[_0x17d953(0x20f)][_0x17d953(0x188)],'frameCount':this['frameCount'],'traceSampleCount':this[_0x17d953(0x17a)],'tracingStarted':this[_0x17d953(0x203)],'screencastStarted':this['screencastStarted']};this[_0x17d953(0x20f)]['telemetry']['trackPhaseStart'](_0x5d3a76['CSGFL'],_0x41570b);try{await this['stopTraceSampling'](),await this[_0x17d953(0x1d4)](),await this['stopScreencast'](),await Promise['allSettled'](this[_0x17d953(0x1e7)]);this[_0x17d953(0x159)]&&this[_0x17d953(0x203)]&&await this['context'][_0x17d953(0x139)][_0x17d953(0x1ba)]({'path':buildCliArtifactPath(this['params']['cliArtifactDir'],_0x17d953(0x1f8))});const _0x3dddfd=await this[_0x17d953(0x1b7)]();this['params'][_0x17d953(0x1d3)]['trackPhaseEnd'](_0x5d3a76['CSGFL'],{..._0x41570b,'videoPath':_0x3dddfd});}catch(_0x2a6556){await this[_0x17d953(0x20f)][_0x17d953(0x1d3)][_0x17d953(0x1c5)]('nova_act_artifact_recording_stop',_0x2a6556,_0x41570b);}finally{await this['browser']?.[_0x17d953(0x147)]()['catch'](()=>undefined),this[_0x17d953(0x172)]=null,this['context']=null,this['frameSession']=null;}}async['readSessionMetadataWithRetry'](){const _0x3d4f54=_0x2f8c61,_0x5c1565={'IyrcG':function(_0x9a22a6,_0xa028e2,_0x5dbe9b,_0x47797f,_0x590f84,_0x315ef5){return _0x9a22a6(_0xa028e2,_0x5dbe9b,_0x47797f,_0x590f84,_0x315ef5);},'aOMmi':function(_0x3b29fb){return _0x3b29fb();},'TxNJB':_0x3d4f54(0x1ff),'KFOCt':function(_0x550775,_0x5af1d7,_0x45c67d){return _0x550775(_0x5af1d7,_0x45c67d);},'owFqv':function(_0x434192,_0x2ef1f6){return _0x434192<_0x2ef1f6;},'RaBNR':function(_0x2bb2ec,_0x4ff409){return _0x2bb2ec-_0x4ff409;}},_0x3b1cb1=_0x5c1565['IyrcG'](join,_0x5c1565['aOMmi'](homedir),_0x5c1565['TxNJB'],'browser','sessions',this['params']['novaOptions']['sessionId']+'.json'),_0x3d7881=Date['now']();let _0x384a46;do{try{const _0x3a943b=JSON['parse'](await _0x5c1565[_0x3d4f54(0x1a3)](readFile,_0x3b1cb1,_0x3d4f54(0x1c2)));if(_0x3a943b['cdp_endpoint'])return _0x3a943b;_0x384a46=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0x3b1cb1);}catch(_0x9e563e){_0x384a46=_0x9e563e;}await delay(0x64);}while(_0x5c1565['owFqv'](_0x5c1565['RaBNR'](Date[_0x3d4f54(0x1d9)](),_0x3d7881),NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x384a46 instanceof Error)throw _0x384a46;throw new Error(_0x3d4f54(0x1ef)+_0x3b1cb1);}async[_0x2f8c61(0x16b)](){const _0x153f58=_0x2f8c61,_0x58c412={'eSUsM':function(_0x5e5919,_0x1e9d3c,_0x14a708){return _0x5e5919(_0x1e9d3c,_0x14a708);},'fEPhZ':function(_0x4b6bc3,_0x58db86){return _0x4b6bc3(_0x58db86);},'wgGDE':_0x153f58(0x202),'XkhKm':'Page.screencastFrame','ZweYa':'Page.startScreencast','BqGNk':'jpeg'};if(!this['context'])return;const _0x3c0b33=this[_0x153f58(0x159)]['pages']()[0x0];if(!_0x3c0b33)return;const _0x29cc9a=this[_0x153f58(0x1fa)]();await mkdir(_0x29cc9a,{'recursive':!![]});const _0x3245b1=await this[_0x153f58(0x159)][_0x153f58(0x214)](_0x3c0b33);this[_0x153f58(0x1d7)]=_0x3245b1,_0x3245b1['on'](_0x58c412['XkhKm'],_0x1c551f=>{const _0x58ee4d=_0x153f58,_0x27885b=++this[_0x58ee4d(0x1cb)],_0x1e22ef=_0x58c412['eSUsM'](join,_0x29cc9a,'frame-'+_0x58c412['fEPhZ'](String,_0x27885b)[_0x58ee4d(0x173)](0x6,'0')+_0x58ee4d(0x14a)),_0x345c98=writeFile(_0x1e22ef,Buffer[_0x58ee4d(0x1c8)](_0x1c551f[_0x58ee4d(0x1ac)],_0x58c412['wgGDE']))[_0x58ee4d(0x192)](()=>undefined)[_0x58ee4d(0x176)](()=>_0x3245b1[_0x58ee4d(0x1da)](_0x58ee4d(0x1b1),{'sessionId':_0x1c551f[_0x58ee4d(0x16d)]}))[_0x58ee4d(0x131)](()=>undefined)[_0x58ee4d(0x192)](()=>undefined);this['frameWrites'][_0x58ee4d(0x197)](_0x345c98);}),await _0x3245b1[_0x153f58(0x1da)](_0x58c412['ZweYa'],{'format':_0x58c412[_0x153f58(0x133)],'quality':0x4b,'everyNthFrame':0x6}),this[_0x153f58(0x1f6)]=!![];}async[_0x2f8c61(0x166)](){const _0x1d1644=_0x2f8c61,_0x144888={'WFBCN':'Page.stopScreencast'};if(!this['frameSession']||!this[_0x1d1644(0x1f6)])return;await this[_0x1d1644(0x1d7)]['send'](_0x144888[_0x1d1644(0x1e9)])['catch'](()=>undefined);}['startTraceSampling'](){const _0x191abc=_0x2f8c61,_0x22ab6c={'Mgvuh':function(_0x4815ae,_0x58de4e,_0xc5c875){return _0x4815ae(_0x58de4e,_0xc5c875);}};this[_0x191abc(0x1b2)](),this['traceSampleTimer']=_0x22ab6c['Mgvuh'](setInterval,()=>this[_0x191abc(0x1b2)](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}['queueTraceSample'](){const _0x1b5345=_0x2f8c61;if(this['traceSampleInFlight'])return;this['traceSampleInFlight']=this[_0x1b5345(0x1d4)]()['finally'](()=>{const _0x1f0b0f=_0x1b5345;this[_0x1f0b0f(0x1ab)]=null;});}async['stopTraceSampling'](){const _0x26c205=_0x2f8c61;this[_0x26c205(0x143)]&&(clearInterval(this[_0x26c205(0x143)]),this[_0x26c205(0x143)]=null),await this['traceSampleInFlight']?.['catch'](()=>undefined);}async['captureTraceSample'](){const _0x1d758b=_0x2f8c61,_0x56c4d8=this[_0x1d758b(0x159)]?.['pages']()[0x0];if(!_0x56c4d8)return;try{await _0x56c4d8['locator']('body')[_0x1d758b(0x152)](_0x25a656=>_0x25a656[_0x1d758b(0x1b0)],undefined,{'timeout':0x3e8}),this[_0x1d758b(0x17a)]++;}catch{}}async[_0x2f8c61(0x1b7)](){const _0xee8f71=_0x2f8c61,_0x13437a={'AaNyt':_0xee8f71(0x157),'xiQpK':function(_0x3f0241,_0x3b22b1,_0x356720){return _0x3f0241(_0x3b22b1,_0x356720);},'mlLUp':'-hide_banner','zqdux':_0xee8f71(0x1a9),'tddcZ':'error','SmSQv':'-framerate','YSnWe':'frame-%06d.jpg','xnNmC':_0xee8f71(0x213),'ISuDz':'yuv420p'};if(this['frameCount']<0x2)return null;const _0x4d4668=await resolveFfmpegPath();if(!_0x4d4668)return null;const _0x31a24e=join(this['params'][_0xee8f71(0x211)],_0x13437a[_0xee8f71(0x201)]);await _0x13437a[_0xee8f71(0x17f)](mkdir,_0x31a24e,{'recursive':!![]});const _0xae5beb=_0x13437a['xiQpK'](join,_0x31a24e,_0xee8f71(0x1e6));return await execFileAsync(_0x4d4668,['-y',_0x13437a[_0xee8f71(0x14b)],_0x13437a['zqdux'],_0x13437a['tddcZ'],_0x13437a[_0xee8f71(0x1d6)],'10','-i',_0x13437a[_0xee8f71(0x17f)](join,this[_0xee8f71(0x1fa)](),_0x13437a['YSnWe']),_0xee8f71(0x150),'scale=trunc(iw/2)*2:trunc(ih/2)*2','-c:v',_0x13437a[_0xee8f71(0x161)],'-pix_fmt',_0x13437a[_0xee8f71(0x1c4)],_0xae5beb]),_0xae5beb;}[_0x2f8c61(0x1fa)](){const _0x85565a=_0x2f8c61,_0x51d652={'FVWGT':function(_0x51b53d,_0x28e85c,_0x42d000){return _0x51b53d(_0x28e85c,_0x42d000);}};return _0x51d652[_0x85565a(0x1c1)](join,this['params'][_0x85565a(0x211)],'nova-video-frames');}}async function delay(_0xeeeb0d){await new Promise(_0x5d6686=>setTimeout(_0x5d6686,_0xeeeb0d));}async function resolveFfmpegPath(){const _0x547ca4=_0x2f8c61,_0x509436={'WLlyf':'ffmpeg','hjmJZ':function(_0x294adf,_0x103885,_0x148f7c,_0x442c21,_0x2e5878){return _0x294adf(_0x103885,_0x148f7c,_0x442c21,_0x2e5878);},'bLDDV':function(_0x342fc0,_0x397e95,_0x40d555,_0x4d970d){return _0x342fc0(_0x397e95,_0x40d555,_0x4d970d);},'bMKjc':_0x547ca4(0x17c),'LbeVO':function(_0x2b3d7d,_0x3d2edb){return _0x2b3d7d(_0x3d2edb);}};if(await canRunFfmpeg(_0x509436['WLlyf']))return _0x547ca4(0x20e);const _0x40a062=[_0x509436['hjmJZ'](join,homedir(),_0x547ca4(0x208),_0x547ca4(0x1f7),_0x547ca4(0x20d)),_0x509436['bLDDV'](join,homedir(),_0x509436[_0x547ca4(0x175)],'ms-playwright')];for(const _0x96ffe0 of _0x40a062){try{const _0x3ce428=await readdir(_0x96ffe0),_0x2f659f=_0x3ce428['filter'](_0x5ca1cc=>_0x5ca1cc['startsWith'](_0x547ca4(0x1ea)))['sort']()['reverse']()['flatMap'](_0x4a5042=>[join(_0x96ffe0,_0x4a5042,_0x547ca4(0x200)),join(_0x96ffe0,_0x4a5042,'ffmpeg-linux'),join(_0x96ffe0,_0x4a5042,'ffmpeg.exe')]);for(const _0x530d4b of _0x2f659f){if(await _0x509436['LbeVO'](canRunFfmpeg,_0x530d4b))return _0x530d4b;}}catch{}}return null;}async function canRunFfmpeg(_0x43c229){const _0x1875f4=_0x2f8c61,_0x3b71aa={'RRbbM':function(_0x5e21d7,_0x2c9423,_0x3415a4){return _0x5e21d7(_0x2c9423,_0x3415a4);},'FGAti':_0x1875f4(0x20b)};try{return await _0x3b71aa[_0x1875f4(0x154)](execFileAsync,_0x43c229,[_0x3b71aa['FGAti']]),!![];}catch{return![];}}function toStepDisplayName(_0xbe2f0e){const _0x325f80=_0x2f8c61,_0x12191f={'NzXPE':function(_0x16f9c3,_0x2e1851){return _0x16f9c3(_0x2e1851);},'uYpzW':function(_0x1fa66e,_0x50521d){return _0x1fa66e(_0x50521d);}},_0x400343=_0x12191f['NzXPE'](basename,_0xbe2f0e)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x325f80(0x1d8)](/^\d+_/,'')[_0x325f80(0x1d8)](/-/g,'\x20');return{'name':_0x400343,'isKeyStep':/^key_/i['test'](_0x12191f[_0x325f80(0x212)](basename,_0xbe2f0e))};}function extractShellValue(_0x1075ec){if(!_0x1075ec)return null;return _0x1075ec[0x1]??_0x1075ec[0x2]??_0x1075ec[0x3]??null;}function extractOutputOption(_0x376d83){return extractShellValue(_0x376d83['match'](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0xc74e76,_0x1a93dc){const _0x38cb0d=_0x2f8c61,_0x1ca23e={'ZmTQu':_0x38cb0d(0x177),'iqryc':_0x38cb0d(0x169),'PKeNO':_0x38cb0d(0x14e),'yduPa':'verify\x20page\x20condition','zKhhi':_0x38cb0d(0x17e),'QjIcU':_0x38cb0d(0x1b4),'hcwoX':'wait\x20for\x20page\x20condition','OAKtU':_0x38cb0d(0x1fc),'NupUP':function(_0x1f2bf2,_0x39cc17){return _0x1f2bf2(_0x39cc17);},'ZxTIo':_0x38cb0d(0x1cf),'oEaZw':_0x38cb0d(0x134),'LkKOc':function(_0x4689c9,_0x2fa070){return _0x4689c9(_0x2fa070);},'TTtbk':'capture\x20screenshot','EGCZy':function(_0x305b58,_0xdb64d3){return _0x305b58(_0xdb64d3);},'GEQuz':_0x38cb0d(0x191)};switch(_0x1a93dc){case'session\x20create':return _0x38cb0d(0x140);case _0x1ca23e['ZmTQu']:return _0x1ca23e['iqryc'];case _0x1ca23e['PKeNO']:return _0x1ca23e['yduPa'];case _0x38cb0d(0x19f):return'ask\x20page\x20question';case _0x38cb0d(0x156):return _0x1ca23e[_0x38cb0d(0x1ca)];case _0x1ca23e[_0x38cb0d(0x17d)]:return _0x1ca23e[_0x38cb0d(0x1b6)];case _0x1ca23e[_0x38cb0d(0x171)]:{const _0x13667c=_0x1ca23e['NupUP'](extractOutputOption,_0xc74e76);if(!_0x13667c)return _0x1ca23e['ZxTIo'];const {name:_0x3abd30}=toStepDisplayName(_0x13667c);return'capture\x20snapshot\x20`'+_0x3abd30+'`';}case _0x1ca23e[_0x38cb0d(0x1d1)]:{const _0x4efcca=_0x1ca23e[_0x38cb0d(0x1f9)](extractOutputOption,_0xc74e76);if(!_0x4efcca)return _0x1ca23e['TTtbk'];const {name:_0x4c00db,isKeyStep:_0x1655fe}=_0x1ca23e['EGCZy'](toStepDisplayName,_0x4efcca);return _0x1655fe?_0x38cb0d(0x1c9)+_0x4c00db+'`':_0x38cb0d(0x181)+_0x4c00db+'`';}case _0x1ca23e['GEQuz']:return _0x38cb0d(0x14f);default:return _0x1a93dc;}}function getNovaActCliCommandBlockReason(_0x71b296){const _0x2037a8=_0x2f8c61,_0x27f868={'HBeXv':function(_0x2cb0ab,_0x598cd5){return _0x2cb0ab(_0x598cd5);},'TWKYK':_0x2037a8(0x14e)},_0xa55d0f=_0x27f868['HBeXv'](parseNovaActCliCommand,_0x71b296);if(!_0xa55d0f)return _0x2037a8(0x179);if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x2037a8(0x1c0)](_0xa55d0f))return'Nova\x20command\x20`'+_0xa55d0f+_0x2037a8(0x12f);if(_0xa55d0f===_0x27f868[_0x2037a8(0x1a1)]&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x71b296))return'Evaluate\x20visited-page\x20aggregate\x20requirements\x20from\x20the\x20collected\x20URLs,\x20titles,\x20headings,\x20verify\x20results,\x20and\x20screenshots.\x20Do\x20not\x20run\x20another\x20browser\x20command\x20to\x20re-check\x20pages\x20already\x20visited.';if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x71b296))return'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.';return null;}function buildFeedbackSection(_0xd3c33){const _0x154f05=_0x2f8c61,_0x12021e={'gdQyQ':_0x154f05(0x1a2),'vyEZE':_0x154f05(0x155),'EejGY':_0x154f05(0x1f3),'BmqDr':_0x154f05(0x16c),'DlGED':function(_0x54ad0d,_0x14790b){return _0x54ad0d===_0x14790b;}};if(!_0xd3c33||_0x12021e[_0x154f05(0x1dd)](_0xd3c33[_0x154f05(0x132)][_0x154f05(0x206)],0x0))return'';const _0x3fa937=_0xd3c33[_0x154f05(0x132)][_0x154f05(0x168)](_0x3b869d=>{const _0x39c2dc=_0x154f05,_0x1ffb90=new Date(_0x3b869d[_0x39c2dc(0x158)])[_0x39c2dc(0x1fd)](_0x12021e['gdQyQ'],{'month':_0x12021e['vyEZE'],'day':_0x12021e['EejGY']}),_0x418a5b=_0x3b869d['authorName']||_0x3b869d['authorEmail']||'Reviewer',_0x44cbd3=_0x3b869d['domRef']?'\x20(on\x20element:\x20<'+(_0x3b869d['domRef']['selector']['split'](_0x39c2dc(0x1e3))['pop']()?.['split'](':')[0x0]||_0x12021e['BmqDr'])+'>\x20\x22'+(_0x3b869d['domRef']['textContent']||'')[_0x39c2dc(0x1d0)](0x0,0x32)+'\x22)':'';return _0x39c2dc(0x196)+_0x3b869d['id']+']\x20**'+_0x418a5b+_0x39c2dc(0x164)+_0x1ffb90+'):\x20\x22'+_0x3b869d[_0x39c2dc(0x165)]+'\x22'+_0x44cbd3;})['join']('\x0a');return _0x154f05(0x16f)+_0x3fa937;}function buildNovaSharedOptionsInstruction(_0x218389){const _0x23a91d=_0x2f8c61;if(!_0x218389[_0x23a91d(0x1ce)]())return'The\x20command\x20prefix\x20already\x20injects\x20session,\x20auth,\x20region,\x20workflow,\x20user-data,\x20headless,\x20and\x20JSON\x20options.\x0aDo\x20not\x20run\x20raw\x20`act\x20browser`.\x20Do\x20not\x20add\x20`--auth-mode`,\x20`--aws-profile`,\x20`--region`,\x20`--workflow-name`,\x20`--session-id`,\x20`--user-data-dir`,\x20`--headless`,\x20or\x20`--headed`\x20yourself.';return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0x218389;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x1d3aff){const _0x494282=_0x2f8c61,_0x4a7a46={'etEaj':'00_initial-state.yml','PnMmM':_0x494282(0x148),'qiyjA':function(_0x6c5c7d,_0x4dfd3c,_0x2b380c){return _0x6c5c7d(_0x4dfd3c,_0x2b380c);},'KAMRK':_0x494282(0x1ee),'fniDA':function(_0x4529f5,_0xba380f,_0x3140d3){return _0x4529f5(_0xba380f,_0x3140d3);},'HUueC':function(_0x4d62e2,_0x276982){return _0x4d62e2(_0x276982);},'bNwnv':function(_0x8b884a,_0x2adef6){return _0x8b884a(_0x2adef6);}},{novaCommandPrefix:_0x5ede04,novaSharedOptionsSuffix:_0x489c1c,cliArtifactDir:_0x442e8b,url:_0x296909}=_0x1d3aff,_0x1af06c=buildCliArtifactPath(_0x442e8b,_0x4a7a46['etEaj']),_0x11f0b0=buildCliArtifactPath(_0x442e8b,_0x4a7a46[_0x494282(0x15b)]),_0x1b7cc6=_0x4a7a46['qiyjA'](buildCliArtifactPath,_0x442e8b,_0x4a7a46[_0x494282(0x18b)]),_0x4f6ddb=_0x4a7a46[_0x494282(0x130)](buildCliArtifactPath,_0x442e8b,_0x494282(0x138));return'You\x20are\x20testing\x20Nova\x20Act\x20browser\x20automation.\x20Your\x20task\x20is\x20simple.\x0a\x0aUse\x20Bash\x20and\x20Nova\x20Act\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x5ede04+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x489c1c)+_0x494282(0x1a5)+_0x5ede04+'\x20session\x20create\x20'+_0x4a7a46[_0x494282(0x1fb)](quoteShellArg,_0x296909)+'\x20'+_0x489c1c+'`\x0a2.\x20Run\x20`'+_0x5ede04+_0x494282(0x170)+_0x4a7a46[_0x494282(0x1b5)](quoteShellArg,_0x1af06c)+'\x20'+_0x489c1c+'`\x0a3.\x20Run\x20`'+_0x5ede04+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x11f0b0)+'\x20'+_0x489c1c+_0x494282(0x19c)+_0x5ede04+_0x494282(0x1b9)+_0x5ede04+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x1b7cc6)+'\x20'+_0x489c1c+_0x494282(0x183)+_0x5ede04+_0x494282(0x189)+quoteShellArg(_0x4f6ddb)+'\x20'+_0x489c1c+'`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`'+_0x442e8b+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x39ffe2){const _0x19bd5d=_0x2f8c61,_0x139b41={'aDilY':function(_0x57fc51,_0x220b6b){return _0x57fc51(_0x220b6b);},'rdYqu':function(_0x1c7539,_0xecc6ed,_0x502ca2){return _0x1c7539(_0xecc6ed,_0x502ca2);},'jcUhJ':_0x19bd5d(0x20a),'WNmCM':function(_0x4e0cee,_0x5d48ed){return _0x4e0cee(_0x5d48ed);}},{checklistItem:_0x4e30c7,itemFeedback:_0x256254,taskDescription:_0x3bf21c,novaCommandPrefix:_0x20d7c9,novaSharedOptionsSuffix:_0x2333b4,cliArtifactDir:_0x14f5c3,url:_0x117ccc,loginInstructions:_0x2e166b}=_0x39ffe2,_0x4c5614=_0x4e30c7['notes']?_0x19bd5d(0x186)+_0x4e30c7[_0x19bd5d(0x1db)]:'',_0x1a202f=_0x139b41[_0x19bd5d(0x18f)](buildFeedbackSection,_0x256254),_0x5761a4=_0x256254?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x256254[_0x19bd5d(0x1b8)]:'',_0x363104=_0x2e166b?_0x19bd5d(0x141)+_0x2e166b+_0x19bd5d(0x1fe):'',_0x5acbcd=_0x139b41[_0x19bd5d(0x1e5)](buildCliArtifactPath,_0x14f5c3,_0x19bd5d(0x1cd)),_0x3065e5=buildCliArtifactPath(_0x14f5c3,'01_initial-state.png'),_0x4db4b1=buildCliArtifactPath(_0x14f5c3,'key_03_success-state.png');return _0x19bd5d(0x1ad)+_0x4e30c7[_0x19bd5d(0x19b)]+_0x4c5614+_0x1a202f+_0x5761a4+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x3bf21c+'\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20'+_0x117ccc+_0x19bd5d(0x207)+_0x363104+_0x19bd5d(0x193)+_0x20d7c9+'\x20session\x20create\x20'+quoteShellArg(_0x117ccc)+'\x20'+_0x2333b4+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x14f5c3+_0x19bd5d(0x1e0)+_0x20d7c9+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x5acbcd)+'\x20'+_0x2333b4+_0x19bd5d(0x1df)+_0x20d7c9+_0x19bd5d(0x189)+quoteShellArg(_0x3065e5)+'\x20'+_0x2333b4+'`.\x0a7.\x20Optimize\x20for\x20few\x20browser\x20round\x20trips.\x20Each\x20Nova\x20CLI\x20call\x20has\x20high\x20latency.\x0a8.\x20Use\x203-5\x20high-level\x20`execute`\x20commands\x20total.\x20Each\x20`execute`\x20should\x20contain\x202-5\x20concrete\x20browser\x20steps\x20and\x20should\x20drive\x20to\x20the\x20next\x20milestone\x20page.\x0a9.\x20Do\x20not\x20split\x20a\x20simple\x20navigation\x20into\x20separate\x20commands\x20like\x20\x22open\x20menu\x22,\x20then\x20\x22click\x20link\x22,\x20then\x20\x22screenshot\x22.\x20Batch\x20those\x20into\x20one\x20`execute`\x20when\x20the\x20target\x20is\x20clear.\x0a10.\x20Do\x20not\x20use\x20`ask`\x20unless\x20you\x20are\x20genuinely\x20stuck\x20or\x20need\x20to\x20disambiguate\x20visible\x20page\x20content.\x20Prefer\x20reading\x20the\x20output\x20from\x20`execute`,\x20`snapshot`,\x20and\x20`verify`.\x0a11.\x20Use\x20`verify`\x20only\x20at\x20milestone\x20pages\x20that\x20map\x20directly\x20to\x20scenario\x20requirements.\x20Do\x20not\x20verify\x20after\x20every\x20click.\x0a12.\x20Take\x20screenshots\x20for\x20each\x20scenario\x20milestone\x20so\x20every\x20verified\x20step\x20has\x20reviewable\x20image\x20evidence,\x20including\x20the\x20final\x20state.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page.\x0a13.\x20After\x20the\x20required\x20initial\x20snapshot,\x20do\x20not\x20take\x20separate\x20milestone\x20snapshots\x20unless\x20you\x20cannot\x20understand\x20the\x20page\x20from\x20the\x20`execute`,\x20`verify`,\x20and\x20screenshot\x20outputs.\x0a14.\x20Mark\x20the\x20most\x20important\x20proof\x20screenshot\x20with\x20`key_`,\x20for\x20example\x20`'+_0x4db4b1+'`.\x0a15.\x20As\x20soon\x20as\x20all\x20scenario\x20requirements\x20are\x20satisfied,\x20return\x20structured\x20output\x20immediately.\x20Do\x20not\x20keep\x20exploring,\x20asking,\x20or\x20taking\x20extra\x20screenshots.\x0a16.\x20Treat\x20a\x20Nova\x20`verify`\x20result\x20with\x20`ASSERTION_FAILED`\x20as\x20useful\x20evidence,\x20not\x20as\x20a\x20tool\x20crash.\x20Do\x20not\x20retry\x20the\x20same\x20assertion\x20or\x20search\x20for\x20alternatives\x20unless\x20the\x20scenario\x20explicitly\x20asks\x20you\x20to\x20find\x20any\x20matching\x20page.\x0a17.\x20Stay\x20within\x20the\x20pages\x20and\x20flow\x20named\x20by\x20the\x20scenario.\x20If\x20a\x20required\x20condition\x20is\x20absent\x20after\x20checking\x20the\x20relevant\x20named\x20page\x20once,\x20stop\x20and\x20return\x20\x22partial\x22\x20or\x20\x22failed\x22\x20with\x20the\x20missing\x20requirement.\x20Do\x20not\x20expand\x20into\x20unrelated\x20pages\x20or\x20broad\x20site\x20searches.\x0a18.\x20After\x20you\x20reach\x20and\x20screenshot\x20the\x20final\x20named\x20scenario\x20page,\x20do\x20not\x20execute\x20more\x20browser\x20commands.\x20Evaluate\x20any\x20\x22at\x20least\x20one\x20visited\x20page\x22\x20requirement\x20from\x20the\x20pages\x20already\x20visited\x20and\x20the\x20evidence\x20already\x20collected.\x0a19.\x20Do\x20not\x20run\x20`session\x20close`,\x20`session\x20list`,\x20`session\x20export`,\x20`script`,\x20`doctor`,\x20`--help`,\x20`aws`,\x20`find`,\x20`grep`,\x20`env`,\x20`printenv`,\x20package\x20managers,\x20or\x20setup\x20commands.\x20The\x20host\x20owns\x20setup,\x20auth,\x20session\x20cleanup,\x20and\x20artifact\x20export.\x0a20.\x20The\x20host\x20also\x20captures\x20final\x20screenshots,\x20snapshots,\x20and\x20exports\x20after\x20you\x20finish,\x20but\x20every\x20scenario\x20milestone\x20still\x20needs\x20an\x20accessible\x20screenshot.\x20If\x20the\x20last\x20milestone\x20is\x20the\x20final\x20browser\x20state\x20and\x20you\x20have\x20already\x20captured\x20it,\x20you\x20do\x20not\x20need\x20a\x20duplicate\x20final\x20screenshot.\x0a21.\x20Do\x20not\x20close\x20the\x20Nova\x20session.\x20The\x20host\x20exports\x20artifacts\x20after\x20you\x20finish.\x0a22.\x20The\x20structured\x20output\x20is\x20your\x20final\x20response.\x20After\x20returning\x20it,\x20do\x20not\x20write\x20a\x20separate\x20markdown\x20summary\x20or\x20repeat\x20the\x20findings.\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Nova\x20Act\x20CLI\x20commands\x20with\x20this\x20prefix:\x0a`'+_0x20d7c9+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0x2333b4['trim']()?'`'+_0x2333b4+'`':_0x139b41['jcUhJ'])+'\x0a\x0a'+_0x139b41['WNmCM'](buildNovaSharedOptionsInstruction,_0x2333b4)+'\x0a\x0aExamples:\x0a-\x20`'+_0x20d7c9+'\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20'+_0x2333b4+_0x19bd5d(0x1a0)+_0x20d7c9+'\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20'+_0x2333b4+'`\x0a-\x20`'+_0x20d7c9+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x5acbcd)+'\x20'+_0x2333b4+'`\x0a-\x20`'+_0x20d7c9+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x4db4b1)+'\x20'+_0x2333b4+'`\x0a\x0a##\x20Screenshot\x20Guidelines\x0aTake\x20screenshots\x20at\x20scenario\x20milestones\x20so\x20a\x20human\x20can\x20review\x20each\x20completed\x20step\x20and\x20the\x20final\x20state.\x20Use\x20numbered\x20filenames\x20and\x20prefix\x201-2\x20key\x20proof\x20screenshots\x20with\x20`key_`.\x20Avoid\x20duplicate\x20screenshots\x20of\x20the\x20same\x20unchanged\x20page\x20when\x20an\x20existing\x20verifier\x20screenshot\x20or\x20host\x20final\x20screenshot\x20is\x20accessible.\x0a\x0a##\x20Snapshot\x20Guidelines\x0aYou\x20must\x20take\x20the\x20initial\x20snapshot\x20listed\x20above.\x20After\x20that,\x20prefer\x20screenshots\x20plus\x20the\x20page\x20summaries\x20returned\x20by\x20`execute`\x20and\x20`verify`.\x20Only\x20call\x20`snapshot`\x20again\x20if\x20you\x20cannot\x20determine\x20the\x20next\x20action\x20or\x20evaluation\x20from\x20those\x20outputs.\x0a\x0a##\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20initial\x20snapshot\x20and\x20screenshot,\x20check\x20for\x20blocking\x20HTTP\x20errors,\x20framework\x20error\x20pages,\x20blank\x20pages,\x20and\x20authentication\x20failures.\x20If\x20any\x20blocking\x20issue\x20is\x20present,\x20stop\x20and\x20return\x20evaluation\x20\x22blocked\x22\x20with\x20a\x20specific\x20reason.\x0a\x0a##\x20Failed\x20Assertions\x0aIf\x20`verify`\x20returns\x20`ASSERTION_FAILED`,\x20use\x20its\x20`actual`\x20and\x20`evidence`\x20fields\x20as\x20proof\x20for\x20the\x20final\x20evaluation.\x20Continue\x20only\x20to\x20finish\x20other\x20already-named\x20scenario\x20milestones.\x20Do\x20not\x20retry,\x20ask\x20about,\x20or\x20search\x20around\x20the\x20failed\x20condition.\x0a\x0a##\x20Final\x20Page\x20Stop\x0aWhen\x20the\x20scenario\x20names\x20a\x20final\x20page\x20or\x20final\x20navigation\x20target,\x20that\x20page\x20is\x20the\x20last\x20browser\x20milestone.\x20Once\x20it\x20is\x20loaded\x20and\x20screenshotted,\x20make\x20the\x20final\x20evaluation\x20from\x20the\x20collected\x20evidence.\x20Do\x20not\x20navigate,\x20search,\x20ask,\x20or\x20verify\x20beyond\x20that\x20final\x20page\x20unless\x20the\x20scenario\x20explicitly\x20names\x20another\x20page.\x0a\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20of\x20the\x20scenario\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x9ce796){const _0x4d9ed4=_0x2f8c61,_0xe91f95=[..._0x9ce796[_0x4d9ed4(0x160)]()][_0x4d9ed4(0x1a4)]();let _0x22ad40=0x0;for(const _0x5b5951 of _0x9ce796[_0x4d9ed4(0x167)]()){_0x22ad40+=_0x5b5951;}return{'cliCommandCount':_0x22ad40,'cliCommandsSeen':_0xe91f95,'noCliCommandsCalled':_0x22ad40===0x0};}export function createVerifyFeatureNovaCliHooks(_0x2423c4,_0x255cbd){const _0x4de900=_0x2f8c61,_0x381b00={'uZpbd':function(_0x3da21f,_0x30eb0a){return _0x3da21f!==_0x30eb0a;},'WKwNK':'Bash','IUsQp':function(_0x16a5d9,_0x1ead0c){return _0x16a5d9(_0x1ead0c);},'pRWmP':_0x4de900(0x205),'Kndmb':function(_0x1d53dd,_0x33db05){return _0x1d53dd!==_0x33db05;},'MWCGi':'PostToolUse','zpzlz':function(_0xab2754,_0x134563){return _0xab2754!==_0x134563;},'paEMY':function(_0x2566e4,_0x4a54a6){return _0x2566e4+_0x4a54a6;},'VwSiA':_0x4de900(0x16a),'aEXLu':function(_0x574b3b,_0x3c5e5a,_0x19bb72){return _0x574b3b(_0x3c5e5a,_0x19bb72);},'UNXeS':_0x4de900(0x163),'QAjRW':'nova-act-cli'},_0x2671fa=new Map(),_0x47e1f8=async _0xb0bc8a=>{const _0x4fb0a6=_0x4de900;if(_0x381b00['uZpbd'](_0xb0bc8a['hook_event_name'],_0x4fb0a6(0x1bf)))return{};const _0x21f277=_0xb0bc8a;if(_0x21f277['tool_name']!==_0x381b00[_0x4fb0a6(0x187)])return{};const _0x3708cb=_0x21f277[_0x4fb0a6(0x1a8)],_0x39a902=_0x381b00[_0x4fb0a6(0x1e2)](extractBashCommand,_0x3708cb);if(!_0x39a902)return{};const _0x30f4e4=getNovaActCliCommandBlockReason(_0x39a902);if(!_0x30f4e4)return{};return{'decision':_0x381b00[_0x4fb0a6(0x1bb)],'reason':_0x30f4e4};},_0x329c3c=async _0x542fca=>{const _0x2ed30f=_0x4de900;if(_0x381b00['Kndmb'](_0x542fca[_0x2ed30f(0x1f4)],_0x381b00[_0x2ed30f(0x1c3)]))return{};const _0x2c8cbf=_0x542fca;if(_0x381b00[_0x2ed30f(0x144)](_0x2c8cbf['tool_name'],'Bash'))return{};const _0x2c325e=_0x2c8cbf['tool_input'],_0x204bcd=extractBashCommand(_0x2c325e);if(!_0x204bcd)return{};const _0x225d34=parseNovaActCliCommand(_0x204bcd);if(!_0x225d34)return{};_0x2671fa[_0x2ed30f(0x1cc)](_0x225d34,_0x381b00['paEMY'](_0x2671fa['get'](_0x225d34)||0x0,0x1)),_0x2423c4[_0x2ed30f(0x13e)](_0x381b00[_0x2ed30f(0x13c)],{'subcommand':_0x225d34}),_0x2423c4[_0x2ed30f(0x185)](_0x381b00[_0x2ed30f(0x13c)],{'subcommand':_0x225d34,'commandPreview':_0x381b00['IUsQp'](previewNovaActCliCommand,_0x204bcd)}),console['log'](_0x2ed30f(0x1bd)+_0x381b00['aEXLu'](formatNovaActCliLog,_0x204bcd,_0x225d34));if(_0x225d34===_0x2ed30f(0x1be)&&_0x255cbd)try{await _0x255cbd[_0x2ed30f(0x180)]();}catch(_0xb704f5){await _0x2423c4['trackPhaseError'](_0x2ed30f(0x1ec),_0xb704f5,{'transport':_0x2ed30f(0x19e)});}return{};},_0x28506d=async _0x57d1b9=>{const _0x3aa2c5=_0x4de900;if(_0x57d1b9[_0x3aa2c5(0x1f4)]!==_0x3aa2c5(0x1de))return{};const _0x1de47a=_0x57d1b9;if(_0x381b00[_0x3aa2c5(0x204)](_0x1de47a['tool_name'],_0x381b00[_0x3aa2c5(0x187)]))return{};return await _0x2423c4[_0x3aa2c5(0x1c5)](_0x381b00['UNXeS'],_0x1de47a[_0x3aa2c5(0x151)],{'transport':_0x381b00[_0x3aa2c5(0x18d)],'toolName':_0x3aa2c5(0x1c7)}),{};};return{'preToolUseHook':_0x47e1f8,'postToolUseHook':_0x329c3c,'postToolUseFailureHook':_0x28506d,'commandCounts':_0x2671fa};}async function runNovaLifecycleCommand(_0x50cac9){const _0x15fe2c=_0x2f8c61,_0xa557e0={'vgctj':function(_0x15dc55,_0x3b4b6d){return _0x15dc55(_0x3b4b6d);},'Crhuv':function(_0x3a0ade,_0x4c3aad){return _0x3a0ade??_0x4c3aad;}},{novaOptions:_0x13dbeb,commandArgs:_0x4de418,telemetry:_0x1e0542,phase:_0x591df2,metadata:_0x27e941,timeoutMs:_0xc78cf5}=_0x50cac9;_0x1e0542['trackPhaseStart'](_0x591df2,_0x27e941);try{const _0xd7325e=await _0xa557e0['vgctj'](runNovaActCliCommand,{..._0x13dbeb,'commandArgs':_0x4de418,'cwd':process[_0x15fe2c(0x199)](),'env':process['env'],'timeoutMs':_0xa557e0['Crhuv'](_0xc78cf5,NOVA_ACT_CLI_COMMAND_TIMEOUT_MS)});_0x1e0542[_0x15fe2c(0x185)](_0x591df2,{..._0x27e941,'subcommand':_0xd7325e['invocation']['subcommand'],'commandPreview':previewNovaActCliCommand(_0xd7325e[_0x15fe2c(0x1ae)]['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0xd7325e['stdout']),'stderrPreview':_0xa557e0['vgctj'](previewNovaActCliCommand,_0xd7325e[_0x15fe2c(0x1e1)]),'logDir':_0xa557e0[_0x15fe2c(0x142)](extractNovaActLogDir,_0xd7325e[_0x15fe2c(0x13d)])});}catch(_0x1a06e1){await _0x1e0542[_0x15fe2c(0x1c5)](_0x591df2,_0x1a06e1,_0x27e941);throw _0x1a06e1;}}export async function finalizeVerifyFeatureNovaCliSession(_0x2425c7){const _0x9482e3=_0x2f8c61,_0x33c773={'lErkJ':_0x9482e3(0x15f),'NwHnp':_0x9482e3(0x182),'paPig':function(_0x12fff8,_0x486c8e,_0x50060b){return _0x12fff8(_0x486c8e,_0x50060b);},'gmYwc':'snapshot','aMVxn':'nova_act_session_export','AQcNk':_0x9482e3(0x146),'ifNqi':_0x9482e3(0x15d),'HujEh':_0x9482e3(0x184),'jkGti':_0x9482e3(0x1e4),'wwCBc':_0x9482e3(0x215),'QiYWc':'nova-report','YlLQs':_0x9482e3(0x147),'TuHwX':function(_0x12d8e7,_0x8d507e){return _0x12d8e7===_0x8d507e;},'srLYJ':'nova_act_session_close','arJKI':function(_0x151ec4,_0x433d88){return _0x151ec4(_0x433d88);}},{telemetry:_0x3aaa72,novaOptions:_0x2de9d4,cliArtifactDir:_0x3d89d6,transportMetadata:_0x4ddf20,artifactRecorder:_0x2ccebb}=_0x2425c7,_0x574860=[{'phase':_0x33c773['lErkJ'],'commandArgs':['screenshot',_0x33c773[_0x9482e3(0x198)],_0x33c773['paPig'](buildCliArtifactPath,_0x3d89d6,'key_final-state.png')]},{'phase':_0x9482e3(0x17b),'commandArgs':[_0x33c773['gmYwc'],_0x33c773['NwHnp'],buildCliArtifactPath(_0x3d89d6,_0x9482e3(0x1b3))]},{'phase':_0x33c773[_0x9482e3(0x1c6)],'commandArgs':[_0x33c773['AQcNk'],'export',_0x33c773['ifNqi'],'json',_0x33c773[_0x9482e3(0x198)],buildCliArtifactPath(_0x3d89d6,_0x33c773['HujEh'])]},{'phase':_0x33c773['jkGti'],'commandArgs':[_0x33c773[_0x9482e3(0x137)],_0x33c773[_0x9482e3(0x1f1)],_0x9482e3(0x15c),_0x9482e3(0x13a),buildCliArtifactPath(_0x3d89d6,_0x33c773['QiYWc'])]},{'phase':_0x9482e3(0x153),'commandArgs':[_0x33c773[_0x9482e3(0x137)],_0x33c773[_0x9482e3(0x15e)]]}];for(const _0x667367 of _0x574860){_0x33c773[_0x9482e3(0x15a)](_0x667367[_0x9482e3(0x1e8)],_0x33c773['srLYJ'])&&await _0x2ccebb?.['stop']();try{await _0x33c773['arJKI'](runNovaLifecycleCommand,{'novaOptions':_0x2de9d4,'commandArgs':[..._0x667367[_0x9482e3(0x13f)]],'telemetry':_0x3aaa72,'phase':_0x667367[_0x9482e3(0x1e8)],'metadata':_0x4ddf20});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x38154b){const _0x40e824=_0x2f8c61,_0x110b68={'jUfVr':function(_0x38c4db,_0x506d2f,_0x1418df){return _0x38c4db(_0x506d2f,_0x1418df);},'MEKus':function(_0x5decba,_0x4922c2){return _0x5decba(_0x4922c2);},'SbSGM':function(_0x22f48b,_0x7b9d63){return _0x22f48b<_0x7b9d63;},'PYbhK':function(_0x4b5952,_0x644ecd){return _0x4b5952===_0x644ecd;}},{cwd:_0x3f3d0a,cliArtifactDir:_0x43c681,startTime:_0x1decb1}=_0x38154b,_0x3d7d4d=[];await _0x110b68['jUfVr'](mkdir,_0x43c681,{'recursive':!![]});const _0x48d6da=await readdir(_0x3f3d0a,{'withFileTypes':!![]});for(const _0x211fb6 of _0x48d6da){if(!_0x211fb6['isFile']()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN['test'](_0x211fb6['name']))continue;const _0x41a96b=_0x110b68[_0x40e824(0x19a)](join,_0x3f3d0a,_0x211fb6[_0x40e824(0x1af)]),_0x231576=await _0x110b68['MEKus'](stat,_0x41a96b);if(_0x110b68[_0x40e824(0x19d)](_0x231576['mtimeMs']+0x7d0,_0x1decb1))continue;const _0x16f14a=_0x110b68[_0x40e824(0x19a)](buildCliArtifactPath,_0x43c681,_0x211fb6['name']);if(_0x110b68[_0x40e824(0x136)](_0x41a96b,_0x16f14a))continue;await _0x110b68[_0x40e824(0x19a)](rename,_0x41a96b,_0x16f14a),_0x3d7d4d[_0x40e824(0x197)](_0x211fb6['name']);}return _0x3d7d4d['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x522384){const _0x2b5162=_0x2f8c61,_0x1b4503={'dIDao':function(_0x5da905,_0x52fcff,_0x1f7584){return _0x5da905(_0x52fcff,_0x1f7584);},'GcWgP':function(_0x226027,_0xfc0e5e){return _0x226027(_0xfc0e5e);},'IxqWs':function(_0xf79b28,_0x10665e){return _0xf79b28(_0x10665e);}},_0x1b7b51=_0x1b4503[_0x2b5162(0x210)](join,_0x522384,'trace.zip');try{return{'buffer':await _0x1b4503[_0x2b5162(0x194)](readFile,_0x1b7b51),'source':_0x1b7b51};}catch{return{'buffer':await _0x1b4503[_0x2b5162(0x1a7)](zipVerifyFeatureNovaArtifacts,_0x522384),'source':_0x522384};}}async function zipVerifyFeatureNovaArtifacts(_0x523433){const _0x5559b6=_0x2f8c61,_0x357639={'kOkXy':'nova-artifacts.zip','CVqyD':'zip','WRBRA':_0x5559b6(0x1bc),'gZEAP':_0x5559b6(0x1a6),'Abfuh':function(_0x5be911,_0x247911,_0x2949a0){return _0x5be911(_0x247911,_0x2949a0);}},_0x49d301=join(_0x523433,'..',_0x357639[_0x5559b6(0x1d2)]);try{return await execFileAsync(_0x357639[_0x5559b6(0x1eb)],[_0x357639['WRBRA'],_0x49d301,'.','-x',_0x357639[_0x5559b6(0x14d)]],{'cwd':_0x523433}),await readFile(_0x49d301);}finally{await _0x357639['Abfuh'](rm,_0x49d301,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x3a6215){const _0x329a5c=_0x2f8c61,_0x2ffbe8={'QXbzH':function(_0x1c8280,_0x53446a,_0x27244e){return _0x1c8280(_0x53446a,_0x27244e);},'rrvcx':function(_0x3a34d0,_0x2a5b50,_0x51e7bf){return _0x3a34d0(_0x2a5b50,_0x51e7bf);}},_0xb77cdd=_0x2ffbe8['QXbzH'](buildNovaActCliInvocation,_0x3a6215[_0x329a5c(0x14c)],_0x3a6215[_0x329a5c(0x13f)]);return{'command':_0xb77cdd['command'],'args':_0xb77cdd[_0x329a5c(0x20c)],'commandPreview':previewNovaActCliCommand(_0xb77cdd[_0x329a5c(0x145)]),'subcommand':_0xb77cdd[_0x329a5c(0x209)],'sharedOptionsSuffix':_0x2ffbe8[_0x329a5c(0x13b)](buildNovaActCliSharedOptionsSuffix,_0x3a6215['novaOptions'],_0x3a6215[_0x329a5c(0x13f)])};}function _0x49fe(){const _0x188bd4=['**\x20(','content','stopScreencast','values','map','execute\x20Nova\x20browser\x20action','nova_act_command','startScreencast','element','sessionId','cdp_endpoint','\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20in\x20addressedCommentIds.\x0a\x0a','\x20snapshot\x20--output\x20','OAKtU','browser','padStart','startTraceSampling','bMKjc','finally','execute','connectOverCDP','Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','traceSampleCount','nova_act_final_snapshot','.cache','QjIcU','navigate\x20browser','xiQpK','start','capture\x20step\x20`','--output','`\x0a6.\x20Run\x20`','nova-session-export.json','trackPhaseEnd','\x0a\x0a##\x20Additional\x20Notes\x0a','WKwNK','transportMetadata','\x20screenshot\x20--output\x20','98wVluJw','KAMRK','5259774CSyCKd','QAjRW','contexts','aDilY','Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context','session\x20export','catch','\x0a\x0a##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Nova\x20Act\x20CLI\x20only.\x20Do\x20not\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20The\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20through\x20the\x20browser\x20command\x20prefix\x20below.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20check\x20AWS/auth\x20status,\x20read\x20env\x20files,\x20run\x20setup,\x20or\x20call\x20raw\x20`act\x20browser`.\x0a3.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20`','GcWgP','123UDOLAP','-\x20[','push','NwHnp','cwd','jUfVr','description','`\x0a4.\x20Run\x20one\x20batched\x20`','SbSGM','nova-act-cli','ask','`\x0a-\x20`','TWKYK','en-US','KFOCt','sort','\x0a\x0aThe\x20act\x20CLI\x20is\x20already\x20installed\x20and\x20available\x20on\x20PATH.\x20Do\x20not\x20search\x20the\x20filesystem\x20for\x20Nova,\x20install\x20packages,\x20inspect\x20docs,\x20or\x20run\x20setup.\x20Your\x20first\x20Bash\x20command\x20must\x20be\x20the\x20session\x20create\x20command\x20below.\x0a\x0a1.\x20Run\x20`','nova-user-data/*','IxqWs','tool_input','-loglevel','startAttempted','traceSampleInFlight','data','You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a','invocation','name','tagName','Page.screencastFrameAck','queueTraceSample','final-state.yaml','wait-for','bNwnv','hcwoX','encodeScreencastVideo','canonicalFlow','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','stop','pRWmP','-qr','[nova-act-cli]\x20','session\x20create','PreToolUse','has','FVWGT','utf-8','MWCGi','ISuDz','trackPhaseError','aMVxn','Bash','from','capture\x20key\x20step\x20`','zKhhi','frameCount','set','01_initial.yml','trim','capture\x20snapshot','slice','oEaZw','kOkXy','telemetry','captureTraceSample','607176HvJinz','SmSQv','frameSession','replace','now','send','notes','state','DlGED','PostToolUseFailure','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','stderr','IUsQp','\x20>\x20','nova_act_session_report','rdYqu','session-recording.webm','frameWrites','phase','WFBCN','ffmpeg-','CVqyD','nova_act_artifact_recording','ZVbut','02_final-state.yml','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','4571832YaQdNt','wwCBc','stopped','numeric','hook_event_name','100175mDhuwO','screencastStarted','Caches','trace.zip','LkKOc','getFrameDir','HUueC','snapshot','toLocaleDateString','\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','.act_cli','ffmpeg-mac','AaNyt','base64','tracingStarted','Kndmb','block','length','\x0a-\x20You\x20may\x20ONLY\x20navigate\x20to\x20paths\x20under\x20this\x20base\x20URL\x27s\x20origin.\x0a-\x20Do\x20not\x20navigate\x20to\x20any\x20different\x20protocol,\x20host,\x20or\x20port.\x0a-\x20If\x20the\x20browser\x20leaves\x20this\x20origin,\x20navigate\x20back\x20once.\x20If\x20you\x20cannot\x20recover,\x20return\x20evaluation\x20\x22blocked\x22.\x0a','Library','subcommand','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','-version','args','ms-playwright','ffmpeg','params','dIDao','cliArtifactDir','uYpzW','libvpx-vp9','newCDPSession','export','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','fniDA','then','unaddressedComments','BqGNk','screenshot','9004WEzBbB','PYbhK','AQcNk','03_final-state.png','tracing','--output-dir','rrvcx','VwSiA','stdout','trackPhaseStart','commandArgs','create\x20Nova\x20browser\x20session','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','vgctj','traceSampleTimer','zpzlz','shellCommand','session','close','01_initial-state.png','20867418piuUnU','.jpg','mlLUp','novaOptions','gZEAP','verify','export\x20Nova\x20session','-vf','error','evaluate','nova_act_session_close','RRbbM','short','goto','videos','createdAt','context','TuHwX','PnMmM','--report','--format','YlLQs','nova_act_final_screenshot','keys','xnNmC','588405poGJqy','nova_act_command_failure'];_0x49fe=function(){return _0x188bd4;};return _0x49fe();}
|
|
1
|
+
const _0x3bf4d7=_0x13ae;(function(_0x119f2e,_0xb9adbd){const _0x10d715=_0x13ae,_0xfe3a5f=_0x119f2e();while(!![]){try{const _0x57cf6c=parseInt(_0x10d715(0x256))/0x1*(-parseInt(_0x10d715(0x1a4))/0x2)+parseInt(_0x10d715(0x205))/0x3*(-parseInt(_0x10d715(0x260))/0x4)+-parseInt(_0x10d715(0x218))/0x5+-parseInt(_0x10d715(0x21f))/0x6*(parseInt(_0x10d715(0x212))/0x7)+parseInt(_0x10d715(0x243))/0x8+-parseInt(_0x10d715(0x200))/0x9+parseInt(_0x10d715(0x24b))/0xa*(parseInt(_0x10d715(0x1a5))/0xb);if(_0x57cf6c===_0xb9adbd)break;else _0xfe3a5f['push'](_0xfe3a5f['shift']());}catch(_0x45f652){_0xfe3a5f['push'](_0xfe3a5f['shift']());}}}(_0x2435,0x354c7));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',_0x3bf4d7(0x1d4),_0x3bf4d7(0x199),_0x3bf4d7(0x1fd),'wait-for','snapshot','screenshot']),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x3ba218,_0x14c30b){const _0x47f9c3=_0x3bf4d7,_0x39096a={'wktqb':function(_0x2ab875,_0x5d0e09,_0x2a7be1){return _0x2ab875(_0x5d0e09,_0x2a7be1);}};return _0x39096a[_0x47f9c3(0x198)](join,_0x3ba218,_0x14c30b);}function _0x2435(){const _0x1868b4=['EZuBp','2643UjBNaZ','getFrameDir','close','locator','state','vCHAh','PHDlK','replace','FxWJY','nova-user-data/*','8blwsrX','-loglevel','TZbNk','join','--report','send','.json','test','stopScreencast','`\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.','domRef','sessionId','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','startAttempted','frameCount','wfgiV','contexts','phase','nova_act_artifact_recording','TXiLB','tracingStarted','ioAaX','catch','cwd','transportMetadata','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.','wktqb','ask','name','\x0a\x0aExamples:\x0a-\x20`','authorEmail','ffmpeg-linux','Page.screencastFrameAck','wWJJJ','utf-8','CIESL','browser_pid','JfhaB','30cHsyHA','33CHXDyF','tool_name','session\x20create','WnLMe','PYVmE','toLocaleDateString','GfRYt','shNZJ','XDJXE','FyrqQ','evaluate','session','\x20session\x20create\x20','-framerate','Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.','occQA','invocation','navigate\x20browser','trace.zip','capture\x20snapshot\x20`','jLmJt','stopped','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','zqjbf','error','eWMRL','wLzOX','eaxKL','`\x0a-\x20`','-c:v','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','GzPMH','pop','01_initial-state.png','browser','`.\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`','PostToolUse','YbwcL','nova_act_command','UNYzw','ms-playwright','`\x0a4.\x20Run\x20one\x20batched\x20`','dXbxC','mgGZt','Tcptn','frameSession','execute\x20Nova\x20browser\x20action','verify','vQUAN','02_final-state.yml','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','RkVqV','\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','hook_event_name','traceSampleInFlight','tracing','cliArtifactDir','trim','reverse','Brsng','libvpx-vp9','00_initial-state.yml','ask\x20page\x20question','stopTraceSampling','captureTraceSample','capture\x20screenshot','HbBpt','\x20snapshot\x20--output\x20','now','key_final-state.png','screencastStarted','Caches','context','split','capture\x20key\x20step\x20`','-vf','stderr','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','match','Page.screencastFrame','nova_act_artifact_recording_stop','start','capture\x20snapshot','SeuZA','TEGeS','novaOptions','sort','Bash','goto','--output','`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','1713582QPEWyP','trackPhaseEnd','UNxbY','jwfPD','json','475899OqNsWi','frameWrites','description','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','\x20screenshot\x20--output\x20','TeNNX','wait-for','SXOqD','-pix_fmt','uIqFD','nova-artifacts.zip','traceSampleCount','pufrM','703143feqaGK','fpUyc','telemetry','block','VQagz','Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a','730840LYcAHy','export','capture\x20step\x20`','YePhW','subcommand','aMlLy','connectOverCDP','6xGSfCE','zip','TCwFQ','nova-report','nova-session-export.json','encodeScreencastVideo','commandArgs','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','cKrYu','nova_act_final_screenshot','KtoZQ','trackPhaseStart','params','short','pages','canonicalFlow','createdAt','data','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','notes','nova_act_final_snapshot','en-US','stdout','tool_input','edZDj','content','stop','VEoDs','padStart','frame-','screenshot','bhUkW','snapshot','tcXqG','unaddressedComments','-version','862352SAKjby','bsykY','\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`','queueTraceSample','mmYOY','push','startScreencast','PostToolUseFailure','3014810DBjpSp','cUGdy','.act_cli','Lgppe','map','jpeg','trackPhaseError','PreToolUse','Page.startScreencast','cdp_endpoint'];_0x2435=function(){return _0x1868b4;};return _0x2435();}export class NovaActArtifactRecorder{['params'];['browser']=null;['context']=null;[_0x3bf4d7(0x1d2)]=null;[_0x3bf4d7(0x206)]=[];[_0x3bf4d7(0x18c)]=0x0;[_0x3bf4d7(0x210)]=0x0;['traceSampleTimer']=null;['traceSampleInFlight']=null;[_0x3bf4d7(0x192)]=![];['screencastStarted']=![];['startAttempted']=![];['stopped']=![];constructor(_0x34ca6e){const _0x996dac=_0x3bf4d7;this[_0x996dac(0x22b)]=_0x34ca6e;}async['start'](){const _0x125aeb=_0x3bf4d7,_0x5d3742={'vQUAN':function(_0x263063,_0x3a8493,_0x321781){return _0x263063(_0x3a8493,_0x321781);},'AIxUm':_0x125aeb(0x190)};if(this['startAttempted'])return;this[_0x125aeb(0x18b)]=!![];const _0x56fde7=await this['readSessionMetadataWithRetry'](),_0x1c5e68=_0x56fde7[_0x125aeb(0x254)];if(!_0x1c5e68)throw new Error('Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20'+this['params'][_0x125aeb(0x1fa)][_0x125aeb(0x189)]);await _0x5d3742[_0x125aeb(0x1d5)](mkdir,this['params']['cliArtifactDir'],{'recursive':!![]}),this[_0x125aeb(0x1c7)]=await chromium[_0x125aeb(0x21e)](_0x1c5e68,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this['context']=this[_0x125aeb(0x1c7)][_0x125aeb(0x18e)]()[0x0]??null;if(!this['context'])throw new Error('Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context');await this[_0x125aeb(0x1ed)]['tracing']['start']({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this['startTraceSampling'](),await this['startScreencast'](),this['params'][_0x125aeb(0x214)][_0x125aeb(0x22a)]('nova_act_artifact_recording',{...this[_0x125aeb(0x22b)][_0x125aeb(0x196)],'cdpEndpoint':_0x1c5e68,'browserPid':_0x56fde7[_0x125aeb(0x1a2)],'sessionState':_0x56fde7[_0x125aeb(0x25a)]}),this[_0x125aeb(0x22b)][_0x125aeb(0x214)][_0x125aeb(0x201)](_0x5d3742['AIxUm'],{...this[_0x125aeb(0x22b)][_0x125aeb(0x196)],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x125aeb(0x1eb)]});}async[_0x3bf4d7(0x239)](){const _0x3a482a=_0x3bf4d7,_0x5a81a8={'vswDX':function(_0x3516fc,_0x4a37ad,_0x3e18bf){return _0x3516fc(_0x4a37ad,_0x3e18bf);},'edZDj':_0x3a482a(0x1b7),'wWJJJ':_0x3a482a(0x1f5)};if(this[_0x3a482a(0x1ba)])return;this[_0x3a482a(0x1ba)]=!![];const _0x2e9f7a={...this['params'][_0x3a482a(0x196)],'frameCount':this['frameCount'],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this['tracingStarted'],'screencastStarted':this['screencastStarted']};this[_0x3a482a(0x22b)][_0x3a482a(0x214)]['trackPhaseStart'](_0x3a482a(0x1f5),_0x2e9f7a);try{await this[_0x3a482a(0x1e4)](),await this['captureTraceSample'](),await this[_0x3a482a(0x186)](),await Promise['allSettled'](this['frameWrites']);this[_0x3a482a(0x1ed)]&&this[_0x3a482a(0x192)]&&await this[_0x3a482a(0x1ed)][_0x3a482a(0x1dc)]['stop']({'path':_0x5a81a8['vswDX'](buildCliArtifactPath,this['params'][_0x3a482a(0x1dd)],_0x5a81a8[_0x3a482a(0x237)])});const _0xd0a9e7=await this[_0x3a482a(0x224)]();this[_0x3a482a(0x22b)]['telemetry']['trackPhaseEnd'](_0x5a81a8[_0x3a482a(0x19f)],{..._0x2e9f7a,'videoPath':_0xd0a9e7});}catch(_0x4f028a){await this['params'][_0x3a482a(0x214)][_0x3a482a(0x251)](_0x3a482a(0x1f5),_0x4f028a,_0x2e9f7a);}finally{await this['browser']?.[_0x3a482a(0x258)]()['catch'](()=>undefined),this['browser']=null,this[_0x3a482a(0x1ed)]=null,this[_0x3a482a(0x1d2)]=null;}}async['readSessionMetadataWithRetry'](){const _0x35c903=_0x3bf4d7,_0x918ec2={'PoIvT':function(_0x1cf023,_0x598b64,_0x46b90a,_0x2c30e1,_0x34ced3,_0x38dc50){return _0x1cf023(_0x598b64,_0x46b90a,_0x2c30e1,_0x34ced3,_0x38dc50);},'GzPMH':function(_0x26ad63){return _0x26ad63();},'TEGeS':_0x35c903(0x24d),'WnLMe':'sessions','TxdFV':function(_0x39e314,_0x4f2b0f,_0x4aeaf0){return _0x39e314(_0x4f2b0f,_0x4aeaf0);},'ioAaX':_0x35c903(0x1a0),'qYFoI':function(_0xb8bab3,_0x487558){return _0xb8bab3(_0x487558);},'Tcptn':function(_0x5aeacf,_0x343b7){return _0x5aeacf<_0x343b7;},'TCwFQ':function(_0x2455d8,_0x1823b3){return _0x2455d8-_0x1823b3;}},_0x521da5=_0x918ec2['PoIvT'](join,_0x918ec2[_0x35c903(0x1c4)](homedir),_0x918ec2[_0x35c903(0x1f9)],_0x35c903(0x1c7),_0x918ec2[_0x35c903(0x1a8)],this['params']['novaOptions']['sessionId']+_0x35c903(0x184)),_0xfa8287=Date['now']();let _0x186061;do{try{const _0xa73181=JSON['parse'](await _0x918ec2['TxdFV'](readFile,_0x521da5,_0x918ec2[_0x35c903(0x193)]));if(_0xa73181[_0x35c903(0x254)])return _0xa73181;_0x186061=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0x521da5);}catch(_0x302895){_0x186061=_0x302895;}await _0x918ec2['qYFoI'](delay,0x64);}while(_0x918ec2[_0x35c903(0x1d1)](_0x918ec2[_0x35c903(0x221)](Date[_0x35c903(0x1e9)](),_0xfa8287),NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x186061 instanceof Error)throw _0x186061;throw new Error(_0x35c903(0x18a)+_0x521da5);}async[_0x3bf4d7(0x249)](){const _0x188a6c=_0x3bf4d7,_0xc9487f={'mmYOY':function(_0x2d0f0d,_0x17ab32){return _0x2d0f0d(_0x17ab32);},'uijYb':_0x188a6c(0x253)};if(!this[_0x188a6c(0x1ed)])return;const _0x29fa2b=this['context'][_0x188a6c(0x22d)]()[0x0];if(!_0x29fa2b)return;const _0x26b387=this['getFrameDir']();await mkdir(_0x26b387,{'recursive':!![]});const _0x1dbb70=await this['context']['newCDPSession'](_0x29fa2b);this[_0x188a6c(0x1d2)]=_0x1dbb70,_0x1dbb70['on'](_0x188a6c(0x1f4),_0xaf7b18=>{const _0xaa0d9a=_0x188a6c,_0x4306e4=++this['frameCount'],_0x20836d=join(_0x26b387,_0xaa0d9a(0x23c)+_0xc9487f[_0xaa0d9a(0x247)](String,_0x4306e4)[_0xaa0d9a(0x23b)](0x6,'0')+'.jpg'),_0x1dbaf4=writeFile(_0x20836d,Buffer['from'](_0xaf7b18[_0xaa0d9a(0x230)],'base64'))['catch'](()=>undefined)['finally'](()=>_0x1dbb70['send'](_0xaa0d9a(0x19e),{'sessionId':_0xaf7b18['sessionId']}))['then'](()=>undefined)[_0xaa0d9a(0x194)](()=>undefined);this[_0xaa0d9a(0x206)][_0xaa0d9a(0x248)](_0x1dbaf4);}),await _0x1dbb70['send'](_0xc9487f['uijYb'],{'format':_0x188a6c(0x250),'quality':0x4b,'everyNthFrame':0x6}),this[_0x188a6c(0x1eb)]=!![];}async['stopScreencast'](){const _0x1b47b5=_0x3bf4d7,_0x1cfe90={'EbmoN':'Page.stopScreencast'};if(!this['frameSession']||!this['screencastStarted'])return;await this['frameSession'][_0x1b47b5(0x183)](_0x1cfe90['EbmoN'])[_0x1b47b5(0x194)](()=>undefined);}['startTraceSampling'](){const _0x20f76a=_0x3bf4d7;this[_0x20f76a(0x246)](),this['traceSampleTimer']=setInterval(()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x3bf4d7(0x246)](){const _0x571cdf=_0x3bf4d7;if(this[_0x571cdf(0x1db)])return;this[_0x571cdf(0x1db)]=this[_0x571cdf(0x1e5)]()['finally'](()=>{this['traceSampleInFlight']=null;});}async[_0x3bf4d7(0x1e4)](){const _0x46afb0=_0x3bf4d7;this['traceSampleTimer']&&(clearInterval(this['traceSampleTimer']),this['traceSampleTimer']=null),await this[_0x46afb0(0x1db)]?.[_0x46afb0(0x194)](()=>undefined);}async['captureTraceSample'](){const _0x3b0281=_0x3bf4d7,_0x2a1906=this[_0x3b0281(0x1ed)]?.[_0x3b0281(0x22d)]()[0x0];if(!_0x2a1906)return;try{await _0x2a1906[_0x3b0281(0x259)]('body')[_0x3b0281(0x1af)](_0x459105=>_0x459105['tagName'],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async[_0x3bf4d7(0x224)](){const _0xaebe14=_0x3bf4d7,_0x4d0e7a={'tcXqG':function(_0x21ddd9,_0x483a7a){return _0x21ddd9<_0x483a7a;},'FxWJY':function(_0x9f38d0,_0x192ca0,_0x958fe8){return _0x9f38d0(_0x192ca0,_0x958fe8);},'DGlQF':function(_0x11f555,_0x595b9e,_0x13d1b9){return _0x11f555(_0x595b9e,_0x13d1b9);},'hHprH':function(_0x190b1b,_0x3a184a,_0x392598){return _0x190b1b(_0x3a184a,_0x392598);},'TZbNk':'session-recording.webm','NFpAa':'-hide_banner','wfgiV':_0xaebe14(0x261),'eMgYC':_0xaebe14(0x1bd),'eWMRL':_0xaebe14(0x1b2),'Brsng':'scale=trunc(iw/2)*2:trunc(ih/2)*2','xGRga':_0xaebe14(0x1e1),'mgGZt':_0xaebe14(0x20d)};if(_0x4d0e7a[_0xaebe14(0x240)](this[_0xaebe14(0x18c)],0x2))return null;const _0x5f400a=await resolveFfmpegPath();if(!_0x5f400a)return null;const _0x571163=_0x4d0e7a[_0xaebe14(0x25e)](join,this[_0xaebe14(0x22b)][_0xaebe14(0x1dd)],'videos');await _0x4d0e7a['DGlQF'](mkdir,_0x571163,{'recursive':!![]});const _0x26616c=_0x4d0e7a['hHprH'](join,_0x571163,_0x4d0e7a[_0xaebe14(0x262)]);return await execFileAsync(_0x5f400a,['-y',_0x4d0e7a['NFpAa'],_0x4d0e7a[_0xaebe14(0x18d)],_0x4d0e7a['eMgYC'],_0x4d0e7a[_0xaebe14(0x1be)],'10','-i',join(this['getFrameDir'](),'frame-%06d.jpg'),_0xaebe14(0x1f0),_0x4d0e7a[_0xaebe14(0x1e0)],_0xaebe14(0x1c2),_0x4d0e7a['xGRga'],_0x4d0e7a[_0xaebe14(0x1d0)],'yuv420p',_0x26616c]),_0x26616c;}[_0x3bf4d7(0x257)](){const _0xbe5510=_0x3bf4d7,_0x305cc8={'VQagz':function(_0x548e1e,_0x4cda84,_0x36dd97){return _0x548e1e(_0x4cda84,_0x36dd97);}};return _0x305cc8[_0xbe5510(0x216)](join,this['params'][_0xbe5510(0x1dd)],'nova-video-frames');}}async function delay(_0x55eddb){await new Promise(_0x16d8f0=>setTimeout(_0x16d8f0,_0x55eddb));}function _0x13ae(_0x298afa,_0x565a5a){_0x298afa=_0x298afa-0x181;const _0x2435d7=_0x2435();let _0x13aecc=_0x2435d7[_0x298afa];return _0x13aecc;}async function resolveFfmpegPath(){const _0x2c549a=_0x3bf4d7,_0x1e458e={'EZuBp':function(_0x3dde8e,_0x27c9dc){return _0x3dde8e(_0x27c9dc);},'mSDhH':_0x2c549a(0x1ec),'Lgppe':function(_0x3dbe8a,_0x22c269,_0xb8cbae,_0x29e63a){return _0x3dbe8a(_0x22c269,_0xb8cbae,_0x29e63a);},'uIqFD':function(_0x1652e6){return _0x1652e6();},'aMlLy':'.cache','PHDlK':_0x2c549a(0x1cd)};if(await _0x1e458e['EZuBp'](canRunFfmpeg,'ffmpeg'))return'ffmpeg';const _0x3fd3bb=[join(homedir(),'Library',_0x1e458e['mSDhH'],_0x2c549a(0x1cd)),_0x1e458e[_0x2c549a(0x24e)](join,_0x1e458e[_0x2c549a(0x20e)](homedir),_0x1e458e[_0x2c549a(0x21d)],_0x1e458e[_0x2c549a(0x25c)])];for(const _0x3cc90d of _0x3fd3bb){try{const _0x3147c6=await _0x1e458e[_0x2c549a(0x255)](readdir,_0x3cc90d),_0x1d5687=_0x3147c6['filter'](_0x575e72=>_0x575e72['startsWith']('ffmpeg-'))[_0x2c549a(0x1fb)]()[_0x2c549a(0x1df)]()['flatMap'](_0x2b81ec=>[join(_0x3cc90d,_0x2b81ec,'ffmpeg-mac'),join(_0x3cc90d,_0x2b81ec,_0x2c549a(0x19d)),join(_0x3cc90d,_0x2b81ec,'ffmpeg.exe')]);for(const _0x2057a4 of _0x1d5687){if(await canRunFfmpeg(_0x2057a4))return _0x2057a4;}}catch{}}return null;}async function canRunFfmpeg(_0x77e673){const _0x4d4b46=_0x3bf4d7,_0x39ed8c={'ziJxe':function(_0x5a3a2a,_0x5c0577,_0x22098b){return _0x5a3a2a(_0x5c0577,_0x22098b);}};try{return await _0x39ed8c['ziJxe'](execFileAsync,_0x77e673,[_0x4d4b46(0x242)]),!![];}catch{return![];}}function toStepDisplayName(_0x3d8322){const _0x426d29=_0x3bf4d7,_0x4888df=basename(_0x3d8322)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x426d29(0x25d)](/^key_/i,'')[_0x426d29(0x25d)](/^\d+_/,'')['replace'](/-/g,'\x20');return{'name':_0x4888df,'isKeyStep':/^key_/i[_0x426d29(0x185)](basename(_0x3d8322))};}function extractShellValue(_0x4d8c18){if(!_0x4d8c18)return null;return _0x4d8c18[0x1]??_0x4d8c18[0x2]??_0x4d8c18[0x3]??null;}function extractOutputOption(_0x3b2788){const _0x21b413=_0x3bf4d7,_0x1142a6={'YePhW':function(_0x5c4b6f,_0x140990){return _0x5c4b6f(_0x140990);}};return _0x1142a6[_0x21b413(0x21b)](extractShellValue,_0x3b2788[_0x21b413(0x1f3)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x3eb5d7,_0x379c7f){const _0x4e661e=_0x3bf4d7,_0x47abea={'qyGkv':'session\x20create','knUOu':'execute','SeuZA':_0x4e661e(0x1d3),'bhUkW':'verify\x20page\x20condition','XXSrV':'goto','RkVqV':_0x4e661e(0x20b),'mwvfU':_0x4e661e(0x23f),'dXbxC':_0x4e661e(0x1f7),'YbwcL':function(_0x50a208,_0x3662f1){return _0x50a208(_0x3662f1);},'yWdiU':_0x4e661e(0x23d)};switch(_0x379c7f){case _0x47abea['qyGkv']:return'create\x20Nova\x20browser\x20session';case _0x47abea['knUOu']:return _0x47abea[_0x4e661e(0x1f8)];case'verify':return _0x47abea[_0x4e661e(0x23e)];case _0x4e661e(0x199):return _0x4e661e(0x1e3);case _0x47abea['XXSrV']:return _0x4e661e(0x1b6);case _0x47abea[_0x4e661e(0x1d8)]:return'wait\x20for\x20page\x20condition';case _0x47abea['mwvfU']:{const _0x257d78=extractOutputOption(_0x3eb5d7);if(!_0x257d78)return _0x47abea[_0x4e661e(0x1cf)];const {name:_0x3716e9}=_0x47abea[_0x4e661e(0x1ca)](toStepDisplayName,_0x257d78);return _0x4e661e(0x1b8)+_0x3716e9+'`';}case _0x47abea['yWdiU']:{const _0x144a53=extractOutputOption(_0x3eb5d7);if(!_0x144a53)return _0x4e661e(0x1e6);const {name:_0x13addb,isKeyStep:_0x15c2d2}=_0x47abea[_0x4e661e(0x1ca)](toStepDisplayName,_0x144a53);return _0x15c2d2?_0x4e661e(0x1ef)+_0x13addb+'`':_0x4e661e(0x21a)+_0x13addb+'`';}case'session\x20export':return'export\x20Nova\x20session';default:return _0x379c7f;}}function getNovaActCliCommandBlockReason(_0x3337e1){const _0x57b241=_0x3bf4d7,_0x1c2d6c={'mBeVe':function(_0x33abc1,_0x1f577f){return _0x33abc1(_0x1f577f);},'cKrYu':'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','XlXQY':function(_0x7b44f9,_0x2585be){return _0x7b44f9===_0x2585be;},'BkGSn':_0x57b241(0x1b3)},_0x45c62a=_0x1c2d6c['mBeVe'](parseNovaActCliCommand,_0x3337e1);if(!_0x45c62a)return _0x1c2d6c[_0x57b241(0x227)];if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS['has'](_0x45c62a))return'Nova\x20command\x20`'+_0x45c62a+_0x57b241(0x208);if(_0x1c2d6c['XlXQY'](_0x45c62a,'verify')&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i[_0x57b241(0x185)](_0x3337e1))return _0x57b241(0x197);if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/[_0x57b241(0x185)](_0x3337e1))return _0x1c2d6c['BkGSn'];return null;}function buildFeedbackSection(_0x258a03){const _0x367fae=_0x3bf4d7,_0x181a10={'UNYzw':_0x367fae(0x234),'SqunT':_0x367fae(0x22c),'BUeAr':'numeric','cUGdy':'Reviewer','TXiLB':'\x20>\x20','vCHAh':'element','XDJXE':function(_0x442b3b,_0xb9a97b){return _0x442b3b===_0xb9a97b;}};if(!_0x258a03||_0x181a10[_0x367fae(0x1ad)](_0x258a03[_0x367fae(0x241)]['length'],0x0))return'';const _0x528501=_0x258a03[_0x367fae(0x241)][_0x367fae(0x24f)](_0x21f10e=>{const _0xb9aad1=_0x367fae,_0x50ca1b=new Date(_0x21f10e[_0xb9aad1(0x22f)])[_0xb9aad1(0x1aa)](_0x181a10[_0xb9aad1(0x1cc)],{'month':_0x181a10['SqunT'],'day':_0x181a10['BUeAr']}),_0x556b51=_0x21f10e['authorName']||_0x21f10e[_0xb9aad1(0x19c)]||_0x181a10[_0xb9aad1(0x24c)],_0x5c2828=_0x21f10e[_0xb9aad1(0x188)]?'\x20(on\x20element:\x20<'+(_0x21f10e['domRef']['selector'][_0xb9aad1(0x1ee)](_0x181a10[_0xb9aad1(0x191)])[_0xb9aad1(0x1c5)]()?.[_0xb9aad1(0x1ee)](':')[0x0]||_0x181a10[_0xb9aad1(0x25b)])+'>\x20\x22'+(_0x21f10e['domRef']['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x21f10e['id']+']\x20**'+_0x556b51+'**\x20('+_0x50ca1b+'):\x20\x22'+_0x21f10e[_0xb9aad1(0x238)]+'\x22'+_0x5c2828;})[_0x367fae(0x181)]('\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'+_0x528501;}function buildNovaSharedOptionsInstruction(_0x2d9482){const _0x587d35=_0x3bf4d7;if(!_0x2d9482[_0x587d35(0x1de)]())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 _0x587d35(0x217)+_0x2d9482;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x3ae040){const _0x5d3fd3=_0x3bf4d7,_0x104214={'FlIeF':function(_0x43db92,_0x28df1f,_0x54520f){return _0x43db92(_0x28df1f,_0x54520f);},'TsQWC':'01_initial-state.png','CWlDu':function(_0x232839,_0x280f5e){return _0x232839(_0x280f5e);}},{novaCommandPrefix:_0x19399a,novaSharedOptionsSuffix:_0xf505a2,cliArtifactDir:_0x322adb,url:_0xe488a0}=_0x3ae040,_0x5537b2=buildCliArtifactPath(_0x322adb,_0x5d3fd3(0x1e2)),_0x4ffac6=_0x104214['FlIeF'](buildCliArtifactPath,_0x322adb,_0x104214['TsQWC']),_0x4bcb56=buildCliArtifactPath(_0x322adb,_0x5d3fd3(0x1d6)),_0x13caac=buildCliArtifactPath(_0x322adb,'03_final-state.png');return _0x5d3fd3(0x1d7)+_0x19399a+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0xf505a2)+'\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`'+_0x19399a+'\x20session\x20create\x20'+quoteShellArg(_0xe488a0)+'\x20'+_0xf505a2+'`\x0a2.\x20Run\x20`'+_0x19399a+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x5537b2)+'\x20'+_0xf505a2+'`\x0a3.\x20Run\x20`'+_0x19399a+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x4ffac6)+'\x20'+_0xf505a2+_0x5d3fd3(0x1ce)+_0x19399a+_0x5d3fd3(0x231)+_0x19399a+_0x5d3fd3(0x1e8)+quoteShellArg(_0x4bcb56)+'\x20'+_0xf505a2+'`\x0a6.\x20Run\x20`'+_0x19399a+'\x20screenshot\x20--output\x20'+_0x104214['CWlDu'](quoteShellArg,_0x13caac)+'\x20'+_0xf505a2+_0x5d3fd3(0x1c3)+_0x322adb+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x44dc7b){const _0x865392=_0x3bf4d7,_0x16761c={'UNxbY':'01_initial.yml','jovUo':function(_0x1bb54c,_0x808d27,_0xd58ade){return _0x1bb54c(_0x808d27,_0xd58ade);},'sLrgP':_0x865392(0x1c6),'sLYMJ':'key_03_success-state.png','TeNNX':function(_0x4bea27,_0x5d3a5c){return _0x4bea27(_0x5d3a5c);},'SXOqD':function(_0x3c2557,_0x3a8c2f){return _0x3c2557(_0x3a8c2f);},'FyrqQ':function(_0x55b4f7,_0x255bec){return _0x55b4f7(_0x255bec);},'bsykY':function(_0x57e7e4,_0x12563d){return _0x57e7e4(_0x12563d);},'lfefg':function(_0x44acfe,_0x54a1c7){return _0x44acfe(_0x54a1c7);}},{checklistItem:_0x25d3e7,itemFeedback:_0x5bbc0c,taskDescription:_0x104664,novaCommandPrefix:_0x626d5b,novaSharedOptionsSuffix:_0x11bc02,cliArtifactDir:_0x40680b,url:_0x2b0b3a,loginInstructions:_0x432496}=_0x44dc7b,_0x2ea728=_0x25d3e7['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x25d3e7[_0x865392(0x232)]:'',_0xd70382=buildFeedbackSection(_0x5bbc0c),_0x39d6ca=_0x5bbc0c?.[_0x865392(0x22e)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x5bbc0c['canonicalFlow']:'',_0x565159=_0x432496?_0x865392(0x1bb)+_0x432496+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x5a7ec3=buildCliArtifactPath(_0x40680b,_0x16761c[_0x865392(0x202)]),_0x565339=_0x16761c['jovUo'](buildCliArtifactPath,_0x40680b,_0x16761c['sLrgP']),_0x2fc6da=buildCliArtifactPath(_0x40680b,_0x16761c['sLYMJ']);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'+_0x25d3e7[_0x865392(0x207)]+_0x2ea728+_0xd70382+_0x39d6ca+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x104664+'\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20'+_0x2b0b3a+_0x865392(0x1d9)+_0x565159+_0x865392(0x245)+_0x626d5b+_0x865392(0x1b1)+_0x16761c[_0x865392(0x20a)](quoteShellArg,_0x2b0b3a)+'\x20'+_0x11bc02+_0x865392(0x1ff)+_0x40680b+'`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`'+_0x626d5b+_0x865392(0x1e8)+_0x16761c[_0x865392(0x20c)](quoteShellArg,_0x5a7ec3)+'\x20'+_0x11bc02+'`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`'+_0x626d5b+_0x865392(0x209)+_0x16761c[_0x865392(0x1ae)](quoteShellArg,_0x565339)+'\x20'+_0x11bc02+_0x865392(0x1c8)+_0x2fc6da+'`.\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`'+_0x626d5b+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0x11bc02[_0x865392(0x1de)]()?'`'+_0x11bc02+'`':'`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`')+'\x0a\x0a'+_0x16761c['SXOqD'](buildNovaSharedOptionsInstruction,_0x11bc02)+_0x865392(0x19b)+_0x626d5b+_0x865392(0x226)+_0x11bc02+_0x865392(0x1c1)+_0x626d5b+_0x865392(0x1f2)+_0x11bc02+'`\x0a-\x20`'+_0x626d5b+'\x20snapshot\x20--output\x20'+_0x16761c[_0x865392(0x244)](quoteShellArg,_0x5a7ec3)+'\x20'+_0x11bc02+_0x865392(0x1c1)+_0x626d5b+_0x865392(0x209)+_0x16761c['lfefg'](quoteShellArg,_0x2fc6da)+'\x20'+_0x11bc02+_0x865392(0x187);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x1bb0c9){const _0x5d481b=_0x3bf4d7,_0x2a5be3={'JfhaB':function(_0x153be8,_0xbca98e){return _0x153be8===_0xbca98e;}},_0x23a8b6=[..._0x1bb0c9['keys']()]['sort']();let _0x4b12ba=0x0;for(const _0x11c05d of _0x1bb0c9['values']()){_0x4b12ba+=_0x11c05d;}return{'cliCommandCount':_0x4b12ba,'cliCommandsSeen':_0x23a8b6,'noCliCommandsCalled':_0x2a5be3[_0x5d481b(0x1a3)](_0x4b12ba,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x20c329,_0x3fdb46){const _0x2abe10=_0x3bf4d7,_0x146480={'PRSOX':function(_0x349aab,_0x514f15){return _0x349aab!==_0x514f15;},'gDRXK':_0x2abe10(0x252),'CIESL':'Bash','kqMzu':function(_0x1eede2,_0x33dee0){return _0x1eede2(_0x33dee0);},'edlev':_0x2abe10(0x215),'Zrocf':function(_0x2a108f,_0x46d3d8){return _0x2a108f(_0x46d3d8);},'RChti':function(_0x2f50c3,_0x35e31d){return _0x2f50c3+_0x35e31d;},'ooKaC':_0x2abe10(0x1cb),'wLzOX':function(_0x425bc9,_0x37628a,_0x5c6689){return _0x425bc9(_0x37628a,_0x5c6689);},'XVhEm':function(_0x41a0d7,_0x11e8bd){return _0x41a0d7===_0x11e8bd;},'lYBtt':'nova_act_command_failure','xHJuX':'nova-act-cli'},_0x1e408f=new Map(),_0x3e52eb=async _0x12761a=>{const _0x390667=_0x2abe10;if(_0x146480['PRSOX'](_0x12761a[_0x390667(0x1da)],_0x146480['gDRXK']))return{};const _0x4da8eb=_0x12761a;if(_0x4da8eb['tool_name']!==_0x146480[_0x390667(0x1a1)])return{};const _0x4ab995=_0x4da8eb[_0x390667(0x236)],_0x5d93fe=extractBashCommand(_0x4ab995);if(!_0x5d93fe)return{};const _0x125ddf=_0x146480['kqMzu'](getNovaActCliCommandBlockReason,_0x5d93fe);if(!_0x125ddf)return{};return{'decision':_0x146480['edlev'],'reason':_0x125ddf};},_0x3f6b09=async _0x1e9bab=>{const _0x51b252=_0x2abe10;if(_0x1e9bab[_0x51b252(0x1da)]!==_0x51b252(0x1c9))return{};const _0x3e6375=_0x1e9bab;if(_0x3e6375[_0x51b252(0x1a6)]!=='Bash')return{};const _0x331a8a=_0x3e6375['tool_input'],_0x473715=_0x146480['Zrocf'](extractBashCommand,_0x331a8a);if(!_0x473715)return{};const _0xe1f554=parseNovaActCliCommand(_0x473715);if(!_0xe1f554)return{};_0x1e408f['set'](_0xe1f554,_0x146480['RChti'](_0x1e408f['get'](_0xe1f554)||0x0,0x1)),_0x20c329[_0x51b252(0x22a)](_0x146480['ooKaC'],{'subcommand':_0xe1f554}),_0x20c329[_0x51b252(0x201)](_0x146480['ooKaC'],{'subcommand':_0xe1f554,'commandPreview':previewNovaActCliCommand(_0x473715)}),console['log']('[nova-act-cli]\x20'+_0x146480[_0x51b252(0x1bf)](formatNovaActCliLog,_0x473715,_0xe1f554));if(_0x146480['XVhEm'](_0xe1f554,_0x51b252(0x1a7))&&_0x3fdb46)try{await _0x3fdb46[_0x51b252(0x1f6)]();}catch(_0x41e634){await _0x20c329['trackPhaseError']('nova_act_artifact_recording',_0x41e634,{'transport':'nova-act-cli'});}return{};},_0x233fd6=async _0x179935=>{const _0x3e7fd4=_0x2abe10;if(_0x146480['PRSOX'](_0x179935['hook_event_name'],_0x3e7fd4(0x24a)))return{};const _0x1a3ac8=_0x179935;if(_0x1a3ac8[_0x3e7fd4(0x1a6)]!==_0x3e7fd4(0x1fc))return{};return await _0x20c329[_0x3e7fd4(0x251)](_0x146480['lYBtt'],_0x1a3ac8['error'],{'transport':_0x146480['xHJuX'],'toolName':_0x146480['CIESL']}),{};};return{'preToolUseHook':_0x3e52eb,'postToolUseHook':_0x3f6b09,'postToolUseFailureHook':_0x233fd6,'commandCounts':_0x1e408f};}async function runNovaLifecycleCommand(_0x40826f){const _0x3f2bab=_0x3bf4d7,_0x34385c={'VEoDs':function(_0x48168c,_0xbaa5d2){return _0x48168c(_0xbaa5d2);},'pLiKN':function(_0x341f42,_0x13b6f){return _0x341f42(_0x13b6f);},'occQA':function(_0x530595,_0xa3d5c7){return _0x530595(_0xa3d5c7);}},{novaOptions:_0xf71788,commandArgs:_0x387296,telemetry:_0x257deb,phase:_0x320591,metadata:_0x3d3ac4,timeoutMs:_0xf5f45b}=_0x40826f;_0x257deb[_0x3f2bab(0x22a)](_0x320591,_0x3d3ac4);try{const _0xf9082a=await _0x34385c[_0x3f2bab(0x23a)](runNovaActCliCommand,{..._0xf71788,'commandArgs':_0x387296,'cwd':process[_0x3f2bab(0x195)](),'env':process['env'],'timeoutMs':_0xf5f45b??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x257deb['trackPhaseEnd'](_0x320591,{..._0x3d3ac4,'subcommand':_0xf9082a[_0x3f2bab(0x1b5)][_0x3f2bab(0x21c)],'commandPreview':previewNovaActCliCommand(_0xf9082a['invocation']['shellCommand']),'stdoutPreview':_0x34385c['pLiKN'](previewNovaActCliCommand,_0xf9082a[_0x3f2bab(0x235)]),'stderrPreview':previewNovaActCliCommand(_0xf9082a[_0x3f2bab(0x1f1)]),'logDir':_0x34385c[_0x3f2bab(0x1b4)](extractNovaActLogDir,_0xf9082a['stdout'])});}catch(_0x5643d1){await _0x257deb[_0x3f2bab(0x251)](_0x320591,_0x5643d1,_0x3d3ac4);throw _0x5643d1;}}export async function finalizeVerifyFeatureNovaCliSession(_0x353cdd){const _0x13c04e=_0x3bf4d7,_0x4afb9f={'vPqAh':_0x13c04e(0x228),'PYVmE':_0x13c04e(0x1ea),'KtNWe':_0x13c04e(0x1fe),'JGxyg':_0x13c04e(0x219),'YaZqQ':'--format','zqjbf':_0x13c04e(0x223),'xkThb':'nova_act_session_report','Iaelz':'session','fpUyc':_0x13c04e(0x182),'eaxKL':_0x13c04e(0x222),'KPykK':'nova_act_session_close','jwfPD':function(_0x17b8de,_0x485e51){return _0x17b8de(_0x485e51);}},{telemetry:_0xbc6f9c,novaOptions:_0x131388,cliArtifactDir:_0x2fec3d,transportMetadata:_0x2a9df8,artifactRecorder:_0x212c13}=_0x353cdd,_0xe3e20=[{'phase':_0x4afb9f['vPqAh'],'commandArgs':['screenshot','--output',buildCliArtifactPath(_0x2fec3d,_0x4afb9f[_0x13c04e(0x1a9)])]},{'phase':_0x13c04e(0x233),'commandArgs':['snapshot',_0x4afb9f['KtNWe'],buildCliArtifactPath(_0x2fec3d,'final-state.yaml')]},{'phase':'nova_act_session_export','commandArgs':['session',_0x4afb9f['JGxyg'],_0x4afb9f['YaZqQ'],_0x13c04e(0x204),_0x4afb9f['KtNWe'],buildCliArtifactPath(_0x2fec3d,_0x4afb9f[_0x13c04e(0x1bc)])]},{'phase':_0x4afb9f['xkThb'],'commandArgs':[_0x4afb9f['Iaelz'],'export',_0x4afb9f[_0x13c04e(0x213)],'--output-dir',buildCliArtifactPath(_0x2fec3d,_0x4afb9f[_0x13c04e(0x1c0)])]},{'phase':_0x4afb9f['KPykK'],'commandArgs':[_0x13c04e(0x1b0),'close']}];for(const _0x4c340b of _0xe3e20){_0x4c340b['phase']==='nova_act_session_close'&&await _0x212c13?.[_0x13c04e(0x239)]();try{await _0x4afb9f[_0x13c04e(0x203)](runNovaLifecycleCommand,{'novaOptions':_0x131388,'commandArgs':[..._0x4c340b[_0x13c04e(0x225)]],'telemetry':_0xbc6f9c,'phase':_0x4c340b[_0x13c04e(0x18f)],'metadata':_0x2a9df8});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x4c6d29){const _0x14652c=_0x3bf4d7,_0x5cb725={'YdyNF':function(_0x55ff59,_0x580a0,_0x278c7e){return _0x55ff59(_0x580a0,_0x278c7e);},'AJXWZ':function(_0x551933,_0x49cb54){return _0x551933<_0x49cb54;},'shNZJ':function(_0x5ba076,_0x5c0b60,_0x435f1d){return _0x5ba076(_0x5c0b60,_0x435f1d);},'GfRYt':function(_0x10c8b5,_0x36be0e,_0x1b00d1){return _0x10c8b5(_0x36be0e,_0x1b00d1);}},{cwd:_0x10580f,cliArtifactDir:_0x296950,startTime:_0x3ec3f0}=_0x4c6d29,_0x2fb799=[];await _0x5cb725['YdyNF'](mkdir,_0x296950,{'recursive':!![]});const _0x561314=await readdir(_0x10580f,{'withFileTypes':!![]});for(const _0x41fbdd of _0x561314){if(!_0x41fbdd['isFile']()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN['test'](_0x41fbdd['name']))continue;const _0x69457f=join(_0x10580f,_0x41fbdd['name']),_0x3a37ad=await stat(_0x69457f);if(_0x5cb725['AJXWZ'](_0x3a37ad['mtimeMs']+0x7d0,_0x3ec3f0))continue;const _0x54d605=_0x5cb725[_0x14652c(0x1ac)](buildCliArtifactPath,_0x296950,_0x41fbdd[_0x14652c(0x19a)]);if(_0x69457f===_0x54d605)continue;await _0x5cb725[_0x14652c(0x1ab)](rename,_0x69457f,_0x54d605),_0x2fb799['push'](_0x41fbdd[_0x14652c(0x19a)]);}return _0x2fb799['sort']();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0xe76ca1){const _0x55c521=_0x3bf4d7,_0x47c9e6={'pufrM':function(_0x4fcd22,_0x38590c,_0x1811ab){return _0x4fcd22(_0x38590c,_0x1811ab);},'KtoZQ':_0x55c521(0x1b7),'HbBpt':function(_0x4dc63d,_0x59376d){return _0x4dc63d(_0x59376d);}},_0x8535ac=_0x47c9e6[_0x55c521(0x211)](join,_0xe76ca1,_0x47c9e6[_0x55c521(0x229)]);try{return{'buffer':await _0x47c9e6[_0x55c521(0x1e7)](readFile,_0x8535ac),'source':_0x8535ac};}catch{return{'buffer':await zipVerifyFeatureNovaArtifacts(_0xe76ca1),'source':_0xe76ca1};}}async function zipVerifyFeatureNovaArtifacts(_0x87b310){const _0x5a554c=_0x3bf4d7,_0x5cf886={'qfKfH':function(_0x2f860b,_0x20b66b,_0x3ebff8,_0xd55c1b){return _0x2f860b(_0x20b66b,_0x3ebff8,_0xd55c1b);},'KtzzD':function(_0x552582,_0xced7ae,_0x537925,_0x2ebc71){return _0x552582(_0xced7ae,_0x537925,_0x2ebc71);},'mnUPJ':_0x5a554c(0x25f),'jLmJt':function(_0x3b5c55,_0x119cd6,_0xa3e485){return _0x3b5c55(_0x119cd6,_0xa3e485);}},_0x108863=_0x5cf886['qfKfH'](join,_0x87b310,'..',_0x5a554c(0x20f));try{return await _0x5cf886['KtzzD'](execFileAsync,_0x5a554c(0x220),['-qr',_0x108863,'.','-x',_0x5cf886['mnUPJ']],{'cwd':_0x87b310}),await readFile(_0x108863);}finally{await _0x5cf886[_0x5a554c(0x1b9)](rm,_0x108863,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0xda322e){const _0x2c0766=_0x3bf4d7,_0x451e90={'qrxcR':function(_0x2e59d7,_0x1f1ca0,_0x2c3dd){return _0x2e59d7(_0x1f1ca0,_0x2c3dd);}},_0x370469=buildNovaActCliInvocation(_0xda322e[_0x2c0766(0x1fa)],_0xda322e[_0x2c0766(0x225)]);return{'command':_0x370469['command'],'args':_0x370469['args'],'commandPreview':previewNovaActCliCommand(_0x370469['shellCommand']),'subcommand':_0x370469[_0x2c0766(0x21c)],'sharedOptionsSuffix':_0x451e90['qrxcR'](buildNovaActCliSharedOptionsSuffix,_0xda322e['novaOptions'],_0xda322e[_0x2c0766(0x225)])};}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(_0x7e4c0e,_0x4a037d){const _0xb314b0=_0x17c9,_0x45733e=_0x7e4c0e();while(!![]){try{const _0x1a136c=parseInt(_0xb314b0(0xbd))/0x1*(parseInt(_0xb314b0(0xd8))/0x2)+-parseInt(_0xb314b0(0xcc))/0x3*(-parseInt(_0xb314b0(0xd0))/0x4)+-parseInt(_0xb314b0(0xa9))/0x5*(-parseInt(_0xb314b0(0xd9))/0x6)+-parseInt(_0xb314b0(0x9f))/0x7+-parseInt(_0xb314b0(0xc0))/0x8+parseInt(_0xb314b0(0x9b))/0x9*(-parseInt(_0xb314b0(0xba))/0xa)+parseInt(_0xb314b0(0xdb))/0xb*(parseInt(_0xb314b0(0xa6))/0xc);if(_0x1a136c===_0x4a037d)break;else _0x45733e['push'](_0x45733e['shift']());}catch(_0x4caa97){_0x45733e['push'](_0x45733e['shift']());}}}(_0x4e78,0x78390));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(_0x286851,_0x4e6aee=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x4dc079=_0x17c9,_0x1eed19={'cFaWt':function(_0x762bfb,_0x2ba7ef){return _0x762bfb>_0x2ba7ef;},'CBmWh':function(_0x483818,_0x47e56c){return _0x483818+_0x47e56c;}};return _0x1eed19['cFaWt'](_0x286851[_0x4dc079(0xb2)],_0x4e6aee)?_0x1eed19['CBmWh'](_0x286851[_0x4dc079(0xe1)](0x0,_0x4e6aee),'...'):_0x286851;}function extractShellValue(_0x3c6c84){if(!_0x3c6c84)return null;return _0x3c6c84[0x1]??_0x3c6c84[0x2]??_0x3c6c84[0x3]??null;}function extractFirstCommandArgument(_0x3e7b39,_0x19bda8){const _0x267da6=_0x17c9,_0x56cad3={'XASyf':function(_0x134e08,_0x5f24b4){return _0x134e08(_0x5f24b4);}},_0x39f2c9=_0x19bda8['replace'](/[.*+?^${}()|[\]\\]/g,_0x267da6(0xdc));return _0x56cad3[_0x267da6(0xa2)](extractShellValue,_0x3e7b39[_0x267da6(0x8d)](new RegExp(_0x267da6(0xe5)+_0x39f2c9+_0x267da6(0xd4))));}function formatCommandTarget(_0x49098c){const _0x1e19fe=_0x17c9;if(!_0x49098c)return'target';if(/^e\d+$/i['test'](_0x49098c))return _0x1e19fe(0xc8)+_0x49098c;return JSON['stringify'](truncatePreview(_0x49098c,0x78));}function formatRangerwrightCliLog(_0x167c4f,_0x2e5171){const _0x15f2d9=_0x17c9,_0x50013e={'AzmsH':_0x15f2d9(0xd7),'ZuouA':_0x15f2d9(0xc7),'aKpAK':function(_0x322be1,_0x38a40a,_0x31dd24){return _0x322be1(_0x38a40a,_0x31dd24);},'ulUwO':function(_0x2be23e,_0x48bc1b){return _0x2be23e(_0x48bc1b);},'QixfF':_0x15f2d9(0xaa),'DoJYj':'inspect','fqXwh':_0x15f2d9(0x97),'mkoCa':_0x15f2d9(0xdf),'BTEYZ':_0x15f2d9(0xbf),'dSOEc':'close\x20browser\x20session'};switch(_0x2e5171){case _0x50013e['AzmsH']:{const _0x1fdbab=extractFirstCommandArgument(_0x167c4f,_0x2e5171);return _0x1fdbab?_0x15f2d9(0xd1)+_0x1fdbab:'open\x20and\x20inspect';}case _0x50013e[_0x15f2d9(0x90)]:return _0x15f2d9(0xb7)+formatCommandTarget(_0x50013e[_0x15f2d9(0xa5)](extractFirstCommandArgument,_0x167c4f,_0x2e5171));case _0x15f2d9(0xad):case'fill-and-inspect':return'fill\x20'+_0x50013e[_0x15f2d9(0xcb)](formatCommandTarget,extractFirstCommandArgument(_0x167c4f,_0x2e5171));case _0x15f2d9(0x8f):return _0x50013e[_0x15f2d9(0xd3)];case _0x50013e['DoJYj']:return _0x50013e['fqXwh'];case _0x50013e[_0x15f2d9(0xda)]:return'stop\x20tracing';case _0x50013e['BTEYZ']:return'stop\x20video\x20recording';case _0x15f2d9(0x9c):return _0x50013e[_0x15f2d9(0x9d)];default:return _0x2e5171;}}function renderScenarioSections(_0x23cee0){const _0x3230ad=_0x17c9,_0x1b8419={'XokJT':_0x3230ad(0xac),'EDxEh':_0x3230ad(0xae),'BFxtv':_0x3230ad(0xa0),'seiZu':_0x3230ad(0xe4),'VqpPj':function(_0xc9c2ac,_0x599f25){return _0xc9c2ac>_0x599f25;}},{checklistItem:_0x1c68ed,itemFeedback:_0x141df7}=_0x23cee0,_0x4e7740=_0x1c68ed['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x1c68ed['notes']:'';let _0x40980d='';if(_0x141df7&&_0x1b8419[_0x3230ad(0xce)](_0x141df7['unaddressedComments'][_0x3230ad(0xb2)],0x0)){const _0x1071f3=_0x141df7[_0x3230ad(0xe2)][_0x3230ad(0xb6)](_0x23eedc=>{const _0x30de46=_0x3230ad,_0x161c80=new Date(_0x23eedc[_0x30de46(0xc6)])['toLocaleDateString'](_0x1b8419['XokJT'],{'month':_0x1b8419[_0x30de46(0x96)],'day':_0x30de46(0x9a)}),_0x1293af=_0x23eedc['authorName']||_0x23eedc[_0x30de46(0xc5)]||'Reviewer',_0x540393=_0x23eedc[_0x30de46(0xe0)]?_0x30de46(0xe3)+(_0x23eedc['domRef']['selector'][_0x30de46(0xa7)](_0x1b8419[_0x30de46(0xa3)])[_0x30de46(0xcf)]()?.[_0x30de46(0xa7)](':')[0x0]||_0x1b8419['seiZu'])+'>\x20\x22'+(_0x23eedc['domRef']['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x23eedc['id']+']\x20'+_0x1293af+'\x20('+_0x161c80+'):\x20\x22'+_0x23eedc['content']+'\x22'+_0x540393;})['join']('\x0a');_0x40980d='\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'+_0x1071f3;}const _0x48af85=_0x141df7?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x141df7['canonicalFlow']:'';return''+_0x1c68ed[_0x3230ad(0xbc)]+_0x4e7740+_0x40980d+_0x48af85;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x1291c4){const _0x3a5aa7=_0x17c9,_0x3408b3={'AkQzN':_0x3a5aa7(0x9e),'qzUSj':'about:blank','EgGlA':function(_0x21092a,_0x4009c9){return _0x21092a(_0x4009c9);}},{checklistItem:_0x2ad41f,itemFeedback:_0x358965,taskDescription:_0x4a42a5,commandPrefix:_0x1ee499,isCdpMode:_0x54d130,url:_0x28c861,cdpEndpoint:_0x10601d,loginInstructions:_0x11c708}=_0x1291c4,_0x4720e1=_0x3408b3['AkQzN'],_0xdeb667='key_99_final-state.png',_0x2d2f5d=_0x54d130?_0x1ee499+_0x3a5aa7(0xa4)+quoteShellArg(_0x4720e1):_0x1ee499+'\x20open-and-inspect\x20'+quoteShellArg(_0x28c861??_0x3408b3[_0x3a5aa7(0x98)])+_0x3a5aa7(0xc9)+_0x3408b3[_0x3a5aa7(0x8e)](quoteShellArg,_0x4720e1),_0x942075=_0x54d130?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20'+_0x10601d+'.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.':'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x28c861+_0x3a5aa7(0xb5),_0x35fb0f=_0x11c708?_0x3a5aa7(0xcd)+_0x11c708+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return _0x3a5aa7(0xb0)+renderScenarioSections({'checklistItem':_0x2ad41f,'itemFeedback':_0x358965})+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x4a42a5+'\x0a\x0a'+_0x942075+_0x35fb0f+_0x3a5aa7(0x99)+_0x1ee499+_0x3a5aa7(0x92)+_0x2d2f5d+_0x3a5aa7(0xc3)+_0x1ee499+'\x20click-and-inspect\x20e37\x20--screenshot-path\x20'+quoteShellArg(_0xdeb667)+_0x3a5aa7(0x93);}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0x51d6be){const _0x55a5dc=_0x17c9,_0x5b5671={'IIieG':function(_0xb8e086,_0x1c28df){return _0xb8e086(_0x1c28df);}},_0x4ffa24='01_mozilla-homepage.png',_0x13e924='key_02_learn-more.png';return _0x55a5dc(0xd5)+_0x51d6be['commandPrefix']+_0x55a5dc(0xde)+_0x51d6be['commandPrefix']+_0x55a5dc(0xca)+_0x5b5671[_0x55a5dc(0xbe)](quoteShellArg,_0x51d6be[_0x55a5dc(0xc2)])+_0x55a5dc(0xc9)+quoteShellArg(_0x4ffa24)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0x51d6be[_0x55a5dc(0xd6)]+'\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20'+_0x5b5671['IIieG'](quoteShellArg,_0x13e924)+_0x55a5dc(0xaf);}function _0x17c9(_0x48f16a,_0x3dd7fd){_0x48f16a=_0x48f16a-0x8d;const _0x4e7877=_0x4e78();let _0x17c97b=_0x4e7877[_0x48f16a];return _0x17c97b;}function _0x4e78(){const _0x37c934=['BFxtv','\x20inspect\x20--screenshot-path\x20','aKpAK','105276glDWga','split','cwd','5wJsPfl','go\x20back\x20and\x20inspect','rangerwright_cli_tracing_stop','en-US','fill','short','`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','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','xgZPy','length','YleFW','invocation','\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.','map','click\x20and\x20inspect\x20','TAbBF','tool_name','40cuQbWp','PostToolUseFailure','description','414841TJCiit','IIieG','video-stop','4706984wdCCIO','hook_event_name','url','\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','ODjUV','authorEmail','createdAt','click-and-inspect','ref\x20','\x20--screenshot-path\x20','\x20open-and-inspect\x20','ulUwO','493059qTmstr','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','VqpPj','pop','8mAilDj','open\x20and\x20inspect\x20','qhBdK','QixfF','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','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','commandPrefix','open-and-inspect','4vIMCVQ','345558wskXwO','mkoCa','396ZIcEYR','\x5c$&','error','\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`','tracing-stop','domRef','slice','unaddressedComments','\x20(on\x20element:\x20<','element','(?:^|\x5cs)','match','EgGlA','back-and-inspect','ZuouA','values','\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','\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.','Bash','trackPhaseEnd','EDxEh','inspect\x20page','qzUSj','\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a','numeric','911529FJrekB','close','dSOEc','01_initial-state.png','321160BXmMgD','\x20>\x20','vaXgH','XASyf'];_0x4e78=function(){return _0x37c934;};return _0x4e78();}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x4da55b){const _0x3eab5a=_0x17c9,_0x7c8ca5=[..._0x4da55b['keys']()]['sort']();let _0x2622b3=0x0;for(const _0x25e3e1 of _0x4da55b[_0x3eab5a(0x91)]()){_0x2622b3+=_0x25e3e1;}return{'cliCommandCount':_0x2622b3,'cliCommandsSeen':_0x7c8ca5,'noCliCommandsCalled':_0x2622b3===0x0};}export function createVerifyFeatureRangerwrightCliHooks(_0x81d8c4){const _0x5f1e8e={'vaXgH':function(_0x256ad9,_0x4f3858){return _0x256ad9!==_0x4f3858;},'TAbBF':function(_0x2e28e3,_0x33921c){return _0x2e28e3(_0x33921c);},'ZYoiy':function(_0x160488,_0xf1543e){return _0x160488+_0xf1543e;},'xgZPy':'rangerwright_cli_command','GTqGH':function(_0x387b57,_0x49ef46,_0x48a4ca){return _0x387b57(_0x49ef46,_0x48a4ca);},'Btucn':'Bash','qhBdK':'rangerwright_cli_command_failure','OtKJE':'rangerwright-cli'},_0x4837ed=new Map(),_0x2672a0=async _0x33318c=>{const _0x29481c=_0x17c9;if(_0x33318c['hook_event_name']!=='PostToolUse')return{};const _0xef8e0a=_0x33318c;if(_0x5f1e8e[_0x29481c(0xa1)](_0xef8e0a['tool_name'],_0x29481c(0x94)))return{};const _0x88eca0=_0xef8e0a['tool_input'],_0x172235=extractBashCommand(_0x88eca0);if(!_0x172235)return{};const _0x300c1b=_0x5f1e8e[_0x29481c(0xb8)](parseRangerwrightCliCommand,_0x172235);if(!_0x300c1b)return{};return _0x4837ed['set'](_0x300c1b,_0x5f1e8e['ZYoiy'](_0x4837ed['get'](_0x300c1b)||0x0,0x1)),_0x81d8c4['trackPhaseStart']('rangerwright_cli_command',{'subcommand':_0x300c1b}),_0x81d8c4[_0x29481c(0x95)](_0x5f1e8e[_0x29481c(0xb1)],{'subcommand':_0x300c1b,'commandPreview':_0x5f1e8e[_0x29481c(0xb8)](truncatePreview,_0x172235)}),console['log']('[rangerwright-cli]\x20'+_0x5f1e8e['GTqGH'](formatRangerwrightCliLog,_0x172235,_0x300c1b)),{};},_0x35aac4=async _0x4f4b11=>{const _0x3832af=_0x17c9;if(_0x5f1e8e[_0x3832af(0xa1)](_0x4f4b11[_0x3832af(0xc1)],_0x3832af(0xbb)))return{};const _0x304f1c=_0x4f4b11;if(_0x304f1c[_0x3832af(0xb9)]!==_0x5f1e8e['Btucn'])return{};return await _0x81d8c4['trackPhaseError'](_0x5f1e8e[_0x3832af(0xd2)],_0x304f1c[_0x3832af(0xdd)],{'transport':_0x5f1e8e['OtKJE'],'toolName':_0x3832af(0x94)}),{};};return{'postToolUseHook':_0x2672a0,'postToolUseFailureHook':_0x35aac4,'commandCounts':_0x4837ed};}async function runRangerwrightLifecycleCommand(_0x3cfd36){const _0x35a267=_0x17c9,_0x2ada59={'giHvJ':function(_0x17e7ed,_0x1dbb2b){return _0x17e7ed??_0x1dbb2b;},'YleFW':function(_0x41d8c8,_0x11dcee,_0x312b38){return _0x41d8c8(_0x11dcee,_0x312b38);}},{options:_0x2de036,commandArgs:_0x338a5d,env:_0x13b2bb,telemetry:_0x497860,phase:_0x108b99,metadata:_0x2c60c9,timeoutMs:_0x186adf}=_0x3cfd36;_0x497860['trackPhaseStart'](_0x108b99,_0x2c60c9);try{const _0x4007e7=await runRangerwrightCliCommand({..._0x2de036,'commandArgs':_0x338a5d,'cwd':process[_0x35a267(0xa8)](),'env':_0x13b2bb,'timeoutMs':_0x2ada59['giHvJ'](_0x186adf,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x497860[_0x35a267(0x95)](_0x108b99,{..._0x2c60c9,'subcommand':_0x4007e7[_0x35a267(0xb4)]['subcommand'],'stdoutPreview':_0x2ada59[_0x35a267(0xb3)](truncatePreview,_0x4007e7['stdout'],0x7d0),'stderrPreview':_0x2ada59[_0x35a267(0xb3)](truncatePreview,_0x4007e7['stderr'],0x7d0)});}catch(_0x2e9dbd){await _0x497860['trackPhaseError'](_0x108b99,_0x2e9dbd,_0x2c60c9);throw _0x2e9dbd;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0xdb58d4){const _0x4334a7=_0x17c9,_0x427a9f={'CNcRa':_0x4334a7(0xab),'ODjUV':'rangerwright_cli_video_stop','sfDCg':'close'},{telemetry:_0x24c429,rangerwrightOptions:_0x3f2c65,env:_0x4e074c,transportMetadata:_0x17277d}=_0xdb58d4,_0x24d078=[{'phase':_0x427a9f['CNcRa'],'commandArgs':['tracing-stop']},{'phase':_0x427a9f[_0x4334a7(0xc4)],'commandArgs':['video-stop']},{'phase':'rangerwright_cli_close','commandArgs':[_0x427a9f['sfDCg']]}];for(const _0x4e4444 of _0x24d078){try{await runRangerwrightLifecycleCommand({'options':_0x3f2c65,'commandArgs':[..._0x4e4444['commandArgs']],'env':_0x4e074c,'telemetry':_0x24c429,'phase':_0x4e4444['phase'],'metadata':_0x17277d});}catch{}}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ranger-testing/ranger-cli",
|
|
3
|
-
"version": "3.0.1-alpha.
|
|
3
|
+
"version": "3.0.1-alpha.f6aba6c-32",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ranger": "./build/cli.js",
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"@anthropic-ai/claude-agent-sdk": "^0.1.0",
|
|
24
24
|
"@playwright/cli": "0.1.1",
|
|
25
|
+
"@ranger-testing/rangerwright": "^0.0.27",
|
|
25
26
|
"dotenv": "^16.4.5",
|
|
26
27
|
"inquirer": "^9.2.12",
|
|
27
28
|
"playwright": "^1.57.0",
|
|
@@ -41,7 +42,7 @@
|
|
|
41
42
|
},
|
|
42
43
|
"overrides": {
|
|
43
44
|
"minimatch": "^10.2.3",
|
|
44
|
-
"brace-expansion": "^5.0.
|
|
45
|
+
"brace-expansion": "^5.0.6",
|
|
45
46
|
"fast-uri": "3.1.2"
|
|
46
47
|
}
|
|
47
48
|
}
|