The resident gRPC daemon is an optimisation, not a requirement:
draw-things-cli works fine cold (it just reloads 6GB of weights per call)
and index.ts's waitForServer() warms it on the first generation anyway.
A doctor that lists the engine under 'Qualcosa non va' makes a working
install look broken every morning and pushes the user to chase a non-issue.
All four reachable branches of checkServer — disabled, binaryMissing,
notExecutable, stopped — now return level: 'info'. The fix hint stays in
the report so the user can still copy the manual start command when they
want to.
'npm run test:e2e' was failing before it even started:
the four tests import { createJiti } from 'jiti' but jiti was never
declared in package.json, so Node threw ERR_MODULE_NOT_FOUND on the
first import. Adding it to devDependencies fixes the loader.
The same tests hard-coded the original developer's path
('/home/moze/Sorgenti/pi-imgen'), so even with jiti installed they
would have failed on any other checkout. Replacing it with
dirname(dirname(dirname(fileURLToPath(import.meta.url)))) lets the
suite run from wherever the repo is cloned.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
'npm run test:e2e' was failing before it even started: the four tests import { createJiti } from 'jiti' but jiti was never declared in package.json, so Node threw ERR_MODULE_NOT_FOUND on the first import. Adding it to devDependencies fixes the loader. The same tests hard-coded the original developer's path ('/home/moze/Sorgenti/pi-imgen'), so even with jiti installed they would have failed on any other checkout. Replacing it with dirname(dirname(dirname(fileURLToPath(import.meta.url)))) lets the suite run from wherever the repo is cloned.