Description
ReadOptions.concurrencyLimit is exposed by OpenTDF.open() and OpenTDF.read(), but ZTDFReader.decrypt() ignores it and passes concurrencyLimit: 1 to decryptStreamFrom().
The underlying TDF3Client.decrypt() path still supports concurrencyLimit, so this is a wrapper forwarding bug rather than a dead SDK-wide option.
Expected behavior
Pass this.opts.concurrencyLimit to decryptStreamFrom() and add coverage showing that OpenTDF.read() honors the configured KAS concurrency limit.
Description
ReadOptions.concurrencyLimitis exposed byOpenTDF.open()andOpenTDF.read(), butZTDFReader.decrypt()ignores it and passesconcurrencyLimit: 1todecryptStreamFrom().The underlying
TDF3Client.decrypt()path still supportsconcurrencyLimit, so this is a wrapper forwarding bug rather than a dead SDK-wide option.Expected behavior
Pass
this.opts.concurrencyLimittodecryptStreamFrom()and add coverage showing thatOpenTDF.read()honors the configured KAS concurrency limit.