Skip to content

Commit 0404ad7

Browse files
hyperpolymathclaude
andcommitted
feat(verisim-api): add proof_attempts REST endpoints for Hypatia pipeline
Three new routes under /api/v1/proof_attempts: GET ?limit=N — list attempt rows (for Julia retraining) POST — insert attempt row from echidnabot GET /strategy?class=X — recommendations from mv_proven_certificates GET /certificates?class=X — PROVEN/pending cert status per prover All handlers speak to ClickHouse HTTP API via reqwest POST-with-body (VERISIM_CLICKHOUSE_URL, default http://localhost:8123). No new crate deps. Also fix tantivy 0.26 API break in verisim-document: TopDocs::with_limit(n) no longer implements Collector directly; must call .order_by_score() first. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 35bd93b commit 0404ad7

3 files changed

Lines changed: 388 additions & 1 deletion

File tree

verisimdb/rust-core/verisim-api/src/lib.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ pub mod federation;
1010
pub mod graphql;
1111
pub mod groove;
1212
pub mod grpc;
13+
pub mod proof_attempts;
1314
pub mod rbac;
1415
pub mod transaction;
1516
pub mod vql;
@@ -670,6 +671,19 @@ pub fn build_router(state: AppState) -> Router {
670671
.route("/spatial/search/nearest", post(spatial_nearest_handler))
671672
// VQL text query endpoint (used by verisim-repl)
672673
.route("/vql/execute", post(vql::vql_execute_handler))
674+
// Proof-attempts pipeline (ClickHouse-backed, versioned under /api/v1/)
675+
.route(
676+
"/api/v1/proof_attempts",
677+
get(proof_attempts::list_proof_attempts).post(proof_attempts::insert_proof_attempt),
678+
)
679+
.route(
680+
"/api/v1/proof_attempts/strategy",
681+
get(proof_attempts::strategy),
682+
)
683+
.route(
684+
"/api/v1/proof_attempts/certificates",
685+
get(proof_attempts::certificates),
686+
)
673687
// Authentication middleware layer
674688
.layer(axum_middleware::from_fn_with_state(
675689
auth_state,

0 commit comments

Comments
 (0)