dashboard: spike shows Trixnity runs on the JVM with vodozemac #5

Merged
mi merged 1 commits from claude-code/matrix-sdk-spike into main 2026-10-10 20:16:35 +02:00
Owner

Werkbaum #dash.matrix.sdk: Trixnity runs on the dashboard's JVM, with vodozemac rather than libolm.

A spike in dashboard/spikes/matrix-sdk, a Gradle build of its own — nothing reaches the dashboard's classpath or bundle. It signs in nowhere and sends nothing:

  • Olm: two accounts, pre-key message and answer decrypted.
  • Megolm: three room messages through a group session decrypted.
  • The client's vodozemac crypto driver module loads.
  • With a server name as argument: .well-known discovery and /versions of its homeserver.

Run from dashboard/: ../gradlew -p spikes/matrix-sdk run --args="matrix.org" (also classpathSize, moduleDeps).

Findings, recorded in the Werkbaum description:

  • Trixnity 5.9.2 compiles with the dashboard's Kotlin 2.2.21 on Temurin 21 and pulls kotlin-stdlib 2.3.21.
  • vodozemac via JNI; the native library (Linux x86-64/aarch64) is unpacked into the temp directory, which must allow execution; needs glibc 2.34 — mih09 has 2.36.
  • Discovery and versions work against matrix.org and the user's homeserver (not named in the repository).
  • For the bundle: 49 jars, 24 MB more; jlink additionally needs java.logging, java.management, java.instrument, jdk.unsupported.
  • Next: the client's store, trixnity-client-repository-exposed on the sqlite-jdbc the dashboard already has.

Dashboard tests still green; the Werkbaum parser reports no warnings.

🤖 Generated with Claude Code

Werkbaum `#dash.matrix.sdk`: **Trixnity runs on the dashboard's JVM, with vodozemac rather than libolm.** A spike in `dashboard/spikes/matrix-sdk`, a Gradle build of its own — nothing reaches the dashboard's classpath or bundle. It signs in nowhere and sends nothing: - Olm: two accounts, pre-key message and answer decrypted. - Megolm: three room messages through a group session decrypted. - The client's vodozemac crypto driver module loads. - With a server name as argument: `.well-known` discovery and `/versions` of its homeserver. Run from `dashboard/`: `../gradlew -p spikes/matrix-sdk run --args="matrix.org"` (also `classpathSize`, `moduleDeps`). Findings, recorded in the Werkbaum description: - Trixnity 5.9.2 compiles with the dashboard's Kotlin 2.2.21 on Temurin 21 and pulls kotlin-stdlib 2.3.21. - vodozemac via JNI; the native library (Linux x86-64/aarch64) is unpacked into the temp directory, which must allow execution; needs glibc 2.34 — mih09 has 2.36. - Discovery and versions work against matrix.org and the user's homeserver (not named in the repository). - For the bundle: 49 jars, 24 MB more; jlink additionally needs `java.logging`, `java.management`, `java.instrument`, `jdk.unsupported`. - Next: the client's store, `trixnity-client-repository-exposed` on the sqlite-jdbc the dashboard already has. Dashboard tests still green; the Werkbaum parser reports no warnings. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
mi added 1 commit 2026-10-10 20:06:31 +02:00
A build of its own in dashboard/spikes/matrix-sdk, outside the dashboard's
classpath and bundle: Olm and Megolm round trips through vodozemac, the
client's crypto driver module, discovery and versions of a homeserver given
as argument. It signs in nowhere. The Werkbaum records what the dashboard
would need for it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mi merged commit 3a14978aae into main 2026-10-10 20:16:35 +02:00
mi deleted branch claude-code/matrix-sdk-spike 2026-10-10 20:16:36 +02:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mi/werkregie#5