Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[v2] Consolidate runtime discovery, acquisition, and embedding

オープン
#2,524 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
github, go, python, rust

調査の方向性

まず #1934 を確認し、参照されているコミット 05dd60e と合わせて、#2395、#2463、#2505 ですでにカバーされている内容を特定します。影響を受ける SDK 全体で、ランタイムの取得、パッケージ化、埋め込みの各パスを追跡し、必要な github/copilot-cli のリリースアセットを特定します。完了とは、文書化されたアーティファクト契約、およびプラットフォーム、オフライン、オーバーライド、チェックサム、キャッシュの各動作が、完了済みの作業を重複させることなく実装されていることを意味します。

索引モデルが issue の本文から書いたものです。

説明

sdk-v2

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-cli GitHub Releases rather than depending on @github/copilot npm 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.

主要言語
Java
スター
10.5k
フォーク
1.5k
平均マージ
1日 9時間
マージ済み PR(30日)
130

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

github/copilot-sdk のほかの issue

github/copilot-sdk の issue をすべて見る

似ている issue

Java の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。