feat(sdk): expose curated gateway resource capabilities
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 52/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- go, python, rust, typescript
- Bereich
- api, backend-api-design, documentation, testing
Rechercherichtung
Beginnen Sie mit der kuratierten Rust-SDK-Oberfläche und vergleichen Sie sie mit den Gateway-APIs der TypeScript-, Python- und Go-SDKs; der Rohzugriff ist über OpenShellClient::raw_grpc() und openshell_sdk::raw::proto verfügbar. Prüfen Sie, wie die protobuf-Bindings aus dem proto/-Baum durch openshell-core neu generiert werden. Als abgeschlossen gilt die Arbeit, wenn gleichwertige Fähigkeitsinformationen, Tests für befüllte und nicht vorhandene Felder sowie eine Dokumentation der statischen Semantik und des raw-protobuf-Fallbacks vorhanden sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
User Story
As an OpenShell SDK user, I want a curated gateway-capabilities API so that I can determine which portable CPU, memory, and GPU requests a gateway’s compute drivers support without depending on generated protobuf types.
Problem Statement
Issue #2902 adds static resource capability fields to the compute-driver and gateway protobuf APIs. Rust callers can already access them through OpenShellClient::raw_grpc() and openshell_sdk::raw::proto, but the curated SDK surface has no typed gateway-info method or capability models.
Impact / Why This Matters
Consumers that need an idiomatic SDK API must currently use generated wire types and direct gRPC calls. That is workable but makes application code depend on protobuf details and produces inconsistent ergonomics across SDKs.
Proposed Design
Expose gateway information and per-driver resource capabilities through each curated SDK surface. Preserve absence when a driver does not report capabilities, and document that capability flags describe static implementation support rather than live inventory or available capacity.
Acceptance Criteria
- The Rust SDK exposes a curated gateway-info method and types for CPU, memory, and GPU resource capabilities.
- The TypeScript, Python, and Go SDKs expose equivalent capability information where they provide curated gateway APIs.
- SDK tests cover populated capability fields and unreported capabilities.
- SDK documentation explains the static semantics and raw-protobuf fallback.
Alternatives Considered
Keep the new fields available only through generated protobuf clients. This preserves wire-level access but leaves users to manage generated types directly and does not provide a consistent SDK-level experience.
Agent Investigation
The Rust SDK re-exports generated protobufs through openshell_sdk::raw::proto; protobuf bindings are regenerated from the full proto/ tree by openshell-core during Rust builds. This follow-up is therefore curated API work rather than a prerequisite for protocol access.
Related to #2902 and draft PR #3010.
- Vorherrschende Sprache
- Rust
- Sterne
- 16.3k
- Forks
- 1.8k
- Ø Merge
- 2 T. 6 Std.
- Gemergte PRs (30 T.)
- 397
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus NVIDIA/OpenShell
-
bug(sdk/go): browser login callback binds 127.0.0.1 but redirect_uri uses localhostEvtl. wieder frei Ein Pull Request dazu wurde ohne Merge geschlossen. Offenstate:triage-needed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
NVIDIA/OpenShell#4518 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
state:triage-needed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug(sdk/go): edge (Cloudflare Access) token is cached for the client lifetime and never reloadedOffenstate:triage-needed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
NVIDIA/OpenShell#4515 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
state:triage-needed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
NVIDIA/OpenShell#4509 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
state:triage-needed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in NVIDIA/OpenShell
Ähnliche Issues
-
RUSTSEC-2026-0348: Brotli certificate decompression can allocate up to 1 GiB before authenticationOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 60/100
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 62/100
-
core: Amount::from_str panics on values above 21M BTC instead of returning an errorEvtl. vergeben @bhuvan-somisetty hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
crate: spate-s3
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 62/100
Maintainer antworten meist innerhalb von 1 Tag
-
write_iceberg ignores the table's write.parquet.compression-codec propertyEvtl. vergeben @YuangGao hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Eventual-Inc/Daft#7606 ·
Maintainer antworten meist innerhalb von 1 Tag