Allow Rust callers to omit the automatic post-resume skill reload

Aperta
#2,827 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

  • #2828 di @Chuxel — chiusa senza merge

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
rust
Ambito
devtools

Direzione di ricerca

Start from the Rust SDK's shared ordinary/prepared resume path, where session.resume is followed by an awaited session.skills.reload, and from the ResumeSessionConfig type that would gain a with_reload_skills(bool) option. The issue asks for explicit false to omit the automatic request entirely, while the default and true keep the awaited, best-effort behavior. Done means framed in-memory transport tests cover omission, retained settlement and errors, and unchanged wire configuration. Open PR #2828 already targets this, so check it before starting.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement

Problem

The Rust SDK's shared ordinary/prepared resume path awaits session.skills.reload after a successful session.resume response. Returned reload errors are logged and tolerated, but an unanswered request keeps resume pending. A caller that already owns skill reconciliation cannot currently omit this additional SDK-issued operation.

This mechanism is reproducible with a framed in-memory transport: acknowledge session.resume, then observe the automatic session.skills.reload request and withhold its response. No live runtime or production incident evidence is needed for this SDK-level reproduction.

Proposed behavior

Add a Rust-local ResumeSessionConfig::with_reload_skills(bool) option. Unset or true must retain existing awaited, best-effort behavior; explicit false must omit the automatic request entirely, without a timeout, detached task, or retry.

Keep mandatory resume validation, MCP-auth interest registration, options readiness, event/callback ownership, and cleanup unchanged. The option must not be serialized to runtime or AHP settings. It must not disable skills, imply catalog or disabled-preference freshness, gate continued/shared work, or cancel an already-issued operation. Explicit caller-managed session.rpc().skills().reload() must remain available.

SDK regression coverage

Use synthetic framed controls for ordinary/prepared omission, retained default/true settlement and returned errors, mandatory readiness, event/hook/provider callbacks, failure/cancellation/connection-loss cleanup, and unchanged wire configuration.

Lingua principale
Java
Stelle
10.7k
Fork
1.5k
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di github/copilot-sdk

Tutte le issue di github/copilot-sdk

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.