flowviant 0.74.1 → 0.74.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/lib/authproxy.mjs +7 -0
- package/package.json +1 -1
package/bin/lib/authproxy.mjs
CHANGED
|
@@ -421,6 +421,13 @@ export function startAuthProxy({ targetPort, log, onAbuse, grantSecret, shareId,
|
|
|
421
421
|
// WS upgrade (HMR). The browser resends the Basic-auth header on same-origin
|
|
422
422
|
// upgrades, so we gate it too, then pipe the two sockets together.
|
|
423
423
|
server.on('upgrade', (req, socket, head) => {
|
|
424
|
+
// OWN THE SOCKET FROM THE FIRST LINE. Between this handler firing and the
|
|
425
|
+
// origin's 101, the client socket had no 'error' listener — a browser
|
|
426
|
+
// that RSTs mid-handshake (tab closed during HMR reconnect) emitted
|
|
427
|
+
// 'error' with nobody listening, and an uncaughtException took the WHOLE
|
|
428
|
+
// daemon down (2026-08 audit HIGH, reproduced on Node 24; closed
|
|
429
|
+
// 2026-09-02). The post-101 block still swaps in the cross-destroy pair.
|
|
430
|
+
socket.on('error', () => socket.destroy());
|
|
424
431
|
// Nothing under the reserved prefix is ever piped to the origin.
|
|
425
432
|
if (safePathname(req.url).startsWith('/__fv/')) {
|
|
426
433
|
socket.destroy();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "flowviant",
|
|
3
|
-
"version": "0.74.
|
|
3
|
+
"version": "0.74.2",
|
|
4
4
|
"description": "Run your own coding CLIs as build agents for Flowviant \u2014 Claude Code, Codex or Antigravity, on your own credentials. Holds your sessions, keeps a worktree per tab, and ships branches on your word.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|