preserve readable checkpoint token metadata · Entire

preserve readable checkpoint token metadata

277c2a3→main

Sessions

d124d239d6aa

Changes

2

133 unmodified lines

134
135
136
137
138
139
137
138
139
140

133 unmodified lines

}

usage := aggregateCheckpointTokenUsage(metas)
    if metadataWarnings > 0 && summary != nil && summary.TokenUsage != nil {
        usage = summary.TokenUsage
    } else if usage == nil && summary != nil {
    if usage == nil && summary != nil {
        usage = summary.TokenUsage
    }
    if tokens := buildSessionTokensUsage(usage); tokens != nil {

Mcmd/entire/cli/checkpoint_tokens.go+1/-3

1548 unmodified lines

1549
1550
1551
1552
1552
1553
1554
1555
1556
1557
23 unmodified lines

1581
1582
1583
1582
1583
1584
1585
1586
1587
1588

1548 unmodified lines

}
}

func TestCheckpointTokensReport_UsesRootSummaryWhenSessionMetadataIncomplete(t *testing.T) {
func TestCheckpointTokensReport_UsesReadableMetadataWhenSessionMetadataIncomplete(t *testing.T) {
    t.Parallel()

cpID := id.MustCheckpointID("abc123abc123")
    report := buildCheckpointTokensReport(
        cpID,
23 unmodified lines
    if report.Tokens == nil {
        t.Fatalf("expected token data, got nil")
    }
    if report.Tokens.Total != 1500 {
        t.Fatalf("expected root summary total 1500, got %+v", report.Tokens)
    if report.Tokens.Total != 100 {
        t.Fatalf("expected readable session metadata total 100, got %+v", report.Tokens)
    }
    if len(report.Limitations) == 0 || !strings.Contains(report.Limitations[0], "1 checkpoint session metadata file could not be read") {
        t.Fatalf("expected incomplete metadata limitation, got %+v", report.Limitations)

Mcmd/entire/cli/sessions_test.go+5/-3