i've got a task set for myself currently, to implement a HTTP SSE based subscription system, and it's different in how it works to my previous implementation. the previous implementation created one SSE connection for every filter, and i need to make one now that has one SSE connection and an identifier of this channel is sent as the first message and the client then uses this with a subscribe method that uses this identifier to specify which channel the events should be directed to.
it's a lot different and i really need to totally rewrite the publisher implementation to fit the task, just copypasta of the old version is not going to work because i can't make sense of how this changes how the publisher should work.
the main reason i have to do it is because of old limitations on HTTP/1 that only allow max 6 such connections to a domain within the entire web browser, which is not going to work reliably and is a difficult gotcha for client developers.
there seems to be some bug somewhere in the tag decoding somewhere, it looks like there is a concurrent overwriting of buffers that are picked apart to become the event's tag arrays. i probably should just shelve this current set of changes, which i have failed to do anything with since i started working on them ... i think the day before yesterday... and do some bug hunting. i think i need to specifically catch race conditions, to find where the bug is happening.
