···182182 assert result.segments is not None
183183 assert len(result.segments) >= 1
184184 assert any(
185185- Path(p).name == "conversation_transcript.jsonl" for p in result.files_created
185185+ Path(p).name == "conversation_transcript.jsonl"
186186+ for p in result.files_created
186187 )
187188188189 first_path = Path(result.files_created[0])
+3-1
tests/test_generators.py
···134134 instructions = speakers.get("instructions", {})
135135 sources = instructions.get("sources", {})
136136137137- assert sources.get("transcripts") == "required", "speakers should require transcripts"
137137+ assert sources.get("transcripts") == "required", (
138138+ "speakers should require transcripts"
139139+ )
138140 assert sources.get("percepts") is True, "speakers should include percepts"
139141140142
···149149 "- Windows that look identical in first and last frame\n"
150150 "- Apps open but showing same content throughout\n"
151151 "- Background windows never brought to focus\n"
152152- "- Anything you'd describe as \"had open\" or \"was visible\""
152152+ '- Anything you\'d describe as "had open" or "was visible"'
153153 )
154154155155 IMPORT_GUIDANCE = {
+14-4
think/cluster.py
···254254255255256256def _load_entries(
257257- day_dir: str, transcripts: bool, percepts: bool, agents: bool | dict[str, bool | str]
257257+ day_dir: str,
258258+ transcripts: bool,
259259+ percepts: bool,
260260+ agents: bool | dict[str, bool | str],
258261) -> list[dict[str, Any]]:
259262 """Load all transcript entries from a day directory."""
260263 from think.utils import segment_parse
···269272 start_time, _ = segment_parse(seg_path.name)
270273 if not start_time:
271274 continue
272272- entries.extend(_process_segment(seg_path, date_str, transcripts, percepts, agents))
275275+ entries.extend(
276276+ _process_segment(seg_path, date_str, transcripts, percepts, agents)
277277+ )
273278274279 entries.sort(key=lambda e: e["timestamp"])
275280 return entries
···612617 agents=sources.get("agents", False),
613618 )
614619 if not entries:
615615- return f"No transcript or screen files found for segment {segment}", empty_counts
620620+ return (
621621+ f"No transcript or screen files found for segment {segment}",
622622+ empty_counts,
623623+ )
616624617625 groups = _group_entries(entries)
618626 markdown = _groups_to_markdown(groups)
···639647 segment_path_obj = Path(segment_dir)
640648 # Parent is stream dir; grandparent is day dir
641649 date_str = _date_str(str(segment_path_obj.parent.parent))
642642- entries = _process_segment(segment_path_obj, date_str, transcripts, percepts, agents)
650650+ entries = _process_segment(
651651+ segment_path_obj, date_str, transcripts, percepts, agents
652652+ )
643653 entries.sort(key=lambda e: e["timestamp"])
644654 return entries
645655