@mantoni thanks for this project.
In July 2024, you introduced this stop-on-idle code into eslint_d, as part of a significant "new implementation".
As you may remember, core_d is used within prettierd, with a similar philosophy to eslint_d. But you didn't retrofit the stop-on-idle stuff into core_d. and I think eslint_d now no longer depends on core_d. So the operational improvements you made to eslint_d at that time, do not also accrue to projects depending on core_d.
How difficult would it be to retrofit the stop-on-idle behavior into the core_d project? And could you do it? I can make an effort ... the setTimeout and clearTimeout is simple enough. But what am I not aware of? You are much more familiar with the eslint_d and core_d code. There is ground that you covered there that I will be unaware of, so I'd rather not pursue a journey of discovery on my own if you already know it.
Is the implementation of IDLE ... not useful without also implementing the PPID thing - the one that allows the "host" to explicitly specify the PPID of the existing process?