[confirmed]Sindbad v. draw replacement/triggers

Describe the Bug:
Sindbad doesn't know how to find the card it just drew, and instead picks one that's usually correct in simple cases (but even that much is mostly accidental).
Most easily demonstrated when combined with a draw replacement effect or trigger, like Pursuit of Knowledge. Draw a card normally, then activate Sindbad and replace the draw with Pursuit, and Sindbad will reveal and (if it's not a land) discard the normally-drawn card.
Which card behaved improperly?
Sindbad.
Which update are you using? (date, name)Which type? (duel, gauntlet, sealed deck)
Dev master head, 6aea165.
What exactly should be the correct behavior/interaction?
Look at the card that it draws in the first half of its effect, and only that card. draw() returns its index. Trying to infer it by picking the card in hand that was drawn this turn that happens to have the highest index is plain wrong; card indices aren't guaranteed to be assigned in strictly increasing order (especially late in a long game), and STATE_DRAWN_THIS_TURN stays on cards until end of turn.
Also, it gets this ruling wrong: 9/25/2006: If the draw is replaced by another effect, none of the rest of Sindbad's ability applies, even if the draw is replaced by another draw (such as with Enduring Renewal).
Are any other cards possibly affected by this bug?
Fa'adiyah Seer, of course.
The miracle mechanic finds its card almost the same way, except it picks the card in hand drawn this turn with the lowest internal index. Again, the right card is reliably provided (this time in trigger_cause_controller/trigger_cause) and ignored.
Jandor's Ring uses the exact same scheme to find the "most recently drawn card" that Sindbad does, but doesn't have a simple solution like the above do, so separate bug.
Sindbad doesn't know how to find the card it just drew, and instead picks one that's usually correct in simple cases (but even that much is mostly accidental).
Most easily demonstrated when combined with a draw replacement effect or trigger, like Pursuit of Knowledge. Draw a card normally, then activate Sindbad and replace the draw with Pursuit, and Sindbad will reveal and (if it's not a land) discard the normally-drawn card.
Which card behaved improperly?
Sindbad.
Which update are you using? (date, name)Which type? (duel, gauntlet, sealed deck)
Dev master head, 6aea165.
What exactly should be the correct behavior/interaction?
Look at the card that it draws in the first half of its effect, and only that card. draw() returns its index. Trying to infer it by picking the card in hand that was drawn this turn that happens to have the highest index is plain wrong; card indices aren't guaranteed to be assigned in strictly increasing order (especially late in a long game), and STATE_DRAWN_THIS_TURN stays on cards until end of turn.
Also, it gets this ruling wrong: 9/25/2006: If the draw is replaced by another effect, none of the rest of Sindbad's ability applies, even if the draw is replaced by another draw (such as with Enduring Renewal).
Are any other cards possibly affected by this bug?
Fa'adiyah Seer, of course.
The miracle mechanic finds its card almost the same way, except it picks the card in hand drawn this turn with the lowest internal index. Again, the right card is reliably provided (this time in trigger_cause_controller/trigger_cause) and ignored.
Jandor's Ring uses the exact same scheme to find the "most recently drawn card" that Sindbad does, but doesn't have a simple solution like the above do, so separate bug.