fix(deploy): MVP smoke-test blockers — dockerignore + OpAMP endpoint default - #270
Merged
Merged
Conversation
Per-user direction: now that the asapcollector configs migrated to canonical `w` / `d` keys (sibling PR `sync-config-canonical-w-d`), the `row_num` / `col_num` fallback PR #268 added has no remaining caller. Drop it. Three sweeps: - `accumulator_factory::cms_params` — canonical keys only; `cms_params_reads_canonical_w_d_keys` test updated to drop the legacy half. - `storage_engines::sketch_db::accuracy::cms_params` — same. - `tests::accuracy_empirical_validation_tests` — six test fixtures migrated from `row_num` / `col_num` to `d` / `w` to match the helper's new contract. Remaining `row_num` / `col_num` mentions in the codebase are all internal Rust identifiers (function arguments / struct fields / locals describing the sketch matrix dimensions) — not config- parameter keys. Those are idiomatic and stay. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…default Two deploy-side bugs found while bringing up the single-node MVP demo: 1. .dockerignore: top-level `target/` rule doesn't match subdirectory `target/` paths, so per-crate caches under `data_plane/target/` and `control_plane/target/` (~700 MB after any host-side `cargo build`) get shipped into the BuildKit context. The first `docker build -f Dockerfile.backend` hit over 7 GB of `transferring backend-src:` before BuildKit canceled. Add `**/target/`, `**/.git/`, editor caches, and `**/eval-results/` so the context shrinks back to source-only. 2. control_plane: default `CONTROLLER_OPAMP_ENDPOINT` is `ws://control_plane:4320/v1/opamp` (the post-reorg crate name), but the canonical compose stack in `ASAPCollector/deploy/mvp-singlenode/docker-compose/base.yml` still names the service `controller`. The endpoint string gets baked into every emitted agent yaml under `extensions.opamp.server.ws.endpoint`, so the broken default tears down OpAMP the moment the controller pushes a fresh config. Switch the default to `ws://controller:4320/v1/opamp`. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.
Summary
Two deploy-side bugs found while bringing up the single-node MVP demo (controller → backend → gateway → 1 agent → 1 fake-exporter).
.dockerignoredoesn't exclude subdirectorytarget/dirs. The top-leveltarget/rule only matchestarget/at the build-context root, notdata_plane/target/orcontrol_plane/target/— each of those leaves ~700 MB of artefacts after any host-sidecargo build. The firstdocker build -f ASAPCollector/deploy/docker/Dockerfile.backendhit over 7 GB oftransferring backend-src:before BuildKit canceled the transfer. Adding**/target/,**/.git/, editor caches, and**/eval-results/shrinks the context back to source-only (~150 MB).CONTROLLER_OPAMP_ENDPOINTdefault uses the wrong hostname. Defaults tows://control_plane:4320/v1/opamp(the post-reorg crate name), but the canonical compose stack inASAPCollector/deploy/mvp-singlenode/docker-compose/base.ymlstill names the servicecontroller:. The endpoint string gets baked into every emitted agent yaml underextensions.opamp.server.ws.endpoint, so the broken default would tear down OpAMP the moment the controller pushes a fresh config — even if the agent had connected via the bootstrap URL. Switch the default tows://controller:4320/v1/opamp(which matches the compose service name).A full walkthrough of the smoke test (4 validation axes: controller→agent OpAMP, controller→backend streaming-config, end-to-end PromQL, sketch wire-format roundtrip) and the four remaining open issues live at
/mydata/mvp-smoke-test/REPORT.mdon the dev box.Test plan
DOCKER_BUILDKIT=1 docker build -f ASAPCollector/deploy/docker/Dockerfile.backend --build-context backend-src=ASAPQuery-backend …completes without OOM / cancelcargo run --bin control_plane(or via compose withCONTROLLER_OPAMP_ENDPOINTunset) emits agent configs whoseextensions.opamp.server.ws.endpointresolves under the compose stackbash /mydata/mvp-smoke-test/run_smoke.shshows the agent connected at/api/v1/agentsand 2 entries at/api/v1/streaming-configRelated
Companion PR in ASAPCollector: ProjectASAP/ASAPCollector#380
🤖 Generated with Claude Code