Repository navigation
Phase 6: network power tools, layout and accessibility, sessions, comparing devices.
Added
- Mocks and breakpoints: rules that answer a request yourself (status, headers, text or binary body, delay), slow it
down, block it, or hold the request and/or the response so you can edit it and continue. A Rules dialog with presets
and "Mock this response" from any request, a drawer for held messages,emulabzip net --rules file.json. Held
messages continue by themselves after two minutes. - WebSocket messages: a frame parser (RFC 6455, fragments, control frames,
permessage-deflate) feeds a Messages
tab with direction, text, JSON and hex, and goes into the HAR export as_webSocketMessages. - Packet capture import:
.pcapand.pcapngfiles (such asemulator -tcpdumpwrites) become requests, TLS
connections named by their server name, and DNS lookups, with TCP streams put back together. In the app (Import)
and asemulabzip net import. - HTTP/3 to servers: with Use HTTP/3 to servers on, hosts that announce
Alt-Svc: h3are reached over QUIC,
with a fallback to TCP. A Proto column showsh1,h2orh3. Hide HTTP/3 from apps (on by default) keeps apps
from trying QUIC around the proxy. - Layout and accessibility: the views on screen with their names, sizes and flags (
uiautomatoron Android, the
Accessibility API on the iOS Simulator), a Layout view with the screenshot, the tree and properties, and an audit of
missing labels, touch targets, contrast and duplicate names.emulabzip layoutandemulabzip a11y --fail-on, and the
MCP toolsget_layoutandaudit_accessibility. - Sessions: a recorder that writes logs, samples, requests, crashes and screenshots into one
.ezsessionfile
(still readable if the run was killed), a Sessions view,emulabzip session recordandsession show, and the MCP
toolslist_sessionsandsession_summary. - CI mode:
emulabzip ci -o run.ezsession -- <command>records around a command, keeps its exit code, writes a
Markdown report (also to$GITHUB_STEP_SUMMARY), and--fail-on-crashfails a run whose app crashed. - Compare: two devices side by side with both screens, CPU and memory charts, and a table of what differs;
emulabzip compare. - Live tests for all of it in
tools/live-tests.sh, and a capture written by a real emulator as a test fixture.
Changed
- WebSocket connections are no longer opaque tunnels: the bytes still pass unchanged, and the messages are read from
them.