MCPcopy Create free account
hub / github.com/RtlZeroMemory/Rezi / resolveRule

Function resolveRule

scripts/bench-ci-compare.mjs:448–476  ·  view source on GitHub ↗
(config, context)

Source from the content-addressed store, hash-verified

446}
447
448function resolveRule(config, context) {
449 const base = config.defaultRules.get(context.metric);
450 if (!base) return null;
451
452 let resolved = {
453 metric: base.metric,
454 relativeRegression: base.relativeRegression,
455 absoluteRegression: base.absoluteRegression,
456 severity: base.severity,
457 direction: base.direction,
458 };
459 let source = base.source;
460 let reason = null;
461
462 for (const override of config.overrides) {
463 if (!overrideMatches(override, context)) continue;
464 resolved = {
465 metric: resolved.metric,
466 relativeRegression: override.rulePatch.relativeRegression ?? resolved.relativeRegression,
467 absoluteRegression: override.rulePatch.absoluteRegression ?? resolved.absoluteRegression,
468 severity: override.rulePatch.severity ?? resolved.severity,
469 direction: override.rulePatch.direction ?? resolved.direction,
470 };
471 source = override.source;
472 reason = override.reason;
473 }
474
475 return { rule: resolved, source, reason };
476}
477
478function computeDeltaStats(baselineValue, currentValue, rule) {
479 const delta = currentValue - baselineValue;

Callers 1

compareBenchRunsFunction · 0.85

Calls 2

overrideMatchesFunction · 0.85
getMethod · 0.45

Tested by

no test coverage detected