{"_id":"@avi892nash/aegis-grid-runner","_rev":"46-710aa420d51931a1c17c8b2335a7ba43","name":"@avi892nash/aegis-grid-runner","dist-tags":{"latest":"1.0.0"},"versions":{"0.1.0":{"name":"@avi892nash/aegis-grid-runner","version":"0.1.0","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.1.0","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"1bbf76c4b8fcc02fc3584083af92dfb9642bdfed","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.1.0.tgz","fileCount":4,"integrity":"sha512-51CocnL4JGJ63nwPpyWmSNvZy0I8sWQ7oGC6rbO8MEfxB++zj7Ws3PLitoAHp3bDtsqRvbnv8Ucsg8u+ZbDCxw==","signatures":[{"sig":"MEQCICc98J3BjwAHQkwQEMz8ODqy+9tA3do+iWxQZE4ME78nAiBEyhArwP0TFzNnTiugSTfNykk14EKJVMKEmtVNz+zeBw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":262635},"type":"module","engines":{"node":">=18"},"gitHead":"2cf4b206d80b385789ee4dc962609d326fe25f5d","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.1.0_1785413672331_0.6766646007946946","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@avi892nash/aegis-grid-runner","version":"0.2.0","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.2.0","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"5f49fc496dd01be8f79e007f57656ba6e427f75c","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.2.0.tgz","fileCount":4,"integrity":"sha512-ipOCW1HGkFGxYFadYLRto3mUPrl2WPruMTmDVhIjzvXdH94hbr+Hj307gzfogp8zxFqfE5GXWTni0NnKeBUdsA==","signatures":[{"sig":"MEUCIQDwVNCajcH1KJRf4HBQblLq2FxuHd9h0EMwdP1sjyEeZQIgX6KtjWYFNfPv5HV2LxcHN7FTN9b6xputFhnirgkTksk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274948},"type":"module","engines":{"node":">=18"},"gitHead":"2cf4b206d80b385789ee4dc962609d326fe25f5d","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.2.0_1785415036930_0.27510608418688043","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.0","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.0","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"f4041a0086c9cf994780bad3840ac6312853124d","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.0.tgz","fileCount":4,"integrity":"sha512-lQ3TR4Pbc4SVyZNbEtxOaRJapcjBiBFWKQTya2UiDHSnPRGowkx0Sd8KpEb6F0YWiUB3YwtELR3UPfijvioDng==","signatures":[{"sig":"MEYCIQCcrxVbUO/Hg86lG5O39MXiy4h0N1nODBt3vOUft/CEKAIhALqonYTHr4wA2S2DWTtTspcHNh4MVm5Tqn0sEZQsSCol","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":296943},"type":"module","engines":{"node":">=18"},"gitHead":"77f2129c14712898a80d0638cbf6273179ef284f","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.0_1785424122054_0.3880492387974581","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.1","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.1","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"e285688f9298e7947b23a10f1e10abcf84664dcc","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.1.tgz","fileCount":4,"integrity":"sha512-NZcdNwOk0xKoNsMJL3OBJS2l7f1ki4dUbuTa7HD/foOQfIHAi7M71Ga74yRF16Hs4LQNo4qPDI6t+qU5ijAThw==","signatures":[{"sig":"MEUCIEWGQrqTXB+lE39pOeExeEhleqcCGSf6u4tvXbXvlyFOAiEA9gJ8d8EobKxITZh2kKqTLOj35D4GPQHmnG1Dbqs87VM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":301947},"type":"module","engines":{"node":">=18"},"gitHead":"27b2b1fc342400c5f9406a50a13b159f54dbb5a3","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.1_1785425381118_0.03872979834519796","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.2","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.2","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"0a473ed0dfb0d241f97c3487af8c617946d308da","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.2.tgz","fileCount":4,"integrity":"sha512-CoPUNJep+u82YGnZB3xBXPb4JePhUVBclHH+3ON7MaYoinAwiQWhalCmRNtFtNR2uraonRehRXJuB+o7JIEDBg==","signatures":[{"sig":"MEQCIDJHcW2aqeVnbwv/v68UIAVIAD5cqqHAz/ECputPE0YGAiBKeDPFJHjUQwksR31AehK5TAP7m1/mnozDFt7aps1Jxw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":306807},"type":"module","engines":{"node":">=18"},"gitHead":"e89bdee174940ece0c8faf29194f321149166497","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.2_1785428057686_0.236812658095928","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.3","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.3","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"51091cf09eb0e332044127e31cf0b42f5c491476","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.3.tgz","fileCount":4,"integrity":"sha512-gKLZvggl+zy5lsCAGObbDX4FvA/GzDB7OmZSMgl5CzajABWNB+D9blVqr4YqHfM+TOTXz2Q9wgL/M3oz4+t9rg==","signatures":[{"sig":"MEUCIQDbzYUHdx0mM0I6nFb9SLfyXBmJX5QH9iA3FCmnTk+CjQIgVeLnKE/Wpd2XZezKZTZxBigKO8ZYQ5GPG9nAtkHiWio=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":316606},"type":"module","engines":{"node":">=18"},"gitHead":"0d0a3b16c0dd5816574ea2f72d0b2472399e45e6","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.3_1785429652051_0.6570361791556025","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.4","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.4","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"919f4141b8f9ad1da9092cb0d1eebbc23e402270","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.4.tgz","fileCount":4,"integrity":"sha512-Z6Sy6Zs9tfgZxIqTckzWGXtd5TtbJ8qr0B1gRrdniDpmBA7wKZzvpGkNtyMO6EOov9tELCinJ31uEuPbJulhug==","signatures":[{"sig":"MEUCIBzZ9qfN/4Nw1/ovm4EHFYNQ0rIGmGfZ0dhtybCyT13xAiEA9aksx+mC/z7L6fmdYmCrM/HFtZRY7OgmVEotTGqx9fM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":316699},"type":"module","engines":{"node":">=18"},"gitHead":"a9120a60ed2efe8db6d77dbb884aea5fc17d1212","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.4_1785430574175_0.8788471302533278","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.5","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.5","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"65bd2b6ee2ff406d3a9d3ecd0d2629983c6963de","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.5.tgz","fileCount":4,"integrity":"sha512-6Qz2b+h+lxJ1EPLl7BjwrEUkTsSDKt94gOL65zpVGSjxuaqa7ULBNbGhwdru1u1bQK4OJE5XtZrQ9oEDCI70pA==","signatures":[{"sig":"MEUCIALEU44AlaS2zortgaC4/u2yHDUY+H7LTJVxsw75M8DrAiEAiDR1AfDFG5MF8NTGfN8+KY+2IrIgaO0VV2zfxBZozqE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":323785},"type":"module","engines":{"node":">=18"},"gitHead":"240fb7d9cda5760213a42e3e74aa1ef94c300728","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.5_1785432583956_0.2949426439906193","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.7","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.7","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"8b93391cfaad250f655be4b848bce82e0d88701c","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.7.tgz","fileCount":4,"integrity":"sha512-BYkBgf+Xgv7zpeOPLj3S/OYmzLaQStiZh+46t1u2UKfXtWyVXIZJFN6RuB0hacWUu2dzlUX7qTxtj3uCFTVxoA==","signatures":[{"sig":"MEQCIBFZr0zSZPyTeAGUzkFw8ZvGHBTdwcCsT6mH4YWBLxacAiBIn1bxk09s5xHAKaobDOhjsk8BLL/QescgHFjEGijJxA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":315528},"type":"module","engines":{"node":">=18"},"gitHead":"ca5c89b80529e051830c043c74f79a4c48fb672d","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.7_1785435373682_0.6725927265044995","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.8","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.8","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"b5ccc1ee3144f4a568e620787401e74223458acc","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.8.tgz","fileCount":4,"integrity":"sha512-xkKstuMhqam+UnfGr+zqjddQfKREo2dsI+Vtt7+NjEDYRptV4XGnUPZu1F0zQSu5h0lZZhxHwIodoaPTOHNDig==","signatures":[{"sig":"MEUCICd7Gbkfe384EpsvWnONlEkPc3C+9395VFsOqdAnkmx5AiEAjW/vJ9sGuoBDPHqm133qxFPVuS9C9MLwuKumPhbOUgU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":332927},"type":"module","engines":{"node":">=18"},"gitHead":"af2263af3d602eb84e27b0195b72a62131554603","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.8_1785437594864_0.6517016350014622","host":"s3://npm-registry-packages-npm-production"}},"0.3.9":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.9","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.9","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"77ca31f290ab28c5cb008f01d95df73978fb96c1","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.9.tgz","fileCount":4,"integrity":"sha512-2jalbGOK8IVU0amHEucYL3ZqALbanfOtRlVnScIUUa3XiEszCBCDzxjnpGMS0Qt904+/NIkrh/L8F1kiy82aSw==","signatures":[{"sig":"MEYCIQCToDhBrXA2wexVP1w4Si5yQA0R1bv37qZMQpU3SJC3EQIhAN1AlaGoQ9L7oktvyL/OEWzdlEuRqNcNXeENBR+s7kfO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":360809},"type":"module","engines":{"node":">=18"},"gitHead":"cca243beff1cebdc01453d75a92ec2939d17a964","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.9_1785459149540_0.46439400689526367","host":"s3://npm-registry-packages-npm-production"}},"0.3.10":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.10","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.10","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"65c42ba72f60ec41c0efd2bbd6470c42602e9e06","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.10.tgz","fileCount":4,"integrity":"sha512-N2laYgFZolPcr/h9i25LEh/iJ3dhgCIyYYaaOtMKFpE2xGQhQwS1cfKAaM4K003PQmG4wF/R2T3Vdffu9sD8hw==","signatures":[{"sig":"MEUCIQCT9n08SKxsCrV3WnWbzvYOVIbIxABd+KOBjNV2k0lQYQIgYQX+5YyVIh2wE2f4HK2HPeFItoUDdK7cEiBWcPHNu4w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":371701},"type":"module","engines":{"node":">=18"},"gitHead":"6e30d41cbf161f0a1b8b742d4a294f12a7d964cc","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.10_1785544738551_0.2122062189687386","host":"s3://npm-registry-packages-npm-production"}},"0.3.11":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.11","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.11","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"0da69c6895a32687bc6acfe48b6c7fac36337cf6","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.11.tgz","fileCount":4,"integrity":"sha512-Sb6UyCiZC7ZyjMAAeURbPGbhIa1x2bJjbhBYdnOriaidKxZmf06ujSJilbhzW2e1HEP6RllJXkOY4KLG8Hk4SA==","signatures":[{"sig":"MEYCIQCg5NMuqtRKTDk0pqQC1KNlMsvX9QPNYTMoJKYF/UtcNwIhAPdWRsBm4HP4rdQSeXrdVOMc4v38wWv0w6ohR2aa7zsV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":379541},"type":"module","engines":{"node":">=18"},"gitHead":"6e30d41cbf161f0a1b8b742d4a294f12a7d964cc","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.11_1785546315526_0.6128691884278308","host":"s3://npm-registry-packages-npm-production"}},"0.3.12":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.12","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.12","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"712ab9bbfe1a169259a033f507acf1079aba9ade","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.12.tgz","fileCount":4,"integrity":"sha512-X/xv2CAsGmk6oDVonLOYFCLh1tRBtapO2ifGt9nbdg8VTybqPtfdwu2xcCiIjG2Lrmb50+2dkAZm7681At/qvQ==","signatures":[{"sig":"MEUCIQDbn8zdaX6z91jnEyjjWc2pfoPAvQIhmnEwF6yKkv6rIAIgcZuRnttFUpGXwlaFmltkx1sk/fPL1nkDP9wYmcQr63w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":399641},"type":"module","engines":{"node":">=18"},"gitHead":"6e30d41cbf161f0a1b8b742d4a294f12a7d964cc","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.12_1785554525324_0.5962434565260142","host":"s3://npm-registry-packages-npm-production"}},"0.3.13":{"name":"@avi892nash/aegis-grid-runner","version":"0.3.13","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.3.13","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"c7d35e4d048ad0c55d59190f75a3b8ece0c0e99a","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.3.13.tgz","fileCount":4,"integrity":"sha512-WFU8d1LVZA3ylaab6jcIcqKWStWe3OeEBGSVBiUHlfHmi2hs1qx6xpA3L9nkCkAgG7nTtm/sBd5CUyrDdmXRrg==","signatures":[{"sig":"MEUCIFMTg0U+Vup1r7PqPBdLgg45w11JyazziYwPoqXHsk5UAiEAhpy06aZFgbIUj+DlR4n+ge0u25h0G92JOg8KGZVs7b0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":404854},"type":"module","engines":{"node":">=18"},"gitHead":"6e30d41cbf161f0a1b8b742d4a294f12a7d964cc","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.3.13_1785592675527_0.7153118627874901","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@avi892nash/aegis-grid-runner","version":"0.4.0","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.4.0","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"dd777112f1e3a20737faaf79ecb873e0f0e412ae","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.4.0.tgz","fileCount":4,"integrity":"sha512-wd1ERmhowjrOIHTUPypFyOsXOzplDG8yzOYncnF5e9hyRH8rEC4QZ7LsEXZOtDrl5j+MRONlD5jbW75bezp9Sw==","signatures":[{"sig":"MEQCIDMPoSIqnu91Su3MM4X/uNYGJRwF7HmEGlmRMtci9iFSAiAHFN/B4qRv4WYojuVoV89Y0cNYubP8eaty4rwpRqRl/w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":500042},"type":"module","engines":{"node":">=18"},"gitHead":"c907e7963ac8993b839dcb8922319bb21f62f019","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.4.0_1785991070422_0.22014261143298341","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@avi892nash/aegis-grid-runner","version":"0.4.1","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.4.1","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"8f7fc3471a27b5c548ae6522321b1b98bd2d6d40","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.4.1.tgz","fileCount":4,"integrity":"sha512-IkF2YXvljhZy3TEEIZYW9NT8i40Ffycit+9RAuV0zpUEkKx48YU6OlbetM9WRQ7Y0nJ60py04FMCpZ/90vT+Xw==","signatures":[{"sig":"MEUCIBnyG2dAmGx2TsfJZoQr2N04YUneXMcudrhK7Ov6DXfFAiEA9qRIRVw3e7mwO+oT0p+UlI5a3iXAhBY2/tVoNMIhfjU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":500989},"type":"module","engines":{"node":">=18"},"gitHead":"c907e7963ac8993b839dcb8922319bb21f62f019","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.4.1_1785993370993_0.6800775556781917","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@avi892nash/aegis-grid-runner","version":"0.5.0","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.5.0","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"40c5987be6d9f1dc0a2b93ccae5ebc58a09307e3","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.5.0.tgz","fileCount":4,"integrity":"sha512-CizbM1TvflIG+93boqi+RbOgLMhyzELLyJtGd3MFbhi1JwTw7vgLpmKshhtD27q2SlviMDsuDmYpQGMBnNJZ+w==","signatures":[{"sig":"MEQCIDz9Bz9LKgHFq9w/eXQYSEKAdNkLjxacHOCPReHOQeozAiA/cG2E6/cVSsKKdTX04FvChxb5lWClzPkgcwG4GaQMbA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":503977},"type":"module","engines":{"node":">=18"},"gitHead":"c907e7963ac8993b839dcb8922319bb21f62f019","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.5.0_1785999137800_0.8843416043337307","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@avi892nash/aegis-grid-runner","version":"0.5.1","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.5.1","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"3d934c7eeb08a700142692adb606bc8c31caec30","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.5.1.tgz","fileCount":4,"integrity":"sha512-lVcC1riweEXrW8krWTEzMpXbO6c0nDixxA/dJw0Q3vxOv8exEVj8T2W/MKLB/kR6GGE8dwDsTi4z/3SC58gNCA==","signatures":[{"sig":"MEYCIQChUUxGNM3TuVV0woujqK7z0kA7CKbJN4ncXxkudOKTKwIhAJMQ7p8v5aoxm/ywhKqST4lTrN5qxNsQ6HZ8T2YQjfRD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":513993},"type":"module","engines":{"node":">=18"},"gitHead":"c907e7963ac8993b839dcb8922319bb21f62f019","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.5.1_1786002474860_0.07217610852781253","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@avi892nash/aegis-grid-runner","version":"0.5.2","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.5.2","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"223cad83b7a7e3dd57a3ae481ab266f7c3cb3d93","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.5.2.tgz","fileCount":4,"integrity":"sha512-kfa4DJ8jJ+J6zOYZ8XCTu19PUlX1BID1fD6BxmFHAP2NyeEQYwFetQ/IBr1oQqQPICHWu0Rj92zy9v2MxmNSPA==","signatures":[{"sig":"MEYCIQC7LgP8cCdoqAYixgKfiwQa2fGp1F9JLfjtLwr1w2lMrAIhAMefalF2F4XspEcgiw/gQud5drBlbV3xq+W6Pnbg4zSl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":517267},"type":"module","engines":{"node":">=18"},"gitHead":"c907e7963ac8993b839dcb8922319bb21f62f019","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.5.2_1786018640464_0.14790115628702205","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@avi892nash/aegis-grid-runner","version":"0.6.0","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.6.0","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"906436244c616e247bcb362f59a4a6e19435cdc9","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.6.0.tgz","fileCount":4,"integrity":"sha512-BcmYhcj0Z2ibGPOqAtcvdRwcPLWIxYad8KXxRXOndYVy+baVT8cdknHUDqZYS4B7is8opSwMdF/+eD58pKplwg==","signatures":[{"sig":"MEQCICdGfpZWigOMP7pOESdhsg1FCNwlilHkkAbXhRUvpJ0uAiAPH+7pBYn+QELY2XItpIw6Ynf5QdyBaddk0TGyHyqTng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":566641},"type":"module","engines":{"node":">=18"},"gitHead":"c907e7963ac8993b839dcb8922319bb21f62f019","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.6.0_1786030246458_0.47847231971465476","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.0","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.0","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"d17bcedb1488a37e13b8344d9f71deb9813f9a81","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.0.tgz","fileCount":4,"integrity":"sha512-/VCUFuxwd7YC4SxVrUya6BvM2vKysX3A0eaQfdgF7iUj7ZCdqtDGxg9JgdNOnRpVFzrpg3j1/mxmGSGPw14O2g==","signatures":[{"sig":"MEYCIQDDRdt7n3jsSHo+9Ld8KoGcU0K+D1t/x2sIzTbCeh3ixwIhAPC5m4b64dBhUhjD3GvvuTy/AzyGpP8OqPXBiR+BTHz0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":569410},"type":"module","engines":{"node":">=18"},"gitHead":"c907e7963ac8993b839dcb8922319bb21f62f019","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.0_1786031213551_0.8887277559068152","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.1","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.1","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"0eae4e81aa86e34663626a117b48ac9290dac9e6","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.1.tgz","fileCount":4,"integrity":"sha512-Nl57c8vGb9gIsm5wRGFvTDLENEmwMw39bX7bxe80WVsAkKGulJPfFoaNpdJb3gaRHR+JSl53egE/ASteF48y6w==","signatures":[{"sig":"MEUCIDTLh2hw8npIJOcvr26yP7R0J0mLaXzBbKg+SHNQxAdlAiEAj7SNa2E1yl88mpZW5/wEqWrL55FETLM57iyKgiPXH2c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":607697},"type":"module","engines":{"node":">=18"},"gitHead":"c907e7963ac8993b839dcb8922319bb21f62f019","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.1_1786116629637_0.23059298143346108","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.2","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.2","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"fcc51240b7d4f8f5a897078cd7339c995a3483bf","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.2.tgz","fileCount":4,"integrity":"sha512-C5BsvSLI0IYhA0sctfvc6K/wFIzCCNRtzmRXS7+Fknwy1y9TSyHS97q+di1lqw2gjRRvKpywHI7kn/ZpHx+GgA==","signatures":[{"sig":"MEQCIAmTFM9dFrKfpdxn7NsJl7Dav8vPiW1YdoxhRbTsytQuAiBs2HxvVVeCnY9u2+iDA550v5+66dVkOn6PBq80xkEffw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":619769},"type":"module","engines":{"node":">=18"},"gitHead":"35cd2b6af1827ba1edb93c3b333e1e7ee5a32c7e","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.2_1786554863961_0.25206469881542004","host":"s3://npm-registry-packages-npm-production"}},"0.7.3":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.3","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.3","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"0bef5f4566085cfebfe277a29d0d84946497639e","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.3.tgz","fileCount":4,"integrity":"sha512-CUJ6FlJ9GKRAZEBw2Qlu7ElU+PakgIQp1wcUAJ4E4ufWBmtVgP89JPoKMSmLQhqDGHMTVDLdBmAZBOrkhv3D4g==","signatures":[{"sig":"MEYCIQDqOaiOOgHl14szzAKjUEd0ag5qNn2pPvreGBixjXCRqwIhAJfEwt7zlr02mQPEwQWDUyEYzyXtbhrGB+OCeiTmJGVK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":628624},"type":"module","engines":{"node":">=18"},"gitHead":"2a08a813391b508d65659d101e642a20f52fba5c","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.3_1786595064188_0.9361396794686341","host":"s3://npm-registry-packages-npm-production"}},"0.7.4":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.4","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.4","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"ccec4e05700ab1947c80bdab880f597464ea1ed3","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.4.tgz","fileCount":4,"integrity":"sha512-zXBQNoqny9i+mpUQqSDVDlsy4GFoLsZGMlZ6U8rZw1tumLUNvexBVzbqD7zKvktG3bxNOR5Ujf+Iq9y1J2hwBw==","signatures":[{"sig":"MEQCICY+RTWKKtf1/cGZ031QHz0S9+faQ0j+8gjNijrvgNjXAiAF46L2C9ic8/bI6UmI/aO9KuArM0O3ZTjzqjsT/v1Dkg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":631629},"type":"module","engines":{"node":">=18"},"gitHead":"f05ccad4db62c0caeb60b27ee9085ebda823a357","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.4_1786634446216_0.8962058678159286","host":"s3://npm-registry-packages-npm-production"}},"0.7.5":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.5","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.5","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"d5c957ac5275e606131513264cad0e88a6cbd6c7","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.5.tgz","fileCount":4,"integrity":"sha512-qVo4+bGFe5p90tYyKh7a27kigabSd9ajY8Lp8zmcLuxOyT8Z2Z7jcX057gtyXJXC7t516Riq18SVc5oFNUq/eA==","signatures":[{"sig":"MEUCIH8eU0ubmfn1Z0OcJYVkMsIMwhvcnXxiaiNMNw8guTYtAiEA4pOgUoZ2hdVrMaPEbqWMaKABd8vQkZQS2hKutZTwwM4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":634593},"type":"module","engines":{"node":">=18"},"gitHead":"ea04979acba550a4b34a86e4da19ff99b064dbf0","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.5_1786647376193_0.5387368092186424","host":"s3://npm-registry-packages-npm-production"}},"0.7.6":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.6","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.6","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"54b8d5e7bd72cfc11ec903713234b95082637b39","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.6.tgz","fileCount":4,"integrity":"sha512-v8GAfSkNaHvryFlWunUAh4z/LebWtWS2fTEH4Xzux/X85irbUraNLsx5qEAQr81K4FP3qrX8DCgchHlOJ4G5uQ==","signatures":[{"sig":"MEQCIBlJabjHAQ4V3DJhFDwoAmHfRMRKxTiGeKrn2XupzXoJAiBbWVCOkYQ6W07qieFihpau76EODKngN/tDSGCCYNA1hw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":638674},"type":"module","engines":{"node":">=18"},"gitHead":"70c555990708ce20b8c40694a9d46d12f51993b5","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.6_1786649274790_0.934134803594949","host":"s3://npm-registry-packages-npm-production"}},"0.7.7":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.7","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.7","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"0e07706960585a1fd20b31fe630a0945c868a156","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.7.tgz","fileCount":4,"integrity":"sha512-3o/z1tvENjHz9AazzCi842mQ2ti4h0isMhGsFgsbMRKyTp+YLo7fZwX7ItB4KjunUjevNbdTVnjag+8/Kp4Ahg==","signatures":[{"sig":"MEQCIEyIf1o4X8hjtZiPMAA4yxp5RxWuqISsalmi3C06TrHbAiAKOJ6gyyBthqa1Wu82i+9aM5+o5m3qfZcgQps6il/9ZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":641411},"type":"module","engines":{"node":">=18"},"gitHead":"2b675a56d053fb4bc8e3efc761ef1a02e9063f29","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.7_1786665741981_0.28109495381885674","host":"s3://npm-registry-packages-npm-production"}},"0.7.8":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.8","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.8","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"9b124d6be78faef5a1ed3b2d3e5efeda3e3d31f8","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.8.tgz","fileCount":4,"integrity":"sha512-hOyqM0DKNuI9rV8PadRrZ7ejxTe319yWqkcVRNX35+upA8QRuG8Y2HHW9MVXTSa6srW1SknNTVGynvLi0At/PQ==","signatures":[{"sig":"MEUCIQDWWEBzvaPfz3VSxG+1i72gwBVByLvutWKzueH9kBZSPQIgNqVMrHXmjrI/YEFOqa9mpPar70tIUcAYiNxviNfpdF8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":649678},"type":"module","engines":{"node":">=18"},"gitHead":"59ddf98e757bd8d9bc330d4fb5a5bffb11776b53","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.8_1786667324929_0.515510497871557","host":"s3://npm-registry-packages-npm-production"}},"0.7.9":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.9","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.9","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"88acffbaa84309b0c4afddc75182c258b98a29b2","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.9.tgz","fileCount":4,"integrity":"sha512-tfKtf3Nqt6zB3Y/IIGhJaQuMFFup0nCZjrV9/LzoQ/qioPH89G/RTbwMLIOgs0m0j15Z+9o2nsTW8SyQUwD7bw==","signatures":[{"sig":"MEQCIENMWwdn2bbfTlI+AtmdnMggoAbp1wk39vHLZSn9pLczAiBL14cNHi3x9ICHIdkTEO4yC3vvP7tvz459USHpFc6npg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":672821},"type":"module","engines":{"node":">=18"},"gitHead":"bfe4117ea44e2eab10fa47c048489367a8279402","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.9_1786674703699_0.8748078816218812","host":"s3://npm-registry-packages-npm-production"}},"0.7.10":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.10","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.10","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"c4d0de5638fb08fb722abe96201c0804cf3970c1","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.10.tgz","fileCount":4,"integrity":"sha512-bWnch1q5DqVUKfNocEDC3wTkTamVYaVY2mlpgCocv8Uh834W9RpDsHxxYCFxO7/tBV6f79DSC7atACniz8PWtg==","signatures":[{"sig":"MEUCIBkr/YJd0K9rJbuUPtUJjcnb89SmnG8u2xakdYEf9d/1AiEA2G7ddMreqZLHUdj5iaU5OBV1FgRQUXGIDDk2hP3p1Ww=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":682766},"type":"module","engines":{"node":">=18"},"gitHead":"f9e7ea748251be1796e32025b529232f09edc03d","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.10_1786684827724_0.4807131085356917","host":"s3://npm-registry-packages-npm-production"}},"0.7.11":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.11","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.11","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"fc7adce3b8fc50c466cd6481ab14c83cc00104bb","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.11.tgz","fileCount":4,"integrity":"sha512-vZoueM3k8qEJrJbaOv6owhPa/Ckth1AOJDAWv67xBuLSqYhXpTfVqOicxVV3oz9sHXC7olm2Zl963Si0O0dtXw==","signatures":[{"sig":"MEQCIET3HGh1QOcgqZrynMUFut3Gjd96pVEUCYrFA2cqMU1DAiBLIIXfFEwGuzCkAZ1+CywYUS4sEulpxWhD5iW7jlgkYw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":684233},"type":"module","engines":{"node":">=18"},"gitHead":"3e9b22a753325fbc4261e6af04477c4c4528d27f","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.11_1786694361875_0.3528228630092032","host":"s3://npm-registry-packages-npm-production"}},"0.7.12":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.12","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.12","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"ae51ef8c835d0f268e165d65bda2f9ab20681e68","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.12.tgz","fileCount":4,"integrity":"sha512-VAvRsADLsTccQZ0eiziR9xzILj0XJFH01Bphs6KP7zSFI+x6AOPIEpAUsMn//H/q23i0lYWB/6sAcznUdUed3A==","signatures":[{"sig":"MEYCIQDm4xesAIygzN8lg3/zz/FisJKuigtj1/3gvw2G+bwL+AIhAIu6Hfcl/vTnBqxUv4vPxcrWQ1I6JFliOGQaC1CI/pmT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":684847},"type":"module","engines":{"node":">=18"},"gitHead":"36d465f9df3f49c079871c6f3fd9b6af17920e74","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"deprecated":"Superseded — upgrade to >=0.7.13. Older versions leak xcodebuild/simulator processes on the host and predate the GRID_TOKEN hardening guidance.","_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.12_1786698267997_0.45653030156694396","host":"s3://npm-registry-packages-npm-production"}},"0.7.13":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.13","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.13","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"c5cc4cabe2ba42cae3503fcb539c303bcb63fbe6","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.13.tgz","fileCount":4,"integrity":"sha512-oYc2VIM+qw3znBkA/4h8mChCyFEzaN7g8El4j6PlwIYsUwrZY53X+jpxLA4fsQ9UiTRWFsWIAriXUQhcs8NoAQ==","signatures":[{"sig":"MEQCIG7RgLPVfc3VxjCN5Zcn9INEe6//bpuqj+RF/kDTvIeUAiA/G4iOjdQWiLqh5bAfSxeL9NqIjW/L0ExyGATiN6WuDg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":690205},"type":"module","engines":{"node":">=18"},"gitHead":"488b717055e4d1a2895a713954b1fcb94f4db620","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.13_1786786504745_0.6745475164732697","host":"s3://npm-registry-packages-npm-production"}},"0.7.14":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.14","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.14","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"f5fb4daa512332ee4a9264c8b352f2a5548846d5","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.14.tgz","fileCount":4,"integrity":"sha512-zC1jSXwk6nFRWfQR+dYFcxEXvhqp0ePqu1gNKZMO2fd5L5sPg7Enry+elshb9j79spdnBZaKM3ua3YSfd7OMMw==","signatures":[{"sig":"MEQCIBHYXzl1UqFeNXX5t7oR8HhZI/FicAxCaQobwPT2uGhnAiB5kkEkJE1C66R3BAyX8iTQrsxp2VsfI4VfgSLOa6PXxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":700230},"type":"module","engines":{"node":">=18"},"gitHead":"99c5fd868f079c01b569b181dbe8a8b06bc9476b","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.14_1786871544660_0.3715992125483101","host":"s3://npm-registry-packages-npm-production"}},"0.7.15":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.15","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.15","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"3db4606f376c0fe957383a898ab35c2357b28fd8","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.15.tgz","fileCount":4,"integrity":"sha512-7zQzR4GGOFPdIgh7aRFfvTkCS1IWnZqnT7P70mcLNGxnI6XkK/avDT6NbE3scfOkCNY9O9tYblYClZOV+WIH9Q==","signatures":[{"sig":"MEQCIDBrjsGAf3/Lzw92hncNsRuoTMzOD0iaTlu5teYkhQ4kAiA8o6p3e5BICe/iSkVUb3JcVXSvBKk5StTcX27pddNW8Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":721344},"type":"module","engines":{"node":">=18"},"gitHead":"99c5fd868f079c01b569b181dbe8a8b06bc9476b","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.15_1786894683423_0.5039004887710181","host":"s3://npm-registry-packages-npm-production"}},"0.7.16":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.16","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.16","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"fa4a9ecede1816ec1652005f17a503f144535158","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.16.tgz","fileCount":4,"integrity":"sha512-IRPK5XwifDwtAo0Vn63pHIz47JyVo+DZh6QhlizVYk36FeIQi6j9B6HvzSd1izBSCabVe/QT9n1W81ebcTVohA==","signatures":[{"sig":"MEQCICJ5wFdVfFV1knKm1fVtYwnVERTBmb4DAyyVcRuMOh4LAiA8oh72jggnd6RuU01n0bKkh6x0vUCWqHSq1Kdyubj9qA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":732810},"type":"module","engines":{"node":">=18"},"gitHead":"99c5fd868f079c01b569b181dbe8a8b06bc9476b","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.16_1786954012829_0.5453688579649798","host":"s3://npm-registry-packages-npm-production"}},"0.7.17":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.17","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.17","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"123e2c9e4e84c463227c3270bbb9f4474f86c4ee","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.17.tgz","fileCount":4,"integrity":"sha512-F9MMRAv6UWHd1c4Gdav24wJv+vkJOFVvfuqGRlvymqNLURU9Ery7WEgJyMLB/7aqprHRMqxl+YfsYKodZ/6Wxg==","signatures":[{"sig":"MEUCIEQI81OXXOqGqc550E+YvH5MmSkFkj/1xnFk1tY6LM8fAiEA8YH57zocPRpfGSHWzz9C7c3Hn9+gigVMP3PyK5bgvM4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":734165},"type":"module","engines":{"node":">=18"},"gitHead":"99c5fd868f079c01b569b181dbe8a8b06bc9476b","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.17_1786955305567_0.6266858481855713","host":"s3://npm-registry-packages-npm-production"}},"0.7.18":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.18","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.18","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"b1e7fb96ae107b2662d7692dff94c5132bd849a4","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.18.tgz","fileCount":4,"integrity":"sha512-sHvmGUGgLc5igOemYWyFCXvClztsL7FB/LFlOLzbebek0LsUg8g2g8/ZDxQj9YwN94DHADgZwpPPu3LDMkApyg==","signatures":[{"sig":"MEUCIEOS97fWJerG5CPegH65B2UFj8D1FWX72gOJjO65o1NRAiEApldpTVr/q1mAMRAV9ORxlgKkKbzjL3mPlX2woTk/saI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":737670},"type":"module","engines":{"node":">=18"},"gitHead":"99c5fd868f079c01b569b181dbe8a8b06bc9476b","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.18_1786956651054_0.9746541494521266","host":"s3://npm-registry-packages-npm-production"}},"0.7.19":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.19","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.19","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"2fa7b9c959ba78c5e70cb0af4923f55460af7a73","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.19.tgz","fileCount":4,"integrity":"sha512-IWwTylAK61xcS7GyK/8pjGWu3Uo0Ph4zktQBoxGAL9Zkks+SuwPNS7OfBi+hyeUhQ2JQF5W7Qt0pxRdcxHOP2A==","signatures":[{"sig":"MEUCIEoeTL1zvB2TBPxbtLr4hSIEW9hWrZNUdRlEDAAZzR4JAiEAiQJNp03VnoI2LxfArH60olJ/xAcWruJTA3rIqplXD+4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":745134},"type":"module","engines":{"node":">=18"},"gitHead":"99c5fd868f079c01b569b181dbe8a8b06bc9476b","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.19_1786965302947_0.3265281705110479","host":"s3://npm-registry-packages-npm-production"}},"0.7.20":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.20","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.20","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"57f5d9b2cfe9344d94e2683ec2cc0bf5c3e108c3","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.20.tgz","fileCount":4,"integrity":"sha512-fvINSRpR0fQL8HWWO76pSGUKX0k5Bh6W1JAnj/uNZNYpmO248j2BD5eyPaWb32KZaPrjT7+85BHoIgVU6yU5mQ==","signatures":[{"sig":"MEYCIQCjqV7084fwIRG0eMIzzyGGWxbqsQWS4GH8UPfGgZpt6gIhAIEJVkr7NZWS1It9moj/Qcj3qXqHGvI307QXmqG/bXP9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":753243},"type":"module","engines":{"node":">=18"},"gitHead":"99c5fd868f079c01b569b181dbe8a8b06bc9476b","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.20_1786973869826_0.6400232675259256","host":"s3://npm-registry-packages-npm-production"}},"0.7.21":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.21","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.21","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"52c6c3334c05981867b482c476bae0b6456c78b5","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.21.tgz","fileCount":4,"integrity":"sha512-ZUDGr4zaD8vf8JuFV8dKPbZdsRvgvB4/HylHxoOip5qbPgpwKP4puZ21SqZLoT+mRJ9hSBbyzznqFz4nB4sHNw==","signatures":[{"sig":"MEUCIQCYnWniT+Htqq4axkXprqDaP6riW6zR0FUo8a0jZC+r3gIgZHfs+ZZIE4ddeg+S2qzvmmcXFmeR4r9f1A1PKsQa/do=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":754924},"type":"module","engines":{"node":">=18"},"gitHead":"99c5fd868f079c01b569b181dbe8a8b06bc9476b","private":false,"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — runner (default), master, and CLI in one zero-dependency Node bundle.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.21_1786986385024_0.8032315934589858","host":"s3://npm-registry-packages-npm-production"}},"0.7.22":{"name":"@avi892nash/aegis-grid-runner","version":"0.7.22","license":"UNLICENSED","_id":"@avi892nash/aegis-grid-runner@0.7.22","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"f2000d8d2d2fcc48e210ed09278917a3b8f356bd","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-0.7.22.tgz","fileCount":4,"integrity":"sha512-KQJNwJDLejPRtwUrWqYwujylXZnXwnnSXdcqgfHI/yfjYvkbETU+J21fAm6KbpMwxk3Z7o3TwlYXY5Gph0FQmg==","signatures":[{"sig":"MEUCIC+OvgfqnPLhEMwEwnaBne0eAKQAUUyfDxdHSj30xW+2AiEAlLQ0Tt3F2zjOsFg5j7KkKM83qXMN6ySPwkjKXqgY5+0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":476462},"type":"module","engines":{"node":">=18.20"},"gitHead":"54923d388c3246c5365e92b3c18741448a409753","private":false,"scripts":{"build":"node build.mjs","prepack":"node build.mjs"},"_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.8.2","description":"Aegis WDIO device grid — the runner and job CLI in one zero-dependency Node bundle. The master is the aegis repo's Next.js app.","directories":{},"_nodeVersion":"18.20.8","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/aegis-grid-runner_0.7.22_1788133814432_0.12537327006734822","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"_id":"@avi892nash/aegis-grid-runner@1.0.0","bin":{"aegis-grid-runner":"bin.mjs"},"dist":{"shasum":"d7f523825b192e9c4199b8ca142953747b5dac88","tarball":"https://registry.npmjs.org/@avi892nash/aegis-grid-runner/-/aegis-grid-runner-1.0.0.tgz","fileCount":7,"integrity":"sha512-YUb2jkG8eewIJxEBxqiDH3/GoPNJK+peFSS9j4onwW99VDb/d7eYY3hM8HuaLmM7NNU2L5MkWz+Gbl+Jze4b3A==","signatures":[{"sig":"MEUCICi2nE/VyuMLOtprNPaX67f9j9qWEKu20WMh9uzTez5nAiEAhJPli7EIDoBnYplzmJKg0LbYn8HNGwAQnSWq9SSOZZA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDWwhy4nYNwMV+ZyUrEAEDrRSKtMo1dhZvhJ12MBa+MtQIhAJcSv+UZo0T5YWB6YVHK0QXh4vdVzwBGCwnBhvCad/vQ"}],"unpackedSize":546132},"name":"@avi892nash/aegis-grid-runner","type":"module","engines":{"node":">=20.19"},"gitHead":"a5a2b9928fc8592ae63631af142b99e6a63e36d5","license":"UNLICENSED","private":false,"scripts":{"dev":"vite","build":"node build.mjs","prepack":"vite build && node build.mjs","build:ui":"vite build","typecheck":"tsc --noEmit"},"version":"1.0.0","_npmUser":{"name":"avi892nash","email":"avihsan8922@gmail.com"},"_npmVersion":"10.9.8","description":"Aegis WDIO device grid runner — a zero-dependency Node bundle that lends this machine’s browsers, emulators and simulators to any number of masters. No pairing: masters poll it and push jobs to it.","directories":{},"maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.0","react":"^18.3.1","react-dom":"^18.3.1","typescript":"^5.6.3","@types/react":"^18.3.12","@types/react-dom":"^18.3.1","@vitejs/plugin-react":"^5.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/aegis-grid-runner_1.0.0_1790685068112_0.39686534182129307"}}},"time":{"created":"2026-07-30T12:14:30.244Z","modified":"2026-09-29T12:31:08.427Z","0.1.0":"2026-07-30T12:14:32.464Z","0.2.0":"2026-07-30T12:37:17.067Z","0.3.0":"2026-07-30T15:08:42.193Z","0.3.1":"2026-07-30T15:29:41.264Z","0.3.2":"2026-07-30T16:14:17.826Z","0.3.3":"2026-07-30T16:40:52.222Z","0.3.4":"2026-07-30T16:56:14.333Z","0.3.5":"2026-07-30T17:29:44.109Z","0.3.7":"2026-07-30T18:16:13.815Z","0.3.8":"2026-07-30T18:53:15.012Z","0.3.9":"2026-07-31T00:52:29.708Z","0.3.10":"2026-08-01T00:38:58.746Z","0.3.11":"2026-08-01T01:05:15.673Z","0.3.12":"2026-08-01T03:22:05.462Z","0.3.13":"2026-08-01T13:57:55.663Z","0.4.0":"2026-08-06T04:37:50.605Z","0.4.1":"2026-08-06T05:16:11.171Z","0.5.0":"2026-08-06T06:52:17.976Z","0.5.1":"2026-08-06T07:47:55.015Z","0.5.2":"2026-08-06T12:17:20.650Z","0.6.0":"2026-08-06T15:30:46.653Z","0.7.0":"2026-08-06T15:46:53.761Z","0.7.1":"2026-08-07T15:30:29.795Z","0.7.2":"2026-08-12T17:14:24.081Z","0.7.3":"2026-08-13T04:24:24.372Z","0.7.4":"2026-08-13T15:20:46.441Z","0.7.5":"2026-08-13T18:56:16.351Z","0.7.6":"2026-08-13T19:27:54.946Z","0.7.7":"2026-08-14T00:02:22.124Z","0.7.8":"2026-08-14T00:28:45.124Z","0.7.9":"2026-08-14T02:31:43.881Z","0.7.10":"2026-08-14T05:20:27.888Z","0.7.11":"2026-08-14T07:59:22.024Z","0.7.12":"2026-08-14T09:04:28.156Z","0.7.13":"2026-08-15T09:35:04.896Z","0.7.14":"2026-08-16T09:12:24.800Z","0.7.15":"2026-08-16T15:38:03.557Z","0.7.16":"2026-08-17T08:06:52.957Z","0.7.17":"2026-08-17T08:28:25.709Z","0.7.18":"2026-08-17T08:50:51.191Z","0.7.19":"2026-08-17T11:15:03.087Z","0.7.20":"2026-08-17T13:37:49.967Z","0.7.21":"2026-08-17T17:06:25.180Z","0.7.22":"2026-08-30T23:50:14.579Z","1.0.0":"2026-09-29T12:31:08.232Z"},"license":"UNLICENSED","description":"Aegis WDIO device grid runner — a zero-dependency Node bundle that lends this machine’s browsers, emulators and simulators to any number of masters. No pairing: masters poll it and push jobs to it.","maintainers":[{"name":"avi892nash","email":"avihsan8922@gmail.com"}],"readme":"# @avi892nash/aegis-grid-runner\n\nThe Aegis WDIO **device grid** in one self-contained Node bundle — no repo checkout,\nno `node_modules`, zero runtime dependencies. Start a runner on any machine and its\ndevices (`adb` emulators/phones, `simctl` simulators, installed browsers) are\n**auto-discovered**; then **add it from the master** and they join the grid within ~1s.\n\nThe bundle is the runner and the job-submitting CLI. The **master is not in the\npackage** — it is the aegis repo's Next.js app (`wdio/app` + `wdio/grid/master`),\nstarted from a checkout with `npm run dev` (or `npm run build && npx next start\n-p 7717`); its console authors repo files, so it needs the repo. `aegis-grid-runner`\nwith no arguments starts **this host's runner** (the common case); every other grid\nsubcommand is still reachable.\n\n## Pairing model — the master adds runners\n\nA runner **never registers itself**. It boots **unpaired**, serves its status page\nplus a small pairing API on its own port (default `7719`), and waits. You then pair it\nfrom the master — either the dashboard's **Add a runner** card or `POST /api/runners`.\nThe pairing is persisted (`GRID_DATA/master.json`), so a runner restart re-pairs itself\nautomatically.\n\n```\nrunner (unpaired) ── waits ──▶  master  ──POST /api/runners {url}──▶  runner POST /api/master\n                                                                           └─ registers, starts leasing\n```\n\n**Breaking in 0.5.0:** `GRID_SERVER` self-registration was removed from the runner (it is\nstill the CLI's master URL). A runner started with it logs a warning and stays unpaired\nuntil a master adds it.\n\nWhy: the two traffic directions have different requirements. **runner → master** (register,\nheartbeat, lease, artifact upload) is outbound and works from anywhere. **master → runner**\n(job-log tail, browser and Chrome-version management, AVD and simulator control) needs an\naddress the *master* can route to. Under self-registration the runner advertised a local\ninterface IP it chose itself and the master stored it without ever dialing it — so a\ntunnelled or cross-network runner sat in the registry at an unroutable address. Jobs ran\nnormally while every control-plane call returned `runner unreachable`: the fleet read as\nhealthy with half of it dead, and nothing surfaced it until an operator clicked something.\n\nNow the master passes the URL it just reached the runner at, the runner persists it and\nechoes it back on every register, and the only address that can enter the registry is one\nthat has already been used successfully — including after a restart on either side.\n\n## Install & start a runner\n\n```sh\n# global\nnpm i -g @avi892nash/aegis-grid-runner\naegis-grid-runner                       # starts UNPAIRED — add it from the master\n\n# or one-shot, no install\nnpx -y @avi892nash/aegis-grid-runner\n```\n\nThe bundle is self-contained: the React grid console is embedded in it, so\n`master start` serves the same UI a repo checkout does — no build step, no assets\nto copy. A `console/dist` on disk beside the bundle wins if present.\n\nRequires **Node ^20.19 || ^22.12 || ^24**. Not 18.20: webdriverio's own floor is indeed\n18.20, but a runner that provisions an Appium driver installs a tree that is not — every\n`@appium/*` package declares `^20.19.0 || ^22.12.0 || >=24.0.0`, and the `p-limit@7` under\nthe drivers is ESM-only. On Node 18 `appium driver install` dies with `ERR_REQUIRE_ESM`\nand the device then reports \"Could not find a driver for automationName 'UiAutomator2'\".\nThose same ranges exclude 21.x and 22.0-22.11. Upper bound: Node 26+ breaks wdio sessions\nwith `UND_ERR_INVALID_ARG`, so 24.x is the top of the tested band.\nA runner also needs its device tooling on `PATH`:\n`adb`/`emulator` (Android — see `ANDROID_HOME`), `xcrun`/`simctl` (iOS, macOS only),\nand/or a locally installed browser (Chrome/Safari/Firefox/Edge) for web + mobile-web.\n\n*A master started with `npm run dev` seeds one runner entry for `http://127.0.0.1:7719`, so a\nlocal runner needs no pairing call — but that is the MASTER pre-filling its own registry with an\noperator-set address it still has to reach, not the runner announcing itself. The rule below is\nunchanged.*\n\n## Add the runner from the master\n\nThe runner logs its own address on boot, e.g.\n`runner listening on :7719 — unpaired; waiting for a master to add me`.\n\n- **Dashboard** — open `http://<master-host>:7717/ui`, expand **Runners & devices →\n  Add a runner**, type the runner's `host:port` and click **Add**.\n- **API** — `POST http://<master-host>:7717/api/runners` with `{\"url\":\"<host>:7719\"}`.\n  The master hands the runner its own reachable base url (from `GRID_PUBLIC_URL`, else\n  the request `Host` header) and the runner registers via the normal flow.\n\nPairing endpoints served by the runner itself:\n\n| Method | Path | Purpose |\n| --- | --- | --- |\n| `GET` | `/api/master` | current pairing state |\n| `POST` | `/api/master` `{url, runnerUrl?, token?, force?}` | pair with a master (`409` if already paired elsewhere unless `force`). A forced switch **deregisters from the previous master first**, so it cannot keep assigning work to devices that have stopped leasing from it; any job still running across the switch is reported as `orphanedJobs` because its result belongs to the old master. |\n| `DELETE` | `/api/master` `{force?}` | unpair (`409` if jobs are running unless `force`; running jobs are left alone) |\n\nThe runner's **Jobs** table and live-log view also expose **cancel** for every running\njob. The equivalent API is `POST /api/jobs/:jobId/cancel`. It stops payload download,\ndependency installation, or the spawned test process tree (whichever phase currently owns\nthe job), reports `CANCELLED` to the master, and never consumes the job's retry budget.\nMaster cancellation is also carried on the runner heartbeat, so it works during payload\ndownload and install rather than only after the test child starts. If the exact job record\ndisappears or its job-level events cannot be acknowledged for the configured grace, the\nrunner treats the execution as orphaned, kills it locally, frees its slot, and durably\nreports a cancelled completion instead of waiting indefinitely.\n\n## Environment\n\n| Var | Required | Default | Purpose |\n| --- | --- | --- | --- |\n| `GRID_SERVER` | no | — | **Ignored by the runner since 0.5.0** (warns if set); pairing is master-initiated. Still the master URL used by the `run`/CLI subcommands. |\n| `GRID_DATA` | no | `GRID_WORKDIR` | Where the persisted pairing (`master.json`) is stored. |\n| `GRID_TOKEN` | if master set one | — | Shared secret; must match the master's `GRID_TOKEN`. Also gates this runner's own API. |\n| `GRID_ORPHAN_JOB_GRACE_MS` | no | `300000` | Maximum time an active job may go without a successful job-level acknowledgement from its master before the runner cancels it locally. Minimum `30000`. Explicit unknown-job responses cancel after `GRID_ORPHAN_JOB_MISSES`. |\n| `GRID_ORPHAN_JOB_MISSES` | no | `2` | Consecutive master `404`/`410` job-event responses that prove ownership was lost and trigger local cancellation. Minimum `2`. |\n| `GRID_BROWSERS` | no | `chrome=2` | Seeds which browsers are advertised (`0` ⇒ off). Since 0.6.0 the number only means on/off — concurrency is a host property, not a per-browser one. |\n| `GRID_BROWSER_BINARIES` | no | — | Side-by-side browser aliases and executable paths, e.g. `chrome-124=/opt/chrome-124/chrome,chrome-126=/opt/chrome-126/chrome`. Use the aliases in `GRID_BROWSERS`; the runner advertises exact `browser-version:*` and `browser-major:*` labels. |\n| `GRID_WEB_SLOTS` | no | `2` | Legacy shorthand for the Chrome seed when `GRID_BROWSERS` is unset (on/off only — see above). |\n| `RESERVE_GB` | no | `1` | **The only auto knob**: RAM to leave the machine. The runner keeps starting browsers while at least this much is free and holds back when it is not. Settable live on the runner page. |\n| `GRID_MAX_CONCURRENT_JOBS` | no | — | Replaces auto with a FIXED number of browser jobs at once. Unset ⇒ auto (no count; the RAM reserve governs). |\n| `STARTUP_SETTLE_MS` | no | `8000` | How long one browser start is given to show up in free-RAM readings before the next is admitted. |\n| `GRID_AUTO_LIFECYCLE` | no | `0` | `1` ⇒ let the runner boot/park local Android emulators on demand (opt-in). |\n| `GRID_PARK_IDLE_MIN` | no | `15` | Minutes an idle auto-managed emulator stays up before being parked. |\n| `GRID_MIN_FREE_MB` | no | `3072` | RAM floor — an emulator/simulator boot is refused if it would drop free RAM below this. |\n| `PER_SIM_MB` | no | `3500` | Estimated RAM per iOS **slot** — simulator + Appium + WebDriverAgent + the wdio process. Sets how far a pool's parallelism is capped. |\n| `GRID_IOS_SIMULATORS` | no | — | Seed simulator pools headlessly: `<deviceTypeId>\\|<runtimeId>[\\|name[\\|N]]`, comma-separated. |\n| `GRID_BUILDS` | no | — | Path to a checkout holding `builds_android/` + `builds_ios/`. Optional — the master serves builds, so a runner with none downloads them on demand. |\n| `ANDROID_HOME` | Android only | — | Android SDK root; the runner adds `platform-tools` + `emulator` to `PATH`. |\n| `GRID_WORKDIR` | no | `~/.aegis-grid` | The ONE directory holding ALL runner state (pools, pairing, payload caches, npm cache, Appium drivers, live-view frames). Absolute by default, so `npx` from any directory lands on the same state. Back-compat: a `./.grid-agent` already present in the launch cwd keeps winning. |\n| `GRID_RUNNER_PORT` | no | `7719` | Base port for this runner's own status page + pairing/live-log server (scans up if busy). |\n| `GRID_LABELS` | no | — | Comma-separated fallback labels advertised when nothing is auto-discovered. |\n| `GRID_JOB_INACTIVITY_MS` | no | `600000` (10min) | Output-inactivity watchdog: a RUNNING job that prints nothing on stdout/stderr for this long is killed and FAILED with `GRID_JOB_STALLED`. `0` disables. Ignored when the job's own `--timeout` is already tighter. **Do not lower this below the longest silence a healthy job can have on your slowest host** — a simulator building WebDriverAgent for the first time is silent for the whole build. |\n| `GRID_WDA_WARM_PARALLEL` | no | `2` | macOS/iOS. How many WebDriverAgents may build **at once** on this host. The builds share no work, so extra parallelism only makes each slower: measured on a 24-core/64GB host, a warm takes 0.3–0.4 min at 1–2 concurrent and 16–20 min at 7, with roughly a third failing outright. Waiting leases are held back rather than queued inside the runner. `0` removes the bound. |\n| `GRID_WDA_FAIL_COOLDOWN_MS` | no | `600000` (10min) | macOS/iOS. After a FAILED pre-warm, how long before that simulator may spend another full build budget. Without it a degraded instance restarts a fresh 15-minute build on every lease, adding load to the contention that made it fail. The job still builds WDA in-session during the cooldown — only the pre-warm is skipped. |\n| `GRID_WDA_PROBE_MS` | no | `5000` | macOS/iOS. Per-attempt cap on the pre-warm's Appium `/status` poll. Bounds a **wedged socket**, not the build (that is `GRID_WDA_PREWARM_MS`); the poll re-runs every second, so this is a miss, not a failure. |\n| `GRID_WDA_TEARDOWN_MS` | no | `15000` | macOS/iOS. Per-attempt cap on the pre-warm's session-teardown DELETE. Best-effort — the warm already has what it came for. |\n| `GRID_IOS_MAX_CONCURRENT_JOBS` | no | — (off) | macOS/iOS. Optional hard cap on iOS jobs running at once on this host. Deliberately **separate** from `GRID_MAX_CONCURRENT_JOBS`, so an existing browser-fleet setting does not silently acquire an iOS meaning. Off by default: `GRID_WDA_WARM_PARALLEL` is the bound that actually matters. |\n| `GRID_LIVE_SCREEN_W` | no | `360` | Width in px of a live simulator frame (see **Live simulator view**). Smaller is cheaper on the wire; the frame is deliberately low-res. |\n| `GRID_LIVE_SCREEN_INTERVAL_S` | no | `2` | Seconds between captures while someone is watching. |\n| `GRID_LIVE_SCREEN_IDLE_S` | no | `15` | How long after the last viewer poll the capture keeps running. Must stay comfortably above the UI's refresh interval. |\n\nOn the **master**, `GRID_PUBLIC_URL` sets the base url handed to a runner when you add\nit (derived from the request `Host` header when unset).\n\n### Live simulator view\n\nWhile an iOS job runs, its simulator screen can be watched from the runner page\n(**Jobs → live view**) or from the master (**Jobs → live**), which proxies the frame from\nwhichever runner owns the job. Frames are low-resolution JPEGs (~11 KB) refreshed every\ncouple of seconds — enough to see which screen the test is on and what it is typing.\n\nIt is built so that watching costs the runner as little as possible:\n\n- Capture runs in a **detached sidecar process**, never on the runner's event loop. The\n  HTTP request only streams the last frame off disk, so a slow capture cannot stall another\n  device's lease — the failure mode this runner has hit repeatedly with synchronous forks.\n- It uses `simctl`, **not** Appium, so watching never touches the test's own WDA session.\n- It is **pull-only**: the capture loop is kept alive by viewers polling, and exits by itself\n  a few seconds after the last one leaves. A host nobody is watching does no work at all.\n\n`GET /api/jobs/:id/screen.jpg` (runner and master) returns the current frame, `204` while the\nfirst capture is still warming, `404` if the job holds no simulator on that runner.\n\n### Master-served builds\n\nThe job payload deliberately excludes the (multi-GB) `builds_android/` + `builds_ios/`\ntrees. A runner with a local checkout (or `GRID_BUILDS`) uses those directly; a runner\nwith **none** pulls the `.apk`/`.ipa` files it needs from the master automatically\n(background sync while paired, cached under `GRID_WORKDIR/builds-cache`).\n\n## Other subcommands\n\n```sh\naegis-grid-runner master start          # run THIS host as the coordinator\naegis-grid-runner run --platform web --range 1-5   # submit a job and wait\naegis-grid-runner devices | jobs | runs # list grid state\naegis-grid-runner status <jobId>        # a job's status (JSON)\naegis-grid-runner runner uninstall      # stop this host's runner + delete its workdir\naegis-grid-runner --version             # build stamp\n```\n\n### Uninstall\n\nEverything the runner owns lives in its workdir (default `~/.aegis-grid`), so removal\nis one command:\n\n```sh\nnpx @avi892nash/aegis-grid-runner runner uninstall\n```\n\nIt stops the runner processes that own directories in the workdir (each pid is\nverified via `ps` to actually be a grid runner before it is signalled), deletes the\nworkdir, and prints what it deliberately leaves behind: simulators/AVDs created for\npools (delete via `xcrun simctl delete` / avdmanager), and npx's own package cache\n(`npm cache clean --force`). If the runner was started with `GRID_WORKDIR` (or with a\nlegacy cwd-relative `.grid-agent`), run uninstall with the same env / from the same\ndirectory. Finally, remove the runner from the master UI — the master keeps showing\nit offline otherwise.\n\n## Browser mode, version comparison, and mobile web\n\nThe master run form exposes **Headless** and **Normal (visible)** for desktop\n`web`/`mweb`; the selected mode is shown in the runner/device table. Visible mode\nrequires a logged-in GUI session on the runner host.\n\n### Browsers: how they may run, and how many at once\n\nTwo separate questions, and mixing them is what used to bite. **How a browser may\nrun** is per version; **how many run at once** is a property of the machine.\n\nEach browser row is one control with four named states — `Off · Headless · Window ·\nBoth`. `Both` advertises the same build twice, headless and windowed, as two devices,\nso one version can serve a CI run and a watch-it-happen run at the same time. A\nwindowed device needs a display; on a display-less host the option is not offered.\nThere is deliberately **no per-version parallel count**: two versions at 10 each once\nmeant 20 Chromes on one machine, which is exactly the failure a limit should prevent.\n\nConcurrency is one host-wide limit, in the card above the table:\n\n- **Auto** (default) has no job count at all. The runner keeps leasing while the\n  machine still has `RESERVE_GB` free and holds back when it does not — no estimate\n  of what a browser \"costs\" anywhere, because a light page and a heavy one differ by\n  more than 2x and predicting was the mistake. Set the reserve in GB right there.\n- Switch Auto off to pin a fixed number instead. `GRID_MAX_CONCURRENT_JOBS` does the\n  same from the environment and wins over both.\n- Only ONE browser start is in flight at a time. A start slot is claimed the moment a\n  lease lands and released once that browser's memory has landed (`STARTUP_SETTLE_MS`),\n  so N idle devices cannot all read the same free memory and launch together. Jobs the\n  host will not take stay QUEUED on the master for another runner, never parked here.\n- If memory never recovers, the job **fails on this runner** (`GRID_LOW_MEMORY`) and\n  the master's retry moves it. It is never started anyway — that is what takes a host\n  down.\n\nThe runner downloads and manages [Chrome for Testing] builds itself, no manual install\nneeded. Each added version is its own row beside the host's own `chrome`.\n\n- **Runner page → Browsers → `+ Add Chrome version`** opens a searchable list of every\n  known-good CfT build. Adding downloads it (~340 MB, cached). `Remove` drops the\n  version (409 while one of its Chromes is running a job); the downloaded build stays\n  on disk, so re-adding is instant.\n- **Master UI → drawer → `+ Chrome version — all runners`** adds the same version on\n  every runner at once (per-runner ok/unreachable results shown).\n- Headless seeding: `GRID_CHROME_VERSION=146.0.7680.165[,151.0.7922.71]` registers\n  versions at startup. Choices persist in `chrome-versions.json`.\n\nTarget jobs by **version and runner**, never by instance:\n\n```sh\n# any runner, this exact Chrome build\naegis-grid run --requires web-chrome-146.0.7680.165 …\n# one runner + one build (the master stamps runner:<id> on every device)\naegis-grid run --requires runner:mac-01-1234 --requires web-chrome-146.0.7680.165 …\n```\n\nPlain `web` matches any browser; `render:<sha>` remains the strictest pin (identical\nrasterization). Keep the same payload SHA, merchant rows, environment, and browser\nmode when comparing screenshots — text rasterization differs across Chrome builds\neven with identical fonts, which is exactly why versions are pinnable.\n\nThe same Chrome build is also **not** enough across native macOS and Linux: CoreText\nand FreeType can rasterize the same downloaded font into different pixels. For a\npixel-comparison run, enable **Require one verified render class** in the master's\nAdvanced section. The master snapshots the selected headless device pool and rejects\nthe run if a browser version or render fingerprint is missing or mixed. Leave it off\nfor ordinary functional runs, whose dynamic cross-runner scheduling is unchanged.\n\n`GRID_BROWSER_BINARIES=\"chrome-124=/opt/cft/124/chrome\"` still works for builds you\nmanage yourself; version rows are the managed equivalent.\n\n### iOS simulator pools\n\niOS is not shaped like Android and the runner models it differently. An AVD is a\npre-created **instance** — `emulator -list-avds` is the whole truth and you can only\nboot what exists. A simulator is a **configuration**: any (device type × iOS runtime)\nthe host supports can be created on demand. So iOS follows the Chrome-version model,\nwith parallelism on top:\n\n- **Runner page → iOS simulators → `+ add simulator pool`** opens a searchable list of\n  every device × iOS version this Mac supports. Give the pool a **name** and an\n  **allowed parallel** count. Combos the host already has a simulator for are tagged\n  `on this host`; the rest are created with `simctl create` when first used.\n- A pool named `Katalon` with parallelism 6 materialises `Katalon 1` … `Katalon 6`.\n  Instances are created **lazily** — adding a pool of 6 is instant and costs nothing\n  until jobs (or you) start them.\n- The pool is **one grid device** (`<runner>-ios-pool-<name>`) whose `capacity` the\n  master enforces at lease time. When a job is leased the runner picks a free instance,\n  creates it if needed, boots it, and hands that job its own `IOS_UDID`, `APPIUM_PORT`\n  and `WDA_LOCAL_PORT`. Jobs target the **configuration**, never an instance.\n- Every instance stays listed with its own ▶ start / ⏻ stop, so you can hold one open\n  to watch it. A manual start counts **against** the pool's N rather than adding to it.\n- **RAM has priority over the number you type.** The advertised capacity is\n  `min(N, what free RAM allows)` — the row shows `RAM: 2 of 6` with the arithmetic in\n  its tooltip. Nothing is ever killed to make room: a capped pool simply leases fewer\n  jobs and recovers as memory frees up — a pool squeezed to 0 stays registered rather\n  than leaving the fleet. Tune with `PER_SIM_MB` and `GRID_MIN_FREE_MB`.\n\n  A slot is budgeted at **3500 MB**, measured rather than guessed: two concurrent\n  iPhone 16 jobs took a 24 GB host from ~8400 MB available to a steady ~1300 MB. Be\n  wary of lowering it. Over-admitting is *slower* than running serially — in that same\n  measurement one of the two jobs blew a 900s timeout while the identical spec alone\n  finished in 3.5 minutes, so the run cost 20 minutes and a retry instead of ~7.\n- `remove` forgets the pool; its simulators stay on disk, so re-adding is instant.\n  Lowering the count behaves the same way — surplus instances stop being leased, they\n  are not deleted.\n- Headless seeding: `GRID_IOS_SIMULATORS=\"<deviceTypeId>|<runtimeId>|Katalon|6\"`\n  (comma-separated for several). Choices persist in `ios-simulators.json`.\n\n```sh\n# any runner, this pool\naegis-grid run --requires ios-katalon …\n# any iPhone 16 Pro Max simulator, whatever the pool is called\naegis-grid run --requires ios-device:iphone-16-pro-max …\n```\n\n### Starting emulators and simulators from the master\n\nLifecycle controls are no longer confined to each runner's own status page. The master\nproxies them, so **Runners & devices → `emulators & simulators`** on any runner row\nstarts and stops that host's AVDs and simulator instances — including runners you\ncannot reach directly. `▶ start` opens a **real window** on the runner host when it has\na display (auto-lifecycle demand-boots stay headless); on a display-less host the\nrequest is downgraded and says so rather than booting something invisible.\n\nMobile web is a separate platform because it uses Appium and the device browser:\n\n- `mweb-android` drives Chrome through UiAutomator2 and chooses a matching\n  chromedriver.\n- `mweb-ios` drives Safari through XCUITest. It requires macOS, Xcode/WebDriverAgent,\n  Appium's XCUITest driver, and `IOS_UDID` (plus `IOS_PLATFORM_VERSION` when needed).\n\n[Chrome for Testing]: https://googlechromelabs.github.io/chrome-for-testing/\n","readmeFilename":"README.md"}