Difference between revisions of "Update Status"
Jump to navigation
Jump to search
(Created page with "<div style="float: right"><include iframe src="https://www.lucidchart.com/documents/embeddedchart/b4dcbb56-3b87-4f56-b249-dfd4276c7cc4" width="300" height="800" frameborder="0...") |
|||
Line 8: | Line 8: | ||
# Update the status for any split outBailments which exist: | # Update the status for any split outBailments which exist: | ||
− | ## Split outBailments have more than one item in their <code> | + | ## Split outBailments have more than one item in their <code>outpoints</code> array and have an existing <code>status</code> value of "success". |
## Change the <code>status</code> for all split outBailments from "success" to "split". | ## Change the <code>status</code> for all split outBailments from "success" to "split". | ||
# Update the status for any partial outBailments which exist: | # Update the status for any partial outBailments which exist: |
Revision as of 10:13, 23 October 2014
Initial Conditions
- Every outBailmentID in the output list provided has a non-nil
status
value in the withdrawal status object.
Sequence
- Update the status for any split outBailments which exist:
- Split outBailments have more than one item in their
outpoints
array and have an existingstatus
value of "success". - Change the
status
for all split outBailments from "success" to "split".
- Split outBailments have more than one item in their
- Update the status for any partial outBailments which exist:
- Partial outBailments have existing
status
value of "partial-". - Calculate the total missing value needed to satisfy the partial outputs.
- The missing value of an outBailment is the originally-requested size of the outBailment minus the sum of all outputs created to satisfy it (if any exist).
- Obtain a list of eligible inputs from the next un-thawed series and calculate their total value.
- If the eligible value of the next un-thawed series is greater than the total missing value, then the next un-thawed series is the target series.
- If not, repeat the above process while keeping a running total of eligible value until a target series is located.
- Append the number of the target series to the
status
value for every partial series.
- Partial outBailments have existing
- Update the
nextinputstart
value.- If the input stack is empty,
nextinputstart
is the first address identifier for the next un-thawed series. - If the input stack is not empty,
nextinputstart
is the address identifier for the next input in the stack.
- If the input stack is empty,