@@ -59,6 +59,43 @@ To be released.
5959[ #656 ] : https://github.com/fedify-dev/fedify/pull/656
6060
6161
62+ Version 2.1.5
63+ -------------
64+
65+ Released on April 8, 2026.
66+
67+ ### @fedify/fedify
68+
69+ - Fixed ` Context.getActorKeyPairs() ` assigning the same key ID to both
70+ the ` CryptographicKey ` (used for HTTP Signatures and Linked Data
71+ Signatures) and the ` Multikey ` (used for Object Integrity Proofs) within
72+ an ` ActorKeyPair ` . The ` Multikey ` now receives a distinct ID
73+ (` #multikey-1 ` , ` #multikey-2 ` , …) so that the actor document no longer
74+ contains two objects sharing the same ` id ` , which was invalid JSON-LD.
75+ Object Integrity Proof signatures now reference the correct ` Multikey ` ID
76+ instead of the ` CryptographicKey ` ID. [[ #663 ]]
77+
78+ - Object Integrity Proofs signing now takes place before activity fanout,
79+ so all recipients receive the same pre-signed activity. Previously, OIP
80+ signing was deferred until after fanout, meaning each fanout worker would
81+ re-sign independently with potentially different timestamps and the fanout
82+ message itself contained an unsigned activity.
83+
84+ [ #663 ] : https://github.com/fedify-dev/fedify/issues/663
85+
86+ ### @fedify/cfworkers
87+
88+ - Fixed a remaining TypeScript type mismatch for Cloudflare Workers users who
89+ pass ` wrangler types ` or ` @cloudflare/vite-plugin ` generated KV bindings to
90+ ` WorkersKvStore ` . The package now accepts a minimal structural KV binding
91+ interface for ` WorkersKvStore ` and ` WorkersMessageQueue ` 's ` orderingKv `
92+ option instead of requiring the nominal ` KVNamespace ` type imported from
93+ ` @cloudflare/workers-types ` , so generated local declarations compile
94+ without casts or ` @ts-expect-error ` . [[ #665 ]]
95+
96+ [ #665 ] : https://github.com/fedify-dev/fedify/issues/665
97+
98+
6299Version 2.1.4
63100-------------
64101
@@ -349,6 +386,39 @@ Released on March 24, 2026.
349386[ #599 ] : https://github.com/fedify-dev/fedify/pull/599
350387
351388
389+ Version 2.0.12
390+ --------------
391+
392+ Released on April 8, 2026.
393+
394+ ### @fedify/fedify
395+
396+ - Fixed ` Context.getActorKeyPairs() ` assigning the same key ID to both
397+ the ` CryptographicKey ` (used for HTTP Signatures and Linked Data
398+ Signatures) and the ` Multikey ` (used for Object Integrity Proofs) within
399+ an ` ActorKeyPair ` . The ` Multikey ` now receives a distinct ID
400+ (` #multikey-1 ` , ` #multikey-2 ` , …) so that the actor document no longer
401+ contains two objects sharing the same ` id ` , which was invalid JSON-LD.
402+ Object Integrity Proof signatures now reference the correct ` Multikey ` ID
403+ instead of the ` CryptographicKey ` ID. [[ #663 ]]
404+
405+ - Object Integrity Proofs signing now takes place before activity fanout,
406+ so all recipients receive the same pre-signed activity. Previously, OIP
407+ signing was deferred until after fanout, meaning each fanout worker would
408+ re-sign independently with potentially different timestamps and the fanout
409+ message itself contained an unsigned activity.
410+
411+ ### @fedify/cfworkers
412+
413+ - Fixed a remaining TypeScript type mismatch for Cloudflare Workers users who
414+ pass ` wrangler types ` or ` @cloudflare/vite-plugin ` generated KV bindings to
415+ ` WorkersKvStore ` . The package now accepts a minimal structural KV binding
416+ interface for ` WorkersKvStore ` and ` WorkersMessageQueue ` 's ` orderingKv `
417+ option instead of requiring the nominal ` KVNamespace ` type imported from
418+ ` @cloudflare/workers-types ` , so generated local declarations compile
419+ without casts or ` @ts-expect-error ` . [[ #665 ]]
420+
421+
352422Version 2.0.11
353423--------------
354424
@@ -1151,6 +1221,29 @@ Released on February 22, 2026.
11511221[ #351 ] : https://github.com/fedify-dev/fedify/issues/351
11521222
11531223
1224+ Version 1.10.8
1225+ --------------
1226+
1227+ Released on April 8, 2026.
1228+
1229+ ### @fedify/fedify
1230+
1231+ - Fixed ` Context.getActorKeyPairs() ` assigning the same key ID to both
1232+ the ` CryptographicKey ` (used for HTTP Signatures and Linked Data
1233+ Signatures) and the ` Multikey ` (used for Object Integrity Proofs) within
1234+ an ` ActorKeyPair ` . The ` Multikey ` now receives a distinct ID
1235+ (` #multikey-1 ` , ` #multikey-2 ` , …) so that the actor document no longer
1236+ contains two objects sharing the same ` id ` , which was invalid JSON-LD.
1237+ Object Integrity Proof signatures now reference the correct ` Multikey ` ID
1238+ instead of the ` CryptographicKey ` ID. [[ #663 ]]
1239+
1240+ - Object Integrity Proofs signing now takes place before activity fanout,
1241+ so all recipients receive the same pre-signed activity. Previously, OIP
1242+ signing was deferred until after fanout, meaning each fanout worker would
1243+ re-sign independently with potentially different timestamps and the fanout
1244+ message itself contained an unsigned activity.
1245+
1246+
11541247Version 1.10.7
11551248--------------
11561249
@@ -1351,6 +1444,29 @@ Released on December 24, 2025.
13511444 - Implemented ` list() ` method in ` WorkersKvStore ` . [[ #498 ] , [ #500 ]]
13521445
13531446
1447+ Version 1.9.9
1448+ -------------
1449+
1450+ Released on April 8, 2026.
1451+
1452+ ### @fedify/fedify
1453+
1454+ - Fixed ` Context.getActorKeyPairs() ` assigning the same key ID to both
1455+ the ` CryptographicKey ` (used for HTTP Signatures and Linked Data
1456+ Signatures) and the ` Multikey ` (used for Object Integrity Proofs) within
1457+ an ` ActorKeyPair ` . The ` Multikey ` now receives a distinct ID
1458+ (` #multikey-1 ` , ` #multikey-2 ` , …) so that the actor document no longer
1459+ contains two objects sharing the same ` id ` , which was invalid JSON-LD.
1460+ Object Integrity Proof signatures now reference the correct ` Multikey ` ID
1461+ instead of the ` CryptographicKey ` ID. [[ #663 ]]
1462+
1463+ - Object Integrity Proofs signing now takes place before activity fanout,
1464+ so all recipients receive the same pre-signed activity. Previously, OIP
1465+ signing was deferred until after fanout, meaning each fanout worker would
1466+ re-sign independently with potentially different timestamps and the fanout
1467+ message itself contained an unsigned activity.
1468+
1469+
13541470Version 1.9.8
13551471-------------
13561472
0 commit comments