Add native self-hosted instance connection to fluxer_desktop

Trimmed monorepo checkout (fluxer_desktop + packages/voice_engine_v2 +
tools/ci) with a "Connect to a Different Server" menu item and popout
that lets the desktop app switch to any self-hosted Fluxer instance,
plus fixes for well-known discovery on single-domain self-hosted
deployments and a false-positive ERR_ABORTED on same-origin client
redirects during the switch. Defaults to chat.fluxr.chat and uses an
isolated userData directory from the official build.
This commit is contained in:
2026-07-01 18:22:43 -04:00
commit 682afacd30
1763 changed files with 613720 additions and 0 deletions
@@ -0,0 +1,19 @@
# Seeds for failure cases proptest has generated in the past. It is
# automatically read and these particular cases re-run before any
# novel cases are generated.
#
# It is recommended to check this file in to source control so that
# everyone who runs the test benefits from these saved cases.
cc 121b28bde52462d8007d6aa3b57effba3c4f3ce05a57803cbbcaa4b7096d083f # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 1, 0, 0], mult: 0, boo: PhantomData }
cc d54877b98a8e851f187820853649131a4a0ad62e0967e5c5881577ab2ebc56f8 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 1], mult: 0, boo: PhantomData }
cc a80e1dd4a5bb0c6858ccdaf91a5aa4a8b9b71594473a91aa82583e0db4ec6ef5 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 1], mult: 0, boo: PhantomData }
cc 5aac55722aca2ca476544313178602ef71fbdda4960d3c711605cc70c6e93c06 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 0, 0, -1], mult: 0, boo: PhantomData }
cc 462968c12ee0fcc1e6a78b7fc4f412d0c7f0766299893886b8ec49cf978eff49 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, -1], mult: 0, boo: PhantomData }
cc 8ac3a83562b28a2ee6fa3896f929b7210ee7d4f559d9e9c2c06c9dd7e7fa93b5 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 0, 0, 1], mult: 0, boo: PhantomData }
cc d0369cc2a5339619ebabdd3dbdac60ea9ebf542b23ef536db03fba2de3651c21 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 0, 0, -2], mult: 0, boo: PhantomData }
cc 9c92a9f97a6d24ffaa21370b1eb5aec9880b508a384d037287df8de7f8d4c608 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 0, 0, 1], mult: 0, boo: PhantomData }
cc f3574fa61a7e297de8cf76c8268dee6c6d062dfc5f98738618bdeb69d5b9b595 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0], mult: 0, boo: PhantomData }
cc bb5421af3bb30e0ac316287dc41563ce69eca8ca74abf5f5a7f8e82d7cab6628 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], mult: 0, boo: PhantomData }
cc 45859e240aae3fa0e7667d46dd475d9f3de42e87ace8b3678db322b4a18509af # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255], mult: 0, boo: PhantomData }
cc 65d3a24331e3919a11d220118f97fe21caf769d1c590737cad9aef927959b4e9 # shrinks to pb = QWrappingMulHighDoublingProblem { c: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1], mult: 0, boo: PhantomData }
cc 378b328c0e46a5038f5876614a1ac16dc796482676f2ac81a670f5dbabb490ec # shrinks to pb = ConvProblem { ci: 1, co: 19, kt: 1, stride: 1, dilation: 4, filters: 19,1,F32 0, 0, 0, 0, 0, 0, 0, 0.026, -0.286, -0.627, -0.248, -0.291..., data: 1,5,F32 0.873, -0.377, -0.818, -0.415, 0.746, phantom: PhantomData }
@@ -0,0 +1,16 @@
# Seeds for failure cases proptest has generated in the past. It is
# automatically read and these particular cases re-run before any
# novel cases are generated.
#
# It is recommended to check this file in to source control so that
# everyone who runs the test benefits from these saved cases.
cc 058e808c67cb65d0a9013ff2cc0d9f726f19bef9b21e205396db15871be2586d # shrinks to pb = ReturnCProblem { c: [0.0, 0.0, -0.0, 0.0, 0.0, -0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -0.0, 0.0, 0.0, 0.0, -0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -0.0, 0.0, -0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -1000702600000000000000.0], boo: PhantomData }
cc 65e8110dc380469eec961f5d4ef07bd31b7f44defe08af00e6dcc812228bcc7f # shrinks to pb = QRightShiftProblem { c: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], shift: 0, policy: Away, boo: PhantomData }
cc 1f7e80660ef4800d7bbb6acafe9bbff1e396f0f78b296d20deb51b439a40736c # shrinks to pb = QScaleProblem { c: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], mult: 536870912, shift: 0, policy: Odd, boo: PhantomData }
cc 57c3e684c05eb9cc964eaaf22ccb620a2d9ef5ea5bd38c6dff6c5344b8192619 # shrinks to pb = QScaleProblem { c: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], mult: 536870912, shift: 0, policy: Odd, boo: PhantomData }
cc 9fce04b53146b7615e54728101dd8ad24ffd157d63c536eb1ca888070c8b1719 # shrinks to pb = PackedOffsetsProblem { a: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], b: [0.0, 0.0, 0.0, 0.0, 1.0, 9.0, 7.0, 7.0, 0.0, 5.0, 2.0, 3.0, 0.0, 3.0, 7.0, 2.0, 2.0, 6.0, 4.0, 4.0, 1.0, 5.0, 5.0, 1.0, 3.0, 7.0, 3.0, 4.0, 7.0, 5.0, 8.0, 8.0, 1.0, 5.0, 6.0, 8.0, 7.0, 6.0], cols_offsets: [28], rows_offsets: [9], add_one: false, _phantom: PhantomData }
cc 708172a1bb5110aa22d15b4a0daa777fae18dda1ab481328ab200f54d72357b6 # shrinks to pb = ConvProblem { ci: 1, co: 17, kt: 1, stride: 3, dilation: 4, filters: 17,1,F32 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.044..., data: 1,3,F32 -0.416, -0.932, -0.21, phantom: PhantomData }
cc e62d087b655259ebda7622f40e0049a49fb803777a3a98343c6855e69944ccfc # shrinks to pb = ConvProblem { ci: 1, co: 17, kt: 1, stride: 4, dilation: 4, filters: 17,1,F32 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0..., data: 1,4,F32 0.251, 0, 0, 0, phantom: PhantomData }
cc 15bfa5078b5479e12e74820888d477cbdd628faa03aa1bef26738dfa8cbff014 # shrinks to (m, k, n, ref a, ref b) = (1, 1, 2, 1,1,F32 0, 1,2,F32 0, 0)
cc dde4ea4eafe9beb60bffe8307cdb62c6143849f247ad9edbb64acd586f57d722 # shrinks to (m, k, n, ref a, ref b) = (1, 1, 2, 1,1,F32 0, 1,2,F32 0, 0)
cc 066cecc4f004061abab40982576e9f10c56dd090751a699e2cffeb3f7260b0e1 # shrinks to (m, k, n, ref a, ref b) = (1, 1, 2, 1,1,F32 0, 1,2,F32 0, 0)