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

Abierto
#2,827 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

  • #2828 de @Chuxel — cerrado sin fusionar

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
25/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
rust
Área
devtools

Línea de trabajo

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.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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.

Lenguaje dominante
Java
Estrellas
10.7k
Forks
1.5k
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de github/copilot-sdk

Todos los issues de github/copilot-sdk

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.