diff --git a/app/lib/dup/indexer.js b/app/lib/dup/indexer.js index 84bbc11a0555c79ca6eb1d68f81d30cbc4c344f1..4289d94e0294aa5ac4daa8bcd13d54f486f9a53c 100644 --- a/app/lib/dup/indexer.js +++ b/app/lib/dup/indexer.js @@ -233,8 +233,8 @@ const indexer = module.exports = { unlock: txObj.unlocks[k], amount: input.amount, base: input.base, - consumed: true, conditions: null, + consumed: true, txObj: txObj }); k++; @@ -253,8 +253,8 @@ const indexer = module.exports = { locktime: obj.locktime, amount: output.amount, base: output.base, - consumed: false, conditions: output.conditions, + consumed: false, txObj: obj }); } @@ -713,6 +713,7 @@ const indexer = module.exports = { amount: ENTRY.amount, base: ENTRY.base }); + ENTRY.conditions = reduce(reducable).conditions; // We valuate the input conditions, so we can map these records to a same account ENTRY.available = reduce(reducable).consumed === false; })); diff --git a/doc/Protocol.md b/doc/Protocol.md index bb6e3012b8c5a0daf52ee661787e7324c301fddf..d765e2432a48243116b36b187a3f16e6dea81717 100644 --- a/doc/Protocol.md +++ b/doc/Protocol.md @@ -2027,11 +2027,13 @@ Else: EndIf -####### BR_G46 - ENTRY.available +####### BR_G46 - ENTRY.available and ENTRY.conditions For each `LOCAL_SINDEX[op='UPDATE'] as ENTRY`: - ENTRY.available = REDUCE(GLOBAL_SINDEX[identifier=ENTRY.identifier,pos=ENTRY.pos,amount=ENTRY.amount,base=ENTRY.base]).consumed == false + INPUT = REDUCE(GLOBAL_SINDEX[identifier=ENTRY.identifier,pos=ENTRY.pos,amount=ENTRY.amount,base=ENTRY.base]) + ENTRY.conditions = INPUT.conditions + ENTRY.available = INPUT.consumed == false ####### BR_G47 - ENTRY.isLocked