diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-09-03 15:20:52 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-09-03 15:20:52 +0200 |
| commit | 0b3ffdb8d7f07aee817ece24fd44a24ac60e6714 (patch) | |
| tree | 4f65c9bb9128abf18f7739a711c77cfc8012fc06 /packages/meshbay-node/tests/test_linkpreview.py | |
| parent | c1be7571973c3d0b671ed4db2da41266ae3099d8 (diff) | |
| download | meshbay-0b3ffdb8d7f07aee817ece24fd44a24ac60e6714.tar.gz | |
refactor(hub): drop the base64 chunk fallback and the dead HTTP file client
With MNP 0.15 no node can emit a base64 `file_chunk`, so the browser's fallback
for that shape is unreachable. Three things go with it:
- `file-utils.js` kept a third branch below the fallback that base64-decoded
`chunkMsg.ct_b64 || chunkMsg.data_b64` when neither was present, i.e. decoded
`undefined` and wrote the result into the file the user was saving. A chunk we
cannot decrypt now stops the download with an error naming the file and
suggesting the node is older than the page. Deliberately not in
`_isRetryableTransportError`: this is a version mismatch, not a bad moment on
the link.
- `crypto.js` `decryptChunk` (base64) was the real path until Phase 9.15 and has
had no caller since.
- `crypto.js` `decryptFile` was never called in any commit. It fetched
`${nodeUrl}/file/${id}/${chunk}?token=` in a loop — the node's unauthenticated
HTTP file API, which is finding C1 and was deleted in Phase 11.5. A client for
an endpoint that no longer exists, kept alive by being exported.
`decryptChunkBin` — every file download and every video segment — is untouched.
`packages/meshbay-client/ui/` was resynchronised with `npm run sync-ui`.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AsoWC3GmhNdwVFomW3QjH3
Diffstat (limited to 'packages/meshbay-node/tests/test_linkpreview.py')
0 files changed, 0 insertions, 0 deletions