Skip to content

Fix session body decompression, session start conflict, and improve docs#9

Merged
yfe404 merged 1 commit intomainfrom
fix/session-body-decompress-and-docs
Mar 23, 2026
Merged

Fix session body decompression, session start conflict, and improve docs#9
yfe404 merged 1 commit intomainfrom
fix/session-body-decompress-and-docs

Conversation

@yfe404
Copy link
Copy Markdown
Owner

@yfe404 yfe404 commented Mar 23, 2026

Summary

  • Session body decompression: proxy_get_session_exchange(include_body: true) and proxy_export_har now automatically decompress gzip/deflate/brotli response bodies using the stored content-encoding header. Previously they returned raw compressed bytes, requiring callers to decompress manually. Raw compressed bytes are preserved on disk for exact replay fidelity.
  • proxy_start + proxy_session_start conflict: proxy_session_start() no longer throws when a session was already auto-started by proxy_start(persistence_enabled: true). Instead, it returns the existing active session with a descriptive note.
  • TLS ClientHello passthrough documentation: Added a new "TLS ClientHello Passthrough" section documenting that Chrome launched via interceptor_chrome_launch forwards its original TLS ClientHello to upstream servers (authentic browser fingerprint, not the proxy's). Includes verification steps and a comparison table of when passthrough applies vs. when spoofing is needed.
  • README restructure: Added table of contents, moved Setup/Install section to the top (was buried mid-page), added session decompression and start-conflict behavioral notes to the Sessions section.

- Decompress gzip/deflate/brotli bodies in getSessionExchange() and
  exportHar() using stored content-encoding header. Raw compressed bytes
  are preserved on disk for replay fidelity.
- Handle proxy_session_start gracefully when a session was already
  auto-started by proxy_start(persistence_enabled: true) — return the
  existing session instead of throwing.
- Document TLS ClientHello passthrough behavior for Chrome launched via
  interceptor_chrome_launch (authentic browser fingerprint forwarded to
  upstream, not the proxy's).
- Restructure README: add table of contents, move Setup to top, add
  session decompression and start-conflict notes to Sessions section.
@yfe404 yfe404 merged commit 9567230 into main Mar 23, 2026
1 check passed
@yfe404 yfe404 deleted the fix/session-body-decompress-and-docs branch March 23, 2026 09:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant