<!--
  Translated by the docs agent from content-src/es/api/copilot-sdk/10-los-dos-modos-la-confirmacion-y-la-degradacion-honesta.md
  (source_hash 430b2aab3b6a). If that Spanish source_hash changes, re-check this translation.
-->

## 10.1 "I'll guide you" and "let's do it together"

If the action the person asked for exists in your manifest and is turned on, the assistant asks whether they'd like it shown to them ("I'll guide you": only navigate and highlight) or done together ("let's do it together": it also fills in and offers to tap the button, always with confirmation). If it doesn't exist or is turned off, the assistant can only guide with what it knows from the knowledge base — it never promises to fill in something that isn't armed.

## 10.2 Confirmation on save

Navigating, highlighting and filling in happen in full view without asking. Any action that saves, sends or deletes **always** asks for confirmation — it's the product's own floor, and your site can raise it (`confirmOnFill: true`, to also require confirmation on fill) but never relax it.

## 10.3 Honest degradation

| Situation | What the person sees |
| --- | --- |
| SDK missing or too old a version | `reason: "sdk_too_old"` at boot; the widget keeps working as a normal chat, with no copilot. |
| Manifest outdated | `manifestStatus: "outdated"`; copilot off until approved again. |
| Manifest revoked | `manifestStatus: "revoked"`; turns off instantly in every open session. |
| No manifest registered yet | `needManifest: true`; the server asks for the full JSON on the next boot. |
| Copilot not turned on for the channel | The widget behaves exactly as it did before installing the SDK. |
| Channel "out of plan" (after a tenant plan change) | `reason: "out_of_plan"` at boot; the widget shows an honest-closure panel ("Assistant unavailable", with no internal code or plan data) instead of the chat, until the tenant keeps it again or upgrades the plan. |

> **Note — This is not a failure of your integration**
>
> If the channel becomes "out of plan", your SDK doesn't need to do anything different — the widget handles the honest closure on its own. The detail of what "out of plan" means and how the tenant resolves it is in **Manual 62 · Plan capabilities and limits**, section 6.