Its own service, on purpose
SignFlow is a separate repository and a separate hardened service rather than a module inside the portals. That is a security boundary, deliberately drawn: the code that touches signature material and PDF internals does not share an attack surface with a public web UI that accepts uploads from strangers.
PDF parsing is a notoriously rich source of memory bugs. Putting it behind its own door, with its own blast radius, is cheap now and very expensive to retrofit later.