Skip to content

[Advanced] Go client for contextio-sdk (feature parity with the TS SDK) #2

Description

@Eras256

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions