Garry Tan and Matt Van Horn
d2a0bbcf4c
v1.91.4.0 fix: Windows Opera cookie import wave ( #2980 , refs #2957 ) ( #2987 )
...
* fix: support Windows Opera and Opera GX cookie imports
Fixes #2957
* fix: repair Windows cookie decryption and make Opera import failures actionable
- strip the SHA-256(host_key) prefix Chromium adds to v10 values (DB meta v24+) on Windows
- keep receipts and name `$B handoff` recovery for App-Bound rows in browsers without native extraction
- explain missing browsers, missing profiles and ambiguous profile selection with next steps
- add windowsNative/resolveBrowserInfo, the operagx alias and sorted failure reasons in CLI output
- cover the Node server runtime with a real-DPAPI Windows test
* docs: document Windows Opera cookie import and guard browser lists against drift
* chore: file cookie-import follow-ups from the Opera fix wave review
* test: keep Opera receipt tests independent of the shared key cache
* test: declare generated gstack/llms.txt as a command-reference input for PR selection
* chore: release v1.91.4.0
* test: reconstruct the historical cookie-workflow approval after the Opera BROWSER.md additions
* test: run the real-DPAPI Windows check with the runner's environment
PowerShell launched with a stripped environment took ~18-21s on the Windows
runner (measured on a throwaway diagnostics run), past dpapiDecrypt's 10s
deadline; with the full environment it returns in ~0.3s. Only APPDATA is
redirected to the fixture's Opera root.
---------
Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com >
2026-09-28 13:09:52 -07:00
..
2026-09-14 15:14:58 -07:00
2026-09-25 13:27:07 -04:00
2026-08-15 22:20:30 -07:00
2026-08-29 10:10:35 -07:00
2026-09-06 08:54:25 -07:00
2026-09-24 01:53:58 -04:00
2026-09-25 13:27:07 -04:00
2026-09-25 13:27:07 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 14:32:45 -07:00
2026-09-14 14:32:45 -07:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 14:32:45 -07:00
2026-09-14 14:32:45 -07:00
2026-09-05 14:45:28 -07:00
2026-09-09 08:57:21 -07:00
2026-04-19 17:50:31 +08:00
2026-08-29 09:06:54 -07:00
2026-05-26 16:50:03 -07:00
2026-08-27 09:50:31 -07:00
2026-05-26 16:50:03 -07:00
2026-08-31 08:55:30 -07:00
2026-09-14 14:32:45 -07:00
2026-06-07 19:13:24 -07:00
2026-09-26 18:57:53 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 14:32:45 -07:00
2026-09-14 14:32:45 -07:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-26 18:57:53 -04:00
2026-09-22 14:57:52 -04:00
2026-09-26 18:57:53 -04:00
2026-09-22 14:57:52 -04:00
2026-09-26 18:57:53 -04:00
2026-09-26 18:57:53 -04:00
2026-09-25 12:06:45 -04:00
2026-09-24 01:53:58 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 15:14:58 -07:00
2026-09-25 12:06:45 -04:00
2026-09-14 15:14:58 -07:00
2026-09-14 15:14:58 -07:00
2026-09-14 14:32:45 -07:00
2026-09-24 01:53:58 -04:00
2026-09-21 12:27:25 -04:00
2026-09-24 01:53:58 -04:00
2026-09-21 12:27:25 -04:00
2026-09-14 14:32:45 -07:00
2026-09-24 01:53:58 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 14:32:45 -07:00
2026-08-15 09:37:04 -07:00
2026-08-15 09:37:04 -07:00
2026-09-24 17:27:14 -04:00
2026-08-24 08:55:58 -07:00
2026-09-14 14:32:45 -07:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 14:32:45 -07:00
2026-09-22 14:57:52 -04:00
2026-09-26 18:57:53 -04:00
2026-09-25 12:06:45 -04:00
2026-09-25 12:06:45 -04:00
2026-09-14 14:32:45 -07:00
2026-09-08 22:40:22 -07:00
2026-09-22 14:57:52 -04:00
2026-08-28 11:43:13 -07:00
2026-03-20 08:30:09 -07:00
2026-08-31 08:55:30 -07:00
2026-09-15 21:35:11 -07:00
2026-09-23 08:54:53 -04:00
2026-09-24 17:27:14 -04:00
2026-09-22 14:57:52 -04:00
2026-09-25 12:06:45 -04:00
2026-09-28 13:09:52 -07:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 14:32:45 -07:00
2026-09-14 14:32:45 -07:00
2026-09-14 14:32:45 -07:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 15:14:58 -07:00
2026-08-29 09:06:54 -07:00
2026-09-24 01:53:58 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 14:32:45 -07:00
2026-09-24 01:53:58 -04:00
2026-09-22 14:57:52 -04:00
2026-09-26 18:57:53 -04:00
2026-09-14 14:32:45 -07:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 14:32:45 -07:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-14 14:32:45 -07:00
2026-05-30 12:09:10 -07:00
2026-08-29 09:06:54 -07:00
2026-08-29 09:06:54 -07:00
2026-08-16 09:53:31 -07:00
2026-04-24 01:38:21 -07:00
2026-09-23 08:54:53 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-26 18:57:53 -04:00
2026-09-24 01:53:58 -04:00
2026-09-24 01:53:58 -04:00
2026-09-24 01:53:58 -04:00
2026-09-25 13:27:07 -04:00
2026-09-26 18:57:53 -04:00
2026-08-14 09:28:56 -07:00
2026-09-24 17:27:14 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-22 14:57:52 -04:00
2026-09-26 18:57:53 -04:00
2026-09-26 18:57:53 -04:00
2026-08-15 22:20:30 -07:00
2026-09-25 13:27:07 -04:00
2026-09-06 08:54:25 -07:00
2026-09-28 13:09:52 -07:00
2026-08-15 22:20:30 -07:00
2026-05-30 12:09:10 -07:00
2026-09-26 18:57:53 -04:00
2026-09-22 14:57:52 -04:00
2026-09-26 18:57:53 -04:00
2026-09-22 14:57:52 -04:00