Take a lease on the json file before you attempt the write and queue writes that way
What does the worker that tries to commit do when the json manifest is locked? Wait and try again?