MCPcopy Create free account
hub / github.com/AI45Lab/Code / check_achievement

Method check_achievement

core/src/planning/llm_planner.rs:124–146  ·  view source on GitHub ↗

Evaluate whether a goal has been achieved given current state

(
        llm: &Arc<dyn LlmClient>,
        goal: &AgentGoal,
        current_state: &str,
    )

Source from the content-addressed store, hash-verified

122
123 /// Evaluate whether a goal has been achieved given current state
124 pub async fn check_achievement(
125 llm: &Arc<dyn LlmClient>,
126 goal: &AgentGoal,
127 current_state: &str,
128 ) -> Result<AchievementResult> {
129 let system = crate::prompts::LLM_GOAL_CHECK_SYSTEM;
130
131 let user_message = format!(
132 "Goal: {}\nSuccess Criteria: {}\nCurrent State: {}",
133 goal.description,
134 goal.success_criteria.join("; "),
135 current_state,
136 );
137
138 let messages = vec![Message::user(&user_message)];
139 let response = llm
140 .complete(&messages, Some(system), &[])
141 .await
142 .context("LLM call failed during achievement check")?;
143
144 let text = response.text();
145 Self::parse_achievement_response(&text)
146 }
147
148 /// Create a fallback plan using heuristic logic (no LLM required)
149 pub fn fallback_plan(prompt: &str) -> ExecutionPlan {

Callers

nothing calls this directly

Calls 3

contextMethod · 0.80
completeMethod · 0.45
textMethod · 0.45

Tested by

no test coverage detected