refactor(onboard): trim runtime boundary recorders - #5648
Conversation
…rd-fsm-live-slice-inputs
…live-slice-inputs # Conflicts: # src/lib/onboard/machine/core-flow-phases.ts # src/lib/onboard/machine/final-flow-phases.ts # src/lib/onboard/machine/initial-flow-phases.ts # src/lib/onboard/machine/live-flow-slice.test.ts
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (2)
💤 Files with no reviewable changes (1)
📝 WalkthroughWalkthrough
ChangesCompatibility Recorder Encapsulation
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Code Coverage OverviewLanguages: TypeScript TypeScript / code-coverage/pluginThe overall coverage in the Show a code coverage summary of the most covered files.
TypeScript / code-coverage/cliThe overall coverage in the Show a code coverage summary of the most covered files.
Updated |
PR Review Advisor — No blocking findingsMerge posture: No blocking advisor findings This is an automated, non-binding review; it still expects maintainers and agents to respond to each required or warning item. Treat suggestions as current-PR improvements when they touch changed code; defer only with maintainer rationale or a linked follow-up. A human maintainer must make the final merge decision. |
E2E Advisor RecommendationRequired E2E: Dispatch hint: Full advisor summaryE2E Recommendation AdvisorBase: Required E2E
Optional E2E
New E2E recommendations
Dispatch hint
|
Vitest E2E Scenario RecommendationRequired Vitest E2E scenarios: Dispatch required Vitest E2E scenarios:
Full Vitest E2E advisor summaryVitest E2E Scenario AdvisorBase: Required Vitest E2E scenarios
Optional Vitest E2E scenarios
Relevant changed files
|
…live-slice-inputs # Conflicts: # src/lib/onboard/machine/core-flow-phases.ts # src/lib/onboard/machine/initial-flow-phases.ts
…nboard-fsm-compat-result-loop
…onboard-fsm-drop-record-only-runner
…ctor/onboard-fsm-trim-recorders
…nboard-fsm-compat-result-loop
## Summary Trim the runtime boundary recorder bag so it only exposes recorders consumed as phase dependencies. Compatibility result recording remains available as a direct boundary method for tests and orchestration that intentionally need it. ## Changes - Remove `recordStateResultWithStepCompatibility` from `OnboardRuntimeBoundary.recorders()`. - Update final-flow runtime tests to bind the compatibility method directly from the boundary. - Keep the existing compatibility behavior unchanged. ## Type of Change - [x] Code change (feature, bug fix, or refactor) - [ ] Code change with doc updates - [ ] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Verification - [x] PR description includes the DCO sign-off declaration and every commit appears as `Verified` in GitHub - [x] Git hooks passed during commit and push, or `npx prek run --from-ref main --to-ref HEAD` passes - [x] Targeted tests pass for changed behavior - [ ] Full `npm test` passes (broad runtime changes only) - [x] Tests added or updated for new or changed behavior - [x] No secrets, API keys, or credentials committed - [ ] Docs updated for user-facing behavior changes - [ ] `npm run docs` builds without warnings (doc changes only) - [ ] Doc pages follow the [style guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md) (doc changes only) - [ ] New doc pages include SPDX header and frontmatter (new pages only) --- Signed-off-by: Carlos Villela <cvillela@nvidia.com> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Simplified internal recorder API by removing a compatibility-tracking method from public exposure while maintaining existing functionality through internal invocation. <!-- end of auto-generated comment: release notes by coderabbit.ai --> Signed-off-by: Hadar Cohen <hacohen@redhat.com>
## Summary Trim the runtime boundary recorder bag so it only exposes recorders consumed as phase dependencies. Compatibility result recording remains available as a direct boundary method for tests and orchestration that intentionally need it. ## Changes - Remove `recordStateResultWithStepCompatibility` from `OnboardRuntimeBoundary.recorders()`. - Update final-flow runtime tests to bind the compatibility method directly from the boundary. - Keep the existing compatibility behavior unchanged. ## Type of Change - [x] Code change (feature, bug fix, or refactor) - [ ] Code change with doc updates - [ ] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Verification - [x] PR description includes the DCO sign-off declaration and every commit appears as `Verified` in GitHub - [x] Git hooks passed during commit and push, or `npx prek run --from-ref main --to-ref HEAD` passes - [x] Targeted tests pass for changed behavior - [ ] Full `npm test` passes (broad runtime changes only) - [x] Tests added or updated for new or changed behavior - [x] No secrets, API keys, or credentials committed - [ ] Docs updated for user-facing behavior changes - [ ] `npm run docs` builds without warnings (doc changes only) - [ ] Doc pages follow the [style guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md) (doc changes only) - [ ] New doc pages include SPDX header and frontmatter (new pages only) --- Signed-off-by: Carlos Villela <cvillela@nvidia.com> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Simplified internal recorder API by removing a compatibility-tracking method from public exposure while maintaining existing functionality through internal invocation. <!-- end of auto-generated comment: release notes by coderabbit.ai --> Signed-off-by: Hadar Cohen <hacohen@redhat.com>
## Summary Trim the runtime boundary recorder bag so it only exposes recorders consumed as phase dependencies. Compatibility result recording remains available as a direct boundary method for tests and orchestration that intentionally need it. ## Changes - Remove `recordStateResultWithStepCompatibility` from `OnboardRuntimeBoundary.recorders()`. - Update final-flow runtime tests to bind the compatibility method directly from the boundary. - Keep the existing compatibility behavior unchanged. ## Type of Change - [x] Code change (feature, bug fix, or refactor) - [ ] Code change with doc updates - [ ] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Verification - [x] PR description includes the DCO sign-off declaration and every commit appears as `Verified` in GitHub - [x] Git hooks passed during commit and push, or `npx prek run --from-ref main --to-ref HEAD` passes - [x] Targeted tests pass for changed behavior - [ ] Full `npm test` passes (broad runtime changes only) - [x] Tests added or updated for new or changed behavior - [x] No secrets, API keys, or credentials committed - [ ] Docs updated for user-facing behavior changes - [ ] `npm run docs` builds without warnings (doc changes only) - [ ] Doc pages follow the [style guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md) (doc changes only) - [ ] New doc pages include SPDX header and frontmatter (new pages only) --- Signed-off-by: Carlos Villela <cvillela@nvidia.com> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Simplified internal recorder API by removing a compatibility-tracking method from public exposure while maintaining existing functionality through internal invocation. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Summary
Trim the runtime boundary recorder bag so it only exposes recorders consumed as phase dependencies. Compatibility result recording remains available as a direct boundary method for tests and orchestration that intentionally need it.
Changes
recordStateResultWithStepCompatibilityfromOnboardRuntimeBoundary.recorders().Type of Change
Verification
Verifiedin GitHubnpx prek run --from-ref main --to-ref HEADpassesnpm testpasses (broad runtime changes only)npm run docsbuilds without warnings (doc changes only)Signed-off-by: Carlos Villela cvillela@nvidia.com
Summary by CodeRabbit