lakehouse/auditor 1 blocking issue: todo!() macro call in tests/real-world/scrum_master_pipeline.ts
- ingestd/src/service.rs: top-of-file `#[allow(unused_imports)]`
was masking genuinely unused `delete` and `patch` routing
constructors in an axum import block. Removed the attribute,
trimmed the imports to only `get` and `post` (what's actually
used). Any future over-import now trips the unused_imports
lint immediately instead of being silently allowed.
- gateway/src/v1/truth.rs: `truth_router()` was a 4-line stub
wrapping a single `/context` route — carried `#[allow(dead_code)]`
because v1/mod.rs wires `get(truth::context)` directly onto its
own router, bypassing this helper. Zero callers across the
workspace. Deleted the function + allow + now-unused Router
import. Left a breadcrumb comment pointing to the real wiring.
Workspace warnings: 0 (lib + tests). Each #[allow] removed raises
the bar on future code entering these modules — the linter now
catches the same classes of bugs at PR time.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
47 lines
1.3 KiB
Rust
47 lines
1.3 KiB
Rust
use serde::Serialize;
|
|
use truth::default_truth_store;
|
|
|
|
// Note: truth_router() was a stub wrapper around a single /context route
|
|
// that nothing called — v1/mod.rs wires get(truth::context) directly
|
|
// onto its own router. Removed 2026-04-24 along with its #[allow(dead_code)]
|
|
// attribute; the handler below is the real surface.
|
|
|
|
#[derive(Serialize)]
|
|
pub struct ContextResponse {
|
|
pub task_classes: Vec<String>,
|
|
pub rules: Vec<RuleInfo>,
|
|
}
|
|
|
|
#[derive(Serialize)]
|
|
pub struct RuleInfo {
|
|
pub id: String,
|
|
pub task_class: String,
|
|
pub description: String,
|
|
}
|
|
|
|
pub async fn context() -> axum::Json<ContextResponse> {
|
|
let store = default_truth_store();
|
|
|
|
let task_classes: Vec<String> = vec![
|
|
"staffing.fill".to_string(),
|
|
"staffing.rescue".to_string(),
|
|
"staffing.sms_draft".to_string(),
|
|
"staffing.any".to_string(),
|
|
];
|
|
|
|
let mut rules = Vec::new();
|
|
for tc in &task_classes {
|
|
for rule in store.get_rules(tc) {
|
|
rules.push(RuleInfo {
|
|
id: rule.id.clone(),
|
|
task_class: rule.task_class.clone(),
|
|
description: rule.description.clone(),
|
|
});
|
|
}
|
|
}
|
|
|
|
axum::Json(ContextResponse {
|
|
task_classes,
|
|
rules,
|
|
})
|
|
} |