Patch 5.0.7 - Indicator Diagnostics, Placement Rules Warning
Release Date: May 5, 2026 Version: 5.0.7 Type: Maintenance / Indicator Diagnostics / Placement Rules Release
Highlights
- Indicator diagnostics no longer cause false validation failures —
PlacementReport.is_successful()now correctly returnstruewhen validation passes, even ifIndicatorSetupReportemitted informational diagnostics - Added
ignore_base_rulesbehavior contract tests — Comprehensive unit tests verifyingignore_base_rules=truewith empty placeable rules passes validation - Placement rule documentation hardened — Custom rules MUST override
validate_placement()is now explicitly warned in the guide
Bug Fixes
Indicator Diagnostics
- Fixed
IndicatorSetupReportdiagnostics causing false validation failures — When a custom rule passes validation (RuleResult.build(self, [])), the diagnostic messages fromIndicatorSetupReport(such as “No distinct tile positions calculated”, “No position rules defined”, “No indicators generated”) no longer causePlacementReport.is_successful()to returnfalse. These diagnostics are informational—they explain why no indicators were generated—but absence of indicators is not a failure when validation passes. This fixes an issue wherebuildingState.successwould not fire even though the placement rule validated correctly.
New Tests
Placement Rules
ignore_base_rulesbehavior contract tests — Added comprehensive unit tests verifying:- When
ignore_base_rules=truewith empty placeable rules, validation passes with zero issues - Custom rules without
validate_placement()override (which always fail by default)
- When
Documentation
- Placement rule documentation warning — Updated
placement-rules.mdguide to explicitly warn that custom rules MUST overridevalidate_placement(). The base class returns a failure by default.
Status
- Complete — Ready for release.