mirror of
https://github.com/openai/codex.git
synced 2026-05-23 12:34:25 +00:00
goals: localize completion usage reporting
This commit is contained in:
@@ -8883,7 +8883,7 @@ async fn completed_goal_accounts_current_turn_tokens_before_tool_response() -> a
|
||||
assert_eq!(complete_output["remainingTokens"], 0);
|
||||
assert_eq!(
|
||||
complete_output["completionBudgetReport"],
|
||||
"Goal achieved. Report final budget usage to the user: tokens used: 580 of 500."
|
||||
"Goal achieved. Report final usage from this tool result's structured goal fields. If `goal.tokenBudget` is present, include token usage from `goal.tokensUsed` and `goal.tokenBudget`. If `goal.timeUsedSeconds` is greater than 0, summarize elapsed time in a concise, human-friendly form appropriate to the response language."
|
||||
);
|
||||
let requests = responses.requests();
|
||||
let completion_followup_request = requests
|
||||
|
||||
@@ -87,20 +87,13 @@ fn goal_response(
|
||||
}
|
||||
|
||||
fn completion_budget_report(goal: &ThreadGoal) -> Option<String> {
|
||||
let mut parts = Vec::new();
|
||||
if let Some(budget) = goal.token_budget {
|
||||
parts.push(format!("tokens used: {} of {budget}", goal.tokens_used));
|
||||
}
|
||||
if goal.time_used_seconds > 0 {
|
||||
parts.push(format!("time used: {} seconds", goal.time_used_seconds));
|
||||
}
|
||||
if parts.is_empty() {
|
||||
if goal.token_budget.is_none() && goal.time_used_seconds <= 0 {
|
||||
None
|
||||
} else {
|
||||
Some(format!(
|
||||
"Goal achieved. Report final budget usage to the user: {}.",
|
||||
parts.join("; ")
|
||||
))
|
||||
Some(
|
||||
"Goal achieved. Report final usage from this tool result's structured goal fields. If `goal.tokenBudget` is present, include token usage from `goal.tokensUsed` and `goal.tokenBudget`. If `goal.timeUsedSeconds` is greater than 0, summarize elapsed time in a concise, human-friendly form appropriate to the response language."
|
||||
.to_string(),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -131,7 +124,7 @@ mod tests {
|
||||
goal: Some(goal),
|
||||
remaining_tokens: Some(6_750),
|
||||
completion_budget_report: Some(
|
||||
"Goal achieved. Report final budget usage to the user: tokens used: 3250 of 10000; time used: 75 seconds."
|
||||
"Goal achieved. Report final usage from this tool result's structured goal fields. If `goal.tokenBudget` is present, include token usage from `goal.tokensUsed` and `goal.tokenBudget`. If `goal.timeUsedSeconds` is greater than 0, summarize elapsed time in a concise, human-friendly form appropriate to the response language."
|
||||
.to_string()
|
||||
),
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user