v0.3.5 — MINOR sweep: metrics lock, rules cache, env migration, hook match, multi-word mask
MINOR sweep (gpt-5.4 review #51, #52, #53, #54, #55)
Added
- rules cache (#55):
server._load_rules_cachedが(path, mtime_ns)キーで yaml 再読込を省略。finalize ホットパスの I/O を削減 JA_OUTPUT_HARNESS_USER_CONFIG環境変数 (#52): 新名称を優先、旧CODEX_JP_HARNESS_USER_CONFIGは後方互換で一時保留。相対パスは.resolve()で絶対化
Fixed
- metrics rotation の排他 (#51):
record全体をO_CREAT|O_EXCLlock で保護(1 秒 best-effort、取得失敗時は fallback) - discover が multi-word term を tokenize で割る (#53): phrase を事前マスクしてから走査
- Stop hook の
"finalize"粗い部分文字列判定 (#54):mcp__jp_lint__finalizeまたは"name":"finalize"の完全一致に変更
Notes
- pytest 170 件 全通過、ruff clean、6/6 CI pass