atharvalade opened a new pull request, #2698:
URL: https://github.com/apache/iggy/pull/2698

   ## Which issue does this PR close?
   
   Closes #2627
   
   ## Rationale
   
   The C# SDK is missing the get_snapshot API method, which is needed for 
feature parity with the Rust client.
   
   ## What changed?
   
   The C# SDK had no way to capture system state snapshots. Both TCP and HTTP 
clients now lacked the GetSnapshotAsync method, and the 
SnapshotCompression/SystemSnapshotType enums used implicit 0-based values that 
didn't match the Rust binary wire protocol codes.
   
   Added GetSnapshotAsync to the IIggySystem interface with TCP (binary 
serialization) and HTTP (JSON + binary ZIP response) implementations. Assigned 
explicit integer values to both enums to match Rust's as_code()/from_code() 
mappings. Added an integration test validating ZIP archive responses for both 
protocols.
   
   ## Local Execution
   
   Passed, all 55 unit tests pass, SDK and integration test projects build with 
0 warnings/0 errors
   Pre-commit hooks not ran, prek not installed, this is a C#-only change (no 
Rust modifications)
   
   ## AI Usage
   
   Claude Opus 4.6
   Minimal, used for general function scaffolding and verifying binary format 
alignment against the Rust source
   Verified by cross-referencing every enum value, byte layout, and JSON format 
against the Rust server source code byte-by-byte; ran full build and unit test 
suite locally
   Yes I can explain every line
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to