Skip to content

test: add scalable fleet integration coverage#39

Open
soupat wants to merge 2 commits into
mainfrom
scalable-fleet-integration-tests
Open

test: add scalable fleet integration coverage#39
soupat wants to merge 2 commits into
mainfrom
scalable-fleet-integration-tests

Conversation

@soupat
Copy link
Copy Markdown
Collaborator

@soupat soupat commented May 21, 2026

Summary

  • Add 200-device NATS-backed large-fleet integration coverage for discovery, label histograms, truncation, drill-down schema expansion, heterogeneous fleets, invoke_many, ESTOP aliasing, broadcast, where, fire_at, and correlation subscriptions.
  • Add subscription semantics coverage and implementation for live top-level event(...) selectors versus snapshot device(...).event(...) selectors.
  • Add edge predicate hardening for startup warnings, bounded predicate evaluation, and fail-closed behavior.
  • Update public discovery docs, server CLI docs, and add a release-facing test summary for discovery and operations coverage.

Testing

  • git diff --check
  • python -m py_compile packages/device-connect-agent-tools/device_connect_agent_tools/tools.py packages/device-connect-edge/device_connect_edge/device.py packages/device-connect-edge/tests/test_device_where.py tests/tests/test_tools_broadcast.py tests/tests/test_tools_large_fleet_invoke.py tests/tests/test_tools_large_fleet_heterogeneous.py
  • pytest packages/device-connect-agent-tools/tests/test_subscribe.py packages/device-connect-agent-tools/tests/test_broadcast.py -q -> 32 passed in 0.35s
  • pytest packages/device-connect-edge/tests/test_device_where.py packages/device-connect-edge/tests/test_predicate.py -q -> 19 passed in 0.23s
  • pytest tests/tests/test_tools_broadcast.py --backend=nats -q --tb=short --log-cli-level=CRITICAL -> 12 passed, 12 skipped in 49.53s
  • pytest tests/tests/test_tools_invoke.py::test_scalable_fleet_discovery_and_invoke_many tests/tests/test_tools_large_fleet_discovery.py tests/tests/test_tools_large_fleet_invoke.py tests/tests/test_tools_large_fleet_broadcast.py tests/tests/test_tools_large_fleet_heterogeneous.py --backend=nats -q --tb=short --log-cli-level=CRITICAL -> 18 passed in 37.05s

Adds NATS-backed large-fleet integration coverage for discovery, schema compaction and drill-down, heterogeneous fleets, invoke_many, ESTOP aliasing, broadcast, where, fire_at, and correlation subscriptions.

Also documents release test coverage and addresses subscription and predicate behavior needed by the comprehensive scenarios.
@soupat soupat requested a review from atsyplikhin May 21, 2026 17:43
Large-fleet tests intentionally seed hundreds of registry rows. Clearing only before those tests let stale rows remain until TTL expiry and polluted later broad selector discovery tests in CI.
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.

1 participant