-
Notifications
You must be signed in to change notification settings - Fork 14
Modernize up-streamer internals and land deterministic transport smoke validation #78
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
PLeVasseur
wants to merge
53
commits into
eclipse-uprotocol:main
Choose a base branch
from
PLeVasseur:cleanup/refactor-upstream-main
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Modernize up-streamer internals and land deterministic transport smoke validation #78
PLeVasseur
wants to merge
53
commits into
eclipse-uprotocol:main
from
PLeVasseur:cleanup/refactor-upstream-main
+13,346
−2,420
Conversation
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
…nd Path A cache identity
Introduce a new workspace crate with shared env, claim, process, log, report, and scenario modules so deterministic smoke execution has a single auditable runtime contract.
Introduce bounded send controls on active example entities and emit canonical READY markers from passive entities and streamers so orchestration can wait on exact startup and completion boundaries.
Implement deterministic MQTT request/response and pub/sub scenario runners with explicit claim blocks, and add fixture-driven claim-evaluation tests to keep audit expectations stable.
Implement deterministic SOME/IP request/response and pub/sub scenario binaries with explicit claim sections, and add scenario contract coverage to keep the 8-scenario registry auditable.
Add the sequential matrix orchestrator with aggregate reporting, document deterministic capstone execution and triage, and introduce a manual/nightly split-job workflow that always uploads artifacts.
Normalize egress claim patterns to match tracer-emitted field encoding and remove an unnecessary allocation in the matrix runner so clippy and live scenario validation pass consistently.
Load scenario claims from resolved JSON paths, wire --claims-path through matrix execution, and include claims source metadata in scenario reports for reproducible diagnostics.
Introduce JSON claims for all eight canonical scenarios, switch fixture/contract tests to load the same runtime claim source, and document --claims-path behavior for scenario and matrix runs.
Contributor
Author
|
I am well-aware that asking review of this is pretty unreasonable without any kind of orientation. I'm going to walk through it in tomorrow's meeting a bit. |
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
up-streamerinternals (control plane/data plane/routing/runtime boundaries), structured observability, and lifecycle hardening while preserving transport behavior intent.utils/transport-smoke-suite, including scenario binaries, matrix execution, fixture audits/contracts, and reproducible reporting artifacts.Scope Clarification (important)
This branch is large by design and includes work that has been developed in parallel with open PR #77.
main, this branch is ahead by 52 commits.bugfix/issue-74-left-topic-authority).Because #77 base is not available as the PR base target in upstream, this PR is opened against
mainwith explicit overlap disclosure.Why this refactor should inspire confidence
Notable Deliverables
up-streamerand integration surfaces.utils/transport-smoke-suite/claims/*.jsonfor all scenarios.--claims-pathpropagation + multi-scenario file override rejection.claims_source_pathmetadata.Validation
Static checks
cargo fmt -- --checkcargo clippy -p transport-smoke-suite --all-targets -- -W warnings -D warningscargo test -p transport-smoke-suiteRuntime checks for claims/matrix behavior
cargo run -p transport-smoke-suite --bin transport-smoke-matrix -- --all(8/8 pass)Review Guidance
To isolate unique commits from #77 overlap:
That range captures the modernization + deterministic smoke suite work intended for this PR review.
Review Walkthrough (staged)
This PR currently shows 53 commits against
main.The first 10 commits overlap with open PR #77 (
bugfix/issue-74-left-topic-authority) and are not the primary review target here.Please focus on the remaining 43 unique commits.
Exclude overlap first
git log --oneline 7d1a6c7..cleanup/refactor-upstream-mainStage 1 - Core
up-streamerdomain modernization (18 commits)git log --oneline e76dc3d^..99c0549git diff --stat e76dc3d^..99c0549Stage 2 - Runtime hardening, observability, and performance (16 commits)
git log --oneline 72abe59^..f16f155git diff --stat 72abe59^..f16f155Stage 3 - Deterministic transport smoke suite (8 commits)
git log --oneline 898f08d^..ad44a81git diff --stat 898f08d^..ad44a81Stage 4 - Final metadata-only touch (1 commit)
git show --stat 86e7e4c