@@ -15,15 +15,10 @@ type EditAggregate struct {
1515 LinesOverwritten int
1616}
1717
18- // aggregateEdits walks transcript entries from state.StartLine forward and
19- // returns counts for Edit/Write/MultiEdit tool calls Claude made in this trace.
20- func aggregateEdits (state * State ) * EditAggregate {
18+ // aggregateEdits walks transcript entries and returns counts for
19+ // Edit/Write/MultiEdit tool calls Claude made in this trace.
20+ func aggregateEdits (entries [] TranscriptEntry ) * EditAggregate {
2121 agg := & EditAggregate {Files : map [string ]struct {}{}}
22- entries , err := ReadTranscript (state .Transcript , state .StartLine )
23- if err != nil {
24- return agg
25- }
26-
2722 for _ , entry := range entries {
2823 if entry .Type != "assistant" || entry .Message == nil {
2924 continue
@@ -184,12 +179,14 @@ func postTraceMetrics(state *State) {
184179 }
185180
186181 metrics := map [string ]interface {}{}
182+ fullEntries , _ := ReadTranscript (state .Transcript , 0 )
183+ turnEntries , _ := ReadTranscript (state .Transcript , state .StartLine )
187184
188185 var repo , branch string
189186 var commits , insC , delC int
190187 var agg * EditAggregate
191188 if cwd != "" && git (cwd , "rev-parse" , "--is-inside-work-tree" ) == "true" {
192- agg = aggregateEdits (state )
189+ agg = aggregateEdits (turnEntries )
193190
194191 repo = repoName (cwd )
195192 branch = git (cwd , "branch" , "--show-current" )
@@ -224,8 +221,6 @@ func postTraceMetrics(state *State) {
224221 debugLog ("postTraceMetrics: skipping git block (cwd=%q not a git work tree)" , cwd )
225222 }
226223
227- fullEntries , _ := ReadTranscript (state .Transcript , 0 )
228- turnEntries , _ := ReadTranscript (state .Transcript , state .StartLine )
229224 for domain , snap := range domainSnapshotsFromEntries (fullEntries , turnEntries ) {
230225 if snap != nil {
231226 metrics [domain ] = snap
0 commit comments