Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[v2] Consolidate runtime discovery, acquisition, and embedding

Đang mở
#2,524 2 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
github, go, python, rust

Hướng nghiên cứu

Bắt đầu bằng việc xem xét #1934 và xác định #2395, #2463 và #2505 đã bao phủ những gì, cùng với commit được tham chiếu 05dd60e. Truy vết các đường dẫn thu thập runtime, đóng gói và nhúng trên các SDK bị ảnh hưởng, đồng thời xác định mọi release asset bắt buộc của github/copilot-cli. Được xem là hoàn tất khi contract của artifact được ghi nhận và các hành vi về nền tảng, offline, override, checksum và cache được triển khai mà không trùng lặp với phần việc đã hoàn thành.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

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.

Ngôn ngữ chính
Java
Star
10.5k
Fork
1.5k
Merge trung bình
1 ngày 9 giờ
Pull request đã merge (30 ngày)
130

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của github/copilot-sdk

Tất cả issue của github/copilot-sdk

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.