MCPcopy Create free account
hub / github.com/atomicdotdev/atomic / format_attestation

Method format_attestation

atomic-cli/src/commands/change/command.rs:497–568  ·  view source on GitHub ↗

Format AI attestation information for display.

(&self, prov: &Provenance)

Source from the content-addressed store, hash-verified

495
496 /// Format AI attestation information for display.
497 fn format_attestation(&self, prov: &Provenance) -> String {
498 let mut output = String::new();
499
500 output.push_str(&format!("{}\n", emphasis("=== Attestation ===")));
501 output.push_str(&format!(
502 " Vendor: {}\n",
503 info(&format!("{:?}", prov.vendor))
504 ));
505 output.push_str(&format!(" Model: {}\n", info(&prov.model)));
506
507 if let Some(version) = &prov.model_version {
508 output.push_str(&format!(" Version: {}\n", hint(version)));
509 }
510
511 output.push_str(&format!(
512 " Tool: {}\n",
513 info(&format!("{:?}", prov.tool))
514 ));
515 output.push_str(&format!(
516 " Type: {}\n",
517 hint(&format!("{:?}", prov.suggestion_type))
518 ));
519
520 // Token usage
521 if !prov.tokens.is_empty() {
522 output.push_str(" Tokens:\n");
523 output.push_str(&format!(" Input: {}\n", prov.tokens.input_tokens));
524 output.push_str(&format!(" Output: {}\n", prov.tokens.output_tokens));
525 output.push_str(&format!(" Total: {}\n", prov.tokens.total_tokens));
526 }
527
528 // Cost
529 if !prov.cost.is_zero() {
530 output.push_str(&format!(" Cost: ${:.6} USD\n", prov.cost.usd));
531 }
532
533 // Temperature
534 if let Some(temp) = prov.temperature {
535 let temp_f = temp as f64 / 1000.0;
536 output.push_str(&format!(" Temp: {:.2}\n", temp_f));
537 }
538
539 // Request/Session IDs
540 if let Some(req_id) = &prov.request_id {
541 output.push_str(&format!(" Request: {}\n", hint(req_id)));
542 }
543 if let Some(sess_id) = &prov.session_id {
544 output.push_str(&format!(" Session: {}\n", hint(sess_id)));
545 }
546
547 // Additional metadata (key-value pairs from agent recording)
548 if !prov.metadata.is_empty() {
549 output.push_str(" Metadata:\n");
550 for (key, value) in &prov.metadata {
551 // turn_number is recorded as 1-indexed but session ledger
552 // turns are 0-indexed; display the 0-indexed value.
553 let display_value = if key == "turn_number" {
554 value

Callers 1

format_defaultMethod · 0.80

Calls 3

is_emptyMethod · 0.45
is_zeroMethod · 0.45
cloneMethod · 0.45

Tested by

no test coverage detected