@ranger-testing/ranger-cli 3.1.7-alpha.62f152a-54 → 3.1.7-alpha.a5be4ca-60

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/deleteProfile.js +1 -1
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/novaActCli.js +1 -1
  58. package/build/commands/utils/opencodeConfig.js +1 -1
  59. package/build/commands/utils/organizationEnvApi.js +1 -1
  60. package/build/commands/utils/playwrightCli.js +1 -1
  61. package/build/commands/utils/profileMessages.js +1 -1
  62. package/build/commands/utils/profileSetupBanner.js +1 -1
  63. package/build/commands/utils/projectsConfig.js +1 -1
  64. package/build/commands/utils/rangerConfig.js +1 -1
  65. package/build/commands/utils/rangerRoot.js +1 -1
  66. package/build/commands/utils/rangerwrightCli.js +1 -1
  67. package/build/commands/utils/resolveProfileContext.js +1 -1
  68. package/build/commands/utils/resolveProfileUrl.js +1 -1
  69. package/build/commands/utils/retry.js +1 -1
  70. package/build/commands/utils/scenarioOriginCheck.js +1 -1
  71. package/build/commands/utils/sessionCache.js +1 -1
  72. package/build/commands/utils/settings.js +1 -1
  73. package/build/commands/utils/skillContent.js +1 -1
  74. package/build/commands/utils/skills.js +1 -1
  75. package/build/commands/utils/stitchWebmFiles.js +1 -1
  76. package/build/commands/utils/telemetry.js +1 -1
  77. package/build/commands/utils/tokenRefresh.js +1 -1
  78. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  79. package/build/commands/utils/tunnelClient.js +1 -1
  80. package/build/commands/utils/userApi.js +1 -1
  81. package/build/commands/utils/version.js +1 -1
  82. package/build/commands/verifyFeature.js +1 -1
  83. package/build/commands/verifyFeatureCli.js +1 -1
  84. package/build/commands/verifyFeatureNovaCli.js +1 -1
  85. package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
  86. package/package.json +15 -9
