ESB index-change queue has no producer in main code and no unit test; artemis test dependency is unused #19

Open
opened 2026-10-01 22:50:50 +00:00 by KofTwentyTwo · 0 comments
KofTwentyTwo commented 2026-10-01 22:50:50 +00:00 (Migrated from github.com)

Summary

CarlQBits.java:120-139 registers an Artemis ESB trigger on queue carlIndexChanges that runs carlRefreshSearchIndex as carl-index-service. Nothing in src/main publishes to that queue; docs/QBITS.md:31 describes an external producer contract. The 30-second CarlIndexRefresh reconciliation does the actual indexing. artemis-jakarta-server is a test-scoped dependency (pom.xml:27) that no test under src/test references; the only exercise is scripts/e2e/CarlQBitsVisualFixture.java:118-123,236 against an embedded broker.

Suggested resolution

Either add the producer (publish on transaction or balance commit) and a Testcontainers or embedded-broker test under src/test, or remove the ESB trigger and the unused dependency until a producer exists.

Priority rationale

P2: shipped integration with no in-repo producer or test.


Filed from the 2026-10-01 real-versus-fake audit of Carl (branch feature/cicd-liquibase-gitops, HEAD 5414d7a, main 1b334d1). Four read-only reviews covered domain and services, QQQ metadata and data model, tests/CI/evidence, and docs/integrations. A local offline build of a Carl copy against the installed foundation 0.5.0-SNAPSHOT is in progress; its result will be added as a comment. Existing issues #3, #4 and #5 (real Monarch accounts, Authentik with real data, CI/CD with Liquibase and ArgoCD) are referenced rather than duplicated.

## Summary `CarlQBits.java:120-139` registers an Artemis ESB trigger on queue `carlIndexChanges` that runs `carlRefreshSearchIndex` as `carl-index-service`. Nothing in `src/main` publishes to that queue; `docs/QBITS.md:31` describes an external producer contract. The 30-second `CarlIndexRefresh` reconciliation does the actual indexing. `artemis-jakarta-server` is a test-scoped dependency (`pom.xml:27`) that no test under `src/test` references; the only exercise is `scripts/e2e/CarlQBitsVisualFixture.java:118-123,236` against an embedded broker. ## Suggested resolution Either add the producer (publish on transaction or balance commit) and a Testcontainers or embedded-broker test under `src/test`, or remove the ESB trigger and the unused dependency until a producer exists. ## Priority rationale P2: shipped integration with no in-repo producer or test. --- Filed from the 2026-10-01 real-versus-fake audit of Carl (branch `feature/cicd-liquibase-gitops`, HEAD `5414d7a`, main `1b334d1`). Four read-only reviews covered domain and services, QQQ metadata and data model, tests/CI/evidence, and docs/integrations. A local offline build of a Carl copy against the installed foundation 0.5.0-SNAPSHOT is in progress; its result will be added as a comment. Existing issues #3, #4 and #5 (real Monarch accounts, Authentik with real data, CI/CD with Liquibase and ArgoCD) are referenced rather than duplicated.
This repo is archived. You cannot comment on issues.
1 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: KofTwentyTwo/carl#19