swarm repositories / source
aboutsummaryrefslogtreecommitdiff
path: root/crates/fidget-spinner-cli/src/mcp/catalog.rs
diff options
context:
space:
mode:
authormain <main@swarm.moe>2026-03-20 01:11:39 -0400
committermain <main@swarm.moe>2026-03-20 01:11:39 -0400
commit22fe3d2ce7478450a1d7443c4ecbd85fd4c46716 (patch)
treed534d4585a804081b53fcf2f3bbb3a8fc5d29190 /crates/fidget-spinner-cli/src/mcp/catalog.rs
parentce41a229dcd57f9a2c35359fe77d9f54f603e985 (diff)
downloadfidget_spinner-22fe3d2ce7478450a1d7443c4ecbd85fd4c46716.zip
Excise git provenance from experiment ledger
Diffstat (limited to 'crates/fidget-spinner-cli/src/mcp/catalog.rs')
-rw-r--r--crates/fidget-spinner-cli/src/mcp/catalog.rs24
1 files changed, 10 insertions, 14 deletions
diff --git a/crates/fidget-spinner-cli/src/mcp/catalog.rs b/crates/fidget-spinner-cli/src/mcp/catalog.rs
index 3b8abcc..ae3ca78 100644
--- a/crates/fidget-spinner-cli/src/mcp/catalog.rs
+++ b/crates/fidget-spinner-cli/src/mcp/catalog.rs
@@ -99,13 +99,13 @@ pub(crate) fn tool_spec(name: &str) -> Option<ToolSpec> {
}),
"frontier.status" => Some(ToolSpec {
name: "frontier.status",
- description: "Read one frontier projection, including champion and active candidates.",
+ description: "Read one frontier projection, including open/completed experiment counts and verdict totals.",
dispatch: DispatchTarget::Worker,
replay: ReplayContract::Convergent,
}),
"frontier.init" => Some(ToolSpec {
name: "frontier.init",
- description: "Create a new frontier rooted in a contract node. If the project is a git repo, the current HEAD becomes the initial champion when possible.",
+ description: "Create a new frontier rooted in a contract node.",
dispatch: DispatchTarget::Worker,
replay: ReplayContract::NeverReplay,
}),
@@ -183,7 +183,7 @@ pub(crate) fn tool_spec(name: &str) -> Option<ToolSpec> {
}),
"metric.best" => Some(ToolSpec {
name: "metric.best",
- description: "Rank completed experiments by one numeric key, with optional run-dimension filters and candidate commit surfacing.",
+ description: "Rank completed experiments by one numeric key, with optional run-dimension filters.",
dispatch: DispatchTarget::Worker,
replay: ReplayContract::Convergent,
}),
@@ -195,7 +195,7 @@ pub(crate) fn tool_spec(name: &str) -> Option<ToolSpec> {
}),
"experiment.open" => Some(ToolSpec {
name: "experiment.open",
- description: "Open a stateful experiment against one hypothesis and one base checkpoint.",
+ description: "Open a stateful experiment against one hypothesis.",
dispatch: DispatchTarget::Worker,
replay: ReplayContract::NeverReplay,
}),
@@ -213,7 +213,7 @@ pub(crate) fn tool_spec(name: &str) -> Option<ToolSpec> {
}),
"experiment.close" => Some(ToolSpec {
name: "experiment.close",
- description: "Close one open experiment with typed run dimensions, preregistered metric observations, candidate checkpoint capture, optional analysis, note, and verdict.",
+ description: "Close one open experiment with typed run dimensions, preregistered metric observations, optional analysis, note, and verdict.",
dispatch: DispatchTarget::Worker,
replay: ReplayContract::NeverReplay,
}),
@@ -562,12 +562,11 @@ fn input_schema(name: &str) -> Value {
"type": "object",
"properties": {
"frontier_id": { "type": "string" },
- "base_checkpoint_id": { "type": "string" },
"hypothesis_node_id": { "type": "string" },
"title": { "type": "string" },
"summary": { "type": "string" }
},
- "required": ["frontier_id", "base_checkpoint_id", "hypothesis_node_id", "title"],
+ "required": ["frontier_id", "hypothesis_node_id", "title"],
"additionalProperties": false
}),
"experiment.list" => json!({
@@ -589,7 +588,6 @@ fn input_schema(name: &str) -> Value {
"type": "object",
"properties": {
"experiment_id": { "type": "string" },
- "candidate_summary": { "type": "string" },
"run": run_schema(),
"primary_metric": metric_value_schema(),
"supporting_metrics": { "type": "array", "items": metric_value_schema() },
@@ -601,7 +599,6 @@ fn input_schema(name: &str) -> Value {
},
"required": [
"experiment_id",
- "candidate_summary",
"run",
"primary_metric",
"note",
@@ -753,11 +750,10 @@ fn verdict_schema() -> Value {
json!({
"type": "string",
"enum": [
- "promote_to_champion",
- "keep_on_frontier",
- "revert_to_champion",
- "archive_dead_end",
- "needs_more_evidence"
+ "accepted",
+ "kept",
+ "parked",
+ "rejected"
]
})
}