Skip to main content

Rubric Merger for MoE Verification Layer.

Merges generated ADR rubrics with base persona evaluation dimensions and renormalizes weights (H.3.2.4).

Features:

  • Merge ADR-generated rubrics with persona base dimensions
  • Smart matching based on persona expertise and trigger conditions
  • Weight renormalization to maintain sum = 1.0
  • Configurable merge strategies (append, replace, weighted)
  • Conflict resolution for overlapping dimensions

Usage: from moe_classifier.core.rubric_merger import RubricMerger, MergeStrategy

merger = RubricMerger()
merged = merger.merge_rubrics(persona, adr_rubrics)

# Or use convenience function
from moe_classifier.core import merge_persona_with_adrs
merged_persona = merge_persona_with_adrs("technical_architect", ["ADR-001", "ADR-009"])

File: rubric_merger.py

Classes

MergeStrategy

Strategy for merging rubrics with persona dimensions.

ConflictResolution

How to resolve conflicts between base and ADR dimensions.

MergeConfig

Configuration for rubric merging.

MergedDimension

A merged evaluation dimension combining base and ADR sources.

MergeResult

Result of a rubric merge operation.

RubricMerger

Merges ADR-generated rubrics with base persona evaluation dimensions.

Functions

get_default_merger()

Get or create the default RubricMerger instance.

merge_rubrics(persona_id, adr_ids, strategy)

Convenience function to merge rubrics for a persona.

merge_persona_with_adrs(persona_id, adr_ids)

Merge ADR rubrics with persona and return as dictionary.

batch_merge_all_personas(output_dir)

Merge ADR rubrics with all enabled personas.

to_dict()

Convert to dictionary.

from_persona_dimension(cls, dim)

Create from a persona EvaluationDimension.

from_adr_dimension(cls, dim, source_adr)

Create from an ADR-generated rubric dimension.

to_dict()

Convert to dictionary.

load_rubric_index()

Load the rubrics index file.

load_rubric(rubric_id)

Load a specific rubric by ID.

get_relevant_adrs(persona, adr_ids)

Get ADR rubric IDs relevant to a persona based on expertise.

merge_rubrics(persona, adr_rubric_ids, config)

Merge ADR rubrics with persona base dimensions.

save_merged_rubric(result, output_dir)

Save merged rubric to file.

priority_key(dim)

No description