v0.22.1
Changed
-
createWasSyncPortreturns the client's port as is. The runtimeputMeta
probe and the feed-page cast are gone, since@interop/was-client0.54.0
types the port as what it implements (putMetarequired,Jsonbodies), so a
divergence at the seam is now a compile error. -
setLoggeralso installs the logger into@interop/was-sync, so the
replication driver's diagnostics (the controller core, conflict handling, push
and pull) arrive under the app's namespace. The driver's per-calllogoption
is gone with@interop/was-sync's adoption of the logging port. -
The descriptor seam imports (
EncryptionDescriptorCache,
EncryptionDescriptorSource,DescriptorRefreshPolicy,
createRefreshingEdvDocCipher) come from@interop/was-client/edv, their
owner since@interop/wallet-core0.69.0 stopped re-exporting them from
./descriptors. -
WasRemoteStore.declareCollectionIndexesreads the public collection's
description first and skips the PUT when the storedplaintext.indexes
already matches the configured list, like the encryption-descriptor and
blinded-index declarations, so a returning session writes nothing. A read that
fails still leads to the PUT. -
The collection-description PUT body is typed as the client's
CollectionDescriptionrather than an untyped record, so a drift from the
shape the server reads is a compile error.
Fixed
-
A public collection's equality indexes are declared under the collection
description'splaintextmember (plaintext: { indexes }), the shape
was-teaching-server0.26.0 reads (after@interop/storage-core0.10.0). A
top-levelindexesis no longer read by the server, so the bootstrap's
declaration was being accepted and dropped, and equality queries on a public
collection failed with a 400. -
test/node/conditionalWrites.test.tsfollows the opaqueETagcontract: the
assumed rows carry the ackedetag/metaEtag, which the push handler
echoes asIf-Match, instead of rebuilding a validator fromversion. The
dev server moves towas-teaching-server0.29.0, whoseETagcarries the
generation prefixparseEtagreads the revision from.