I think the behaviour of function parseKeyPairsIntoRecord excluding entries were the value is an empty string may be a longstanding bug. The Baggage spec (https://www.w3.org/TR/baggage/#definition) defines the value to be:
which, IIUC, allows the value to be empty.
Originally posted by @trentm in #5885 (comment)
parseKeyPairsIntoRecord() from the @opentelemetry/core module is a utility from the baggage support, originally for parsing strings in the baggage header, as defined by https://www.w3.org/TR/baggage
> core.parseKeyPairsIntoRecord('foo=bar,nada=')
{ foo: 'bar' }