Streaming API inconsistency in data delivered and published data specs

I have been subscribing to the streaming API and have encountered a few errors relating to inconsistency with the data on the wire with the specs on the developer site.

  1. Charges feed - the classification object is defined as an object array in the specification (link below) however it is delivered as an array (but a single object). Here’s a sample:

{“resource_kind”:“company-charges”,“resource_uri”:"/company/07037147/charges/PigV9uH5tjSaI7PD0eG1G5tBN2Y",“resource_id”:“PigV9uH5tjSaI7PD0eG1G5tBN2Y”,“data”:{“charge_number”:1,“classification”:{“description”:“Debenture”,“type”:“charge-description”},“created_on”:“2011-01-25”,“delivered_on”:“2011-01-27”,“etag”:“9c86c183a898e4a62cc181d9edc7af123e6cc010”,“links”:{“self”:"/company/07037147/charges/PigV9uH5tjSaI7PD0eG1G5tBN2Y"},“particulars”:{“description”:“Fixed and floating charge over the undertaking and all property and assets present and future, including goodwill, book debts, uncalled capital, buildings, fixtures, fixed plant \u0026 machinery.”,“type”:“short-particulars”},“persons_entitled”:[{“name”:“Lloyds Tsb Bank PLC”}],“satisfied_on”:“2021-05-02”,“secured_details”:{“description”:“All monies due or to become due from the company to the chargee on any account whatsoever”,“type”:“amount-secured”},“status”:“fully-satisfied”,“transactions”:[{“delivered_on”:“2011-01-27”,“filing_type”:“create-charge-pre-april-2013”,“links”:{“filing”:"/company/07037147/filing-history/MzAzMTIxMjE1OWFkaXF6a2N4"}},{“delivered_on”:“2021-05-02”,“filing_type”:“charge-satisfaction”,“links”:{“filing”:"/company/07037147/filing-history/MzI5OTc1Njk1MGFkaXF6a2N4"}}]},“event”:{“timepoint”:788452,“published_at”:“2021-05-02T09:48:01”,“type”:“changed”}}

Streaming API: chargesStream (company-information.service.gov.uk)

  1. Filling History
    Again, the data on the wire does not seem to be consistent with the specification in the developer spec for an item. I get the following error:
    The JSON value could not be converted to System.String. Path: $.data.resolutions[0].subcategory
    which implies that subcategory is not a string (I have it defined as such) whereas the specification (link below) clearly defines it as a string.

Streaming API: filingHistoryStream (company-information.service.gov.uk)

PS: I did not capture a sample payload for this but if it happens again I’ll add it here.

Additionally, the data on the charges feed is delivered in duplicate with the only difference being the event timepoint. As per sample data above, duplicate data timepoints are: 788451 and 788452