mirror of
https://github.com/PerpetualSoftware/pad.git
synced 2026-10-27 06:47:07 +00:00
d2337fafe4
mapPlaybookRun was the one catalog mapper that built its request path from unescaped input (a survey of every /api/v1 path builder in internal/mcp found no other), so a ref of "match?" made .../playbooks/match?/run, which routed as POST /playbooks/match with the query "/run". Both segments now go through url.PathEscape, as every other mapper's do: that ref reaches the run route as match%3F and is answered as a playbook that does not exist.