Roman Gromov C++ web systems architect & software engineer
Plan działań
Funkcja
Maksymalny
Zaplanowane

Sapphire IPC: protokół i wielojęzyczne SDK dla zewnętrznych deweloperów

Wersjonowany IPC i SDK umożliwią rozszerzanie Sapphire I.C.D.S. z C, C++, Go, Rust, Zig i innych języków bez dostępu do zamkniętego rdzenia.
0%
Typ
Funkcja
Priorytet
Maksymalny
Cel
02.08.2026
Postęp
0%

Treść

Cel

Zbudować stabilny, wersjonowany i bezpieczny IPC, przez który zewnętrzni deweloperzy mogą tworzyć moduły, usługi i integracje bez dostępu do zamkniętego rdzenia C++.

Pierwsza linia SDK obejmie C, C++, Go, Rust i Zig; kolejne języki będzie można dodawać bez zmiany protokołu bazowego.

Etapy

  1. Kontrakt: lifecycle, handshake, version negotiation, request/response, events, correlation IDs, timeouts, cancellation i error model.
  2. Lokalny transport i framing, limity wiadomości, backpressure i reconnect.
  3. Uwierzytelnianie, capability scopes, validation, rate limits, audit i bezpieczna obsługa niezaufanych payloads.
  4. Canonical C ABI i SDK dla C/C++, Go, Rust i Zig.
  5. Headers/packages, build integration, templates, examples, diagnostics i documentation.
  6. Contract tests, fuzzing, version mismatch i hardening persistent runtime.

Kryteria

  • Specyfikacja IPC v1 i versioning policy.
  • Reference implementation po stronie Sapphire.
  • Oficjalne wsparcie co najmniej C, C++, Go, Rust i Zig.
  • Spójne errors, lifecycle i cancellation semantics.
  • Co najmniej jeden external module end-to-end bez linkowania do zamkniętego rdzenia.
  • Examples, tests i developer documentation.

Termin: 2 sierpnia 2026.