Skip to content

Fedify 1.10.0

Choose a tag to compare

@github-actions github-actions released this 24 Dec 11:29
· 838 commits to main since this release
1.10.0
e427771

Released on December 24, 2025.

@fedify/fedify

  • Enhanced OpenTelemetry instrumentation with span events for capturing detailed activity data. Span events now record complete activity JSON payloads and verification status, enabling richer observability and debugging capabilities without relying solely on span attributes (which only support primitive values). [#323]

    • Added activitypub.activity.received span event to the activitypub.inbox span, recording the full activity JSON, verification status (activity verified, HTTP signatures verified, Linked Data signatures verified), and actor information.
    • Added activitypub.activity.sent span event to the activitypub.send_activity span, recording the full activity JSON and target inbox URL.
    • Added activitypub.object.fetched span event to the activitypub.lookup_object span, recording the fetched object's type and complete JSON-LD representation.
  • Added OpenTelemetry spans for previously uninstrumented operations: [#323]

    • Added activitypub.fetch_document span for document loader operations, tracking URL fetching, HTTP redirects, and final document URLs.
    • Added activitypub.verify_key_ownership span for cryptographic key ownership verification, recording actor ID, key ID, verification result, and the verification method used.
  • Added optional list() method to the KvStore interface for enumerating entries by key prefix. This method takes an optional prefix parameter; when omitted or empty, it returns all entries. This enables efficient prefix scanning which is useful for implementing features like distributed trace storage, cache invalidation by prefix, and listing related entries. [#498, #500]

    • Added KvStoreListEntry interface.
    • Implemented in MemoryKvStore.
  • Added FedifySpanExporter class that persists ActivityPub activity traces to a KvStore for distributed tracing support. This enables aggregating trace data across multiple nodes in a distributed deployment, making it possible to build debug dashboards that show complete request flows across web servers and background workers. [#497, #502]

    • Added @fedify/fedify/otel module.
    • Added FedifySpanExporter class implementing OpenTelemetry's SpanExporter interface.
    • Added TraceActivityRecord interface for stored activity data, including actorId and signatureDetails fields for debug dashboard support.
    • Added SignatureVerificationDetails interface for detailed signature verification information.
    • Added TraceSummary interface for trace listing.
    • Added FedifySpanExporterOptions interface.
    • Added GetRecentTracesOptions interface.
    • Added ActivityDirection type.

@fedify/nestjs

  • Allowed Express 5 in the express peer dependency range to support NestJS 11. [#492, #493 by Cho Hasang]

@fedify/sqlite

  • Implemented list() method in SqliteKvStore. [#498, #500]

@fedify/postgres

  • Implemented list() method in PostgresKvStore. [#498, #500]

@fedify/redis

  • Implemented list() method in RedisKvStore. [#498, #500]

@fedify/denokv

  • Implemented list() method in DenoKvStore. [#498, #500]

@fedify/cfworkers

  • Implemented list() method in WorkersKvStore. [#498, #500]