hyperlight-dev / hyperlight-dev/hyperlight-sandbox
.NET SDK binding for register_credential
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 73
- Forks
- 7
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 23
Description
Follow-up from #89 (Scoped credentials for outgoing HTTP).
The .NET SDK has no FFI surface for register_credential yet (Python is done). A faithful binding must:
- Marshal a C# delegate across the C-ABI as the resolver callback.
- Keep a GC root on the
Func<string>for the sandbox's lifetime. - Map any .NET exception thrown from the delegate back to Rust as the redacted
Err(String)— without letting the exception message ride across the boundary.
A constrained first cut (FFI accepting only a static token, mapped onto CredentialEntry::with_static_resolver) is feasible in isolation, but was deliberately deferred so the .NET surface can be designed around the callback shape from day one rather than a static-only stub that would later need a breaking rename.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the existing Python binding and issue #89, then trace register_credential and CredentialEntry::with_static_resolver. Define the .NET callback shape, lifetime handling, and redacted exception mapping; done means the .NET FFI surface supports resolver callbacks without exposing exception messages across the C ABI.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, rust
- Domain
- api, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100