We used AI to help show how campaign promises were targeted at particular seats, with marginal seats and seats held by the same party as the one making the promises being hugely overrepresented. Here’s how we did it and what we’d do differently next time around