Commit Graph

813 Commits

Author SHA1 Message Date
SGavrl
324b9a0240 Merge pull request #573 from h4ckf0r0day/render
feat(render): add native rendering, screenshots, screencasting, and PDF export
2026-08-07 20:34:56 +00:00
SGavrl
730fe7ff25 Update README.md 2026-08-07 22:26:11 +02:00
SGavrl
4bd8aa6930 docs: announce native rendering 2026-08-07 20:23:04 +00:00
SGavrl
cd661982df fix(build): preserve non-render compatibility 2026-08-07 20:15:28 +00:00
SGavrl
af93379ba0 build: publish no-render release variants 2026-08-07 19:35:59 +00:00
SGavrl
5868416424 docs: trim readme introduction 2026-08-07 19:21:11 +00:00
SGavrl
69cdf19a52 docs: remove duplicate rendering guides 2026-08-07 19:19:36 +00:00
SGavrl
e66a33f893 docs: restore stealth and performance positioning 2026-08-07 19:16:27 +00:00
SGavrl
3825b1e577 fix(cdp): support page screencast sessions 2026-08-07 18:58:44 +00:00
SGavrl
806cee4bac fix(cli): simplify screenshot capture
Add a short screenshot flag, reject batch conflicts during argument parsing, and remove unsupported performance and parity language from the public documentation.
2026-08-07 18:38:24 +00:00
SGavrl
3295143025 docs(render): publish automation guide
Document screenshots, scrolling, screencasting, PDF, MCP media output, release builds, and evidence-based render verification across the public guides and agent skill.
2026-08-07 18:33:51 +00:00
SGavrl
084789a2d7 feat(render): ship capture surfaces
Enable rendering in release archives and Docker builds. Expose bounded PNG screenshots and raster PDF resources through render-enabled MCP servers.
2026-08-07 18:33:38 +00:00
SGavrl
ec78fb9148 Restore namespace mutation and timer invariants 2026-08-07 17:56:07 +00:00
SGavrl
89cc9b54a9 Preserve foreign namespaces across DOM fragments 2026-08-07 17:48:46 +00:00
SGavrl
9d0e7d63dc Merge pull request #515 from mnaza/fix/domparser-xml-504
fix(js): surface a parsererror for malformed XML in DOMParser
2026-08-07 16:52:28 +00:00
SGavrl
d361e41185 Merge pull request #548 from mnaza/fix/cssstyledeclaration-global-546
fix(js): expose CSSStyleDeclaration as a real global interface
2026-08-07 16:51:57 +00:00
SGavrl
44fd3dc65b Merge pull request #549 from mnaza/fix/set-attribute-qualified-name-547
fix(dom): match setAttribute by qualified name, not local name only
2026-08-07 16:51:32 +00:00
SGavrl
77e6fb4ecd Resolve sticky geometry in nested scrollers 2026-08-07 16:51:03 +00:00
SGavrl
e3c39e5989 Merge pull request #553 from mnaza/fix/fill-form-native-setter-550
fix(mcp): fill_form check/uncheck/select use the native setter and trusted events
2026-08-07 16:50:45 +00:00
SGavrl
215861b30f Merge pull request #554 from mnaza/fix/stealth-empty-ssl-cert-env-551
fix(net): treat empty SSL_CERT_FILE/SSL_CERT_DIR as unset in the stealth client
2026-08-07 16:50:04 +00:00
SGavrl
8cd9a001f1 Merge pull request #555 from mnaza/fix/event-constructor-conformance-552
fix(js): make Event/CustomEvent constructors match WebIDL
2026-08-07 16:49:41 +00:00
SGavrl
750d54ce56 Merge pull request #559 from mnaza/fix/documentelement-innerhtml-head-556
fix(dom): keep <head> content when setting documentElement.innerHTML
2026-08-07 16:47:55 +00:00
SGavrl
8cd131fbae Merge pull request #561 from mnaza/fix/string-timer-global-scope-558
fix(js): run string timer handlers as global-scope scripts at fire time
2026-08-07 16:46:52 +00:00
SGavrl
f234ff9e0b Merge pull request #567 from alectimison-maker/fix/meta-charset-sniffing
fix(net): reject unrelated meta charset hints
2026-08-07 16:45:51 +00:00
SGavrl
0d48afe1e0 Merge pull request #564 from ibukanov/fix/stealth-content-encoding-563
fix(net): decode Content-Encoding on the stealth client
2026-08-07 16:45:24 +00:00
SGavrl
a97bb9c590 Contain fixed and sticky stacking contexts 2026-08-07 15:38:01 +00:00
SGavrl
c02f9e4a2b Reuse prepared derived geometry 2026-08-07 15:23:59 +00:00
SGavrl
70062e0870 Update README.md 2026-08-05 16:57:21 +02:00
alectimison-maker
a4e8ee574f fix(net): reject unrelated meta charset hints 2026-08-05 15:53:21 +08:00
SGavrl
740186e88a Retain opacity animation paint state 2026-08-05 00:18:00 +00:00
SGavrl
bf4d26bb0d Retain transform animation visual geometry 2026-08-05 00:00:01 +00:00
SGavrl
f99be8b4b4 Reduce resource and animation layout churn 2026-08-04 23:24:52 +00:00
SGavrl
4686e8f407 Retain rendering through resource and hydration updates 2026-08-04 22:36:51 +00:00
SGavrl
b627d4c798 Retain styles across Web Animation updates 2026-08-04 22:00:56 +00:00
SGavrl
8841c919dd Batch intersection observer delivery by document 2026-08-04 21:49:35 +00:00
SGavrl
a571dc9329 Retain tree state through modern hydration 2026-08-04 21:30:32 +00:00
SGavrl
4171445e55 Reuse DOM metadata during hydration 2026-08-04 21:06:06 +00:00
SGavrl
eff924f5ab Align emulation and rendering observer lifecycle 2026-08-04 20:35:30 +00:00
SGavrl
d7883e7885 Advance modern page lifecycle and geometry 2026-08-04 19:48:39 +00:00
SGavrl
e37936cd53 Apply constructed styles across shadow roots 2026-08-04 18:05:34 +00:00
SGavrl
292ca755a7 Reuse geometry during paint-only animations 2026-08-04 18:05:27 +00:00
SGavrl
acb6810a6d Expose live stylesheet CSSOM 2026-08-04 17:52:07 +00:00
SGavrl
02ee089132 Batch rendering observers and browser tasks 2026-08-04 17:33:02 +00:00
SGavrl
1d2dc4e36b Fetch modules as cached CORS subresources 2026-08-04 17:18:27 +00:00
SGavrl
26e65a40f1 Yield fixed waits between browser tasks 2026-08-04 16:56:39 +00:00
Igor Bukanov
30a51b9008 fix(net): decode Content-Encoding on the stealth client
The wreq dependency was declared without the gzip, brotli, deflate and zstd
features, so the stealth client returned bodies still compressed while the
reqwest path decoded them. The Chrome145 emulation advertises those encodings,
so origins do compress, and the raw gzip bytes reached the HTML parser as
document text.

Add a regression test that serves one gzip response and asserts the stealth
client decodes it.

Fixes #563.
2026-08-04 16:50:47 +00:00
SGavrl
3fb7542844 Reflow cyclic flex descendants from final geometry 2026-08-04 16:31:13 +00:00
SGavrl
9d2164078d Expose named elements and SVG path interfaces 2026-08-04 16:29:29 +00:00
SGavrl
426fde27a0 Compare framework-generated geometry IDs safely 2026-08-04 16:13:13 +00:00
SGavrl
82cf935e90 Inherit assigned nodes through flattened slots 2026-08-04 16:07:21 +00:00