Files
hakorune/tools/hako_check/tests/README.md
nyash-codex 86489ffe43 Phase 21.3 WIP: Hako Source Checker improvements
## 🎯 Checker/Analyzer拡張

###  実装追加
- テストフレームワーク追加(tools/hako_check/tests/)
- ルール改善(HC003グローバルassign、HC040静的箱トップレベルassign)
- テストランナー(run_tests.sh)

### 🔧 Rust側修正
- AST utilities拡張(src/ast/utils.rs)
- MIR lowerers新設(src/mir/lowerers/)
- Parser制御フロー改善(src/parser/statements/control_flow.rs)
- Tokenizer識別子処理改善(src/tokenizer/lex_ident.rs)

### 📁 主要変更
- tools/hako_check/cli.hako - CLI改善
- tools/hako_check/hako_source_checker.hako - Checker core更新
- tools/hako_check/tests/ - NEW (テストケース追加)
- tools/hako_check/run_tests.sh - NEW (テストランナー)
- src/mir/lowerers/ - NEW (MIR lowering utilities)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 21:04:01 +09:00

583 B
Raw Blame History

Hako Check — Rule Tests (MVP)

構成1 ルール = 1 ディレクトリ)

  • tools/hako_check/tests/<rule_name>/
    • ok.hako … 検出なし
    • ng.hako … 最低 1 件の検出
    • edge.hako … 端境(任意)
    • expected.json … --format json-lsp の期待ダイアグノスティクス

実行MVP

  • bash tools/hako_check/run_tests.sh で全テストを走査
  • 差分があれば終了コード 1、詳細を提示

注意

  • 21.4 は AST JSON 優先。Text fallback の差異は expected に反映
  • ルール名は HCxxx を推奨(例: HC002