johny-b
johny-b
1. Currently we score offer only once and later use this score forever, with the only exception being rare calls to `AgreementsPool.offer_recycler`. 2. There are lot of reasonable market-strategy-logic-things that...
As discussed with @shadeofblue and @stranger80: 1. `score_offer` will return `Optional[float]`. 2. `None` will indicate a rejected offer, all other offers will be treated as "good enough" - **current "if...
This PR will **not** be merged in the nearest future.
1. Decide: do we want to have `contrib` in the main tests directory? 2. Decide: do we want any minimum test coverage on `contrib`? 3. Add tests for `yapapi.strategy.contrib.provider_filter`, so...
If our MarketStrategy raises some Exception in `score_offer`: * it is not visible in screen logs in any way (although it is in the log file) * we see messages...
Event-related things that are **necessary** for an events release: * #751 * #759
There's a method: ``` async def on_agreement_terminated(self, agr_id: str, reason: dict) -> None: """Reacts to agreement termination event Should be called when AgreementTerminated event is received. """ ... ``` that...
This will be a POC-quality code, as we'll probably go towards a "general" external-data consuming library, as specified in GAP-14. Nevertheless, this will be useful for the first tests. POC...
This should probably be in the `yapapi.contrib` section.
Something like: ``` class MarketStrategy: async def accepted_amount(document: Union[DebitNote, Invoice]) -> float: # current "default" implementation return document.amount ``` Additional things that could be done within this issue: * Why...