[v2] Consolidate runtime discovery, acquisition, and embedding
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Área
- backend-api-design, build-system, devops, release
Línea de trabajo
Comienza revisando #1934 y determina qué cubren ya #2395, #2463 y #2505, junto con el commit referenciado 05dd60e. Rastrea las rutas de adquisición del runtime, empaquetado e integración en los SDKs afectados e identifica cualquier release asset requerido de github/copilot-cli. Se considera completado cuando se hayan implementado el contrato de artefactos documentado y el comportamiento de plataforma, offline, override, checksum y caché, sin duplicar el trabajo ya completado.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Complete a coherent model for locating, acquiring, packaging, and embedding the Copilot runtime across all SDKs.
These items are planned work carried forward from #1934. Existing work may satisfy part of the required outcome; verify and build on it rather than reopening completed implementation. Do not omit remaining work without concrete new evidence and maintainer agreement.
Why this work exists
The original Rust build.rs was forked between in-process and out-of-process modes for backward compatibility. In-process operation needed the .node native binary, which was available from @github/copilot on npm but was not included in the GitHub CLI release. Depending on npm for that binary was not considered viable long term.
Rust and Go also used build-time flags to choose whether the in-process binary was embedded because it duplicated the Copilot SEA executable already embedded in the application bundle.
Python independently performed executable resolution through PATH (introduced by commit 05dd60e), which could select an arbitrary system installation rather than the runtime expected by the SDK.
Required outcomes
- Python does not implicitly select an executable through
PATH; it uses the SDK-managed runtime or an explicitly configured path. - The underlying runtime build and publishing process publishes the required raw native binaries as separate GitHub Release assets.
- SDKs acquire pinned, checksum-verified runtime artifacts from
github/copilot-cliGitHub Releases rather than depending on@github/copilotnpm artifacts. - Obsolete Rust and Go compile-time choices for embedding the in-process native library versus the executable runtime are removed.
- Packaging converges on a minimal bootstrap executable plus the required native dynamic library without duplicating the full SEA/native runtime payload.
- All supported platforms, offline/development scenarios, explicit overrides, checksums, and cache replacement behavior are covered.
Implementation preparation
- Determine exactly which outcomes #2395, #2463, and #2505 already satisfy.
- Complete rather than duplicate applicable in-progress work.
- Identify and link any missing release assets or changes required from
github/copilot-cli. - If a remaining change is compatible with v1, it may land there as groundwork while remaining part of this tracked outcome.
- Preserve backward compatibility where it does not conflict with the intended v2 cleanup, and document any runtime-version requirements.
Historical context
- #1934
- Commit
05dd60e - #2395
- #2463
- #2505
Completion
Deliver the required outcomes across affected SDKs with a documented artifact contract and platform coverage. Any outcome considered obsolete or infeasible requires concrete evidence and explicit maintainer agreement before it is removed from scope.
- Lenguaje dominante
- Java
- Estrellas
- 10.5k
- Forks
- 1.5k
- Merge medio
- 1 d 9 h
- PR fusionados (30 d)
- 130
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de github/copilot-sdk
-
agentic-workflows
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
github/copilot-sdk#2760 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
github/copilot-sdk#2759 ·
-
documentation
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
github/copilot-sdk#2758 ·
-
agentic-workflows
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
github/copilot-sdk#2709 · 1 comentario ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
github/copilot-sdk#2673 ·
Todos los issues de github/copilot-sdk
Issues similares
-
executions.Query — startDate and timeRange filters are sent with inverted comparison operators Abiertoarea/plugin
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
kestra-io/plugin-kestra#190 ·
-
litertlm-android AAR ships no consumer ProGuard rules → "mid == null" SIGABRT in minified apps Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
google-ai-edge/LiteRT-LM#3739 ·
-
Add canonical URLs and a sitemap Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
integra-team-red/meet-map#249 ·
-
[Studio][Bug] Cancelled create-user dialog keeps the password and admin switch for the next attempt Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
apache/rocketmq-dashboard#5064 ·
-
Consent portal: creating a duplicate Purpose shows a generic error instead of "already exists" Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
wso2/dpdp-accelerator#287 ·