1 line
50 KiB
JSON
1 line
50 KiB
JSON
{"nodes": [{"id": "d_yt_channel_scraper_tests_test_recovery_py", "label": "test_recovery.py", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_tests_test_recovery_store", "label": "_store()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L17", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "label": "test_reset_reaches_no_subtitles_not_just_error()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L25", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_reset_never_touches_done_even_if_asked", "label": "test_reset_never_touches_done_even_if_asked()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L44", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "label": "test_reset_errors_still_only_resets_errors()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L53", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_retryable_counts_reports_both_statuses", "label": "test_retryable_counts_reports_both_statuses()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L68", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_mark_status_records_the_reason", "label": "test_mark_status_records_the_reason()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L82", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_describe_distinguishes_no_captions_from_policy_rejection", "label": "test_describe_distinguishes_no_captions_from_policy_rejection()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L91", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_describe_does_not_blame_config_when_mode_already_allows_auto", "label": "test_describe_does_not_blame_config_when_mode_already_allows_auto()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L103", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "label": "test_reconcile_marks_done_when_the_md_is_already_on_disk()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L126", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "label": "test_reconcile_requeues_rows_whose_md_vanished_only_with_prune()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L145", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "label": "test_prune_refuses_to_demote_everything_when_the_root_is_empty()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L165", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "label": "test_reconcile_is_idempotent()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L179", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "label": "test_a_bad_encoding_does_not_abort_the_whole_scan()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L195", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "label": "test_re_render_updates_markdown_path_and_removes_the_old_file()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L217", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "label": "test_re_render_is_idempotent()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L252", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "label": "test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L277", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_counts_orphan_markdown", "label": "test_reconcile_counts_orphan_markdown()", "file_type": "code", "source_file": "tests/test_recovery.py", "source_location": "L302", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_recovery_rationale_1", "label": "Recovery paths: retryable statuses, recorded skip reasons, disk<->DB reconcile.", "file_type": "rationale", "source_file": "tests/test_recovery.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_tests_test_recovery_rationale_54", "label": "The narrower legacy helper keeps its old meaning.", "file_type": "rationale", "source_file": "tests/test_recovery.py", "source_location": "L54"}, {"id": "d_yt_channel_scraper_tests_test_recovery_rationale_127", "label": "The exact symptom the user reported: a .md exists but the row still shows a", "file_type": "rationale", "source_file": "tests/test_recovery.py", "source_location": "L127"}, {"id": "d_yt_channel_scraper_tests_test_recovery_rationale_166", "label": "Pointed at a wrong or not-yet-populated markdown root, prune must be a no-op", "file_type": "rationale", "source_file": "tests/test_recovery.py", "source_location": "L166"}, {"id": "d_yt_channel_scraper_tests_test_recovery_rationale_196", "label": "UnicodeDecodeError is a ValueError, not an OSError. Letting it escape aborte", "file_type": "rationale", "source_file": "tests/test_recovery.py", "source_location": "L196"}, {"id": "d_yt_channel_scraper_tests_test_recovery_rationale_218", "label": "re-render used a raw compact upload_date while process_video uses the hyphen", "file_type": "rationale", "source_file": "tests/test_recovery.py", "source_location": "L218"}, {"id": "d_yt_channel_scraper_tests_test_recovery_rationale_278", "label": "The 33 leftover files the old re-render wrote under a second filename: the D", "file_type": "rationale", "source_file": "tests/test_recovery.py", "source_location": "L278"}], "edges": [{"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L10", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "yt_scraper_extract", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "yt_scraper_segments", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L13", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "yt_scraper_store", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L14", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L17", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L25", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_reset_never_touches_done_even_if_asked", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L44", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L53", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_retryable_counts_reports_both_statuses", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L68", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_mark_status_records_the_reason", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L82", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_describe_distinguishes_no_captions_from_policy_rejection", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L91", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_describe_does_not_blame_config_when_mode_already_allows_auto", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L103", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L126", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L145", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L165", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L179", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L195", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L217", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L252", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L277", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_py", "target": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_counts_orphan_markdown", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L302", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L26", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_reset_never_touches_done_even_if_asked", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L45", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L55", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_retryable_counts_reports_both_statuses", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L69", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_mark_status_records_the_reason", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L83", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L129", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L146", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L168", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L180", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L198", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L224", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L256", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L280", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_counts_orphan_markdown", "target": "d_yt_channel_scraper_tests_test_recovery_store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L303", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_rationale_1", "target": "d_yt_channel_scraper_tests_test_recovery_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L1", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_rationale_54", "target": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L54", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_rationale_127", "target": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L127", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_rationale_166", "target": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L166", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_rationale_196", "target": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L196", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_rationale_218", "target": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L218", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_recovery_rationale_278", "target": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "tests/test_recovery.py", "source_location": "L278", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_tests_test_recovery_store", "callee": "Store", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L18", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_store", "callee": "upsert_channel", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L19", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L27", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L28", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L29", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L30", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "mark_status", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L32", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "mark_error", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L33", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "mark_done", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L34", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "reset_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L36", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L39", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L40", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_reaches_no_subtitles_not_just_error", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L41", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_never_touches_done_even_if_asked", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L46", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_never_touches_done_even_if_asked", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L46", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_never_touches_done_even_if_asked", "callee": "mark_done", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L47", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_never_touches_done_even_if_asked", "callee": "reset_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L49", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_never_touches_done_even_if_asked", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L50", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L56", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L57", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L58", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "callee": "mark_status", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L60", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "callee": "mark_error", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L61", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "callee": "reset_errors", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L63", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L64", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reset_errors_still_only_resets_errors", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L65", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_retryable_counts_reports_both_statuses", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L70", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_retryable_counts_reports_both_statuses", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L71", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_retryable_counts_reports_both_statuses", "callee": "mark_status", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L73", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_retryable_counts_reports_both_statuses", "callee": "mark_status", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L74", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_retryable_counts_reports_both_statuses", "callee": "mark_error", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L75", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_retryable_counts_reports_both_statuses", "callee": "retryable_counts", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L77", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_mark_status_records_the_reason", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L84", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_mark_status_records_the_reason", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L84", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_mark_status_records_the_reason", "callee": "mark_status", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L86", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_mark_status_records_the_reason", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L88", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_describe_distinguishes_no_captions_from_policy_rejection", "callee": "describe_missing_subtitle", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L92", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_describe_distinguishes_no_captions_from_policy_rejection", "callee": "describe_missing_subtitle", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L95", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_describe_does_not_blame_config_when_mode_already_allows_auto", "callee": "describe_missing_subtitle", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L104", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L130", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L130", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "callee": "mark_status", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L131", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "callee": "mkdir", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L134", "receiver": "md_root"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L135", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "callee": "format", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L135", "receiver": "_MD"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L137", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_marks_done_when_the_md_is_already_on_disk", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L139", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L147", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L148", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L149", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "mark_done", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L151", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "mkdir", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L153", "receiver": "md_root"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L154", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "format", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L154", "receiver": "_MD"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L157", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L158", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L160", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_requeues_rows_whose_md_vanished_only_with_prune", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L162", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L169", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L169", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "callee": "mark_done", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L170", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "callee": "mkdir", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L171", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L173", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_prune_refuses_to_demote_everything_when_the_root_is_empty", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L176", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L181", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L181", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "callee": "mkdir", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L183", "receiver": "md_root"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L184", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "callee": "format", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L184", "receiver": "_MD"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L186", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L187", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_is_idempotent", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L192", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L199", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L200", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L201", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "mkdir", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L204", "receiver": "md_root"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L205", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "format", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L205", "receiver": "_MD"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "write_bytes", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L206", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L207", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "format", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L207", "receiver": "_MD"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L209", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_a_bad_encoding_does_not_abort_the_whole_scan", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L211", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L225", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L225", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "update_video_metadata", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L226", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "mkdir", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L233", "receiver": "old_dir"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L234", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "mark_done", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L235", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "Config", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L237", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "resolve", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L240", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "Path", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L240", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "re_render_videos", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L242", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "rglob", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L244", "receiver": "md_root"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L246", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "endswith", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L247", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "replace", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L247", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "exists", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L248", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_updates_markdown_path_and_removes_the_old_file", "callee": "read_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L249", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L257", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L257", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "update_video_metadata", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L258", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "mark_done", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L262", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "Config", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L263", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "resolve", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L266", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "Path", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L266", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "re_render_videos", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L269", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L270", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "re_render_videos", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L271", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L273", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_re_render_is_idempotent", "callee": "rglob", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L274", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L281", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L281", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "mkdir", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L283", "receiver": "md_root"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L286", "receiver": "canonical"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "format", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L286", "receiver": "_MD"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L287", "receiver": "duplicate"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "format", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L287", "receiver": "_MD"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "mark_done", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L288", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L290", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "exists", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L292", "receiver": "duplicate"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L293", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L295", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "exists", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L297", "receiver": "duplicate"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "exists", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L298", "receiver": "canonical"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_reports_stale_duplicates_and_deletes_them_only_with_prune", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L299", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_counts_orphan_markdown", "callee": "mkdir", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L305", "receiver": "md_root"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_counts_orphan_markdown", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L306", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_counts_orphan_markdown", "callee": "format", "is_member_call": true, "source_file": "tests/test_recovery.py", "source_location": "L306", "receiver": "_MD"}, {"caller_nid": "d_yt_channel_scraper_tests_test_recovery_test_reconcile_counts_orphan_markdown", "callee": "reconcile_markdown", "is_member_call": false, "source_file": "tests/test_recovery.py", "source_location": "L308", "receiver": null}]} |