← Back to Documentation

Verification Suite

Run verification scenarios and parity checks to confirm the engine produces expected results for your inputs.

93 scenarios

Mar 2 is the first long-term day after a leap-day acquisition

A lot acquired on Feb 29 does not become long-term until Mar 2 of the following year.

Sale is classified as long-term

One sale can span multiple tax lots

A sale larger than the first lot should fully consume that lot and partially consume the next lot in deterministic order.

First lot is fully consumed for 5 shares
Second lot is partially consumed for 3 shares

Optimized sells LT gains before ST gains

When you're in the gains zone, optimized lot selection sells long-term gains first because LT rates beat ST rates.

First lot sold is long-term
First lot gain = $550

Feb 29 acquisition stays short-term through Mar 1

A lot acquired on Feb 29, 2024 is still short-term on both Feb 28 and Mar 1, 2025. Mar 2 is the first long-term day.

Still short-term on Mar 1, 2025

All four lot-selection buckets in correct order

Optimized lot selection should consume short-term losses first, then long-term losses, then long-term gains, and finally short-term gains.

First lot is a short-term loss
Last lot is a short-term gain

Biggest loss goes first within a bucket

Within the same tax bucket, optimized lot selection should choose the lot with the greatest tax benefit first.

The larger loss is sold first

FIFO preserves insertion order for same-day lots

When two lots share the same acquisition date, FIFO should sell the lot that was inserted first. This keeps same-day ordering deterministic instead of arbitrary.

FIFO uses the first inserted lot

LIFO reverses insertion order for same-day lots

When two lots share the same acquisition date, LIFO should sell the most recently inserted lot first. This preserves deterministic tie-breaking for same-day positions.

LIFO uses the last inserted lot

HIFO is blind to tax character

HIFO picks the highest cost basis lot regardless of whether it's LT or ST. This can be suboptimal compared to the optimized method.

Picks highest cost basis ($99.95)

FIFO and LIFO produce different gains

FIFO sells the oldest lot first (LT gain), LIFO sells the newest first (ST gain). Same lots, different tax outcomes.

FIFO: first lot is long-term