AgentSkillsCN

status-reality-check

为了将STATUS.md维护为“经过验证的最新快照”,在下一个最小许可提案推出之前,及时发现并修正代码实现与STATUS之间的偏差。

SKILL.md
--- frontmatter
name: status-reality-check
description: >
  STATUS.md を「検証済みの最新スナップショット」として維持するための現実照合スキル。
  次の最小 Permit 提案の前に、コード実装と STATUS の乖離を検出・修正する。
inputs:
  - repository working copy
  - docs/design/STATUS.md
  - (optional) docs/design/roadmap.md, docs/design/START_HERE.md
outputs:
  - STATUS.md の Verified Reality セクション更新(検証済み事実)
  - docs/design/DONELOG.md への追記(必要なら)
rules:
  - 次の最小 Permit を提案する前に必ず実行
  - 検証せずに STATUS を信じない(無検証の提案は禁止)
  - 乖離を見つけたら STOP → STATUS を更新してから再度 Permit を決め直す
  - cargo test は「こまめに」実行(少なくとも main 反映前/Permit消化後)

status-reality-check

目的

STATUS.md を「計画」ではなく「検証済みの最新スナップショット」にする。 これにより、実装済み機能を未実装と誤認して Permit を切る事故を防ぐ。


いつ使うか(必須)

  • 次の最小 Permit を決める前
  • triad-task-intake を書く前(または直後に)
  • 「STATUSと実装がズレてるかも」と感じたとき

実行手順(ターミナル)

0) リポジトリへ移動

bash
cd /Users/sososha/Documents/039_ag

1) 検証対象コミットを取得

bash
git rev-parse --short HEAD

→ これを STATUS.md の Verified against commit: に書く

2) 主要機能の実在チェック(rg)

ここは「実装済み/未実装」を確定するための最低限セット。 必要に応じてプロジェクト固有のキーワードを追加する。

bash
# 例: Space/Room 入力系
rg -n "SpaceRectCommand|SpacePolyCommand|Msg::AddSpace" src || true

# 例: UI(Palette)
rg -n "FloorplanPalette|floorplan_palette" src || true

# 例: Undo/Redo
rg -n "Undo|Redo|History|FloorplanHistory" src || true

# 例: Projection/Resolver
rg -n "IntersectionResolver|OpeningProjector|WallProjector" src || true

# 未実装を確定したい項目(0件なら❌未実装を確定できる)
rg -n "RemoveSpace|DeleteSpace|Msg::RemoveSpace" src || true
rg -n "MoveSpace|Msg::MoveSpace" src || true

3) 存在感の確認(wc -l)

bash
wc -l src/fsm/space_rect.rs 2>/dev/null || true
wc -l src/ui/floorplan_palette.rs 2>/dev/null || true

4) cargo test(こまめに)

bash
cargo test

判定ルール(重要)

  • rg がヒットした → 実装済み(✅)
  • rg が 0 件 → 未実装(❌)を確定できる
  • STATUS.md の記載が上と違う → 乖離STOP して STATUS.md を「Verified Reality」だけ更新してから、次 Permit を再決定する

STATUS.md に反映する形式(テンプレ)

STATUS.md は「最新スナップショット」専用。履歴は DONELOG.md に残す。

  • Verified against commit: <git-sha>
  • Verification: docs/design/STATUS_VERIFY.md

「実装済み/未実装」欄は以下の形式で更新:

  • Space/Room input: ✅(根拠: src/... + rgヒット)
  • FloorplanPalette: ✅(根拠: src/... + 行数)
  • Undo/Redo: ✅(根拠: src/... + rgヒット)
  • RemoveSpace: ❌(根拠: rg 0件)
  • MoveSpace: ❌(根拠: rg 0件)

STOP 条件

  • STATUS.md と実装の乖離が見つかった
  • 「実装済み/未実装」を確定できない(キーワード不明など)
  • 追加の設計判断が必要(例:正本の変更、責務移動)

出力(最低限)

  • STATUS.md の Verified Reality を更新
  • 必要なら DONELOG.md に「事実更新」も追記(破壊的編集を避ける)