We recently added LAVA threaded conversation views across the chat artifacts (see #1645, #1647, #1648). Every direction column we shipped was verified against real test data before merging. A wrong directionSentValue doesn't crash anything, it silently flips who said what, and that is not acceptable for a forensic tool. So the artifacts below are on hold until we can verify them the same way.
Here is what is left and what each one needs:
How to help: if you have (or can generate) a test extraction for any of these apps where you know the ground truth of who sent what, drop a note here. The validation itself is quick: we run the artifact against your data and confirm the sent/received split matches what you know to be true. That's it.
If you want to see the pattern these conversions follow, #1647 and #1648 are good examples, including how we derive direction from account owner data already inside the evidence.
We recently added LAVA threaded conversation views across the chat artifacts (see #1645, #1647, #1648). Every direction column we shipped was verified against real test data before merging. A wrong
directionSentValuedoesn't crash anything, it silently flips who said what, and that is not acceptable for a forensic tool. So the artifacts below are on hold until we can verify them the same way.Here is what is left and what each one needs:
vipps.py) - The direction value comes straight from the app's JSON and we don't know its vocabulary (could beINCOMING/OUTGOING,IN/OUT, something else). Needs a Vipps extraction where the examiner knows which messages were sent and which were received.pingertextfree.py) - Same situation.ZDIRECTIONis emitted raw from the database and the value set is unverified. Needs a Text Free extraction with known sent/received messages.imoHD_Chat.py) - Direction is already verified (Message Status= Sent/Received), but there is no thread column on sent rows. The fix is plumbing thebuidthrough the query as a Chat Partner column. This one is a dev task, test data exists.BeReal.py) - Textbook fit for the view (Thread ID, Direction, Sender all present). On hold only to avoid conflicting with the open BeReal rework in Fix BeReal artifact runtime errors and improve parser robustness #1637. Once that lands, the view is a metadata-only addition.How to help: if you have (or can generate) a test extraction for any of these apps where you know the ground truth of who sent what, drop a note here. The validation itself is quick: we run the artifact against your data and confirm the sent/received split matches what you know to be true. That's it.
If you want to see the pattern these conversions follow, #1647 and #1648 are good examples, including how we derive direction from account owner data already inside the evidence.