Skip to content

v0.16.0

Release Date: 2026-07-20

Highlights

  • Shared Rubric Spec: canvas rubrics now use structured-evaluation's RubricSet — the one rubric format across the ecosystem — instead of a prism-roadmap-local type

Overview

v0.16.0 aligns prism-roadmap's canvas rubrics with the shared structured-evaluation rubric spec. rubrics.LoadRubric now parses canvas rubrics directly into structured-evaluation/rubric.RubricSet — the rich weighted-criteria form with pass/partial/fail bands, indicators, and numeric score thresholds — so downstream tools (VisionSpec, pdlc) consume them without any translation layer.

Breaking Changes

  • rubrics.LoadRubric returns *structured-evaluation/rubric.RubricSet instead of the former prism-roadmap-local *Rubric type. Callers that referenced the local rubric types should switch to the structured-evaluation types.

Dependency Changes

  • Requires github.com/plexusone/structured-evaluation v0.10.0 for the rich weighted-criteria form and YAML tags.

Migration Guide

// Before
import prrubrics "github.com/grokify/prism-roadmap/rubrics"
rs, _ := prrubrics.LoadRubric("opportunity-spec") // *prrubrics.Rubric

// After
import (
    prrubrics "github.com/grokify/prism-roadmap/rubrics"
    serubric "github.com/plexusone/structured-evaluation/rubric"
)
var rs *serubric.RubricSet
rs, _ = prrubrics.LoadRubric("opportunity-spec")

The opportunity-spec.rubric.yaml rubric is reshaped to the canonical format — top-level thresholds: becomes passCriteria.scoreThresholds. Rubric content (weighted categories, criteria, and indicators) is unchanged.