PV-agent bridge (D25/M4.1): Odoo stays the system of record; the
standalone, KB-bound knowledge service (pv-agent) reviews plausibility
and returns evidence-backed answers (mode=review, agent API v1). No
back path: the agent never calls Odoo and receives no personal data —
only the minimized, schema-bound review context.
- context builder: projects a computed draft payslip with an
ATP_PRAMIE input (planned one-off payout) onto the review context
(facts + computation): gross wage (hr.version.wage), applying
collective agreement (version.kv_id) and the draft's DG/LST lines
(SVDG_*/LST_*/FLAFDB/KOMMST/DZ/BVG/WIEN_DAG)
- client (stdlib urllib, no extra dependency): POST /v1/ask with
X-Request-ID, bearer key from company settings (pv_agent_url /
pv_agent_api_key, group_hr_payroll_user); neutral UserErrors,
technical details only in the server log
- review wizard on the draft payslip: agent answer (evidence-backed),
structured verdict (plausible / implausible / not checkable) and
checks in the dialog
- security: wizard bound to hr_payroll.group_hr_payroll_user; agent
service key stored on res.company, never logged; 5 tests