develop #59

Merged
Lars merged 11 commits from develop into main 2026-04-03 08:23:49 +02:00
Showing only changes of commit 81681f0de3 - Show all commits

View File

@ -358,14 +358,29 @@ def export_placeholder_values_extended(
metadata.missing_reason = "Placeholder not in resolver output"
# Generate gap report (collect unresolved fields)
gaps = {
'unknown_time_window': [k for k, m in all_metadata.items() if m.time_window == TimeWindow.UNKNOWN],
'unknown_output_type': [k for k, m in all_metadata.items() if m.output_type == OutputType.UNKNOWN],
'legacy_unknown_type': [k for k, m in all_metadata.items() if m.type == PlaceholderType.LEGACY_UNKNOWN],
'unresolved_fields': {k: m.unresolved_fields for k, m in all_metadata.items() if m.unresolved_fields},
'legacy_mismatches': [k for k, m in all_metadata.items() if m.legacy_contract_mismatch],
'orphaned': [k for k, m in all_metadata.items() if m.orphaned_placeholder],
}
# Note: TimeWindow, OutputType, PlaceholderType are from old metadata system
# Skip gap report for old metadata if not available
gaps = {}
try:
from placeholder_metadata_complete import TimeWindow, OutputType, PlaceholderType
gaps = {
'unknown_time_window': [k for k, m in all_metadata.items() if hasattr(m, 'time_window') and m.time_window == TimeWindow.UNKNOWN],
'unknown_output_type': [k for k, m in all_metadata.items() if hasattr(m, 'output_type') and m.output_type == OutputType.UNKNOWN],
'legacy_unknown_type': [k for k, m in all_metadata.items() if hasattr(m, 'type') and m.type == PlaceholderType.LEGACY_UNKNOWN],
'unresolved_fields': {k: m.unresolved_fields for k, m in all_metadata.items() if hasattr(m, 'unresolved_fields') and m.unresolved_fields},
'legacy_mismatches': [k for k, m in all_metadata.items() if hasattr(m, 'legacy_contract_mismatch') and m.legacy_contract_mismatch],
'orphaned': [k for k, m in all_metadata.items() if hasattr(m, 'orphaned_placeholder') and m.orphaned_placeholder],
}
except ImportError:
# Old metadata system not available, use empty gaps
gaps = {
'unknown_time_window': [],
'unknown_output_type': [],
'legacy_unknown_type': [],
'unresolved_fields': {},
'legacy_mismatches': [],
'orphaned': [],
}
# Validation
validation_results = registry.validate_all()