<feed xmlns='http://www.w3.org/2005/Atom'>
<title>meshbay.git/docs/USERGUIDE.md, branch 0.1</title>
<subtitle>MeshBay — read-only public mirror</subtitle>
<id>https://git.meshbay.org/meshbay.git/atom?h=0.1</id>
<link rel='self' href='https://git.meshbay.org/meshbay.git/atom?h=0.1'/>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/'/>
<updated>2026-08-09T20:56:18Z</updated>
<entry>
<title>fix: 4 corrections — streaming hash, watchdog bug, cipher doc, deps</title>
<updated>2026-08-09T20:56:18Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-08-09T20:56:18Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=217b61ff34390fd24d0a2ad338f6094183debbe3'/>
<id>urn:sha1:217b61ff34390fd24d0a2ad338f6094183debbe3</id>
<content type='text'>
1. indexer.py: streaming blake3 (8MB chunks) instead of read_bytes().
   Large files (initrd.img, ISOs, VM images) no longer load into RAM.

2. QE/demo-v1/run_node.py: call indexer.start() not initial_scan().
   initial_scan() alone never starts the watchdog observer — files added
   after startup were silently ignored. Added indexer.stop() on shutdown.

3. USERGUIDE.md §8: clarify symmetric vs asymmetric.
   Ed25519/X25519 = asymmetric (key pairs). ChaCha20-Poly1305 and
   AES-256-GCM = symmetric AEAD 256-bit (content encryption).
   ChaCha20 is PRIMARY; AES-GCM is optional browser-compat variant only.

4. pyproject.toml: aioquic, websockets, aiosqlite, slowapi added to
   proper package deps (were installed manually, now declared).

Co-Authored-By: Claude Sonnet 4.6 (1M context) &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>docs: update all pointers after keyderive + QE restructure</title>
<updated>2026-08-09T12:57:01Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-08-09T12:57:01Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=44b9e74153f5e32b3665f319429b3b08fd3662d5'/>
<id>urn:sha1:44b9e74153f5e32b3665f319429b3b08fd3662d5</id>
<content type='text'>
CLAUDE.md: add QE/ to structure, key modules table, server state reference,
security rule updated (QE/ not keypair files), meshbay.org inventory pointer.

devel-phases.md: add milestones 6.6-6.9 (keyderive, bundle, demo scripts,
QUICKSTART rewrite). 81/81 tests.

docs/meshbay-draft-v3.md §6.1.1: new section documenting 3 key generation
strategies (Argon2id CLI, WebCrypto browser+bundle, keystore file) and the
algorithm mismatch caveat between CLI and web registration paths.

docs/USERGUIDE.md §2 Register+Login: replace "generate and persist before
registering" warning with the two clean strategies (derive_keys_from_password
for CLI, keyderive.js + keypair_bundle for browser). Login response updated
with keypair_bundle field.

hub/models.py + users.py + Alembic migration: keypair_bundle column on User,
stored at registration, returned at login (web clients only).

Co-Authored-By: Claude Sonnet 4.6 (1M context) &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>docs: add QUICKSTART.md and USERGUIDE.md</title>
<updated>2026-08-09T09:49:11Z</updated>
<author>
<name>Christophe Besson</name>
<email>cbesson@gmail.com</email>
</author>
<published>2026-08-09T09:49:11Z</published>
<link rel='alternate' type='text/html' href='https://git.meshbay.org/meshbay.git/commit/?id=7b5ca7d7b68ea2324474f5aeec511abe01ff8013'/>
<id>urn:sha1:7b5ca7d7b68ea2324474f5aeec511abe01ff8013</id>
<content type='text'>
QUICKSTART (434 lines): 6-step guide tested against live
https://meshbay.org — demo accounts alice_test/bob_test,
real transfer of README.txt (23ms) and 1MB chunk (275ms recv,
2.4ms decrypt), exact Python commands with measured output.

USERGUIDE (785 lines): 11-section reference — architecture,
account management, group/node config, file sharing, HLS streaming,
security model, moderation/CSAM, troubleshooting, full API table.

Co-Authored-By: Claude Sonnet 4.6 (1M context) &lt;noreply@anthropic.com&gt;
</content>
</entry>
</feed>
