Context
Same gap as the Python client issue, for Go: contextio-sdk (packages/sdk/src/client.ts) only exists in TypeScript today.
Scope
A Go module mirroring the real, current surface of ContextioClient:
Challenge(address string) (WalletChallenge, error)
Verify(...) (WalletSession, error) (same input shape as the TS verify())
WithSession(session) — client bound to an existing session
Treasury(), Obligations(), Decisions(), Propose(), Legal()
WellKnownLegalContext(domain)
SEP-53 signing is out of scope — accept a caller-supplied signing function; do not reimplement Stellar keypair signing.
Acceptance criteria
- A real Go module (
go.mod) under this repo, e.g. packages/sdk-go/.
- A runnable example (
cmd/example or similar) completes challenge → verify → treasury() → obligations() against the live public testnet demo API (https://contextio-api.fly.dev).
- Unit tests cover request/response shapes with mocked HTTP.
- README documents install + the runnable example.
References
packages/sdk/src/client.ts, packages/sdk/src/types.ts for the exact shapes to mirror.
Context
Same gap as the Python client issue, for Go:
contextio-sdk(packages/sdk/src/client.ts) only exists in TypeScript today.Scope
A Go module mirroring the real, current surface of
ContextioClient:Challenge(address string) (WalletChallenge, error)Verify(...) (WalletSession, error)(same input shape as the TSverify())WithSession(session)— client bound to an existing sessionTreasury(),Obligations(),Decisions(),Propose(),Legal()WellKnownLegalContext(domain)SEP-53 signing is out of scope — accept a caller-supplied signing function; do not reimplement Stellar keypair signing.
Acceptance criteria
go.mod) under this repo, e.g.packages/sdk-go/.cmd/exampleor similar) completes challenge → verify → treasury() → obligations() against the live public testnet demo API (https://contextio-api.fly.dev).References
packages/sdk/src/client.ts,packages/sdk/src/types.tsfor the exact shapes to mirror.