<feed xmlns='http://www.w3.org/2005/Atom'>
<title>meshbay.git/packages/meshbay-android/app/src/test/kotlin/org/meshbay/client, branch main</title>
<subtitle>MeshBay — read-only public mirror</subtitle>
<id>https://git.meshbay.org/meshbay.git/atom?h=main</id>
<link rel='self' href='https://git.meshbay.org/meshbay.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/'/>
<updated>2026-10-03T12:24:54Z</updated>
<entry>
<title>fix(android): the cast header is everything before the first moof</title>
<updated>2026-10-03T12:24:54Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-10-03T11:36:19Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=67af4248c97d2e1568e5c22179fa0026dbbc5219'/>
<id>urn:sha1:67af4248c97d2e1568e5c22179fa0026dbbc5219</id>
<content type='text'>
The node's first chunk can be the 28-byte ftyp alone, the moov in the next;
served as the header, the receiver had no moov and gave up. A receiver early
for the header now waits for all of it.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>fix(android): the cast relay spools a receiver's lead to disk</title>
<updated>2026-10-03T12:24:54Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-10-03T10:53:35Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=cf8345386996c561f176049b2f83fbd07956995e'/>
<id>urn:sha1:cf8345386996c561f176049b2f83fbd07956995e</id>
<content type='text'>
Fragments are 5-10 MB at a film's bitrate; dropped past 8 MB in memory, the
TV froze for their length. Each receiver now reads from its own spool file,
deleted with it; nothing is dropped short of a disk bound.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>fix(android): cast relay serves a clean header and restarts on its ports</title>
<updated>2026-10-03T12:24:54Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-10-03T08:30:05Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=025b0e0289b7884c4ead980d91b2e659632e1808'/>
<id>urn:sha1:025b0e0289b7884c4ead980d91b2e659632e1808</id>
<content type='text'>
The init is what precedes the first moof; ports are reused like Node's; the
SDK is read on the main thread; a cast that fails says why on screen, and
success waits until the receiver actually plays. Never a VPN's address.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat(android): casting through a LAN relay and the platform cast SDK</title>
<updated>2026-10-03T12:24:54Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-10-03T07:03:34Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=57758895bc7b0f7f21497194e81172f43d634852'/>
<id>urn:sha1:57758895bc7b0f7f21497194e81172f43d634852</id>
<content type='text'>
A port of cast-relay.js (backlog also bounded in bytes), discovery and control
with the default media receiver, relay calls kept in order, and a foreground
service plus a WebView kept visible so a cast survives the screen going off.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat(android): downloads to disk and uploads through the system picker</title>
<updated>2026-10-03T12:24:54Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-10-02T16:21:26Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=d8f5005ba2c9a249ce5ce8976d9c3754a3a7458e'/>
<id>urn:sha1:d8f5005ba2c9a249ce5ce8976d9c3754a3a7458e</id>
<content type='text'>
Native save over the Storage Access Framework and MediaStore, chunks sent as
binary bridge messages, a chosen folder that has gone asks rather than
redirects, unfinished files removed on abort and after a killed process.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat(android): device key, bundle key and node identities held natively</title>
<updated>2026-10-03T12:24:54Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-10-02T11:46:34Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=78f3208db5e7285e62151cecb06c2d3c9eb4d2ae'/>
<id>urn:sha1:78f3208db5e7285e62151cecb06c2d3c9eb4d2ae</id>
<content type='text'>
Keystore-wrapped store, a Kotlin port of keyring.js and transcripts.js held
to the shared vectors, the same keys/device/secrets bridge as the desktop,
and a native confirmation before browser access is widened.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat(android): client shell with the interface from the package</title>
<updated>2026-10-03T12:24:54Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-10-02T10:14:01Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=6ebfc86392a74dc0ae18f0d2703a3f91b8977d46'/>
<id>urn:sha1:6ebfc86392a74dc0ae18f0d2703a3f91b8977d46</id>
<content type='text'>
WebView over the packaged UI (copied from hub/static at build time), the
desktop CSP as a header, a bridge answering our top-level document only,
hub calls from native to the signed-in hub. Keys stay in the page for now.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
</feed>
