""" 项目引导模块 — 确保 AirPlan 目录结构存在。 V2 保持与 V1 相同的不变量:制品驱动通信、上下文隔离。 """ from __future__ import annotations from pathlib import Path def ensure_project_bootstrap(project_root: Path) -> dict[str, bool]: """创建 AirPlan 必需目录结构。""" root = project_root / "AirPlan" docs = root / "docs" arch = docs / "architecture" adr_dir = arch / "adr" c4_dir = arch / "c4" debug_dir = docs / "debug" state = root / "state" dirs = [ root, docs, arch, adr_dir, c4_dir, debug_dir, state, state / "airarc" / "reviews", state / "aireng" / "dispatch", state / "aireng" / "archive", state / "aireng" / "plans", state / "airdo" / "tasks", state / "airdbg" / "sessions", state / "airdbg" / "snapshots", state / "airxdb" / "artifacts", state / "airsdb" / "reports", state / "airndb" / "captures", state / "aircontext", state / "airdep" / "sessions", state / "airtst" / "reports", state / "airsec", state / "airrvr" / "reviews", ] for d in dirs: d.mkdir(parents=True, exist_ok=True) # 创建必要文件 (root / "AGENTS.md").touch() (root / "plan.md").touch() (root / "todo.md").touch() (adr_dir / "placeholder.md").touch() (c4_dir / "module.md").touch() (debug_dir / "debug-log.md").touch() (debug_dir / "gui-debug-log.md").touch() (docs / "staticanalysis.md").touch() return {"bootstrap": True}