* +bump party_client +bump woody -w/o test
* add dummy ff_routing_rule with no routes, add dummy gather_route call, tests ok, dialyzer empty list warning
* add routing rule set computing call from party, add routing ruleset implementation
* fix terms check for p2p, add routing rules for withdrawal
* +bump party_client +bump woody&thrift -w/o test
* fix module structure
* fix maps fields optionality
* +bump cds_proto, scoper, machinery, dmt_client, bender_client, image
* +update code for woody tuples
* fix format
* remove unused varset
* Revert "Merge remote-tracking branch 'origin/ft/upgrade_patry' into FF-238/ft/add_table_routing"
This reverts commit 2c6aa296d09b4be1ab57319afd2220b8665f89cf, reversing
changes made to cf43d1fd0906aef5fd4d6501c191a29fc3193746.
* Revert "Merge remote-tracking branch 'origin/ft/upgrade_patry' into FF-238/ft/add_table_routing"
This reverts commit 4923fef5c351a5a3b5a5ade6d8b3aaaacb59fc63, reversing
changes made to 8d4ea1a28a6ca2d37d900b607c90f6ede63e553e.
* add routing_rule test file, add test rulesets to ct_payment_system, not working commit: ruleset cannot to be reduced to candidates
* rework routing_rule (add do/unwrap, fix resulting routes list order, fix optional/required fields issues etc)
* add PartyID to varset thrift encoding, add tests
* fix remove unused ruleset define
* add error handling for routing ruleset computing call
* remove useless rules-not-found warning, remove unused commented code
* fix unsuitable function name
* make *_routing_rules fields in payment_institution optional again
* fix unwrap's issues, remove get_routing_rules function for it's useless
* clean types
* format
* fix wrong routing_rules getting from PaymentInstitution
* wrong do_gather_routes return fix
* add priority to 'route' map in ff_routing_rule
* fix wrong validation terms in ff_withdrawal_routing
* fix dialyzer
* add rejected context logging
* don't hide errors, passing it through entire gather_routes. But for now we don't logging errors anyway, before new routing will be finished and legacy routing will be removed
* fix error naming
* more proper map value get, fix domain object get mistake
* add candidates-was-computed check (candidate predicat is constant)
* add TODO: party client bump
* fix wrong p2p call instead of withdrawal
* add weight to route() (so its field don't used for now anyway), fix issue with optional/undefined fields in ff_payment_institution
* rework terms validation
* remove provider_ref, terminal_ref from ff_routing_rule:route() for it's useless
* fix mistake with correct routes filtering - field terminal_id in p2p_transfer not required
* add warning of misconfiguration
* fix mistake of absent TerminalRef field
* format
* fix 'dont_repeat_yourself' warnings
* fix wrong pattern matching
* rework ff_routing_rule:route() type - remove useless fields, return terminal_ref field
* return RejectedContext to result of gather_routes
* try to fix tests with single provider
* fix RejectedContext/logging issues
* bump party_client_erlang, update routing rules computing call
* fix ugly function specification
* do legacy routing if no routes found after validation
* fix wrong routes validation filter in withdrawals
* add routes filtered by terms to the rejectcontext in withdrawal_routing
* add routes filtered by terms to the rejectcontext in p2p_transfer, sorting p2p_transfer providers by priority and ProviderID
* fix ugly provision_terms function in withdrawal_routing
* fix mistake with validating providers returned result
* dialyzer
* remove rejected_providers for its waste
* rework check_ruleset_computing func to make it less ugly
* remove sorting by priority from p2p_transfer for its useless at current routing rules implementation stage
* Revert "remove sorting by priority from p2p_transfer for its useless at current routing rules implementation stage"
This reverts commit 052934bee178afe6b5a14f0323584b74fc334eab.
* resolve conflict with master (identical functions naming)
* remove 'ruleset_not_found' error, as it's computation fail is impossible (assuming the dominant is consistent)
* remove unused error
* make *_routing_rules fields mandatory
* dialyzer
* p2p_transfer: return old way of terms validate (with ff_p2p_providers module using)
* format
* return validate_provider_terms function to its initial appearance
* remove unused export
* wrong function name
* Revert "return old way of terms validate (with ff_p2p_providers module using)"
* remove validate_terms_legacy - it's duplicates itself with validates_terms
* return validate_p2p_transfers_terms_legacy to just validate_terms
* wrong validate_terms function use
* remove unused
* wrong spec
Co-authored-by: dinama <dinama@users.noreply.github.com>
* Disable lazy party creation
* Add new return type to function spec
* Upgrade fistful_proto
* Throw PartyNotFound error if nessesary
* Test that lazy party creation doesn't work anymore
* Uncomment tests
* Pass Context directly
(cherry picked from commit bfc88dcb37)
* fix service url
* fix authData on Sender thrift
* drop get_default_termset on wapi_thift_SUITE
* rename service w2w_transfer to fistful_w2w_transfer
* rename service p2p_transfer to fistful_p2p_transfer
* rename service p2p_session to fistful_p2p_session
* sys.config service url examples
* Disable lazy party creation
* Add new return type to function spec
* Upgrade fistful_proto
* Throw PartyNotFound error if nessesary
* Test that lazy party creation doesn't work anymore
* Uncomment tests
* Pass Context directly
* add test, only one test works, save commit
* add tests, some tests doesn't works, save commit
* rest of tests done, fix w2w backend/thrift_handler
* add test helpers to reduce code size
* fix
Co-authored-by: y.beliakov <y.beliakov@rbkmoney.com>