f9cd3e6318
- Review #4: forward HTTP_CONTENT_ENCODING to git http-backend so it inflates gzip'd RPC bodies — a non-trivial `git pull` no longer fails with `fatal: expected 'packfile'`. (git-http-backend + git-http.service) - Review #5: the read-advertisement branch runs under the space lock AFTER reply.hijack(); a reject there (e.g. Redis down) previously left the socket open forever, hanging every clone/fetch. Mirror the push branch: catch, 500 if unwritten, always end the socket. (git-http.service) - GS-EXPORT-500 (QA): a page with an inline comment mark returned HTTP 500 on Export/copy-as-markdown. The Comment mark's renderHTML took the imperative document.createElement branch server-side (the DOM shim used by generateHTML defines window/document), returning a live node with no content hole that crashed prosemirror-model's DOMSerializer under happy-dom. Gate the imperative branch on a real browser (navigator.userAgent contains 'Mozilla'); the server now uses the static DOMOutputSpec form. Verified: export 200 (was 500). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>