First live run reset one account, then failed on the second: the confirm button never enabled and the step reported it covered by a bare `div`. reCAPTCHA adds a client to ___grecaptcha_cfg.clients per rendered widget and removes none, so the second modal leaves two — and the callback walk fired the first it found, the one belonging to the modal that already closed. The token goes to a widget nobody is listening to, the live modal never hears it was solved, and its button stays dark. Iteration 1 worked only because there was one client to find. Now the newest wins: hook widgets are walked in reverse, clients sorted by descending key, and the count of candidates is reported so `2 widgets on the page, used the newest` says plainly when a page is stacking stale ones. Also from that run: - coveredBy printed `div` and nothing else, which diagnoses nothing. It only ever reported tag and id, and modal backdrops and captcha overlays carry neither. It now names classes too. - A covered target gets 8s to clear before the step fails. Most things over a button are on their way out — a backdrop mid-fade, an overlay closing. This does not weaken the check: still covered at the deadline still fails, and nothing is clicked while anything is on top of it. - The reset list's scroll container is confirmed as a class, so the class-or-id hedge is trimmed. The run reported it as `dashboard_body MuiBox-root mui-0`. Extension to 0.11.1 so the dashboard can confirm the reload took. Runner VERSION deliberately unchanged — the step vocabulary is the same, and a bump would raise the mismatch banner for a change that does not need it. The runner does still need restarting to pick up the covered-retry. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
33 lines
930 B
JSON
33 lines
930 B
JSON
{
|
|
"manifest_version": 3,
|
|
"name": "AutoFirmer Capture",
|
|
"version": "0.11.1",
|
|
"description": "Scrapes the HTML of the firm tab you are viewing and posts it to the AutoFirmer dashboard.",
|
|
"permissions": ["scripting", "tabs", "storage", "alarms"],
|
|
"host_permissions": [
|
|
"https://*.tradeify.co/*",
|
|
"https://*.lucidtrading.com/*",
|
|
"http://localhost/*",
|
|
"http://127.0.0.1/*"
|
|
],
|
|
"background": {
|
|
"service_worker": "background.js"
|
|
},
|
|
"content_scripts": [
|
|
{
|
|
"matches": [
|
|
"https://*.tradeify.co/*",
|
|
"https://*.lucidtrading.com/*"
|
|
],
|
|
"js": ["captcha-hook.js"],
|
|
"run_at": "document_start",
|
|
"all_frames": true,
|
|
"world": "MAIN"
|
|
}
|
|
],
|
|
"action": {
|
|
"default_popup": "popup.html",
|
|
"default_title": "AutoFirmer Capture"
|
|
}
|
|
}
|