7.40.4, Windows: Doctor flags every hook as not executable (chmod +x), testing POSIX exec bits that NTFS never sets (Doctor.ts:632)
メンテナーはふだん 8 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 1/5
- 見積もり時間
- 1時間未満
- 初心者へのやさしさ
- 84/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- bun, typescript
- 領域
- tooling
調査の方向性
LIFEOS/TOOLS/Doctor.ts:632 の実行ビットチェックと、#1992 の PATH 区切り文字の修正を読み、Windows 固有のスキップにおける確立されたパターンを把握する。process.platform === 'win32' で分岐するか、インタプリタ行をテストするかを決めた上で、bun LIFEOS/TOOLS/Doctor.ts を(可能であれば Windows 上で)実行し、フックが not executable (chmod +x) の報告をやめること、そして POSIX における実際の実行不能の問題が引き続き表面することを確認する。
索引モデルが issue の本文から書いたものです。
説明
Version
LifeOS 7.40.4 on Windows 11 (Git for Windows shell, bun).
What is broken
Doctor.ts checks each hook file's stat.mode & 0o111 and reports not executable (chmod +x) when the bits are clear. On Windows, Node's fs.stat reports no exec bits for ordinary files, so every hook shows red although the hooks fire normally: settings.json invokes them through bun, which never consults the mode. #1992 covered the PATH-separator half of Doctor's Windows false reds; this check is the other half and still fires.
Where (file:line)
LIFEOS/TOOLS/Doctor.ts:632: if (!(mode & 0o111)) { problems.push(\${name}: not executable (chmod +x)`); continue; }`
Repro on a clean tree
- Fresh 7.40.4 install on Windows.
bun LIFEOS/TOOLS/Doctor.tslists every hook asnot executable (chmod +x).- Start a session: the hooks fire (hook-injected context such as the Algorithm nudge and the drift reminder appears in the turn).
Negative control
bun hooks/<any>.hook.ts runs the file directly with exit 0 regardless of its mode, and the same hooks have been firing on this install since 2026-10-01 while Doctor reported them non-executable every run. The check is informative only where the file is launched as an executable, which the shipped settings.json never does.
Suggested fix
Skip the mode check when process.platform === 'win32' (the bit carries no information there), or test the interpreter line instead of the mode. Untested.
Before submitting
- I searched open and closed issues for this defect.
- The repro runs against a clean tree of the version above, not against my modified install.
- I removed personal data from the pasted output — real names, absolute home paths, tokens, my own content.
- 主要言語
- TypeScript
- スター
- 19.4k
- フォーク
- 2.5k
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
danielmiessler/LifeOS のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
danielmiessler/LifeOS#2316 ·
メンテナーはふだん 8 日以内に返信
-
MergeSettings: an append annotation inside an overlay-only object is emitted raw into settings.jsonオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
danielmiessler/LifeOS#2307 ·
メンテナーはふだん 8 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
danielmiessler/LifeOS#2305 ·
メンテナーはふだん 8 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
danielmiessler/LifeOS#2299 ·
メンテナーはふだん 8 日以内に返信
-
Upgrade: Anthropic.ts report exists only on stdout while state is saved, and --help runs a full scanオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
danielmiessler/LifeOS#2290 ·
メンテナーはふだん 8 日以内に返信
danielmiessler/LifeOS の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
anomalyco/opencode#56380 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
BUG | `MCP 服务器` | 全局层行的停用/启用与删除报 404 server row not found,编辑保存会在 profile 层复制出重复行対応中かも @w6242652 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
Chocobozzz/PeerTube#7832 ·
メンテナーはふだん 3 日以内に返信
-
Pay to use?オープン
難易度 1/5 1時間未満 初心者へのやさしさ 66/100
darkreader/darkreader#16108 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信