mirror of
https://github.com/semantica-agi/semantica.git
synced 2026-09-10 04:00:35 +00:00
Bug Fixes: 1. PolicyException naming conflicts: - Replace Exception with PolicyException in DecisionRecorder.record_exception() - Update _store_exception_node type annotation to PolicyException - Fix test imports in test_decision_recorder.py - Resolves runtime TypeError from conflicting Exception class name 2. Auto-ID masking missing IDs: - Add auto_generate_id parameter to all model __post_init__ methods - Update dict-to-model helpers to require IDs (data['decision_id'] vs data.get()) - Set auto_generate_id=False for deserialization to prevent silent UUID generation - Makes missing IDs visible as KeyError instead of masked with auto-generated UUIDs Files Changed: - semantica/context/decision_recorder.py: PolicyException usage fixes - semantica/context/decision_models.py: Auto-ID control parameter - semantica/context/decision_query.py: Strict ID requirements - semantica/context/policy_engine.py: Strict ID requirements - semantica/context/causal_analyzer.py: Strict ID requirements - tests/context/test_decision_recorder.py: Import fixes Impact: - Resolves PolicyException runtime failures - Prevents silent data corruption from missing IDs - Maintains backward compatibility for new object creation - Improves data integrity for deserialization operations