Funding Request: My work - Neos 9 Stabilisation - July, August 2026

Hi dear Neosianer,

in my last funding request from early July i requested a budget for my work i had done to make Neos 9.2 more stable. By then i believed to be almost ready for the release with just a little polish left.

The polish turned out to be again of bigger scope than anticipated. Let me elaborate:

Evil issue delaying Neos 9.2 :supervillain:

During test of the Neos 9.2 beta Patrice from Kaufmann Digital noticed that the events of his client project using Neos 9.1 failed to replay. And after investigating I noticed a new race condition: It was attempted to fork a content stream where the source content stream does not exist anymore. The event sequence was always utterly broken but now with Neos 9.2 it fails to replay because of changes in the content graph.

The obvious first part was to work on an automated bullet proof migration to repair the events. We both tested the migration ./flow crupgrade:eventsconcurrentworkspacerebases together, it resolves the wrong event sequences and allows to replay the project and to upgrade now.

The second part was not expected to take so long. Neos 9.2 fixes already various race conditions. And i was fairly certain it would also prevent the case i discovered in the events.

But it was not safe. After writing a parallel test trying to simulate the case of a user publishing a workspace and logging in again which causes an automatic rebase, i was surprised to see that Neos 9.2 did not had any more guards in this place than Neos 9.1 had and i knew there would be more work to do.

I realised that this kind of race condition is a special form of two theoretical issue we discussed already - which now turned out not that theoretical after all.

The good part was i have spend most of the work the foundation needed in the last months already, see my first funding request for example.

The Results :blueberries:

With the new Neos 9.2 Beta-3 Release the events from Patrice can now be repaired via a new event migration and we also ensure that this kind of problem can no longer occur. Neos now commits all events at once in a single atomic transaction. The event store can now also lock foreign streams and Neos makes use of that. I also removed content stream closing which is obsolete with this new design and was previously unreliable.

Implementation PRs:

Requested funding :beer_mug:

Now as i was in contact with Patrice he was very glad for my work to fix his events via the new automated Neos migration. As the migration alone took 8 hours with tests we discussed if we could come to an agreement of how to compensate for my efforts. We discussed either sponsoring me directly or if they would also like to upgrade their sponsoring. Later i discovered we need to prevent the race condition still in Neos 9.2 which meant even more work for the release.

In total it took me 38 hours of work in July and August.

New Diamond sponsor :diamond_suit:

Yesterday, Patrice and Mirko told me that they - Kaufmann Digital - would like to step up their funding to Diamond.
Thank you for supporting us so much!

We discussed that i will request a funding for my work via Neos. And with them sponsoring Diamond this is absolutely possible. A Diamond sponsor allows for 24h of paid work each quarter!

I would like to apply for funding of 3.800 € - covering 38 hours

  • Yes
  • No
0 voters

The voting closes Wednesday the 9th of September 2026 12:00 CET

2 Likes