nearcore
nearcore copied to clipboard
yield/resume: separate timeout receipts in balance checker
Instead of lumping in yield timeouts with incoming receipts, gives them their own field in BalanceMismatchError.
Codecov Report
Attention: Patch coverage is 28.57143%
with 5 lines
in your changes are missing coverage. Please review.
Project coverage is 71.43%. Comparing base (
5b4d787
) to head (69ffc35
). Report is 1 commits behind head on master.
Files | Patch % | Lines |
---|---|---|
core/primitives/src/errors.rs | 0.00% | 3 Missing :warning: |
runtime/runtime/src/balance_checker.rs | 50.00% | 0 Missing and 2 partials :warning: |
Additional details and impacted files
@@ Coverage Diff @@
## master #10853 +/- ##
==========================================
- Coverage 71.44% 71.43% -0.01%
==========================================
Files 764 764
Lines 153894 153899 +5
Branches 153894 153899 +5
==========================================
- Hits 109954 109945 -9
- Misses 38939 38952 +13
- Partials 5001 5002 +1
Flag | Coverage Δ | |
---|---|---|
backward-compatibility | 0.24% <0.00%> (-0.01%) |
:arrow_down: |
db-migration | 0.24% <0.00%> (-0.01%) |
:arrow_down: |
genesis-check | 1.41% <0.00%> (-0.01%) |
:arrow_down: |
integration-tests | 36.82% <14.28%> (+0.06%) |
:arrow_up: |
linux | 70.07% <28.57%> (-0.02%) |
:arrow_down: |
linux-nightly | 70.91% <28.57%> (-0.03%) |
:arrow_down: |
macos | 54.61% <14.28%> (-0.01%) |
:arrow_down: |
pytests | 1.64% <0.00%> (-0.01%) |
:arrow_down: |
sanity-checks | 1.42% <0.00%> (-0.01%) |
:arrow_down: |
unittests | 67.15% <28.57%> (+<0.01%) |
:arrow_up: |
upgradability | 0.29% <0.00%> (-0.01%) |
:arrow_down: |
Flags with carried forward coverage won't be shown. Click here to find out more.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
So, one thing I'm not sure about is that this is modifying a borsh-encoded type, and as far as I can tell no provisions are being taken to ensure that both the old and new data can be decoded/encoded.
Important questions:
- Where does this type end up at?
- Is it protocol-version sensitive?
- What are our options to make this compatible across e.g. protocol version upgrade if so?