Skip to content

test(stovepipe): e2e coverage for List api - #798

Merged
mnoah1 merged 1 commit into
mainfrom
mnoah1/stovepipe-list-e2e
Oct 7, 2026
Merged

mnoah1 merged 1 commit into
mainfrom
mnoah1/stovepipe-list-e2e

Conversation

@mnoah1

@mnoah1 mnoah1 commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Why?

Verify the List RPC added in #795 against the real gRPC service and MySQL, while keeping read-contract tests independent of asynchronous ingestion workflows.

What?

Added

  • List coverage for pagination and timestamp ties, time-window defaults and boundaries, queue isolation, unknown acceptance times, and invalid requests/tokens.
  • Assertions in existing ingest workflows that List exposes lifecycle summaries, deduplication preserves acceptance time, and acceptance time matches request history.
  • RFC update marking E2E coverage complete.

Refactored

  • Move ingest scenarios from suite_test.go into ingest_test.go; keep setup/teardown and health checks in the suite, List scenarios in list_test.go, and reusable helpers in harness_test.go. This keeps infrastructure separate from behavior and makes each group easier to review.
  • Seed List fixtures through storage interfaces on dedicated queues. This makes edge cases deterministic and lets List tests run without relying on ingest tests or pipeline timing.
  • Remove transient queue-message-count assertions and use durable acknowledged offsets to verify processing. A consumer can acknowledge and garbage-collect a message before a test counts it.

No production behavior, API, or schema changes.

Test Plan

  • Full Stovepipe E2E suite passed.
  • List-only scenarios passed twice without running ingest tests.
  • Stovepipe/service unit tests and repository formatting, lint, tidy, and Gazelle checks passed.
  • Internal validator lint/coverage checks could not complete in this OSS workspace; coverage requires a missing .arcconfig.

Revert Plan

Revert this test and documentation change; runtime behavior is unchanged.

Summary:
Build on #795 with real gRPC/MySQL coverage for ingestion, deduplication, lifecycle summaries, and acceptance-time preservation. Separate suite setup, ingest workflows, focused List scenarios, and shared helpers. Seed deterministic read-path fixtures through storage interfaces on isolated queues, add polling diagnostics, and verify processing through durable acknowledgments. Mark end-to-end coverage complete in the RFC.

Revert Plan:
Revert this test and documentation change; runtime behavior is unchanged.

API Changes:
None.
@mnoah1 mnoah1 changed the title test(stovepipe): cover List end to end test(stovepipe): e2e coverage for List api Oct 7, 2026
@mnoah1
mnoah1 marked this pull request as ready for review October 7, 2026 14:51
@mnoah1
mnoah1 requested review from a team, behinddwalls and sbalabanov as code owners October 7, 2026 14:51
@mnoah1
mnoah1 enabled auto-merge October 7, 2026 14:52
@mnoah1
mnoah1 added this pull request to the merge queue Oct 7, 2026
Merged via the queue into main with commit 976898b Oct 7, 2026
29 checks passed
@behinddwalls
behinddwalls deleted the mnoah1/stovepipe-list-e2e branch October 7, 2026 17:24

This branch was previously deployed

1 inactive deployment
stack-rebase — 6df6be4f Deployed Oct 7, 2026 by mnoah1 via Rebase Stack #580
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants