You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-`internal/compact`: effective context window calculations, auto-compact thresholds, token warning state, compact summary prompt construction, compact API runner, compact boundary/summary plan generation, auto-compact window env override application, microcompact/cache primitives, persistent cached microcompact storage, structural/rich-content microcompact cache digests, cache version/TTL/prune handling for disk and in-memory caches, memory-cache write-through to disk, atomic cache writes, corrupt-cache fail-open behavior, and filename/digest mismatch pruning.
126
-
-`internal/compact`: microcompact disk cache loading now accepts Go default, camelCase, snake_case, and adjacent cache field aliases/wrappers such as `result`/`data`/`cache`/`value` objects, `content`/`text` summary, `cacheKey`/`key`/`hash` digest, cache-hit aliases, numeric strings for count fields, RFC3339/Unix-seconds/Unix-millis time fields, and relative TTL fields such as `ttlSeconds`, `ttlMs`, `expiresIn`, and `maxAge`, so cached microcompact records from adjacent implementations remain usable.
126
+
-`internal/compact`: microcompact disk cache loading now accepts Go default, camelCase, snake_case, and adjacent cache field aliases/wrappers such as `result`/`data`/`cache`/`value` objects, `content`/`text` summary, `cacheKey`/`key`/`hash` digest, cache-hit aliases, numeric strings and whole-number JSON/string numbers for count fields, RFC3339/Unix-seconds/Unix-millis time fields, and relative TTL fields such as `ttlSeconds`, `ttlMs`, `expiresIn`, and `maxAge`, so cached microcompact records from adjacent implementations remain usable.
127
127
-`internal/compact`: microcompact disk cache loading also accepts adjacent cache-entry wrappers and aliases such as `cacheEntry`/`cache_entry`, `micro_compact`/`micro_compact_result`, `summaryMarkdown`/`resultSummary`/`compressedText`, `cacheDigest`/`digestHash`/`fingerprint`, `summarizedCount`/`retainedCount`, `formatVersion`, and millisecond TTL aliases such as `ttlMilliseconds`, `expiresInMilliseconds`, and `maxAgeMilliseconds`.
128
128
-`internal/compact`: microcompact disk cache loading now also accepts adjacent timestamp aliases such as `cachedAt`, `cacheCreatedAt`, `storedAt`, `generatedAt`, `updatedAt`, `timestamp`, `expiry`, `expirationTime`, `validUntil`, `notAfter`, and relative TTL aliases such as `timeToLiveSeconds` and `validForMs`.
129
129
-`internal/compact`: microcompact disk cache relative TTL loading now also accepts minute, hour, and day aliases such as `ttlMinutes`, `expiresInHours`, and `validForDays`, including adjacent snake/camel forms.
@@ -551,6 +551,7 @@ M7 progress now includes:
551
551
-`internal/session`: prompt-history pasted image loading now accepts content-block-style `source`/`imageSource` objects, nested JSON:API/GraphQL-style source wrappers, data URL aliases, and source URL/URI/cache-path aliases; stored image entries with inline source data or a current-session image-cache file now restore base64 content into prompt image blocks instead of keeping only metadata, including same-ID cache fallback, media-type inference when history metadata omits the original MIME type, symlink escape guards before reading cached image bytes, and restored path re-indexing for later image metadata/source lookup.
552
552
-`internal/compact`: microcompact disk cache loading now accepts broader summary-like direct and provider aliases including `body`, `markdown`, `description`/`details`, `finalSummary`, `summaryContent`, `plainText`/`displayText`, `answerText`, `refusal`, `resultText`, `completionText`, `responseText`, and `messageText`; provider summary recovery also follows wrapper-only `value`/`payload`/`data` chains without failing on non-summary metadata, preserving visible summaries through nested cache entries, JSON:API/resource envelopes, and provider-style response wrappers.
553
553
-`internal/compact`: microcompact provider and cache summary extraction now unwraps inline fenced JSON payloads where the fence language and JSON object are on the same line, so SDK/model outputs no longer preserve the whole code fence as visible summary text.
554
+
-`internal/compact`: microcompact count field loading now accepts whole-number JSON numbers and whole-number numeric strings, while fractional count values still fail validation.
0 commit comments