v1.16.0 — Deterministic boussole and unified run identity
Deterministic boussole and unified run identity
Six items building toward a boussole an agent can act on directly, plus a unified run identity.
New
etat: a deterministic verdict object (pret_a_agir,niveau_confiance,
raisons) at the JSON root, synthesizing authentication, session drift,
citizenship caps, and console/JS errors into one read.operation_id: a single UUID generated once per run, isolating all
temporary files under/tmp/diwall/<operation_id>/and shared with the
operations journal — replaces two independent, inconsistent identities.- Passive WAF detection:
citoyennete.waf_bloquantsflags a likely block
(HTTP 403/429 or known keywords) as a non-fatal signal — never an exception.
Diwall reports the friction; it does not arbitrate access. erreurs_console: capturesconsole.error(...)calls, distinct from
uncaught JS exceptions (erreurs_js).citoyennete.indice_agressivite: ratio of mutating to total actions per
run, logged in the operations journal.
Fixed
--stealthwas non-functional since v1.15.0. The installed
playwright-stealth2.x removed thestealth_syncfunction this project
called; the import failed silently andboussole.stealth_actifreported
trueregardless. Fixed to use the currentStealth().apply_stealth_sync()
API, andstealth_actifnow reflects real application, not just the flag.
Verified: fingerprint-detection failures on a public bot-detection benchmark
dropped from 12 to 0 with the fix applied.