Session: {{.Session.Summary.SessionID}}

CWD: {{.Session.Summary.CWD}} Branch: {{.Session.Summary.GitBranch}} Mode: {{if .Session.Summary.ReviewMode}}{{.Session.Summary.ReviewMode}}{{else}}-{{end}} {{if eq .Session.Summary.ReviewMode "range"}} From: {{.Session.Summary.DiffFrom}} To: {{.Session.Summary.DiffTo}} {{end}} {{if eq .Session.Summary.ReviewMode "commit"}} Commit: {{.Session.Summary.DiffCommit}} {{end}} Model: {{.Session.Summary.Model}} Duration: {{formatDuration .Session.Summary.DurationSec}} Files: {{.Session.Summary.FileCount}} Status: {{if .Session.Summary.Aborted}}aborted{{else if .Session.Summary.Legacy}}legacy{{else}}{{.Session.Summary.TerminalState}}{{end}}
{{if .Session.Summary.RunManifest}}

Coverage

{{.Session.Summary.SelectedCount}}
Selected
{{.Session.Summary.CompletedCount}}
Completed
{{.Session.Summary.ReusedCount}}
Reused
{{.Session.Summary.FailedCount}}
Failed
{{.Session.Summary.WaivedCount}}
Waived
{{end}}

Token Usage

{{formatNumber .Session.TokenUsage.TotalPromptTokens}}
Prompt Tokens
{{formatNumber .Session.TokenUsage.TotalCompletionTokens}}
Completion Tokens
{{formatNumber (add .Session.TokenUsage.TotalPromptTokens .Session.TokenUsage.TotalCompletionTokens)}}
Total Tokens
{{formatNumber .Session.TokenUsage.RequestCount}}
LLM Requests
{{if or .Session.TokenUsage.TotalCacheReadTokens .Session.TokenUsage.TotalCacheWriteTokens}}
{{formatNumber .Session.TokenUsage.TotalCacheReadTokens}}
Cache Read
{{formatNumber .Session.TokenUsage.TotalCacheWriteTokens}}
Cache Write
{{end}} {{if .Session.Summary.LLMFailures}}
{{.Session.Summary.LLMFailures}}
LLM Failures
{{end}}
{{with .Session.TokenUsage.FileTokenBreakdown}} {{if or $.Session.TokenUsage.TotalCacheReadTokens $.Session.TokenUsage.TotalCacheWriteTokens}}{{end}} {{range .}} {{if or $.Session.TokenUsage.TotalCacheReadTokens $.Session.TokenUsage.TotalCacheWriteTokens}}{{end}} {{end}}
FilePromptCompletionCache ReadCache WriteTotal
{{.FilePath | truncate 60}} {{formatNumber .PromptTokens}} {{formatNumber .CompletionTokens}}{{formatNumber .CacheReadTokens}}{{formatNumber .CacheWriteTokens}}{{formatNumber (add .PromptTokens .CompletionTokens)}}
{{end}}
{{if .Session.Comments}}

Review Comments ({{len .Session.Comments}} findings)

{{with severityCounts .Session.Comments}}
{{if .Critical}}Critical: {{.Critical}}{{end}} {{if .High}}High: {{.High}}{{end}} {{if .Medium}}Medium: {{.Medium}}{{end}} {{if .Low}}Low: {{.Low}}{{end}}
{{end}}
{{range groupCommentsByFile .Session.Comments}}
{{.FilePath}} {{len .Comments}} comments
{{range .Comments}}
{{if .Category}}{{.Category}}{{end}} {{if .Severity}}{{.Severity}}{{end}} {{if .StartLine}}L{{.StartLine}}{{if and .EndLine (ne .EndLine .StartLine)}}-L{{.EndLine}}{{end}}{{end}}
{{.Content}}
{{if or .ExistingCode .SuggestionCode}}
{{if .ExistingCode}}
Existing Code
{{.ExistingCode}}
{{end}} {{if .SuggestionCode}}
Suggested Change
{{.SuggestionCode}}
{{end}}
{{end}}
{{end}}
{{end}}
{{end}} {{if .Session.Summary.FilesReviewed}}

Files Reviewed

{{end}}

Conversations ({{len .Session.Files}} files)

{{range .Session.Files}}
{{.FilePath}} {{cardCount .Tasks}} requests
{{range $tg := orderedTasks .Tasks}}

{{$tg.Type}}

{{range $tg.Cards}}
Request #{{.RequestNo}} {{if .Model}}{{.Model}}{{end}} {{if or .PromptTokens .CompletionTokens}}P:{{formatNumber .PromptTokens}} C:{{formatNumber .CompletionTokens}}{{if or .CacheReadTokens .CacheWriteTokens}} CR:{{formatNumber .CacheReadTokens}} CW:{{formatNumber .CacheWriteTokens}}{{end}}{{end}} {{if .DurationMs}}{{.DurationMs}}ms{{end}} {{if .Error}}{{.Error}}{{end}}
{{with .ResponseContent}}
{{.}}
{{end}} {{if .ToolCalls}}
Tool Calls ({{len .ToolCalls}})
{{range .ToolCalls}}
{{.Name}} {{if .DurationMs}}{{.DurationMs}}ms{{end}} {{if not .Ok}}Failed{{end}}
Show Details
{{.Arguments}}
{{if .Result}}
{{.Result}}
{{end}}
{{end}}
{{end}}
{{end}}
{{end}}
{{end}}