Post-PR-#11 polish: demo UI, staffer console, face pool, icons, contractor profile (24 commits) #12
@ -87,6 +87,14 @@ pub struct IterateResponse {
|
|||||||
pub validation: serde_json::Value,
|
pub validation: serde_json::Value,
|
||||||
pub iterations: u32,
|
pub iterations: u32,
|
||||||
pub history: Vec<IterateAttempt>,
|
pub history: Vec<IterateAttempt>,
|
||||||
|
/// Echoes the resolved trace id (caller-forwarded header, body
|
||||||
|
/// field, langfuse-middleware mint, or local fallback). Operators
|
||||||
|
/// pivot from this id straight into Langfuse + the
|
||||||
|
/// coordinator_sessions.jsonl join key. Cross-runtime parity with
|
||||||
|
/// Go's `validator.IterateResponse` (commit 6847bbc in
|
||||||
|
/// golangLAKEHOUSE).
|
||||||
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
|
pub trace_id: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Serialize)]
|
#[derive(Serialize)]
|
||||||
@ -94,6 +102,8 @@ pub struct IterateFailure {
|
|||||||
pub error: String,
|
pub error: String,
|
||||||
pub iterations: u32,
|
pub iterations: u32,
|
||||||
pub history: Vec<IterateAttempt>,
|
pub history: Vec<IterateAttempt>,
|
||||||
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
|
pub trace_id: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn iterate(
|
pub async fn iterate(
|
||||||
@ -217,6 +227,7 @@ pub async fn iterate(
|
|||||||
validation: report,
|
validation: report,
|
||||||
iterations: iteration + 1,
|
iterations: iteration + 1,
|
||||||
history,
|
history,
|
||||||
|
trace_id: Some(trace_id.clone()),
|
||||||
})).into_response();
|
})).into_response();
|
||||||
}
|
}
|
||||||
Err(err) => {
|
Err(err) => {
|
||||||
@ -259,6 +270,7 @@ pub async fn iterate(
|
|||||||
error: format!("max iterations reached ({max_iter}) without passing validation"),
|
error: format!("max iterations reached ({max_iter}) without passing validation"),
|
||||||
iterations: max_iter,
|
iterations: max_iter,
|
||||||
history,
|
history,
|
||||||
|
trace_id: Some(trace_id.clone()),
|
||||||
})).into_response()
|
})).into_response()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -5,9 +5,13 @@ host = "0.0.0.0"
|
|||||||
port = 3100
|
port = 3100
|
||||||
# Coordinator session JSONL — one row per /v1/iterate session for
|
# Coordinator session JSONL — one row per /v1/iterate session for
|
||||||
# offline DuckDB analysis. Cross-runtime parity with the Go-side
|
# offline DuckDB analysis. Cross-runtime parity with the Go-side
|
||||||
# [validatord].session_log_path. Empty = disabled. Production:
|
# [validatord].session_log_path. Set to the SAME path Go validatord
|
||||||
# session_log_path = "/var/lib/lakehouse/gateway/sessions.jsonl"
|
# writes to so DuckDB queries see one unified longitudinal stream
|
||||||
session_log_path = ""
|
# across both runtimes (rows are tagged daemon="gateway" vs
|
||||||
|
# daemon="validatord" so producers stay distinguishable). Append-write
|
||||||
|
# is atomic at the row sizes both runtimes produce — both daemons
|
||||||
|
# co-writing is safe.
|
||||||
|
session_log_path = "/tmp/lakehouse-validator/sessions.jsonl"
|
||||||
|
|
||||||
[storage]
|
[storage]
|
||||||
root = "./data"
|
root = "./data"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user