Changelog
All notable changes to PRISM will be documented here.
The format is based on Keep a Changelog, this project adheres to Semantic Versioning, and commits follow Conventional Commits.
Unreleased
v0.2.0 - 2026-04-18
Highlights
- Goal-driven maturity roadmap with SLO-backed maturity levels
- Phase-based planning with quarters, swimlanes, and initiative tracking
- New CLI commands: goal, phase, roadmap, slo-report, dashboard
- Dashforge integration for dashboard generation
Added
- Goal type with owner, priority, status, and maturity tracking
- GoalMaturityModel with 5-level progression and SLO requirements
- MetricCriterion for maturity level value requirements
- Goal.CurrentMaturityLevel() calculates achieved level from metrics
- Phase type for time-bounded planning periods (quarters)
- PhaseGoalTarget for enter/exit maturity levels per goal
- Swimlane for organizing initiatives by domain
- PhaseMetrics for tracking progress at phase boundaries
- GoalProgress with initiative completion and SLO compliance
- CalculateGoalProgress(), CalculateInitiativeMetrics(), CalculateSLOCompliance()
- RoadmapProgress for aggregated roadmap status
- GetRoadmapProgress() generates full progress view
- SLOReport with compliance rate and metric status breakdown
- GenerateSLOReport() creates SLO compliance reports
- ExecDashboard for high-level status views
- Markdown report generation for executive summaries
- Dashforge converter for PRISM to dashforge format
- Widget generators for metrics, goals, and phases
prism dashboardcommand for executive dashboardsprism dashforgecommand for dashforge conversionprism reportcommand for markdown reportsprism slo-reportcommand for SLO compliance reports- Initiative type with deployment tracking and customer adoption
- Validation for goal, phase, and initiative references
Changed
- Refactored to extensible framework architecture with operations examples
- PRISMDocument extended with Goals, Phases, Initiatives arrays
- JSON Schema updated with goal, phase, and initiative types
Documentation
- Roadmap CLI documentation (goal, phase, roadmap commands)
- Design notes for maturity roadmap implementation
- Updated examples with operations-focused goal roadmap
Tests
- Unit tests for Goal, GoalMaturityModel, CurrentMaturityLevel()
- Unit tests for Phase, PhaseGoalTarget, Swimlane
- Unit tests for PhaseMetrics calculations
- Integration tests for SLO report generation
Infrastructure
- Multi-agent orchestration specs for roadmap generation
- Example executive dashboard configuration
v0.1.0 - 2026-03-30
Highlights
- PRISM (Proactive Reliability & Security Maturity Model) - a unified framework for B2B SaaS health metrics combining SLOs, DMAIC, OKRs, and maturity modeling
- CLI tool for creating, validating, and scoring PRISM documents
- Auto-generated JSON Schema from Go types for editor validation
Added
- Core types: PRISMDocument, Metric, SLI, SLO, Thresholds, DataPoint
- Domain constants: security, operations
- Lifecycle stage constants: design, build, test, runtime, response
- Category constants: prevention, detection, response, reliability, efficiency, quality
- Metric types: coverage, rate, latency, ratio, count, distribution, score
- Framework mapping support: NIST_CSF, MITRE_ATTACK, DORA, SRE
- Validation functions for all constants and document structure
- ValidationError and ValidationErrors types for detailed error reporting
- 5-level maturity model: Reactive, Basic, Defined, Managed, Optimizing
- MaturityModel, MaturityLevelDef, MaturityCell types
- NewMaturityModelForDomains() for domain-filtered initialization
- Customer awareness model with four states: unaware, aware_not_remediating, aware_remediating, aware_remediated
- AwarenessScore() using mutually exclusive state weights (0.0 → 0.25 → 0.5 → 1.0)
- PRISM score calculation combining maturity and performance
- Configurable weights: maturity 40%, performance 60%, stage weights, domain weights
- Score interpretation: Elite (≥0.9), Strong (≥0.75), Medium (≥0.5), Weak (≥0.25), Critical
- SLO.Operator and SLO.Value fields for machine-evaluable targets
- Metric.MeetsSLO() method for programmatic SLO checking
- Metric.CalculateStatus() for threshold-based status calculation
- Metric.ProgressToTarget() for progress tracking
prism initcommand with domain filtering (-d) and output path (-o)prism validatecommand for document validationprism scorecommand with --detailed and --json flagsprism catalogcommand to list available constants- JSON Schema auto-generation from Go types using invopop/jsonschema
- Embedded schema access via schema.PRISMSchemaJSON()
Dependencies
- github.com/spf13/cobra v1.10.2 for CLI
- github.com/invopop/jsonschema v0.13.0 for schema generation
Documentation
- README with installation, CLI usage, schema overview, and examples
- Example metrics for operations domain
- Operations metrics example (8 DORA-aligned metrics: availability, latency, error rate, deployment frequency, lead time, MTTR, change failure rate, IaC coverage)
- Score weight normalization behavior documented in ScoreConfig
Tests
- Unit tests for validation, maturity, awareness, and scoring
- Integration tests for example JSON files
- DataPoint timestamp JSON round-trip tests
- MeetsSLO() tests for all operators (gte, lte, gt, lt, eq)
Infrastructure
- GitHub Actions workflows for CI, linting, and CodeQL
- Dependabot configuration for automated dependency updates
- golangci-lint configuration