跳到主要内容
Documentation

Decision Adaptations

Overview

版本:最新版

Decision Adaptations

Overview

Decision adaptations let a matched decision control whether global Router Learning can adjust its proposed model.

Most decisions inherit global learning behavior. Add adaptations only when a decision needs a hard boundary, observe-only rollout, or small protection tuning.

Key Advantages

  • Keeps policy boundaries close to the decision that owns them.
  • Lets sensitive routes bypass learning with one small block.
  • Supports observe-only rollouts before adaptation or protection can affect traffic.
  • Lets one decision use a narrower or broader adaptation candidate set than the global default.
  • Lets one decision tune the stability trade-off without changing global defaults.

What Problem Does It Solve?

Global learning is convenient, but not every decision should be adjusted by online state. Privacy, local-only, security, compliance, and operational routes often need hard boundaries. Decision adaptations give the matched decision the final say on whether learning may apply, observe, or bypass.

When to Use

  • A matched decision must not be changed by online learning.
  • You want to compare learning diagnostics before allowing route changes.
  • One decision should search the whole route tier while most decisions stay inside their own modelRefs.
  • One decision needs a stronger or weaker protection margin than the default.
  • Adaptation and protection need different modes for the same decision.

Configuration

Use bypass for hard boundaries:

routing:
decisions:
- name: local_privacy_policy
modelRefs:
- model: local-private-model
adaptations:
mode: bypass

Use component-level controls when adaptation and protection should behave differently:

adaptations:
adaptation:
mode: observe
candidate_set: tier
protection:
mode: apply

adaptation.candidate_set is optional. When omitted, the decision inherits global.router.learning.adaptation.candidate_set.

Allowed modes:

ModeMeaning
applyThe component may affect the final route.
observeThe component records diagnostics but cannot change the final route.
bypassThe component does not adjust this decision.

adaptations.mode: bypass overrides component-level modes and prevents both adaptation and protection from changing the route.

Protection Tuning

Use decision-local protection tuning only when a decision needs a different stability trade-off than the global default:

adaptations:
protection:
stability_weight: 1.5
switch_margin: 0.10

Higher protection.stability_weight favors stability. Lower protection.stability_weight makes it easier for adaptation to switch models. switch_margin is the minimum model advantage required before switching for this decision.