MCPcopy Create free account
hub / github.com/GongShichen/LuminaCode / maybeCompressContext

Method maybeCompressContext

agent/loop.go:1229–1267  ·  view source on GitHub ↗
(ctx context.Context, state *AgentState)

Source from the content-addressed store, hash-verified

1227func (e *CoreExecutionEngine) PinConsumedCacheEdits() {
1228 e.pinConsumedCacheEdits()
1229}
1230
1231func (e *CoreExecutionEngine) RestoreInFlightCacheEdits() {
1232 e.restoreInFlightCacheEdits()
1233}
1234
1235func (e *CoreExecutionEngine) consumeCacheEditsForRequest(visibleToolResultIDs map[string]struct{}) *api.LLMRequestOptions {
1236 if !strings.HasPrefix(strings.ToLower(e.Config.APIModel), "claude-") {
1237 e.cacheEditState = RuntimeCacheEditState{}
1238 return &api.LLMRequestOptions{}
1239 }
1240 if !e.Config.AnthropicCacheEditsEnabled {
1241 return &api.LLMRequestOptions{}
1242 }
1243
1244 pinned := filterVisibleCacheEdits(e.cacheEditState.Pinned, visibleToolResultIDs)
1245 pending := filterVisibleCacheEdits(e.cacheEditState.Pending, visibleToolResultIDs)
1246 e.cacheEditState.Pinned = pinned
1247 e.cacheEditState.Pending = nil
1248 e.cacheEditState.ConsumedInFlight = pending
1249
1250 edits := make([]api.CacheEdit, 0, len(pinned)+len(pending))
1251 edits = append(edits, pinned...)
1252 edits = append(edits, pending...)
1253 return &api.LLMRequestOptions{AnthropicCacheEdits: edits}
1254}
1255
1256func (e *CoreExecutionEngine) pinConsumedCacheEdits() {
1257 if len(e.cacheEditState.ConsumedInFlight) == 0 {
1258 return
1259 }
1260 existing := map[string]struct{}{}
1261 for _, edit := range e.cacheEditState.Pinned {
1262 existing[edit.ToolUseID] = struct{}{}
1263 }
1264 for _, edit := range e.cacheEditState.ConsumedInFlight {
1265 if _, ok := existing[edit.ToolUseID]; ok {
1266 continue
1267 }
1268 e.cacheEditState.Pinned = append(e.cacheEditState.Pinned, edit)
1269 existing[edit.ToolUseID] = struct{}{}
1270 }

Callers 1

queryLoopMethod · 0.95

Tested by

no test coverage detected