Skip to content

Releases: marmot-protocol/darkmatter

v0.2.0

Choose a tag to compare

@erskingardner erskingardner released this 21 Jun 23:53
5764645

What's Changed

  • feat: delete audit-log files and hot-swap recorder on audit toggle by @erskingardner in #279
  • feat: group system messages (kind 1210) synthesized from authenticated state by @erskingardner in #276
  • fix(broker): stop the 15s per-record read deadline killing idle live previews (#216) by @agent-p1p in #277
  • fix: reconcile pending agent invites by @agent-p1p in #281
  • fix(agent-stream-compose): bound live broker writes by @agent-p1p in #284
  • fix(agent-control): bound read_frame allocation pre-auth (closes #212) by @agent-p1p in #280
  • Broadcast timeline updates for local group system rows by @erskingardner in #289
  • fix(agent-connector): TTL sweep for abandoned stream compose sessions (#214) by @agent-p1p in #278
  • fix(agent-connector): stop stale inbound subscriptions by @agent-p1p in #288
  • fix: stamp published profile created_at so local edits survive directory refresh (#206) by @agent-p1p in #287
  • fix(agent-connector): surface inbound broadcast lag instead of silently dropping agent messages (#210) by @agent-p1p in #283
  • fix(markdown): avoid quadratic emphasis pairing by @agent-p1p in #293
  • fix(marmot-markdown): cap inline emphasis nesting depth (#208) by @agent-p1p in #285
  • fix(uniffi): surface duplicate identity errors by @agent-p1p in #294
  • fix(agent-connector): filter inbound app events by @agent-p1p in #291
  • fix(transport-quic-broker): finalize publisher-error rooms by @agent-p1p in #292
  • fix(agent-stream-compose): emit Abort record when stream previews are cancelled by @agent-p1p in #290
  • spec: pin cross-surface conventions (Phase 1 of spec-consistency campaign) by @erskingardner in #298
  • fix(cli): clear stale send targets when logging in a public-only account by @agent-p1p in #295
  • spec: inbox relays, NIP-40 expiry, KeyPackage tags, payload JSON rules, routing rotation by @erskingardner in #302
  • spec: pin v1 convergence policy as protocol constants; define branch epochs, payload window, publish success by @erskingardner in #300
  • spec: define active admin, fix SelfRemove rule, require ratchet tree in Welcomes by @erskingardner in #301
  • spec: pin media key derivation, blossom image scheme, policy-driven locators, avatar normalization by @erskingardner in #304
  • spec: pin agent-stream crypto inputs, frame bounds, replay semantics, binary broker control by @erskingardner in #303
  • spec: define push token gossip shapes and encryption bytes; mark multi-device placeholders by @erskingardner in #305
  • [codex] publish dm-agent versioned releases by @erskingardner in #309
  • fix(marmot-app): clamp transport cursor to wall-clock (created_at cursor poisoning) (#182) by @agent-p1p in #297
  • fix(marmot-app): route set_group_archived through the account worker (#178) by @agent-p1p in #308
  • spec: active-admin terminology sweep; URL normalization = WHATWG parse+serialize by @erskingardner in #316
  • spec: name the Welcome-bootstrap trust model; pin the fork self-promotion boundary by @erskingardner in #317
  • fix(conformance): correct oracle coverage matrix property-test name (#165) by @erskingardner in #318
  • fix(traits): strict app-component decode, endpoint byte layout, IPv6 docs range, WHATWG endpoint URLs by @erskingardner in #319
  • fix(cgka): authenticate convergence tiebreaks by @agent-p1p in #310
  • fix(agent-stream): binary broker control, varint transcript, replay high-water, 65519 cap, ALPN by @erskingardner in #320
  • fix(cgka-engine): recover stranded pending commit on session reopen (#150) by @agent-p1p in #311
  • fix(engine): content-derived dedup/replay id (#238); enforce agent-stream required_member_roles (#177) by @erskingardner in #322
  • fix(storage-sqlite): make delete_group_labels atomic (#148) by @agent-p1p in #312
  • fix(cli): refresh replaceable lists before mutation by @agent-p1p in #313
  • fix: harden encrypted media blob fetches by @agent-p1p in #324
  • test(cgka-session): fix flaky convergence queue test under nextest shard by @agent-p1p in #325
  • Expose edit_message through the uniffi runtime surface by @mubarakcoded in #299
  • Deliver group system rows live for own avatar updates and synthesize them on the convergence path by @mubarakcoded in #334
  • fix(cgka-engine): keep future-epoch app messages retryable in stored convergence by @agent-p1p in #314
  • spec: register agent-stream role capability extension ids (#323) by @erskingardner in #330
  • fix: reject IPv6 transition media locators by @agent-p1p in #337
  • fix(cgka): validate identity proofs on member updates by @agent-p1p in #336
  • fix(cgka-engine): route retained past commits to convergence by @agent-p1p in #333
  • fix(cgka-engine): clear staged commits on send failures by @agent-p1p in #331
  • fix(marmot-app): preserve cached relay lists on empty fetch by @agent-p1p in #326
  • fix(cgka-engine): align future-epoch-retryable test with content-derived dedup id by @erskingardner in #339
  • fix(cgka-engine): format the future-epoch-retryable assert (master fmt-check is red) by @erskingardner in #342
  • fix(app): quic candidate parsing, ASCII media trim, policy locators, loopback gate, push 10050 fallback by @erskingardner in #328
  • fix(cgka-engine): release pre-commit fork-recovery snapshot in cleanup guard by @agent-p1p in #335
  • fix(app): make allow_loopback_blob_endpoints authoritative for blob loopback (drop cfg switch) by @erskingardner in #349
  • fix(agent-stream): enforce QUIC stream policy caps by @agent-p1p in #344
  • fix(storage): recover dangling proposal queue refs by @agent-p1p in #347
  • fix(cli): catch streaming-mode key errors into the TUI status line (#194) by @agent-p1p in #348
  • fix(cli): pin TUI stream composer preview to its open-time group (#198) by @agent-p1p in #346
  • fix(cli): allow leading '?' in TUI composer (#200) by @agent-p1p in #345
  • fix(cli): repair master build — missing group_id in StreamComposer test constructors by @erskingardner in #389
  • fix(cli): validate dm messages list pagination cursor flags (#186) by @agent-p1p in #388
  • fix(marmot-app): re-surface re-invites in pending-invite projection (#184) by @agent-p1p in #392
  • fix: expose own MLS leaf index by @agent-p1p in #340
  • fix(marmot-app): invalidate losing-branch group system rows on fork recovery (#286) by @agent-p1p in #343
  • Phase-4 spec re-review: spec coherency fixes + code follow-throughs by @erskingardner in #399
  • fix(cgka-conformance): use latest client observations by @agent-p1p in #397
  • fix: bound message subscription dedup state by @agent-p1p in #396
  • fix(daemon): keep dmd alive on bad client connections (#190) by @agent-p1p in https://github.com/marmot-pro...
Read more

MarmotKit 0.2.0

Choose a tag to compare

@github-actions github-actions released this 22 Jun 01:18
5764645

MarmotKit bindings generated from Darkmatter commit 57646454a63a10ad7819895318c810f27741a13f.

Assets:

  • marmotkit-ios-0.2.0.zip: MarmotKit.xcframework and generated Swift bindings.
  • marmotkit-android-0.2.0.zip: generated Kotlin bindings and Android JNI libraries.

Verify downloads with the accompanying .sha256 files.

DM Agent 0.2.0

DM Agent 0.2.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Jun 23:55
2ca0cd7

DM Agent 0.2.0 from Darkmatter commit 2ca0cd798e97c34c001768e9322c3537aed07914.

Install with:

curl -fsSL https://github.com/marmot-protocol/darkmatter/releases/download/dm-agent-v0.2.0/install-hermes-marmot.sh | bash

Assets:

  • dm-agent-<platform>-0.2.0.tar.gz: versioned binary bundle.
  • hermes-marmot-plugin-0.2.0.tar.gz: Hermes platform plugin directory bundle.
  • openclaw-marmot-plugin-0.2.0.tgz: OpenClaw channel plugin npm tarball.
  • install-hermes-marmot.sh: installer for testers with Hermes already installed.
  • install-openclaw-marmot.sh: installer for testers with OpenClaw already installed.

Verify downloads with the accompanying .sha256 files.

dm-agent beta

dm-agent beta Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Jun 12:50
e618e55

Rolling beta build of dm-agent and the Hermes Marmot plugin from commit f1b393e29eb6303d001575e1f9f57e6c21592615.

Install with:

curl -fsSL https://github.com/marmot-protocol/darkmatter/releases/download/dm-agent-beta/install-hermes-marmot.sh | bash

Pin a specific build:

curl -fsSL https://github.com/marmot-protocol/darkmatter/releases/download/dm-agent-beta/install-hermes-marmot.sh | DM_AGENT_SHA=f1b393e29eb6 bash

Assets:

  • dm-agent-<platform>-latest.tar.gz: convenience binary bundle for the latest master build.
  • dm-agent-<platform>-<sha>.tar.gz: pin-able binary bundle for one commit.
  • hermes-marmot-plugin-latest.tar.gz: Hermes platform plugin directory bundle.
  • install-hermes-marmot.sh: installer for beta testers with Hermes already installed.

Verify downloads with the accompanying .sha256 files.

darkmatter v0.1.0

Choose a tag to compare

@erskingardner erskingardner released this 17 May 08:46
f097e50

Initial dm release.

Includes:

  • dm CLI for account, contact, inbox, key package, relay, membership, sync, and JSON workflows.
  • dmd daemon for local command serving and relay sync.
  • dm tui terminal interface over the daemon/CLI command surface.
  • Homebrew tap formula in marmot-protocol/homebrew-tap.

Install with Homebrew:

brew install marmot-protocol/tap/darkmatter

While the source repo is private, Homebrew source builds require GitHub access to marmot-protocol/darkmatter.