diff --git a/tests/features/context-cluster-facet.test.tsx b/tests/features/context-cluster-facet.test.tsx
index d7c94d0..efaef38 100644
--- a/tests/features/context-cluster-facet.test.tsx
+++ b/tests/features/context-cluster-facet.test.tsx
@@ -91,7 +91,8 @@ describe('Work facet Context Cluster', () => {
const index = contextClusterIndex(syntheticContext());
const facet = selectWorkFacets(sheet, { ...options, contextClusters: index }).find(item => item.id === CONTEXT_CLUSTER_FACET_ID)!;
expect(facet.label).toBe('Context Cluster');
- expect(facet.values.map(value => value.value)).toEqual(['credential-relay-exposure', 'kerberos-delegation-abuse']);
+ // Published heatmap positions govern the order (Michael, 2026-10-11).
+ expect(facet.values.map(value => value.value)).toEqual(['kerberos-delegation-abuse', 'credential-relay-exposure']);
const count = (id: string) => facet.values.find(value => value.value === id)!.count;
expect(count('credential-relay-exposure')).toBe(2);
expect(count('kerberos-delegation-abuse')).toBe(1);
@@ -224,7 +225,7 @@ describe('Work facet Context Cluster in the filter bar', () => {
mockApp({});
await act(async () => { root.render(); await new Promise(resolve => setTimeout(resolve, 0)); });
const select = () => host.querySelector('select[aria-label="Context Cluster"]')!;
- expect([...select().options].map(option => option.value)).toEqual(['', 'credential-relay-exposure', 'kerberos-delegation-abuse']);
+ expect([...select().options].map(option => option.value)).toEqual(['', 'kerberos-delegation-abuse', 'credential-relay-exposure']);
await act(async () => { select().value = 'credential-relay-exposure'; select().dispatchEvent(new Event('change', { bubbles: true })); });
expect(setFacetFilter).toHaveBeenLastCalledWith(CONTEXT_CLUSTER_FACET_ID, { values: ['credential-relay-exposure'] });
mockApp({ [CONTEXT_CLUSTER_FACET_ID]: { values: ['credential-relay-exposure'] } });
diff --git a/tests/features/datahub-centered-layout.test.ts b/tests/features/datahub-centered-layout.test.ts
index d42063f..49d1f26 100644
--- a/tests/features/datahub-centered-layout.test.ts
+++ b/tests/features/datahub-centered-layout.test.ts
@@ -86,7 +86,7 @@ describe('Datahub centered reference rack layout', () => {
expect(componentStyles).not.toContain('@keyframes donut-accent-build');
expect(overview).toContain('datahub-reference-controls donut-metric-rack');
- expect(overview).toContain('DonutMetricCard className="datahub-reference-knob" label="Results All" value={resultMetrics.all} percentage={resultMetrics.all !== null ? 100 : 0} tone="all"');
+ expect(overview).toContain('DonutMetricCard className="datahub-reference-knob" label="Results All" value={resultMetrics.all} percentage={resultMetrics.all !== null ? 100 : 0} percentageBasisLabel="Of all records" tone="all"');
expect(overview).toContain('DonutMetricCard className="datahub-reference-knob" label="Deviation"');
expect(overview).toContain('DonutMetricCard className="datahub-reference-knob" label="Passed"');
expect(overview).toContain('DonutMetricCard className="datahub-reference-knob" label="Not Applicable"');
diff --git a/tests/features/pathfinder-text-interaction.test.tsx b/tests/features/pathfinder-text-interaction.test.tsx
index 7c43bac..39d6aed 100644
--- a/tests/features/pathfinder-text-interaction.test.tsx
+++ b/tests/features/pathfinder-text-interaction.test.tsx
@@ -10,7 +10,11 @@ import { clearStoredMitreMatrix, MITRE_MATRIX_CHANGED_EVENT, saveStoredMitreMatr
import { useFilteredRecords } from '../../src/features/search-filter/use-filtered-records';
import { makeSheet } from '../../src/importers/sheet-factory';
-vi.mock('../../src/app/AppProvider', () => ({ useApp: vi.fn() }));
+vi.mock('../../src/app/AppProvider', () => {
+ const useApp = vi.fn();
+ // The Context cluster index reads the app optionally; it sees the same mocked app.
+ return { useApp, useOptionalApp: () => useApp() };
+});
vi.mock('../../src/features/search-filter/use-filtered-records', () => ({ useFilteredRecords: vi.fn() }));
vi.mock('../../src/features/search-filter/SearchFilterBar', () => ({ SearchFilterBar: () => null, SearchTextControl: () => null }));
vi.mock('../../src/features/view-bookmarks/ViewBookmarks', () => ({ ViewBookmarks: () => null }));