feat(FN-2970): merge fusion/fn-2970

- CSS: fix margin on the node routing description in SettingsModal (`SettingsModal.css`)
- Dashboard: add CSS regression test for node routing description alignment (`SettingsModalNodeRouting.test.tsx`)
- Engine: update node routing policy and scheduler logic for improved routing behavior (`scheduler.ts`)
- Engine: update node routing policy tests and scheduler routing tests to cover new behavior

Commits merged:
- test(FN-2970): add CSS regression test for node routing description
- fix(FN-2970): fix settings node routing description margin
- feat(FN-2956): merge fusion/fn-2956

Files changed:
.../dashboard/app/components/SettingsModal.css     | 11 +++++++++-
 .../__tests__/SettingsModalNodeRouting.test.tsx    | 12 +++++++++--
 .../src/__tests__/node-routing-policy.test.ts      | 25 +++++++++++++++++++---
 .../src/__tests__/scheduler-node-routing.test.ts   | 18 ++++++++--------
 packages/engine/src/scheduler.ts                   |  8 ++++---
 5 files changed, 56 insertions(+), 18 deletions(-)

Fusion-Task-Id: FN-2970
This commit is contained in:
Fusion
2026-04-29 17:32:21 -07:00
committed by gsxdsm
parent 2e2be655f8
commit 42276db737
2 changed files with 20 additions and 3 deletions

View File

@@ -244,9 +244,17 @@ describe("SettingsModal Node Routing section", () => {
expect(screen.queryByLabelText("Unavailable Node Policy")).not.toBeInTheDocument();
});
it("shows informational note", async () => {
it("applies description and note classes for node routing spacing", async () => {
renderModal();
await openNodeRouting();
expect(screen.getByText(/These settings apply at the project level/)).toBeInTheDocument();
const descriptionText = screen.getByText(/Configure how tasks are routed to execution nodes/);
const noteText = screen.getByText(/These settings apply at the project level/);
expect(descriptionText).toBeInTheDocument();
expect(noteText).toBeInTheDocument();
expect(descriptionText.closest("p")).toHaveClass("settings-section-description");
expect(noteText.closest("p")).toHaveClass("settings-node-routing-note");
});
});