The initial .gitignore had 'service' as a bare pattern, which matches
the cmd/service directory and silently excluded the entire mock
implementation (~28KB of main source). Anchor the ignore patterns
to the repo root so they only match top-level build artefacts, and
force-add the real source now.