// Copyright (c) Microsoft. All rights reserved. using System.Diagnostics.CodeAnalysis; using Microsoft.Shared.DiagnosticIds; namespace Microsoft.Agents.AI.Compaction; #pragma warning disable IDE0001 // Simplify Names for namespace in comments /// /// Describes the compaction approach used by a pre-configured . /// /// [Experimental(DiagnosticIds.Experiments.AgentsAIExperiments)] public enum CompactionApproach { /// /// Applies the lightest available compaction techniques. /// Collapses old tool call groups into concise summaries and uses truncation as an emergency backstop. /// Does not require a summarization . /// Gentle, /// /// Balances context preservation with compaction efficiency. /// Applies tool result collapsing, LLM-based summarization, and truncation as an emergency backstop. /// Requires a summarization . /// Balanced, /// /// Applies the most aggressive available compaction techniques. /// Applies tool result collapsing, LLM-based summarization, turn-based sliding window, and truncation. /// Requires a summarization . /// Aggressive, } #pragma warning restore IDE0001 // Simplify Names