let check logs w =
let timeout = Wp_parameters.Timeout.get () in
let stdout = Buffer.create 80 in
let goal = PO.make L_why w in
Logs.add_file logs goal ;
let args = [| "--type-only" ; goal|] in
Logs.command logs "why" args;
Task.command ~timeout ~stdout "why" args
>>? Logs.output logs stdout
>>= fun res ->
if res = 0 then Task.return Valid else Task.return Invalid