feat(acquire-worker): container image + /healthz for k8s - #571
Merged
Conversation
Dockerfile (build context socioprophet-web/) copies the acquisition core it imports
from the sibling client-vue package (features/acquisition + data/{dataSources,
countries}) at their real relative paths, npm ci, runs `tsx src/server.ts`. Adds
GET /healthz + /readyz so the k8s Deployment has real liveness/readiness probes
independent of any upstream. Validated: server boots in the simulated image layout
with all cross-package imports resolved; /healthz → 200.
mdheller
force-pushed
the
feat/acquire-worker-image
branch
from
August 4, 2026 19:07
1ed46b0 to
4dba16d
Compare
…image Adds `npm run bundle` (esbuild → dist/server.cjs) that inlines the client-vue acquisition core AND undici into one self-contained CJS. The Dockerfile is now two-stage: build bundles, runtime is just node:20-alpine + server.cjs — no cross-repo tree, no node_modules in the final image. This decouples the worker's runtime from client-vue entirely and lets the image build cleanly from any CI (socbase/socioprophet/prophet-platform) without vendoring. Verified: bundle is 780KB self-contained; `node dist/server.cjs` boots, /healthz → 200.
…l repo → ghcr The robust, consistent path (matching Noetica#622 for the agent-machine, and how sherlock-search builds in-repo): build the worker image HERE via its self-contained Dockerfile (esbuild bundle, context socioprophet-web/) → ghcr.io/socioprophet/ acquire-worker (:latest+:sha) with provenance + SBOM + keyless cosign. Supersedes the prophet-platform vendor path — prophet-platform infra/k8s/acquire-worker just references the published image, no vendoring/drift. HUMAN REVIEW REQUIRED: packages:write + id-token:write.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Containerizes the governed acquisition worker for sovereign (prophet-platform) deployment.
socioprophet-web/): copies the acquisition core it imports from the sibling client-vue package (features/acquisition+data/{dataSources,countries}) at their real relative paths,npm ci, runstsx src/server.ts.Validated: server boots in the simulated image layout with all cross-package imports resolved;
/healthz→ 200. CI builds the image → referenced by the prophet-platform manifests (separate PR).🤖 Generated with Claude Code