Вот как раз это проблема, я писал на cycle.js большое приложение, дело даже не в том что оно большое, там как раз часть есть где нужно делать всякие асинхронные вычисления с воркерами, параллельно, последовательно с буферами и прочее, и вот как стейт прячется внутри потоков, это приводит ко всяким непоняткам и багам, что там где происходит не видно, как они между собой согласуются и т.п., в общем стейт размазанный по потокам (сигналам) это все равно зло, как и любой неявный неконтролируемый стейт, хотя и кажется удобным в базовых случаях!