agent: lumotia-rebrand — fix QC blockers for phase 2
Phase 2 QC found three explicit blockers + a broader sweep needed:
Explicit (QC-named):
- crates/mcp/src/lib.rs:15 — SERVER_NAME public MCP wire identity
- crates/transcription/build.rs:59 — panic message prefix
- crates/llm/tests/content_tags_smoke.rs:7 — docstring -p flag
Swept (string literals + dev env vars + doc comments + test fixtures):
- crates/mcp/src/main.rs — eprintln log prefixes
- src-tauri/src/commands/diagnostics.rs — diagnostic filename + MAGNOTIA_VERSION
- src-tauri/src/commands/audio.rs — recording filename pattern lumotia-<secs>-...wav
- src-tauri/src/commands/fs.rs — test placeholder path
- crates/transcription/src/model_manager.rs — .lumotia-verified marker
- crates/storage/src/database.rs — lumotia-storage-ro-<pid> temp dirs + doc comments
- crates/cloud-providers/src/keystore.rs — LUMOTIA_API_KEY_<PROVIDER> env var
- crates/audio/src/{wav,decode}.rs — lumotia_test_* / lumotia_decode_* test fixtures
- crates/core/src/tuning.rs — LUMOTIA_INFERENCE_THREADS env var
- All MAGNOTIA_LLM_TEST_MODEL / MAGNOTIA_WHISPER_TEST_* env vars
- Doc comments referencing crate names
Excluded (intentional Phase 4/5 scope):
- magnotia_preferences, magnotia_history, magnotia_morning_triage_last_shown
DB setting keys (Phase 5 paths.rs migration)
- magnotia_startup tracing target (Phase 4)
- crates/core/src/paths.rs (Phase 5 wholesale rewrite + migration shim)
cargo build --workspace passes. cargo test --workspace: 330 pass, 0 fail.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
//! Stdio entry point for magnotia-mcp. Reads newline-delimited JSON-RPC messages
|
||||
//! Stdio entry point for lumotia-mcp. Reads newline-delimited JSON-RPC messages
|
||||
//! from stdin, dispatches via `lumotia_mcp::handle_message`, writes responses to
|
||||
//! stdout. Logs land on stderr so they don't collide with the JSON-RPC stream.
|
||||
|
||||
@@ -8,7 +8,7 @@ use tokio::io::{AsyncBufReadExt, AsyncWriteExt, BufReader};
|
||||
async fn main() -> anyhow::Result<()> {
|
||||
let db_path = lumotia_storage::database_path();
|
||||
eprintln!(
|
||||
"[magnotia-mcp] opening Magnotia database at {} (read-only)",
|
||||
"[lumotia-mcp] opening Lumotia database at {} (read-only)",
|
||||
db_path.display()
|
||||
);
|
||||
// Open read-only at the connection level so the MCP server cannot write
|
||||
@@ -16,7 +16,7 @@ async fn main() -> anyhow::Result<()> {
|
||||
// exposes. Migrations are deliberately skipped — this binary never owns
|
||||
// the schema; the main app is the single migration writer.
|
||||
let pool = lumotia_storage::init_readonly(&db_path).await?;
|
||||
eprintln!("[magnotia-mcp] ready, waiting for JSON-RPC on stdin");
|
||||
eprintln!("[lumotia-mcp] ready, waiting for JSON-RPC on stdin");
|
||||
|
||||
let mut lines = BufReader::new(tokio::io::stdin()).lines();
|
||||
let mut stdout = tokio::io::stdout();
|
||||
@@ -38,7 +38,7 @@ async fn main() -> anyhow::Result<()> {
|
||||
// logged and continued, dropping the response —
|
||||
// clients saw silence instead of a structured error
|
||||
// (2026-04-22 review MAJOR).
|
||||
eprintln!("[magnotia-mcp] parse error: {err}");
|
||||
eprintln!("[lumotia-mcp] parse error: {err}");
|
||||
lumotia_mcp::parse_error_response(&err.to_string())
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user