@@ -1 +1 @@
1
- (function(_0x4d2435,_0x1b6024){const _0x24a2c1=_0x50bc,_0x9871f9=_0x4d2435();while(!![]){try{const _0x291cb1=parseInt(_0x24a2c1(0x10c))/0x1*(parseInt(_0x24a2c1(0x122))/0x2)+parseInt(_0x24a2c1(0x126))/0x3+parseInt(_0x24a2c1(0xf1))/0x4+-parseInt(_0x24a2c1(0xf8))/0x5+-parseInt(_0x24a2c1(0x145))/0x6+-parseInt(_0x24a2c1(0x108))/0x7+parseInt(_0x24a2c1(0xdf))/0x8*(parseInt(_0x24a2c1(0x150))/0x9);if(_0x291cb1===_0x1b6024)break;else _0x9871f9['push'](_0x9871f9['shift']());}catch(_0x3e08d6){_0x9871f9['push'](_0x9871f9['shift']());}}}(_0x2932,0x33261));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';function _0x2932(){const _0xca93ef=['log','short','kaMRn','\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.','TrKxH','subcommand','2902416IICFYb','capture\x20snapshot\x20`','XJiyg','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','Rdcol','Reviewer','trackPhaseError','\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',']\x20**','playwright_cli_tracing_stop','cwd','03_result-visible.png','set','Bash','stop\x20tracing','check','en-US','TDakC','360884YOzDBb','replace','capture\x20snapshot','...','test','qJxiZ','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','253715ehntIk','-\x20[','ioSaC','aUhGz','trace.zip','fill','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','\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','HPPxK','createdAt','01_initial-state.png','start\x20video\x20recording','split','tool_name','phase','2314613NORrbb','kpEGh','PostToolUse','uZehJ','1XKrahZ','\x5c$&','isFile','[ranger-verification-agent]\x20','dbpwF','content','`\x0a9.\x20Run\x20`','\x20snapshot\x20--filename\x20','tool_call','\x20tracing-start`\x0a3.\x20Run\x20`','\x20screenshot\x20--filename\x20','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\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','pQJKD','bjgRd','>\x20\x22','[playwright-cli]\x20','(?:^|\x5cs)','tool_input','`\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','fill\x20','463530LEXiII','cBlko','--filename=','playwright-cli','551817DsPnrM','\x20tracing-start`,\x20then\x20`','`:\x20\x22','mtimeMs','tracing-start','llbrM','authorName','03_learn-more.png','snapshot','tab-new','tab-select','domRef','Dxlld','trackPhaseEnd','HzyDj','name','01_mozilla-homepage.png','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','unaddressedComments','open','invocation','HQJMM','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','NjvlN','SHVNa','\x20(on\x20element:\x20<','RkLhG','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','BoFtX','video-stop','stop\x20video\x20recording','1666920kBwGTy','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','EQUdh','`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`','tracing-stop','\x22,\x20\x22','\x0a\x0a1.\x20Run\x20`','ChtwW','`\x0a-\x20`snapshot\x20--filename\x20','length','string','9fTWKCM','description','\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.','commandArgs','open\x20','RWcix','lWpNl','click\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','dyNWf','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','PostToolUseFailure','bODkm','02_button-clicked.png','hook_event_name','numeric','LWlct','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','trim','target','`\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`'];_0x2932=function(){return _0xca93ef;};return _0x2932();}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(_0x4a4930,_0x42c155=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x3526af=_0x50bc;return _0x4a4930[_0x3526af(0x14e)]>_0x42c155?_0x4a4930['slice'](0x0,_0x42c155)+_0x3526af(0xf4):_0x4a4930;}function buildCliArtifactPath(_0xcb2a0a,_0x133b06){return join(_0xcb2a0a,_0x133b06);}function toStepDisplayName(_0x4c2679){const _0x488f36=_0x50bc,_0x48fce6={'UfiVm':function(_0x3a9287,_0x501a86){return _0x3a9287(_0x501a86);}},_0x2c2fdc=_0x48fce6['UfiVm'](basename,_0x4c2679)['replace'](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x488f36(0xf2)](/^\d+_/,'')[_0x488f36(0xf2)](/-/g,'\x20');return{'name':_0x2c2fdc,'isKeyStep':/^key_/i['test'](basename(_0x4c2679))};}function extractShellValue(_0x5b436d){if(!_0x5b436d)return null;return _0x5b436d[0x1]??_0x5b436d[0x2]??_0x5b436d[0x3]??null;}function extractFilenameOption(_0x113e6f){const _0x55d0c9=_0x50bc,_0x1b1d4f={'Rdcol':function(_0x5e5524,_0x496e91){return _0x5e5524(_0x496e91);}};return _0x1b1d4f[_0x55d0c9(0xe3)](extractShellValue,_0x113e6f['match'](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function extractFirstCommandArgument(_0x56b637,_0x26c7ff){const _0x3f2bc1=_0x50bc,_0x2e8531={'FgwlJ':_0x3f2bc1(0x10d),'tenXg':function(_0xd67e76,_0x5b22b9){return _0xd67e76(_0x5b22b9);}},_0x31bd5e=_0x26c7ff['replace'](/[.*+?^${}()|[\]\\]/g,_0x2e8531['FgwlJ']);return _0x2e8531['tenXg'](extractShellValue,_0x56b637['match'](new RegExp(_0x3f2bc1(0x11e)+_0x31bd5e+_0x3f2bc1(0x13c))));}function formatCommandTarget(_0x29f193){const _0x292843=_0x50bc,_0x460491={'HPPxK':function(_0x43b3cf,_0x355305,_0x257447){return _0x43b3cf(_0x355305,_0x257447);}};if(!_0x29f193)return _0x292843(0xd7);if(/^e\d+$/i['test'](_0x29f193))return'ref\x20'+_0x29f193;return JSON['stringify'](_0x460491[_0x292843(0x101)](truncatePreview,_0x29f193,0x78));}function formatPlaywrightCliLog(_0x10fa64,_0x500a6f){const _0xf4bff2=_0x50bc,_0x242f37={'BoFtX':_0xf4bff2(0x139),'AIuRG':function(_0x1f1675,_0x55ff03,_0x129940){return _0x1f1675(_0x55ff03,_0x129940);},'eqXAz':_0xf4bff2(0x12a),'pxnAt':'start\x20tracing','SHVNa':'tracing-stop','dbpwF':_0xf4bff2(0xed),'HzyDj':_0xf4bff2(0x104),'lWpNl':_0xf4bff2(0x143),'LWlct':function(_0x480a3b,_0x29c588){return _0x480a3b(_0x29c588);},'ydQvI':_0xf4bff2(0xf3),'saVkW':'screenshot','yCgni':function(_0x489c7e,_0x468b95){return _0x489c7e(_0x468b95);},'kpEGh':'click','UrsgO':function(_0x254142,_0x1cc856){return _0x254142(_0x1cc856);},'EPswE':_0xf4bff2(0xee),'JOHWo':_0xf4bff2(0xfd),'kaMRn':_0xf4bff2(0x12f),'dxMVB':function(_0x4455ec,_0x13d43f,_0x364fe4){return _0x4455ec(_0x13d43f,_0x364fe4);},'RWcix':'open\x20new\x20tab'};switch(_0x500a6f){case _0x242f37[_0xf4bff2(0x142)]:{const _0x4ee3a8=_0x242f37['AIuRG'](extractFirstCommandArgument,_0x10fa64,_0x500a6f);return _0x4ee3a8?_0xf4bff2(0xc8)+_0x4ee3a8:'open\x20browser';}case _0x242f37['eqXAz']:return _0x242f37['pxnAt'];case _0x242f37[_0xf4bff2(0x13e)]:return _0x242f37[_0xf4bff2(0x110)];case'video-start':return _0x242f37[_0xf4bff2(0x134)];case _0x242f37[_0xf4bff2(0xca)]:return _0xf4bff2(0x144);case'snapshot':{const _0x41ff70=_0x242f37['LWlct'](extractFilenameOption,_0x10fa64);if(!_0x41ff70)return _0x242f37['ydQvI'];const {name:_0x4e57dc}=_0x242f37[_0xf4bff2(0xd4)](toStepDisplayName,_0x41ff70);return _0xf4bff2(0xe0)+_0x4e57dc+'`';}case _0x242f37['saVkW']:{const _0x3a0b1f=_0x242f37[_0xf4bff2(0xd4)](extractFilenameOption,_0x10fa64);if(!_0x3a0b1f)return'capture\x20screenshot';const {name:_0x2bb0a4,isKeyStep:_0x417b9d}=_0x242f37['yCgni'](toStepDisplayName,_0x3a0b1f);return _0x417b9d?'capture\x20key\x20step\x20`'+_0x2bb0a4+'`':'capture\x20step\x20`'+_0x2bb0a4+'`';}case _0x242f37[_0xf4bff2(0x109)]:return _0xf4bff2(0xcb)+_0x242f37['UrsgO'](formatCommandTarget,extractFirstCommandArgument(_0x10fa64,_0x500a6f));case _0x242f37['EPswE']:return'check\x20'+_0x242f37['LWlct'](formatCommandTarget,extractFirstCommandArgument(_0x10fa64,_0x500a6f));case _0x242f37['JOHWo']:return _0xf4bff2(0x121)+formatCommandTarget(extractFirstCommandArgument(_0x10fa64,_0x500a6f));case'press':return'press\x20'+formatCommandTarget(extractFirstCommandArgument(_0x10fa64,_0x500a6f));case'run-code':return'run\x20custom\x20Playwright\x20code';case _0x242f37[_0xf4bff2(0xdb)]:{const _0x40c698=_0x242f37['dxMVB'](extractFirstCommandArgument,_0x10fa64,_0x500a6f);return _0x40c698?'open\x20new\x20tab\x20'+_0x40c698:_0x242f37[_0xf4bff2(0xc9)];}case _0xf4bff2(0x130):{const _0xaedf10=extractFirstCommandArgument(_0x10fa64,_0x500a6f);return _0xaedf10?'select\x20tab\x20'+_0xaedf10:'select\x20tab';}default:return _0x500a6f;}}function extractPlaywrightCliToolDescription(_0x4a7a9c){const _0x384a9d=_0x50bc,_0x44b31a={'RjVFC':_0x384a9d(0x14f),'FWTxZ':function(_0x449bb7,_0x3fff7c){return _0x449bb7>_0x3fff7c;}},_0x192c1f=_0x4a7a9c['description'];if(typeof _0x192c1f!==_0x44b31a['RjVFC'])return null;const _0x4ea68f=_0x192c1f[_0x384a9d(0xd6)]()[_0x384a9d(0xf2)](/\s+/g,'\x20');return _0x44b31a['FWTxZ'](_0x4ea68f['length'],0x0)?_0x4ea68f:null;}export function formatPlaywrightCliConsoleLogMessage(_0x525fc8,_0x4094a,_0x69e6bb){const _0x397f9d=_0x50bc,_0x18bfeb={'ChtwW':function(_0x506b34,_0x2c60d9,_0x11a7d6){return _0x506b34(_0x2c60d9,_0x11a7d6);}},_0x307ef5=_0x18bfeb[_0x397f9d(0x14c)](formatPlaywrightCliLog,_0x4094a,_0x69e6bb),_0x46f026=extractPlaywrightCliToolDescription(_0x525fc8);if(!_0x46f026)return _0x397f9d(0x11d)+_0x307ef5;if(process['env']['DEBUG'])return'[ranger-verification-agent]\x20'+_0x46f026+'\x20('+_0x307ef5+')';return _0x397f9d(0x10f)+_0x46f026;}export function buildVerifyFeatureCliDebugPrompt(_0x2de570,_0x54b351){const _0x2a545a=_0x50bc,_0x29b586={'hYCJx':function(_0x4e2c74,_0x3b2d01,_0x39f136){return _0x4e2c74(_0x3b2d01,_0x39f136);},'HGCsk':'00_mozilla-homepage.yml','UMhss':_0x2a545a(0x136),'DUKUR':function(_0x3d5164,_0x4deb1a,_0xe1265d){return _0x3d5164(_0x4deb1a,_0xe1265d);},'ozHbw':'02_learn-more.yml','aUhGz':_0x2a545a(0x12d)},_0x2a382d=_0x29b586['hYCJx'](buildCliArtifactPath,_0x54b351,_0x29b586['HGCsk']),_0x1ec84a=_0x29b586['hYCJx'](buildCliArtifactPath,_0x54b351,_0x29b586['UMhss']),_0xbfc33d=_0x29b586['DUKUR'](buildCliArtifactPath,_0x54b351,_0x29b586['ozHbw']),_0x4b7f45=buildCliArtifactPath(_0x54b351,_0x29b586[_0x2a545a(0xfb)]),_0x5d4fd4=quoteShellArg(_0x2a382d),_0x4d1d4a=quoteShellArg(_0x1ec84a),_0x135c4e=quoteShellArg(_0xbfc33d),_0x448051=quoteShellArg(_0x4b7f45);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x2de570+_0x2a545a(0x14b)+_0x2de570+'\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`'+_0x2de570+_0x2a545a(0x115)+_0x2de570+'\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x54b351+_0x2a545a(0xfe)+_0x2de570+'\x20snapshot\x20--filename\x20'+_0x5d4fd4+_0x2a545a(0x148)+_0x2de570+_0x2a545a(0x116)+_0x4d1d4a+_0x2a545a(0xce)+_0x2de570+'\x20snapshot\x20--filename\x20'+_0x135c4e+_0x2a545a(0x112)+_0x2de570+'\x20screenshot\x20--filename\x20'+_0x448051+'`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureCliPrompt(_0x29ce7f){const _0x1848f6=_0x50bc,_0x53cd7c={'VOhEd':_0x1848f6(0xe4),'llbrM':'element','RkLhG':'01_initial.yml','Dxlld':function(_0x3faacb,_0x40dbda,_0x10c362){return _0x3faacb(_0x40dbda,_0x10c362);},'pQJKD':'key_03_success-state.png','dyNWf':function(_0x67d31c,_0x252993){return _0x67d31c(_0x252993);},'bjgRd':function(_0x98636e,_0x5bf442){return _0x98636e(_0x5bf442);},'FemPm':function(_0x1f914b,_0x327947){return _0x1f914b>_0x327947;},'TrKxH':_0x1848f6(0xea),'sIhLj':'key_04_success-state.png'},{checklistItem:_0xe0725b,itemFeedback:_0x167157,taskDescription:_0x1e239a,cliCommandPrefix:_0xeb5932,cliArtifactDir:_0x2e3a4a,isCdpMode:_0x48622f,url:_0x55a2e5,cdpEndpoint:_0x94e157,loginInstructions:_0x48aabe}=_0x29ce7f,_0x504fd5=buildCliArtifactPath(_0x2e3a4a,_0x53cd7c[_0x1848f6(0x140)]),_0x37b39c=_0x53cd7c[_0x1848f6(0x132)](buildCliArtifactPath,_0x2e3a4a,'02_state.yml'),_0x5aac45=buildCliArtifactPath(_0x2e3a4a,_0x53cd7c[_0x1848f6(0x11a)]),_0x1e994c=buildCliArtifactPath(_0x2e3a4a,_0x1848f6(0x103)),_0x35f7e4=_0x53cd7c['dyNWf'](quoteShellArg,_0x504fd5),_0x15a6b6=quoteShellArg(_0x37b39c),_0x15b08c=_0x53cd7c['bjgRd'](quoteShellArg,_0x5aac45),_0x124191=_0x53cd7c[_0x1848f6(0x11b)](quoteShellArg,_0x1e994c),_0x1b3c62=_0xe0725b['notes']?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0xe0725b['notes']:'';let _0xa849f7='';if(_0x167157&&_0x53cd7c['FemPm'](_0x167157[_0x1848f6(0x138)]['length'],0x0)){const _0xdb3db4=_0x167157[_0x1848f6(0x138)]['map'](_0x348464=>{const _0x2f0e5a=_0x1848f6,_0x3d8c24=new Date(_0x348464[_0x2f0e5a(0x102)])['toLocaleDateString'](_0x2f0e5a(0xef),{'month':_0x2f0e5a(0xda),'day':_0x2f0e5a(0xd3)}),_0x5523e4=_0x348464[_0x2f0e5a(0x12c)]||_0x348464['authorEmail']||_0x53cd7c['VOhEd'],_0xad2a06=_0x348464[_0x2f0e5a(0x131)]?_0x2f0e5a(0x13f)+(_0x348464['domRef']['selector'][_0x2f0e5a(0x105)]('\x20>\x20')['pop']()?.['split'](':')[0x0]||_0x53cd7c[_0x2f0e5a(0x12b)])+_0x2f0e5a(0x11c)+(_0x348464[_0x2f0e5a(0x131)]['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return _0x2f0e5a(0xf9)+_0x348464['id']+_0x2f0e5a(0xe7)+_0x5523e4+'**\x20('+_0x3d8c24+'):\x20\x22'+_0x348464[_0x2f0e5a(0x111)]+'\x22'+_0xad2a06;})['join']('\x0a');_0xa849f7='\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'+_0xdb3db4;}const _0x2e2abb=_0x167157?.['canonicalFlow']?_0x1848f6(0xe2)+_0x167157['canonicalFlow']:'',_0xc232aa=_0x48622f?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x94e157+'.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.':'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x55a2e5+'\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',_0x135015=_0x55a2e5?_0x53cd7c[_0x1848f6(0xcd)](quoteShellArg,_0x55a2e5):'',_0x2ae148=_0x48622f?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0xeb5932+'\x20open`,\x20then\x20`'+_0xeb5932+_0x1848f6(0x127)+_0xeb5932+_0x1848f6(0x146)+_0x2e3a4a+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0xeb5932+_0x1848f6(0x113)+_0x35f7e4+'`\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`'+_0xeb5932+_0x1848f6(0x116)+_0x124191+_0x1848f6(0x118)+_0xeb5932+_0x1848f6(0x100):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0xeb5932+'\x20open\x20'+_0x135015+'`,\x20then\x20`'+_0xeb5932+'\x20tracing-start`,\x20then\x20`'+_0xeb5932+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x2e3a4a+_0x1848f6(0xd5)+_0xeb5932+'\x20snapshot\x20--filename\x20'+_0x35f7e4+'`\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`'+_0xeb5932+'\x20screenshot\x20--filename\x20'+_0x124191+_0x1848f6(0x141)+_0xeb5932+_0x1848f6(0xe6),_0x278106=_0x48622f?_0x1848f6(0x152):'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a-\x20Login/sign-in/auth\x20pages\x20when\x20no\x20Authentication\x20section\x20is\x20present\x20in\x20this\x20prompt\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0x1e9ee0=_0x48aabe?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x48aabe+_0x1848f6(0x117):'';return _0x1848f6(0xf7)+_0xe0725b[_0x1848f6(0x151)]+_0x1b3c62+_0xa849f7+_0x2e2abb+_0x1848f6(0xff)+_0x1e239a+'\x0a\x0a'+_0xc232aa+_0x1e9ee0+'\x0a\x0a'+_0x2ae148+'\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`'+_0xeb5932+_0x1848f6(0x137)+_0x2e3a4a+_0x1848f6(0x14d)+_0x15a6b6+_0x1848f6(0x120)+_0x15b08c+_0x1848f6(0xd8)+_0x2e3a4a+_0x1848f6(0x128)+_0x1e994c+_0x1848f6(0x14a)+_0x53cd7c[_0x1848f6(0x132)](buildCliArtifactPath,_0x2e3a4a,_0x1848f6(0xd1))+_0x1848f6(0x14a)+buildCliArtifactPath(_0x2e3a4a,_0x53cd7c[_0x1848f6(0xdd)])+_0x1848f6(0xcc)+_0x53cd7c['Dxlld'](buildCliArtifactPath,_0x2e3a4a,_0x53cd7c['sIhLj'])+_0x1848f6(0x119)+_0x278106+_0x1848f6(0xdc);}export function summarizeVerifyFeatureCliCommandAvailability(_0x3f13d9){const _0x3f2be1=[..._0x3f13d9['keys']()]['sort']();let _0xc1d0a7=0x0;for(const _0x1fffc0 of _0x3f13d9['values']()){_0xc1d0a7+=_0x1fffc0;}return{'cliCommandCount':_0xc1d0a7,'cliCommandsSeen':_0x3f2be1,'noCliCommandsCalled':_0xc1d0a7===0x0};}export function createVerifyFeatureCliHooks(_0x224b45){const _0x30d599=_0x50bc,_0x140a2f={'NjvlN':'Bash','bODkm':function(_0x27579f,_0x5d6053){return _0x27579f(_0x5d6053);},'uZehJ':'tool_call','ZJmba':_0x30d599(0x125),'cBlko':function(_0x363d7e,_0x3c5fc1){return _0x363d7e!==_0x3c5fc1;},'JDQdW':_0x30d599(0xcf),'EQUdh':'tool_failure'},_0x819c26=new Map(),_0x481302=async _0x5a80e8=>{const _0x4d50fe=_0x30d599;if(_0x5a80e8['hook_event_name']!==_0x4d50fe(0x10a))return{};const _0x38ab9d=_0x5a80e8;if(_0x38ab9d[_0x4d50fe(0x106)]!==_0x140a2f['NjvlN'])return{};const _0x3e2487=_0x38ab9d[_0x4d50fe(0x11f)],_0x266403=_0x140a2f[_0x4d50fe(0xd0)](extractBashCommand,_0x3e2487);if(!_0x266403)return{};const _0x53a4a6=parsePlaywrightCliCommand(_0x266403);if(!_0x53a4a6)return{};return _0x819c26[_0x4d50fe(0xeb)](_0x53a4a6,(_0x819c26['get'](_0x53a4a6)||0x0)+0x1),_0x224b45['trackPhaseStart'](_0x140a2f[_0x4d50fe(0x10b)],{'transport':_0x140a2f['ZJmba'],'toolName':_0x53a4a6}),_0x224b45[_0x4d50fe(0x133)](_0x4d50fe(0x114),{'transport':'playwright-cli','toolName':_0x53a4a6,'bashCommandPreview':truncatePreview(_0x266403)}),_0x53a4a6!==_0x4d50fe(0x12e)&&console[_0x4d50fe(0xd9)](formatPlaywrightCliConsoleLogMessage(_0x3e2487,_0x266403,_0x53a4a6)),{};},_0x10f12e=async _0x34a7e0=>{const _0x312336=_0x30d599;if(_0x140a2f[_0x312336(0x123)](_0x34a7e0[_0x312336(0xd2)],_0x140a2f['JDQdW']))return{};const _0x30a1b1=_0x34a7e0;if(_0x30a1b1[_0x312336(0x106)]!==_0x312336(0xec))return{};return await _0x224b45[_0x312336(0xe5)](_0x140a2f[_0x312336(0x147)],_0x30a1b1['error'],{'transport':_0x140a2f['ZJmba'],'toolName':_0x140a2f[_0x312336(0x13d)]}),{};};return{'postToolUseHook':_0x481302,'postToolUseFailureHook':_0x10f12e,'commandCounts':_0x819c26};}async function runPlaywrightCliLifecycleCommand(_0x526c6e){const _0x3ab76b=_0x50bc,_0x1449da={'HQJMM':function(_0x384f5c,_0x58729a){return _0x384f5c(_0x58729a);},'ioSaC':function(_0x22c7b5,_0x25966f){return _0x22c7b5??_0x25966f;},'qJxiZ':function(_0x32e6c0,_0x3ca22d,_0x30b33f){return _0x32e6c0(_0x3ca22d,_0x30b33f);}},{sessionId:_0x1acf6f,configPath:_0x2b5029,commandArgs:_0x5c68b0,env:_0x90b0ff,telemetry:_0x2f53d4,phase:_0x54917c,metadata:_0x3eba4a,timeoutMs:_0x2862a5}=_0x526c6e;_0x2f53d4['trackPhaseStart'](_0x54917c,_0x3eba4a);try{const _0x531f41=await _0x1449da[_0x3ab76b(0x13b)](runPlaywrightCliCommand,{'sessionId':_0x1acf6f,'configPath':_0x2b5029,'commandArgs':_0x5c68b0,'cwd':process[_0x3ab76b(0xe9)](),'env':_0x90b0ff,'timeoutMs':_0x1449da[_0x3ab76b(0xfa)](_0x2862a5,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x2f53d4[_0x3ab76b(0x133)](_0x54917c,{..._0x3eba4a,'subcommand':_0x531f41[_0x3ab76b(0x13a)][_0x3ab76b(0xde)],'stdoutPreview':_0x1449da[_0x3ab76b(0xf6)](truncatePreview,_0x531f41['stdout'],0x7d0),'stderrPreview':_0x1449da['qJxiZ'](truncatePreview,_0x531f41['stderr'],0x7d0)});}catch(_0x36d913){await _0x2f53d4[_0x3ab76b(0xe5)](_0x54917c,_0x36d913,_0x3eba4a);throw _0x36d913;}}export async function finalizeVerifyFeatureCliSession(_0x1a1249){const _0x46b87a=_0x50bc,_0x41909a={'LyIMq':_0x46b87a(0x149),'IRVUP':function(_0x188d53,_0x3e9fef,_0x37eda6){return _0x188d53(_0x3e9fef,_0x37eda6);},'TDakC':'session-recording.webm','KqPIB':'playwright_cli_close'},{telemetry:_0x4dfef3,sessionId:_0x52c666,configPath:_0x15236d,cliArtifactDir:_0x2504a7,env:_0x28d892,transportMetadata:_0xc3079a}=_0x1a1249,_0x2c512c=[{'phase':_0x46b87a(0xe8),'commandArgs':[_0x41909a['LyIMq']]},{'phase':'playwright_cli_video_stop','commandArgs':['video-stop',_0x46b87a(0x124)+_0x41909a['IRVUP'](buildCliArtifactPath,_0x2504a7,_0x41909a[_0x46b87a(0xf0)])]},{'phase':_0x41909a['KqPIB'],'commandArgs':['close']}];for(const _0x2a70cb of _0x2c512c){try{await runPlaywrightCliLifecycleCommand({'sessionId':_0x52c666,'configPath':_0x15236d,'commandArgs':[..._0x2a70cb[_0x46b87a(0x153)]],'env':_0x28d892,'telemetry':_0x4dfef3,'phase':_0x2a70cb[_0x46b87a(0x107)],'metadata':_0xc3079a});}catch{}}}function _0x50bc(_0x5e62a1,_0x3b98f3){_0x5e62a1=_0x5e62a1-0xc8;const _0x2932c5=_0x2932();let _0x50bcd2=_0x2932c5[_0x5e62a1];return _0x50bcd2;}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x480a1c){const _0x5ed382=_0x50bc,_0x26abe8={'XJiyg':'trace.trace.zip'},_0x469083=[_0x5ed382(0xfc),_0x26abe8[_0x5ed382(0xe1)]];for(const _0x26188b of _0x469083){const _0x31f8e7=join(_0x480a1c,_0x26188b);try{return{'buffer':await readFile(_0x31f8e7),'source':_0x31f8e7};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x3120ec){const _0x1d1b4a=_0x50bc,_0x4fafee={'yeOfG':function(_0x223a5f,_0xb60d5f,_0x36800e){return _0x223a5f(_0xb60d5f,_0x36800e);},'jqLyz':function(_0x5a9484,_0x27cdd1){return _0x5a9484===_0x27cdd1;}},{cwd:_0x4bee08,cliArtifactDir:_0x2ae243,startTime:_0x53acef}=_0x3120ec,_0x52d590=[];await mkdir(_0x2ae243,{'recursive':!![]});const _0x43f21a=await readdir(_0x4bee08,{'withFileTypes':!![]});for(const _0x2dec05 of _0x43f21a){if(!_0x2dec05[_0x1d1b4a(0x10e)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x1d1b4a(0xf5)](_0x2dec05[_0x1d1b4a(0x135)]))continue;const _0x1044db=_0x4fafee['yeOfG'](join,_0x4bee08,_0x2dec05['name']),_0xbcd5e4=await stat(_0x1044db);if(_0xbcd5e4[_0x1d1b4a(0x129)]+0x7d0<_0x53acef)continue;const _0x4044f2=buildCliArtifactPath(_0x2ae243,_0x2dec05[_0x1d1b4a(0x135)]);if(_0x4fafee['jqLyz'](_0x1044db,_0x4044f2))continue;await rename(_0x1044db,_0x4044f2),_0x52d590['push'](_0x2dec05[_0x1d1b4a(0x135)]);}return _0x52d590['sort']();}
1
+ (function(_0x39ddb2,_0x180288){const _0x3599e5=_0x2a3a,_0x13028c=_0x39ddb2();while(!![]){try{const _0x4de75a=-parseInt(_0x3599e5(0xeb))/0x1+parseInt(_0x3599e5(0xfd))/0x2+parseInt(_0x3599e5(0x112))/0x3*(-parseInt(_0x3599e5(0xed))/0x4)+-parseInt(_0x3599e5(0xc7))/0x5+-parseInt(_0x3599e5(0x8f))/0x6+parseInt(_0x3599e5(0xcb))/0x7*(parseInt(_0x3599e5(0x10d))/0x8)+-parseInt(_0x3599e5(0xea))/0x9*(-parseInt(_0x3599e5(0xa8))/0xa);if(_0x4de75a===_0x180288)break;else _0x13028c['push'](_0x13028c['shift']());}catch(_0x109557){_0x13028c['push'](_0x13028c['shift']());}}}(_0x5b50,0x6c429));import{mkdir,readFile,readdir,rename,stat}from'fs/promises';import{basename,join}from'path';import{extractBashCommand,parsePlaywrightCliCommand,quoteShellArg,runPlaywrightCliCommand}from'./utils/playwrightCli.js';const PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS=0xea60,PLAYWRIGHT_CLI_PREVIEW_LIMIT=0xf0,VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN=/^(?:\d{2}_.+\.(?:png|ya?ml)|key_.+\.png|session-recording(?:-\d+)?\.webm|trace(?:\.trace)?(?:-\d+)?\.zip|current_snap\.ya?ml)$/i;function truncatePreview(_0x5cbf25,_0x51a712=PLAYWRIGHT_CLI_PREVIEW_LIMIT){const _0x2b8da=_0x2a3a,_0x285030={'bDiyP':function(_0x108167,_0x3b04ba){return _0x108167>_0x3b04ba;},'OLrZM':'...'};return _0x285030[_0x2b8da(0xa3)](_0x5cbf25[_0x2b8da(0xc2)],_0x51a712)?_0x5cbf25['slice'](0x0,_0x51a712)+_0x285030[_0x2b8da(0x99)]:_0x5cbf25;}function _0x5b50(){const _0x1c9409=['\x0a\x0a##\x20Browser\x20Command\x20Reference\x0aUse\x20Bash\x20to\x20run\x20Playwright\x20CLI\x20commands\x20with\x20this\x20exact\x20prefix:\x0a`','hbPAm','key_04_success-state.png','\x22\x0a-\x20Number\x20prefixes\x20(01_,\x2002_,\x20etc.)\x20help\x20maintain\x20chronological\x20order\x0a-\x20For\x20KEY\x20MOMENTS\x20that\x20prove\x20the\x20scenario\x20is\x20complete,\x20prefix\x20with\x20\x22key_\x22:\x20\x22','tool_call','TzNus','en-US','bDiyP','phase','QrIkh','target','select\x20tab\x20','1352210pwVBrb','`\x0a7.\x20Click\x20the\x20\x22Learn\x20More\x22\x20link\x20with\x20Playwright\x20CLI\x0a8.\x20Run\x20`','aEsWT','\x20screenshot\x20--filename\x20','cwd','tab-new','GnzXE','tracing-stop','screenshot','WwMNw','`\x0a10.\x20Return\x20immediately\x20with\x20the\x20structured\x20output\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','run\x20custom\x20Playwright\x20code','log','JMCuP','trace.zip','AVgYe','canonicalFlow','OkLeW','split','snapshot','02_learn-more.yml','mbAlp','start\x20video\x20recording','mxGaR','bXvcb','notes','length','Reviewer','\x20open\x20https://www.mozilla.org`\x0a2.\x20Run\x20`','select\x20tab','--filename=','1088305DCAzCx','tVLaX','isFile','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','581ALCWng','stdout','aRWUy','jMHtN','textContent','name','PvXAl','ljock','`\x0a\x0a-\x20Write\x20all\x20artifacts\x20under\x20`','oTYkC','`\x0a-\x20`snapshot\x20--filename\x20','\x20run-code\x20\x22<playwright\x20code>\x22`.\x0a7.\x20Do\x20not\x20run\x20`close`,\x20`tracing-stop`,\x20or\x20`video-stop`;\x20the\x20host\x20finalizes\x20the\x20session\x20and\x20artifacts.\x0a8.\x20After\x20completing\x20the\x20verification,\x20evaluate\x20whether\x20the\x20result\x20adequately\x20verifies\x20the\x20scenario','NpVUQ','unaddressedComments','\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','`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`','-\x20[','ObrVs','tool_name','dqhyM','vKbsi','playwright-cli','description',']\x20**','subcommand','DEBUG','open\x20new\x20tab\x20','mtimeMs','stop\x20tracing','Daeyd','playwright_cli_close','72tbVXEp','220246bMbJkP','playwright_cli_tracing_stop','16rDETlk','ZLrVI','PmjaY','set','`\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`','mJhTT','`\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`','fill','`\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`','.\x0aThis\x20is\x20NOT\x20a\x20web\x20app\x20—\x20there\x20is\x20no\x20URL\x20to\x20navigate\x20to.\x20The\x20app\x20is\x20already\x20running\x20and\x20connected.','aIVBW','LBIwj','BQlKE','selector','biElC','ZKRvx','238278lJNmSZ','**\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','RpCCE','replace','nrefd','map','`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a6.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`','\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','03_learn-more.png','\x20(on\x20element:\x20<','authorEmail','test','\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','session-recording.webm','trackPhaseError','45128iNhNzu','click\x20','error','element','UojSy','100365vxDzMw','capture\x20snapshot\x20`','\x20tracing-start`,\x20then\x20`','tXyPo','XJowA','\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.','zFkKv','vSUbN','authorName','content','TlIsl','check','[ranger-verification-agent]\x20','hook_event_name','open\x20browser','stop\x20video\x20recording','domRef','3923700WrIqwK','invocation','stringify','\x20video-start`\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`','sort','toLocaleDateString','01_initial-state.png','open\x20new\x20tab','\x20tracing-start`\x0a3.\x20Run\x20`','click','OLrZM','match','`\x0a9.\x20Run\x20`'];_0x5b50=function(){return _0x1c9409;};return _0x5b50();}function buildCliArtifactPath(_0x1e4fae,_0x5eb2dd){return join(_0x1e4fae,_0x5eb2dd);}function toStepDisplayName(_0x24d9a9){const _0x2a4c55=_0x2a3a,_0x5cda1b=basename(_0x24d9a9)['replace'](/\.(?:png|ya?ml)$/i,'')[_0x2a4c55(0x101)](/^key_/i,'')[_0x2a4c55(0x101)](/^\d+_/,'')[_0x2a4c55(0x101)](/-/g,'\x20');return{'name':_0x5cda1b,'isKeyStep':/^key_/i[_0x2a4c55(0x109)](basename(_0x24d9a9))};}function extractShellValue(_0x298e02){if(!_0x298e02)return null;return _0x298e02[0x1]??_0x298e02[0x2]??_0x298e02[0x3]??null;}function extractFilenameOption(_0x485d03){const _0x54b5a2=_0x2a3a,_0x2da070={'aRWUy':function(_0x5f1bb4,_0xf6667c){return _0x5f1bb4(_0xf6667c);}};return _0x2da070[_0x54b5a2(0xcd)](extractShellValue,_0x485d03[_0x54b5a2(0x9a)](/--filename(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function _0x2a3a(_0x4d55aa,_0x5a22e3){_0x4d55aa=_0x4d55aa-0x8f;const _0x5b506e=_0x5b50();let _0x2a3a6a=_0x5b506e[_0x4d55aa];return _0x2a3a6a;}function extractFirstCommandArgument(_0x549162,_0x31c211){const _0x3666ae={'FoJew':'\x5c$&'},_0x19fd80=_0x31c211['replace'](/[.*+?^${}()|[\]\\]/g,_0x3666ae['FoJew']);return extractShellValue(_0x549162['match'](new RegExp('(?:^|\x5cs)'+_0x19fd80+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x1e8a80){const _0x5dcfbe=_0x2a3a,_0x4b7196={'cLauK':_0x5dcfbe(0xa6),'bXvcb':function(_0x50528f,_0x3b6e6d,_0xc53396){return _0x50528f(_0x3b6e6d,_0xc53396);}};if(!_0x1e8a80)return _0x4b7196['cLauK'];if(/^e\d+$/i['test'](_0x1e8a80))return'ref\x20'+_0x1e8a80;return JSON[_0x5dcfbe(0x91)](_0x4b7196[_0x5dcfbe(0xc0)](truncatePreview,_0x1e8a80,0x78));}function formatPlaywrightCliLog(_0x1583db,_0x2b9324){const _0x42dd07=_0x2a3a,_0x1889ce={'LBIwj':'open','nrefd':function(_0x4726fc,_0x554e9f,_0x3dfe72){return _0x4726fc(_0x554e9f,_0x3dfe72);},'dqhyM':'start\x20tracing','LwoGl':'video-start','vKbsi':'video-stop','BQlKE':_0x42dd07(0x121),'oTYkC':function(_0x4301e5,_0x2d480c){return _0x4301e5(_0x2d480c);},'hlxus':'capture\x20screenshot','PvXAl':_0x42dd07(0x98),'Daeyd':function(_0x5710a2,_0x4101fc){return _0x5710a2(_0x4101fc);},'NpVUQ':_0x42dd07(0xf4),'ftjpC':function(_0x44c577,_0x24be06,_0x4c6c4e){return _0x44c577(_0x24be06,_0x4c6c4e);},'UyuHq':'run-code','EjnAY':_0x42dd07(0xb3),'XJowA':_0x42dd07(0xad),'aEsWT':'tab-select','ZkcsC':_0x42dd07(0xc5)};switch(_0x2b9324){case _0x1889ce[_0x42dd07(0xf8)]:{const _0x50701c=_0x1889ce['nrefd'](extractFirstCommandArgument,_0x1583db,_0x2b9324);return _0x50701c?'open\x20'+_0x50701c:_0x42dd07(0x120);}case'tracing-start':return _0x1889ce[_0x42dd07(0xde)];case _0x42dd07(0xaf):return _0x42dd07(0xe7);case _0x1889ce['LwoGl']:return _0x42dd07(0xbe);case _0x1889ce[_0x42dd07(0xdf)]:return _0x1889ce[_0x42dd07(0xf9)];case _0x42dd07(0xbb):{const _0x451a29=_0x1889ce[_0x42dd07(0xd4)](extractFilenameOption,_0x1583db);if(!_0x451a29)return'capture\x20snapshot';const {name:_0x286ae2}=_0x1889ce[_0x42dd07(0xd4)](toStepDisplayName,_0x451a29);return _0x42dd07(0x113)+_0x286ae2+'`';}case _0x42dd07(0xb0):{const _0x5da3be=extractFilenameOption(_0x1583db);if(!_0x5da3be)return _0x1889ce['hlxus'];const {name:_0x14bf62,isKeyStep:_0x2e8180}=_0x1889ce[_0x42dd07(0xd4)](toStepDisplayName,_0x5da3be);return _0x2e8180?'capture\x20key\x20step\x20`'+_0x14bf62+'`':'capture\x20step\x20`'+_0x14bf62+'`';}case _0x1889ce[_0x42dd07(0xd1)]:return _0x42dd07(0x10e)+formatCommandTarget(extractFirstCommandArgument(_0x1583db,_0x2b9324));case _0x42dd07(0x11d):return'check\x20'+_0x1889ce[_0x42dd07(0xe8)](formatCommandTarget,_0x1889ce[_0x42dd07(0x102)](extractFirstCommandArgument,_0x1583db,_0x2b9324));case _0x1889ce[_0x42dd07(0xd7)]:return'fill\x20'+_0x1889ce[_0x42dd07(0xe8)](formatCommandTarget,extractFirstCommandArgument(_0x1583db,_0x2b9324));case'press':return'press\x20'+_0x1889ce['Daeyd'](formatCommandTarget,_0x1889ce['ftjpC'](extractFirstCommandArgument,_0x1583db,_0x2b9324));case _0x1889ce['UyuHq']:return _0x1889ce['EjnAY'];case _0x1889ce[_0x42dd07(0x116)]:{const _0x47dd98=extractFirstCommandArgument(_0x1583db,_0x2b9324);return _0x47dd98?_0x42dd07(0xe5)+_0x47dd98:_0x42dd07(0x96);}case _0x1889ce[_0x42dd07(0xaa)]:{const _0xbd5c9b=_0x1889ce[_0x42dd07(0x102)](extractFirstCommandArgument,_0x1583db,_0x2b9324);return _0xbd5c9b?_0x42dd07(0xa7)+_0xbd5c9b:_0x1889ce['ZkcsC'];}default:return _0x2b9324;}}function extractPlaywrightCliToolDescription(_0x555104){const _0x23814e=_0x2a3a,_0x33e24d={'DiawZ':function(_0x539214,_0x550a7a){return _0x539214!==_0x550a7a;}},_0x1f84a1=_0x555104[_0x23814e(0xe1)];if(_0x33e24d['DiawZ'](typeof _0x1f84a1,'string'))return null;const _0x467b4e=_0x1f84a1['trim']()['replace'](/\s+/g,'\x20');return _0x467b4e[_0x23814e(0xc2)]>0x0?_0x467b4e:null;}export function formatPlaywrightCliConsoleLogMessage(_0x4e7736,_0x588ea3,_0x117e15){const _0x5d7729=_0x2a3a,_0x32710a={'RpCCE':function(_0x5ec0d,_0x4bc8f4,_0x4e43ad){return _0x5ec0d(_0x4bc8f4,_0x4e43ad);}},_0x3aa0a0=_0x32710a[_0x5d7729(0x100)](formatPlaywrightCliLog,_0x588ea3,_0x117e15),_0x14c1f1=extractPlaywrightCliToolDescription(_0x4e7736);if(!_0x14c1f1)return'[playwright-cli]\x20'+_0x3aa0a0;if(process['env'][_0x5d7729(0xe4)])return'[ranger-verification-agent]\x20'+_0x14c1f1+'\x20('+_0x3aa0a0+')';return _0x5d7729(0x11e)+_0x14c1f1;}export function buildVerifyFeatureCliDebugPrompt(_0x1ba676,_0xba4192){const _0x48ddd2=_0x2a3a,_0x37d3c0={'jMHtN':'00_mozilla-homepage.yml','OlFez':function(_0x46cf1e,_0x1d5c76,_0x468ebd){return _0x46cf1e(_0x1d5c76,_0x468ebd);},'fKUxv':'01_mozilla-homepage.png','tXyPo':_0x48ddd2(0xbc),'mxGaR':function(_0x4ac786,_0x53562c){return _0x4ac786(_0x53562c);}},_0x31cc06=buildCliArtifactPath(_0xba4192,_0x37d3c0[_0x48ddd2(0xce)]),_0x52c8ae=_0x37d3c0['OlFez'](buildCliArtifactPath,_0xba4192,_0x37d3c0['fKUxv']),_0xcefd58=buildCliArtifactPath(_0xba4192,_0x37d3c0[_0x48ddd2(0x115)]),_0x5e3880=buildCliArtifactPath(_0xba4192,_0x48ddd2(0x106)),_0x30e115=quoteShellArg(_0x31cc06),_0x5de7c8=_0x37d3c0['mxGaR'](quoteShellArg,_0x52c8ae),_0x459e49=_0x37d3c0[_0x48ddd2(0xbf)](quoteShellArg,_0xcefd58),_0x3f4197=quoteShellArg(_0x5e3880);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Playwright\x20CLI\x20only.\x20The\x20browser\x20command\x20prefix\x20is:\x0a'+_0x1ba676+'\x0a\x0a1.\x20Run\x20`'+_0x1ba676+_0x48ddd2(0xc4)+_0x1ba676+_0x48ddd2(0x97)+_0x1ba676+_0x48ddd2(0x92)+_0xba4192+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a5.\x20Run\x20`'+_0x1ba676+'\x20snapshot\x20--filename\x20'+_0x30e115+'`\x0a5.\x20Read\x20the\x20snapshot\x20file\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20reference\x0a6.\x20Run\x20`'+_0x1ba676+'\x20screenshot\x20--filename\x20'+_0x5de7c8+_0x48ddd2(0xa9)+_0x1ba676+'\x20snapshot\x20--filename\x20'+_0x459e49+_0x48ddd2(0x9b)+_0x1ba676+'\x20screenshot\x20--filename\x20'+_0x3f4197+_0x48ddd2(0xb2);}export function buildVerifyFeatureCliPrompt(_0x52785a){const _0xc1f474=_0x2a3a,_0xd4bf80={'QrIkh':_0xc1f474(0xa2),'mJhTT':'short','VHyQb':'numeric','zFkKv':_0xc1f474(0xc3),'TlIsl':'\x20>\x20','PmjaY':_0xc1f474(0x110),'ZKRvx':function(_0x1defa0,_0x393cf2,_0x584850){return _0x1defa0(_0x393cf2,_0x584850);},'aIVBW':'02_state.yml','UzSdT':_0xc1f474(0x95),'ljock':function(_0x4ec0a1,_0x2cb9d3){return _0x4ec0a1(_0x2cb9d3);},'vSUbN':function(_0x5dd359,_0x592cf2){return _0x5dd359(_0x592cf2);},'tVLaX':function(_0x58a43c,_0x2d28d4){return _0x58a43c(_0x2d28d4);},'UojSy':function(_0x203148,_0x266228){return _0x203148>_0x266228;},'TzNus':function(_0x153f79,_0x4adc67,_0x32c24b){return _0x153f79(_0x4adc67,_0x32c24b);},'mbAlp':'02_button-clicked.png','OkLeW':'03_result-visible.png','AAPHU':function(_0x27c9e5,_0x5a1ff5,_0x2d8054){return _0x27c9e5(_0x5a1ff5,_0x2d8054);}},{checklistItem:_0x565beb,itemFeedback:_0x1ca551,taskDescription:_0x400d71,cliCommandPrefix:_0x4566cd,cliArtifactDir:_0x5e01fb,isCdpMode:_0x77750b,url:_0x2f7063,cdpEndpoint:_0x34d013,loginInstructions:_0x31c277}=_0x52785a,_0x9b57f1=_0xd4bf80[_0xc1f474(0xfc)](buildCliArtifactPath,_0x5e01fb,'01_initial.yml'),_0x1641f3=_0xd4bf80[_0xc1f474(0xfc)](buildCliArtifactPath,_0x5e01fb,_0xd4bf80[_0xc1f474(0xf7)]),_0x304736=_0xd4bf80[_0xc1f474(0xfc)](buildCliArtifactPath,_0x5e01fb,'key_03_success-state.png'),_0x22bdc4=buildCliArtifactPath(_0x5e01fb,_0xd4bf80['UzSdT']),_0x4bbf48=quoteShellArg(_0x9b57f1),_0x3c6b79=_0xd4bf80[_0xc1f474(0xd2)](quoteShellArg,_0x1641f3),_0x3bbabc=_0xd4bf80[_0xc1f474(0x119)](quoteShellArg,_0x304736),_0x5c5f3f=_0xd4bf80[_0xc1f474(0xc8)](quoteShellArg,_0x22bdc4),_0x254f73=_0x565beb[_0xc1f474(0xc1)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x565beb[_0xc1f474(0xc1)]:'';let _0x25c64e='';if(_0x1ca551&&_0xd4bf80[_0xc1f474(0x111)](_0x1ca551['unaddressedComments']['length'],0x0)){const _0x2f52d2=_0x1ca551[_0xc1f474(0xd8)][_0xc1f474(0x103)](_0x46b044=>{const _0x1e31c6=_0xc1f474,_0x4f2a7f=new Date(_0x46b044['createdAt'])[_0x1e31c6(0x94)](_0xd4bf80[_0x1e31c6(0xa5)],{'month':_0xd4bf80[_0x1e31c6(0xf2)],'day':_0xd4bf80['VHyQb']}),_0x1aa566=_0x46b044[_0x1e31c6(0x11a)]||_0x46b044[_0x1e31c6(0x108)]||_0xd4bf80[_0x1e31c6(0x118)],_0x30ae3e=_0x46b044[_0x1e31c6(0x122)]?_0x1e31c6(0x107)+(_0x46b044['domRef'][_0x1e31c6(0xfa)]['split'](_0xd4bf80[_0x1e31c6(0x11c)])['pop']()?.[_0x1e31c6(0xba)](':')[0x0]||_0xd4bf80[_0x1e31c6(0xef)])+'>\x20\x22'+(_0x46b044['domRef'][_0x1e31c6(0xcf)]||'')['slice'](0x0,0x32)+'\x22)':'';return _0x1e31c6(0xdb)+_0x46b044['id']+_0x1e31c6(0xe2)+_0x1aa566+_0x1e31c6(0xfe)+_0x4f2a7f+'):\x20\x22'+_0x46b044[_0x1e31c6(0x11b)]+'\x22'+_0x30ae3e;})['join']('\x0a');_0x25c64e=_0xc1f474(0xd9)+_0x2f52d2;}const _0x5c355c=_0x1ca551?.[_0xc1f474(0xb8)]?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x1ca551[_0xc1f474(0xb8)]:'',_0x241a33=_0x77750b?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20(Chrome\x20DevTools\x20Protocol)\x20at\x20'+_0x34d013+_0xc1f474(0xf6):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x2f7063+_0xc1f474(0x105),_0x2ff3a4=_0x2f7063?_0xd4bf80['tVLaX'](quoteShellArg,_0x2f7063):'',_0x580625=_0x77750b?'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x4566cd+'\x20open`,\x20then\x20`'+_0x4566cd+'\x20tracing-start`,\x20then\x20`'+_0x4566cd+_0xc1f474(0x10a)+_0x5e01fb+_0xc1f474(0xda)+_0x4566cd+'\x20snapshot\x20--filename\x20'+_0x4bbf48+_0xc1f474(0xf5)+_0x4566cd+_0xc1f474(0xab)+_0x5c5f3f+_0xc1f474(0x104)+_0x4566cd+_0xc1f474(0xd6):'##\x20Instructions\x0a1.\x20Use\x20Bash\x20plus\x20Playwright\x20CLI\x20only.\x20Do\x20NOT\x20call\x20MCP\x20browser\x20tools.\x0a2.\x20Start\x20by\x20running\x20`'+_0x4566cd+'\x20open\x20'+_0x2ff3a4+'`,\x20then\x20`'+_0x4566cd+_0xc1f474(0x114)+_0x4566cd+'\x20video-start`.\x0a3.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x5e01fb+'`\x20using\x20absolute\x20paths\x20only.\x20Do\x20not\x20use\x20relative\x20filenames.\x0a4.\x20Take\x20a\x20snapshot\x20with\x20`'+_0x4566cd+'\x20snapshot\x20--filename\x20'+_0x4bbf48+_0xc1f474(0xf1)+_0x4566cd+'\x20screenshot\x20--filename\x20'+_0x5c5f3f+'`\x20style\x20absolute\x20paths\x20at\x20key\x20moments.\x0a8.\x20If\x20you\x20need\x20waits\x20or\x20custom\x20assertions,\x20use\x20`'+_0x4566cd+'\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',_0x38995e=_0x77750b?'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20taking\x20the\x20initial\x20snapshot,\x20IMMEDIATELY\x20check\x20for\x20blocking\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20Crash\x20or\x20error\x20dialogs\x20(\x22An\x20error\x20occurred\x22,\x20\x22Something\x20went\x20wrong\x22,\x20unhandled\x20exception\x20messages)\x0a-\x20Blank\x20or\x20empty\x20window\x20with\x20no\x20rendered\x20content\x0a-\x20Framework\x20error\x20boundaries\x20(React\x20error\x20page,\x20Electron\x20crash\x20reporter)\x0a-\x20Unresponsive\x20or\x20frozen\x20UI\x20(no\x20interactive\x20elements\x20in\x20snapshot)\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22App\x20crashed\x20—\x20error\x20dialog\x20visible\x20on\x20launch\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20type:\x20\x22APP_ERROR\x22\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.':'\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20step\x202\x20(taking\x20initial\x20snapshot),\x20IMMEDIATELY\x20check\x20for\x20blocking\x20HTTP\x20errors:\x0a\x0a**Blocking\x20errors\x20to\x20detect:**\x0a-\x20HTTP\x20404:\x20\x22404\x22,\x20\x22Not\x20Found\x22,\x20\x22Page\x20not\x20found\x22,\x20\x22does\x20not\x20exist\x22\x0a-\x20HTTP\x20500:\x20\x22500\x22,\x20\x22Internal\x20Server\x20Error\x22,\x20\x22Server\x20Error\x22,\x20\x22Something\x20went\x20wrong\x22\x0a-\x20HTTP\x20400:\x20\x22400\x22,\x20\x22Bad\x20Request\x22,\x20\x22Invalid\x20request\x22\x0a\x0a**Also\x20check\x20for:**\x0a-\x20Framework\x20error\x20pages\x20(Next.js\x20error\x20boundary,\x20React\x20error\x20page,\x20\x22Application\x20error\x22)\x0a-\x20Completely\x20blank/empty\x20pages\x20with\x20no\x20content\x0a-\x20\x22Cannot\x20GET\x20/path\x22\x20messages\x0a-\x20Login/sign-in/auth\x20pages\x20when\x20no\x20Authentication\x20section\x20is\x20present\x20in\x20this\x20prompt\x0a\x0a**If\x20ANY\x20blocking\x20error\x20is\x20detected:**\x0a1.\x20DO\x20NOT\x20continue\x20with\x20the\x20task\x0a2.\x20Return\x20IMMEDIATELY\x20with\x20evaluation:\x20\x22blocked\x22\x0a3.\x20Set\x20evaluationReason\x20to\x20describe\x20the\x20specific\x20error\x20(e.g.,\x20\x22HTTP\x20404\x20-\x20Page\x20not\x20found\x20at\x20/dashboard\x22)\x0a4.\x20Include\x20the\x20error\x20in\x20issues\x20array\x20with\x20severity:\x20\x22BLOCKER\x22\x20and\x20appropriate\x20type\x20(HTTP_404,\x20HTTP_500,\x20HTTP_400,\x20or\x20NAVIGATION_ERROR)\x0a\x0aThis\x20early\x20exit\x20prevents\x20wasting\x20time\x20on\x20tasks\x20that\x20cannot\x20succeed\x20due\x20to\x20fundamental\x20errors.',_0xa5422=_0x31c277?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20you\x20MUST\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x31c277+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20immediately\x20with\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return _0xc1f474(0xca)+_0x565beb['description']+_0x254f73+_0x25c64e+_0x5c355c+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x400d71+'\x0a\x0a'+_0x241a33+_0xa5422+'\x0a\x0a'+_0x580625+_0xc1f474(0x9c)+_0x4566cd+_0xc1f474(0xd3)+_0x5e01fb+_0xc1f474(0xd5)+_0x3c6b79+'`\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'+_0x3bbabc+_0xc1f474(0xf3)+_0x5e01fb+'`:\x20\x22'+_0x22bdc4+'\x22,\x20\x22'+_0xd4bf80[_0xc1f474(0xa1)](buildCliArtifactPath,_0x5e01fb,_0xd4bf80[_0xc1f474(0xbd)])+'\x22,\x20\x22'+_0xd4bf80[_0xc1f474(0xfc)](buildCliArtifactPath,_0x5e01fb,_0xd4bf80[_0xc1f474(0xb9)])+_0xc1f474(0x9f)+_0xd4bf80['AAPHU'](buildCliArtifactPath,_0x5e01fb,_0xc1f474(0x9e))+_0xc1f474(0xff)+_0x38995e+_0xc1f474(0x117);}export function summarizeVerifyFeatureCliCommandAvailability(_0x203424){const _0x2592b0=_0x2a3a,_0x412fd4=[..._0x203424['keys']()][_0x2592b0(0x93)]();let _0x52e9f6=0x0;for(const _0x1a0c06 of _0x203424['values']()){_0x52e9f6+=_0x1a0c06;}return{'cliCommandCount':_0x52e9f6,'cliCommandsSeen':_0x412fd4,'noCliCommandsCalled':_0x52e9f6===0x0};}export function createVerifyFeatureCliHooks(_0x3352da){const _0x2a216e={'JMCuP':function(_0x118c8a,_0x458276){return _0x118c8a!==_0x458276;},'AVgYe':function(_0x161e82,_0x3d8de3){return _0x161e82(_0x3d8de3);},'GnzXE':'playwright-cli','Inopf':'snapshot','MpCbi':function(_0x38d08d,_0x1cc9f1){return _0x38d08d!==_0x1cc9f1;},'hbPAm':'Bash'},_0x4139a7=new Map(),_0x460026=async _0x49f25f=>{const _0x23a6c0=_0x2a3a;if(_0x49f25f[_0x23a6c0(0x11f)]!=='PostToolUse')return{};const _0x2fa1bb=_0x49f25f;if(_0x2a216e[_0x23a6c0(0xb5)](_0x2fa1bb[_0x23a6c0(0xdd)],'Bash'))return{};const _0x3c1a31=_0x2fa1bb['tool_input'],_0x32233f=_0x2a216e['AVgYe'](extractBashCommand,_0x3c1a31);if(!_0x32233f)return{};const _0x29f749=parsePlaywrightCliCommand(_0x32233f);if(!_0x29f749)return{};return _0x4139a7[_0x23a6c0(0xf0)](_0x29f749,(_0x4139a7['get'](_0x29f749)||0x0)+0x1),_0x3352da['trackPhaseStart']('tool_call',{'transport':_0x2a216e['GnzXE'],'toolName':_0x29f749}),_0x3352da['trackPhaseEnd'](_0x23a6c0(0xa0),{'transport':_0x23a6c0(0xe0),'toolName':_0x29f749,'bashCommandPreview':_0x2a216e[_0x23a6c0(0xb7)](truncatePreview,_0x32233f)}),_0x2a216e['JMCuP'](_0x29f749,_0x2a216e['Inopf'])&&console[_0x23a6c0(0xb4)](formatPlaywrightCliConsoleLogMessage(_0x3c1a31,_0x32233f,_0x29f749)),{};},_0x2ad988=async _0x4f368b=>{const _0x35a62f=_0x2a3a;if(_0x4f368b['hook_event_name']!=='PostToolUseFailure')return{};const _0x1c3a19=_0x4f368b;if(_0x2a216e['MpCbi'](_0x1c3a19[_0x35a62f(0xdd)],'Bash'))return{};return await _0x3352da['trackPhaseError']('tool_failure',_0x1c3a19[_0x35a62f(0x10f)],{'transport':_0x2a216e[_0x35a62f(0xae)],'toolName':_0x2a216e[_0x35a62f(0x9d)]}),{};};return{'postToolUseHook':_0x460026,'postToolUseFailureHook':_0x2ad988,'commandCounts':_0x4139a7};}async function runPlaywrightCliLifecycleCommand(_0xa35bd5){const _0x29a473=_0x2a3a,_0x11afe5={'IfsCP':function(_0x328a90,_0x171a83){return _0x328a90(_0x171a83);},'vVQPX':function(_0x51fd4d,_0xfaaa00){return _0x51fd4d??_0xfaaa00;},'xbmvY':function(_0x5506e7,_0x356731,_0x370783){return _0x5506e7(_0x356731,_0x370783);}},{sessionId:_0x5bae77,configPath:_0x44eb6a,commandArgs:_0x2ceeaa,env:_0x393624,telemetry:_0x37736b,phase:_0x5a804d,metadata:_0x2f327b,timeoutMs:_0x58d2bf}=_0xa35bd5;_0x37736b['trackPhaseStart'](_0x5a804d,_0x2f327b);try{const _0xa47e6d=await _0x11afe5['IfsCP'](runPlaywrightCliCommand,{'sessionId':_0x5bae77,'configPath':_0x44eb6a,'commandArgs':_0x2ceeaa,'cwd':process[_0x29a473(0xac)](),'env':_0x393624,'timeoutMs':_0x11afe5['vVQPX'](_0x58d2bf,PLAYWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x37736b['trackPhaseEnd'](_0x5a804d,{..._0x2f327b,'subcommand':_0xa47e6d[_0x29a473(0x90)][_0x29a473(0xe3)],'stdoutPreview':_0x11afe5['xbmvY'](truncatePreview,_0xa47e6d[_0x29a473(0xcc)],0x7d0),'stderrPreview':truncatePreview(_0xa47e6d['stderr'],0x7d0)});}catch(_0x294763){await _0x37736b[_0x29a473(0x10c)](_0x5a804d,_0x294763,_0x2f327b);throw _0x294763;}}export async function finalizeVerifyFeatureCliSession(_0x500517){const _0x1860ab=_0x2a3a,_0x423d91={'aMWZV':'playwright_cli_video_stop','ZLrVI':'video-stop','UZwEf':function(_0x250b22,_0x5dc667,_0x57fa77){return _0x250b22(_0x5dc667,_0x57fa77);},'EBnpF':_0x1860ab(0xe9),'biElC':function(_0xb9a82a,_0x56d24a){return _0xb9a82a(_0x56d24a);}},{telemetry:_0x2ac68f,sessionId:_0x49ef73,configPath:_0x24db89,cliArtifactDir:_0x477a7d,env:_0x123c13,transportMetadata:_0x4cd74f}=_0x500517,_0x56ef16=[{'phase':_0x1860ab(0xec),'commandArgs':['tracing-stop']},{'phase':_0x423d91['aMWZV'],'commandArgs':[_0x423d91[_0x1860ab(0xee)],_0x1860ab(0xc6)+_0x423d91['UZwEf'](buildCliArtifactPath,_0x477a7d,_0x1860ab(0x10b))]},{'phase':_0x423d91['EBnpF'],'commandArgs':['close']}];for(const _0x4c277e of _0x56ef16){try{await _0x423d91[_0x1860ab(0xfb)](runPlaywrightCliLifecycleCommand,{'sessionId':_0x49ef73,'configPath':_0x24db89,'commandArgs':[..._0x4c277e['commandArgs']],'env':_0x123c13,'telemetry':_0x2ac68f,'phase':_0x4c277e[_0x1860ab(0xa4)],'metadata':_0x4cd74f});}catch{}}}export async function loadVerifyFeatureCliTraceUploadArtifact(_0x89805d){const _0x307d6c=_0x2a3a,_0xdaec4f={'cxJBY':_0x307d6c(0xb6),'xukXl':'trace.trace.zip'},_0x4c4b27=[_0xdaec4f['cxJBY'],_0xdaec4f['xukXl']];for(const _0x10e6d1 of _0x4c4b27){const _0x2daf6d=join(_0x89805d,_0x10e6d1);try{return{'buffer':await readFile(_0x2daf6d),'source':_0x2daf6d};}catch{}}return null;}export async function rehomeVerifyFeatureCliArtifacts(_0x5840bd){const _0x5595d7=_0x2a3a,_0x24871f={'ObrVs':function(_0x507786,_0x113134,_0x5a6e44){return _0x507786(_0x113134,_0x5a6e44);},'DzXCV':function(_0x10cfe0,_0x3c71cc){return _0x10cfe0(_0x3c71cc);},'WwMNw':function(_0x544a13,_0x554423){return _0x544a13<_0x554423;},'bkhDc':function(_0x479fdb,_0x2eda4e){return _0x479fdb===_0x2eda4e;}},{cwd:_0x40bd2c,cliArtifactDir:_0x346ba3,startTime:_0x181522}=_0x5840bd,_0x550dbe=[];await mkdir(_0x346ba3,{'recursive':!![]});const _0x1ef664=await readdir(_0x40bd2c,{'withFileTypes':!![]});for(const _0x566e57 of _0x1ef664){if(!_0x566e57[_0x5595d7(0xc9)]()||!VERIFY_FEATURE_CLI_ARTIFACT_FILE_PATTERN[_0x5595d7(0x109)](_0x566e57[_0x5595d7(0xd0)]))continue;const _0x368fa1=_0x24871f[_0x5595d7(0xdc)](join,_0x40bd2c,_0x566e57[_0x5595d7(0xd0)]),_0x28386f=await _0x24871f['DzXCV'](stat,_0x368fa1);if(_0x24871f[_0x5595d7(0xb1)](_0x28386f[_0x5595d7(0xe6)]+0x7d0,_0x181522))continue;const _0x5f312d=buildCliArtifactPath(_0x346ba3,_0x566e57[_0x5595d7(0xd0)]);if(_0x24871f['bkhDc'](_0x368fa1,_0x5f312d))continue;await rename(_0x368fa1,_0x5f312d),_0x550dbe['push'](_0x566e57[_0x5595d7(0xd0)]);}return _0x550dbe[_0x5595d7(0x93)]();}
@@ -1 +1 @@
1
- const _0x2fac39=_0x3809;(function(_0x3029f7,_0xbc6692){const _0x5371e1=_0x3809,_0xa75ddf=_0x3029f7();while(!![]){try{const _0x24cdc6=parseInt(_0x5371e1(0x14e))/0x1+parseInt(_0x5371e1(0x7c))/0x2*(parseInt(_0x5371e1(0xe3))/0x3)+-parseInt(_0x5371e1(0xac))/0x4*(parseInt(_0x5371e1(0x14a))/0x5)+parseInt(_0x5371e1(0xfc))/0x6*(parseInt(_0x5371e1(0x10e))/0x7)+-parseInt(_0x5371e1(0x150))/0x8*(parseInt(_0x5371e1(0x14f))/0x9)+-parseInt(_0x5371e1(0x9c))/0xa*(parseInt(_0x5371e1(0x7d))/0xb)+parseInt(_0x5371e1(0x117))/0xc;if(_0x24cdc6===_0xbc6692)break;else _0xa75ddf['push'](_0xa75ddf['shift']());}catch(_0x349443){_0xa75ddf['push'](_0xa75ddf['shift']());}}}(_0x3a38,0x7a4fb));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([_0x2fac39(0xed),_0x2fac39(0xae),'verify',_0x2fac39(0x14c),_0x2fac39(0x96),'wait-for',_0x2fac39(0x13c),_0x2fac39(0xba)]),execFileAsync=promisify(execFile);function _0x3809(_0x19de59,_0x431318){_0x19de59=_0x19de59-0x76;const _0x3a38c2=_0x3a38();let _0x380957=_0x3a38c2[_0x19de59];return _0x380957;}function buildCliArtifactPath(_0x227b15,_0x106dff){return join(_0x227b15,_0x106dff);}export class NovaActArtifactRecorder{[_0x2fac39(0x153)];['browser']=null;['context']=null;['frameSession']=null;['frameWrites']=[];[_0x2fac39(0x104)]=0x0;[_0x2fac39(0x103)]=0x0;['traceSampleTimer']=null;['traceSampleInFlight']=null;['tracingStarted']=![];[_0x2fac39(0x134)]=![];[_0x2fac39(0xa3)]=![];['stopped']=![];constructor(_0x1a6a8e){const _0x10fa4b=_0x2fac39;this[_0x10fa4b(0x153)]=_0x1a6a8e;}async[_0x2fac39(0x11b)](){const _0x546c89=_0x2fac39,_0x3980a7={'wbvvH':_0x546c89(0xfa)};if(this[_0x546c89(0xa3)])return;this['startAttempted']=!![];const _0x3d7fb5=await this[_0x546c89(0x126)](),_0x4c2a0c=_0x3d7fb5[_0x546c89(0x152)];if(!_0x4c2a0c)throw new Error('Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20'+this[_0x546c89(0x153)]['novaOptions']['sessionId']);await mkdir(this['params'][_0x546c89(0x80)],{'recursive':!![]}),this['browser']=await chromium['connectOverCDP'](_0x4c2a0c,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x546c89(0x149)]=this['browser'][_0x546c89(0x11c)]()[0x0]??null;if(!this['context'])throw new Error('Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context');await this['context']['tracing'][_0x546c89(0x11b)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this['tracingStarted']=!![],this[_0x546c89(0x114)](),await this['startScreencast'](),this['params'][_0x546c89(0xdb)][_0x546c89(0x81)]('nova_act_artifact_recording',{...this['params']['transportMetadata'],'cdpEndpoint':_0x4c2a0c,'browserPid':_0x3d7fb5[_0x546c89(0x113)],'sessionState':_0x3d7fb5[_0x546c89(0x119)]}),this['params']['telemetry']['trackPhaseEnd'](_0x3980a7[_0x546c89(0xea)],{...this[_0x546c89(0x153)]['transportMetadata'],'tracingStarted':this['tracingStarted'],'screencastStarted':this[_0x546c89(0x134)]});}async['stop'](){const _0x575ab2=_0x2fac39,_0x2c0f01={'VSrJV':_0x575ab2(0x14b)};if(this[_0x575ab2(0x10b)])return;this[_0x575ab2(0x10b)]=!![];const _0x425cce={...this[_0x575ab2(0x153)]['transportMetadata'],'frameCount':this[_0x575ab2(0x104)],'traceSampleCount':this['traceSampleCount'],'tracingStarted':this[_0x575ab2(0xc0)],'screencastStarted':this['screencastStarted']};this['params']['telemetry'][_0x575ab2(0x81)](_0x2c0f01['VSrJV'],_0x425cce);try{await this['stopTraceSampling'](),await this[_0x575ab2(0x12b)](),await this['stopScreencast'](),await Promise[_0x575ab2(0x99)](this['frameWrites']);this['context']&&this[_0x575ab2(0xc0)]&&await this[_0x575ab2(0x149)][_0x575ab2(0x82)]['stop']({'path':buildCliArtifactPath(this[_0x575ab2(0x153)][_0x575ab2(0x80)],'trace.zip')});const _0x2346c1=await this['encodeScreencastVideo']();this[_0x575ab2(0x153)][_0x575ab2(0xdb)][_0x575ab2(0x13e)]('nova_act_artifact_recording_stop',{..._0x425cce,'videoPath':_0x2346c1});}catch(_0x673986){await this[_0x575ab2(0x153)]['telemetry']['trackPhaseError'](_0x575ab2(0x14b),_0x673986,_0x425cce);}finally{await this[_0x575ab2(0x100)]?.[_0x575ab2(0x124)]()[_0x575ab2(0x85)](()=>undefined),this[_0x575ab2(0x100)]=null,this[_0x575ab2(0x149)]=null,this[_0x575ab2(0x12d)]=null;}}async['readSessionMetadataWithRetry'](){const _0x281d1b=_0x2fac39,_0x398134={'PtlgL':function(_0xecfaba,_0xc77a6e,_0x25939f,_0x5ed785,_0x1afd06,_0x419e43){return _0xecfaba(_0xc77a6e,_0x25939f,_0x5ed785,_0x1afd06,_0x419e43);},'oZJkx':_0x281d1b(0x8e),'bpOKM':'sessions','CEoWi':function(_0x3be861,_0x15b58d){return _0x3be861-_0x15b58d;}},_0x422fdf=_0x398134[_0x281d1b(0xc8)](join,homedir(),_0x398134[_0x281d1b(0xb6)],_0x281d1b(0x100),_0x398134['bpOKM'],this[_0x281d1b(0x153)]['novaOptions'][_0x281d1b(0x78)]+_0x281d1b(0x83)),_0x156320=Date['now']();let _0x40d3bc;do{try{const _0x49f5dc=JSON['parse'](await readFile(_0x422fdf,_0x281d1b(0x12e)));if(_0x49f5dc['cdp_endpoint'])return _0x49f5dc;_0x40d3bc=new Error('Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20'+_0x422fdf);}catch(_0x36f615){_0x40d3bc=_0x36f615;}await delay(0x64);}while(_0x398134['CEoWi'](Date['now'](),_0x156320)<NOVA_ARTIFACT_METADATA_WAIT_MS);if(_0x40d3bc instanceof Error)throw _0x40d3bc;throw new Error(_0x281d1b(0x125)+_0x422fdf);}async['startScreencast'](){const _0x58c8bc=_0x2fac39,_0x1a133d={'gxVeS':function(_0x192263,_0x859bec,_0x2a9ae6){return _0x192263(_0x859bec,_0x2a9ae6);},'Cilig':function(_0x1c2db9,_0x2e2277){return _0x1c2db9(_0x2e2277);},'aqHwb':'Page.screencastFrame','QIHoh':'Page.startScreencast','MtGUx':'jpeg'};if(!this[_0x58c8bc(0x149)])return;const _0x548bb5=this['context'][_0x58c8bc(0x9e)]()[0x0];if(!_0x548bb5)return;const _0x1f0ef3=this[_0x58c8bc(0x94)]();await mkdir(_0x1f0ef3,{'recursive':!![]});const _0x9053=await this[_0x58c8bc(0x149)]['newCDPSession'](_0x548bb5);this[_0x58c8bc(0x12d)]=_0x9053,_0x9053['on'](_0x1a133d[_0x58c8bc(0x122)],_0x42daf4=>{const _0x235e06=_0x58c8bc,_0x1882ff=++this[_0x235e06(0x104)],_0x3f130b=_0x1a133d[_0x235e06(0x7e)](join,_0x1f0ef3,'frame-'+_0x1a133d['Cilig'](String,_0x1882ff)['padStart'](0x6,'0')+'.jpg'),_0x441faf=writeFile(_0x3f130b,Buffer['from'](_0x42daf4['data'],'base64'))[_0x235e06(0x85)](()=>undefined)['finally'](()=>_0x9053['send'](_0x235e06(0x10f),{'sessionId':_0x42daf4[_0x235e06(0x78)]}))['then'](()=>undefined)[_0x235e06(0x85)](()=>undefined);this['frameWrites'][_0x235e06(0xaf)](_0x441faf);}),await _0x9053['send'](_0x1a133d['QIHoh'],{'format':_0x1a133d[_0x58c8bc(0xb9)],'quality':0x4b,'everyNthFrame':0x6}),this[_0x58c8bc(0x134)]=!![];}async[_0x2fac39(0x136)](){const _0x49cef9=_0x2fac39,_0x5e5039={'NQNrM':'Page.stopScreencast'};if(!this['frameSession']||!this[_0x49cef9(0x134)])return;await this['frameSession']['send'](_0x5e5039['NQNrM'])['catch'](()=>undefined);}[_0x2fac39(0x114)](){const _0x4b4c00=_0x2fac39,_0x4e8469={'qxegz':function(_0x415da6,_0x36a643,_0x17a650){return _0x415da6(_0x36a643,_0x17a650);}};this['queueTraceSample'](),this[_0x4b4c00(0xf4)]=_0x4e8469[_0x4b4c00(0xdc)](setInterval,()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}[_0x2fac39(0x92)](){const _0x4e4832=_0x2fac39;if(this['traceSampleInFlight'])return;this[_0x4e4832(0x14d)]=this[_0x4e4832(0x12b)]()[_0x4e4832(0x13d)](()=>{const _0x2b093b=_0x4e4832;this[_0x2b093b(0x14d)]=null;});}async['stopTraceSampling'](){const _0x515fc3=_0x2fac39,_0x401daa={'SPrJM':function(_0x1d4182,_0x34d7f3){return _0x1d4182(_0x34d7f3);}};this['traceSampleTimer']&&(_0x401daa[_0x515fc3(0x123)](clearInterval,this[_0x515fc3(0xf4)]),this['traceSampleTimer']=null),await this[_0x515fc3(0x14d)]?.[_0x515fc3(0x85)](()=>undefined);}async['captureTraceSample'](){const _0x3fcaf1=_0x2fac39,_0x23c096={'EoLva':'body'},_0x59c711=this[_0x3fcaf1(0x149)]?.['pages']()[0x0];if(!_0x59c711)return;try{await _0x59c711[_0x3fcaf1(0xce)](_0x23c096[_0x3fcaf1(0x143)])[_0x3fcaf1(0x138)](_0x578e66=>_0x578e66['tagName'],undefined,{'timeout':0x3e8}),this['traceSampleCount']++;}catch{}}async[_0x2fac39(0xff)](){const _0x22f471=_0x2fac39,_0x496c7b={'BwSDA':function(_0x262d57,_0x3facef){return _0x262d57<_0x3facef;},'sntdc':function(_0x5d9c41,_0x3b9972,_0x56b985){return _0x5d9c41(_0x3b9972,_0x56b985);},'wEoRR':_0x22f471(0x101),'kbhKC':_0x22f471(0x84),'przje':'-hide_banner','AoUZd':_0x22f471(0xdd),'bzRTQ':_0x22f471(0x112),'QRuEw':_0x22f471(0x146),'IfPOn':_0x22f471(0xf3)};if(_0x496c7b[_0x22f471(0x86)](this['frameCount'],0x2))return null;const _0x9ddc77=await resolveFfmpegPath();if(!_0x9ddc77)return null;const _0x1378cc=_0x496c7b[_0x22f471(0x137)](join,this[_0x22f471(0x153)][_0x22f471(0x80)],_0x496c7b['wEoRR']);await _0x496c7b[_0x22f471(0x137)](mkdir,_0x1378cc,{'recursive':!![]});const _0x22596a=join(_0x1378cc,_0x496c7b['kbhKC']);return await execFileAsync(_0x9ddc77,['-y',_0x496c7b[_0x22f471(0xd1)],_0x496c7b['AoUZd'],_0x22f471(0xfe),_0x22f471(0x151),'10','-i',_0x496c7b['sntdc'](join,this[_0x22f471(0x94)](),_0x496c7b[_0x22f471(0x120)]),'-vf',_0x496c7b['QRuEw'],'-c:v',_0x22f471(0xc6),'-pix_fmt',_0x496c7b[_0x22f471(0xdf)],_0x22596a]),_0x22596a;}['getFrameDir'](){const _0x4ffc1a=_0x2fac39,_0x594066={'Pykxw':function(_0x1181fb,_0x214ca9,_0x137ffd){return _0x1181fb(_0x214ca9,_0x137ffd);},'qzILX':_0x4ffc1a(0xef)};return _0x594066[_0x4ffc1a(0xd9)](join,this['params']['cliArtifactDir'],_0x594066[_0x4ffc1a(0xbf)]);}}async function delay(_0xd2e81e){await new Promise(_0x14ab15=>setTimeout(_0x14ab15,_0xd2e81e));}async function resolveFfmpegPath(){const _0xd58384=_0x2fac39,_0xc54004={'GbpFu':function(_0xd9ae0a,_0x5d8b41){return _0xd9ae0a(_0x5d8b41);},'LJoBk':'ffmpeg','SsomF':function(_0x302c98,_0x3bee67,_0x1174cb,_0xc2d848,_0x3cb29f){return _0x302c98(_0x3bee67,_0x1174cb,_0xc2d848,_0x3cb29f);},'JoXQO':function(_0x3ca95d){return _0x3ca95d();},'nQjSn':'Library','pOTJR':_0xd58384(0xbc),'JFcFC':function(_0x4de6b9,_0x178b78,_0x27ea53,_0x5730cd){return _0x4de6b9(_0x178b78,_0x27ea53,_0x5730cd);},'qmoNY':function(_0x3c0140,_0x43da0b){return _0x3c0140(_0x43da0b);}};if(await _0xc54004[_0xd58384(0xf0)](canRunFfmpeg,_0xc54004['LJoBk']))return _0xc54004['LJoBk'];const _0x5e578f=[_0xc54004['SsomF'](join,_0xc54004[_0xd58384(0xa5)](homedir),_0xc54004[_0xd58384(0x116)],_0xd58384(0xc5),_0xc54004[_0xd58384(0xd8)]),_0xc54004[_0xd58384(0xb7)](join,homedir(),'.cache',_0xc54004['pOTJR'])];for(const _0x196b7b of _0x5e578f){try{const _0x49d8db=await readdir(_0x196b7b),_0x477ae3=_0x49d8db[_0xd58384(0xa7)](_0x54ffc8=>_0x54ffc8[_0xd58384(0xeb)](_0xd58384(0xd6)))[_0xd58384(0xa0)]()[_0xd58384(0xd0)]()[_0xd58384(0x109)](_0x35f264=>[join(_0x196b7b,_0x35f264,'ffmpeg-mac'),join(_0x196b7b,_0x35f264,_0xd58384(0x7a)),join(_0x196b7b,_0x35f264,'ffmpeg.exe')]);for(const _0x484867 of _0x477ae3){if(await _0xc54004[_0xd58384(0x128)](canRunFfmpeg,_0x484867))return _0x484867;}}catch{}}return null;}async function canRunFfmpeg(_0x505163){try{return await execFileAsync(_0x505163,['-version']),!![];}catch{return![];}}function toStepDisplayName(_0x52d072){const _0x5e0ab2=_0x2fac39,_0x1ac2d8={'FlFue':function(_0xe28b7d,_0x5b19f0){return _0xe28b7d(_0x5b19f0);}},_0x4594ba=basename(_0x52d072)[_0x5e0ab2(0xf2)](/\.(?:png|ya?ml)$/i,'')[_0x5e0ab2(0xf2)](/^key_/i,'')['replace'](/^\d+_/,'')[_0x5e0ab2(0xf2)](/-/g,'\x20');return{'name':_0x4594ba,'isKeyStep':/^key_/i['test'](_0x1ac2d8['FlFue'](basename,_0x52d072))};}function extractShellValue(_0x3d4668){if(!_0x3d4668)return null;return _0x3d4668[0x1]??_0x3d4668[0x2]??_0x3d4668[0x3]??null;}function extractOutputOption(_0x81ef3a){const _0xbb4514=_0x2fac39;return extractShellValue(_0x81ef3a[_0xbb4514(0x88)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x17302d,_0x17c3ef){const _0x3daec7=_0x2fac39,_0x44ee34={'FLvGH':'execute','aqsdA':'verify','GUPma':'ask','oSrSo':_0x3daec7(0xa9),'GcYsA':_0x3daec7(0x110),'gMlbO':_0x3daec7(0x8f),'lfWOl':_0x3daec7(0x95),'dQCCA':_0x3daec7(0x13c),'qjxuz':'capture\x20snapshot','xLQOf':function(_0x17e969,_0x36628f){return _0x17e969(_0x36628f);},'KIfqa':_0x3daec7(0xba),'ujrie':_0x3daec7(0xd7),'lnBBY':_0x3daec7(0xb8)};switch(_0x17c3ef){case'session\x20create':return'create\x20Nova\x20browser\x20session';case _0x44ee34['FLvGH']:return'execute\x20Nova\x20browser\x20action';case _0x44ee34[_0x3daec7(0xc1)]:return'verify\x20page\x20condition';case _0x44ee34['GUPma']:return _0x44ee34[_0x3daec7(0xda)];case'goto':return _0x44ee34['GcYsA'];case _0x44ee34[_0x3daec7(0xa8)]:return _0x44ee34['lfWOl'];case _0x44ee34['dQCCA']:{const _0xa7cd6=extractOutputOption(_0x17302d);if(!_0xa7cd6)return _0x44ee34[_0x3daec7(0x11e)];const {name:_0x5e9792}=_0x44ee34[_0x3daec7(0xf6)](toStepDisplayName,_0xa7cd6);return'capture\x20snapshot\x20`'+_0x5e9792+'`';}case _0x44ee34[_0x3daec7(0x7f)]:{const _0x4141cb=extractOutputOption(_0x17302d);if(!_0x4141cb)return _0x44ee34['ujrie'];const {name:_0x7f3042,isKeyStep:_0xca4803}=_0x44ee34[_0x3daec7(0xf6)](toStepDisplayName,_0x4141cb);return _0xca4803?'capture\x20key\x20step\x20`'+_0x7f3042+'`':'capture\x20step\x20`'+_0x7f3042+'`';}case'session\x20export':return _0x44ee34['lnBBY'];default:return _0x17c3ef;}}function getNovaActCliCommandBlockReason(_0x38f1ab){const _0x3af525=_0x2fac39,_0x126f7a={'ptkrZ':_0x3af525(0x127),'SNfUX':'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.'},_0x14f384=parseNovaActCliCommand(_0x38f1ab);if(!_0x14f384)return'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.';if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS['has'](_0x14f384))return _0x3af525(0xb2)+_0x14f384+_0x3af525(0x9b);if(_0x14f384===_0x3af525(0x77)&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i['test'](_0x38f1ab))return _0x126f7a[_0x3af525(0xa1)];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/[_0x3af525(0x12c)](_0x38f1ab))return _0x126f7a[_0x3af525(0xe5)];return null;}function buildFeedbackSection(_0xecd32a){const _0x2200b6=_0x2fac39,_0x161f17={'nRQGH':_0x2200b6(0xc9),'VCEFB':_0x2200b6(0xd5),'dAKdP':'numeric'};if(!_0xecd32a||_0xecd32a['unaddressedComments']['length']===0x0)return'';const _0x11c93c=_0xecd32a[_0x2200b6(0x10c)][_0x2200b6(0x11f)](_0x4b9b9e=>{const _0x657cd2=_0x2200b6,_0x3924cc=new Date(_0x4b9b9e['createdAt'])[_0x657cd2(0x13b)](_0x161f17[_0x657cd2(0xb3)],{'month':_0x161f17[_0x657cd2(0xa4)],'day':_0x161f17[_0x657cd2(0x13a)]}),_0x216dfb=_0x4b9b9e['authorName']||_0x4b9b9e['authorEmail']||'Reviewer',_0x2ffe4c=_0x4b9b9e[_0x657cd2(0xbb)]?_0x657cd2(0x111)+(_0x4b9b9e['domRef']['selector'][_0x657cd2(0x8d)]('\x20>\x20')['pop']()?.[_0x657cd2(0x8d)](':')[0x0]||_0x657cd2(0x139))+_0x657cd2(0x147)+(_0x4b9b9e['domRef']['textContent']||'')['slice'](0x0,0x32)+'\x22)':'';return'-\x20['+_0x4b9b9e['id']+_0x657cd2(0x105)+_0x216dfb+_0x657cd2(0xbe)+_0x3924cc+_0x657cd2(0x11a)+_0x4b9b9e[_0x657cd2(0xf8)]+'\x22'+_0x2ffe4c;})['join']('\x0a');return'\x0a\x0a##\x20Reviewer\x20Feedback\x20to\x20Address\x0aThe\x20following\x20reviewer\x20comments\x20were\x20left\x20on\x20the\x20previous\x20version\x20of\x20this\x20item.\x0aVerify\x20that\x20each\x20concern\x20has\x20been\x20addressed\x20in\x20the\x20current\x20implementation.\x0aFor\x20each\x20comment\x20you\x20believe\x20has\x20been\x20addressed,\x20include\x20its\x20ID\x20in\x20addressedCommentIds.\x0a\x0a'+_0x11c93c;}function buildNovaSharedOptionsInstruction(_0x1734e0){const _0x3b5be1=_0x2fac39;if(!_0x1734e0['trim']())return _0x3b5be1(0xf1);return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0x1734e0;}export function buildVerifyFeatureNovaCliDebugPrompt(_0x38e313){const _0x28a306=_0x2fac39,_0x49de8b={'hwdWf':function(_0x56c9de,_0x1927b2,_0x3d4c57){return _0x56c9de(_0x1927b2,_0x3d4c57);},'leshA':function(_0x2e23d0,_0x5c474e,_0x3974f3){return _0x2e23d0(_0x5c474e,_0x3974f3);},'rezlk':'01_initial-state.png','zNrqn':'02_final-state.yml','EmNCD':'03_final-state.png','uqEzI':function(_0x3942ba,_0xcedcb1){return _0x3942ba(_0xcedcb1);}},{novaCommandPrefix:_0x3cb711,novaSharedOptionsSuffix:_0x10bd11,cliArtifactDir:_0x3de723,url:_0x33bd26}=_0x38e313,_0x2c98a5=_0x49de8b['hwdWf'](buildCliArtifactPath,_0x3de723,_0x28a306(0xfb)),_0x582448=_0x49de8b['leshA'](buildCliArtifactPath,_0x3de723,_0x49de8b[_0x28a306(0xe1)]),_0x5a4b2e=buildCliArtifactPath(_0x3de723,_0x49de8b[_0x28a306(0x87)]),_0xe94134=buildCliArtifactPath(_0x3de723,_0x49de8b['EmNCD']);return _0x28a306(0x142)+_0x3cb711+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x10bd11)+'\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`'+_0x3cb711+'\x20session\x20create\x20'+quoteShellArg(_0x33bd26)+'\x20'+_0x10bd11+_0x28a306(0x8a)+_0x3cb711+'\x20snapshot\x20--output\x20'+_0x49de8b[_0x28a306(0x118)](quoteShellArg,_0x2c98a5)+'\x20'+_0x10bd11+'`\x0a3.\x20Run\x20`'+_0x3cb711+_0x28a306(0x97)+quoteShellArg(_0x582448)+'\x20'+_0x10bd11+'`\x0a4.\x20Run\x20one\x20batched\x20`'+_0x3cb711+_0x28a306(0xb0)+_0x3cb711+_0x28a306(0xb5)+quoteShellArg(_0x5a4b2e)+'\x20'+_0x10bd11+'`\x0a6.\x20Run\x20`'+_0x3cb711+_0x28a306(0x97)+quoteShellArg(_0xe94134)+'\x20'+_0x10bd11+_0x28a306(0xd4)+_0x3de723+'`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function buildVerifyFeatureNovaCliPrompt(_0x2ee959){const _0x1a67df=_0x2fac39,_0x158113={'CtCRW':function(_0x51230d,_0x5a498e){return _0x51230d(_0x5a498e);},'cMiAY':function(_0xd5b24a,_0x14087f,_0x57ba95){return _0xd5b24a(_0x14087f,_0x57ba95);},'mqqnS':'01_initial.yml','vJpRN':'01_initial-state.png','XIqgv':function(_0x473ba9,_0x2427f7,_0x1e8d9c){return _0x473ba9(_0x2427f7,_0x1e8d9c);},'XVNDP':function(_0x482b45,_0x19ee03){return _0x482b45(_0x19ee03);}},{checklistItem:_0x138d14,itemFeedback:_0x87232f,taskDescription:_0x5e4de9,novaCommandPrefix:_0x135115,novaSharedOptionsSuffix:_0x50f024,cliArtifactDir:_0x5a827b,url:_0x69c873,loginInstructions:_0x1bb789}=_0x2ee959,_0x1519ba=_0x138d14[_0x1a67df(0xee)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x138d14[_0x1a67df(0xee)]:'',_0x59b51e=_0x158113['CtCRW'](buildFeedbackSection,_0x87232f),_0x1864db=_0x87232f?.[_0x1a67df(0x13f)]?_0x1a67df(0x98)+_0x87232f['canonicalFlow']:'',_0x5f000b=_0x1bb789?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x1bb789+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x2ccda2=_0x158113[_0x1a67df(0xe4)](buildCliArtifactPath,_0x5a827b,_0x158113[_0x1a67df(0x12a)]),_0x4cce71=buildCliArtifactPath(_0x5a827b,_0x158113['vJpRN']),_0x5812ad=_0x158113['XIqgv'](buildCliArtifactPath,_0x5a827b,_0x1a67df(0xf9));return _0x1a67df(0x107)+_0x138d14[_0x1a67df(0x76)]+_0x1519ba+_0x59b51e+_0x1864db+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x5e4de9+_0x1a67df(0xe0)+_0x69c873+_0x1a67df(0x93)+_0x5f000b+_0x1a67df(0xad)+_0x135115+_0x1a67df(0xf5)+_0x158113['XVNDP'](quoteShellArg,_0x69c873)+'\x20'+_0x50f024+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x5a827b+_0x1a67df(0xd2)+_0x135115+_0x1a67df(0xb5)+_0x158113['CtCRW'](quoteShellArg,_0x2ccda2)+'\x20'+_0x50f024+'`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`'+_0x135115+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x4cce71)+'\x20'+_0x50f024+'`.\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`'+_0x5812ad+'`.\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`'+_0x135115+'`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a'+(_0x50f024[_0x1a67df(0xc4)]()?'`'+_0x50f024+'`':_0x1a67df(0xbd))+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0x50f024)+_0x1a67df(0x155)+_0x135115+'\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20'+_0x50f024+'`\x0a-\x20`'+_0x135115+_0x1a67df(0x140)+_0x50f024+_0x1a67df(0x9d)+_0x135115+_0x1a67df(0xb5)+quoteShellArg(_0x2ccda2)+'\x20'+_0x50f024+'`\x0a-\x20`'+_0x135115+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x5812ad)+'\x20'+_0x50f024+_0x1a67df(0x121);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x3316a4){const _0x4b24e9=_0x2fac39,_0x49c0e9=[..._0x3316a4[_0x4b24e9(0xcd)]()][_0x4b24e9(0xa0)]();let _0x5ae20e=0x0;for(const _0x43000b of _0x3316a4['values']()){_0x5ae20e+=_0x43000b;}return{'cliCommandCount':_0x5ae20e,'cliCommandsSeen':_0x49c0e9,'noCliCommandsCalled':_0x5ae20e===0x0};}export function createVerifyFeatureNovaCliHooks(_0x7fa5fd,_0x1c0037){const _0x1bfd4c=_0x2fac39,_0x245dda={'sheKJ':function(_0x3d1c47,_0x24d998){return _0x3d1c47!==_0x24d998;},'xpULn':'Bash','LQZTK':function(_0x49a363,_0x4c4036){return _0x49a363(_0x4c4036);},'kkNeJ':_0x1bfd4c(0xde),'tcAqd':function(_0x43c85f,_0x58dbc2){return _0x43c85f(_0x58dbc2);},'gteIe':function(_0x296d08,_0x1b5f31){return _0x296d08===_0x1b5f31;},'oINLG':_0x1bfd4c(0x141),'VXqLQ':function(_0x30dfe5,_0x4be8a5){return _0x30dfe5!==_0x4be8a5;},'TWkvJ':'PostToolUseFailure','fuihY':function(_0x457b4b,_0x2ed9be){return _0x457b4b!==_0x2ed9be;},'hlBuS':'nova_act_command_failure'},_0x2b2eb7=new Map(),_0x258caa=async _0x3459d4=>{const _0x5411b0=_0x1bfd4c;if(_0x3459d4['hook_event_name']!=='PreToolUse')return{};const _0x3654b7=_0x3459d4;if(_0x245dda['sheKJ'](_0x3654b7[_0x5411b0(0xc2)],_0x245dda[_0x5411b0(0xa6)]))return{};const _0x2bfd01=_0x3654b7['tool_input'],_0x2d78b9=extractBashCommand(_0x2bfd01);if(!_0x2d78b9)return{};const _0x36aee9=_0x245dda[_0x5411b0(0xa2)](getNovaActCliCommandBlockReason,_0x2d78b9);if(!_0x36aee9)return{};return{'decision':'block','reason':_0x36aee9};},_0xcd859d=async _0x38cb66=>{const _0xd625c3=_0x1bfd4c;if(_0x245dda['sheKJ'](_0x38cb66['hook_event_name'],'PostToolUse'))return{};const _0x2e31a0=_0x38cb66;if(_0x2e31a0[_0xd625c3(0xc2)]!==_0x245dda['xpULn'])return{};const _0x5a4805=_0x2e31a0['tool_input'],_0x3a9f6f=extractBashCommand(_0x5a4805);if(!_0x3a9f6f)return{};const _0x35f225=parseNovaActCliCommand(_0x3a9f6f);if(!_0x35f225)return{};_0x2b2eb7['set'](_0x35f225,(_0x2b2eb7['get'](_0x35f225)||0x0)+0x1),_0x7fa5fd[_0xd625c3(0x81)](_0x245dda[_0xd625c3(0x129)],{'subcommand':_0x35f225}),_0x7fa5fd['trackPhaseEnd'](_0x245dda['kkNeJ'],{'subcommand':_0x35f225,'commandPreview':_0x245dda[_0xd625c3(0xd3)](previewNovaActCliCommand,_0x3a9f6f)}),console[_0xd625c3(0xe7)](_0xd625c3(0x132)+formatNovaActCliLog(_0x3a9f6f,_0x35f225));if(_0x245dda['gteIe'](_0x35f225,'session\x20create')&&_0x1c0037)try{await _0x1c0037['start']();}catch(_0x391c4b){await _0x7fa5fd['trackPhaseError']('nova_act_artifact_recording',_0x391c4b,{'transport':_0x245dda[_0xd625c3(0x79)]});}return{};},_0x190b1b=async _0x4e9e6d=>{const _0x3b45b8=_0x1bfd4c;if(_0x245dda['VXqLQ'](_0x4e9e6d['hook_event_name'],_0x245dda['TWkvJ']))return{};const _0x11559b=_0x4e9e6d;if(_0x245dda['fuihY'](_0x11559b['tool_name'],_0x3b45b8(0xf7)))return{};return await _0x7fa5fd['trackPhaseError'](_0x245dda['hlBuS'],_0x11559b['error'],{'transport':_0x3b45b8(0x141),'toolName':'Bash'}),{};};return{'preToolUseHook':_0x258caa,'postToolUseHook':_0xcd859d,'postToolUseFailureHook':_0x190b1b,'commandCounts':_0x2b2eb7};}async function runNovaLifecycleCommand(_0x266fb5){const _0x2eeb28=_0x2fac39,_0xb7ba00={'SyyOg':function(_0x2c8a10,_0x3ab898){return _0x2c8a10(_0x3ab898);},'IUGNc':function(_0x2fe709,_0x47ebc7){return _0x2fe709(_0x47ebc7);},'qdYPc':function(_0x16c27a,_0xd8c5be){return _0x16c27a(_0xd8c5be);}},{novaOptions:_0x838a6,commandArgs:_0x20f517,telemetry:_0x3d5dc9,phase:_0x2ae0ad,metadata:_0x592fab,timeoutMs:_0x320aa5}=_0x266fb5;_0x3d5dc9['trackPhaseStart'](_0x2ae0ad,_0x592fab);try{const _0x367ac3=await _0xb7ba00[_0x2eeb28(0x145)](runNovaActCliCommand,{..._0x838a6,'commandArgs':_0x20f517,'cwd':process['cwd'](),'env':process['env'],'timeoutMs':_0x320aa5??NOVA_ACT_CLI_COMMAND_TIMEOUT_MS});_0x3d5dc9[_0x2eeb28(0x13e)](_0x2ae0ad,{..._0x592fab,'subcommand':_0x367ac3[_0x2eeb28(0x91)]['subcommand'],'commandPreview':_0xb7ba00[_0x2eeb28(0x9a)](previewNovaActCliCommand,_0x367ac3['invocation'][_0x2eeb28(0x131)]),'stdoutPreview':previewNovaActCliCommand(_0x367ac3[_0x2eeb28(0x115)]),'stderrPreview':_0xb7ba00[_0x2eeb28(0xca)](previewNovaActCliCommand,_0x367ac3[_0x2eeb28(0x90)]),'logDir':extractNovaActLogDir(_0x367ac3['stdout'])});}catch(_0x321501){await _0x3d5dc9[_0x2eeb28(0xe9)](_0x2ae0ad,_0x321501,_0x592fab);throw _0x321501;}}export async function finalizeVerifyFeatureNovaCliSession(_0x1d9205){const _0x48ff00=_0x2fac39,_0x434271={'Wkxwu':_0x48ff00(0xba),'nGYAT':_0x48ff00(0xb4),'yGNBL':_0x48ff00(0xe6),'FVghu':'snapshot','ApxfL':function(_0x2cc870,_0x19bede,_0x17ceec){return _0x2cc870(_0x19bede,_0x17ceec);},'XAuKE':_0x48ff00(0x133),'ObvDJ':_0x48ff00(0x130),'rzRVY':function(_0x5bcafe,_0x1ffcb8,_0x3328ef){return _0x5bcafe(_0x1ffcb8,_0x3328ef);},'wiWPf':_0x48ff00(0x135),'QECcn':'export','QjGLe':_0x48ff00(0x156),'kbfch':_0x48ff00(0x102),'LxWyW':_0x48ff00(0xab),'aLxHj':'close'},{telemetry:_0x1e2266,novaOptions:_0x37947a,cliArtifactDir:_0xfe5e52,transportMetadata:_0x26e078,artifactRecorder:_0x385a63}=_0x1d9205,_0x53f7d1=[{'phase':_0x48ff00(0xec),'commandArgs':[_0x434271['Wkxwu'],_0x48ff00(0x130),buildCliArtifactPath(_0xfe5e52,_0x434271['nGYAT'])]},{'phase':_0x434271[_0x48ff00(0xcf)],'commandArgs':[_0x434271[_0x48ff00(0x8c)],_0x48ff00(0x130),_0x434271[_0x48ff00(0xcb)](buildCliArtifactPath,_0xfe5e52,'final-state.yaml')]},{'phase':_0x48ff00(0x8b),'commandArgs':[_0x434271['XAuKE'],'export',_0x48ff00(0xcc),'json',_0x434271[_0x48ff00(0xaa)],_0x434271['rzRVY'](buildCliArtifactPath,_0xfe5e52,_0x434271['wiWPf'])]},{'phase':'nova_act_session_report','commandArgs':['session',_0x434271['QECcn'],'--report',_0x434271[_0x48ff00(0xc3)],_0x434271['ApxfL'](buildCliArtifactPath,_0xfe5e52,_0x434271['kbfch'])]},{'phase':_0x434271[_0x48ff00(0x108)],'commandArgs':[_0x434271['XAuKE'],_0x434271['aLxHj']]}];for(const _0x2a31f3 of _0x53f7d1){_0x2a31f3[_0x48ff00(0xfd)]===_0x48ff00(0xab)&&await _0x385a63?.[_0x48ff00(0x144)]();try{await runNovaLifecycleCommand({'novaOptions':_0x37947a,'commandArgs':[..._0x2a31f3['commandArgs']],'telemetry':_0x1e2266,'phase':_0x2a31f3['phase'],'metadata':_0x26e078});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x5bc8bb){const _0x52656e=_0x2fac39,_0x458be4={'vwMDO':function(_0x2bb41c,_0x26f58d,_0xe6d0b4){return _0x2bb41c(_0x26f58d,_0xe6d0b4);},'neMQm':function(_0x2f2e2a,_0x4716a2){return _0x2f2e2a<_0x4716a2;},'jKjwo':function(_0x23c565,_0x3e5387){return _0x23c565+_0x3e5387;}},{cwd:_0x30b4e6,cliArtifactDir:_0x50eb1c,startTime:_0x5ed44a}=_0x5bc8bb,_0x59594d=[];await mkdir(_0x50eb1c,{'recursive':!![]});const _0x50aa64=await readdir(_0x30b4e6,{'withFileTypes':!![]});for(const _0x15dce3 of _0x50aa64){if(!_0x15dce3[_0x52656e(0x154)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x52656e(0x12c)](_0x15dce3['name']))continue;const _0x388a2f=_0x458be4[_0x52656e(0x89)](join,_0x30b4e6,_0x15dce3['name']),_0x2e8a5c=await stat(_0x388a2f);if(_0x458be4['neMQm'](_0x458be4[_0x52656e(0x12f)](_0x2e8a5c['mtimeMs'],0x7d0),_0x5ed44a))continue;const _0x534249=buildCliArtifactPath(_0x50eb1c,_0x15dce3[_0x52656e(0x148)]);if(_0x388a2f===_0x534249)continue;await rename(_0x388a2f,_0x534249),_0x59594d[_0x52656e(0xaf)](_0x15dce3['name']);}return _0x59594d[_0x52656e(0xa0)]();}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x21e0c6){const _0x50cef3=_0x2fac39,_0x5ac029={'vSPgn':function(_0x4d1d78,_0x562022,_0xc5add8){return _0x4d1d78(_0x562022,_0xc5add8);},'qdlaN':'trace.zip','riQgn':function(_0x56153d,_0x29dedd){return _0x56153d(_0x29dedd);}},_0xf53c87=_0x5ac029['vSPgn'](join,_0x21e0c6,_0x5ac029['qdlaN']);try{return{'buffer':await readFile(_0xf53c87),'source':_0xf53c87};}catch{return{'buffer':await _0x5ac029[_0x50cef3(0x9f)](zipVerifyFeatureNovaArtifacts,_0x21e0c6),'source':_0x21e0c6};}}async function zipVerifyFeatureNovaArtifacts(_0x3fd64b){const _0x3647e0=_0x2fac39,_0x31dd86={'ofPTN':function(_0x103253,_0x5d9635,_0x4c68af,_0x204cb9){return _0x103253(_0x5d9635,_0x4c68af,_0x204cb9);},'CsQKG':'zip','PgFHi':_0x3647e0(0xc7),'uOSTV':'nova-user-data/*','HRyon':function(_0x4f9b9d,_0x42e10a){return _0x4f9b9d(_0x42e10a);}},_0x3eea9d=_0x31dd86['ofPTN'](join,_0x3fd64b,'..','nova-artifacts.zip');try{return await _0x31dd86['ofPTN'](execFileAsync,_0x31dd86[_0x3647e0(0x106)],[_0x31dd86['PgFHi'],_0x3eea9d,'.','-x',_0x31dd86['uOSTV']],{'cwd':_0x3fd64b}),await _0x31dd86[_0x3647e0(0xb1)](readFile,_0x3eea9d);}finally{await rm(_0x3eea9d,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x4ded53){const _0x354da7=_0x2fac39,_0x1c3cee={'cqxam':function(_0x1efbf9,_0x47140c,_0x36aee3){return _0x1efbf9(_0x47140c,_0x36aee3);}},_0x5ceb66=buildNovaActCliInvocation(_0x4ded53['novaOptions'],_0x4ded53[_0x354da7(0x10a)]);return{'command':_0x5ceb66[_0x354da7(0xe8)],'args':_0x5ceb66[_0x354da7(0xe2)],'commandPreview':previewNovaActCliCommand(_0x5ceb66['shellCommand']),'subcommand':_0x5ceb66[_0x354da7(0x11d)],'sharedOptionsSuffix':_0x1c3cee[_0x354da7(0x7b)](buildNovaActCliSharedOptionsSuffix,_0x4ded53[_0x354da7(0x10d)],_0x4ded53['commandArgs'])};}function _0x3a38(){const _0xa50888=['stderr','invocation','queueTraceSample','\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','getFrameDir','wait\x20for\x20page\x20condition','goto','\x20screenshot\x20--output\x20','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','allSettled','IUGNc','`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.','10QXLCuM','`\x0a-\x20`','pages','riQgn','sort','ptkrZ','LQZTK','startAttempted','VCEFB','JoXQO','xpULn','filter','gMlbO','ask\x20page\x20question','ObvDJ','nova_act_session_close','30040PaJBCm','\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`','execute','push','\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`','HRyon','Nova\x20command\x20`','nRQGH','key_final-state.png','\x20snapshot\x20--output\x20','oZJkx','JFcFC','export\x20Nova\x20session','MtGUx','screenshot','domRef','ms-playwright','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','**\x20(','qzILX','tracingStarted','aqsdA','tool_name','QjGLe','trim','Caches','libvpx-vp9','-qr','PtlgL','en-US','qdYPc','ApxfL','--format','keys','locator','yGNBL','reverse','przje','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','tcAqd','`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`','short','ffmpeg-','capture\x20screenshot','pOTJR','Pykxw','oSrSo','telemetry','qxegz','-loglevel','nova_act_command','IfPOn','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','rezlk','args','999831lLuHJh','cMiAY','SNfUX','nova_act_final_snapshot','log','command','trackPhaseError','wbvvH','startsWith','nova_act_final_screenshot','session\x20create','notes','nova-video-frames','GbpFu','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.','replace','yuv420p','traceSampleTimer','\x20session\x20create\x20','xLQOf','Bash','content','key_03_success-state.png','nova_act_artifact_recording','00_initial-state.yml','3371946efcvAp','phase','error','encodeScreencastVideo','browser','videos','nova-report','traceSampleCount','frameCount',']\x20**','CsQKG','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','LxWyW','flatMap','commandArgs','stopped','unaddressedComments','novaOptions','7VwRPuB','Page.screencastFrameAck','navigate\x20browser','\x20(on\x20element:\x20<','frame-%06d.jpg','browser_pid','startTraceSampling','stdout','nQjSn','14129544dazadm','uqEzI','state','):\x20\x22','start','contexts','subcommand','qjxuz','map','bzRTQ','`\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.','aqHwb','SPrJM','close','Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20','readSessionMetadataWithRetry','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.','qmoNY','kkNeJ','mqqnS','captureTraceSample','test','frameSession','utf-8','jKjwo','--output','shellCommand','[nova-act-cli]\x20','session','screencastStarted','nova-session-export.json','stopScreencast','sntdc','evaluate','element','dAKdP','toLocaleDateString','snapshot','finally','trackPhaseEnd','canonicalFlow','\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20','nova-act-cli','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','EoLva','stop','SyyOg','scale=trunc(iw/2)*2:trunc(ih/2)*2','>\x20\x22','name','context','450WqDVVD','nova_act_artifact_recording_stop','ask','traceSampleInFlight','225005jdMKRL','9549soLvBB','2456ramsBV','-framerate','cdp_endpoint','params','isFile','\x0a\x0aExamples:\x0a-\x20`','--output-dir','description','verify','sessionId','oINLG','ffmpeg-linux','cqxam','2gXGutM','8746331TMxrby','gxVeS','KIfqa','cliArtifactDir','trackPhaseStart','tracing','.json','session-recording.webm','catch','BwSDA','zNrqn','match','vwMDO','`\x0a2.\x20Run\x20`','nova_act_session_export','FVghu','split','.act_cli','wait-for'];_0x3a38=function(){return _0xa50888;};return _0x3a38();}
1
+ const _0xe620d5=_0x50f2;(function(_0x817a4,_0x355e23){const _0x5ea058=_0x50f2,_0x5e0902=_0x817a4();while(!![]){try{const _0x44bf34=parseInt(_0x5ea058(0x283))/0x1+parseInt(_0x5ea058(0x1f4))/0x2+parseInt(_0x5ea058(0x216))/0x3+-parseInt(_0x5ea058(0x295))/0x4*(parseInt(_0x5ea058(0x224))/0x5)+-parseInt(_0x5ea058(0x1ef))/0x6+-parseInt(_0x5ea058(0x22b))/0x7+parseInt(_0x5ea058(0x26e))/0x8;if(_0x44bf34===_0x355e23)break;else _0x5e0902['push'](_0x5e0902['shift']());}catch(_0x34db32){_0x5e0902['push'](_0x5e0902['shift']());}}}(_0x5947,0xe1644));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([_0xe620d5(0x228),'execute','verify','ask','goto','wait-for','snapshot',_0xe620d5(0x259)]),execFileAsync=promisify(execFile);function buildCliArtifactPath(_0x19063a,_0x1d9ee1){return join(_0x19063a,_0x1d9ee1);}export class NovaActArtifactRecorder{[_0xe620d5(0x287)];[_0xe620d5(0x218)]=null;['context']=null;[_0xe620d5(0x1e9)]=null;['frameWrites']=[];[_0xe620d5(0x222)]=0x0;[_0xe620d5(0x1d3)]=0x0;[_0xe620d5(0x1df)]=null;['traceSampleInFlight']=null;[_0xe620d5(0x208)]=![];['screencastStarted']=![];[_0xe620d5(0x1e5)]=![];[_0xe620d5(0x267)]=![];constructor(_0x2ac057){this['params']=_0x2ac057;}async[_0xe620d5(0x1fa)](){const _0x444ad6=_0xe620d5,_0x154819={'pltGI':function(_0x49e16f,_0x3b3c8c,_0xea7c0b){return _0x49e16f(_0x3b3c8c,_0xea7c0b);}};if(this[_0x444ad6(0x1e5)])return;this[_0x444ad6(0x1e5)]=!![];const _0x24a547=await this['readSessionMetadataWithRetry'](),_0x32daf5=_0x24a547['cdp_endpoint'];if(!_0x32daf5)throw new Error(_0x444ad6(0x201)+this['params']['novaOptions']['sessionId']);await _0x154819['pltGI'](mkdir,this[_0x444ad6(0x287)]['cliArtifactDir'],{'recursive':!![]}),this[_0x444ad6(0x218)]=await chromium[_0x444ad6(0x227)](_0x32daf5,{'timeout':NOVA_ARTIFACT_CDP_CONNECT_TIMEOUT_MS}),this[_0x444ad6(0x1c9)]=this['browser']['contexts']()[0x0]??null;if(!this[_0x444ad6(0x1c9)])throw new Error('Nova\x20CDP\x20connection\x20did\x20not\x20expose\x20a\x20browser\x20context');await this['context'][_0x444ad6(0x221)][_0x444ad6(0x1fa)]({'screenshots':!![],'snapshots':!![],'sources':!![]}),this[_0x444ad6(0x208)]=!![],this[_0x444ad6(0x1f9)](),await this['startScreencast'](),this['params']['telemetry']['trackPhaseStart']('nova_act_artifact_recording',{...this[_0x444ad6(0x287)]['transportMetadata'],'cdpEndpoint':_0x32daf5,'browserPid':_0x24a547[_0x444ad6(0x268)],'sessionState':_0x24a547['state']}),this['params']['telemetry']['trackPhaseEnd']('nova_act_artifact_recording',{...this['params']['transportMetadata'],'tracingStarted':this[_0x444ad6(0x208)],'screencastStarted':this[_0x444ad6(0x261)]});}async['stop'](){const _0x7179e1=_0xe620d5,_0x50bf1a={'hKHpL':'nova_act_artifact_recording_stop','DnVkW':function(_0x487386,_0x583e33,_0xdce52e){return _0x487386(_0x583e33,_0xdce52e);}};if(this[_0x7179e1(0x267)])return;this['stopped']=!![];const _0x2f46b0={...this['params']['transportMetadata'],'frameCount':this[_0x7179e1(0x222)],'traceSampleCount':this[_0x7179e1(0x1d3)],'tracingStarted':this[_0x7179e1(0x208)],'screencastStarted':this[_0x7179e1(0x261)]};this[_0x7179e1(0x287)]['telemetry']['trackPhaseStart'](_0x50bf1a[_0x7179e1(0x266)],_0x2f46b0);try{await this[_0x7179e1(0x260)](),await this[_0x7179e1(0x240)](),await this['stopScreencast'](),await Promise['allSettled'](this['frameWrites']);this[_0x7179e1(0x1c9)]&&this[_0x7179e1(0x208)]&&await this['context']['tracing']['stop']({'path':_0x50bf1a[_0x7179e1(0x254)](buildCliArtifactPath,this[_0x7179e1(0x287)]['cliArtifactDir'],_0x7179e1(0x289))});const _0x2f9637=await this[_0x7179e1(0x288)]();this['params']['telemetry']['trackPhaseEnd'](_0x50bf1a[_0x7179e1(0x266)],{..._0x2f46b0,'videoPath':_0x2f9637});}catch(_0x5c0b0a){await this['params']['telemetry'][_0x7179e1(0x245)]('nova_act_artifact_recording_stop',_0x5c0b0a,_0x2f46b0);}finally{await this[_0x7179e1(0x218)]?.['close']()[_0x7179e1(0x251)](()=>undefined),this['browser']=null,this[_0x7179e1(0x1c9)]=null,this['frameSession']=null;}}async[_0xe620d5(0x285)](){const _0x15ce9d=_0xe620d5,_0x3058b4={'mrfkh':function(_0x43a083,_0x4d429a,_0x260c5d,_0x58635f,_0xa0ae3d,_0x1df621){return _0x43a083(_0x4d429a,_0x260c5d,_0x58635f,_0xa0ae3d,_0x1df621);},'styIa':_0x15ce9d(0x23d),'ifJQR':'utf-8','DovQu':function(_0x3b4d8b,_0x58fd65){return _0x3b4d8b<_0x58fd65;},'IYHAi':function(_0x1885ef,_0x25e2b3){return _0x1885ef-_0x25e2b3;}},_0x259e38=_0x3058b4[_0x15ce9d(0x1d4)](join,homedir(),'.act_cli','browser',_0x3058b4['styIa'],this[_0x15ce9d(0x287)]['novaOptions'][_0x15ce9d(0x265)]+'.json'),_0x4ebac4=Date['now']();let _0x32e258;do{try{const _0x55e6e0=JSON[_0x15ce9d(0x1e2)](await readFile(_0x259e38,_0x3058b4['ifJQR']));if(_0x55e6e0['cdp_endpoint'])return _0x55e6e0;_0x32e258=new Error(_0x15ce9d(0x26b)+_0x259e38);}catch(_0x2b3546){_0x32e258=_0x2b3546;}await delay(0x64);}while(_0x3058b4[_0x15ce9d(0x219)](_0x3058b4[_0x15ce9d(0x1f5)](Date['now'](),_0x4ebac4),NOVA_ARTIFACT_METADATA_WAIT_MS));if(_0x32e258 instanceof Error)throw _0x32e258;throw new Error('Unable\x20to\x20read\x20Nova\x20session\x20metadata\x20at\x20'+_0x259e38);}async['startScreencast'](){const _0x3b3982=_0xe620d5,_0x44053f={'CRzva':function(_0x35de41,_0x31d03a,_0x4d0e72){return _0x35de41(_0x31d03a,_0x4d0e72);},'OeJPa':function(_0x1ed574,_0x8d0071){return _0x1ed574(_0x8d0071);},'ObsUb':_0x3b3982(0x29b)};if(!this[_0x3b3982(0x1c9)])return;const _0x1c6cbb=this[_0x3b3982(0x1c9)][_0x3b3982(0x1cb)]()[0x0];if(!_0x1c6cbb)return;const _0xe7ec97=this[_0x3b3982(0x29d)]();await mkdir(_0xe7ec97,{'recursive':!![]});const _0x4feb1f=await this['context']['newCDPSession'](_0x1c6cbb);this['frameSession']=_0x4feb1f,_0x4feb1f['on'](_0x3b3982(0x204),_0x268147=>{const _0x57bd07=_0x3b3982,_0x538c4b=++this[_0x57bd07(0x222)],_0x2f434a=_0x44053f[_0x57bd07(0x26f)](join,_0xe7ec97,_0x57bd07(0x239)+_0x44053f[_0x57bd07(0x26d)](String,_0x538c4b)[_0x57bd07(0x296)](0x6,'0')+_0x57bd07(0x23b)),_0x509fec=writeFile(_0x2f434a,Buffer[_0x57bd07(0x1cf)](_0x268147['data'],'base64'))['catch'](()=>undefined)[_0x57bd07(0x1eb)](()=>_0x4feb1f['send']('Page.screencastFrameAck',{'sessionId':_0x268147[_0x57bd07(0x265)]}))[_0x57bd07(0x1c8)](()=>undefined)['catch'](()=>undefined);this['frameWrites'][_0x57bd07(0x263)](_0x509fec);}),await _0x4feb1f['send']('Page.startScreencast',{'format':_0x44053f[_0x3b3982(0x213)],'quality':0x4b,'everyNthFrame':0x6}),this[_0x3b3982(0x261)]=!![];}async[_0xe620d5(0x298)](){const _0x5e127c=_0xe620d5,_0x5581fb={'ZnWgX':_0x5e127c(0x29e)};if(!this[_0x5e127c(0x1e9)]||!this[_0x5e127c(0x261)])return;await this['frameSession']['send'](_0x5581fb['ZnWgX'])[_0x5e127c(0x251)](()=>undefined);}['startTraceSampling'](){const _0x1c110a=_0xe620d5;this['queueTraceSample'](),this[_0x1c110a(0x1df)]=setInterval(()=>this['queueTraceSample'](),NOVA_ARTIFACT_TRACE_SAMPLE_INTERVAL_MS);}['queueTraceSample'](){const _0x3e3edb=_0xe620d5;if(this['traceSampleInFlight'])return;this[_0x3e3edb(0x294)]=this['captureTraceSample']()[_0x3e3edb(0x1eb)](()=>{const _0x5e91ea=_0x3e3edb;this[_0x5e91ea(0x294)]=null;});}async[_0xe620d5(0x260)](){const _0x39bae2=_0xe620d5,_0x55e446={'yNfDG':function(_0x3ecf14,_0x2dc15a){return _0x3ecf14(_0x2dc15a);}};this['traceSampleTimer']&&(_0x55e446[_0x39bae2(0x20b)](clearInterval,this[_0x39bae2(0x1df)]),this['traceSampleTimer']=null),await this[_0x39bae2(0x294)]?.[_0x39bae2(0x251)](()=>undefined);}async['captureTraceSample'](){const _0xcdc8e1=_0xe620d5,_0xc68084={'LZVhP':'body'},_0x1f3386=this['context']?.[_0xcdc8e1(0x1cb)]()[0x0];if(!_0x1f3386)return;try{await _0x1f3386[_0xcdc8e1(0x25d)](_0xc68084[_0xcdc8e1(0x256)])['evaluate'](_0x3c8094=>_0x3c8094[_0xcdc8e1(0x24c)],undefined,{'timeout':0x3e8}),this[_0xcdc8e1(0x1d3)]++;}catch{}}async[_0xe620d5(0x288)](){const _0x1270d5=_0xe620d5,_0x3710ae={'OEJqr':function(_0x51c7b2,_0x2c962a){return _0x51c7b2<_0x2c962a;},'TsIFq':function(_0x23abd0){return _0x23abd0();},'Qhmzz':_0x1270d5(0x293),'qZpRm':function(_0x1e87f8,_0x39b0be,_0x5bf0be){return _0x1e87f8(_0x39b0be,_0x5bf0be);},'JHUgt':function(_0x1f809b,_0x49d88a,_0x49a5a1){return _0x1f809b(_0x49d88a,_0x49a5a1);},'zZawo':_0x1270d5(0x282),'Swtue':_0x1270d5(0x22c),'jPEIK':_0x1270d5(0x2a0),'FXAKt':_0x1270d5(0x1cc),'omwdX':'libvpx-vp9','VtTAy':'-pix_fmt','iUcMN':_0x1270d5(0x1ec)};if(_0x3710ae['OEJqr'](this['frameCount'],0x2))return null;const _0x1e549c=await _0x3710ae[_0x1270d5(0x25b)](resolveFfmpegPath);if(!_0x1e549c)return null;const _0x44c866=join(this['params'][_0x1270d5(0x1f3)],_0x3710ae['Qhmzz']);await _0x3710ae['qZpRm'](mkdir,_0x44c866,{'recursive':!![]});const _0x1f6904=_0x3710ae[_0x1270d5(0x214)](join,_0x44c866,'session-recording.webm');return await execFileAsync(_0x1e549c,['-y',_0x3710ae[_0x1270d5(0x210)],_0x1270d5(0x241),_0x3710ae[_0x1270d5(0x28c)],'-framerate','10','-i',_0x3710ae[_0x1270d5(0x207)](join,this[_0x1270d5(0x29d)](),_0x3710ae['jPEIK']),'-vf','scale=trunc(iw/2)*2:trunc(ih/2)*2',_0x3710ae[_0x1270d5(0x1e3)],_0x3710ae[_0x1270d5(0x21d)],_0x3710ae['VtTAy'],_0x3710ae['iUcMN'],_0x1f6904]),_0x1f6904;}[_0xe620d5(0x29d)](){const _0x3de459=_0xe620d5,_0x250870={'HHJyV':'nova-video-frames'};return join(this[_0x3de459(0x287)]['cliArtifactDir'],_0x250870[_0x3de459(0x21c)]);}}async function delay(_0x39a3b7){await new Promise(_0x27567c=>setTimeout(_0x27567c,_0x39a3b7));}async function resolveFfmpegPath(){const _0x324fcc=_0xe620d5,_0x3a58de={'XCVwD':function(_0x27da8e,_0x2be6d6,_0x1b986b,_0x457ba4,_0x5d2eb1){return _0x27da8e(_0x2be6d6,_0x1b986b,_0x457ba4,_0x5d2eb1);},'PDtcd':function(_0x55c80c){return _0x55c80c();},'gwzQA':function(_0x5d95e3,_0x23e094,_0xa53db8,_0x118d7e){return _0x5d95e3(_0x23e094,_0xa53db8,_0x118d7e);},'oDzJN':function(_0x43d6ea){return _0x43d6ea();},'xzEwR':_0x324fcc(0x236),'dxDOJ':'ms-playwright','jGyNn':function(_0x228b4a,_0x53a9af){return _0x228b4a(_0x53a9af);}};if(await canRunFfmpeg('ffmpeg'))return _0x324fcc(0x255);const _0x52784e=[_0x3a58de['XCVwD'](join,_0x3a58de['PDtcd'](homedir),'Library',_0x324fcc(0x23c),_0x324fcc(0x1db)),_0x3a58de['gwzQA'](join,_0x3a58de['oDzJN'](homedir),_0x3a58de['xzEwR'],_0x3a58de[_0x324fcc(0x200)])];for(const _0x497325 of _0x52784e){try{const _0x488833=await _0x3a58de['jGyNn'](readdir,_0x497325),_0x47b936=_0x488833[_0x324fcc(0x1dd)](_0x34b9b7=>_0x34b9b7[_0x324fcc(0x24d)](_0x324fcc(0x1d7)))['sort']()['reverse']()[_0x324fcc(0x25a)](_0x12aca2=>[join(_0x497325,_0x12aca2,'ffmpeg-mac'),join(_0x497325,_0x12aca2,_0x324fcc(0x248)),join(_0x497325,_0x12aca2,'ffmpeg.exe')]);for(const _0x404f11 of _0x47b936){if(await _0x3a58de['jGyNn'](canRunFfmpeg,_0x404f11))return _0x404f11;}}catch{}}return null;}async function canRunFfmpeg(_0x56d00f){const _0x4c394e={'MrHBN':function(_0xc679da,_0x4b6c3a,_0x50d409){return _0xc679da(_0x4b6c3a,_0x50d409);}};try{return await _0x4c394e['MrHBN'](execFileAsync,_0x56d00f,['-version']),!![];}catch{return![];}}function toStepDisplayName(_0x464ca1){const _0x205cf6=_0xe620d5,_0xc99bff={'enLLn':function(_0x52284a,_0x51ffdf){return _0x52284a(_0x51ffdf);}},_0x6b9108=_0xc99bff[_0x205cf6(0x242)](basename,_0x464ca1)[_0x205cf6(0x28a)](/\.(?:png|ya?ml)$/i,'')['replace'](/^key_/i,'')[_0x205cf6(0x28a)](/^\d+_/,'')[_0x205cf6(0x28a)](/-/g,'\x20');return{'name':_0x6b9108,'isKeyStep':/^key_/i[_0x205cf6(0x262)](basename(_0x464ca1))};}function extractShellValue(_0x214efe){if(!_0x214efe)return null;return _0x214efe[0x1]??_0x214efe[0x2]??_0x214efe[0x3]??null;}function extractOutputOption(_0x2fe5e2){const _0x4e9b16=_0xe620d5,_0x81c674={'nnrHV':function(_0xe3bc3f,_0x14dc9a){return _0xe3bc3f(_0x14dc9a);}};return _0x81c674['nnrHV'](extractShellValue,_0x2fe5e2[_0x4e9b16(0x215)](/--output(?:=|\s+)(?:"([^"]+)"|'([^']+)'|(\S+))/));}function formatNovaActCliLog(_0x1ca9cd,_0x1f7c4f){const _0x4f6443=_0xe620d5,_0x4abeca={'qUNgA':_0x4f6443(0x244),'WqWbQ':'execute','ficTh':'execute\x20Nova\x20browser\x20action','acRds':_0x4f6443(0x27c),'CyaeS':_0x4f6443(0x273),'PyJDj':'navigate\x20browser','Vabse':_0x4f6443(0x1f6),'FdfvI':'wait\x20for\x20page\x20condition','tnWPa':_0x4f6443(0x206),'Siivy':'screenshot','NbAyP':function(_0x450df3,_0xe2c777){return _0x450df3(_0xe2c777);},'FKqAy':_0x4f6443(0x269)};switch(_0x1f7c4f){case'session\x20create':return _0x4abeca['qUNgA'];case _0x4abeca[_0x4f6443(0x232)]:return _0x4abeca['ficTh'];case _0x4f6443(0x23e):return _0x4abeca['acRds'];case _0x4abeca['CyaeS']:return _0x4f6443(0x247);case'goto':return _0x4abeca['PyJDj'];case _0x4abeca[_0x4f6443(0x1d0)]:return _0x4abeca['FdfvI'];case'snapshot':{const _0xe6aaa=extractOutputOption(_0x1ca9cd);if(!_0xe6aaa)return _0x4abeca['tnWPa'];const {name:_0x26d12c}=toStepDisplayName(_0xe6aaa);return _0x4f6443(0x1ee)+_0x26d12c+'`';}case _0x4abeca[_0x4f6443(0x212)]:{const _0x203e35=_0x4abeca[_0x4f6443(0x290)](extractOutputOption,_0x1ca9cd);if(!_0x203e35)return'capture\x20screenshot';const {name:_0x3aab95,isKeyStep:_0x45455f}=toStepDisplayName(_0x203e35);return _0x45455f?'capture\x20key\x20step\x20`'+_0x3aab95+'`':_0x4f6443(0x299)+_0x3aab95+'`';}case'session\x20export':return _0x4abeca[_0x4f6443(0x1f0)];default:return _0x1f7c4f;}}function getNovaActCliCommandBlockReason(_0x124289){const _0x1b1e1f=_0xe620d5,_0x5d885a={'dMlzo':'Use\x20only\x20the\x20provided\x20Nova\x20browser\x20command\x20prefix\x20for\x20browser\x20verification.\x20Do\x20not\x20inspect\x20setup,\x20credentials,\x20files,\x20or\x20the\x20local\x20environment.','kSkRZ':function(_0x5b44f5,_0x194ab2){return _0x5b44f5===_0x194ab2;},'NkAet':'verify','qwTuZ':_0x1b1e1f(0x21b)},_0x46901b=parseNovaActCliCommand(_0x124289);if(!_0x46901b)return _0x5d885a['dMlzo'];if(!NOVA_ACT_ALLOWED_AGENT_COMMANDS[_0x1b1e1f(0x20f)](_0x46901b))return'Nova\x20command\x20`'+_0x46901b+'`\x20is\x20reserved\x20for\x20the\x20host.\x20Use\x20only\x20session\x20create,\x20execute,\x20verify,\x20ask,\x20goto,\x20wait-for,\x20snapshot,\x20and\x20screenshot.';if(_0x5d885a['kSkRZ'](_0x46901b,_0x5d885a['NkAet'])&&/\b(?:previously visited|visited pages|pages visited|at least one of the pages visited)\b/i[_0x1b1e1f(0x262)](_0x124289))return _0x5d885a['qwTuZ'];if(/\s--help\b|\bdoctor\b|\bscript\b|\bsession\s+(?:close|list|export)\b/['test'](_0x124289))return'Do\x20not\x20run\x20Nova\x20help,\x20doctor,\x20script,\x20session\x20list,\x20session\x20export,\x20or\x20session\x20close\x20commands\x20during\x20verification.';return null;}function buildFeedbackSection(_0x27155a){const _0x1d8e92=_0xe620d5,_0x580102={'KsdiF':'en-US','zbvgI':_0x1d8e92(0x270),'vVrHD':_0x1d8e92(0x1f7),'Pivif':_0x1d8e92(0x258)};if(!_0x27155a||_0x27155a[_0x1d8e92(0x20c)]['length']===0x0)return'';const _0x34e39d=_0x27155a['unaddressedComments']['map'](_0x257dca=>{const _0x5432e9=_0x1d8e92,_0x2939a2=new Date(_0x257dca['createdAt'])['toLocaleDateString'](_0x580102['KsdiF'],{'month':_0x580102['zbvgI'],'day':_0x580102['vVrHD']}),_0x1be812=_0x257dca[_0x5432e9(0x29a)]||_0x257dca[_0x5432e9(0x1fb)]||'Reviewer',_0x47ece1=_0x257dca['domRef']?'\x20(on\x20element:\x20<'+(_0x257dca['domRef']['selector']['split'](_0x580102['Pivif'])['pop']()?.['split'](':')[0x0]||_0x5432e9(0x27b))+_0x5432e9(0x26c)+(_0x257dca['domRef']['textContent']||'')[_0x5432e9(0x238)](0x0,0x32)+'\x22)':'';return _0x5432e9(0x24e)+_0x257dca['id']+']\x20**'+_0x1be812+_0x5432e9(0x237)+_0x2939a2+'):\x20\x22'+_0x257dca['content']+'\x22'+_0x47ece1;})[_0x1d8e92(0x1f2)]('\x0a');return _0x1d8e92(0x1d2)+_0x34e39d;}function buildNovaSharedOptionsInstruction(_0x1d0884){const _0x3efc7=_0xe620d5;if(!_0x1d0884['trim']())return _0x3efc7(0x25e);return'Append\x20this\x20option\x20suffix\x20to\x20every\x20browser\x20command\x20unless\x20the\x20host\x20gives\x20a\x20more\x20specific\x20example:\x0a'+_0x1d0884;}function _0x5947(){const _0x29b817=['trace.zip','replace','`\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.','Swtue','zvgjt','folpE','nova_act_command_failure','NbAyP','export','`\x0a2.\x20Run\x20`','videos','traceSampleInFlight','4rzbFTr','padStart','-qr','stopScreencast','capture\x20step\x20`','authorName','jpeg','\x20screenshot\x20--output\x20','getFrameDir','Page.stopScreencast','`<none;\x20the\x20command\x20prefix\x20injects\x20shared\x20options>`','frame-%06d.jpg','pBlkh','ahGpN','then','context','args','pages','-c:v','trackPhaseStart','zuqKZ','from','Vabse','`.\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`','\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','traceSampleCount','mrfkh','DzQZf','cwd','ffmpeg-','trackPhaseEnd','name','nova_act_session_export','ms-playwright','NKgRT','filter','--output-dir','traceSampleTimer','isFile','KzXHI','parse','FXAKt','PostToolUseFailure','startAttempted','`\x20using\x20absolute\x20paths\x20only.\x0a5.\x20Take\x20an\x20initial\x20snapshot:\x20`','shellCommand','MIUFS','frameSession','iTwcQ','finally','yuv420p','nova-report','capture\x20snapshot\x20`','1130706FVcbrq','FKqAy','`\x0a-\x20`','join','cliArtifactDir','1688386EtqQbr','IYHAi','wait-for','numeric','hhuxC','startTraceSampling','start','authorEmail','values','[nova-act-cli]\x20','tool_input','final-state.yaml','dxDOJ','Nova\x20session\x20metadata\x20did\x20not\x20include\x20cdp_endpoint\x20for\x20','`\x0a3.\x20Run\x20`','\x0a\x0a##\x20App\x20Context\x0aYour\x20base\x20URL\x20is:\x20','Page.screencastFrame','block','capture\x20snapshot','qZpRm','tracingStarted','LJrrz','03_final-state.png','yNfDG','unaddressedComments','session','`\x20using\x20absolute\x20paths\x20only.\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','has','zZawo','TOpBx','Siivy','ObsUb','JHUgt','match','1804218DvgmXu','`.\x0a6.\x20Take\x20an\x20initial\x20screenshot:\x20`','browser','DovQu','\x0a\x0a##\x20Additional\x20Notes\x0a','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.','HHJyV','omwdX','nova_act_command','subcommand','EAHyR','tracing','frameCount','CWFBw','6292635nLftIO','commandArgs','key_final-state.png','connectOverCDP','session\x20create','snapshot','fOwaK','3358838DdVrQA','error','DoeDt','nova_act_final_screenshot','nova-user-data/*','\x20snapshot\x20--output\x20','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','WqWbQ','--output','Bash','command','.cache','**\x20(','slice','frame-','nova-session-export.json','.jpg','Caches','sessions','verify','irZTL','captureTraceSample','-loglevel','enLLn','stop','create\x20Nova\x20browser\x20session','trackPhaseError','`\x0a\x0aAppend\x20this\x20option\x20suffix\x20to\x20browser\x20commands:\x0a','ask\x20page\x20question','ffmpeg-linux','GylJj','Wqokr','vnzYY','tagName','startsWith','-\x20[','\x20execute\x20\x221.\x20Open\x20the\x20account\x20settings\x20menu.\x202.\x20Click\x20Billing.\x203.\x20Wait\x20for\x20the\x20Billing\x20page\x20to\x20load.\x22\x20','\x20session\x20create\x20','catch','phase','MAmHZ','DnVkW','ffmpeg','LZVhP','yZZnf','\x20>\x20','screenshot','flatMap','TsIFq','ozwKB','locator','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.','01_initial-state.png','stopTraceSampling','screencastStarted','test','push','json','sessionId','hKHpL','stopped','browser_pid','export\x20Nova\x20session','WPWIi','Nova\x20metadata\x20missing\x20cdp_endpoint\x20at\x20','>\x20\x22','OeJPa','288784hYMYvS','CRzva','short','tool_name','Ffsqh','ask','trim','hwQKd','notes','FgEil','PpGab','nova-act-cli','\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','element','verify\x20page\x20condition','wtlkP','--report','--format','hook_event_name','invocation','-hide_banner','1368319japsMT','close','readSessionMetadataWithRetry','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','params','encodeScreencastVideo'];_0x5947=function(){return _0x29b817;};return _0x5947();}export function buildVerifyFeatureNovaCliDebugPrompt(_0xe11a2f){const _0x47a203=_0xe620d5,_0x2acd13={'ahGpN':function(_0xbff668,_0x3bcd5c,_0x4dd94a){return _0xbff668(_0x3bcd5c,_0x4dd94a);},'AubHH':'00_initial-state.yml','WPWIi':function(_0x2cf5cc,_0x2b9ba5,_0x58165f){return _0x2cf5cc(_0x2b9ba5,_0x58165f);},'zvgjt':_0x47a203(0x25f),'tjBhp':'02_final-state.yml','SBsJm':_0x47a203(0x20a),'BvrbK':function(_0x2238d1,_0x2923d9){return _0x2238d1(_0x2923d9);},'GylJj':function(_0x44e27d,_0x42f6e4){return _0x44e27d(_0x42f6e4);}},{novaCommandPrefix:_0x5e20c4,novaSharedOptionsSuffix:_0x41ca3e,cliArtifactDir:_0x41b1ed,url:_0x5911c0}=_0xe11a2f,_0x11904b=_0x2acd13['ahGpN'](buildCliArtifactPath,_0x41b1ed,_0x2acd13['AubHH']),_0x59057b=_0x2acd13[_0x47a203(0x26a)](buildCliArtifactPath,_0x41b1ed,_0x2acd13[_0x47a203(0x28d)]),_0x156267=_0x2acd13[_0x47a203(0x2a2)](buildCliArtifactPath,_0x41b1ed,_0x2acd13['tjBhp']),_0x18eda4=buildCliArtifactPath(_0x41b1ed,_0x2acd13['SBsJm']);return _0x47a203(0x286)+_0x5e20c4+'\x0a\x0a'+_0x2acd13['BvrbK'](buildNovaSharedOptionsInstruction,_0x41ca3e)+'\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`'+_0x5e20c4+'\x20session\x20create\x20'+_0x2acd13[_0x47a203(0x249)](quoteShellArg,_0x5911c0)+'\x20'+_0x41ca3e+_0x47a203(0x292)+_0x5e20c4+_0x47a203(0x230)+quoteShellArg(_0x11904b)+'\x20'+_0x41ca3e+_0x47a203(0x202)+_0x5e20c4+_0x47a203(0x29c)+quoteShellArg(_0x59057b)+'\x20'+_0x41ca3e+'`\x0a4.\x20Run\x20one\x20batched\x20`'+_0x5e20c4+'\x20execute\x20\x22...\x22`\x20command\x20to\x20exercise\x20the\x20current\x20page.\x0a5.\x20Run\x20`'+_0x5e20c4+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x156267)+'\x20'+_0x41ca3e+'`\x0a6.\x20Run\x20`'+_0x5e20c4+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x18eda4)+'\x20'+_0x41ca3e+'`\x0a7.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aSave\x20every\x20artifact\x20under\x20`'+_0x41b1ed+_0x47a203(0x20e);}export function buildVerifyFeatureNovaCliPrompt(_0x1f3219){const _0xd88050=_0xe620d5,_0x2b66ee={'rLRdV':function(_0x1319b8,_0x14a279){return _0x1319b8(_0x14a279);},'fOwaK':function(_0x4153f5,_0x1d72ad,_0x28745e){return _0x4153f5(_0x1d72ad,_0x28745e);},'irZTL':'01_initial.yml','gEZth':'key_03_success-state.png'},{checklistItem:_0x433bdd,itemFeedback:_0x413e07,taskDescription:_0x6e5866,novaCommandPrefix:_0x1ec7a4,novaSharedOptionsSuffix:_0xc170e9,cliArtifactDir:_0x4a5ca4,url:_0x8913e4,loginInstructions:_0x568266}=_0x1f3219,_0x5599bd=_0x433bdd[_0xd88050(0x276)]?_0xd88050(0x21a)+_0x433bdd[_0xd88050(0x276)]:'',_0x4be258=_0x2b66ee['rLRdV'](buildFeedbackSection,_0x413e07),_0x2c6bcb=_0x413e07?.['canonicalFlow']?_0xd88050(0x231)+_0x413e07['canonicalFlow']:'',_0x6c3568=_0x568266?'\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a'+_0x568266+'\x0a\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'',_0x54df61=_0x2b66ee[_0xd88050(0x22a)](buildCliArtifactPath,_0x4a5ca4,_0x2b66ee[_0xd88050(0x23f)]),_0x19c984=buildCliArtifactPath(_0x4a5ca4,'01_initial-state.png'),_0x46c5f8=buildCliArtifactPath(_0x4a5ca4,_0x2b66ee['gEZth']);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'+_0x433bdd['description']+_0x5599bd+_0x4be258+_0x2c6bcb+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x6e5866+_0xd88050(0x203)+_0x8913e4+_0xd88050(0x27a)+_0x6c3568+'\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`'+_0x1ec7a4+_0xd88050(0x250)+quoteShellArg(_0x8913e4)+'\x20'+_0xc170e9+'`.\x0a4.\x20Save\x20every\x20snapshot\x20and\x20screenshot\x20under\x20`'+_0x4a5ca4+_0xd88050(0x1e6)+_0x1ec7a4+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x54df61)+'\x20'+_0xc170e9+_0xd88050(0x217)+_0x1ec7a4+_0xd88050(0x29c)+quoteShellArg(_0x19c984)+'\x20'+_0xc170e9+'`.\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`'+_0x46c5f8+_0xd88050(0x1d1)+_0x1ec7a4+_0xd88050(0x246)+(_0xc170e9[_0xd88050(0x274)]()?'`'+_0xc170e9+'`':_0xd88050(0x29f))+'\x0a\x0a'+buildNovaSharedOptionsInstruction(_0xc170e9)+'\x0a\x0aExamples:\x0a-\x20`'+_0x1ec7a4+_0xd88050(0x24f)+_0xc170e9+_0xd88050(0x1f1)+_0x1ec7a4+'\x20verify\x20\x22The\x20Billing\x20page\x20is\x20visible\x20and\x20shows\x20the\x20current\x20plan.\x22\x20'+_0xc170e9+_0xd88050(0x1f1)+_0x1ec7a4+'\x20snapshot\x20--output\x20'+quoteShellArg(_0x54df61)+'\x20'+_0xc170e9+'`\x0a-\x20`'+_0x1ec7a4+'\x20screenshot\x20--output\x20'+quoteShellArg(_0x46c5f8)+'\x20'+_0xc170e9+_0xd88050(0x28b);}export function summarizeVerifyFeatureNovaCliCommandAvailability(_0x1adc20){const _0x3f9d25=_0xe620d5,_0x1a5041={'DoeDt':function(_0x1a2a9b,_0x3ebb8f){return _0x1a2a9b===_0x3ebb8f;}},_0x1c862a=[..._0x1adc20['keys']()]['sort']();let _0x35ebac=0x0;for(const _0x1f3448 of _0x1adc20[_0x3f9d25(0x1fc)]()){_0x35ebac+=_0x1f3448;}return{'cliCommandCount':_0x35ebac,'cliCommandsSeen':_0x1c862a,'noCliCommandsCalled':_0x1a5041[_0x3f9d25(0x22d)](_0x35ebac,0x0)};}export function createVerifyFeatureNovaCliHooks(_0x351b77,_0x1772f2){const _0x5cc26=_0xe620d5,_0x8d6602={'MAmHZ':'PreToolUse','LJrrz':function(_0x37d67e,_0x2f1cae){return _0x37d67e(_0x2f1cae);},'dBnNu':_0x5cc26(0x205),'Wqokr':'PostToolUse','oJoUF':function(_0xdbf29b,_0x2a3ca8){return _0xdbf29b(_0x2a3ca8);},'bqxqH':_0x5cc26(0x21e),'FgEil':function(_0x17342b,_0x2eed0c){return _0x17342b!==_0x2eed0c;},'CWFBw':_0x5cc26(0x234)},_0x5ef954=new Map(),_0x12d9cd=async _0x159845=>{const _0x2dc3e9=_0x5cc26;if(_0x159845[_0x2dc3e9(0x280)]!==_0x8d6602[_0x2dc3e9(0x253)])return{};const _0x4592c8=_0x159845;if(_0x4592c8['tool_name']!=='Bash')return{};const _0x59c32e=_0x4592c8[_0x2dc3e9(0x1fe)],_0x2872cb=extractBashCommand(_0x59c32e);if(!_0x2872cb)return{};const _0x4ebf02=_0x8d6602[_0x2dc3e9(0x209)](getNovaActCliCommandBlockReason,_0x2872cb);if(!_0x4ebf02)return{};return{'decision':_0x8d6602['dBnNu'],'reason':_0x4ebf02};},_0x3d52cd=async _0x3e9ec8=>{const _0x15f3d0=_0x5cc26;if(_0x3e9ec8['hook_event_name']!==_0x8d6602[_0x15f3d0(0x24a)])return{};const _0x5d5d25=_0x3e9ec8;if(_0x5d5d25[_0x15f3d0(0x271)]!==_0x15f3d0(0x234))return{};const _0x562b15=_0x5d5d25['tool_input'],_0x4fa16f=_0x8d6602[_0x15f3d0(0x209)](extractBashCommand,_0x562b15);if(!_0x4fa16f)return{};const _0x1a65ae=_0x8d6602['oJoUF'](parseNovaActCliCommand,_0x4fa16f);if(!_0x1a65ae)return{};_0x5ef954['set'](_0x1a65ae,(_0x5ef954['get'](_0x1a65ae)||0x0)+0x1),_0x351b77['trackPhaseStart'](_0x8d6602['bqxqH'],{'subcommand':_0x1a65ae}),_0x351b77[_0x15f3d0(0x1d8)](_0x15f3d0(0x21e),{'subcommand':_0x1a65ae,'commandPreview':previewNovaActCliCommand(_0x4fa16f)}),console['log'](_0x15f3d0(0x1fd)+formatNovaActCliLog(_0x4fa16f,_0x1a65ae));if(_0x1a65ae==='session\x20create'&&_0x1772f2)try{await _0x1772f2[_0x15f3d0(0x1fa)]();}catch(_0x3cdbe4){await _0x351b77[_0x15f3d0(0x245)]('nova_act_artifact_recording',_0x3cdbe4,{'transport':'nova-act-cli'});}return{};},_0x5a5d8b=async _0x54ea89=>{const _0x59c8b6=_0x5cc26;if(_0x8d6602[_0x59c8b6(0x277)](_0x54ea89['hook_event_name'],_0x59c8b6(0x1e4)))return{};const _0x2b0c64=_0x54ea89;if(_0x8d6602['FgEil'](_0x2b0c64[_0x59c8b6(0x271)],_0x8d6602['CWFBw']))return{};return await _0x351b77['trackPhaseError'](_0x59c8b6(0x28f),_0x2b0c64['error'],{'transport':_0x59c8b6(0x279),'toolName':_0x8d6602[_0x59c8b6(0x223)]}),{};};return{'preToolUseHook':_0x12d9cd,'postToolUseHook':_0x3d52cd,'postToolUseFailureHook':_0x5a5d8b,'commandCounts':_0x5ef954};}async function runNovaLifecycleCommand(_0x5adb9c){const _0x1b3841=_0xe620d5,_0xc4b0f9={'Ffsqh':function(_0x356fe6,_0x5ae3af){return _0x356fe6(_0x5ae3af);},'tVUXA':function(_0x2ff149,_0x36f2a9){return _0x2ff149??_0x36f2a9;}},{novaOptions:_0x5ac76e,commandArgs:_0x5eb138,telemetry:_0x360c13,phase:_0x4be70e,metadata:_0x225b5f,timeoutMs:_0x3d99d6}=_0x5adb9c;_0x360c13[_0x1b3841(0x1cd)](_0x4be70e,_0x225b5f);try{const _0x4307a8=await _0xc4b0f9['Ffsqh'](runNovaActCliCommand,{..._0x5ac76e,'commandArgs':_0x5eb138,'cwd':process[_0x1b3841(0x1d6)](),'env':process['env'],'timeoutMs':_0xc4b0f9['tVUXA'](_0x3d99d6,NOVA_ACT_CLI_COMMAND_TIMEOUT_MS)});_0x360c13['trackPhaseEnd'](_0x4be70e,{..._0x225b5f,'subcommand':_0x4307a8['invocation'][_0x1b3841(0x21f)],'commandPreview':previewNovaActCliCommand(_0x4307a8[_0x1b3841(0x281)]['shellCommand']),'stdoutPreview':previewNovaActCliCommand(_0x4307a8['stdout']),'stderrPreview':previewNovaActCliCommand(_0x4307a8['stderr']),'logDir':_0xc4b0f9[_0x1b3841(0x272)](extractNovaActLogDir,_0x4307a8['stdout'])});}catch(_0x55162b){await _0x360c13[_0x1b3841(0x245)](_0x4be70e,_0x55162b,_0x225b5f);throw _0x55162b;}}export async function finalizeVerifyFeatureNovaCliSession(_0x1795b5){const _0x3754dd=_0xe620d5,_0x51a543={'TOpBx':_0x3754dd(0x22e),'hwQKd':_0x3754dd(0x226),'jGVuF':'nova_act_final_snapshot','wtlkP':_0x3754dd(0x229),'pBlkh':_0x3754dd(0x233),'NKgRT':_0x3754dd(0x27f),'ozwKB':_0x3754dd(0x264),'jcZZs':_0x3754dd(0x23a),'zuqKZ':'nova_act_session_report','PpGab':_0x3754dd(0x27e),'DzQZf':function(_0x4e781e,_0x28f3e9,_0x1d12d4){return _0x4e781e(_0x28f3e9,_0x1d12d4);},'iTwcQ':_0x3754dd(0x1ed),'hhuxC':'nova_act_session_close','hHgct':_0x3754dd(0x284),'KzXHI':function(_0x46b9e5,_0x2ef6fa){return _0x46b9e5(_0x2ef6fa);}},{telemetry:_0x14834d,novaOptions:_0x49554e,cliArtifactDir:_0xb1026d,transportMetadata:_0x34979d,artifactRecorder:_0x1e4ffa}=_0x1795b5,_0x5e2a7f=[{'phase':_0x51a543[_0x3754dd(0x211)],'commandArgs':['screenshot',_0x3754dd(0x233),buildCliArtifactPath(_0xb1026d,_0x51a543[_0x3754dd(0x275)])]},{'phase':_0x51a543['jGVuF'],'commandArgs':[_0x51a543[_0x3754dd(0x27d)],_0x51a543[_0x3754dd(0x2a1)],buildCliArtifactPath(_0xb1026d,_0x3754dd(0x1ff))]},{'phase':_0x3754dd(0x1da),'commandArgs':[_0x3754dd(0x20d),'export',_0x51a543[_0x3754dd(0x1dc)],_0x51a543[_0x3754dd(0x25c)],_0x3754dd(0x233),buildCliArtifactPath(_0xb1026d,_0x51a543['jcZZs'])]},{'phase':_0x51a543[_0x3754dd(0x1ce)],'commandArgs':['session',_0x3754dd(0x291),_0x51a543[_0x3754dd(0x278)],_0x3754dd(0x1de),_0x51a543[_0x3754dd(0x1d5)](buildCliArtifactPath,_0xb1026d,_0x51a543[_0x3754dd(0x1ea)])]},{'phase':_0x51a543[_0x3754dd(0x1f8)],'commandArgs':['session',_0x51a543['hHgct']]}];for(const _0x3b5344 of _0x5e2a7f){_0x3b5344[_0x3754dd(0x252)]===_0x51a543[_0x3754dd(0x1f8)]&&await _0x1e4ffa?.[_0x3754dd(0x243)]();try{await _0x51a543[_0x3754dd(0x1e1)](runNovaLifecycleCommand,{'novaOptions':_0x49554e,'commandArgs':[..._0x3b5344[_0x3754dd(0x225)]],'telemetry':_0x14834d,'phase':_0x3b5344[_0x3754dd(0x252)],'metadata':_0x34979d});}catch{}}}export async function harvestVerifyFeatureNovaCliArtifacts(_0x5316ac){const _0x348f56=_0xe620d5,_0x551fcb={'yZZnf':function(_0x329ee5,_0xb033bc,_0x151105){return _0x329ee5(_0xb033bc,_0x151105);},'qkQJD':function(_0xfab531,_0x9dcdc1){return _0xfab531<_0x9dcdc1;},'MIUFS':function(_0x16f952,_0x14fbbb,_0x1515df){return _0x16f952(_0x14fbbb,_0x1515df);}},{cwd:_0x2996a0,cliArtifactDir:_0x287b2a,startTime:_0x4e30ed}=_0x5316ac,_0x549a1f=[];await _0x551fcb[_0x348f56(0x257)](mkdir,_0x287b2a,{'recursive':!![]});const _0x2084a6=await _0x551fcb[_0x348f56(0x257)](readdir,_0x2996a0,{'withFileTypes':!![]});for(const _0x41c45c of _0x2084a6){if(!_0x41c45c[_0x348f56(0x1e0)]()||!VERIFY_FEATURE_NOVA_ARTIFACT_FILE_PATTERN[_0x348f56(0x262)](_0x41c45c[_0x348f56(0x1d9)]))continue;const _0x2210e6=join(_0x2996a0,_0x41c45c[_0x348f56(0x1d9)]),_0x5e4d31=await stat(_0x2210e6);if(_0x551fcb['qkQJD'](_0x5e4d31['mtimeMs']+0x7d0,_0x4e30ed))continue;const _0x5907fd=buildCliArtifactPath(_0x287b2a,_0x41c45c[_0x348f56(0x1d9)]);if(_0x2210e6===_0x5907fd)continue;await _0x551fcb[_0x348f56(0x1e8)](rename,_0x2210e6,_0x5907fd),_0x549a1f[_0x348f56(0x263)](_0x41c45c[_0x348f56(0x1d9)]);}return _0x549a1f['sort']();}function _0x50f2(_0x488d86,_0xb9a6f3){_0x488d86=_0x488d86-0x1c8;const _0x594792=_0x5947();let _0x50f2a0=_0x594792[_0x488d86];return _0x50f2a0;}export async function loadVerifyFeatureNovaTraceUploadArtifact(_0x49c66e){const _0x7271d0=_0xe620d5,_0x408646={'EYjLE':function(_0x469814,_0x4808c9,_0x729b89){return _0x469814(_0x4808c9,_0x729b89);},'folpE':function(_0x4ea304,_0x5639d3){return _0x4ea304(_0x5639d3);}},_0x23d2ef=_0x408646['EYjLE'](join,_0x49c66e,'trace.zip');try{return{'buffer':await _0x408646[_0x7271d0(0x28e)](readFile,_0x23d2ef),'source':_0x23d2ef};}catch{return{'buffer':await zipVerifyFeatureNovaArtifacts(_0x49c66e),'source':_0x49c66e};}}async function zipVerifyFeatureNovaArtifacts(_0x39b72b){const _0x5ca638=_0xe620d5,_0x5bcc63={'dZFve':function(_0x489727,_0x512a9b,_0x53eef2,_0x47cbcd){return _0x489727(_0x512a9b,_0x53eef2,_0x47cbcd);},'sUNrD':'zip','BwPzZ':_0x5ca638(0x297),'vnzYY':_0x5ca638(0x22f)},_0x44840a=join(_0x39b72b,'..','nova-artifacts.zip');try{return await _0x5bcc63['dZFve'](execFileAsync,_0x5bcc63['sUNrD'],[_0x5bcc63['BwPzZ'],_0x44840a,'.','-x',_0x5bcc63[_0x5ca638(0x24b)]],{'cwd':_0x39b72b}),await readFile(_0x44840a);}finally{await rm(_0x44840a,{'force':!![]});}}export function buildNovaActCliDiagnostics(_0x1e3bb8){const _0x3da896=_0xe620d5,_0x14a6f9={'EAHyR':function(_0x167027,_0x35d823,_0x23e4b6){return _0x167027(_0x35d823,_0x23e4b6);}},_0xe5de56=_0x14a6f9[_0x3da896(0x220)](buildNovaActCliInvocation,_0x1e3bb8['novaOptions'],_0x1e3bb8['commandArgs']);return{'command':_0xe5de56[_0x3da896(0x235)],'args':_0xe5de56[_0x3da896(0x1ca)],'commandPreview':previewNovaActCliCommand(_0xe5de56[_0x3da896(0x1e7)]),'subcommand':_0xe5de56[_0x3da896(0x21f)],'sharedOptionsSuffix':_0x14a6f9['EAHyR'](buildNovaActCliSharedOptionsSuffix,_0x1e3bb8['novaOptions'],_0x1e3bb8['commandArgs'])};}
@@ -1 +1 @@
1
- (function(_0x40041b,_0x1253b0){const _0xdf0aa7=_0x1684,_0x51e5f6=_0x40041b();while(!![]){try{const _0x3f3d7d=parseInt(_0xdf0aa7(0xdf))/0x1+-parseInt(_0xdf0aa7(0xbe))/0x2+-parseInt(_0xdf0aa7(0xc1))/0x3*(-parseInt(_0xdf0aa7(0xb8))/0x4)+parseInt(_0xdf0aa7(0xd6))/0x5+parseInt(_0xdf0aa7(0xb2))/0x6+-parseInt(_0xdf0aa7(0xbf))/0x7*(parseInt(_0xdf0aa7(0xc5))/0x8)+parseInt(_0xdf0aa7(0xb9))/0x9*(-parseInt(_0xdf0aa7(0xd7))/0xa);if(_0x3f3d7d===_0x1253b0)break;else _0x51e5f6['push'](_0x51e5f6['shift']());}catch(_0x2f959f){_0x51e5f6['push'](_0x51e5f6['shift']());}}}(_0x31b4,0x304c0));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(_0x56344c,_0x164bca=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x54692b=_0x1684,_0x3b2fd3={'USBOe':function(_0x5d606a,_0x5e80e0){return _0x5d606a>_0x5e80e0;},'lGnyC':function(_0x396ae3,_0x573703){return _0x396ae3+_0x573703;},'NKNqN':_0x54692b(0xb4)};return _0x3b2fd3['USBOe'](_0x56344c['length'],_0x164bca)?_0x3b2fd3[_0x54692b(0xa9)](_0x56344c['slice'](0x0,_0x164bca),_0x3b2fd3[_0x54692b(0xda)]):_0x56344c;}function extractShellValue(_0x451247){if(!_0x451247)return null;return _0x451247[0x1]??_0x451247[0x2]??_0x451247[0x3]??null;}function extractFirstCommandArgument(_0x286b76,_0x28a8e1){const _0x46b18d=_0x1684,_0x5511b6=_0x28a8e1[_0x46b18d(0xe5)](/[.*+?^${}()|[\]\\]/g,_0x46b18d(0xb6));return extractShellValue(_0x286b76['match'](new RegExp(_0x46b18d(0xbc)+_0x5511b6+_0x46b18d(0xdb))));}function formatCommandTarget(_0x2a6aac){const _0x1d02d5=_0x1684,_0x3926dd={'xMKCx':_0x1d02d5(0xd9)};if(!_0x2a6aac)return _0x3926dd['xMKCx'];if(/^e\d+$/i[_0x1d02d5(0xc3)](_0x2a6aac))return _0x1d02d5(0xa3)+_0x2a6aac;return JSON['stringify'](truncatePreview(_0x2a6aac,0x78));}function _0x1684(_0x640ed3,_0x326df5){_0x640ed3=_0x640ed3-0x93;const _0x31b40c=_0x31b4();let _0x168476=_0x31b40c[_0x640ed3];return _0x168476;}function _0x31b4(){const _0x4b44b3=['BLEqt','numeric','slice','stop\x20video\x20recording','GOQBT','DjGqf','stop\x20tracing','Reviewer','unaddressedComments','close','747800CJwUIb','10RpXqbP','\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.','target','NKNqN','(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))','\x20(on\x20element:\x20<','ResJt','lVUKK','360597NYUuIW','domRef','hook_event_name','error','\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.','trackPhaseStart','replace','\x0a\x0a##\x20Task\x20to\x20Execute\x0a','key_99_final-state.png','selector','[rangerwright-cli]\x20','VHvcp','`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.','chZYm','rangerwright_cli_tracing_stop','fill-and-inspect','JElpT','-\x20[','\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20','mJyCA','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','PDuLG','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','commandArgs','Bash','.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.','HyhYX','You\x20are\x20a\x20Feature\x20Review\x20Verifier.\x20Your\x20job\x20is\x20to\x20verify\x20a\x20scenario\x20by\x20executing\x20a\x20UI\x20flow\x20and\x20evaluating\x20whether\x20it\x20adequately\x20completes\x20the\x20scenario.\x0a\x0a##\x20Scenario\x20to\x20Verify\x0a','\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a','ref\x20','\x20open-and-inspect\x20','VuuTu','XyQDb','split','tracing-stop','lGnyC','description','phase','01_initial-state.png','rangerwright_cli_command','Ixwea','get','jhWZd','>\x20\x22','1220280RbrDIF','click-and-inspect','...','keys','\x5c$&','vlPBL','14932NIoiAa','1032246MomGGv','):\x20\x22','video-stop','(?:^|\x5cs)','commandPrefix','658904jRNyIL','2534BmdOtP','log','99BmXzkQ','nHfMR','test','\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.','4304Nkvult','zaliK','length','notes','AejWV','open\x20and\x20inspect\x20','authorName'];_0x31b4=function(){return _0x4b44b3;};return _0x31b4();}function formatRangerwrightCliLog(_0x2b9d71,_0x3fb9fe){const _0x4f782f=_0x1684,_0x5835e7={'XyQDb':function(_0x4a01c5,_0x127a6c){return _0x4a01c5(_0x127a6c);},'PDuLG':_0x4f782f(0x95),'lVUKK':'back-and-inspect','GdROp':'go\x20back\x20and\x20inspect','VuuTu':'inspect','chZYm':'video-stop','vlPBL':_0x4f782f(0xcf),'ResJt':_0x4f782f(0xd5)};switch(_0x3fb9fe){case'open-and-inspect':{const _0x2e2c9e=extractFirstCommandArgument(_0x2b9d71,_0x3fb9fe);return _0x2e2c9e?_0x4f782f(0xca)+_0x2e2c9e:'open\x20and\x20inspect';}case _0x4f782f(0xb3):return'click\x20and\x20inspect\x20'+_0x5835e7[_0x4f782f(0xa6)](formatCommandTarget,extractFirstCommandArgument(_0x2b9d71,_0x3fb9fe));case'fill':case _0x5835e7[_0x4f782f(0x9b)]:return'fill\x20'+_0x5835e7[_0x4f782f(0xa6)](formatCommandTarget,extractFirstCommandArgument(_0x2b9d71,_0x3fb9fe));case _0x5835e7[_0x4f782f(0xde)]:return _0x5835e7['GdROp'];case _0x5835e7[_0x4f782f(0xa5)]:return'inspect\x20page';case'tracing-stop':return _0x4f782f(0xd2);case _0x5835e7[_0x4f782f(0x93)]:return _0x5835e7[_0x4f782f(0xb7)];case _0x5835e7[_0x4f782f(0xdd)]:return'close\x20browser\x20session';default:return _0x3fb9fe;}}function renderScenarioSections(_0x327563){const _0x249e73=_0x1684,_0x4238de={'eexRW':'short','JElpT':_0x249e73(0xd3),'cVQEV':'\x20>\x20','AejWV':'element','gpNEn':function(_0x1fec5d,_0x8a9081){return _0x1fec5d>_0x8a9081;}},{checklistItem:_0x46ceed,itemFeedback:_0x579553}=_0x327563,_0x53a297=_0x46ceed[_0x249e73(0xc8)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x46ceed['notes']:'';let _0xac9917='';if(_0x579553&&_0x4238de['gpNEn'](_0x579553[_0x249e73(0xd4)][_0x249e73(0xc7)],0x0)){const _0x20d951=_0x579553[_0x249e73(0xd4)]['map'](_0x18d7e6=>{const _0x3d78a7=_0x249e73,_0x210cdc=new Date(_0x18d7e6['createdAt'])['toLocaleDateString']('en-US',{'month':_0x4238de['eexRW'],'day':_0x3d78a7(0xcd)}),_0x4b052c=_0x18d7e6[_0x3d78a7(0xcb)]||_0x18d7e6['authorEmail']||_0x4238de[_0x3d78a7(0x96)],_0x543210=_0x18d7e6[_0x3d78a7(0xe0)]?_0x3d78a7(0xdc)+(_0x18d7e6[_0x3d78a7(0xe0)][_0x3d78a7(0xe8)][_0x3d78a7(0xa7)](_0x4238de['cVQEV'])['pop']()?.[_0x3d78a7(0xa7)](':')[0x0]||_0x4238de[_0x3d78a7(0xc9)])+_0x3d78a7(0xb1)+(_0x18d7e6['domRef']['textContent']||'')[_0x3d78a7(0xce)](0x0,0x32)+'\x22)':'';return _0x3d78a7(0x97)+_0x18d7e6['id']+']\x20'+_0x4b052c+'\x20('+_0x210cdc+_0x3d78a7(0xba)+_0x18d7e6['content']+'\x22'+_0x543210;})['join']('\x0a');_0xac9917='\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'+_0x20d951;}const _0x265610=_0x579553?.['canonicalFlow']?_0x249e73(0xa2)+_0x579553['canonicalFlow']:'';return''+_0x46ceed[_0x249e73(0xaa)]+_0x53a297+_0xac9917+_0x265610;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x37a2c1){const _0x38f1ea=_0x1684,_0x66f58b={'dAkcE':_0x38f1ea(0xe7),'WHOph':function(_0x56c13d,_0x42b758){return _0x56c13d(_0x42b758);},'GOQBT':'about:blank'},{checklistItem:_0x2da618,itemFeedback:_0x33d06c,taskDescription:_0x16f035,commandPrefix:_0x5fb871,isCdpMode:_0x2f0737,url:_0x18d09c,cdpEndpoint:_0x53594f,loginInstructions:_0x1bbab5}=_0x37a2c1,_0x127efc=_0x38f1ea(0xac),_0x332d74=_0x66f58b['dAkcE'],_0x16917f=_0x2f0737?_0x5fb871+'\x20inspect\x20--screenshot-path\x20'+_0x66f58b['WHOph'](quoteShellArg,_0x127efc):_0x5fb871+_0x38f1ea(0xa4)+_0x66f58b['WHOph'](quoteShellArg,_0x18d09c??_0x66f58b[_0x38f1ea(0xd0)])+'\x20--screenshot-path\x20'+_0x66f58b['WHOph'](quoteShellArg,_0x127efc),_0x24f69a=_0x2f0737?'##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20'+_0x53594f+_0x38f1ea(0x9f):'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x18d09c+_0x38f1ea(0xe3),_0x88180b=_0x1bbab5?_0x38f1ea(0x9a)+_0x1bbab5+_0x38f1ea(0xd8):'';return _0x38f1ea(0xa1)+_0x66f58b['WHOph'](renderScenarioSections,{'checklistItem':_0x2da618,'itemFeedback':_0x33d06c})+_0x38f1ea(0xe6)+_0x16f035+'\x0a\x0a'+_0x24f69a+_0x88180b+'\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0x5fb871+'\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'+_0x16917f+'\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'+_0x5fb871+'\x20click-and-inspect\x20e37\x20--screenshot-path\x20'+quoteShellArg(_0x332d74)+_0x38f1ea(0xc4);}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0xbff557){const _0x4d5dcb=_0x1684,_0xe458d={'mJyCA':'01_mozilla-homepage.png','BLEqt':function(_0x50b46a,_0x3dec61){return _0x50b46a(_0x3dec61);}},_0x1ecfb8=_0xe458d[_0x4d5dcb(0x99)],_0x15e17d='key_02_learn-more.png';return _0x4d5dcb(0x9c)+_0xbff557[_0x4d5dcb(0xbd)]+'\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`'+_0xbff557['commandPrefix']+_0x4d5dcb(0xa4)+quoteShellArg(_0xbff557['url'])+'\x20--screenshot-path\x20'+quoteShellArg(_0x1ecfb8)+'`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`'+_0xbff557[_0x4d5dcb(0xbd)]+_0x4d5dcb(0x98)+_0xe458d[_0x4d5dcb(0xcc)](quoteShellArg,_0x15e17d)+_0x4d5dcb(0xeb);}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x4c15ba){const _0x3a2e84=_0x1684,_0x5536df={'VHvcp':function(_0x3db749,_0x2e9cf0){return _0x3db749===_0x2e9cf0;}},_0x28af9b=[..._0x4c15ba[_0x3a2e84(0xb5)]()]['sort']();let _0x3d98e0=0x0;for(const _0x24c343 of _0x4c15ba['values']()){_0x3d98e0+=_0x24c343;}return{'cliCommandCount':_0x3d98e0,'cliCommandsSeen':_0x28af9b,'noCliCommandsCalled':_0x5536df[_0x3a2e84(0xea)](_0x3d98e0,0x0)};}export function createVerifyFeatureRangerwrightCliHooks(_0x1efdd4){const _0x50035b=_0x1684,_0x51fdcf={'jhWZd':function(_0x5ca987,_0x5f2986){return _0x5ca987!==_0x5f2986;},'nHfMR':'Bash','NTyyZ':_0x50035b(0xad),'vzKeA':function(_0x374be1,_0x37f500,_0x3df839){return _0x374be1(_0x37f500,_0x3df839);},'NCvhF':'PostToolUseFailure','DjGqf':'rangerwright_cli_command_failure'},_0x48b39e=new Map(),_0x34f721=async _0x31140d=>{const _0x21dde9=_0x50035b;if(_0x31140d[_0x21dde9(0xe1)]!=='PostToolUse')return{};const _0x21103d=_0x31140d;if(_0x51fdcf[_0x21dde9(0xb0)](_0x21103d['tool_name'],_0x51fdcf['nHfMR']))return{};const _0x318ca2=_0x21103d['tool_input'],_0x345b38=extractBashCommand(_0x318ca2);if(!_0x345b38)return{};const _0x364990=parseRangerwrightCliCommand(_0x345b38);if(!_0x364990)return{};return _0x48b39e['set'](_0x364990,(_0x48b39e[_0x21dde9(0xaf)](_0x364990)||0x0)+0x1),_0x1efdd4['trackPhaseStart']('rangerwright_cli_command',{'subcommand':_0x364990}),_0x1efdd4['trackPhaseEnd'](_0x51fdcf['NTyyZ'],{'subcommand':_0x364990,'commandPreview':truncatePreview(_0x345b38)}),console[_0x21dde9(0xc0)](_0x21dde9(0xe9)+_0x51fdcf['vzKeA'](formatRangerwrightCliLog,_0x345b38,_0x364990)),{};},_0xa2f02c=async _0x17a0b6=>{const _0x5cbbd6=_0x50035b;if(_0x51fdcf['jhWZd'](_0x17a0b6[_0x5cbbd6(0xe1)],_0x51fdcf['NCvhF']))return{};const _0x4d60cc=_0x17a0b6;if(_0x4d60cc['tool_name']!==_0x5cbbd6(0x9e))return{};return await _0x1efdd4['trackPhaseError'](_0x51fdcf[_0x5cbbd6(0xd1)],_0x4d60cc[_0x5cbbd6(0xe2)],{'transport':'rangerwright-cli','toolName':_0x51fdcf[_0x5cbbd6(0xc2)]}),{};};return{'postToolUseHook':_0x34f721,'postToolUseFailureHook':_0xa2f02c,'commandCounts':_0x48b39e};}async function runRangerwrightLifecycleCommand(_0x453f24){const _0x113087=_0x1684,_0x1c8716={'Ixwea':function(_0xe62673,_0xd8e291){return _0xe62673??_0xd8e291;},'DqSIS':function(_0x356143,_0x35e934,_0x2ee972){return _0x356143(_0x35e934,_0x2ee972);}},{options:_0x4cf388,commandArgs:_0x101475,env:_0x4fd9a1,telemetry:_0x84fc0e,phase:_0x3e5b80,metadata:_0x332d63,timeoutMs:_0xa486f3}=_0x453f24;_0x84fc0e[_0x113087(0xe4)](_0x3e5b80,_0x332d63);try{const _0x369ac8=await runRangerwrightCliCommand({..._0x4cf388,'commandArgs':_0x101475,'cwd':process['cwd'](),'env':_0x4fd9a1,'timeoutMs':_0x1c8716[_0x113087(0xae)](_0xa486f3,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x84fc0e['trackPhaseEnd'](_0x3e5b80,{..._0x332d63,'subcommand':_0x369ac8['invocation']['subcommand'],'stdoutPreview':truncatePreview(_0x369ac8['stdout'],0x7d0),'stderrPreview':_0x1c8716['DqSIS'](truncatePreview,_0x369ac8['stderr'],0x7d0)});}catch(_0x487ef0){await _0x84fc0e['trackPhaseError'](_0x3e5b80,_0x487ef0,_0x332d63);throw _0x487ef0;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x48e35a){const _0x4e2399=_0x1684,_0x2630b9={'zaliK':_0x4e2399(0x94),'iBJSW':_0x4e2399(0xbb),'HyhYX':function(_0x2238f1,_0x4efa15){return _0x2238f1(_0x4efa15);}},{telemetry:_0x398592,rangerwrightOptions:_0x355db4,env:_0x4b2190,transportMetadata:_0xb67aa7}=_0x48e35a,_0x54817a=[{'phase':_0x2630b9[_0x4e2399(0xc6)],'commandArgs':[_0x4e2399(0xa8)]},{'phase':'rangerwright_cli_video_stop','commandArgs':[_0x2630b9['iBJSW']]},{'phase':'rangerwright_cli_close','commandArgs':['close']}];for(const _0x4cd3ac of _0x54817a){try{await _0x2630b9[_0x4e2399(0xa0)](runRangerwrightLifecycleCommand,{'options':_0x355db4,'commandArgs':[..._0x4cd3ac[_0x4e2399(0x9d)]],'env':_0x4b2190,'telemetry':_0x398592,'phase':_0x4cd3ac[_0x4e2399(0xab)],'metadata':_0xb67aa7});}catch{}}}
1
+ (function(_0x2b7448,_0xa53566){const _0x368bc7=_0x1673,_0xf8fa2e=_0x2b7448();while(!![]){try{const _0x56b14c=-parseInt(_0x368bc7(0x14d))/0x1*(parseInt(_0x368bc7(0xff))/0x2)+-parseInt(_0x368bc7(0x14a))/0x3*(-parseInt(_0x368bc7(0x13f))/0x4)+parseInt(_0x368bc7(0x12d))/0x5*(-parseInt(_0x368bc7(0x114))/0x6)+parseInt(_0x368bc7(0xf4))/0x7+-parseInt(_0x368bc7(0x11d))/0x8*(-parseInt(_0x368bc7(0xf8))/0x9)+-parseInt(_0x368bc7(0x14f))/0xa*(-parseInt(_0x368bc7(0x110))/0xb)+-parseInt(_0x368bc7(0x13d))/0xc;if(_0x56b14c===_0xa53566)break;else _0xf8fa2e['push'](_0xf8fa2e['shift']());}catch(_0x42d4aa){_0xf8fa2e['push'](_0xf8fa2e['shift']());}}}(_0x35b8,0x419bf));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(_0x224b41,_0x43a87c=RANGERWRIGHT_CLI_PREVIEW_LIMIT){const _0x32e962=_0x1673,_0x7dd7c7={'vrFyT':function(_0x50e308,_0x4ba412){return _0x50e308+_0x4ba412;},'yjCkJ':'...'};return _0x224b41[_0x32e962(0x100)]>_0x43a87c?_0x7dd7c7[_0x32e962(0xf3)](_0x224b41[_0x32e962(0xf1)](0x0,_0x43a87c),_0x7dd7c7[_0x32e962(0x11c)]):_0x224b41;}function extractShellValue(_0x2d760c){if(!_0x2d760c)return null;return _0x2d760c[0x1]??_0x2d760c[0x2]??_0x2d760c[0x3]??null;}function extractFirstCommandArgument(_0x21134d,_0x14f688){const _0xe01c75=_0x1673,_0x400bd1={'WyNbV':_0xe01c75(0x104),'zVZRo':function(_0x496c11,_0x43daa9){return _0x496c11(_0x43daa9);}},_0x5409c0=_0x14f688[_0xe01c75(0x143)](/[.*+?^${}()|[\]\\]/g,_0x400bd1['WyNbV']);return _0x400bd1['zVZRo'](extractShellValue,_0x21134d['match'](new RegExp(_0xe01c75(0x13c)+_0x5409c0+'(?:\x5cs+(?:\x22([^\x22]+)\x22|\x27([^\x27]+)\x27|(\x5cS+)))')));}function formatCommandTarget(_0x42ebb2){const _0x1be2d8=_0x1673,_0x148f05={'ZIjyL':_0x1be2d8(0x148),'jSNIB':function(_0x58d923,_0x54292c,_0x5c5fd0){return _0x58d923(_0x54292c,_0x5c5fd0);}};if(!_0x42ebb2)return _0x148f05['ZIjyL'];if(/^e\d+$/i[_0x1be2d8(0x106)](_0x42ebb2))return _0x1be2d8(0x134)+_0x42ebb2;return JSON[_0x1be2d8(0xfc)](_0x148f05['jSNIB'](truncatePreview,_0x42ebb2,0x78));}function _0x35b8(){const _0x38e213=['content','vrFyT','3232537DTCmRr','01_initial-state.png','join','trackPhaseError','2925dGUppg','authorEmail','):\x20\x22','tKmfL','stringify','stop\x20video\x20recording','ibDgU','1051530Wtqjxr','length','IJSNB','get','PostToolUseFailure','\x5c$&','>\x20\x22','test','xvZcJ','wzqYr','authorName','tool_input','PostToolUse','trackPhaseEnd','phase','inspect','PKtnD','22llMhAJ','MgYiY','tool_name','textContent','6lPDQJF','error','gayPn','uIXPm','close','rangerwright_cli_command','`\x0a2.\x20Use\x20the\x20returned\x20JSON\x20to\x20find\x20the\x20\x22Learn\x20More\x22\x20link\x20ref.\x0a3.\x20Run\x20`','[rangerwright-cli]\x20','yjCkJ','13120qdYbdT','sort','split','push','fZZsi','matchAll','xsiaZ','meJco','##\x20App\x20Context\x0aYou\x20are\x20connected\x20to\x20a\x20desktop\x20application\x20via\x20CDP\x20at\x20','\x20>\x20','tracing-stop','notes','Bash','\x20open-and-inspect\x20','\x0a\x0a##\x20Authentication\x0aBEFORE\x20starting\x20the\x20verification\x20task,\x20authenticate\x20using\x20these\x20steps:\x0a','weBwN','2451420bxScPN','inspect\x20page','commandPrefix','VoPLn','srrPU','key_02_learn-more.png','open\x20and\x20inspect','ref\x20','zFsAe','values','keys','rangerwright_cli_video_stop','fill','domRef','unaddressedComments','(?:^|\x5cs)','2358948gAIplK','\x20--screenshot-path\x20','8WdfRRt','numeric','trackPhaseStart','\x20click-and-inspect\x20e37\x20--screenshot-path\x20','replace','lAiUE','click\x20and\x20inspect\x20','MJKeL','stderr','target','map','453339kpYDrJ','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','HZGBq','1tqGGCH','Reviewer','921730sfLRuY','NzAYu','PGunP','subcommand','slice'];_0x35b8=function(){return _0x38e213;};return _0x35b8();}function formatRangerwrightCliLog(_0x20fed3,_0x29d92c){const _0xedccae=_0x1673,_0x153122={'myQUu':'open-and-inspect','xsiaZ':function(_0x1cc623,_0x11675b,_0x142261){return _0x1cc623(_0x11675b,_0x142261);},'qMCEX':'click-and-inspect','wzqYr':function(_0x4a15fd,_0x52f99a){return _0x4a15fd(_0x52f99a);},'PKtnD':function(_0x3cb09e,_0x257841,_0x3e61c8){return _0x3cb09e(_0x257841,_0x3e61c8);},'jKPIi':_0xedccae(0x139),'RoGOe':'go\x20back\x20and\x20inspect','hOIaz':_0xedccae(0x12e),'GrUid':_0xedccae(0x127),'jdQVq':'video-stop','tQwcb':_0xedccae(0xfd),'PWRfb':'close\x20browser\x20session'};switch(_0x29d92c){case _0x153122['myQUu']:{const _0x2e18fc=_0x153122[_0xedccae(0x123)](extractFirstCommandArgument,_0x20fed3,_0x29d92c);return _0x2e18fc?'open\x20and\x20inspect\x20'+_0x2e18fc:_0xedccae(0x133);}case _0x153122['qMCEX']:return _0xedccae(0x145)+_0x153122[_0xedccae(0x108)](formatCommandTarget,_0x153122[_0xedccae(0x10f)](extractFirstCommandArgument,_0x20fed3,_0x29d92c));case _0x153122['jKPIi']:case'fill-and-inspect':return'fill\x20'+formatCommandTarget(extractFirstCommandArgument(_0x20fed3,_0x29d92c));case'back-and-inspect':return _0x153122['RoGOe'];case _0xedccae(0x10e):return _0x153122['hOIaz'];case _0x153122['GrUid']:return'stop\x20tracing';case _0x153122['jdQVq']:return _0x153122['tQwcb'];case _0xedccae(0x118):return _0x153122['PWRfb'];default:return _0x29d92c;}}function renderScenarioSections(_0x52fd2e){const _0x596404=_0x1673,_0x3e3f17={'HZGBq':'en-US','NzAYu':'short','MJKeL':_0x596404(0x14e),'VoPLn':_0x596404(0x126),'yubFB':'element','fZZsi':function(_0x157468,_0x25bfa1){return _0x157468>_0x25bfa1;}},{checklistItem:_0x1068aa,itemFeedback:_0x1979e2}=_0x52fd2e,_0xdeac24=_0x1068aa[_0x596404(0x128)]?'\x0a\x0a##\x20Additional\x20Notes\x0a'+_0x1068aa[_0x596404(0x128)]:'';let _0x2fba0f='';if(_0x1979e2&&_0x3e3f17[_0x596404(0x121)](_0x1979e2[_0x596404(0x13b)]['length'],0x0)){const _0x2f27c3=_0x1979e2[_0x596404(0x13b)][_0x596404(0x149)](_0x47d945=>{const _0x1889c6=_0x596404,_0x47d614=new Date(_0x47d945['createdAt'])['toLocaleDateString'](_0x3e3f17[_0x1889c6(0x14c)],{'month':_0x3e3f17[_0x1889c6(0x150)],'day':_0x1889c6(0x140)}),_0x5a89d1=_0x47d945[_0x1889c6(0x109)]||_0x47d945[_0x1889c6(0xf9)]||_0x3e3f17[_0x1889c6(0x146)],_0x427ead=_0x47d945[_0x1889c6(0x13a)]?'\x20(on\x20element:\x20<'+(_0x47d945['domRef']['selector'][_0x1889c6(0x11f)](_0x3e3f17[_0x1889c6(0x130)])['pop']()?.['split'](':')[0x0]||_0x3e3f17['yubFB'])+_0x1889c6(0x105)+(_0x47d945[_0x1889c6(0x13a)][_0x1889c6(0x113)]||'')[_0x1889c6(0xf1)](0x0,0x32)+'\x22)':'';return'-\x20['+_0x47d945['id']+']\x20'+_0x5a89d1+'\x20('+_0x47d614+_0x1889c6(0xfa)+_0x47d945[_0x1889c6(0xf2)]+'\x22'+_0x427ead;})[_0x596404(0xf6)]('\x0a');_0x2fba0f='\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'+_0x2f27c3;}const _0x5764cc=_0x1979e2?.['canonicalFlow']?'\x0a\x0a##\x20Expected\x20Flow\x20(from\x20previous\x20verification)\x0a'+_0x1979e2['canonicalFlow']:'';return''+_0x1068aa['description']+_0xdeac24+_0x2fba0f+_0x5764cc;}function _0x1673(_0x3c28ef,_0x5e0177){_0x3c28ef=_0x3c28ef-0xf0;const _0x35b8a5=_0x35b8();let _0x16735a=_0x35b8a5[_0x3c28ef];return _0x16735a;}export function buildVerifyFeatureRangerwrightCliPrompt(_0x2b2b88){const _0x2b95e3=_0x1673,_0x2cab96={'xvZcJ':'key_99_final-state.png','uIXPm':function(_0x30b63b,_0x111d41){return _0x30b63b(_0x111d41);},'ibDgU':function(_0x24c767,_0x16b17a){return _0x24c767(_0x16b17a);},'YuNCB':function(_0x252ea4,_0x3b1207){return _0x252ea4(_0x3b1207);}},{checklistItem:_0x31fd49,itemFeedback:_0x2d33ad,taskDescription:_0x6133f8,commandPrefix:_0xcbf0c8,isCdpMode:_0x4d7082,url:_0x584a5b,cdpEndpoint:_0x292877,loginInstructions:_0x5e214d}=_0x2b2b88,_0x118eea=_0x2b95e3(0xf5),_0x4a9b19=_0x2cab96[_0x2b95e3(0x107)],_0x5a87aa=_0x4d7082?_0xcbf0c8+'\x20inspect\x20--screenshot-path\x20'+quoteShellArg(_0x118eea):_0xcbf0c8+_0x2b95e3(0x12a)+_0x2cab96[_0x2b95e3(0x117)](quoteShellArg,_0x584a5b??'about:blank')+_0x2b95e3(0x13e)+_0x2cab96['ibDgU'](quoteShellArg,_0x118eea),_0x4f2c8b=_0x4d7082?_0x2b95e3(0x125)+_0x292877+'.\x0aThe\x20app\x20is\x20already\x20running\x20and\x20connected.\x20Start\x20with\x20inspect\x20instead\x20of\x20opening\x20a\x20URL.':'CRITICAL\x20URL\x20REQUIREMENT:\x0aYour\x20base\x20URL\x20is:\x20'+_0x584a5b+'\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.',_0x4b3691=_0x5e214d?_0x2b95e3(0x12b)+_0x5e214d+'\x0a\x0aAfter\x20completing\x20authentication,\x20proceed\x20with\x20the\x20verification\x20task\x20below.\x0aIf\x20authentication\x20fails,\x20return\x20evaluation\x20\x22blocked\x22\x20and\x20describe\x20the\x20auth\x20failure.':'';return _0x2b95e3(0x14b)+_0x2cab96['YuNCB'](renderScenarioSections,{'checklistItem':_0x31fd49,'itemFeedback':_0x2d33ad})+'\x0a\x0a##\x20Task\x20to\x20Execute\x0a'+_0x6133f8+'\x0a\x0a'+_0x4f2c8b+_0x4b3691+'\x0a\x0a##\x20Rangerwright\x20Instructions\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x0a\x0aEvery\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0xcbf0c8+'\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'+_0x5a87aa+'\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'+_0xcbf0c8+_0x2b95e3(0x142)+_0x2cab96[_0x2b95e3(0xfe)](quoteShellArg,_0x4a9b19)+'\x0a\x0aRefs\x20like\x20e37\x20are\x20only\x20valid\x20for\x20the\x20snapshot\x20that\x20produced\x20them.\x20Refresh\x20refs\x20after\x20navigation.\x0a\x0aUse\x20short\x20concrete\x20checkpoints\x20internally:\x20what\x20target\x20is\x20visible,\x20what\x20command\x20changes\x20state,\x20and\x20what\x20evidence\x20is\x20still\x20missing.\x20Issue\x20one\x20browser\x20command\x20at\x20a\x20time.\x20After\x20navigation,\x20validation,\x20or\x20a\x20changed\x20page,\x20inspect\x20before\x20deciding\x20the\x20next\x20action.\x0a\x0aBefore\x20reporting\x20success,\x20compare\x20each\x20required\x20CTA,\x20page\x20purpose,\x20and\x20topic\x20against\x20visible\x20page\x20evidence.\x20A\x20related\x20page\x20does\x20not\x20satisfy\x20a\x20different\x20required\x20topic\x20unless\x20the\x20page\x20text\x20directly\x20supports\x20that\x20topic\x20or\x20an\x20obvious\x20synonym.\x20If\x20required\x20evidence\x20is\x20missing,\x20mismatched,\x20or\x20only\x20inferred\x20from\x20adjacent\x20content,\x20report\x20that\x20plainly\x20and\x20do\x20not\x20mark\x20the\x20task\x20verified.\x0a\x0aFor\x20goals\x20with\x20more\x20than\x20one\x20required\x20condition,\x20use\x20an\x20internal\x20checklist\x20built\x20from\x20the\x20user\x27s\x20exact\x20requested\x20conditions.\x20Verify\x20each\x20checklist\x20item\x20against\x20visible\x20evidence\x20from\x20the\x20latest\x20browser\x20result.\x20If\x20any\x20item\x20lacks\x20direct\x20evidence,\x20report\x20the\x20task\x20as\x20not\x20verified\x20and\x20name\x20the\x20missing\x20item.\x0a\x0aOn\x20forms,\x20fill\x20only\x20visible\x20task-relevant\x20editable\x20fields\x20in\x20the\x20current\x20step\x20before\x20submitting\x20or\x20advancing.\x20Use\x20labels,\x20placeholders,\x20and\x20current\x20page\x20text\x20to\x20decide\x20which\x20fields\x20are\x20required.\x20Do\x20not\x20fill\x20fields\x20that\x20are\x20not\x20visible\x20in\x20the\x20latest\x20snapshot.\x0a\x0aUse\x20one\x20fill\x20command\x20per\x20field.\x20Do\x20not\x20combine\x20multiple\x20fields\x20into\x20one\x20fill\x20command\x20with\x20semicolons.\x0a\x0aIf\x20an\x20inspect-action\x20click\x20returns\x20the\x20same\x20page\x20or\x20shows\x20validation,\x20inspect\x20the\x20current\x20page\x20and\x20fill\x20blank\x20required\x20fields\x20before\x20retrying.\x20Do\x20not\x20repeat\x20the\x20same\x20blocked\x20click\x20unchanged.\x0a\x0aIf\x20a\x20click-and-inspect\x20result\x20keeps\x20the\x20same\x20URL\x20and\x20does\x20not\x20show\x20the\x20intended\x20target,\x20treat\x20it\x20as\x20a\x20no-op.\x20Refresh\x20refs\x20and\x20choose\x20a\x20different\x20visible\x20link,\x20or\x20use\x20back-and-inspect\x20if\x20you\x20need\x20the\x20prior\x20page.\x0a\x0aA\x20page\x20with\x20visible\x20required\x20fields\x20and\x20a\x20next,\x20submit,\x20continue,\x20or\x20confirm\x20control\x20is\x20still\x20actionable.\x20Fill\x20the\x20required\x20fields\x20with\x20values\x20from\x20the\x20task\x20before\x20reporting\x20incomplete\x20or\x20blocked.\x0a\x0a##\x20Critical:\x20Early\x20Error\x20Detection\x0aAfter\x20the\x20first\x20inspect\x20result,\x20check\x20for\x20blocking\x20errors:\x0a-\x20HTTP\x20404,\x20500,\x20400,\x20\x22Not\x20Found\x22,\x20\x22Server\x20Error\x22,\x20or\x20\x22Bad\x20Request\x22\x0a-\x20Framework\x20error\x20pages\x0a-\x20Blank\x20pages\x20with\x20no\x20content\x0a-\x20App\x20crash\x20or\x20error\x20dialogs\x0a\x0aIf\x20any\x20blocking\x20error\x20is\x20visible,\x20return\x20evaluation\x20\x22blocked\x22\x20immediately\x20with\x20a\x20specific\x20reason.\x0a\x0a##\x20Evaluation\x20Criteria\x0a-\x20VERIFIED:\x20The\x20task\x20completed\x20successfully\x20and\x20the\x20scenario\x20requirements\x20are\x20fully\x20met\x0a-\x20PARTIAL:\x20The\x20task\x20partially\x20completed\x20but\x20some\x20aspects\x20are\x20not\x20verified\x0a-\x20BLOCKED:\x20A\x20blocking\x20issue\x20prevents\x20completion\x0a-\x20FAILED:\x20The\x20task\x20could\x20not\x20be\x20completed\x20due\x20to\x20errors\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format\x20with\x20your\x20evaluation.';}export function buildVerifyFeatureRangerwrightCliDebugPrompt(_0xd043b9){const _0x5e4399=_0x1673,_0x5948f8={'iGkFv':'01_mozilla-homepage.png','meJco':function(_0x29e51f,_0x4e85ff){return _0x29e51f(_0x4e85ff);}},_0x15073c=_0x5948f8['iGkFv'],_0x7b5284=_0x5e4399(0x132);return'You\x20are\x20testing\x20browser\x20automation.\x20Your\x20task\x20is\x20simple:\x0a\x0aUse\x20Bash\x20and\x20Rangerwright\x20only.\x20Every\x20browser\x20command\x20must\x20start\x20with\x20this\x20exact\x20literal\x20command\x20prefix:\x0a\x0a'+_0xd043b9['commandPrefix']+'\x0a\x0aDo\x20not\x20define\x20an\x20RW\x20variable.\x20Do\x20not\x20use\x20node_modules/.bin/rangerwright,\x20npx,\x20npm,\x20cd,\x20find,\x20grep,\x20or\x20search\x20for\x20the\x20binary.\x0a\x0a1.\x20Run\x20`'+_0xd043b9[_0x5e4399(0x12f)]+_0x5e4399(0x12a)+quoteShellArg(_0xd043b9['url'])+'\x20--screenshot-path\x20'+_0x5948f8[_0x5e4399(0x124)](quoteShellArg,_0x15073c)+_0x5e4399(0x11a)+_0xd043b9[_0x5e4399(0x12f)]+'\x20click-and-inspect\x20<ref>\x20--screenshot-path\x20'+quoteShellArg(_0x7b5284)+'`\x0a4.\x20Return\x20immediately\x20with\x20the\x20structured\x20output.\x0a\x0aReturn\x20your\x20findings\x20in\x20the\x20structured\x20output\x20format.';}export function extractRangerwrightScreenshotPaths(_0x20eb03){const _0x22e1f2=_0x1673,_0x303ba9={'srrPU':function(_0x9151be,_0x1e2484){return _0x9151be(_0x1e2484);}};if(!_0x303ba9[_0x22e1f2(0x131)](parseRangerwrightCliCommand,_0x20eb03))return[];const _0x25e8bd=[],_0x25c138=/--screenshot-path(?:=|\s+)(?:"([^"]*)"|'([^']*)'|(\S+))/g;for(const _0x22751e of _0x20eb03[_0x22e1f2(0x122)](_0x25c138)){const _0x40a560=_0x22751e[0x1]??_0x22751e[0x2]??_0x22751e[0x3]??'',_0x3c50c0=_0x40a560['startsWith']('./')?_0x40a560['slice'](0x2):_0x40a560;if(!_0x3c50c0||_0x3c50c0['startsWith']('/'))continue;_0x25e8bd[_0x22e1f2(0x120)](_0x3c50c0);}return _0x25e8bd;}export function summarizeVerifyFeatureRangerwrightCliCommandAvailability(_0x1b31af){const _0xefbacf=_0x1673,_0x347153=[..._0x1b31af[_0xefbacf(0x137)]()][_0xefbacf(0x11e)]();let _0x2a7bf6=0x0;for(const _0x3806ad of _0x1b31af[_0xefbacf(0x136)]()){_0x2a7bf6+=_0x3806ad;}return{'cliCommandCount':_0x2a7bf6,'cliCommandsSeen':_0x347153,'noCliCommandsCalled':_0x2a7bf6===0x0};}export function createVerifyFeatureRangerwrightCliHooks(_0x6b0bf1){const _0x4a6de2=_0x1673,_0x46492a={'lAiUE':function(_0x57637d,_0x582c48){return _0x57637d!==_0x582c48;},'tKmfL':'Bash','sqQpQ':_0x4a6de2(0x119),'zFsAe':function(_0x347cfe,_0x7413fd){return _0x347cfe(_0x7413fd);},'PGunP':function(_0x35a835,_0x55e2fd,_0x4045b9){return _0x35a835(_0x55e2fd,_0x4045b9);},'weBwN':_0x4a6de2(0x103)},_0x20768d=new Map(),_0x18476a=async _0x8a98d9=>{const _0x45abe3=_0x4a6de2;if(_0x46492a[_0x45abe3(0x144)](_0x8a98d9['hook_event_name'],_0x45abe3(0x10b)))return{};const _0x46a370=_0x8a98d9;if(_0x46a370[_0x45abe3(0x112)]!==_0x46492a['tKmfL'])return{};const _0x133964=_0x46a370[_0x45abe3(0x10a)],_0x414927=extractBashCommand(_0x133964);if(!_0x414927)return{};const _0x3bd3eb=parseRangerwrightCliCommand(_0x414927);if(!_0x3bd3eb)return{};return _0x20768d['set'](_0x3bd3eb,(_0x20768d[_0x45abe3(0x102)](_0x3bd3eb)||0x0)+0x1),_0x6b0bf1[_0x45abe3(0x141)]('rangerwright_cli_command',{'subcommand':_0x3bd3eb}),_0x6b0bf1[_0x45abe3(0x10c)](_0x46492a['sqQpQ'],{'subcommand':_0x3bd3eb,'commandPreview':_0x46492a[_0x45abe3(0x135)](truncatePreview,_0x414927)}),console['log'](_0x45abe3(0x11b)+_0x46492a[_0x45abe3(0x151)](formatRangerwrightCliLog,_0x414927,_0x3bd3eb)),{};},_0x1f4e19=async _0x329b02=>{const _0x4dd98d=_0x4a6de2;if(_0x46492a[_0x4dd98d(0x144)](_0x329b02['hook_event_name'],_0x46492a[_0x4dd98d(0x12c)]))return{};const _0x168a11=_0x329b02;if(_0x168a11[_0x4dd98d(0x112)]!==_0x46492a[_0x4dd98d(0xfb)])return{};return await _0x6b0bf1[_0x4dd98d(0xf7)]('rangerwright_cli_command_failure',_0x168a11[_0x4dd98d(0x115)],{'transport':'rangerwright-cli','toolName':_0x4dd98d(0x129)}),{};};return{'postToolUseHook':_0x18476a,'postToolUseFailureHook':_0x1f4e19,'commandCounts':_0x20768d};}async function runRangerwrightLifecycleCommand(_0x324c90){const _0x2754ab=_0x1673,_0x204c16={'IJSNB':function(_0x18788e,_0xfb378a){return _0x18788e(_0xfb378a);},'gayPn':function(_0x1118b0,_0x34b94d){return _0x1118b0??_0x34b94d;}},{options:_0x239ce6,commandArgs:_0x23f2bb,env:_0x3129af,telemetry:_0x194692,phase:_0x149388,metadata:_0x54ad82,timeoutMs:_0x23182a}=_0x324c90;_0x194692['trackPhaseStart'](_0x149388,_0x54ad82);try{const _0x1b3f98=await _0x204c16[_0x2754ab(0x101)](runRangerwrightCliCommand,{..._0x239ce6,'commandArgs':_0x23f2bb,'cwd':process['cwd'](),'env':_0x3129af,'timeoutMs':_0x204c16[_0x2754ab(0x116)](_0x23182a,RANGERWRIGHT_CLI_COMMAND_TIMEOUT_MS)});_0x194692['trackPhaseEnd'](_0x149388,{..._0x54ad82,'subcommand':_0x1b3f98['invocation'][_0x2754ab(0xf0)],'stdoutPreview':truncatePreview(_0x1b3f98['stdout'],0x7d0),'stderrPreview':truncatePreview(_0x1b3f98[_0x2754ab(0x147)],0x7d0)});}catch(_0x267362){await _0x194692['trackPhaseError'](_0x149388,_0x267362,_0x54ad82);throw _0x267362;}}export async function finalizeVerifyFeatureRangerwrightCliSession(_0x515717){const _0x577048=_0x1673,_0x2ca0ea={'MgYiY':'rangerwright_cli_tracing_stop','QZqOJ':_0x577048(0x138),'CpaBO':function(_0xe042d9,_0x245ddf){return _0xe042d9(_0x245ddf);}},{telemetry:_0x4570ce,rangerwrightOptions:_0x474c5c,env:_0x5140e5,transportMetadata:_0x184827}=_0x515717,_0x5ddcf5=[{'phase':_0x2ca0ea[_0x577048(0x111)],'commandArgs':['tracing-stop']},{'phase':_0x2ca0ea['QZqOJ'],'commandArgs':['video-stop']},{'phase':'rangerwright_cli_close','commandArgs':[_0x577048(0x118)]}];for(const _0x5eaaf6 of _0x5ddcf5){try{await _0x2ca0ea['CpaBO'](runRangerwrightLifecycleCommand,{'options':_0x474c5c,'commandArgs':[..._0x5eaaf6['commandArgs']],'env':_0x5140e5,'telemetry':_0x4570ce,'phase':_0x5eaaf6[_0x577048(0x10d)],'metadata':_0x184827});}catch{}}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ranger-testing/ranger-cli",
3
- "version": "3.1.7-alpha.62f152a-54",
3
+ "version": "3.1.7-alpha.a5be4ca-60",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "ranger": "./build/cli.js",
@@ -13,7 +13,7 @@
13
13
  "dev": "tsx src/cli.ts",
14
14
  "check-playwright-version": "node scripts/check-playwright-version.cjs",
15
15
  "postinstall": "node scripts/postinstall.js",
16
- "test": "jest --config jest.config.cjs"
16
+ "test": "cd ../.. && TEST_ENVIRONMENT=true tsx --import ./tests/node-runner/setup.ts --test --test-concurrency=1 ./tests/node-runner/cli/*.test.cjs"
17
17
  },
18
18
  "files": [
19
19
  "build",
@@ -21,24 +21,22 @@
21
21
  ],
22
22
  "dependencies": {
23
23
  "@anthropic-ai/claude-agent-sdk": "^0.1.0",
24
- "@playwright/cli": "0.1.1",
25
- "@ranger-testing/rangerwright": "^0.0.27",
24
+ "@playwright/cli": "0.1.12",
25
+ "@playwright/mcp": "0.0.74",
26
+ "@ranger-testing/rangerwright": "^0.0.32",
26
27
  "dotenv": "^16.4.5",
27
28
  "inquirer": "^9.2.12",
28
- "playwright": "1.56.1",
29
+ "playwright": "1.60.0",
29
30
  "ws": "^8.20.1",
30
31
  "yargs": "^17.7.2",
31
32
  "zod": "^3.23.8"
32
33
  },
33
34
  "devDependencies": {
34
35
  "@types/inquirer": "^9.0.7",
35
- "@types/jest": "^29.5.0",
36
36
  "@types/node": "^22.0.0",
37
37
  "@types/ws": "^8.18.1",
38
38
  "@types/yargs": "^17.0.32",
39
- "jest": "^29.7.0",
40
39
  "javascript-obfuscator": "^4.1.1",
41
- "ts-jest": "^29.1.0",
42
40
  "tsx": "^4.20.6",
43
41
  "typescript": "^5.0.0"
44
42
  },
@@ -48,6 +46,14 @@
48
46
  "brace-expansion": "^5.0.6",
49
47
  "fast-uri": "3.1.2",
50
48
  "@babel/core": "^7.29.6",
51
- "js-yaml": "^4.2.0"
49
+ "js-yaml": "^4.2.0",
50
+ "@playwright/cli": {
51
+ "playwright": "1.60.0",
52
+ "playwright-core": "1.60.0"
53
+ },
54
+ "@playwright/mcp": {
55
+ "playwright": "1.60.0",
56
+ "playwright-core": "1.60.0"
57
+ }
52
58
  }
53
59
  }