🚑 docs + cleanup: ARCHITECTURE.md kebab-mcp + state.rs stale comment + schema test cap-flag (fb-30)

Final review fixes:

- docs/ARCHITECTURE.md: add kebab-mcp to UI subgraph + directory tree
  (CLAUDE.md "add new crate" rule required this; missed in Task 12 doc sync).
- state.rs: replace forward-reference Task 10 comment with current-state
  doc (config_path now wired by Task 10 commit 4a30959).
- tools_call_schema.rs: assert capabilities.mcp_server == true (already
  pinned in schema_report + cli_schema, this closes the gap in mcp's own
  test).

Version bump 0.3.0 → 0.4.0 deferred to separate `chore/bump-v0.4.0` PR
mirroring fb-27 precedent (commit 73f5d73 / PR #105).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
th-kim0823
2026-05-07 16:34:46 +09:00
parent ee4f198308
commit 2387c6cd11
3 changed files with 10 additions and 5 deletions

View File

@@ -11,11 +11,8 @@ use kebab_config::Config;
#[derive(Clone)]
pub struct KebabAppState {
pub config: Arc<Config>,
/// Original config file path passed via `--config <path>`, if any.
/// Forwarded to `kebab_app::doctor_with_config_path` so the doctor
/// report reflects the same config file the server was started with.
/// Plan Task 10 (Cmd::Mcp wiring) will pass the actual path; all
/// existing callers pass `None` which falls back to the XDG default.
/// `--config <path>` from CLI when present, else `None` (XDG default
/// fallback applies in `doctor_with_config_path`).
pub config_path: Option<PathBuf>,
}

View File

@@ -67,4 +67,9 @@ async fn schema_tool_returns_schema_v1_json() {
Some("schema.v1"),
"unexpected schema_version in: {v}"
);
assert_eq!(
v.get("capabilities").and_then(|c| c.get("mcp_server")).and_then(|b| b.as_bool()),
Some(true),
"mcp_server capability flag should be true after fb-30",
);
}

View File

@@ -40,6 +40,7 @@ flowchart TB
subgraph UI ["UI binary"]
cli["kebab-cli"]
tui["kebab-tui"]
mcp["kebab-mcp<br/>(P9-FB-30)"]
desktop["kebab-desktop<br/>(P9-5)"]
end
app["kebab-app<br/>(facade)"]
@@ -71,6 +72,7 @@ flowchart TB
cli --> app
tui --> app
mcp --> app
desktop --> app
app --> srcfs
@@ -168,6 +170,7 @@ kebab/
│ ├── kebab-parse-pdf/ # lopdf per-page text extractor (P7-1)
│ ├── kebab-app/ # facade (P0 시그니처 + P3-5/P6-4/P7-3 본체)
│ ├── kebab-tui/ # Ratatui shell + Library 패널 (P9-1)
│ ├── kebab-mcp/ # stdio MCP server — tools: search, ask, doctor (P9-FB-30)
│ └── kebab-cli/ # binary (P0 → 핫픽스로 --config flag wiring 강화)
├── migrations/ # SQLite refinery V001/V002/V003
└── fixtures/ # 테스트 fixture 트리