## 前提
```console
$ pretteird --version
pretteird 0.25.2
```
## 再現手順
```console
$ mkdir -p ~/git/github.com/tadashi-aikawa/silhouette
$ cd $_
$ echo 'console.log("hoge")' > index.ts
$ cat index.ts | prettierd index.ts
Error: Cannot find module './parser-typescript.js'
Require stack:
- /home/tadashi-aikawa/git/github.com/tadashi-aikawa/silhouette/node_modules/prettier/index.js
- /home/tadashi-aikawa/.local/share/mise/installs/node/20.11.0/lib/node_modules/@fsouza/prettierd/dist/service.js
- /home/tadashi-aikawa/.local/share/mise/installs/node/20.11.0/lib/node_modules/@fsouza/prettierd/node_modules/core_d/lib/server.js
- /home/tadashi-aikawa/.local/share/mise/installs/node/20.11.0/lib/node_modules/@fsouza/prettierd/node_modules/core_d/lib/daemon.js
```
- 別のディレクトリで実行したときは動作する
- `npm -i D`でローカルにインストールし、`npx prettierd`をつかっても同じ
## 存在しないnode_modules
[[スタックトレース]]に表示される以下のパスはそもそも存在しない。`node_modules`がないから。
```
/home/tadashi-aikawa/git/github.com/tadashi-aikawa/silhouette/node_modules/prettier/index.js
```
だが `npm i -D prettier`でインストールしても、状況は変わらない。
```console
$ ll /home/tadashi-aikawa/git/github.com/tadashi-aikawa/silhouette/node_modules/prettier | grep index
.rw-r--r-- 36k 23 Feb 12:57 index.cjs
.rw-r--r-- 27k 23 Feb 12:57 index.d.ts
.rw-r--r-- 802k 23 Feb 12:57 index.mjs
```
インストールしても`index.js`というパスは存在しない。`package.json`の先頭は以下。
```json
{
"name": "prettier",
"bin": "./bin/prettier.cjs",
"main": "./index.cjs",
"browser": "./standalone.js",
"unpkg": "./standalone.js",
"exports": {
```
## キャッシュクリアしてみる
```console
npm cache clean --force
```
変わらず。
## コマンドを少し変えてみる
```console
cat index.ts | prettierd ../index.ts
```
にしたらなぜか動いた。`../index.ts`は存在しない。
## prettierdプロセスがゾンビになっていた
```console
$ ps -ef | grep prettier
tadashi+ 1842 555 0 Feb22 ? 00:00:11 prettierd
tadashi+ 30654 24888 0 Feb22 ? 00:00:05 prettierd
tadashi+ 75532 68015 0 Feb22 ? 00:00:00 prettierd
tadashi+ 75760 68015 0 Feb22 ? 00:00:00 prettierd
tadashi+ 76045 68015 0 Feb22 ? 00:00:00 prettierd
tadashi+ 76267 68015 0 Feb22 ? 00:00:00 prettierd
tadashi+ 76565 68015 0 Feb22 ? 00:00:00 prettierd
tadashi+ 87184 61499 0 05:04 ? 00:00:00 prettierd
tadashi+ 101669 89768 0 12:29 ? 00:00:00 prettierd
tadashi+ 106068 89768 0 12:36 ? 00:00:00 prettierd
tadashi+ 107439 89768 0 12:39 ? 00:00:00 prettierd
tadashi+ 110267 89768 0 12:51 ? 00:00:00 prettierd
tadashi+ 114898 89768 0 13:12 ? 00:00:00 prettierd
tadashi+ 120304 89770 0 13:25 pts/0 00:00:00 grep prettier
```
恐らく、これらのプロセスが該当パスを掴んでいたと思われる。プロセスをkillしたら期待通り動いた。
```console
$ pkill prettierd
$ cat index.ts | prettierd index.ts
console.log("hoge");
```