Sai Kumar Taraka commited on
Commit
21a44ca
·
1 Parent(s): ebd4976

Fix: SequenceDef unhashable type error — use attr access instead of dict indexing

Browse files
Files changed (1) hide show
  1. src/pipeline.py +4 -4
src/pipeline.py CHANGED
@@ -112,9 +112,9 @@ def generate_sequence_metadata(spec: Any, generated: Dict[str, str]) -> Dict[str
112
  seqs: List[Dict[str, Any]] = []
113
  if hasattr(spec, 'sequences') and spec.sequences:
114
  for seq in spec.sequences:
115
- name = seq['name'] if isinstance(seq, dict) else seq
116
- stype = seq.get('type', 'regression') if isinstance(seq, dict) else 'regression'
117
- desc = seq.get('description', f'{name} test') if isinstance(seq, dict) else f'{name} test'
118
  generated_flag = any(name in v for v in generated.values()) if generated else False
119
  seqs.append({
120
  "name": name,
@@ -347,7 +347,7 @@ class TBPipeline:
347
  # Test mapping score: how many YAML sequences have matching test classes
348
  test_mapping_score = 0.85
349
  if hasattr(design_spec, 'sequences') and design_spec.sequences:
350
- seq_names = {s['name'] if isinstance(s, dict) else s for s in design_spec.sequences}
351
  seq_content = " ".join(all_generated.keys()).lower() if all_generated else ""
352
  hits = sum(1 for sn in seq_names if sn in seq_content or sn.replace('uart_', '') in seq_content)
353
  test_mapping_score = hits / max(1, len(seq_names))
 
112
  seqs: List[Dict[str, Any]] = []
113
  if hasattr(spec, 'sequences') and spec.sequences:
114
  for seq in spec.sequences:
115
+ name = seq.name if hasattr(seq, 'name') else seq
116
+ stype = getattr(seq, 'type', 'regression') if hasattr(seq, 'type') else 'regression'
117
+ desc = getattr(seq, 'description', f'{name} test') if hasattr(seq, 'description') else f'{name} test'
118
  generated_flag = any(name in v for v in generated.values()) if generated else False
119
  seqs.append({
120
  "name": name,
 
347
  # Test mapping score: how many YAML sequences have matching test classes
348
  test_mapping_score = 0.85
349
  if hasattr(design_spec, 'sequences') and design_spec.sequences:
350
+ seq_names = {s.name if hasattr(s, 'name') else s for s in design_spec.sequences}
351
  seq_content = " ".join(all_generated.keys()).lower() if all_generated else ""
352
  hits = sum(1 for sn in seq_names if sn in seq_content or sn.replace('uart_', '') in seq_content)
353
  test_mapping_score = hits / max(1, len(seq_names))