Toolverse
Wszystkie skille

gen-rust

autor: MoonshotAI

Synchronizuj implementację Rust z zmianami w Pythonie – automatycznie portuj logikę i testy

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Wyświetlenia
2

O skillu

Umiejętność do synchronizacji kodu Rust (kagent) z aktualizacjami Python (kimi_cli). Przegląda ostatnie zmiany, mapuje moduły, przenosi logikę biznesową i aktualizuje testy – pomijając interfejs użytkownika i uwierzytelnianie. Zapewnia, że zachowanie i testy w obu wersjach pozostają identyczne, z zachowaniem dokładnych komunikatów błędów i formatów wyjścia.

Jak używać

  1. Rozpocznij od przeglądu zmian w Pythonie. Sprawdź zmiany przygotowane do zatwierdzenia poleceniem git diff --cached -- src packages, a następnie ostatnie commity za pomocą git log --oneline -20 -- src packages. Przejrzyj plik CHANGELOG.md, aby zrozumieć kontekst zmian.

  2. Sklasyfikuj zmiany, które wymagają synchronizacji. Odfiltruj zmiany związane z interfejsem użytkownika (Shell, Print, ACP UI) oraz logowaniem i uwierzytelnianiem – te nie muszą być portowane. Wszystkie pozostałe zmiany w logice biznesowej, narzędziach i utilitach muszą być odzwierciedlone w Rust.

  3. Zmapuj strukturę katalogów z Pythona na Rust, korzystając z ustalonego schematu: moduły z src/kimi_cli/ trafiają do rust/kagent/src/, a pakiety z packages/kosong/ i packages/kaos/ do odpowiadających im katalogów w Rust.

  4. Przenieś logikę do Rust, zwracając szczególną uwagę na dokładne dopasowanie komunikatów błędów, tekstów wyjścia narzędzi i typów zwracanych danych. Upewnij się, że kolejność elementów i formatowanie (tekst vs części) są identyczne jak w Pythonie.

  5. Zaktualizuj testy w Rust, aby pokrywały te same scenariusze co testy Python. Sprawdź, czy asercje testowe porównują identyczne stringi i struktury danych.

  6. Użyj narzędzia rg do wyszukania istniejących analogów i referencji w kodzie Rust, aby uniknąć duplikacji i zachować spójność z już zaimplementowanymi rozwiązaniami.

Podobne skille