Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Live read-only smoke tests against the real Bitpin API

Aperta
#4 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
github-actions, go, python, typescript
Ambito
api, testing

Direzione di ricerca

Start with the existing pytest live marker and the fixtures/ directory; the issue also calls for equivalent TypeScript and Go suites and a scheduled GitHub Actions workflow using the live environment. First map the existing mocked endpoint tests and fixture shapes. Done means the listed read-only HTTP and WebSocket checks validate response shapes, refuse write endpoints, and the opt-in suites and approved scheduled workflow pass; progress is blocked on Bitpin credentials and a reviewed live environment.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement go python spec testing typescript

Why

Every test today replays the synthetic responses in fixtures/ with mocked HTTP. That proves the SDK handles the shapes we expect, but not that the server still returns them. Bitpin has no sandbox, so the only way to catch drift (renamed fields, changed limits, new error codes) is a small suite against the real API.

There is no API key for this yet, so this is blocked until one exists.

Scope

  • Read-only only. No order, cancel, withdraw or OTP call, ever. The suite must refuse to run if it detects any write endpoint.
  • Public endpoints: currencies, markets, networks, tickers, order book, recent trades, candles.
  • Private reads with a dedicated, IP-restricted, zero-balance key: commissions, market suspensions, open orders, fills, order history, wallets, bank accounts, currency networks, deposits, withdrawals, ws-info.
  • WebSocket: subscribe to one public channel and one private channel, receive one message each.
  • For each response: parse it with the SDK, and validate it against the shape of its fixture in fixtures/ (same keys, same types).

How

  • Python: pytest -m live (the marker already exists and is excluded by default). TypeScript and Go get the equivalent opt-in suites.
  • Credentials from BITPIN_API_KEY / BITPIN_SECRET_KEY, never committed.
  • A scheduled, manually approved GitHub Actions workflow (environment: live, secrets only there), daily at most, so it stays far below the 3/min authenticate limit. Never on pull requests.
  • On drift: open an issue with the endpoint, the expected and actual shape, and a suggested fixture update (see the sync-with-core and add-endpoint skills).

Needed from Bitpin

  • A dedicated API key pair with no funds, restricted to the CI runner's egress IP (or a self-hosted runner)
  • A live environment in this repo holding the key, with required reviewers

Done when

  • pytest -m live passes locally with the key
  • The TypeScript and Go live suites pass
  • The scheduled workflow runs green and reports drift as issues
Lingua principale
Python
Stelle
0
Fork
0
Merge medio
28m
PR unite (30g)
20

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di bitpin-dev/bitpin-sdk

Tutte le issue di bitpin-dev/bitpin-sdk

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.