Commit Graph
51 Commits
Author SHA1 Message Date
ldm0 c0df8f1b42 fix(protocol): preserve target lifecycle semantics 2026-08-28 19:47:32 +08:00
ldm0 c780b3a54d refactor(browser): publish self-contained owner facts 2026-08-28 19:47:32 +08:00
ldm0 10f00a57a5 refactor(browser): seal mutable host state access 2026-08-28 19:47:32 +08:00
ldm0 c028705bc7 refactor(browser): aggregate target runtime state 2026-08-28 19:47:32 +08:00
ldm0 13ec1a2a09 refactor(browser): derive initial document state 2026-08-28 19:47:32 +08:00
ldm0 deed6a1eff refactor(browser): collapse navigation commit facts 2026-08-28 19:47:32 +08:00
ldm0 78c18eef51 refactor(browser): derive fact identity from page source 2026-08-28 19:47:32 +08:00
ldm0 de2baf806a refactor(browser): remove diagnostic turn state 2026-08-28 19:47:31 +08:00
ldm0 8435c52a0f fix(browser): retire document lifecycle state with target 2026-08-28 19:47:31 +08:00
ldm0 b9f84d85d4 refactor(browser): separate core ownership from protocol frontends 2026-08-28 19:47:31 +08:00
ldm0 5b9a21bc25 fix(navigation): honor input disposition for popup activation
Carry foreground/background selection through renderer and protocol so auxiliary targets are activated independently of navigation. Match trusted input policy for platform modifiers, Shift, Alt, and window.open while preventing synthetic modified clicks from creating tab-unders.
2026-08-27 18:04:19 +08:00
ldm0 76d87a5948 test(fetch): isolate network idle timeout budget 2026-08-27 17:53:51 +08:00
ldm0 9725d7610d fix(css): enforce exact style element type 2026-08-27 15:08:24 +08:00
ldm0 f3d5f3d11c refactor(runtime): simplify awaited expression evaluation 2026-08-26 17:58:15 +08:00
ldm0 addbb8e3fa feat(fetch): evaluate page expressions 2026-08-26 17:58:15 +08:00
ldm0 4d0b78f1f8 fix(cdp): unify renderer session response authority 2026-08-25 17:15:54 +08:00
ldm0 28aaaa9e8a feat(cli): add disable-js fetch mode 2026-08-25 16:05:34 +08:00
ldm0 461f9bcac4 feat(fetch): enrich JSON dump metadata 2026-08-24 20:04:55 +08:00
ldm0 79a1bca120 refactor(style): retain incremental document style worlds 2026-08-24 18:56:48 +08:00
ldm0 b959a04253 fix(fetch): invoke wait-script function predicates 2026-08-23 20:51:34 +08:00
ldm0 08d8461c26 fix(fetch): preserve typed readiness timeout phases 2026-08-23 04:45:50 +08:00
ldm0 54f453cdd0 fix(fetch): preserve readiness deadlines and diagnostics
Apply one absolute deadline across response headers, streaming raw bodies, page creation, and later readiness waits. Report the active timeout phase without extending the caller's budget and reject raw documents from Page APIs before an unusable body can stall.

Give CLI fetch failures a stable two-line Error/Reason presentation while retaining full anyhow chains for non-fetch failures, including raw-document page-wait errors.
2026-08-23 04:45:50 +08:00
ldm0 e2fdb90600 feat(renderer): allow lifecycle navigation fallback 2026-08-23 03:02:03 +08:00
ldm0 d823999dc0 fix(renderer): fence screencast resource races
Split screenshot and screencast capture contracts, publish one shared visual resource generation, and collect CSS image references during the real layout traversal. Add asynchronous publication and multi-session screencast regressions.
2026-08-22 19:44:54 +08:00
ldm0 7608292c78 fix(renderer): stabilize style observations and screencast polling 2026-08-22 19:44:54 +08:00
ldm0 3a8e52ba99 Implement classic scrollbars 2026-08-22 19:44:54 +08:00
ldm0 8441f9a7d8 feat(cli): split response waits into literal and regex modes 2026-08-22 03:20:24 +08:00
ldm0 2c186e3c4a fix(devtools): preserve nested Main response order 2026-08-20 14:12:15 +08:00
ldm0 a74431d226 fix(devtools): unify synchronous Page IO responses 2026-08-20 14:12:15 +08:00
ldm0 d28c20ef87 refactor(devtools): align inspector session routing with Chromium 2026-08-19 19:58:31 +08:00
ldm0 f63a5640ab fix(devtools): make Page crash terminal IO control 2026-08-19 19:58:31 +08:00
ldm0 f90729edf3 fix(devtools): unify Page IO agent ingress 2026-08-19 19:58:31 +08:00
ldm0 595a538bcf Refactor network fetch errors as anyhow context 2026-08-18 17:38:12 +08:00
ldm0 aefa01568d fix(fetch): share deadline with best-effort readiness 2026-08-17 01:23:24 +08:00
ldm0 f23fca74ad refactor(fetch): unify readiness deadline 2026-08-17 01:23:24 +08:00
ldm0 d7df97dc4f fix(fetch): share timeout across replacement navigation 2026-08-17 01:23:24 +08:00
ldm0 8cd6dac0d4 fix(devtools): keep non-V8 IO agents owner-independent 2026-08-17 00:40:39 +08:00
ldm0 368c087534 refactor(devtools): unify the renderer Main receiver 2026-08-17 00:40:39 +08:00
ldm0 91bfa0b441 Remove legacy inspector command routing 2026-08-17 00:40:39 +08:00
ldm0 1b5ffc8f5d refactor: add nested main inspector receiver 2026-08-17 00:40:39 +08:00
ldm0 310b886f51 refactor: split inspector IO dispatch from page owner 2026-08-17 00:40:39 +08:00
ldm0 d0f09dbe6d fix(devtools): unify page inspector command ingress 2026-08-17 00:40:39 +08:00
ldm0 73aa8520fd fix(renderer): preserve per-session inspector dispatch order 2026-08-17 00:40:39 +08:00
ldm0 bea0f130b5 test: cover HTTP error navigation edge cases 2026-08-16 21:10:24 +08:00
ldm0 eb4b7e4a36 feat: follow HTTP error replacement navigations 2026-08-16 21:10:24 +08:00
ldm0 95a671e2e0 feat(fetch): return best-effort results on readiness timeout 2026-08-16 02:58:13 +08:00
ldm0 1b6e2bf87c refactor: centralize navigation-safe input completion
Settle renderer command turns against the Page residence that admitted them, while preserving immutable acknowledgements after navigation replaces that Page. Route output fences and post-response continuations through the canonical command context before decoding Input replies. Also isolate scheduler-sensitive runtime tests discovered during full-workspace validation.
2026-08-15 14:14:24 +08:00
ldm0 1073917939 fix: preserve input acknowledgements across navigation 2026-08-15 14:14:24 +08:00
ldm0 f2a2095751 fix(navigation): stabilize sequential CDP lifecycle 2026-08-13 07:07:00 +08:00
ldm0 edd2c2df15 Stabilize large NodeList regression test 2026-08-12 00:46:14 +08:00