call_runner doesn't report the signer sessions it opens
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 22/100
Piste de recherche
Start from call_runner and the LivePaymentSession class, where the signer sessions are opened and where auth_id would be read. The change is already in progress as eliteprox/livepeer-python-gateway#5 and needs re-submission against main, so check with maintainers before writing code. Read RunnerSelectionCursor too, since failover after a signed payment is a known limit tracked in #70. Done means the on_payment_session callback fires before each paid request, auth_id is returned from the State and state keys, and callers who omit the callback see no change.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
A caller of call_runner can't tell which signer sessions a call opened. That matters because the remote signer charges when it signs a payment, not when the runner delivers. A gateway that bills its users, or reconciles against Clearinghouse Batteries, has to link each charge to a call, including calls that failed after the payment was signed. The signer records each charge under the session's AuthID, but call_runner keeps its sessions private.
Proposed change
eliteprox/livepeer-python-gateway#5 adds two things:
call_runner(..., on_payment_session=callback)callscallback(session)for each session the signer signs, before the paid request is sent.LivePaymentSession.auth_idreturns that session'sAuthID. It reads go-livepeer'sStatekey and livepeer/node'sstatekey.
Callers that don't pass the callback see no change. The PR adds 17 tests, covering repeated 402s, a runner failure after payment, a refused session and a cancelled call.
It replaces #71, which was closed so the change could target the fork's releases/m2. That branch matches main, and GitHub reports no conflicts. Could it come back here as a PR against main?
Known limit
RunnerSelectionCursor still fails over after a signed payment, so one job can pay twice. #70 tracks that.
Why we need it
The Network Engineering SPE build track matches each job attempt to Batteries usage by auth_id. Until this is released, the build track pins the fork.
- Langage dominant
- Python
- Étoiles
- 1
- Forks
- 8
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de livepeer/livepeer-python-gateway
-
call_runner rejects a top-level JSON array, so a runner cannot pass one throughPeut-être pris @rickstaa l’a pris il y a 60 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
livepeer/livepeer-python-gateway#64 · 1 commentaire ·
-
Align pricing terminology: pixels_per_unit -> pricing_unit_size (track go-livepeer #3942)Peut-être à nouveau libre Une pull request pour cette issue a été fermée sans être fusionnée. OuverteImprovement
Difficulté 1/5 Moins d'une heure Accessibilité débutants 68/100
livepeer/livepeer-python-gateway#27 · 1 commentaire ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
trickle_publisher: `_resolve_next_seq` fallback drops first video segment + logs noisy warningPeut-être à nouveau libre Une pull request pour cette issue a été fermée sans être fusionnée. Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 70/100
livepeer/livepeer-python-gateway#12 · 1 commentaire ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
livepeer/livepeer-python-gateway#70 · 2 commentaires ·
Toutes les issues de livepeer/livepeer-python-gateway
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
lidofinance/diffyscan#239 ·
Les mainteneurs répondent en général sous 1 jour
-
docs: the dev-setup table and AGENTS.md name the reviewed_by guard that CI's Changelog job runsOuvertearea: tools documentation good first issue ready for a contributor
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
eyalgolan/statecraft-israel#873 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
GET rooms API returns 500 due to nonexistent Room.is_active attributePeut-être pris @Mars-60 l’a pris aujourd’hui. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
Les mainteneurs répondent en général sous 1 jour
-
Add cover art to song rowsOuverteenhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 5 jours
-
Harmony OPeNDAP SubSetter (HOSS) Geographic production rssmif16d 7 XYZ_PROV
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
nasa/harmony-autotester#341 ·