diff --git a/graphify-out/.graphify_labels.json b/graphify-out/.graphify_labels.json new file mode 100644 index 0000000..17e6c16 --- /dev/null +++ b/graphify-out/.graphify_labels.json @@ -0,0 +1 @@ +{"0": "Webapp Frontend (JS)", "1": "Transcript Extraction & Parsing", "2": "Config & Discovery Pipeline", "3": "Store & Export Layer", "4": "CLI Command Layer", "5": "Platform Design & Proposals", "6": "Segments Search & Backfill", "7": "Store Platform Tests", "8": "Content Analysis", "9": "README & Config Docs", "10": "Server Start Script", "11": "Package Manifest", "12": "Server Stop Script", "13": "Webapp Package Init"} \ No newline at end of file diff --git a/graphify-out/.graphify_python b/graphify-out/.graphify_python new file mode 100644 index 0000000..65206d0 --- /dev/null +++ b/graphify-out/.graphify_python @@ -0,0 +1 @@ +C:\Users\Uriel Jareth\AppData\Local\Programs\Python\Python312\python.exe \ No newline at end of file diff --git a/graphify-out/.graphify_root b/graphify-out/.graphify_root new file mode 100644 index 0000000..7e60ffd --- /dev/null +++ b/graphify-out/.graphify_root @@ -0,0 +1 @@ +D:\yt-channel-scraper \ No newline at end of file diff --git a/graphify-out/GRAPH_REPORT.md b/graphify-out/GRAPH_REPORT.md new file mode 100644 index 0000000..4625cfe --- /dev/null +++ b/graphify-out/GRAPH_REPORT.md @@ -0,0 +1,115 @@ +# Graph Report - . (2026-07-26) + +## Corpus Check +- Corpus is ~28,854 words - fits in a single context window. You may not need a graph. + +## Summary +- 392 nodes · 951 edges · 14 communities (12 shown, 2 thin omitted) +- Extraction: 93% EXTRACTED · 7% INFERRED · 0% AMBIGUOUS · INFERRED: 65 edges (avg confidence: 0.76) +- Token cost: 11,800 input · 4,100 output + +## Community Hubs (Navigation) +- Webapp Frontend (JS) +- Transcript Extraction & Parsing +- Config & Discovery Pipeline +- Store & Export Layer +- CLI Command Layer +- Platform Design & Proposals +- Segments Search & Backfill +- Store Platform Tests +- Content Analysis +- README & Config Docs +- Package Manifest + +## God Nodes (most connected - your core abstractions) +1. `Store` - 81 edges +2. `Segment` - 32 edges +3. `api()` - 31 edges +4. `toast()` - 29 edges +5. `Config` - 23 edges +6. `process_video()` - 19 edges +7. `JobManager` - 17 edges +8. `resolve_active_path()` - 13 edges +9. `discover_channel()` - 13 edges +10. `backfill_from_markdown()` - 13 edges + +## Surprising Connections (you probably didn't know these) +- `test_dashboard_aggregates()` --calls--> `Segment` [INFERRED] + tests/test_store_platform.py → src/yt_scraper/parse.py +- `test_store_and_search_segments()` --calls--> `Segment` [INFERRED] + tests/test_store_platform.py → src/yt_scraper/parse.py +- `test_store_segments_overwrites()` --calls--> `Segment` [INFERRED] + tests/test_store_platform.py → src/yt_scraper/parse.py +- `store()` --calls--> `Store` [INFERRED] + tests/test_store_platform.py → src/yt_scraper/store.py +- `test_migration_idempotent()` --calls--> `Store` [INFERRED] + tests/test_store_platform.py → src/yt_scraper/store.py + +## Import Cycles +- None detected. + +## Hyperedges (group relationships) +- **Workstream B webapp stack (FastAPI + Alpine SPA + subagent)** — opencode_agent_webapp_builder, opencode_goals_webapp_build, src_yt_scraper_webapp_static_index, docs_superpowers_specs_2026_07_26_platform_design_dark_command_center, docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner [EXTRACTED 0.95] +- **FTS5 transcript search flow (proposal -> spec -> SPA view)** — opportunities_search_fts5, docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5, src_yt_scraper_webapp_static_index [INFERRED 0.85] +- **Cookie auth chain (vault -> resolve_active_path -> scrape job)** — docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux, docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner, docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix, src_yt_scraper_webapp_static_index [INFERRED 0.85] + +## Communities (14 total, 2 thin omitted) + +### Community 0 - "Webapp Frontend (JS)" +Cohesion: 0.06 +Nodes (59): activateCookie(), addChannel(), api(), axisOpts(), barOpts(), cancelScrape(), checkHealth(), closeStream() (+51 more) + +### Community 1 - "Transcript Extraction & Parsing" +Cohesion: 0.07 +Nodes (57): Environment, align_chapters(), Chapter, chapters_from_info(), Section, _parse_tags(), Regenerar Markdown desde segmentos almacenados., re_render_cmd() (+49 more) + +### Community 2 - "Config & Discovery Pipeline" +Cohesion: 0.06 +Nodes (40): APIRouter, FastAPI, _build_config(), Config, DelayConfig, load_config(), Any, Path (+32 more) + +### Community 3 - "Store & Export Layer" +Cohesion: 0.07 +Nodes (28): Connection, Cursor, Row, is_expired(), list_vault(), export_csv(), export_html(), export_json() (+20 more) + +### Community 4 - "CLI Command Layer" +Cohesion: 0.08 +Nodes (41): analyze_cmd(), _apply_filters(), audio_cmd(), _channel_targets(), channels_add(), cli(), export_cmd(), _extract_handle() (+33 more) + +### Community 5 - "Platform Design & Proposals" +Cohesion: 0.12 +Nodes (20): Platform Implementation Plan, Platform Design Spec, Cookie drag-and-drop vault UX, cli.py cookies scope bug fix, Design language: dark data command center, Architecture: Monorepo in-package webapp (Approach A), Scope rule: No AI features, Single-threaded scrape job runner + SSE event bus (+12 more) + +### Community 6 - "Segments Search & Backfill" +Cohesion: 0.26 +Nodes (11): backfill_from_markdown(), parse_markdown(), ParsedMarkdown, Path, Parse all done .md files under md_root, populate segments/FTS/metadata. Idempote, search(), store_segments(), _strip_quotes() (+3 more) + +### Community 7 - "Store Platform Tests" +Cohesion: 0.17 +Nodes (5): store(), test_dashboard_aggregates(), test_migration_idempotent(), test_store_and_search_segments(), test_store_segments_overwrites() + +### Community 8 - "Content Analysis" +Cohesion: 0.27 +Nodes (10): _iter_texts(), Path, Return [(YYYY-MM, count)] of months where `term` appears in transcripts., render_timeline_chart(), render_top_words_chart(), render_wordcloud(), term_timeline(), _tokenize() (+2 more) + +## Knowledge Gaps +- **10 isolated node(s):** `yt-channel-scraper`, `OPPORTUNITIES.md - extension audit`, `Design language: dark data command center`, `yt-dlp InnerTube mechanism (ANDROID/IOS/WEB clients)`, `Feature proposal: search (FTS5 transcript search)` (+5 more) + These have ≤1 connection - possible missing edges or undocumented components. +- **2 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. + +## Suggested Questions +_Questions this graph is uniquely positioned to answer:_ + +- **Why does `Store` connect `Store & Export Layer` to `Transcript Extraction & Parsing`, `Config & Discovery Pipeline`, `CLI Command Layer`, `Segments Search & Backfill`, `Store Platform Tests`, `Content Analysis`?** + _High betweenness centrality (0.194) - this node is a cross-community bridge._ +- **Why does `Segment` connect `Transcript Extraction & Parsing` to `CLI Command Layer`, `Segments Search & Backfill`, `Store Platform Tests`?** + _High betweenness centrality (0.057) - this node is a cross-community bridge._ +- **Why does `Config` connect `Config & Discovery Pipeline` to `Transcript Extraction & Parsing`, `CLI Command Layer`?** + _High betweenness centrality (0.024) - this node is a cross-community bridge._ +- **Are the 4 inferred relationships involving `Store` (e.g. with `ParsedMarkdown` and `store()`) actually correct?** + _`Store` has 4 INFERRED edges - model-reasoned connections that need verification._ +- **Are the 17 inferred relationships involving `Segment` (e.g. with `Chapter` and `Section`) actually correct?** + _`Segment` has 17 INFERRED edges - model-reasoned connections that need verification._ +- **What connects `yt-channel-scraper`, `OPPORTUNITIES.md - extension audit`, `Design language: dark data command center` to the rest of the system?** + _10 weakly-connected nodes found - possible documentation gaps or missing edges._ +- **Should `Webapp Frontend (JS)` be split into smaller, more focused modules?** + _Cohesion score 0.062317429406037 - nodes in this community are weakly interconnected._ \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/017d7d8cd5411dff3256656fa40fc036ebae1576f37e719d258f54ea66ded544.json b/graphify-out/cache/ast/v0.9.22/017d7d8cd5411dff3256656fa40fc036ebae1576f37e719d258f54ea66ded544.json new file mode 100644 index 0000000..728b5dd --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/017d7d8cd5411dff3256656fa40fc036ebae1576f37e719d258f54ea66ded544.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_store_py", "label": "store.py", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_videoref", "label": "VideoRef", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L96", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_videorow", "label": "VideoRow", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L106", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_segmentrow", "label": "SegmentRow", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L129", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_searchhit", "label": "SearchHit", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L138", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_cookierow", "label": "CookieRow", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L150", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_jobrow", "label": "JobRow", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L162", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store", "label": "Store", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L174", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_init", "label": ".__init__()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L175", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\store.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_connect", "label": "._connect()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L180", "_callable": true}, {"id": "connection", "label": "Connection", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\store.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "label": "._init_schema()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L187", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "label": "._cursor()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L198", "_callable": true}, {"id": "cursor", "label": "Cursor", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\store.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_channel", "label": ".upsert_channel()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L208", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_list_channels", "label": ".list_channels()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L222", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_get_channel", "label": ".get_channel()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L227", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_channel", "label": ".delete_channel()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L233", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_videos", "label": ".upsert_videos()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L242", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_get_pending", "label": ".get_pending()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L261", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_get_all", "label": ".get_all()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L275", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_get_video", "label": ".get_video()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L286", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "label": ".query_videos()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L292", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "label": ".update_video_metadata()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L338", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_done", "label": ".mark_done()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L372", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_status", "label": ".mark_status()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L395", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_set_upload_date", "label": ".set_upload_date()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L403", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_error", "label": ".mark_error()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L412", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "label": ".store_segments()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L423", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_get_segments", "label": ".get_segments()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L447", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_has_segments", "label": ".has_segments()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L461", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "label": ".search_segments()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L466", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_cookie", "label": ".upsert_cookie()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L495", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_list_cookies", "label": ".list_cookies()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L510", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_get_cookie", "label": ".get_cookie()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L515", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_set_active_cookie", "label": ".set_active_cookie()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L521", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_get_active_cookie", "label": ".get_active_cookie()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L527", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_cookie", "label": ".delete_cookie()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L533", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_create_job", "label": ".create_job()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L539", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "label": ".update_job()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L548", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_get_job", "label": ".get_job()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L567", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_list_jobs", "label": ".list_jobs()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L573", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_stats", "label": ".stats()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L580", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "label": ".dashboard()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L594", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_store_reset_errors", "label": ".reset_errors()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L654", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_sanitize_fts", "label": "_sanitize_fts()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L665", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "label": "_now_iso()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L678", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "label": "_row_to_videorow()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L682", "_callable": true}, {"id": "row", "label": "Row", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\store.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_row_to_cookierow", "label": "_row_to_cookierow()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L707", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_store_row_to_jobrow", "label": "_row_to_jobrow()", "file_type": "code", "source_file": "src/yt_scraper/store.py", "source_location": "L720", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "sqlite3", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "contextlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "dataclasses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_videoref", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L96", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_videorow", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L106", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_segmentrow", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L129", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_searchhit", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L138", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_cookierow", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L150", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_jobrow", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L162", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_store", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L174", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L175", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_init", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L175", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_connect", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L180", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_connect", "target": "connection", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L180", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L187", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L198", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "target": "cursor", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L198", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_channel", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L208", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_list_channels", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L222", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_get_channel", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L227", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_channel", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L233", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_videos", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L242", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_videos", "target": "d_yt_channel_scraper_src_yt_scraper_store_videoref", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L242", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_get_pending", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L261", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_pending", "target": "d_yt_channel_scraper_src_yt_scraper_store_videorow", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L261", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_get_all", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L275", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_all", "target": "d_yt_channel_scraper_src_yt_scraper_store_videorow", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L275", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_get_video", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L286", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_video", "target": "d_yt_channel_scraper_src_yt_scraper_store_videorow", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L286", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L292", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "target": "d_yt_channel_scraper_src_yt_scraper_store_videorow", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L292", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L338", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_done", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L372", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_status", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L395", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_set_upload_date", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L403", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_error", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L412", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L423", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_get_segments", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L447", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_segments", "target": "d_yt_channel_scraper_src_yt_scraper_store_segmentrow", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L447", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_has_segments", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L461", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L466", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "target": "d_yt_channel_scraper_src_yt_scraper_store_searchhit", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L466", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_cookie", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L495", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_list_cookies", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L510", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_list_cookies", "target": "d_yt_channel_scraper_src_yt_scraper_store_cookierow", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L510", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_get_cookie", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L515", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_cookierow", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L515", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_set_active_cookie", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L521", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_get_active_cookie", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L527", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_active_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_cookierow", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L527", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_cookie", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L533", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_create_job", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L539", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L548", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_get_job", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L567", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_job", "target": "d_yt_channel_scraper_src_yt_scraper_store_jobrow", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L567", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_list_jobs", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L573", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_list_jobs", "target": "d_yt_channel_scraper_src_yt_scraper_store_jobrow", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L573", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_stats", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L580", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L594", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_reset_errors", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L654", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_sanitize_fts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L665", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L678", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L682", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "target": "row", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L682", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "target": "d_yt_channel_scraper_src_yt_scraper_store_videorow", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L682", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_cookierow", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L707", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_row_to_cookierow", "target": "row", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L707", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_row_to_cookierow", "target": "d_yt_channel_scraper_src_yt_scraper_store_cookierow", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L707", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_jobrow", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L720", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_row_to_jobrow", "target": "row", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L720", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_row_to_jobrow", "target": "d_yt_channel_scraper_src_yt_scraper_store_jobrow", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L720", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_init", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L176", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_init", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L178", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_connect", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L188", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_connect", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L199", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_channel", "target": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L209", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_channel", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L210", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_list_channels", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L223", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_channel", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L228", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_channel", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L234", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_videos", "target": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L243", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_videos", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L245", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_pending", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L271", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_pending", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L273", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_all", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L282", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_all", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L284", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_video", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L287", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_video", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L290", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L328", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L335", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L369", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_done", "target": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L380", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_done", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L381", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_status", "target": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L396", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_status", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L397", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_set_upload_date", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L406", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_error", "target": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L413", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_error", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L414", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L424", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_segments", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L448", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_segments", "target": "d_yt_channel_scraper_src_yt_scraper_store_segmentrow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L454", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_has_segments", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L462", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "target": "d_yt_channel_scraper_src_yt_scraper_store_sanitize_fts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L468", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L482", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "target": "d_yt_channel_scraper_src_yt_scraper_store_searchhit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L485", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L496", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L497", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_list_cookies", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L511", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_list_cookies", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_cookierow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L513", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L516", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_cookierow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L519", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_set_active_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L522", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_active_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L528", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_active_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_cookierow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L531", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_cookie", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L534", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_create_job", "target": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L540", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_create_job", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L541", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "target": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L560", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L564", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_job", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L568", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_get_job", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_jobrow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L571", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_list_jobs", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L574", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_list_jobs", "target": "d_yt_channel_scraper_src_yt_scraper_store_row_to_jobrow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L576", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_stats", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L588", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L595", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_store_reset_errors", "target": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L660", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "target": "d_yt_channel_scraper_src_yt_scraper_store_videorow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L684", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_row_to_cookierow", "target": "d_yt_channel_scraper_src_yt_scraper_store_cookierow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L708", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_store_row_to_jobrow", "target": "d_yt_channel_scraper_src_yt_scraper_store_jobrow", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/store.py", "source_location": "L721", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_init", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L177", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_connect", "callee": "connect", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L181", "receiver": "sqlite3"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_connect", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L183", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_connect", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L184", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "callee": "executescript", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L189", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "callee": "SCHEMA", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/store.py", "source_location": "L189"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L191", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "callee": "items", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L192", "receiver": "_VIDEO_COLUMNS"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L194", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "callee": "executescript", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L195", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_init_schema", "callee": "_EXTRA_SCHEMA", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/store.py", "source_location": "L195"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "callee": "cursor", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L201", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "callee": "commit", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L202", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_cursor", "callee": "close", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L204", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_channel", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L211", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_list_channels", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L224", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_list_channels", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L225", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_channel", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L229", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_channel", "callee": "fetchone", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L230", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_channel", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L235", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_channel", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L236", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_channel", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L237", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_channel", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L238", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_videos", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L247", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_pending", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L266", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_pending", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L270", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_pending", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L272", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_pending", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L273", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_all", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L280", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_all", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L283", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_all", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L284", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_video", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L288", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_video", "callee": "fetchone", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L289", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L307", "receiver": "where"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L307", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L309", "receiver": "where"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L309", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L311", "receiver": "where"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L311", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L311", "receiver": "date_from"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L313", "receiver": "where"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L313", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L313", "receiver": "date_to"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L315", "receiver": "where"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L315", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L317", "receiver": "where"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "extend", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L318", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L319", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L320", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L329", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "fetchone", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L330", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L331", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_query_videos", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L335", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L353", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L353", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L355", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L355", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L357", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L357", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "dumps", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L357", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L359", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L359", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L361", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L361", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L363", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L363", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L365", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L365", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L368", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L370", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_video_metadata", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L370", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_done", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L382", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_status", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L398", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_set_upload_date", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L407", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_mark_error", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L415", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L425", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L426", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "start", "is_member_call": false, "indirect": true, "context": "getattr", "source_file": "src/yt_scraper/store.py", "source_location": "L430"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "end", "is_member_call": false, "indirect": true, "context": "getattr", "source_file": "src/yt_scraper/store.py", "source_location": "L431"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L432", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "text", "is_member_call": false, "indirect": true, "context": "getattr", "source_file": "src/yt_scraper/store.py", "source_location": "L432"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L435", "receiver": "rows"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L436", "receiver": "fts_rows"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "executemany", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L438", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_store_segments", "callee": "executemany", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L442", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_segments", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L449", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_segments", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L458", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_has_segments", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L463", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_has_segments", "callee": "fetchone", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L464", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L479", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L481", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L483", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_search_segments", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L490", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_upsert_cookie", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L498", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_list_cookies", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L512", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_list_cookies", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L513", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_cookie", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L517", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_cookie", "callee": "fetchone", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L518", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_set_active_cookie", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L523", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_set_active_cookie", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L525", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_active_cookie", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L529", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_active_cookie", "callee": "fetchone", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L530", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_delete_cookie", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L535", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_create_job", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L542", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_create_job", "callee": "dumps", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L545", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L552", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L552", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L554", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L554", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L556", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L556", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L558", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L558", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L560", "receiver": "sets"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L560", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L563", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L565", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_update_job", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L565", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_job", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L569", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_get_job", "callee": "fetchone", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L570", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_list_jobs", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L575", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_list_jobs", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L576", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_stats", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L585", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_stats", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L589", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_stats", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L590", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L596", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L596", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "fetchone", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L599", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L599", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L611", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L611", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L616", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L616", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L623", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L623", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L635", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L635", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L639", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "lower", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L640", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L640", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L642", "receiver": "tag_counts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "TypeError", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "src/yt_scraper/store.py", "source_location": "L643"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_dashboard", "callee": "items", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L645", "receiver": "tag_counts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_reset_errors", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L659", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_store_reset_errors", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L661", "receiver": "cur"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_sanitize_fts", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L667", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_sanitize_fts", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L671", "receiver": "cleaned"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_sanitize_fts", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L672", "receiver": "tok"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_sanitize_fts", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L674", "receiver": "terms"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_sanitize_fts", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L674", "receiver": "tok"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_sanitize_fts", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L675", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "callee": "isoformat", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L679", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_now_iso", "callee": "now", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L679", "receiver": "datetime"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_store_row_to_videorow", "callee": "keys", "is_member_call": true, "source_file": "src/yt_scraper/store.py", "source_location": "L683", "receiver": "row"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/09a73a233d94b95f31f750ca2d96fe89ac48cf7ac69cff22e9f5112018c0c2ac.json b/graphify-out/cache/ast/v0.9.22/09a73a233d94b95f31f750ca2d96fe89ac48cf7ac69cff22e9f5112018c0c2ac.json new file mode 100644 index 0000000..f882982 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/09a73a233d94b95f31f750ca2d96fe89ac48cf7ac69cff22e9f5112018c0c2ac.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "label": "app.py", "file_type": "code", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "label": "create_app()", "file_type": "code", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L20", "_callable": true}, {"id": "config", "label": "Config", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\app.py"}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\app.py"}, {"id": "fastapi", "label": "FastAPI", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\app.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_app_load_cfg", "label": "_load_cfg()", "file_type": "code", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L74", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "fastapi_responses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "fastapi_staticfiles", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L10", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L13", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L14", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L20", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "target": "config", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L20", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L20", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "target": "fastapi", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L20", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_app_load_cfg", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_load_cfg", "target": "config", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_app_load_cfg", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L21", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L34", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "target": "fastapi", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L39", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_load_cfg", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L76", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_app_load_cfg", "target": "config", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L81", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "Store", "is_member_call": false, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L24", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "auto_import_dir", "is_member_call": false, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L28", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L34", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "backfill_from_markdown", "is_member_call": false, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L35", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L41", "receiver": "app"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "JobManager", "is_member_call": false, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L45", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "include_router", "is_member_call": true, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L50", "receiver": "app"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "build_router", "is_member_call": false, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L50", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L52", "receiver": "_STATIC_DIR"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "mount", "is_member_call": true, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L53", "receiver": "app"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "StaticFiles", "is_member_call": false, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L53", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "_STATIC_DIR", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L53"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L55", "receiver": "app"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "HTMLResponse", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L55"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L59", "receiver": "app"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "HTMLResponse", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L59"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_create_app", "callee": "on_event", "is_member_call": true, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L67", "receiver": "app"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_load_cfg", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L76", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_app_load_cfg", "callee": "load_config", "is_member_call": false, "source_file": "src/yt_scraper/webapp/app.py", "source_location": "L78", "receiver": null}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/0c459d37d23ee068ff0a98b53a93f6c65070e09c18153545989b049560f4f594.json b/graphify-out/cache/ast/v0.9.22/0c459d37d23ee068ff0a98b53a93f6c65070e09c18153545989b049560f4f594.json new file mode 100644 index 0000000..fd43f05 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/0c459d37d23ee068ff0a98b53a93f6c65070e09c18153545989b049560f4f594.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_scripts_start_server_ps1", "label": "start-server.ps1", "file_type": "code", "source_file": "scripts/start-server.ps1", "source_location": "L1"}, {"id": "d_yt_channel_scraper_scripts_start_server_open_browser", "label": "Open-Browser()", "file_type": "code", "source_file": "scripts/start-server.ps1", "source_location": "L6"}], "edges": [{"source": "d_yt_channel_scraper_scripts_start_server_ps1", "target": "d_yt_channel_scraper_scripts_start_server_open_browser", "relation": "contains", "confidence": "EXTRACTED", "source_file": "scripts/start-server.ps1", "source_location": "L6", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_scripts_start_server_open_browser", "callee": "Start-Process", "is_member_call": false, "source_file": "scripts/start-server.ps1", "source_location": "L9"}, {"caller_nid": "d_yt_channel_scraper_scripts_start_server_open_browser", "callee": "Write-Host", "is_member_call": false, "source_file": "scripts/start-server.ps1", "source_location": "L18"}, {"caller_nid": "d_yt_channel_scraper_scripts_start_server_open_browser", "callee": "Write-Host", "is_member_call": false, "source_file": "scripts/start-server.ps1", "source_location": "L19"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/0c924be6b3e5c4aefe549a28f8a314ae236b1b76207023e80fefa32691dce799.json b/graphify-out/cache/ast/v0.9.22/0c924be6b3e5c4aefe549a28f8a314ae236b1b76207023e80fefa32691dce799.json new file mode 100644 index 0000000..1334b61 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/0c924be6b3e5c4aefe549a28f8a314ae236b1b76207023e80fefa32691dce799.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "label": "pipeline.py", "file_type": "code", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "label": "process_video()", "file_type": "code", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L18", "_callable": true}, {"id": "videorow", "label": "VideoRow", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\pipeline.py"}, {"id": "config", "label": "Config", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\pipeline.py"}, {"id": "store", "label": "Store", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\pipeline.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_normalize_date", "label": "_normalize_date()", "file_type": "code", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L130", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_safe_dirname", "label": "_safe_dirname()", "file_type": "code", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L138", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_thumbnail_url_for", "label": "thumbnail_url_for()", "file_type": "code", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L143", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "label": "cache_thumbnail()", "file_type": "code", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L151", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "label": "re_render_videos()", "file_type": "code", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L169", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_rationale_29", "label": "Extract + parse + store + render a single video. Returns final status string.", "file_type": "rationale", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L29"}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_rationale_144", "label": "Thumbnail URL for a video: stored URL, else the canonical YouTube one derived fr", "file_type": "rationale", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L144"}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_rationale_152", "label": "Download + cache a video's thumbnail to /.jpg. Returns", "file_type": "rationale", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L152"}, {"id": "d_yt_channel_scraper_src_yt_scraper_pipeline_rationale_170", "label": "Regenerate .md for done videos that have stored segments. Returns count re-rende", "file_type": "rationale", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L170"}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_extract_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L10", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_render_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "target": "videorow", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "target": "config", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_normalize_date", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L130", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_safe_dirname", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L138", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_thumbnail_url_for", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L143", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L151", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L169", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L169", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "target": "config", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L169", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_normalize_date", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L93", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_safe_dirname", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L111", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_thumbnail_url_for", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L158", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_safe_dirname", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L202", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_rationale_29", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L29", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_rationale_144", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_thumbnail_url_for", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L144", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_rationale_152", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L152", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_pipeline_rationale_170", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L170", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "extract_video", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L37", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "error", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L47", "receiver": "log"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "exc", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L47"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "mark_error", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L48", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "exc", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L48"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "warning", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L52", "receiver": "log"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "mark_status", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L53", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "chapters_from_info", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L56", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "align_chapters", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L57", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "store_segments", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L62", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "dumps", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L63", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "dumps", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L67", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "update_video_metadata", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L71", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L73", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L74", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L75", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L76", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L77", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L77", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L83", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "set_upload_date", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L85", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L85", "receiver": "ud"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L89", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L90", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L93", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L94", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L98", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L99", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L100", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L101", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L102", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L102", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "build_filename_stem", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L106", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L111", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "render_markdown", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L112", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L114", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "relative_to", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L116", "receiver": "md_path"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "is_relative_to", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L116", "receiver": "md_path"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "mark_done", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L119", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_process_video", "callee": "_emit", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L126", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_safe_dirname", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L139", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_safe_dirname", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L140", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_safe_dirname", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L140", "receiver": "safe"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_thumbnail_url_for", "callee": "thumbnail", "is_member_call": false, "indirect": true, "context": "getattr", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L145"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_thumbnail_url_for", "callee": "video_id", "is_member_call": false, "indirect": true, "context": "getattr", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L147"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L154", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L155", "receiver": "out"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "callee": "get_video", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L157", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L160", "receiver": "_requests"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "callee": "raise_for_status", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L161", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L162", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_cache_thumbnail", "callee": "write_bytes", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L163", "receiver": "out"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "get_all", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L176", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "Segment", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L180", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L180", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "Chapter", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L182", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L182", "receiver": "c"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L183", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "align_chapters", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L185", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "get_channel", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L186", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L190", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L195", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "build_filename_stem", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L201", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L202", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L202", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "render_markdown", "is_member_call": false, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L203", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "warning", "is_member_call": true, "source_file": "src/yt_scraper/pipeline.py", "source_location": "L206", "receiver": "log"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_pipeline_re_render_videos", "callee": "exc", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/pipeline.py", "source_location": "L206"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/142ed79d04b7ffc16d45c4fd83b668cbc00e32ba622283aeca1f31210664b0f6.json b/graphify-out/cache/ast/v0.9.22/142ed79d04b7ffc16d45c4fd83b668cbc00e32ba622283aeca1f31210664b0f6.json new file mode 100644 index 0000000..214783b --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/142ed79d04b7ffc16d45c4fd83b668cbc00e32ba622283aeca1f31210664b0f6.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_ratelimit_py", "label": "ratelimit.py", "file_type": "code", "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_ratelimit_polite_sleep", "label": "polite_sleep()", "file_type": "code", "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L7", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_ratelimit_backoff_sleep", "label": "backoff_sleep()", "file_type": "code", "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L12", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_ratelimit_py", "target": "random", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_ratelimit_py", "target": "time", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_ratelimit_py", "target": "d_yt_channel_scraper_src_yt_scraper_ratelimit_polite_sleep", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_ratelimit_py", "target": "d_yt_channel_scraper_src_yt_scraper_ratelimit_backoff_sleep", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L12", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_ratelimit_polite_sleep", "callee": "uniform", "is_member_call": true, "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L8", "receiver": "random"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_ratelimit_polite_sleep", "callee": "sleep", "is_member_call": true, "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L9", "receiver": "time"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_ratelimit_backoff_sleep", "callee": "uniform", "is_member_call": true, "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L13", "receiver": "random"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_ratelimit_backoff_sleep", "callee": "sleep", "is_member_call": true, "source_file": "src/yt_scraper/ratelimit.py", "source_location": "L14", "receiver": "time"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/285ff3f97a258a1caa08b81e25d78590eb1aace9284a1a69d921f73bf80610b0.json b/graphify-out/cache/ast/v0.9.22/285ff3f97a258a1caa08b81e25d78590eb1aace9284a1a69d921f73bf80610b0.json new file mode 100644 index 0000000..0e200b4 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/285ff3f97a258a1caa08b81e25d78590eb1aace9284a1a69d921f73bf80610b0.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_config_py", "label": "config.py", "file_type": "code", "source_file": "src/yt_scraper/config.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_config_delayconfig", "label": "DelayConfig", "file_type": "code", "source_file": "src/yt_scraper/config.py", "source_location": "L11", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_config_ytdlpconfig", "label": "YtDlpConfig", "file_type": "code", "source_file": "src/yt_scraper/config.py", "source_location": "L19", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_config_config", "label": "Config", "file_type": "code", "source_file": "src/yt_scraper/config.py", "source_location": "L25", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_config_config_database_path_resolved", "label": ".database_path_resolved()", "file_type": "code", "source_file": "src/yt_scraper/config.py", "source_location": "L40", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\config.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_config_config_output_dir_resolved", "label": ".output_dir_resolved()", "file_type": "code", "source_file": "src/yt_scraper/config.py", "source_location": "L44", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_config_config_template_path_resolved", "label": ".template_path_resolved()", "file_type": "code", "source_file": "src/yt_scraper/config.py", "source_location": "L48", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "label": "load_config()", "file_type": "code", "source_file": "src/yt_scraper/config.py", "source_location": "L52", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "label": "_build_config()", "file_type": "code", "source_file": "src/yt_scraper/config.py", "source_location": "L61", "_callable": true}, {"id": "any", "label": "Any", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\config.py"}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_config_py", "target": "dataclasses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_py", "target": "yaml", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_delayconfig", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_ytdlpconfig", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L19", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_config", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L25", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_config", "target": "d_yt_channel_scraper_src_yt_scraper_config_config_database_path_resolved", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L40", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_config_database_path_resolved", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L40", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_config", "target": "d_yt_channel_scraper_src_yt_scraper_config_config_output_dir_resolved", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L44", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_config_output_dir_resolved", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L44", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_config", "target": "d_yt_channel_scraper_src_yt_scraper_config_config_template_path_resolved", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L48", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_config_template_path_resolved", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L48", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L52", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L52", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "target": "d_yt_channel_scraper_src_yt_scraper_config_config", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L52", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L61", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L61", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "target": "d_yt_channel_scraper_src_yt_scraper_config_config", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L61", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_config_database_path_resolved", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L41", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_config_output_dir_resolved", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L45", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_config_template_path_resolved", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L49", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L53", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "target": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L58", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "target": "d_yt_channel_scraper_src_yt_scraper_config_config", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L64", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "target": "d_yt_channel_scraper_src_yt_scraper_config_delayconfig", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L71", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "target": "d_yt_channel_scraper_src_yt_scraper_config_ytdlpconfig", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/config.py", "source_location": "L77", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_config_database_path_resolved", "callee": "resolve", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L41", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_config_output_dir_resolved", "callee": "resolve", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L45", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_config_template_path_resolved", "callee": "resolve", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L49", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L54", "receiver": "p"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "callee": "FileNotFoundError", "is_member_call": false, "source_file": "src/yt_scraper/config.py", "source_location": "L55", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "callee": "safe_load", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L57", "receiver": "yaml"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_load_config", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/config.py", "source_location": "L57"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L62", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L63", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L65", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L66", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L67", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L68", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L69", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L70", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L72", "receiver": "delay_raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L73", "receiver": "delay_raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L74", "receiver": "delay_raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L75", "receiver": "delay_raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L78", "receiver": "ydl_raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L79", "receiver": "ydl_raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L81", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L82", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L83", "receiver": "raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_config_build_config", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/config.py", "source_location": "L84", "receiver": "raw"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/2f15912ebacf22f457d91abb145e94909b16faa74732de18a2f07e31afac47a9.json b/graphify-out/cache/ast/v0.9.22/2f15912ebacf22f457d91abb145e94909b16faa74732de18a2f07e31afac47a9.json new file mode 100644 index 0000000..0f7ad50 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/2f15912ebacf22f457d91abb145e94909b16faa74732de18a2f07e31afac47a9.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "label": "monitor.py", "file_type": "code", "source_file": "src/yt_scraper/monitor.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "label": "watch_loop()", "file_type": "code", "source_file": "src/yt_scraper/monitor.py", "source_location": "L18", "_callable": true}, {"id": "config", "label": "Config", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\monitor.py"}, {"id": "store", "label": "Store", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\monitor.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "label": "_run_once()", "file_type": "code", "source_file": "src/yt_scraper/monitor.py", "source_location": "L55", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_monitor_extract_handle", "label": "_extract_handle()", "file_type": "code", "source_file": "src/yt_scraper/monitor.py", "source_location": "L99", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_monitor_rationale_28", "label": "Discover + process pending videos for a channel, optionally on an interval.", "file_type": "rationale", "source_file": "src/yt_scraper/monitor.py", "source_location": "L28"}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "time", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "d_yt_channel_scraper_src_yt_scraper_discover_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L10", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "d_yt_channel_scraper_src_yt_scraper_ratelimit_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "target": "config", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L55", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "target": "config", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L55", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L55", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_py", "target": "d_yt_channel_scraper_src_yt_scraper_monitor_extract_handle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L99", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "target": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L44", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "target": "d_yt_channel_scraper_src_yt_scraper_monitor_extract_handle", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L72", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_monitor_rationale_28", "target": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/monitor.py", "source_location": "L28", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "callee": "_emit", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L37", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "callee": "sleep", "is_member_call": true, "source_file": "src/yt_scraper/monitor.py", "source_location": "L40", "receiver": "time"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "callee": "_emit", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L46", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "callee": "exception", "is_member_call": true, "source_file": "src/yt_scraper/monitor.py", "source_location": "L47", "receiver": "log"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "callee": "_emit", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L51", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_watch_loop", "callee": "sleep", "is_member_call": true, "source_file": "src/yt_scraper/monitor.py", "source_location": "L52", "receiver": "time"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "discover_channel", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L68", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "upsert_channel", "is_member_call": true, "source_file": "src/yt_scraper/monitor.py", "source_location": "L72", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "upsert_videos", "is_member_call": true, "source_file": "src/yt_scraper/monitor.py", "source_location": "L73", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "_emit", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L74", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "get_pending", "is_member_call": true, "source_file": "src/yt_scraper/monitor.py", "source_location": "L76", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "_emit", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L78", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "resolve_active_path", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L84", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "_emit", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L87", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "process_video", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L90", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_run_once", "callee": "polite_sleep", "is_member_call": false, "source_file": "src/yt_scraper/monitor.py", "source_location": "L96", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_extract_handle", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/monitor.py", "source_location": "L101", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_monitor_extract_handle", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/monitor.py", "source_location": "L101", "receiver": "url"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/301d5a1fde90564e824d05b8b427da6644cbd693ad8ac844821e5563389c2ce8.json b/graphify-out/cache/ast/v0.9.22/301d5a1fde90564e824d05b8b427da6644cbd693ad8ac844821e5563389c2ce8.json new file mode 100644 index 0000000..fcc5d53 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/301d5a1fde90564e824d05b8b427da6644cbd693ad8ac844821e5563389c2ce8.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_tests_test_store_platform_py", "label": "test_store_platform.py", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_tests_test_store_platform_store", "label": "store()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L13", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_seeded_store", "label": "seeded_store()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L18", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "label": "test_migration_idempotent()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L30", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "label": "test_store_and_search_segments()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L47", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_store_segments_overwrites", "label": "test_store_segments_overwrites()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L72", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_update_video_metadata", "label": "test_update_video_metadata()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L81", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_query_videos_filters", "label": "test_query_videos_filters()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L91", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "label": "test_cookie_vault()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L103", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_invalid_rejected", "label": "test_cookie_invalid_rejected()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L125", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_only_one_active", "label": "test_cookie_only_one_active()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L131", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_jobs_crud", "label": "test_jobs_crud()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L144", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_store_platform_test_dashboard_aggregates", "label": "test_dashboard_aggregates()", "file_type": "code", "source_file": "tests/test_store_platform.py", "source_location": "L158", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "pytest", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "yt_scraper_store", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "yt_scraper_parse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_store", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L13", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_seeded_store", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L30", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L47", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_store_segments_overwrites", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L72", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_update_video_metadata", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L81", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_query_videos_filters", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L91", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L103", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_invalid_rejected", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L125", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_only_one_active", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L131", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_jobs_crud", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L144", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_store_platform_py", "target": "d_yt_channel_scraper_tests_test_store_platform_test_dashboard_aggregates", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_store_platform.py", "source_location": "L158", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_store", "callee": "Store", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L14", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_seeded_store", "callee": "upsert_channel", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L19", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_seeded_store", "callee": "upsert_channel", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L20", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_seeded_store", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L22", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_seeded_store", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L23", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_seeded_store", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L24", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_seeded_store", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L26", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "callee": "Store", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L32", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "callee": "Store", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L33", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "callee": "execute", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L35", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "callee": "_connect", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L35", "receiver": "s1"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "callee": "execute", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L39", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "callee": "_connect", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L39", "receiver": "s1"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "callee": "execute", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L43", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_migration_idempotent", "callee": "_connect", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L43", "receiver": "s1"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L50", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L51", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "callee": "store_segments", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L53", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "callee": "store_segments", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L54", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L54", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "callee": "search_segments", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L56", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "callee": "search_segments", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L62", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_and_search_segments", "callee": "get_segments", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L67", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_segments_overwrites", "callee": "store_segments", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L74", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_segments_overwrites", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L74", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_segments_overwrites", "callee": "store_segments", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L75", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_segments_overwrites", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L75", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_segments_overwrites", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L75", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_store_segments_overwrites", "callee": "get_segments", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L76", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_update_video_metadata", "callee": "update_video_metadata", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L83", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_update_video_metadata", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L84", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_update_video_metadata", "callee": "loads", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L87", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_query_videos_filters", "callee": "query_videos", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L93", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_query_videos_filters", "callee": "query_videos", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L95", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_query_videos_filters", "callee": "query_videos", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L98", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "import_text", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L111", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "Path", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L111", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "list_vault", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L112", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "set_active", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L117", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "resolve_active_path", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L118", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "Path", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L118", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "exists", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L119", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "Path", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L119", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "delete", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L121", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "Path", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L121", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_vault", "callee": "list_vault", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L122", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_invalid_rejected", "callee": "raises", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L127", "receiver": "pytest"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_invalid_rejected", "callee": "ValueError", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_store_platform.py", "source_location": "L127"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_invalid_rejected", "callee": "import_text", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L128", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_invalid_rejected", "callee": "Path", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L128", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_only_one_active", "callee": "Path", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L133", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_only_one_active", "callee": "import_text", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L135", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_only_one_active", "callee": "import_text", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L136", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_only_one_active", "callee": "set_active", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L137", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_only_one_active", "callee": "set_active", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L138", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_cookie_only_one_active", "callee": "list_vault", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L139", "receiver": "cookies"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_jobs_crud", "callee": "create_job", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L145", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_jobs_crud", "callee": "update_job", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L146", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_jobs_crud", "callee": "update_job", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L147", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_jobs_crud", "callee": "get_job", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L148", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_jobs_crud", "callee": "update_job", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L152", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_jobs_crud", "callee": "get_job", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L153", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_dashboard_aggregates", "callee": "store_segments", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L160", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_dashboard_aggregates", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_store_platform.py", "source_location": "L160", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_dashboard_aggregates", "callee": "update_video_metadata", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L161", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_dashboard_aggregates", "callee": "update_video_metadata", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L162", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_dashboard_aggregates", "callee": "dashboard", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L163", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_store_platform_test_dashboard_aggregates", "callee": "get", "is_member_call": true, "source_file": "tests/test_store_platform.py", "source_location": "L169", "receiver": "tags"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/33bef431555f5edd76ea2c4a39cfca53964da20dae91d0b46c81b5e21e5bfe81.json b/graphify-out/cache/ast/v0.9.22/33bef431555f5edd76ea2c4a39cfca53964da20dae91d0b46c81b5e21e5bfe81.json new file mode 100644 index 0000000..41f6ac9 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/33bef431555f5edd76ea2c4a39cfca53964da20dae91d0b46c81b5e21e5bfe81.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "label": "cookies.py", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "label": "cookies_dir()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L18", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\cookies.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "label": "parse_netscape()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L24", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "label": "parse_netscape_file()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L62", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_import_file", "label": "import_file()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L74", "_callable": true}, {"id": "store", "label": "Store", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\cookies.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "label": "import_text()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L80", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "label": "auto_import_dir()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L99", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_set_active", "label": "set_active()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L129", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_list_vault", "label": "list_vault()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L133", "_callable": true}, {"id": "cookierow", "label": "CookieRow", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\cookies.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_delete", "label": "delete()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L137", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_resolve_active_path", "label": "resolve_active_path()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L145", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_is_expired", "label": "is_expired()", "file_type": "code", "source_file": "src/yt_scraper/cookies.py", "source_location": "L154", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_rationale_25", "label": "Parse Netscape cookie text. Returns (ok, info). info = {count, has_session,", "file_type": "rationale", "source_file": "src/yt_scraper/cookies.py", "source_location": "L25"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cookies_rationale_100", "label": "Import any loose .txt Netscape files in dir that aren't tracked yet. Returns cou", "file_type": "rationale", "source_file": "src/yt_scraper/cookies.py", "source_location": "L100"}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "uuid", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L24", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L62", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L62", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_import_file", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_import_file", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_import_file", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_import_file", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L80", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L80", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L80", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L99", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L99", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L99", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_set_active", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L129", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_set_active", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L129", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_list_vault", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L133", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_list_vault", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L133", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_list_vault", "target": "cookierow", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L133", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_delete", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L137", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_delete", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L137", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_delete", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L137", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_resolve_active_path", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L145", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_resolve_active_path", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L145", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_resolve_active_path", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L145", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_is_expired", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L154", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_is_expired", "target": "cookierow", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L154", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L19", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L63", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L71", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_import_file", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L75", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_import_file", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L77", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L81", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L85", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L101", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L107", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_delete", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L141", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_resolve_active_path", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L149", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_rationale_25", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L25", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cookies_rationale_100", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cookies.py", "source_location": "L100", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L20", "receiver": "d"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_cookies_dir", "callee": "resolve", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L21", "receiver": "d"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "splitlines", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L29", "receiver": "text"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "rstrip", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L34", "receiver": "line"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L35", "receiver": "line"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "startswith", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L35", "receiver": "line"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L37", "receiver": "line"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L44", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "add", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L47", "receiver": "names"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L50", "receiver": "expiries"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "isoformat", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L58", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape", "callee": "fromtimestamp", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L58", "receiver": "datetime"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L64", "receiver": "p"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "callee": "read_text", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L67", "receiver": "p"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "callee": "warning", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L69", "receiver": "log"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_parse_netscape_file", "callee": "exc", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/cookies.py", "source_location": "L69"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_import_file", "callee": "read_text", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L76", "receiver": "src"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "callee": "ValueError", "is_member_call": false, "source_file": "src/yt_scraper/cookies.py", "source_location": "L83", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "callee": "uuid4", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L84", "receiver": "uuid"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "callee": "write_text", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L87", "receiver": "out_path"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_import_text", "callee": "upsert_cookie", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L88", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "callee": "list_cookies", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L102", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "callee": "glob", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L104", "receiver": "cdir"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "callee": "upsert_cookie", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L112", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "callee": "get_active_cookie", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L122", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "callee": "list_cookies", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L123", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_auto_import_dir", "callee": "set_active_cookie", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L125", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_set_active", "callee": "set_active_cookie", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L130", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_list_vault", "callee": "list_cookies", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L134", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_delete", "callee": "get_cookie", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L138", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_delete", "callee": "delete_cookie", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L139", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_delete", "callee": "unlink", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L142", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_resolve_active_path", "callee": "get_active_cookie", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L146", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_resolve_active_path", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L151", "receiver": "path"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_is_expired", "callee": "fromisoformat", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L158", "receiver": "datetime"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cookies_is_expired", "callee": "now", "is_member_call": true, "source_file": "src/yt_scraper/cookies.py", "source_location": "L161", "receiver": "datetime"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/39d6fb49fe1a6399b04c85f41a27c66deef9a756a36a33d61f45cbbadc2306c6.json b/graphify-out/cache/ast/v0.9.22/39d6fb49fe1a6399b04c85f41a27c66deef9a756a36a33d61f45cbbadc2306c6.json new file mode 100644 index 0000000..ee0a146 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/39d6fb49fe1a6399b04c85f41a27c66deef9a756a36a33d61f45cbbadc2306c6.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_webapp_init_py", "label": "__init__.py", "file_type": "code", "source_file": "src/yt_scraper/webapp/__init__.py", "source_location": "L1"}], "edges": [], "raw_calls": []} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/415969ae62c7c3b54477a743db17ff1d00b8020b7e4e469d4191a24ecb220299.json b/graphify-out/cache/ast/v0.9.22/415969ae62c7c3b54477a743db17ff1d00b8020b7e4e469d4191a24ecb220299.json new file mode 100644 index 0000000..55ffe27 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/415969ae62c7c3b54477a743db17ff1d00b8020b7e4e469d4191a24ecb220299.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "label": "jobs.py", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "label": "JobManager", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L19", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_init", "label": ".__init__()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L22", "_callable": true}, {"id": "store", "label": "Store", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\jobs.py"}, {"id": "config", "label": "Config", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\jobs.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_start", "label": ".start()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L32", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_enqueue", "label": ".enqueue()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L38", "_callable": true}, {"id": "any", "label": "Any", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\jobs.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_cancel", "label": ".cancel()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L47", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_events_since", "label": ".events_since()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L55", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_is_terminal", "label": ".is_terminal()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L60", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "label": "._emit()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L70", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_worker", "label": "._worker()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L74", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "label": "._run_job()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L87", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", "label": "._resolve_channel_for_video()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L100", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "label": "._run_batch()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L110", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "label": "._run_audio()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L154", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "label": "._run_channel()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L194", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_clone_config", "label": "_clone_config()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L265", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_resolve_channel_url", "label": "_resolve_channel_url()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L270", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_handle", "label": "_handle()", "file_type": "code", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L282", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_rationale_20", "label": "Single-worker scrape job runner with an in-memory event log per job (SSE-polled)", "file_type": "rationale", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L20"}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "asyncio", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "threading", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "time", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "uuid", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "collections", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_discover_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L13", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L14", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_ratelimit_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L15", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L16", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L19", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_init", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_init", "target": "config", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_start", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L32", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_enqueue", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L38", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_enqueue", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L38", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_cancel", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L47", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_events_since", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L55", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_is_terminal", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L60", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L70", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_worker", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L87", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L100", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L110", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L110", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L154", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L154", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L194", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L194", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_clone_config", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L265", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_clone_config", "target": "config", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L265", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_clone_config", "target": "config", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L265", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_resolve_channel_url", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L270", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_resolve_channel_url", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L270", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_resolve_channel_url", "target": "config", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L270", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_handle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L282", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_enqueue", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L43", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_cancel", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L52", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_worker", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L82", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_worker", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L85", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L93", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L96", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L98", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L117", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_clone_config", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L119", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L141", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L167", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_clone_config", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L199", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_resolve_channel_url", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L200", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L203", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_handle", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L234", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_rationale_20", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L20", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_init", "callee": "Lock", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L25", "receiver": "threading"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_init", "callee": "deque", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L28", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_init", "callee": "Thread", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L29", "receiver": "threading"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_enqueue", "callee": "uuid4", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L39", "receiver": "uuid"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_enqueue", "callee": "create_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L40", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_enqueue", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L44", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_cancel", "callee": "get_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L48", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_cancel", "callee": "add", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L51", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_events_since", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L57", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_is_terminal", "callee": "get_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L61", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L72", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_emit", "callee": "setdefault", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L72", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_worker", "callee": "popleft", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L77", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_worker", "callee": "sleep", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L79", "receiver": "time"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_worker", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L84", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_worker", "callee": "exc", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L84"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_worker", "callee": "exc", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L85"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "callee": "get_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L88", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L91", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L92", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_job", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L95", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", "callee": "get_video", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L101", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", "callee": "get_channel", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L104", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L105", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", "callee": "lstrip", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L106", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L106", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L112", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L113", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "resolve_active_path", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L113", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L114", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L116", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L120", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L125", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "get_video", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L128", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L132", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L135", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L136", "receiver": "md_path"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "cache_thumbnail", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L137", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "_process_video", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L142", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "m", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L145"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "cache_thumbnail", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L147", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L149", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_batch", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L151", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L156", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L157", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L158", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "resolve_active_path", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L158", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "get_video", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L160", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "get_video", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L160", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "get_all", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L162", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L163", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L164", "receiver": "out_dir"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L166", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "YoutubeDL", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L177", "receiver": "yt_dlp"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L180", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "download", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L184", "receiver": "ydl"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L189", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_audio", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L191", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "get_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L195", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L202", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L207", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "discover_channel", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L210", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L212", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "exc", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L212"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L216", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L217", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L218", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L219", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L220", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L221", "receiver": "opts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L226", "receiver": "since"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "startswith", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L230", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "upsert_channel", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L234", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "upsert_videos", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L235", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "get_pending", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L237", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L239", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "resolve_active_path", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L243", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L247", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "process_video", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L250", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "m", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L253"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L256", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "polite_sleep", "is_member_call": false, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L259", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_jobmanager_run_channel", "callee": "update_job", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L261", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_clone_config", "callee": "deepcopy", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L267", "receiver": "copy"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_resolve_channel_url", "callee": "get_channel", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L273", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_resolve_channel_url", "callee": "lstrip", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L276", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_resolve_channel_url", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L276", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_handle", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L284", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_jobs_handle", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/webapp/jobs.py", "source_location": "L284", "receiver": "url"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/5c0cce89c92ed6eab1cd14158c3f5f020a68cc0469d2129f7c3af424d184fa6d.json b/graphify-out/cache/ast/v0.9.22/5c0cce89c92ed6eab1cd14158c3f5f020a68cc0469d2129f7c3af424d184fa6d.json new file mode 100644 index 0000000..b075409 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/5c0cce89c92ed6eab1cd14158c3f5f020a68cc0469d2129f7c3af424d184fa6d.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_tests_test_chapters_py", "label": "test_chapters.py", "file_type": "code", "source_file": "tests/test_chapters.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_tests_test_chapters_test_align_no_chapters", "label": "test_align_no_chapters()", "file_type": "code", "source_file": "tests/test_chapters.py", "source_location": "L7", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_chapters_test_align_with_chapters", "label": "test_align_with_chapters()", "file_type": "code", "source_file": "tests/test_chapters.py", "source_location": "L15", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_chapters_test_align_pre_chapter_segments", "label": "test_align_pre_chapter_segments()", "file_type": "code", "source_file": "tests/test_chapters.py", "source_location": "L34", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_chapters_test_chapters_from_info", "label": "test_chapters_from_info()", "file_type": "code", "source_file": "tests/test_chapters.py", "source_location": "L43", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_chapters_test_chapters_from_info_empty", "label": "test_chapters_from_info_empty()", "file_type": "code", "source_file": "tests/test_chapters.py", "source_location": "L56", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_tests_test_chapters_py", "target": "yt_scraper_chapters", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_chapters.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_chapters_py", "target": "yt_scraper_parse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_chapters.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_chapters_py", "target": "d_yt_channel_scraper_tests_test_chapters_test_align_no_chapters", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_chapters.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_chapters_py", "target": "d_yt_channel_scraper_tests_test_chapters_test_align_with_chapters", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_chapters.py", "source_location": "L15", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_chapters_py", "target": "d_yt_channel_scraper_tests_test_chapters_test_align_pre_chapter_segments", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_chapters.py", "source_location": "L34", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_chapters_py", "target": "d_yt_channel_scraper_tests_test_chapters_test_chapters_from_info", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_chapters.py", "source_location": "L43", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_chapters_py", "target": "d_yt_channel_scraper_tests_test_chapters_test_chapters_from_info_empty", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_chapters.py", "source_location": "L56", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_no_chapters", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L8", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_no_chapters", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L8", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_no_chapters", "callee": "align_chapters", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L9", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_with_chapters", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L17", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_with_chapters", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L18", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_with_chapters", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L19", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_with_chapters", "callee": "Chapter", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L22", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_with_chapters", "callee": "Chapter", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L23", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_with_chapters", "callee": "align_chapters", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L25", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_pre_chapter_segments", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L35", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_pre_chapter_segments", "callee": "Chapter", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L36", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_align_pre_chapter_segments", "callee": "align_chapters", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L37", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_chapters_from_info", "callee": "chapters_from_info", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L50", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_chapters_from_info_empty", "callee": "chapters_from_info", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L57", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_chapters_test_chapters_from_info_empty", "callee": "chapters_from_info", "is_member_call": false, "source_file": "tests/test_chapters.py", "source_location": "L58", "receiver": null}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/5eb1ea5adee7b3a6de0470fbefdc34a0081f0886289248d1a6985eebd5d048f2.json b/graphify-out/cache/ast/v0.9.22/5eb1ea5adee7b3a6de0470fbefdc34a0081f0886289248d1a6985eebd5d048f2.json new file mode 100644 index 0000000..6ab35c1 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/5eb1ea5adee7b3a6de0470fbefdc34a0081f0886289248d1a6985eebd5d048f2.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "label": "chapters.py", "file_type": "code", "source_file": "src/yt_scraper/chapters.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_chapters_chapter", "label": "Chapter", "file_type": "code", "source_file": "src/yt_scraper/chapters.py", "source_location": "L9", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_chapters_section", "label": "Section", "file_type": "code", "source_file": "src/yt_scraper/chapters.py", "source_location": "L16", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_chapters_align_chapters", "label": "align_chapters()", "file_type": "code", "source_file": "src/yt_scraper/chapters.py", "source_location": "L22", "_callable": true}, {"id": "segment", "label": "Segment", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\chapters.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "label": "chapters_from_info()", "file_type": "code", "source_file": "src/yt_scraper/chapters.py", "source_location": "L39", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "target": "dataclasses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_chapter", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_section", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L16", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_align_chapters", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_align_chapters", "target": "segment", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_align_chapters", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_chapter", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_align_chapters", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_section", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L39", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_chapter", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L39", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_align_chapters", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_section", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L24", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_chapter", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/chapters.py", "source_location": "L48", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_chapters_align_chapters", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/chapters.py", "source_location": "L34", "receiver": "sections"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_chapters_align_chapters", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/chapters.py", "source_location": "L35", "receiver": "sections"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/chapters.py", "source_location": "L40", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/chapters.py", "source_location": "L43", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/chapters.py", "source_location": "L43", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/chapters.py", "source_location": "L46", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/chapters.py", "source_location": "L47", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_chapters_chapters_from_info", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/chapters.py", "source_location": "L48", "receiver": "out"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/5f5648fe20db27632fcc9468b33427f8525e761bd11953a5cb6fe268c27823b8.json b/graphify-out/cache/ast/v0.9.22/5f5648fe20db27632fcc9468b33427f8525e761bd11953a5cb6fe268c27823b8.json new file mode 100644 index 0000000..263737e --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/5f5648fe20db27632fcc9468b33427f8525e761bd11953a5cb6fe268c27823b8.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_export_py", "label": "export.py", "file_type": "code", "source_file": "src/yt_scraper/export.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "label": "export_json()", "file_type": "code", "source_file": "src/yt_scraper/export.py", "source_location": "L12", "_callable": true}, {"id": "store", "label": "Store", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\export.py"}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\export.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "label": "export_csv()", "file_type": "code", "source_file": "src/yt_scraper/export.py", "source_location": "L24", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "label": "export_srt_video()", "file_type": "code", "source_file": "src/yt_scraper/export.py", "source_location": "L42", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "label": "export_srt()", "file_type": "code", "source_file": "src/yt_scraper/export.py", "source_location": "L52", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "label": "export_html()", "file_type": "code", "source_file": "src/yt_scraper/export.py", "source_location": "L66", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_export_video_to_dict", "label": "_video_to_dict()", "file_type": "code", "source_file": "src/yt_scraper/export.py", "source_location": "L79", "_callable": true}, {"id": "videorow", "label": "VideoRow", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\export.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_export_segments_to_srt", "label": "_segments_to_srt()", "file_type": "code", "source_file": "src/yt_scraper/export.py", "source_location": "L105", "_callable": true}, {"id": "segmentrow", "label": "SegmentRow", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\export.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_export_srt_ts", "label": "_srt_ts()", "file_type": "code", "source_file": "src/yt_scraper/export.py", "source_location": "L113", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "csv", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "jinja2", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L24", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L24", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L24", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L24", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L42", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L42", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L42", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L42", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L52", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L52", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L52", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "target": "path", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L52", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L66", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L66", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L66", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L66", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L66", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "d_yt_channel_scraper_src_yt_scraper_export_video_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L79", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_video_to_dict", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L79", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_video_to_dict", "target": "videorow", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L79", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "d_yt_channel_scraper_src_yt_scraper_export_segments_to_srt", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L105", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_segments_to_srt", "target": "segmentrow", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L105", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_py", "target": "d_yt_channel_scraper_src_yt_scraper_export_srt_ts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L113", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L13", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "target": "d_yt_channel_scraper_src_yt_scraper_export_video_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L25", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "target": "d_yt_channel_scraper_src_yt_scraper_export_video_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L37", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L46", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "target": "d_yt_channel_scraper_src_yt_scraper_export_segments_to_srt", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L48", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L53", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "target": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L60", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L67", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "target": "d_yt_channel_scraper_src_yt_scraper_export_video_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L72", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_export_segments_to_srt", "target": "d_yt_channel_scraper_src_yt_scraper_export_srt_ts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/export.py", "source_location": "L109", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L14", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "callee": "get_all", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L15", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "callee": "list_channels", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L17", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "callee": "write_text", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L20", "receiver": "out"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_json", "callee": "dumps", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L20", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L26", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "callee": "get_all", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L27", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "callee": "DictWriter", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L34", "receiver": "csv"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/export.py", "source_location": "L34"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "callee": "writeheader", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L35", "receiver": "writer"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_csv", "callee": "writerow", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L38", "receiver": "writer"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "callee": "get_segments", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L43", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L47", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_srt_video", "callee": "write_text", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L48", "receiver": "out"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L54", "receiver": "out_dir"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "callee": "get_all", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L56", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_srt", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L62", "receiver": "written"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L68", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "resolve", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L69", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "resolve", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L69", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "__file__", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/export.py", "source_location": "L69"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "Environment", "is_member_call": false, "source_file": "src/yt_scraper/export.py", "source_location": "L70", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "FileSystemLoader", "is_member_call": false, "source_file": "src/yt_scraper/export.py", "source_location": "L70", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "select_autoescape", "is_member_call": false, "source_file": "src/yt_scraper/export.py", "source_location": "L70", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "get_template", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L71", "receiver": "env"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "get_all", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L72", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "list_channels", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L73", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "render", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L74", "receiver": "template"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_export_html", "callee": "write_text", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L75", "receiver": "out"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_video_to_dict", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L83", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_video_to_dict", "callee": "TypeError", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "src/yt_scraper/export.py", "source_location": "L84"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_segments_to_srt", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L109", "receiver": "blocks"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_segments_to_srt", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/export.py", "source_location": "L110", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_srt_ts", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/export.py", "source_location": "L116", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_export_srt_ts", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/export.py", "source_location": "L117", "receiver": null}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/64a9963471c61688046509288debd54d5eb992be7e3bd86fd0e0d23714316585.json b/graphify-out/cache/ast/v0.9.22/64a9963471c61688046509288debd54d5eb992be7e3bd86fd0e0d23714316585.json new file mode 100644 index 0000000..df31f46 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/64a9963471c61688046509288debd54d5eb992be7e3bd86fd0e0d23714316585.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_extract_py", "label": "extract.py", "file_type": "code", "source_file": "src/yt_scraper/extract.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_extract_subtitlepick", "label": "SubtitlePick", "file_type": "code", "source_file": "src/yt_scraper/extract.py", "source_location": "L16", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_extract_videodata", "label": "VideoData", "file_type": "code", "source_file": "src/yt_scraper/extract.py", "source_location": "L24", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "label": "extract_video()", "file_type": "code", "source_file": "src/yt_scraper/extract.py", "source_location": "L31", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "label": "pick_subtitle()", "file_type": "code", "source_file": "src/yt_scraper/extract.py", "source_location": "L72", "_callable": true}, {"id": "any", "label": "Any", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\extract.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_extract_pick_best_format", "label": "_pick_best_format()", "file_type": "code", "source_file": "src/yt_scraper/extract.py", "source_location": "L101", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_extract_normalize_lang", "label": "_normalize_lang()", "file_type": "code", "source_file": "src/yt_scraper/extract.py", "source_location": "L113", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_extract_download_subtitle", "label": "_download_subtitle()", "file_type": "code", "source_file": "src/yt_scraper/extract.py", "source_location": "L118", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "dataclasses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "requests", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "yt_dlp", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L10", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "d_yt_channel_scraper_src_yt_scraper_extract_subtitlepick", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L16", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "d_yt_channel_scraper_src_yt_scraper_extract_videodata", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L24", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L31", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "target": "d_yt_channel_scraper_src_yt_scraper_extract_videodata", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L31", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L72", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L72", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "target": "d_yt_channel_scraper_src_yt_scraper_extract_subtitlepick", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L72", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "d_yt_channel_scraper_src_yt_scraper_extract_pick_best_format", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L101", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_pick_best_format", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L101", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_pick_best_format", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L101", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "d_yt_channel_scraper_src_yt_scraper_extract_normalize_lang", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L113", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_py", "target": "d_yt_channel_scraper_src_yt_scraper_extract_download_subtitle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L118", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "target": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L59", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "target": "d_yt_channel_scraper_src_yt_scraper_extract_download_subtitle", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L62", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "target": "d_yt_channel_scraper_src_yt_scraper_extract_videodata", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L69", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "target": "d_yt_channel_scraper_src_yt_scraper_extract_normalize_lang", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L84", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "target": "d_yt_channel_scraper_src_yt_scraper_extract_pick_best_format", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L90", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "target": "d_yt_channel_scraper_src_yt_scraper_extract_subtitlepick", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/extract.py", "source_location": "L92", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "callee": "YoutubeDL", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L56", "receiver": "yt_dlp"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "callee": "extract_info", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L57", "receiver": "ydl"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "callee": "parse_auto_dump", "is_member_call": false, "source_file": "src/yt_scraper/extract.py", "source_location": "L64", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "callee": "warning", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L66", "receiver": "log"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_extract_video", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L68", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L73", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L74", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_pick_subtitle", "callee": "items", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L85", "receiver": "tracks"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_pick_best_format", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L105", "receiver": "fmt"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_pick_best_format", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L105", "receiver": "fmt"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_pick_best_format", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L108", "receiver": "fmt"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_normalize_lang", "callee": "lower", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L114", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_normalize_lang", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L114", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_normalize_lang", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L114", "receiver": "code"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_download_subtitle", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L120", "receiver": "requests"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_download_subtitle", "callee": "raise_for_status", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L121", "receiver": "resp"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_download_subtitle", "callee": "error", "is_member_call": true, "source_file": "src/yt_scraper/extract.py", "source_location": "L124", "receiver": "log"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_extract_download_subtitle", "callee": "exc", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/extract.py", "source_location": "L124"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/7aa050f1ed896a0e062669f2f287f75ceb7a57b22ddcc5b635bed3d59779b759.json b/graphify-out/cache/ast/v0.9.22/7aa050f1ed896a0e062669f2f287f75ceb7a57b22ddcc5b635bed3d59779b759.json new file mode 100644 index 0000000..d171f91 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/7aa050f1ed896a0e062669f2f287f75ceb7a57b22ddcc5b635bed3d59779b759.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_discover_py", "label": "discover.py", "file_type": "code", "source_file": "src/yt_scraper/discover.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "label": "discover_channel()", "file_type": "code", "source_file": "src/yt_scraper/discover.py", "source_location": "L13", "_callable": true}, {"id": "videoref", "label": "VideoRef", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\discover.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_discover_flatten_entries", "label": "_flatten_entries()", "file_type": "code", "source_file": "src/yt_scraper/discover.py", "source_location": "L57", "_callable": true}, {"id": "any", "label": "Any", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\discover.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_discover_rationale_14", "label": "Returns (channel_id, channel_name, video_refs).", "file_type": "rationale", "source_file": "src/yt_scraper/discover.py", "source_location": "L14"}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_discover_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_py", "target": "yt_dlp", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_py", "target": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L13", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "target": "videoref", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L13", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_py", "target": "d_yt_channel_scraper_src_yt_scraper_discover_flatten_entries", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L57", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_flatten_entries", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L57", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_flatten_entries", "target": "any", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L57", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "target": "d_yt_channel_scraper_src_yt_scraper_discover_flatten_entries", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L30", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "target": "videoref", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L43", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_discover_rationale_14", "target": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/discover.py", "source_location": "L14", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "YoutubeDL", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L24", "receiver": "yt_dlp"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "extract_info", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L25", "receiver": "ydl"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L27", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L27", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L27", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L28", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L28", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L28", "receiver": "info"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L33", "receiver": "entry"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L36", "receiver": "entry"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L38", "receiver": "entry"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L39", "receiver": "entry"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L40", "receiver": "entry"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L41", "receiver": "entry"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L42", "receiver": "refs"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_discover_channel", "callee": "info", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L53", "receiver": "log"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_flatten_entries", "callee": "dict", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/discover.py", "source_location": "L64"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_flatten_entries", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L64", "receiver": "entry"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_flatten_entries", "callee": "extend", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L65", "receiver": "out"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_discover_flatten_entries", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/discover.py", "source_location": "L67", "receiver": "out"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/7b6c9aede202fa24c4070eff2a45987f38369a6d73121e2cc8bbaafdaaed6ec3.json b/graphify-out/cache/ast/v0.9.22/7b6c9aede202fa24c4070eff2a45987f38369a6d73121e2cc8bbaafdaaed6ec3.json new file mode 100644 index 0000000..09a60fa --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/7b6c9aede202fa24c4070eff2a45987f38369a6d73121e2cc8bbaafdaaed6ec3.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_render_py", "label": "render.py", "file_type": "code", "source_file": "src/yt_scraper/render.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_render_format_timestamp", "label": "format_timestamp()", "file_type": "code", "source_file": "src/yt_scraper/render.py", "source_location": "L11", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_render_quote_yaml", "label": "quote_yaml()", "file_type": "code", "source_file": "src/yt_scraper/render.py", "source_location": "L20", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_render_to_json", "label": "to_json()", "file_type": "code", "source_file": "src/yt_scraper/render.py", "source_location": "L30", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "label": "_make_env()", "file_type": "code", "source_file": "src/yt_scraper/render.py", "source_location": "L35", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\render.py"}, {"id": "environment", "label": "Environment", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\render.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "label": "render_markdown()", "file_type": "code", "source_file": "src/yt_scraper/render.py", "source_location": "L48", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_render_build_filename_stem", "label": "build_filename_stem()", "file_type": "code", "source_file": "src/yt_scraper/render.py", "source_location": "L66", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "jinja2", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "d_yt_channel_scraper_src_yt_scraper_render_format_timestamp", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "d_yt_channel_scraper_src_yt_scraper_render_quote_yaml", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L20", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "d_yt_channel_scraper_src_yt_scraper_render_to_json", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L30", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L35", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L35", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "target": "environment", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L35", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L48", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L48", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L48", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L48", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_py", "target": "d_yt_channel_scraper_src_yt_scraper_render_build_filename_stem", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L66", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "target": "environment", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L36", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "target": "d_yt_channel_scraper_src_yt_scraper_render_format_timestamp", "relation": "indirect_call", "context": "assignment", "confidence": "INFERRED", "source_file": "src/yt_scraper/render.py", "source_location": "L42", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "target": "d_yt_channel_scraper_src_yt_scraper_render_quote_yaml", "relation": "indirect_call", "context": "assignment", "confidence": "INFERRED", "source_file": "src/yt_scraper/render.py", "source_location": "L43", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "target": "d_yt_channel_scraper_src_yt_scraper_render_to_json", "relation": "indirect_call", "context": "assignment", "confidence": "INFERRED", "source_file": "src/yt_scraper/render.py", "source_location": "L44", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L54", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "target": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/render.py", "source_location": "L55", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_format_timestamp", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/render.py", "source_location": "L13", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_format_timestamp", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/render.py", "source_location": "L14", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_quote_yaml", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L25", "receiver": "value"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_to_json", "callee": "dumps", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L32", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "callee": "FileSystemLoader", "is_member_call": false, "source_file": "src/yt_scraper/render.py", "source_location": "L37", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_make_env", "callee": "select_autoescape", "is_member_call": false, "source_file": "src/yt_scraper/render.py", "source_location": "L38", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "callee": "resolve", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L54", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "callee": "get_template", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L56", "receiver": "env"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "callee": "render", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L57", "receiver": "template"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L60", "receiver": "out_dir"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_render_markdown", "callee": "write_text", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L62", "receiver": "out_file"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_build_filename_stem", "callee": "slugify", "is_member_call": false, "source_file": "src/yt_scraper/render.py", "source_location": "L69", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_build_filename_stem", "callee": "format", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L70", "receiver": "template"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_build_filename_stem", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L71", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_build_filename_stem", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L72", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_render_build_filename_stem", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/render.py", "source_location": "L72", "receiver": "safe"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/92ebf7566766c51a5116f810a79d6444db5472466580806cb39777c868b5a5b4.json b/graphify-out/cache/ast/v0.9.22/92ebf7566766c51a5116f810a79d6444db5472466580806cb39777c868b5a5b4.json new file mode 100644 index 0000000..13c9ebe --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/92ebf7566766c51a5116f810a79d6444db5472466580806cb39777c868b5a5b4.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_init_py", "label": "__init__.py", "file_type": "code", "source_file": "src/yt_scraper/__init__.py", "source_location": "L1"}], "edges": [], "raw_calls": []} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/9b4e29bbe5f0ed1517912d40ea1ca2d60555bef6e8416b4c5cb2e55d4227267d.json b/graphify-out/cache/ast/v0.9.22/9b4e29bbe5f0ed1517912d40ea1ca2d60555bef6e8416b4c5cb2e55d4227267d.json new file mode 100644 index 0000000..3018a0b --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/9b4e29bbe5f0ed1517912d40ea1ca2d60555bef6e8416b4c5cb2e55d4227267d.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_cli_py", "label": "cli.py", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_setup_logging", "label": "_setup_logging()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L28", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "label": "cli()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L47", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_apply_filters", "label": "_apply_filters()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L72", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_scrape", "label": "scrape()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L99", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "label": "_run_scrape()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L104", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "label": "_print_dry_run()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L176", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "label": "search_cmd()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L195", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "label": "export_cmd()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L219", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "label": "audio_cmd()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L248", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_channels_grp", "label": "channels_grp()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L291", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "label": "channels_list()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L297", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_channels_add", "label": "channels_add()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L312", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_channels_remove", "label": "channels_remove()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L325", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_watch_cmd", "label": "watch_cmd()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L345", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "label": "analyze_cmd()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L363", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "label": "re_render_cmd()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L408", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "label": "_channel_targets()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L446", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "label": "_print_stats()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L458", "_callable": true}, {"id": "store", "label": "Store", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\cli.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_title_for", "label": "_title_for()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L470", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_extract_handle", "label": "_extract_handle()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L475", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_fmt_date", "label": "_fmt_date()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L481", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_fmt_duration", "label": "_fmt_duration()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L489", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_seconds_to_ts", "label": "seconds_to_ts()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L497", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_safe_dirname", "label": "_safe_dirname()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L504", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_safe_filename", "label": "_safe_filename()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L509", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_parse_tags", "label": "_parse_tags()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L514", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_parse_interval", "label": "_parse_interval()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L524", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_main", "label": "main()", "file_type": "code", "source_file": "src/yt_scraper/cli.py", "source_location": "L537", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_48", "label": "yt-channel-scraper: plataforma local de miner\u00eda de contenido de creadores.", "file_type": "rationale", "source_file": "src/yt_scraper/cli.py", "source_location": "L48"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_100", "label": "Scrape completo: discovery + extraccion + markdown.", "file_type": "rationale", "source_file": "src/yt_scraper/cli.py", "source_location": "L100"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_196", "label": "Busqueda full-text en transcripciones.", "file_type": "rationale", "source_file": "src/yt_scraper/cli.py", "source_location": "L196"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_220", "label": "Export multi-formato.", "file_type": "rationale", "source_file": "src/yt_scraper/cli.py", "source_location": "L220"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_249", "label": "Descarga audio MP3 (requiere ffmpeg).", "file_type": "rationale", "source_file": "src/yt_scraper/cli.py", "source_location": "L249"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_346", "label": "Monitoreo de nuevos videos.", "file_type": "rationale", "source_file": "src/yt_scraper/cli.py", "source_location": "L346"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_364", "label": "Analisis estadistico de contenido (frecuencia, timeline).", "file_type": "rationale", "source_file": "src/yt_scraper/cli.py", "source_location": "L364"}, {"id": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_409", "label": "Regenerar Markdown desde segmentos almacenados.", "file_type": "rationale", "source_file": "src/yt_scraper/cli.py", "source_location": "L409"}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "shutil", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "sys", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "types", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "click", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "rich_console", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L10", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "rich_progress", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "rich_table", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L14", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L15", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_discover_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L16", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_chapters_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L17", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_render_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L19", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_ratelimit_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L20", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_pipeline_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L21", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cookies_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_setup_logging", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L28", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L47", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_apply_filters", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L72", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_scrape", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L99", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L104", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L176", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L195", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L219", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L248", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channels_grp", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L291", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L297", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channels_add", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L312", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channels_remove", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L325", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_watch_cmd", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L345", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L363", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L408", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L446", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L458", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L458", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_title_for", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L470", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_title_for", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L470", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_extract_handle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L475", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_fmt_date", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L481", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_fmt_duration", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L489", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_seconds_to_ts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L497", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_safe_dirname", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L504", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_safe_filename", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L509", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_parse_tags", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L514", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_parse_interval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L524", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_py", "target": "d_yt_channel_scraper_src_yt_scraper_cli_main", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L537", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "target": "d_yt_channel_scraper_src_yt_scraper_cli_setup_logging", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L49", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "target": "store", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L54", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "target": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L65", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_scrape", "target": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L101", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "target": "d_yt_channel_scraper_src_yt_scraper_cli_extract_handle", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L132", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "target": "d_yt_channel_scraper_src_yt_scraper_cli_apply_filters", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L135", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "target": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L144", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "target": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L154", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "target": "d_yt_channel_scraper_src_yt_scraper_cli_fmt_date", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L183", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "target": "d_yt_channel_scraper_src_yt_scraper_cli_fmt_duration", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L183", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L198", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_title_for", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L208", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_seconds_to_ts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L209", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L223", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L259", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_safe_filename", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L278", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_channels_add", "target": "d_yt_channel_scraper_src_yt_scraper_cli_extract_handle", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L317", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_watch_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_parse_interval", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L348", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L369", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L417", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_parse_tags", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L434", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "target": "d_yt_channel_scraper_src_yt_scraper_cli_safe_dirname", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L439", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_main", "target": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L538", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_48", "target": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L48", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_100", "target": "d_yt_channel_scraper_src_yt_scraper_cli_scrape", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L100", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_196", "target": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L196", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_220", "target": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L220", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_249", "target": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L249", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_346", "target": "d_yt_channel_scraper_src_yt_scraper_cli_watch_cmd", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L346", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_364", "target": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L364", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_cli_rationale_409", "target": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/cli.py", "source_location": "L409", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_setup_logging", "callee": "basicConfig", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L30", "receiver": "logging"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L50", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "callee": "load_config", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L51", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L51", "receiver": "cfg_path"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "callee": "Config", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L51", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "callee": "auto_import_dir", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L57", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "callee": "debug", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L59", "receiver": "log"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "callee": "exc", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/cli.py", "source_location": "L59"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_cli", "callee": "SimpleNamespace", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L60", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_apply_filters", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L75", "receiver": "since"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_apply_filters", "callee": "startswith", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L79", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "exit", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L109", "receiver": "sys"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L111", "receiver": "l"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L111", "receiver": "languages"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L111", "receiver": "l"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "Progress", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L124", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "SpinnerColumn", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L124", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "TextColumn", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L124", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "add_task", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L125", "receiver": "prog"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "discover_channel", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L126", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "update", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L127", "receiver": "prog"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "exit", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L130", "receiver": "sys"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "upsert_channel", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L132", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "upsert_videos", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L137", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "reset_errors", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L140", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "get_pending", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L147", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "get_all", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L147", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "resolve_active_path", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L158", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L160", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "Progress", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L162", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "SpinnerColumn", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L162", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "TextColumn", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L162", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "BarColumn", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L163", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "TaskProgressColumn", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L163", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "TimeRemainingColumn", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L163", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "add_task", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L164", "receiver": "progress"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "update", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L166", "receiver": "progress"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "process_video", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L167", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "advance", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L169", "receiver": "progress"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_run_scrape", "callee": "polite_sleep", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L171", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "callee": "Table", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L177", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L178", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L179", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L180", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L181", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_dry_run", "callee": "add_row", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L183", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "callee": "search_segments", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L199", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "callee": "Table", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L203", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L204", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L205", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L206", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_search_cmd", "callee": "add_row", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L208", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L224", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L225", "receiver": "out_dir"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "callee": "export_json", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L229", "receiver": "export_mod"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "callee": "export_csv", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L231", "receiver": "export_mod"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "callee": "export_srt", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L233", "receiver": "export_mod"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "callee": "export_html", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L237", "receiver": "export_mod"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_export_cmd", "callee": "upper", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L238", "receiver": "fmt"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "which", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L250", "receiver": "shutil"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "exit", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L252", "receiver": "sys"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "resolve_active_path", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L255", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L256", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L257", "receiver": "out_dir"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "get_all", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L260", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L262", "receiver": "since"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "YoutubeDL", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L276", "receiver": "yt_dlp"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L279", "receiver": "target"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_audio_cmd", "callee": "download", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L282", "receiver": "ydl"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "Table", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L299", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L300", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L301", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L302", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L303", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "list_channels", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L304", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "add_row", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L305", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L305", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L305", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_list", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L305", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_add", "callee": "discover_channel", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L316", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_add", "callee": "upsert_channel", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L317", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_add", "callee": "upsert_videos", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L318", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_remove", "callee": "list_channels", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L328", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_remove", "callee": "lstrip", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L329", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_remove", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L329", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_remove", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L329", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_remove", "callee": "exit", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L334", "receiver": "sys"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channels_remove", "callee": "delete_channel", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L335", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_watch_cmd", "callee": "watch_loop", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L350", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L367", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L368", "receiver": "out_dir"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "top_words", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L374", "receiver": "A"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "writer", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L377", "receiver": "csv"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "src/yt_scraper/cli.py", "source_location": "L377"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "writerow", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L378", "receiver": "w"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "writerows", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L379", "receiver": "w"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "render_top_words_chart", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L382", "receiver": "A"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "render_wordcloud", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L389", "receiver": "A"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "term_timeline", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L392", "receiver": "A"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_analyze_cmd", "callee": "render_timeline_chart", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L397", "receiver": "A"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L414", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "backfill_from_markdown", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L415", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "get_all", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L418", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "Segment", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L426", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L426", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "Chapter", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L427", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L427", "receiver": "c"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L427", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "align_chapters", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L428", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "build_filename_stem", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L437", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "get_channel", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L438", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "Path", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L439", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L439", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_re_render_cmd", "callee": "render_markdown", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L440", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "callee": "list_channels", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L448", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "callee": "list_channels", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L451", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "callee": "lstrip", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L452", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L452", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_channel_targets", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L452", "receiver": "ch"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "callee": "stats", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L459", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "callee": "Table", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L460", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L461", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "callee": "add_column", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L462", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L465", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_print_stats", "callee": "add_row", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L466", "receiver": "table"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_title_for", "callee": "get_video", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L471", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_extract_handle", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L477", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_extract_handle", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L477", "receiver": "url"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_fmt_duration", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L492", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_fmt_duration", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L493", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_seconds_to_ts", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L499", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_seconds_to_ts", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/cli.py", "source_location": "L500", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_safe_dirname", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L505", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_safe_dirname", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L506", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_safe_dirname", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L506", "receiver": "safe"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_safe_filename", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L510", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_safe_filename", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L511", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_safe_filename", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L511", "receiver": "safe"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_parse_tags", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L519", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_parse_tags", "callee": "TypeError", "is_member_call": false, "indirect": true, "context": "collection", "source_file": "src/yt_scraper/cli.py", "source_location": "L520"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_parse_interval", "callee": "lower", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L525", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_parse_interval", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L525", "receiver": "s"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_parse_interval", "callee": "endswith", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L526", "receiver": "s"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_parse_interval", "callee": "endswith", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L528", "receiver": "s"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_parse_interval", "callee": "endswith", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L530", "receiver": "s"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_cli_parse_interval", "callee": "endswith", "is_member_call": true, "source_file": "src/yt_scraper/cli.py", "source_location": "L532", "receiver": "s"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/a1dcd3fd32ecc99846a876848d9b1f874e34eaf2fc4de10ff245b757a53209da.json b/graphify-out/cache/ast/v0.9.22/a1dcd3fd32ecc99846a876848d9b1f874e34eaf2fc4de10ff245b757a53209da.json new file mode 100644 index 0000000..d072649 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/a1dcd3fd32ecc99846a876848d9b1f874e34eaf2fc4de10ff245b757a53209da.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_segments_py", "label": "segments.py", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "label": "ts_to_seconds()", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L22", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_seconds_to_ts", "label": "seconds_to_ts()", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L31", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_parsedmarkdown", "label": "ParsedMarkdown", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L39", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "label": "parse_markdown()", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L45", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_strip_quotes", "label": "_strip_quotes()", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L87", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_store_segments", "label": "store_segments()", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L94", "_callable": true}, {"id": "store", "label": "Store", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\segments.py"}, {"id": "segment", "label": "Segment", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\segments.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_search", "label": "search()", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L98", "_callable": true}, {"id": "searchhit", "label": "SearchHit", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\segments.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "label": "backfill_from_markdown()", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L102", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\segments.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_to_int", "label": "_to_int()", "file_type": "code", "source_file": "src/yt_scraper/segments.py", "source_location": "L173", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_segments_rationale_107", "label": "Parse all done .md files under md_root, populate segments/FTS/metadata. Idempote", "file_type": "rationale", "source_file": "src/yt_scraper/segments.py", "source_location": "L107"}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "re", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "dataclasses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L10", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_seconds_to_ts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L31", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_parsedmarkdown", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L39", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L45", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "target": "d_yt_channel_scraper_src_yt_scraper_segments_parsedmarkdown", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L45", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_strip_quotes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L87", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_store_segments", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L94", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_store_segments", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L94", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_store_segments", "target": "segment", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L94", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_search", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L98", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_search", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L98", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_search", "target": "searchhit", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L98", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L102", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L102", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L102", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_py", "target": "d_yt_channel_scraper_src_yt_scraper_segments_to_int", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L173", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "target": "d_yt_channel_scraper_src_yt_scraper_segments_strip_quotes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L64", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "target": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L75", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "target": "segment", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L82", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "target": "d_yt_channel_scraper_src_yt_scraper_segments_parsedmarkdown", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L84", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L115", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "target": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L128", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "target": "d_yt_channel_scraper_src_yt_scraper_segments_to_int", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L159", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "target": "d_yt_channel_scraper_src_yt_scraper_segments_store_segments", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L167", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_segments_rationale_107", "target": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/segments.py", "source_location": "L107", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "callee": "match", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L23", "receiver": "_TS"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L23", "receiver": "ts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L26", "receiver": "m"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L27", "receiver": "m"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L27", "receiver": "m"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L27", "receiver": "m"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L28", "receiver": "m"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_ts_to_seconds", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L28", "receiver": "m"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_seconds_to_ts", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/segments.py", "source_location": "L33", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_seconds_to_ts", "callee": "divmod", "is_member_call": false, "source_file": "src/yt_scraper/segments.py", "source_location": "L34", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "splitlines", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L46", "receiver": "text"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L54", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L58", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "match", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L62", "receiver": "_FRONTMATTER_KEY"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "lower", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L64", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L64", "receiver": "m"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L64", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L64", "receiver": "m"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L72", "receiver": "line"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "match", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L73", "receiver": "_CHAPTER"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L75", "receiver": "cm"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L76", "receiver": "chapters"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L76", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L76", "receiver": "cm"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "match", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L79", "receiver": "_SEG_LINE"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L81", "receiver": "sm"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L82", "receiver": "segments"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L82", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_parse_markdown", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L82", "receiver": "sm"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_strip_quotes", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L88", "receiver": "value"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_search", "callee": "search_segments", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L99", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L116", "receiver": "md_root"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "_log", "is_member_call": false, "source_file": "src/yt_scraper/segments.py", "source_location": "L117", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "rglob", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L119", "receiver": "md_root"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "_log", "is_member_call": false, "source_file": "src/yt_scraper/segments.py", "source_location": "L120", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "read_text", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L124", "receiver": "md_path"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "_log", "is_member_call": false, "source_file": "src/yt_scraper/segments.py", "source_location": "L126", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L129", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "get_video", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L132", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "_log", "is_member_call": false, "source_file": "src/yt_scraper/segments.py", "source_location": "L134", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L137", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "replace", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L139", "receiver": "ud"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "isdigit", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L140", "receiver": "compact"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "set_upload_date", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L141", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "has_segments", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L142", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L145", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L149", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "startswith", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L149", "receiver": "tags_raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L149", "receiver": "t"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L149", "receiver": "tags_raw"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "dumps", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L152", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "dumps", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L156", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "update_video_metadata", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L157", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L159", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L160", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L162", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_backfill_from_markdown", "callee": "_log", "is_member_call": false, "source_file": "src/yt_scraper/segments.py", "source_location": "L169", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_to_int", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L176", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_to_int", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L176", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_segments_to_int", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/segments.py", "source_location": "L176", "receiver": null}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/b18e8b9c6f644dc007f70bf7048f2b885991aeade60c75cd18b33df95dec0a3c.json b/graphify-out/cache/ast/v0.9.22/b18e8b9c6f644dc007f70bf7048f2b885991aeade60c75cd18b33df95dec0a3c.json new file mode 100644 index 0000000..1ad3a62 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/b18e8b9c6f644dc007f70bf7048f2b885991aeade60c75cd18b33df95dec0a3c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "label": "api.py", "file_type": "code", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "label": "build_router()", "file_type": "code", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L18", "_callable": true}, {"id": "store", "label": "Store", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\api.py"}, {"id": "config", "label": "Config", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\api.py"}, {"id": "apirouter", "label": "APIRouter", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\api.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_api_video_dict", "label": "_video_dict()", "file_type": "code", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L410", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_api_job_dict", "label": "_job_dict()", "file_type": "code", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L428", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_api_loads", "label": "_loads()", "file_type": "code", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L436", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_api_handle", "label": "_handle()", "file_type": "code", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L445", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_api_folder_info", "label": "_folder_info()", "file_type": "code", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L451", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\api.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_api_safe_dir", "label": "_safe_dir()", "file_type": "code", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L456", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_webapp_api_open_in_os", "label": "_open_in_os()", "file_type": "code", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L461", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "fastapi_responses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "sse_starlette_sse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_init_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_init_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_init_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L13", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_config_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L14", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L15", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "target": "config", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "target": "apirouter", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_video_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L410", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_job_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L428", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_loads", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L436", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_handle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L445", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_folder_info", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L451", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_folder_info", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L451", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_safe_dir", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L456", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_py", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_open_in_os", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L461", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_open_in_os", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L461", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "target": "apirouter", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L19", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_job_dict", "target": "d_yt_channel_scraper_src_yt_scraper_webapp_api_loads", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L430", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_webapp_api_folder_info", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L452", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L22", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L27", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L31", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "delete", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L42", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L48", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L59", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L66", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L75", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L85", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L99", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L106", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L110", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L117", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "delete", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L137", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L143", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L155", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L186", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "delete", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L191", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L196", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L211", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L235", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L246", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L280", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L290", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L305", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L312", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L322", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L333", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L348", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L360", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L380", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_build_router", "callee": "post", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L395", "receiver": "r"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_video_dict", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L415", "receiver": "_json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_loads", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L440", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_handle", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L447", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_handle", "callee": "split", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L447", "receiver": "url"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_folder_info", "callee": "resolve", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L453", "receiver": "path"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_folder_info", "callee": "exists", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L453", "receiver": "path"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_safe_dir", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L457", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_safe_dir", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L458", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_safe_dir", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L458", "receiver": "safe"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_open_in_os", "callee": "startswith", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L467", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_open_in_os", "callee": "startfile", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L468", "receiver": "os"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_open_in_os", "callee": "Popen", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L470", "receiver": "subprocess"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_open_in_os", "callee": "Popen", "is_member_call": true, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L472", "receiver": "subprocess"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_webapp_api_open_in_os", "callee": "HTTPException", "is_member_call": false, "source_file": "src/yt_scraper/webapp/api.py", "source_location": "L474", "receiver": null}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/bc8259cf378616dd8bcb0d0d75ba8b67e3355f918fcc614fe61389ba3795097c.json b/graphify-out/cache/ast/v0.9.22/bc8259cf378616dd8bcb0d0d75ba8b67e3355f918fcc614fe61389ba3795097c.json new file mode 100644 index 0000000..5709b3e --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/bc8259cf378616dd8bcb0d0d75ba8b67e3355f918fcc614fe61389ba3795097c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_parse_py", "label": "parse.py", "file_type": "code", "source_file": "src/yt_scraper/parse.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_parse_segment", "label": "Segment", "file_type": "code", "source_file": "src/yt_scraper/parse.py", "source_location": "L9", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "label": "parse_json3()", "file_type": "code", "source_file": "src/yt_scraper/parse.py", "source_location": "L21", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "label": "parse_vtt()", "file_type": "code", "source_file": "src/yt_scraper/parse.py", "source_location": "L51", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_parse_merge_adjacent", "label": "merge_adjacent()", "file_type": "code", "source_file": "src/yt_scraper/parse.py", "source_location": "L74", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_parse_parse_auto_dump", "label": "parse_auto_dump()", "file_type": "code", "source_file": "src/yt_scraper/parse.py", "source_location": "L88", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_parse_vtt_ts_to_seconds", "label": "_vtt_ts_to_seconds()", "file_type": "code", "source_file": "src/yt_scraper/parse.py", "source_location": "L94", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_parse_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_py", "target": "re", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_py", "target": "dataclasses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_segment", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L21", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "target": "d_yt_channel_scraper_src_yt_scraper_parse_segment", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L21", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L51", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "target": "d_yt_channel_scraper_src_yt_scraper_parse_segment", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L51", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_merge_adjacent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_merge_adjacent", "target": "d_yt_channel_scraper_src_yt_scraper_parse_segment", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_merge_adjacent", "target": "d_yt_channel_scraper_src_yt_scraper_parse_segment", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L74", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_parse_auto_dump", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L88", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_auto_dump", "target": "d_yt_channel_scraper_src_yt_scraper_parse_segment", "relation": "references", "context": "generic_arg", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L88", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_py", "target": "d_yt_channel_scraper_src_yt_scraper_parse_vtt_ts_to_seconds", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L94", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "target": "d_yt_channel_scraper_src_yt_scraper_parse_segment", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L42", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "target": "d_yt_channel_scraper_src_yt_scraper_parse_merge_adjacent", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L48", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "target": "d_yt_channel_scraper_src_yt_scraper_parse_vtt_ts_to_seconds", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L59", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "target": "d_yt_channel_scraper_src_yt_scraper_parse_segment", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L69", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "target": "d_yt_channel_scraper_src_yt_scraper_parse_merge_adjacent", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L71", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_auto_dump", "target": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L90", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_parse_parse_auto_dump", "target": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/parse.py", "source_location": "L91", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "callee": "loads", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L23", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L26", "receiver": "data"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L31", "receiver": "ev"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L32", "receiver": "ev"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "callee": "get", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L35", "receiver": "seg"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L37", "receiver": "parts"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L38", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L38", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_json3", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L41", "receiver": "segments"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "splitlines", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L53", "receiver": "text"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L56", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "search", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L57", "receiver": "_VTT_TIMESTAMP"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L59", "receiver": "match"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L59", "receiver": "match"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L59", "receiver": "match"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L59", "receiver": "match"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L60", "receiver": "match"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L60", "receiver": "match"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L60", "receiver": "match"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L60", "receiver": "match"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L63", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L64", "receiver": "cue_lines"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L64", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "join", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L66", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L67", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "sub", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L67", "receiver": "_VTT_TAG"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_vtt", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L69", "receiver": "segments"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_merge_adjacent", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L82", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_merge_adjacent", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L84", "receiver": "merged"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_auto_dump", "callee": "startswith", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L89", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_parse_parse_auto_dump", "callee": "lstrip", "is_member_call": true, "source_file": "src/yt_scraper/parse.py", "source_location": "L89", "receiver": "raw"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/bcb2c3a21e73d7c8c00161c1585bc15ed856116eac5c37608af0699fb5cce7ad.json b/graphify-out/cache/ast/v0.9.22/bcb2c3a21e73d7c8c00161c1585bc15ed856116eac5c37608af0699fb5cce7ad.json new file mode 100644 index 0000000..b8bdc9f --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/bcb2c3a21e73d7c8c00161c1585bc15ed856116eac5c37608af0699fb5cce7ad.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_tests_test_features_py", "label": "test_features.py", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_tests_test_features_store", "label": "store()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L47", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_features_test_parse_markdown_metadata", "label": "test_parse_markdown_metadata()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L55", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "label": "test_backfill_from_markdown()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L68", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_features_test_ts_helpers", "label": "test_ts_helpers()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L90", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "label": "test_export_json_csv()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L95", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_features_test_export_srt", "label": "test_export_srt()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L111", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_features_test_export_html", "label": "test_export_html()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L123", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_features_test_word_frequency", "label": "test_word_frequency()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L131", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_features_test_term_timeline", "label": "test_term_timeline()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L146", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_features_test_build_filename_stem", "label": "test_build_filename_stem()", "file_type": "code", "source_file": "tests/test_features.py", "source_location": "L154", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_tests_test_features_py", "target": "csv", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "io", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "json", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "pytest", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L8", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "yt_scraper_store", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L10", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "yt_scraper_parse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L11", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "yt_scraper", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "yt_scraper_render", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L13", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_store", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L47", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_test_parse_markdown_metadata", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L55", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L68", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_test_ts_helpers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L90", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L95", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_test_export_srt", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L111", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_test_export_html", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L123", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_test_word_frequency", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L131", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_test_term_timeline", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L146", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_features_py", "target": "d_yt_channel_scraper_tests_test_features_test_build_filename_stem", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_features.py", "source_location": "L154", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_tests_test_features_store", "callee": "Store", "is_member_call": false, "source_file": "tests/test_features.py", "source_location": "L48", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_store", "callee": "upsert_channel", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L49", "receiver": "s"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_store", "callee": "upsert_videos", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L50", "receiver": "s"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_store", "callee": "VideoRef", "is_member_call": false, "source_file": "tests/test_features.py", "source_location": "L50", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_store", "callee": "mark_done", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L51", "receiver": "s"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_parse_markdown_metadata", "callee": "parse_markdown", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L56", "receiver": "segments"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_parse_markdown_metadata", "callee": "SAMPLE_MD", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_features.py", "source_location": "L56"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_parse_markdown_metadata", "callee": "lower", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L62", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "callee": "mkdir", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L70", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L71", "receiver": "md"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "callee": "SAMPLE_MD", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_features.py", "source_location": "L71"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "callee": "backfill_from_markdown", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L72", "receiver": "segments"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "callee": "get_video", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L74", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "callee": "loads", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L77", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "callee": "get_segments", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L80", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "callee": "search_segments", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L83", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_backfill_from_markdown", "callee": "backfill_from_markdown", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L86", "receiver": "segments"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_ts_helpers", "callee": "ts_to_seconds", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L91", "receiver": "segments"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_ts_helpers", "callee": "ts_to_seconds", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L92", "receiver": "segments"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "callee": "store_segments", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L96", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_features.py", "source_location": "L96", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "callee": "update_video_metadata", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L97", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "callee": "export_json", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L98", "receiver": "export"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "callee": "loads", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L99", "receiver": "json"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "callee": "read_text", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L99", "receiver": "j"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "callee": "export_csv", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L103", "receiver": "export"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "callee": "DictReader", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L105", "receiver": "csv"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_json_csv", "callee": "f", "is_member_call": false, "indirect": true, "context": "argument", "source_file": "tests/test_features.py", "source_location": "L105"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_srt", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_features.py", "source_location": "L112", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_srt", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_features.py", "source_location": "L112", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_srt", "callee": "store_segments", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L113", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_srt", "callee": "export_srt_video", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L114", "receiver": "export"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_srt", "callee": "read_text", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L116", "receiver": "out"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_html", "callee": "update_video_metadata", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L124", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_html", "callee": "export_html", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L125", "receiver": "export"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_export_html", "callee": "read_text", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L126", "receiver": "out"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_word_frequency", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_features.py", "source_location": "L133", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_word_frequency", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_features.py", "source_location": "L134", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_word_frequency", "callee": "store_segments", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L136", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_word_frequency", "callee": "word_frequency", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L137", "receiver": "analysis"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_term_timeline", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_features.py", "source_location": "L147", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_term_timeline", "callee": "store_segments", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L148", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_term_timeline", "callee": "term_timeline", "is_member_call": true, "source_file": "tests/test_features.py", "source_location": "L149", "receiver": "analysis"}, {"caller_nid": "d_yt_channel_scraper_tests_test_features_test_build_filename_stem", "callee": "build_filename_stem", "is_member_call": false, "source_file": "tests/test_features.py", "source_location": "L156", "receiver": null}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/bd62de6ce97df98a14ebd1098c91707fc0dd9ba568437c71bb3a075c519b7882.json b/graphify-out/cache/ast/v0.9.22/bd62de6ce97df98a14ebd1098c91707fc0dd9ba568437c71bb3a075c519b7882.json new file mode 100644 index 0000000..2306b77 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/bd62de6ce97df98a14ebd1098c91707fc0dd9ba568437c71bb3a075c519b7882.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_scripts_stop_server_ps1", "label": "stop-server.ps1", "file_type": "code", "source_file": "scripts/stop-server.ps1", "source_location": "L1"}], "edges": [], "raw_calls": []} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/bd9731c51b005a5cef7bd97a9555a9d5609eaa8c4da9f147a8708571c6440ff7.json b/graphify-out/cache/ast/v0.9.22/bd9731c51b005a5cef7bd97a9555a9d5609eaa8c4da9f147a8708571c6440ff7.json new file mode 100644 index 0000000..3f8536c --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/bd9731c51b005a5cef7bd97a9555a9d5609eaa8c4da9f147a8708571c6440ff7.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_tests_test_parse_py", "label": "test_parse.py", "file_type": "code", "source_file": "tests/test_parse.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_basic", "label": "test_parse_json3_basic()", "file_type": "code", "source_file": "tests/test_parse.py", "source_location": "L10", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_skips_empty_events", "label": "test_parse_json3_skips_empty_events()", "file_type": "code", "source_file": "tests/test_parse.py", "source_location": "L21", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_parse_test_parse_vtt_basic", "label": "test_parse_vtt_basic()", "file_type": "code", "source_file": "tests/test_parse.py", "source_location": "L28", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_parse_test_parse_vtt_strips_tags", "label": "test_parse_vtt_strips_tags()", "file_type": "code", "source_file": "tests/test_parse.py", "source_location": "L39", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_parse_test_merge_adjacent", "label": "test_merge_adjacent()", "file_type": "code", "source_file": "tests/test_parse.py", "source_location": "L45", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_invalid_json", "label": "test_parse_json3_invalid_json()", "file_type": "code", "source_file": "tests/test_parse.py", "source_location": "L57", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_tests_test_parse_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_parse.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_parse_py", "target": "yt_scraper_parse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_parse.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_parse_py", "target": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_basic", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_parse.py", "source_location": "L10", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_parse_py", "target": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_skips_empty_events", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_parse.py", "source_location": "L21", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_parse_py", "target": "d_yt_channel_scraper_tests_test_parse_test_parse_vtt_basic", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_parse.py", "source_location": "L28", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_parse_py", "target": "d_yt_channel_scraper_tests_test_parse_test_parse_vtt_strips_tags", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_parse.py", "source_location": "L39", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_parse_py", "target": "d_yt_channel_scraper_tests_test_parse_test_merge_adjacent", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_parse.py", "source_location": "L45", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_parse_py", "target": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_invalid_json", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_parse.py", "source_location": "L57", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_basic", "callee": "read_text", "is_member_call": true, "source_file": "tests/test_parse.py", "source_location": "L11", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_basic", "callee": "parse_json3", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L12", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_skips_empty_events", "callee": "read_text", "is_member_call": true, "source_file": "tests/test_parse.py", "source_location": "L22", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_skips_empty_events", "callee": "parse_json3", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L23", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_skips_empty_events", "callee": "strip", "is_member_call": true, "source_file": "tests/test_parse.py", "source_location": "L25", "receiver": "t"}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_vtt_basic", "callee": "read_text", "is_member_call": true, "source_file": "tests/test_parse.py", "source_location": "L29", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_vtt_basic", "callee": "parse_vtt", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L30", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_vtt_strips_tags", "callee": "read_text", "is_member_call": true, "source_file": "tests/test_parse.py", "source_location": "L40", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_vtt_strips_tags", "callee": "parse_vtt", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L41", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_merge_adjacent", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L47", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_merge_adjacent", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L48", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_merge_adjacent", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L49", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_merge_adjacent", "callee": "merge_adjacent", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L51", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_invalid_json", "callee": "parse_json3", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L58", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_parse_test_parse_json3_invalid_json", "callee": "parse_json3", "is_member_call": false, "source_file": "tests/test_parse.py", "source_location": "L59", "receiver": null}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/bdd04141d70cba0f2a1b2d4375870c2c475971df35c1d55cf38ca92a1a78b6b7.json b/graphify-out/cache/ast/v0.9.22/bdd04141d70cba0f2a1b2d4375870c2c475971df35c1d55cf38ca92a1a78b6b7.json new file mode 100644 index 0000000..aeaa7f6 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/bdd04141d70cba0f2a1b2d4375870c2c475971df35c1d55cf38ca92a1a78b6b7.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "label": "analysis.py", "file_type": "code", "source_file": "src/yt_scraper/analysis.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_src_yt_scraper_analysis_iter_texts", "label": "_iter_texts()", "file_type": "code", "source_file": "src/yt_scraper/analysis.py", "source_location": "L36", "_callable": true}, {"id": "store", "label": "Store", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\analysis.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_analysis_tokenize", "label": "_tokenize()", "file_type": "code", "source_file": "src/yt_scraper/analysis.py", "source_location": "L51", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "label": "word_frequency()", "file_type": "code", "source_file": "src/yt_scraper/analysis.py", "source_location": "L58", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_analysis_top_words", "label": "top_words()", "file_type": "code", "source_file": "src/yt_scraper/analysis.py", "source_location": "L66", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "label": "term_timeline()", "file_type": "code", "source_file": "src/yt_scraper/analysis.py", "source_location": "L70", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "label": "render_wordcloud()", "file_type": "code", "source_file": "src/yt_scraper/analysis.py", "source_location": "L98", "_callable": true}, {"id": "path", "label": "Path", "file_type": "code", "source_file": "", "source_location": "", "origin_file": "D:\\yt-channel-scraper\\src\\yt_scraper\\analysis.py"}, {"id": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "label": "render_top_words_chart()", "file_type": "code", "source_file": "src/yt_scraper/analysis.py", "source_location": "L119", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "label": "render_timeline_chart()", "file_type": "code", "source_file": "src/yt_scraper/analysis.py", "source_location": "L143", "_callable": true}, {"id": "d_yt_channel_scraper_src_yt_scraper_analysis_rationale_71", "label": "Return [(YYYY-MM, count)] of months where `term` appears in transcripts.", "file_type": "rationale", "source_file": "src/yt_scraper/analysis.py", "source_location": "L71"}], "edges": [{"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "logging", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "re", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L4", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "collections", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "d_yt_channel_scraper_src_yt_scraper_store_py", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L9", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_iter_texts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L36", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_iter_texts", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L36", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_tokenize", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L51", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L58", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L58", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_top_words", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L66", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_top_words", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L66", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L70", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "target": "store", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L70", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L98", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L98", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L98", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L119", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L119", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L119", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_py", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L143", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "target": "path", "relation": "references", "context": "parameter_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L143", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "target": "path", "relation": "references", "context": "return_type", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L143", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_iter_texts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L60", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_tokenize", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L61", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_top_words", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L67", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L104", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L124", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "target": "path", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L148", "weight": 1.0}, {"source": "d_yt_channel_scraper_src_yt_scraper_analysis_rationale_71", "target": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "src/yt_scraper/analysis.py", "source_location": "L71", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_iter_texts", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L41", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_iter_texts", "callee": "_connect", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L42", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_iter_texts", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L44", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_iter_texts", "callee": "close", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L48", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_tokenize", "callee": "finditer", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L52", "receiver": "_WORD"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_tokenize", "callee": "lower", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L52", "receiver": "text"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_tokenize", "callee": "group", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L53", "receiver": "m"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "callee": "Counter", "is_member_call": false, "source_file": "src/yt_scraper/analysis.py", "source_location": "L59", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "callee": "update", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L61", "receiver": "counter"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "callee": "most_common", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L62", "receiver": "counter"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_word_frequency", "callee": "most_common", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L62", "receiver": "counter"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_top_words", "callee": "items", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L67", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "callee": "strip", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L72", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "callee": "lower", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L72", "receiver": "term"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L83", "receiver": "params"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "callee": "_connect", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L85", "receiver": "store"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "callee": "fetchall", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L87", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "callee": "execute", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L87", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "callee": "close", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L89", "receiver": "conn"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_term_timeline", "callee": "append", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L94", "receiver": "out"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "use", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L101", "receiver": "matplotlib"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L105", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "generate_from_frequencies", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L106", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "WordCloud", "is_member_call": false, "source_file": "src/yt_scraper/analysis.py", "source_location": "L106", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "subplots", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L110", "receiver": "plt"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "imshow", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L111", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "set_axis_off", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L112", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "tight_layout", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L113", "receiver": "fig"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "savefig", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L114", "receiver": "fig"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_wordcloud", "callee": "close", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L115", "receiver": "plt"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "use", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L121", "receiver": "matplotlib"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L125", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "subplots", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L129", "receiver": "plt"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "barh", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L130", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "set_facecolor", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L131", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "set_facecolor", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L132", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "tick_params", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L133", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "values", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L134", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "set_color", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L135", "receiver": "spine"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "set_title", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L136", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "tight_layout", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L137", "receiver": "fig"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "savefig", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L138", "receiver": "fig"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_top_words_chart", "callee": "close", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L139", "receiver": "plt"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "use", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L145", "receiver": "matplotlib"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "mkdir", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L149", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "subplots", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L152", "receiver": "plt"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "plot", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L153", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "set_facecolor", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L154", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "set_facecolor", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L155", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "tick_params", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L156", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "values", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L157", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "set_color", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L158", "receiver": "spine"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "set_title", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L159", "receiver": "ax"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "tight_layout", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L160", "receiver": "fig"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "savefig", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L161", "receiver": "fig"}, {"caller_nid": "d_yt_channel_scraper_src_yt_scraper_analysis_render_timeline_chart", "callee": "close", "is_member_call": true, "source_file": "src/yt_scraper/analysis.py", "source_location": "L162", "receiver": "plt"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/cca26b54622e61299b9e7165fb56629045ac8ba8bdc08fb67d0f1b4422696157.json b/graphify-out/cache/ast/v0.9.22/cca26b54622e61299b9e7165fb56629045ac8ba8bdc08fb67d0f1b4422696157.json new file mode 100644 index 0000000..bbdeb9b --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/cca26b54622e61299b9e7165fb56629045ac8ba8bdc08fb67d0f1b4422696157.json @@ -0,0 +1 @@ +{"nodes": [{"id": "d_yt_channel_scraper_tests_test_render_py", "label": "test_render.py", "file_type": "code", "source_file": "tests/test_render.py", "source_location": "L1"}, {"id": "d_yt_channel_scraper_tests_test_render_test_format_timestamp_minutes", "label": "test_format_timestamp_minutes()", "file_type": "code", "source_file": "tests/test_render.py", "source_location": "L12", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_render_test_format_timestamp_hours", "label": "test_format_timestamp_hours()", "file_type": "code", "source_file": "tests/test_render.py", "source_location": "L18", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_plain", "label": "test_quote_yaml_plain()", "file_type": "code", "source_file": "tests/test_render.py", "source_location": "L22", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_special", "label": "test_quote_yaml_special()", "file_type": "code", "source_file": "tests/test_render.py", "source_location": "L26", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_none", "label": "test_quote_yaml_none()", "file_type": "code", "source_file": "tests/test_render.py", "source_location": "L33", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_render_test_build_filename_stem", "label": "test_build_filename_stem()", "file_type": "code", "source_file": "tests/test_render.py", "source_location": "L37", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_render_test_build_filename_stem_no_date", "label": "test_build_filename_stem_no_date()", "file_type": "code", "source_file": "tests/test_render.py", "source_location": "L43", "_callable": true}, {"id": "d_yt_channel_scraper_tests_test_render_test_render_markdown", "label": "test_render_markdown()", "file_type": "code", "source_file": "tests/test_render.py", "source_location": "L49", "_callable": true}], "edges": [{"source": "d_yt_channel_scraper_tests_test_render_py", "target": "pathlib", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L3", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "yt_scraper_render", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L5", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "yt_scraper_chapters", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L6", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "yt_scraper_parse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L7", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "d_yt_channel_scraper_tests_test_render_test_format_timestamp_minutes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L12", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "d_yt_channel_scraper_tests_test_render_test_format_timestamp_hours", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L18", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_plain", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L22", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_special", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L26", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_none", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L33", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "d_yt_channel_scraper_tests_test_render_test_build_filename_stem", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L37", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "d_yt_channel_scraper_tests_test_render_test_build_filename_stem_no_date", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L43", "weight": 1.0}, {"source": "d_yt_channel_scraper_tests_test_render_py", "target": "d_yt_channel_scraper_tests_test_render_test_render_markdown", "relation": "contains", "confidence": "EXTRACTED", "source_file": "tests/test_render.py", "source_location": "L49", "weight": 1.0}], "raw_calls": [{"caller_nid": "d_yt_channel_scraper_tests_test_render_test_format_timestamp_minutes", "callee": "format_timestamp", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L13", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_format_timestamp_minutes", "callee": "format_timestamp", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L14", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_format_timestamp_minutes", "callee": "format_timestamp", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L15", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_format_timestamp_hours", "callee": "format_timestamp", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L19", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_plain", "callee": "quote_yaml", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L23", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_special", "callee": "quote_yaml", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L27", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_special", "callee": "startswith", "is_member_call": true, "source_file": "tests/test_render.py", "source_location": "L28", "receiver": "result"}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_special", "callee": "endswith", "is_member_call": true, "source_file": "tests/test_render.py", "source_location": "L29", "receiver": "result"}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_quote_yaml_none", "callee": "quote_yaml", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L34", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_build_filename_stem", "callee": "build_filename_stem", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L38", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_build_filename_stem", "callee": "startswith", "is_member_call": true, "source_file": "tests/test_render.py", "source_location": "L39", "receiver": "stem"}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_build_filename_stem", "callee": "lower", "is_member_call": true, "source_file": "tests/test_render.py", "source_location": "L40", "receiver": "stem"}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_build_filename_stem_no_date", "callee": "build_filename_stem", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L44", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_build_filename_stem_no_date", "callee": "lower", "is_member_call": true, "source_file": "tests/test_render.py", "source_location": "L46", "receiver": "stem"}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_render_markdown", "callee": "write_text", "is_member_call": true, "source_file": "tests/test_render.py", "source_location": "L51", "receiver": "template_file"}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_render_markdown", "callee": "Section", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L58", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_render_markdown", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L61", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_render_markdown", "callee": "Segment", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L61", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_render_markdown", "callee": "render_markdown", "is_member_call": false, "source_file": "tests/test_render.py", "source_location": "L66", "receiver": null}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_render_markdown", "callee": "exists", "is_member_call": true, "source_file": "tests/test_render.py", "source_location": "L72", "receiver": "md_path"}, {"caller_nid": "d_yt_channel_scraper_tests_test_render_test_render_markdown", "callee": "read_text", "is_member_call": true, "source_file": "tests/test_render.py", "source_location": "L73", "receiver": "md_path"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.22/d769492446cb53e6915aca1bd4ca33178a34670ec6b919dd2c150fd236b23c9e.json b/graphify-out/cache/ast/v0.9.22/d769492446cb53e6915aca1bd4ca33178a34670ec6b919dd2c150fd236b23c9e.json new file mode 100644 index 0000000..5f5535a --- /dev/null +++ b/graphify-out/cache/ast/v0.9.22/d769492446cb53e6915aca1bd4ca33178a34670ec6b919dd2c150fd236b23c9e.json @@ -0,0 +1 @@ +{"nodes": [{"id": "pkg_yt_channel_scraper", "label": "yt-channel-scraper", "file_type": "code", "type": "package", "ecosystem": "python", "source_file": "pyproject.toml", "source_location": "L1", "version": "0.1.0"}], "edges": [{"source": "pkg_yt_channel_scraper", "target": "pkg_yt_dlp", "relation": "depends_on", "context": "dependency", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "pyproject.toml", "source_location": "L1", "weight": 1.0}, {"source": "pkg_yt_channel_scraper", "target": "pkg_click", "relation": "depends_on", "context": "dependency", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "pyproject.toml", "source_location": "L1", "weight": 1.0}, {"source": "pkg_yt_channel_scraper", "target": "pkg_rich", "relation": "depends_on", "context": "dependency", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "pyproject.toml", "source_location": "L1", "weight": 1.0}, {"source": "pkg_yt_channel_scraper", "target": "pkg_jinja2", "relation": "depends_on", "context": "dependency", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "pyproject.toml", "source_location": "L1", "weight": 1.0}, {"source": "pkg_yt_channel_scraper", "target": "pkg_pyyaml", "relation": "depends_on", "context": "dependency", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "pyproject.toml", "source_location": "L1", "weight": 1.0}, {"source": "pkg_yt_channel_scraper", "target": "pkg_python_slugify", "relation": "depends_on", "context": "dependency", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "pyproject.toml", "source_location": "L1", "weight": 1.0}, {"source": "pkg_yt_channel_scraper", "target": "pkg_requests", "relation": "depends_on", "context": "dependency", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "pyproject.toml", "source_location": "L1", "weight": 1.0}]} \ No newline at end of file diff --git a/graphify-out/cache/semantic/pd5fd89c46bb5/1d344f1fca5d9d688099ea24f8832d4a1a57b9fc6b690deab3b95e425c411fb3.json b/graphify-out/cache/semantic/pd5fd89c46bb5/1d344f1fca5d9d688099ea24f8832d4a1a57b9fc6b690deab3b95e425c411fb3.json new file mode 100644 index 0000000..a4f11df --- /dev/null +++ b/graphify-out/cache/semantic/pd5fd89c46bb5/1d344f1fca5d9d688099ea24f8832d4a1a57b9fc6b690deab3b95e425c411fb3.json @@ -0,0 +1 @@ +{"nodes": [{"id": "src_yt_scraper_webapp_static_index", "label": "SPA shell (index.html)", "file_type": "document", "source_file": "src/yt_scraper/webapp/static/index.html", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}], "edges": [{"source": "src_yt_scraper_webapp_static_index", "target": "docs_superpowers_specs_2026_07_26_platform_design_dark_command_center", "relation": "implements", "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "src/yt_scraper/webapp/static/index.html", "source_location": null, "weight": 1.0}, {"source": "src_yt_scraper_webapp_static_index", "target": "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux", "relation": "implements", "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "src/yt_scraper/webapp/static/index.html", "source_location": "Cookies view dropzone", "weight": 1.0}], "hyperedges": []} \ No newline at end of file diff --git a/graphify-out/cache/semantic/pd5fd89c46bb5/2b6afcf782a2518e06b1040d880a1fb668576ddc2665840bb27caf75e9830d71.json b/graphify-out/cache/semantic/pd5fd89c46bb5/2b6afcf782a2518e06b1040d880a1fb668576ddc2665840bb27caf75e9830d71.json new file mode 100644 index 0000000..f01e021 --- /dev/null +++ b/graphify-out/cache/semantic/pd5fd89c46bb5/2b6afcf782a2518e06b1040d880a1fb668576ddc2665840bb27caf75e9830d71.json @@ -0,0 +1 @@ +{"nodes": [{"id": "opencode_agent_webapp_builder", "label": "webapp-builder agent definition", "file_type": "document", "source_file": ".opencode/agent/webapp-builder.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "opencode_agent_webapp_builder_store_data_layer", "label": "Store API surface (data layer the webapp reuses)", "file_type": "concept", "source_file": ".opencode/agent/webapp-builder.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null, "rationale": "Agent must REUSE not duplicate: Store(db_path), cookies.py, segments.py, analysis.py, export.py, pipeline.process_video, config.Config. Active cookie (cookies.resolve_active_path) MUST be passed as cookies_file to every scrape job."}], "edges": [{"source": "opencode_agent_webapp_builder", "target": "docs_superpowers_specs_2026_07_26_platform_design", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": ".opencode/agent/webapp-builder.md", "source_location": "last line", "weight": 1.0}, {"source": "opencode_agent_webapp_builder", "target": "docs_superpowers_plans_2026_07_26_platform_build", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": ".opencode/agent/webapp-builder.md", "source_location": "last line", "weight": 1.0}, {"source": "opencode_agent_webapp_builder", "target": "opencode_agent_webapp_builder_store_data_layer", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": ".opencode/agent/webapp-builder.md", "source_location": "What already exists section", "weight": 1.0}, {"source": "opencode_agent_webapp_builder", "target": "src_yt_scraper_webapp_static_index", "relation": "references", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": ".opencode/agent/webapp-builder.md", "source_location": null, "weight": 1.0}], "hyperedges": [{"id": "webapp_stack_b", "label": "Workstream B webapp stack (FastAPI + Alpine SPA + subagent)", "nodes": ["opencode_agent_webapp_builder", "opencode_goals_webapp_build", "src_yt_scraper_webapp_static_index", "docs_superpowers_specs_2026_07_26_platform_design_dark_command_center", "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner"], "relation": "participate_in", "confidence": "EXTRACTED", "confidence_score": 0.95, "source_file": ".opencode/agent/webapp-builder.md"}]} \ No newline at end of file diff --git a/graphify-out/cache/semantic/pd5fd89c46bb5/371bcb19ceaf8b8ae9518e7d92cf8894aa87a287f8ca02384e15c93c27f6a311.json b/graphify-out/cache/semantic/pd5fd89c46bb5/371bcb19ceaf8b8ae9518e7d92cf8894aa87a287f8ca02384e15c93c27f6a311.json new file mode 100644 index 0000000..6fb6681 --- /dev/null +++ b/graphify-out/cache/semantic/pd5fd89c46bb5/371bcb19ceaf8b8ae9518e7d92cf8894aa87a287f8ca02384e15c93c27f6a311.json @@ -0,0 +1 @@ +{"nodes": [{"id": "opencode_goals_webapp_build", "label": "Sub-goal: Build the local webapp (Workstream B)", "file_type": "document", "source_file": ".opencode/goals/webapp-build.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}], "edges": [{"source": "opencode_goals_webapp_build", "target": "opencode_agent_webapp_builder", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": ".opencode/goals/webapp-build.md", "source_location": "Owner agent line", "weight": 1.0}, {"source": "opencode_goals_webapp_build", "target": "docs_superpowers_specs_2026_07_26_platform_design", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": ".opencode/goals/webapp-build.md", "source_location": "Spec line", "weight": 1.0}], "hyperedges": []} \ No newline at end of file diff --git a/graphify-out/cache/semantic/pd5fd89c46bb5/944c07bd6e6a4c3f72fc7c91349722b83b7c918ec8e1602c0db3493a9cc101d8.json b/graphify-out/cache/semantic/pd5fd89c46bb5/944c07bd6e6a4c3f72fc7c91349722b83b7c918ec8e1602c0db3493a9cc101d8.json new file mode 100644 index 0000000..492f83f --- /dev/null +++ b/graphify-out/cache/semantic/pd5fd89c46bb5/944c07bd6e6a4c3f72fc7c91349722b83b7c918ec8e1602c0db3493a9cc101d8.json @@ -0,0 +1 @@ +{"nodes": [{"id": "docs_superpowers_plans_2026_07_26_platform_build", "label": "Platform Implementation Plan", "file_type": "document", "source_file": "docs/superpowers/plans/2026-07-26-platform-build.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}], "edges": [{"source": "docs_superpowers_plans_2026_07_26_platform_build", "target": "docs_superpowers_specs_2026_07_26_platform_design", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "docs/superpowers/plans/2026-07-26-platform-build.md", "source_location": "Spec line", "weight": 1.0}], "hyperedges": []} \ No newline at end of file diff --git a/graphify-out/cache/semantic/pd5fd89c46bb5/9844ec5f35ae0a96f6a073b5510290597ac1edaaf4e8e92c368ea19976bb1f13.json b/graphify-out/cache/semantic/pd5fd89c46bb5/9844ec5f35ae0a96f6a073b5510290597ac1edaaf4e8e92c368ea19976bb1f13.json new file mode 100644 index 0000000..54166b9 --- /dev/null +++ b/graphify-out/cache/semantic/pd5fd89c46bb5/9844ec5f35ae0a96f6a073b5510290597ac1edaaf4e8e92c368ea19976bb1f13.json @@ -0,0 +1 @@ +{"nodes": [{"id": "readme", "label": "yt-channel-scraper README", "file_type": "document", "source_file": "README.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "readme_yt_dlp_innertube", "label": "yt-dlp InnerTube mechanism (ANDROID/IOS/WEB clients)", "file_type": "concept", "source_file": "README.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}], "edges": [{"source": "readme", "target": "config_example", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "README.md", "source_location": "Configuraci\u00f3n section", "weight": 1.0}, {"source": "readme", "target": "readme_yt_dlp_innertube", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "README.md", "source_location": "header", "weight": 1.0}], "hyperedges": []} \ No newline at end of file diff --git a/graphify-out/cache/semantic/pd5fd89c46bb5/b902d960b29cb8971d13f7f1560f8e4e0fcfe8a5cec932674ccbeb48811572dd.json b/graphify-out/cache/semantic/pd5fd89c46bb5/b902d960b29cb8971d13f7f1560f8e4e0fcfe8a5cec932674ccbeb48811572dd.json new file mode 100644 index 0000000..55bc04c --- /dev/null +++ b/graphify-out/cache/semantic/pd5fd89c46bb5/b902d960b29cb8971d13f7f1560f8e4e0fcfe8a5cec932674ccbeb48811572dd.json @@ -0,0 +1 @@ +{"nodes": [{"id": "opportunities", "label": "OPPORTUNITIES.md - extension audit", "file_type": "document", "source_file": "OPPORTUNITIES.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "opportunities_search_fts5", "label": "Feature proposal: search (FTS5 transcript search)", "file_type": "concept", "source_file": "OPPORTUNITIES.md", "source_location": "Tier 1 #1", "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "opportunities_llm_summaries", "label": "Feature proposal: LLM summaries per video", "file_type": "concept", "source_file": "OPPORTUNITIES.md", "source_location": "Tier 3 #12", "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "opportunities_rag_qa", "label": "Feature proposal: Q&A / RAG over channel", "file_type": "concept", "source_file": "OPPORTUNITIES.md", "source_location": "Tier 3 #13", "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "opportunities_export_formats", "label": "Feature proposal: multi-format export (json/csv/srt/html)", "file_type": "concept", "source_file": "OPPORTUNITIES.md", "source_location": "Tier 1 #3", "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "opportunities_analysis_wordcloud", "label": "Feature proposal: content analysis (wordcloud/top-words/timeline)", "file_type": "concept", "source_file": "OPPORTUNITIES.md", "source_location": "Tier 2 #9", "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "opportunities_watch_mode", "label": "Feature proposal: watch mode (periodic discovery)", "file_type": "concept", "source_file": "OPPORTUNITIES.md", "source_location": "Tier 2 #8", "source_url": null, "captured_at": null, "author": null, "contributor": null}], "edges": [{"source": "opportunities_search_fts5", "target": "docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5", "relation": "semantically_similar_to", "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "OPPORTUNITIES.md", "source_location": null, "weight": 1.0}, {"source": "opportunities_export_formats", "target": "opencode_agent_webapp_builder_store_data_layer", "relation": "semantically_similar_to", "confidence": "INFERRED", "confidence_score": 0.65, "source_file": "OPPORTUNITIES.md", "source_location": null, "weight": 1.0}, {"source": "opportunities_watch_mode", "target": "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner", "relation": "conceptually_related_to", "confidence": "INFERRED", "confidence_score": 0.65, "source_file": "OPPORTUNITIES.md", "source_location": null, "weight": 1.0}, {"source": "opportunities_analysis_wordcloud", "target": "opencode_agent_webapp_builder_store_data_layer", "relation": "conceptually_related_to", "confidence": "INFERRED", "confidence_score": 0.65, "source_file": "OPPORTUNITIES.md", "source_location": null, "weight": 1.0}], "hyperedges": []} \ No newline at end of file diff --git a/graphify-out/cache/semantic/pd5fd89c46bb5/e84f2271466917c82f25e3e3a2a5582491e9ae5186106a7c06f2c71086853334.json b/graphify-out/cache/semantic/pd5fd89c46bb5/e84f2271466917c82f25e3e3a2a5582491e9ae5186106a7c06f2c71086853334.json new file mode 100644 index 0000000..e924020 --- /dev/null +++ b/graphify-out/cache/semantic/pd5fd89c46bb5/e84f2271466917c82f25e3e3a2a5582491e9ae5186106a7c06f2c71086853334.json @@ -0,0 +1 @@ +{"nodes": [{"id": "config_example", "label": "config.example.yaml", "file_type": "document", "source_file": "config.example.yaml", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}], "edges": [], "hyperedges": []} \ No newline at end of file diff --git a/graphify-out/cache/semantic/pd5fd89c46bb5/ec5151c8b8ff90fd78fecdbc2877c46f9da77f9c8110eb7c2867b0913c22d856.json b/graphify-out/cache/semantic/pd5fd89c46bb5/ec5151c8b8ff90fd78fecdbc2877c46f9da77f9c8110eb7c2867b0913c22d856.json new file mode 100644 index 0000000..ebcc7b4 --- /dev/null +++ b/graphify-out/cache/semantic/pd5fd89c46bb5/ec5151c8b8ff90fd78fecdbc2877c46f9da77f9c8110eb7c2867b0913c22d856.json @@ -0,0 +1 @@ +{"nodes": [{"id": "docs_superpowers_specs_2026_07_26_platform_design", "label": "Platform Design Spec", "file_type": "document", "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null}, {"id": "docs_superpowers_specs_2026_07_26_platform_design_monorepo_architecture", "label": "Architecture: Monorepo in-package webapp (Approach A)", "file_type": "rationale", "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a73", "source_url": null, "captured_at": null, "author": null, "contributor": null, "rationale": "FastAPI app lives inside src/yt_scraper/webapp/ and reuses Store + pipeline modules directly; one process serves SPA, JSON API, and SSE. Rejected: separate top-level package (doubles plumbing), separate processes sharing only DB (duplicates query logic, breaks the one-platform feel)."}, {"id": "docs_superpowers_specs_2026_07_26_platform_design_no_ai_scope", "label": "Scope rule: No AI features", "file_type": "rationale", "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a71, \u00a714", "source_url": null, "captured_at": null, "author": null, "contributor": null, "rationale": "Data-mining + content focus only. Explicitly excluded: LLM summaries, Q&A/RAG, NER (spaCy), speaker diarization (pyannote). CLI stats/clip/thumbnails/translation also dropped; aggregate queries still exist internally to feed the dashboard."}, {"id": "docs_superpowers_specs_2026_07_26_platform_design_dark_command_center", "label": "Design language: dark data command center", "file_type": "concept", "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a77.2", "source_url": null, "captured_at": null, "author": null, "contributor": null, "rationale": "Near-black canvas (zinc-950), glassy cards (backdrop-blur), red->rose accent gradient as a creator-content nod, monospace data accents, smooth Alpine x-transitions. Charts via Chart.js with theme-matched grid/text colors."}, {"id": "docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5", "label": "transcript_segments + FTS5 external-content table", "file_type": "concept", "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a75.2", "source_url": null, "captured_at": null, "author": null, "contributor": null, "rationale": "FTS5 external-content table over transcript_segments(text). Manual populate_fts (delete+insert) after store_segments rather than triggers - simpler and idempotent. Queries via MATCH + join. Populated during scrape AND by one-time backfill from .md."}, {"id": "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner", "label": "Single-threaded scrape job runner + SSE event bus", "file_type": "concept", "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a77.1 (jobs.py)", "source_url": null, "captured_at": null, "author": null, "contributor": null, "rationale": "queue.Queue worker runs scrape jobs sequentially to avoid concurrent yt-dlp hammering. Emits SSE events (progress, log, done, error). Persisted in scrape_jobs table. Active cookie from vault is auto-passed as cookies_file to every job."}, {"id": "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux", "label": "Cookie drag-and-drop vault UX", "file_type": "concept", "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a78", "source_url": null, "captured_at": null, "author": null, "contributor": null, "rationale": "Drop zone accepts multiple .txt files or pasted Netscape text. parse_netscape validates, extracts earliest expiry, detects session cookies (SID, SAPISID, __Secure-3PSID, LOGIN_INFO). Exactly one cookie active globally; path passed to yt-dlp as cookiefile."}, {"id": "docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix", "label": "cli.py cookies scope bug fix", "file_type": "rationale", "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a72, \u00a76.2 (cli.py:228-229)", "source_url": null, "captured_at": null, "author": null, "contributor": null, "rationale": "_process_one() references cookies/cookies_from_browser local to main() - out of scope. Fix: thread both through _process_one signature; when neither flag given, fall back to active vault cookie via cookies.resolve_active_path() so the webapp selection also works for CLI."}], "edges": [{"source": "docs_superpowers_specs_2026_07_26_platform_design", "target": "opportunities", "relation": "cites", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a71", "weight": 1.0}, {"source": "docs_superpowers_specs_2026_07_26_platform_design", "target": "docs_superpowers_specs_2026_07_26_platform_design_monorepo_architecture", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a73", "weight": 1.0}, {"source": "docs_superpowers_specs_2026_07_26_platform_design", "target": "docs_superpowers_specs_2026_07_26_platform_design_no_ai_scope", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a71, \u00a714", "weight": 1.0}, {"source": "docs_superpowers_specs_2026_07_26_platform_design_no_ai_scope", "target": "opportunities_llm_summaries", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a714", "weight": 1.0}, {"source": "docs_superpowers_specs_2026_07_26_platform_design_no_ai_scope", "target": "opportunities_rag_qa", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a714", "weight": 1.0}, {"source": "docs_superpowers_specs_2026_07_26_platform_design", "target": "docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": "\u00a72, \u00a76.2", "weight": 1.0}, {"source": "docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5", "target": "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner", "relation": "shares_data_with", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": null, "weight": 1.0}, {"source": "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux", "target": "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner", "relation": "shares_data_with", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": null, "weight": 1.0}, {"source": "docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix", "target": "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux", "relation": "conceptually_related_to", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", "source_location": null, "weight": 1.0}], "hyperedges": [{"id": "fts5_search_flow", "label": "FTS5 transcript search flow (proposal -> spec -> SPA view)", "nodes": ["opportunities_search_fts5", "docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5", "src_yt_scraper_webapp_static_index"], "relation": "form", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md"}, {"id": "cookie_auth_chain", "label": "Cookie auth chain (vault -> resolve_active_path -> scrape job)", "nodes": ["docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux", "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner", "docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix", "src_yt_scraper_webapp_static_index"], "relation": "participate_in", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md"}]} \ No newline at end of file diff --git a/graphify-out/cache/stat-index.json b/graphify-out/cache/stat-index.json new file mode 100644 index 0000000..05c4b6a --- /dev/null +++ b/graphify-out/cache/stat-index.json @@ -0,0 +1 @@ +{"D:\\yt-channel-scraper\\.opencode\\agent\\webapp-builder.md":{"size":3891,"mtime_ns":1785126783715256600,"word_count":433,"hashes":{".opencode/agent/webapp-builder.md":"2b6afcf782a2518e06b1040d880a1fb668576ddc2665840bb27caf75e9830d71"}},"D:\\yt-channel-scraper\\.opencode\\goals\\webapp-build.md":{"size":2552,"mtime_ns":1785126796840232700,"word_count":277,"hashes":{".opencode/goals/webapp-build.md":"371bcb19ceaf8b8ae9518e7d92cf8894aa87a287f8ca02384e15c93c27f6a311"}},"D:\\yt-channel-scraper\\OPPORTUNITIES.md":{"size":9812,"mtime_ns":1785122706346625400,"word_count":1426,"hashes":{"opportunities.md":"b902d960b29cb8971d13f7f1560f8e4e0fcfe8a5cec932674ccbeb48811572dd"}},"D:\\yt-channel-scraper\\README.md":{"size":4417,"mtime_ns":1785121499328260400,"word_count":560,"hashes":{"readme.md":"9844ec5f35ae0a96f6a073b5510290597ac1edaaf4e8e92c368ea19976bb1f13"}},"D:\\yt-channel-scraper\\config.example.yaml":{"size":450,"mtime_ns":1785120602411433500,"word_count":36,"hashes":{"config.example.yaml":"e84f2271466917c82f25e3e3a2a5582491e9ae5186106a7c06f2c71086853334"}},"D:\\yt-channel-scraper\\docs\\superpowers\\plans\\2026-07-26-platform-build.md":{"size":7261,"mtime_ns":1785126240421170200,"word_count":903,"hashes":{"docs/superpowers/plans/2026-07-26-platform-build.md":"944c07bd6e6a4c3f72fc7c91349722b83b7c918ec8e1602c0db3493a9cc101d8"}},"D:\\yt-channel-scraper\\docs\\superpowers\\specs\\2026-07-26-platform-design.md":{"size":17482,"mtime_ns":1785126024487905800,"word_count":2198,"hashes":{"docs/superpowers/specs/2026-07-26-platform-design.md":"ec5151c8b8ff90fd78fecdbc2877c46f9da77f9c8110eb7c2867b0913c22d856"}},"D:\\yt-channel-scraper\\pyproject.toml":{"size":975,"mtime_ns":1785126752975995500,"word_count":91,"hashes":{"pyproject.toml":"d769492446cb53e6915aca1bd4ca33178a34670ec6b919dd2c150fd236b23c9e"}},"D:\\yt-channel-scraper\\scripts\\start-server.ps1":{"size":4190,"mtime_ns":1785130613533591100,"word_count":531,"hashes":{"scripts/start-server.ps1":"0c459d37d23ee068ff0a98b53a93f6c65070e09c18153545989b049560f4f594"}},"D:\\yt-channel-scraper\\scripts\\stop-server.ps1":{"size":1362,"mtime_ns":1785127403232948300,"word_count":179,"hashes":{"scripts/stop-server.ps1":"bd62de6ce97df98a14ebd1098c91707fc0dd9ba568437c71bb3a075c519b7882"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\__init__.py":{"size":22,"mtime_ns":1785120608333675100,"word_count":3,"hashes":{"src/yt_scraper/__init__.py":"92ebf7566766c51a5116f810a79d6444db5472466580806cb39777c868b5a5b4"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\analysis.py":{"size":5994,"mtime_ns":1785126463154502800,"word_count":647,"hashes":{"src/yt_scraper/analysis.py":"bdd04141d70cba0f2a1b2d4375870c2c475971df35c1d55cf38ca92a1a78b6b7"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\chapters.py":{"size":1490,"mtime_ns":1785120675330897400,"word_count":153,"hashes":{"src/yt_scraper/chapters.py":"5eb1ea5adee7b3a6de0470fbefdc34a0081f0886289248d1a6985eebd5d048f2"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\cli.py":{"size":21960,"mtime_ns":1785126572057588500,"word_count":1819,"hashes":{"src/yt_scraper/cli.py":"9b4e29bbe5f0ed1517912d40ea1ca2d60555bef6e8416b4c5cb2e55d4227267d"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\config.py":{"size":2785,"mtime_ns":1785120620335520900,"word_count":212,"hashes":{"src/yt_scraper/config.py":"285ff3f97a258a1caa08b81e25d78590eb1aace9284a1a69d921f73bf80610b0"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\cookies.py":{"size":5124,"mtime_ns":1785126417421822800,"word_count":532,"hashes":{"src/yt_scraper/cookies.py":"33bef431555f5edd76ea2c4a39cfca53964da20dae91d0b46c81b5e21e5bfe81"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\discover.py":{"size":2230,"mtime_ns":1785120708331970900,"word_count":189,"hashes":{"src/yt_scraper/discover.py":"7aa050f1ed896a0e062669f2f287f75ceb7a57b22ddcc5b635bed3d59779b759"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\export.py":{"size":4149,"mtime_ns":1785126439682940200,"word_count":382,"hashes":{"src/yt_scraper/export.py":"5f5648fe20db27632fcc9468b33427f8525e761bd11953a5cb6fe268c27823b8"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\extract.py":{"size":3716,"mtime_ns":1785122183729459500,"word_count":343,"hashes":{"src/yt_scraper/extract.py":"64a9963471c61688046509288debd54d5eb992be7e3bd86fd0e0d23714316585"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\monitor.py":{"size":2981,"mtime_ns":1785126496288271000,"word_count":280,"hashes":{"src/yt_scraper/monitor.py":"2f15912ebacf22f457d91abb145e94909b16faa74732de18a2f07e31afac47a9"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\parse.py":{"size":2776,"mtime_ns":1785120665338477100,"word_count":271,"hashes":{"src/yt_scraper/parse.py":"bc8259cf378616dd8bcb0d0d75ba8b67e3355f918fcc614fe61389ba3795097c"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\pipeline.py":{"size":7753,"mtime_ns":1785131195731158200,"word_count":684,"hashes":{"src/yt_scraper/pipeline.py":"0c924be6b3e5c4aefe549a28f8a314ae236b1b76207023e80fefa32691dce799"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\ratelimit.py":{"size":363,"mtime_ns":1785120650379539500,"word_count":49,"hashes":{"src/yt_scraper/ratelimit.py":"142ed79d04b7ffc16d45c4fd83b668cbc00e32ba622283aeca1f31210664b0f6"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\render.py":{"size":2225,"mtime_ns":1785120688324726800,"word_count":222,"hashes":{"src/yt_scraper/render.py":"7b6c9aede202fa24c4070eff2a45987f38369a6d73121e2cc8bbaafdaaed6ec3"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\segments.py":{"size":5937,"mtime_ns":1785128385665226300,"word_count":554,"hashes":{"src/yt_scraper/segments.py":"a1dcd3fd32ecc99846a876848d9b1f874e34eaf2fc4de10ff245b757a53209da"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\store.py":{"size":27488,"mtime_ns":1785128318886802800,"word_count":2713,"hashes":{"src/yt_scraper/store.py":"017d7d8cd5411dff3256656fa40fc036ebae1576f37e719d258f54ea66ded544"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\__init__.py":{"size":0,"mtime_ns":1785126827495775200,"word_count":0,"hashes":{"src/yt_scraper/webapp/__init__.py":"39d6fb49fe1a6399b04c85f41a27c66deef9a756a36a33d61f45cbbadc2306c6"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\api.py":{"size":19584,"mtime_ns":1785131229180194500,"word_count":1724,"hashes":{"src/yt_scraper/webapp/api.py":"b18e8b9c6f644dc007f70bf7048f2b885991aeade60c75cd18b33df95dec0a3c"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\app.py":{"size":2426,"mtime_ns":1785126888803288800,"word_count":216,"hashes":{"src/yt_scraper/webapp/app.py":"09a73a233d94b95f31f750ca2d96fe89ac48cf7ac69cff22e9f5112018c0c2ac"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\jobs.py":{"size":12610,"mtime_ns":1785131211039710200,"word_count":1033,"hashes":{"src/yt_scraper/webapp/jobs.py":"415969ae62c7c3b54477a743db17ff1d00b8020b7e4e469d4191a24ecb220299"}},"D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\static\\app.js":{"size":40499,"mtime_ns":1785131273377278900,"word_count":4340},"D:\\yt-channel-scraper\\src\\yt_scraper\\webapp\\static\\index.html":{"size":63065,"mtime_ns":1785131249491131500,"word_count":4245,"hashes":{"src/yt_scraper/webapp/static/index.html":"1d344f1fca5d9d688099ea24f8832d4a1a57b9fc6b690deab3b95e425c411fb3"}},"D:\\yt-channel-scraper\\tests\\test_chapters.py":{"size":1839,"mtime_ns":1785120789330089600,"word_count":173,"hashes":{"tests/test_chapters.py":"5c0cce89c92ed6eab1cd14158c3f5f020a68cc0469d2129f7c3af424d184fa6d"}},"D:\\yt-channel-scraper\\tests\\test_features.py":{"size":4945,"mtime_ns":1785126709657279900,"word_count":494,"hashes":{"tests/test_features.py":"bcb2c3a21e73d7c8c00161c1585bc15ed856116eac5c37608af0699fb5cce7ad"}},"D:\\yt-channel-scraper\\tests\\test_parse.py":{"size":1662,"mtime_ns":1785120974328318900,"word_count":170,"hashes":{"tests/test_parse.py":"bd9731c51b005a5cef7bd97a9555a9d5609eaa8c4da9f147a8708571c6440ff7"}},"D:\\yt-channel-scraper\\tests\\test_render.py":{"size":2221,"mtime_ns":1785120806326023900,"word_count":206,"hashes":{"tests/test_render.py":"cca26b54622e61299b9e7165fb56629045ac8ba8bdc08fb67d0f1b4422696157"}},"D:\\yt-channel-scraper\\tests\\test_store_platform.py":{"size":6102,"mtime_ns":1785126662477275600,"word_count":566,"hashes":{"tests/test_store_platform.py":"301d5a1fde90564e824d05b8b427da6644cbd693ad8ac844821e5563389c2ce8"}}} \ No newline at end of file diff --git a/graphify-out/cost.json b/graphify-out/cost.json new file mode 100644 index 0000000..9d02389 --- /dev/null +++ b/graphify-out/cost.json @@ -0,0 +1,12 @@ +{ + "runs": [ + { + "date": "2026-07-27T05:54:56.822038+00:00", + "input_tokens": 11800, + "output_tokens": 4100, + "files": 37 + } + ], + "total_input_tokens": 11800, + "total_output_tokens": 4100 +} \ No newline at end of file diff --git a/graphify-out/graph.html b/graphify-out/graph.html new file mode 100644 index 0000000..9e84d15 --- /dev/null +++ b/graphify-out/graph.html @@ -0,0 +1,320 @@ + + + + +graphify - graphify-out\graph.html + + + + +
+ + + + + \ No newline at end of file diff --git a/graphify-out/graph.json b/graphify-out/graph.json new file mode 100644 index 0000000..ea1eb6c --- /dev/null +++ b/graphify-out/graph.json @@ -0,0 +1,15135 @@ +{ + "directed": false, + "multigraph": false, + "graph": { + "hyperedges": [ + { + "id": "webapp_stack_b", + "label": "Workstream B webapp stack (FastAPI + Alpine SPA + subagent)", + "nodes": [ + "opencode_agent_webapp_builder", + "opencode_goals_webapp_build", + "src_yt_scraper_webapp_static_index", + "docs_superpowers_specs_2026_07_26_platform_design_dark_command_center", + "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner" + ], + "relation": "participate_in", + "confidence": "EXTRACTED", + "confidence_score": 0.95, + "source_file": ".opencode/agent/webapp-builder.md" + }, + { + "id": "fts5_search_flow", + "label": "FTS5 transcript search flow (proposal -> spec -> SPA view)", + "nodes": [ + "opportunities_search_fts5", + "docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5", + "src_yt_scraper_webapp_static_index" + ], + "relation": "form", + "confidence": "INFERRED", + "confidence_score": 0.85, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md" + }, + { + "id": "cookie_auth_chain", + "label": "Cookie auth chain (vault -> resolve_active_path -> scrape job)", + "nodes": [ + "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux", + "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner", + "docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix", + "src_yt_scraper_webapp_static_index" + ], + "relation": "participate_in", + "confidence": "INFERRED", + "confidence_score": 0.85, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md" + } + ] + }, + "nodes": [ + { + "label": "yt-channel-scraper", + "file_type": "code", + "type": "package", + "ecosystem": "python", + "source_file": "pyproject.toml", + "source_location": "L1", + "version": "0.1.0", + "_origin": "ast", + "id": "pkg_yt_channel_scraper", + "community": 11, + "norm_label": "yt-channel-scraper" + }, + { + "label": "start-server.ps1", + "file_type": "code", + "source_file": "scripts/start-server.ps1", + "source_location": "L1", + "_origin": "ast", + "id": "scripts_start_server", + "community": 10, + "norm_label": "start-server.ps1" + }, + { + "label": "Open-Browser()", + "file_type": "code", + "source_file": "scripts/start-server.ps1", + "source_location": "L6", + "_origin": "ast", + "id": "scripts_start_server_open_browser", + "community": 10, + "norm_label": "open-browser()" + }, + { + "label": "stop-server.ps1", + "file_type": "code", + "source_file": "scripts/stop-server.ps1", + "source_location": "L1", + "_origin": "ast", + "id": "scripts_stop_server", + "community": 12, + "norm_label": "stop-server.ps1" + }, + { + "label": "yt_scraper/__init__.py", + "file_type": "code", + "source_file": "src/yt_scraper/__init__.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_init", + "community": 2, + "norm_label": "yt_scraper/__init__.py" + }, + { + "label": "analysis.py", + "file_type": "code", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_analysis", + "community": 8, + "norm_label": "analysis.py" + }, + { + "label": "_iter_texts()", + "file_type": "code", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L36", + "_origin": "ast", + "id": "src_yt_scraper_analysis_iter_texts", + "community": 8, + "norm_label": "_iter_texts()" + }, + { + "label": "_tokenize()", + "file_type": "code", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L51", + "_origin": "ast", + "id": "src_yt_scraper_analysis_tokenize", + "community": 8, + "norm_label": "_tokenize()" + }, + { + "label": "word_frequency()", + "file_type": "code", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L58", + "_origin": "ast", + "id": "src_yt_scraper_analysis_word_frequency", + "community": 8, + "norm_label": "word_frequency()" + }, + { + "label": "top_words()", + "file_type": "code", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L66", + "_origin": "ast", + "id": "src_yt_scraper_analysis_top_words", + "community": 8, + "norm_label": "top_words()" + }, + { + "label": "term_timeline()", + "file_type": "code", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L70", + "_origin": "ast", + "id": "src_yt_scraper_analysis_term_timeline", + "community": 8, + "norm_label": "term_timeline()" + }, + { + "label": "render_wordcloud()", + "file_type": "code", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L98", + "_origin": "ast", + "id": "src_yt_scraper_analysis_render_wordcloud", + "community": 8, + "norm_label": "render_wordcloud()" + }, + { + "label": "Path", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_analysis_py_path", + "community": 8, + "norm_label": "path" + }, + { + "label": "render_top_words_chart()", + "file_type": "code", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L119", + "_origin": "ast", + "id": "src_yt_scraper_analysis_render_top_words_chart", + "community": 8, + "norm_label": "render_top_words_chart()" + }, + { + "label": "render_timeline_chart()", + "file_type": "code", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L143", + "_origin": "ast", + "id": "src_yt_scraper_analysis_render_timeline_chart", + "community": 8, + "norm_label": "render_timeline_chart()" + }, + { + "label": "Return [(YYYY-MM, count)] of months where `term` appears in transcripts.", + "file_type": "rationale", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L71", + "_origin": "ast", + "id": "src_yt_scraper_analysis_rationale_71", + "community": 8, + "norm_label": "return [(yyyy-mm, count)] of months where `term` appears in transcripts." + }, + { + "label": "chapters.py", + "file_type": "code", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_chapters", + "community": 1, + "norm_label": "chapters.py" + }, + { + "label": "Chapter", + "file_type": "code", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L9", + "_origin": "ast", + "id": "src_yt_scraper_chapters_chapter", + "community": 1, + "norm_label": "chapter" + }, + { + "label": "Section", + "file_type": "code", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L16", + "_origin": "ast", + "id": "src_yt_scraper_chapters_section", + "community": 1, + "norm_label": "section" + }, + { + "label": "align_chapters()", + "file_type": "code", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L22", + "_origin": "ast", + "id": "src_yt_scraper_chapters_align_chapters", + "community": 1, + "norm_label": "align_chapters()" + }, + { + "label": "chapters_from_info()", + "file_type": "code", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L39", + "_origin": "ast", + "id": "src_yt_scraper_chapters_chapters_from_info", + "community": 1, + "norm_label": "chapters_from_info()" + }, + { + "label": "cli.py", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_cli", + "community": 4, + "norm_label": "cli.py" + }, + { + "label": "_setup_logging()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L28", + "_origin": "ast", + "id": "src_yt_scraper_cli_setup_logging", + "community": 4, + "norm_label": "_setup_logging()" + }, + { + "label": "cli()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L47", + "_origin": "ast", + "id": "src_yt_scraper_cli_cli", + "community": 4, + "norm_label": "cli()" + }, + { + "label": "_apply_filters()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L72", + "_origin": "ast", + "id": "src_yt_scraper_cli_apply_filters", + "community": 4, + "norm_label": "_apply_filters()" + }, + { + "label": "scrape()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L99", + "_origin": "ast", + "id": "src_yt_scraper_cli_scrape", + "community": 4, + "norm_label": "scrape()" + }, + { + "label": "_run_scrape()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L104", + "_origin": "ast", + "id": "src_yt_scraper_cli_run_scrape", + "community": 4, + "norm_label": "_run_scrape()" + }, + { + "label": "_print_dry_run()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L176", + "_origin": "ast", + "id": "src_yt_scraper_cli_print_dry_run", + "community": 4, + "norm_label": "_print_dry_run()" + }, + { + "label": "search_cmd()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L195", + "_origin": "ast", + "id": "src_yt_scraper_cli_search_cmd", + "community": 4, + "norm_label": "search_cmd()" + }, + { + "label": "export_cmd()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L219", + "_origin": "ast", + "id": "src_yt_scraper_cli_export_cmd", + "community": 4, + "norm_label": "export_cmd()" + }, + { + "label": "audio_cmd()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L248", + "_origin": "ast", + "id": "src_yt_scraper_cli_audio_cmd", + "community": 4, + "norm_label": "audio_cmd()" + }, + { + "label": "channels_grp()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L291", + "_origin": "ast", + "id": "src_yt_scraper_cli_channels_grp", + "community": 4, + "norm_label": "channels_grp()" + }, + { + "label": "channels_list()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L297", + "_origin": "ast", + "id": "src_yt_scraper_cli_channels_list", + "community": 4, + "norm_label": "channels_list()" + }, + { + "label": "channels_add()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L312", + "_origin": "ast", + "id": "src_yt_scraper_cli_channels_add", + "community": 4, + "norm_label": "channels_add()" + }, + { + "label": "channels_remove()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L325", + "_origin": "ast", + "id": "src_yt_scraper_cli_channels_remove", + "community": 4, + "norm_label": "channels_remove()" + }, + { + "label": "watch_cmd()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L345", + "_origin": "ast", + "id": "src_yt_scraper_cli_watch_cmd", + "community": 4, + "norm_label": "watch_cmd()" + }, + { + "label": "analyze_cmd()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L363", + "_origin": "ast", + "id": "src_yt_scraper_cli_analyze_cmd", + "community": 4, + "norm_label": "analyze_cmd()" + }, + { + "label": "re_render_cmd()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L408", + "_origin": "ast", + "id": "src_yt_scraper_cli_re_render_cmd", + "community": 1, + "norm_label": "re_render_cmd()" + }, + { + "label": "_channel_targets()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L446", + "_origin": "ast", + "id": "src_yt_scraper_cli_channel_targets", + "community": 4, + "norm_label": "_channel_targets()" + }, + { + "label": "_print_stats()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L458", + "_origin": "ast", + "id": "src_yt_scraper_cli_print_stats", + "community": 4, + "norm_label": "_print_stats()" + }, + { + "label": "_title_for()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L470", + "_origin": "ast", + "id": "src_yt_scraper_cli_title_for", + "community": 4, + "norm_label": "_title_for()" + }, + { + "label": "_extract_handle()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L475", + "_origin": "ast", + "id": "src_yt_scraper_cli_extract_handle", + "community": 4, + "norm_label": "_extract_handle()" + }, + { + "label": "_fmt_date()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L481", + "_origin": "ast", + "id": "src_yt_scraper_cli_fmt_date", + "community": 4, + "norm_label": "_fmt_date()" + }, + { + "label": "_fmt_duration()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L489", + "_origin": "ast", + "id": "src_yt_scraper_cli_fmt_duration", + "community": 4, + "norm_label": "_fmt_duration()" + }, + { + "label": "seconds_to_ts()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L497", + "_origin": "ast", + "id": "src_yt_scraper_cli_seconds_to_ts", + "community": 4, + "norm_label": "seconds_to_ts()" + }, + { + "label": "_safe_dirname()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L504", + "_origin": "ast", + "id": "src_yt_scraper_cli_safe_dirname", + "community": 1, + "norm_label": "_safe_dirname()" + }, + { + "label": "_safe_filename()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L509", + "_origin": "ast", + "id": "src_yt_scraper_cli_safe_filename", + "community": 4, + "norm_label": "_safe_filename()" + }, + { + "label": "_parse_tags()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L514", + "_origin": "ast", + "id": "src_yt_scraper_cli_parse_tags", + "community": 1, + "norm_label": "_parse_tags()" + }, + { + "label": "_parse_interval()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L524", + "_origin": "ast", + "id": "src_yt_scraper_cli_parse_interval", + "community": 4, + "norm_label": "_parse_interval()" + }, + { + "label": "main()", + "file_type": "code", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L537", + "_origin": "ast", + "id": "src_yt_scraper_cli_main", + "community": 4, + "norm_label": "main()" + }, + { + "label": "yt-channel-scraper: plataforma local de miner\u00eda de contenido de creadores.", + "file_type": "rationale", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L48", + "_origin": "ast", + "id": "src_yt_scraper_cli_rationale_48", + "community": 4, + "norm_label": "yt-channel-scraper: plataforma local de mineria de contenido de creadores." + }, + { + "label": "Scrape completo: discovery + extraccion + markdown.", + "file_type": "rationale", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L100", + "_origin": "ast", + "id": "src_yt_scraper_cli_rationale_100", + "community": 4, + "norm_label": "scrape completo: discovery + extraccion + markdown." + }, + { + "label": "Busqueda full-text en transcripciones.", + "file_type": "rationale", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L196", + "_origin": "ast", + "id": "src_yt_scraper_cli_rationale_196", + "community": 4, + "norm_label": "busqueda full-text en transcripciones." + }, + { + "label": "Export multi-formato.", + "file_type": "rationale", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L220", + "_origin": "ast", + "id": "src_yt_scraper_cli_rationale_220", + "community": 4, + "norm_label": "export multi-formato." + }, + { + "label": "Descarga audio MP3 (requiere ffmpeg).", + "file_type": "rationale", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L249", + "_origin": "ast", + "id": "src_yt_scraper_cli_rationale_249", + "community": 4, + "norm_label": "descarga audio mp3 (requiere ffmpeg)." + }, + { + "label": "Monitoreo de nuevos videos.", + "file_type": "rationale", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L346", + "_origin": "ast", + "id": "src_yt_scraper_cli_rationale_346", + "community": 4, + "norm_label": "monitoreo de nuevos videos." + }, + { + "label": "Analisis estadistico de contenido (frecuencia, timeline).", + "file_type": "rationale", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L364", + "_origin": "ast", + "id": "src_yt_scraper_cli_rationale_364", + "community": 4, + "norm_label": "analisis estadistico de contenido (frecuencia, timeline)." + }, + { + "label": "Regenerar Markdown desde segmentos almacenados.", + "file_type": "rationale", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L409", + "_origin": "ast", + "id": "src_yt_scraper_cli_rationale_409", + "community": 1, + "norm_label": "regenerar markdown desde segmentos almacenados." + }, + { + "label": "config.py", + "file_type": "code", + "source_file": "src/yt_scraper/config.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_config", + "community": 2, + "norm_label": "config.py" + }, + { + "label": "DelayConfig", + "file_type": "code", + "source_file": "src/yt_scraper/config.py", + "source_location": "L11", + "_origin": "ast", + "id": "src_yt_scraper_config_delayconfig", + "community": 2, + "norm_label": "delayconfig" + }, + { + "label": "YtDlpConfig", + "file_type": "code", + "source_file": "src/yt_scraper/config.py", + "source_location": "L19", + "_origin": "ast", + "id": "src_yt_scraper_config_ytdlpconfig", + "community": 2, + "norm_label": "ytdlpconfig" + }, + { + "label": "Config", + "file_type": "code", + "source_file": "src/yt_scraper/config.py", + "source_location": "L25", + "_origin": "ast", + "id": "src_yt_scraper_config_config", + "community": 2, + "norm_label": "config" + }, + { + "label": ".database_path_resolved()", + "file_type": "code", + "source_file": "src/yt_scraper/config.py", + "source_location": "L40", + "_origin": "ast", + "id": "src_yt_scraper_config_config_database_path_resolved", + "community": 2, + "norm_label": ".database_path_resolved()" + }, + { + "label": "Path", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_config_py_path", + "community": 2, + "norm_label": "path" + }, + { + "label": ".output_dir_resolved()", + "file_type": "code", + "source_file": "src/yt_scraper/config.py", + "source_location": "L44", + "_origin": "ast", + "id": "src_yt_scraper_config_config_output_dir_resolved", + "community": 2, + "norm_label": ".output_dir_resolved()" + }, + { + "label": ".template_path_resolved()", + "file_type": "code", + "source_file": "src/yt_scraper/config.py", + "source_location": "L48", + "_origin": "ast", + "id": "src_yt_scraper_config_config_template_path_resolved", + "community": 2, + "norm_label": ".template_path_resolved()" + }, + { + "label": "load_config()", + "file_type": "code", + "source_file": "src/yt_scraper/config.py", + "source_location": "L52", + "_origin": "ast", + "id": "src_yt_scraper_config_load_config", + "community": 2, + "norm_label": "load_config()" + }, + { + "label": "_build_config()", + "file_type": "code", + "source_file": "src/yt_scraper/config.py", + "source_location": "L61", + "_origin": "ast", + "id": "src_yt_scraper_config_build_config", + "community": 2, + "norm_label": "_build_config()" + }, + { + "label": "Any", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_config_py_any", + "community": 2, + "norm_label": "any" + }, + { + "label": "cookies.py", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_cookies", + "community": 4, + "norm_label": "cookies.py" + }, + { + "label": "cookies_dir()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L18", + "_origin": "ast", + "id": "src_yt_scraper_cookies_cookies_dir", + "community": 4, + "norm_label": "cookies_dir()" + }, + { + "label": "Path", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_cookies_py_path", + "community": 4, + "norm_label": "path" + }, + { + "label": "parse_netscape()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L24", + "_origin": "ast", + "id": "src_yt_scraper_cookies_parse_netscape", + "community": 4, + "norm_label": "parse_netscape()" + }, + { + "label": "parse_netscape_file()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L62", + "_origin": "ast", + "id": "src_yt_scraper_cookies_parse_netscape_file", + "community": 4, + "norm_label": "parse_netscape_file()" + }, + { + "label": "import_file()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L74", + "_origin": "ast", + "id": "src_yt_scraper_cookies_import_file", + "community": 4, + "norm_label": "import_file()" + }, + { + "label": "import_text()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L80", + "_origin": "ast", + "id": "src_yt_scraper_cookies_import_text", + "community": 4, + "norm_label": "import_text()" + }, + { + "label": "auto_import_dir()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L99", + "_origin": "ast", + "id": "src_yt_scraper_cookies_auto_import_dir", + "community": 4, + "norm_label": "auto_import_dir()" + }, + { + "label": "set_active()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L129", + "_origin": "ast", + "id": "src_yt_scraper_cookies_set_active", + "community": 4, + "norm_label": "set_active()" + }, + { + "label": "list_vault()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L133", + "_origin": "ast", + "id": "src_yt_scraper_cookies_list_vault", + "community": 3, + "norm_label": "list_vault()" + }, + { + "label": "delete()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L137", + "_origin": "ast", + "id": "src_yt_scraper_cookies_delete", + "community": 4, + "norm_label": "delete()" + }, + { + "label": "resolve_active_path()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L145", + "_origin": "ast", + "id": "src_yt_scraper_cookies_resolve_active_path", + "community": 4, + "norm_label": "resolve_active_path()" + }, + { + "label": "is_expired()", + "file_type": "code", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L154", + "_origin": "ast", + "id": "src_yt_scraper_cookies_is_expired", + "community": 3, + "norm_label": "is_expired()" + }, + { + "label": "Parse Netscape cookie text. Returns (ok, info). info = {count, has_session,", + "file_type": "rationale", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L25", + "_origin": "ast", + "id": "src_yt_scraper_cookies_rationale_25", + "community": 4, + "norm_label": "parse netscape cookie text. returns (ok, info). info = {count, has_session," + }, + { + "label": "Import any loose .txt Netscape files in dir that aren't tracked yet. Returns cou", + "file_type": "rationale", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L100", + "_origin": "ast", + "id": "src_yt_scraper_cookies_rationale_100", + "community": 4, + "norm_label": "import any loose .txt netscape files in dir that aren't tracked yet. returns cou" + }, + { + "label": "discover.py", + "file_type": "code", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_discover", + "community": 2, + "norm_label": "discover.py" + }, + { + "label": "discover_channel()", + "file_type": "code", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L13", + "_origin": "ast", + "id": "src_yt_scraper_discover_discover_channel", + "community": 2, + "norm_label": "discover_channel()" + }, + { + "label": "_flatten_entries()", + "file_type": "code", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L57", + "_origin": "ast", + "id": "src_yt_scraper_discover_flatten_entries", + "community": 2, + "norm_label": "_flatten_entries()" + }, + { + "label": "Any", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_discover_py_any", + "community": 2, + "norm_label": "any" + }, + { + "label": "Returns (channel_id, channel_name, video_refs).", + "file_type": "rationale", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L14", + "_origin": "ast", + "id": "src_yt_scraper_discover_rationale_14", + "community": 2, + "norm_label": "returns (channel_id, channel_name, video_refs)." + }, + { + "label": "export.py", + "file_type": "code", + "source_file": "src/yt_scraper/export.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_export", + "community": 3, + "norm_label": "export.py" + }, + { + "label": "export_json()", + "file_type": "code", + "source_file": "src/yt_scraper/export.py", + "source_location": "L12", + "_origin": "ast", + "id": "src_yt_scraper_export_export_json", + "community": 3, + "norm_label": "export_json()" + }, + { + "label": "Path", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_export_py_path", + "community": 3, + "norm_label": "path" + }, + { + "label": "export_csv()", + "file_type": "code", + "source_file": "src/yt_scraper/export.py", + "source_location": "L24", + "_origin": "ast", + "id": "src_yt_scraper_export_export_csv", + "community": 3, + "norm_label": "export_csv()" + }, + { + "label": "export_srt_video()", + "file_type": "code", + "source_file": "src/yt_scraper/export.py", + "source_location": "L42", + "_origin": "ast", + "id": "src_yt_scraper_export_export_srt_video", + "community": 3, + "norm_label": "export_srt_video()" + }, + { + "label": "export_srt()", + "file_type": "code", + "source_file": "src/yt_scraper/export.py", + "source_location": "L52", + "_origin": "ast", + "id": "src_yt_scraper_export_export_srt", + "community": 3, + "norm_label": "export_srt()" + }, + { + "label": "export_html()", + "file_type": "code", + "source_file": "src/yt_scraper/export.py", + "source_location": "L66", + "_origin": "ast", + "id": "src_yt_scraper_export_export_html", + "community": 3, + "norm_label": "export_html()" + }, + { + "label": "_video_to_dict()", + "file_type": "code", + "source_file": "src/yt_scraper/export.py", + "source_location": "L79", + "_origin": "ast", + "id": "src_yt_scraper_export_video_to_dict", + "community": 3, + "norm_label": "_video_to_dict()" + }, + { + "label": "_segments_to_srt()", + "file_type": "code", + "source_file": "src/yt_scraper/export.py", + "source_location": "L105", + "_origin": "ast", + "id": "src_yt_scraper_export_segments_to_srt", + "community": 3, + "norm_label": "_segments_to_srt()" + }, + { + "label": "_srt_ts()", + "file_type": "code", + "source_file": "src/yt_scraper/export.py", + "source_location": "L113", + "_origin": "ast", + "id": "src_yt_scraper_export_srt_ts", + "community": 3, + "norm_label": "_srt_ts()" + }, + { + "label": "extract.py", + "file_type": "code", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_extract", + "community": 1, + "norm_label": "extract.py" + }, + { + "label": "SubtitlePick", + "file_type": "code", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L16", + "_origin": "ast", + "id": "src_yt_scraper_extract_subtitlepick", + "community": 1, + "norm_label": "subtitlepick" + }, + { + "label": "VideoData", + "file_type": "code", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L24", + "_origin": "ast", + "id": "src_yt_scraper_extract_videodata", + "community": 1, + "norm_label": "videodata" + }, + { + "label": "extract_video()", + "file_type": "code", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L31", + "_origin": "ast", + "id": "src_yt_scraper_extract_extract_video", + "community": 1, + "norm_label": "extract_video()" + }, + { + "label": "pick_subtitle()", + "file_type": "code", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L72", + "_origin": "ast", + "id": "src_yt_scraper_extract_pick_subtitle", + "community": 1, + "norm_label": "pick_subtitle()" + }, + { + "label": "Any", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_extract_py_any", + "community": 1, + "norm_label": "any" + }, + { + "label": "_pick_best_format()", + "file_type": "code", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L101", + "_origin": "ast", + "id": "src_yt_scraper_extract_pick_best_format", + "community": 1, + "norm_label": "_pick_best_format()" + }, + { + "label": "_normalize_lang()", + "file_type": "code", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L113", + "_origin": "ast", + "id": "src_yt_scraper_extract_normalize_lang", + "community": 1, + "norm_label": "_normalize_lang()" + }, + { + "label": "_download_subtitle()", + "file_type": "code", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L118", + "_origin": "ast", + "id": "src_yt_scraper_extract_download_subtitle", + "community": 1, + "norm_label": "_download_subtitle()" + }, + { + "label": "monitor.py", + "file_type": "code", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_monitor", + "community": 2, + "norm_label": "monitor.py" + }, + { + "label": "watch_loop()", + "file_type": "code", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L18", + "_origin": "ast", + "id": "src_yt_scraper_monitor_watch_loop", + "community": 2, + "norm_label": "watch_loop()" + }, + { + "label": "_run_once()", + "file_type": "code", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L55", + "_origin": "ast", + "id": "src_yt_scraper_monitor_run_once", + "community": 2, + "norm_label": "_run_once()" + }, + { + "label": "_extract_handle()", + "file_type": "code", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L99", + "_origin": "ast", + "id": "src_yt_scraper_monitor_extract_handle", + "community": 2, + "norm_label": "_extract_handle()" + }, + { + "label": "Discover + process pending videos for a channel, optionally on an interval.", + "file_type": "rationale", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L28", + "_origin": "ast", + "id": "src_yt_scraper_monitor_rationale_28", + "community": 2, + "norm_label": "discover + process pending videos for a channel, optionally on an interval." + }, + { + "label": "parse.py", + "file_type": "code", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_parse", + "community": 1, + "norm_label": "parse.py" + }, + { + "label": "Segment", + "file_type": "code", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L9", + "_origin": "ast", + "id": "src_yt_scraper_parse_segment", + "community": 1, + "norm_label": "segment" + }, + { + "label": "parse_json3()", + "file_type": "code", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L21", + "_origin": "ast", + "id": "src_yt_scraper_parse_parse_json3", + "community": 1, + "norm_label": "parse_json3()" + }, + { + "label": "parse_vtt()", + "file_type": "code", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L51", + "_origin": "ast", + "id": "src_yt_scraper_parse_parse_vtt", + "community": 1, + "norm_label": "parse_vtt()" + }, + { + "label": "merge_adjacent()", + "file_type": "code", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L74", + "_origin": "ast", + "id": "src_yt_scraper_parse_merge_adjacent", + "community": 1, + "norm_label": "merge_adjacent()" + }, + { + "label": "parse_auto_dump()", + "file_type": "code", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L88", + "_origin": "ast", + "id": "src_yt_scraper_parse_parse_auto_dump", + "community": 1, + "norm_label": "parse_auto_dump()" + }, + { + "label": "_vtt_ts_to_seconds()", + "file_type": "code", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L94", + "_origin": "ast", + "id": "src_yt_scraper_parse_vtt_ts_to_seconds", + "community": 1, + "norm_label": "_vtt_ts_to_seconds()" + }, + { + "label": "pipeline.py", + "file_type": "code", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_pipeline", + "community": 1, + "norm_label": "pipeline.py" + }, + { + "label": "process_video()", + "file_type": "code", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L18", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_process_video", + "community": 2, + "norm_label": "process_video()" + }, + { + "label": "_normalize_date()", + "file_type": "code", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L130", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_normalize_date", + "community": 2, + "norm_label": "_normalize_date()" + }, + { + "label": "_safe_dirname()", + "file_type": "code", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L138", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_safe_dirname", + "community": 1, + "norm_label": "_safe_dirname()" + }, + { + "label": "thumbnail_url_for()", + "file_type": "code", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L143", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_thumbnail_url_for", + "community": 2, + "norm_label": "thumbnail_url_for()" + }, + { + "label": "cache_thumbnail()", + "file_type": "code", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L151", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_cache_thumbnail", + "community": 2, + "norm_label": "cache_thumbnail()" + }, + { + "label": "re_render_videos()", + "file_type": "code", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L169", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_re_render_videos", + "community": 1, + "norm_label": "re_render_videos()" + }, + { + "label": "Extract + parse + store + render a single video. Returns final status string.", + "file_type": "rationale", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L29", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_rationale_29", + "community": 2, + "norm_label": "extract + parse + store + render a single video. returns final status string." + }, + { + "label": "Thumbnail URL for a video: stored URL, else the canonical YouTube one derived fr", + "file_type": "rationale", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L144", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_rationale_144", + "community": 2, + "norm_label": "thumbnail url for a video: stored url, else the canonical youtube one derived fr" + }, + { + "label": "Download + cache a video's thumbnail to /.jpg. Returns", + "file_type": "rationale", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L152", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_rationale_152", + "community": 2, + "norm_label": "download + cache a video's thumbnail to /.jpg. returns" + }, + { + "label": "Regenerate .md for done videos that have stored segments. Returns count re-rende", + "file_type": "rationale", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L170", + "_origin": "ast", + "id": "src_yt_scraper_pipeline_rationale_170", + "community": 1, + "norm_label": "regenerate .md for done videos that have stored segments. returns count re-rende" + }, + { + "label": "ratelimit.py", + "file_type": "code", + "source_file": "src/yt_scraper/ratelimit.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_ratelimit", + "community": 2, + "norm_label": "ratelimit.py" + }, + { + "label": "polite_sleep()", + "file_type": "code", + "source_file": "src/yt_scraper/ratelimit.py", + "source_location": "L7", + "_origin": "ast", + "id": "src_yt_scraper_ratelimit_polite_sleep", + "community": 2, + "norm_label": "polite_sleep()" + }, + { + "label": "backoff_sleep()", + "file_type": "code", + "source_file": "src/yt_scraper/ratelimit.py", + "source_location": "L12", + "_origin": "ast", + "id": "src_yt_scraper_ratelimit_backoff_sleep", + "community": 2, + "norm_label": "backoff_sleep()" + }, + { + "label": "render.py", + "file_type": "code", + "source_file": "src/yt_scraper/render.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_render", + "community": 1, + "norm_label": "render.py" + }, + { + "label": "format_timestamp()", + "file_type": "code", + "source_file": "src/yt_scraper/render.py", + "source_location": "L11", + "_origin": "ast", + "id": "src_yt_scraper_render_format_timestamp", + "community": 1, + "norm_label": "format_timestamp()" + }, + { + "label": "quote_yaml()", + "file_type": "code", + "source_file": "src/yt_scraper/render.py", + "source_location": "L20", + "_origin": "ast", + "id": "src_yt_scraper_render_quote_yaml", + "community": 1, + "norm_label": "quote_yaml()" + }, + { + "label": "to_json()", + "file_type": "code", + "source_file": "src/yt_scraper/render.py", + "source_location": "L30", + "_origin": "ast", + "id": "src_yt_scraper_render_to_json", + "community": 1, + "norm_label": "to_json()" + }, + { + "label": "_make_env()", + "file_type": "code", + "source_file": "src/yt_scraper/render.py", + "source_location": "L35", + "_origin": "ast", + "id": "src_yt_scraper_render_make_env", + "community": 1, + "norm_label": "_make_env()" + }, + { + "label": "Path", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_render_py_path", + "community": 1, + "norm_label": "path" + }, + { + "label": "Environment", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "environment", + "community": 1, + "norm_label": "environment" + }, + { + "label": "render_markdown()", + "file_type": "code", + "source_file": "src/yt_scraper/render.py", + "source_location": "L48", + "_origin": "ast", + "id": "src_yt_scraper_render_render_markdown", + "community": 1, + "norm_label": "render_markdown()" + }, + { + "label": "build_filename_stem()", + "file_type": "code", + "source_file": "src/yt_scraper/render.py", + "source_location": "L66", + "_origin": "ast", + "id": "src_yt_scraper_render_build_filename_stem", + "community": 1, + "norm_label": "build_filename_stem()" + }, + { + "label": "segments.py", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_segments", + "community": 6, + "norm_label": "segments.py" + }, + { + "label": "ts_to_seconds()", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L22", + "_origin": "ast", + "id": "src_yt_scraper_segments_ts_to_seconds", + "community": 6, + "norm_label": "ts_to_seconds()" + }, + { + "label": "seconds_to_ts()", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L31", + "_origin": "ast", + "id": "src_yt_scraper_segments_seconds_to_ts", + "community": 6, + "norm_label": "seconds_to_ts()" + }, + { + "label": "ParsedMarkdown", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L39", + "_origin": "ast", + "id": "src_yt_scraper_segments_parsedmarkdown", + "community": 6, + "norm_label": "parsedmarkdown" + }, + { + "label": "parse_markdown()", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L45", + "_origin": "ast", + "id": "src_yt_scraper_segments_parse_markdown", + "community": 6, + "norm_label": "parse_markdown()" + }, + { + "label": "_strip_quotes()", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L87", + "_origin": "ast", + "id": "src_yt_scraper_segments_strip_quotes", + "community": 6, + "norm_label": "_strip_quotes()" + }, + { + "label": "store_segments()", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L94", + "_origin": "ast", + "id": "src_yt_scraper_segments_store_segments", + "community": 6, + "norm_label": "store_segments()" + }, + { + "label": "search()", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L98", + "_origin": "ast", + "id": "src_yt_scraper_segments_search", + "community": 6, + "norm_label": "search()" + }, + { + "label": "backfill_from_markdown()", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L102", + "_origin": "ast", + "id": "src_yt_scraper_segments_backfill_from_markdown", + "community": 6, + "norm_label": "backfill_from_markdown()" + }, + { + "label": "Path", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_segments_py_path", + "community": 6, + "norm_label": "path" + }, + { + "label": "_to_int()", + "file_type": "code", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L173", + "_origin": "ast", + "id": "src_yt_scraper_segments_to_int", + "community": 6, + "norm_label": "_to_int()" + }, + { + "label": "Parse all done .md files under md_root, populate segments/FTS/metadata. Idempote", + "file_type": "rationale", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L107", + "_origin": "ast", + "id": "src_yt_scraper_segments_rationale_107", + "community": 6, + "norm_label": "parse all done .md files under md_root, populate segments/fts/metadata. idempote" + }, + { + "label": "store.py", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_store", + "community": 3, + "norm_label": "store.py" + }, + { + "label": "VideoRef", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L96", + "_origin": "ast", + "id": "src_yt_scraper_store_videoref", + "community": 3, + "norm_label": "videoref" + }, + { + "label": "VideoRow", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L106", + "_origin": "ast", + "id": "src_yt_scraper_store_videorow", + "community": 3, + "norm_label": "videorow" + }, + { + "label": "SegmentRow", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L129", + "_origin": "ast", + "id": "src_yt_scraper_store_segmentrow", + "community": 3, + "norm_label": "segmentrow" + }, + { + "label": "SearchHit", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L138", + "_origin": "ast", + "id": "src_yt_scraper_store_searchhit", + "community": 6, + "norm_label": "searchhit" + }, + { + "label": "CookieRow", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L150", + "_origin": "ast", + "id": "src_yt_scraper_store_cookierow", + "community": 3, + "norm_label": "cookierow" + }, + { + "label": "JobRow", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L162", + "_origin": "ast", + "id": "src_yt_scraper_store_jobrow", + "community": 3, + "norm_label": "jobrow" + }, + { + "label": "Store", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L174", + "_origin": "ast", + "id": "src_yt_scraper_store_store", + "community": 3, + "norm_label": "store" + }, + { + "label": ".__init__()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L175", + "_origin": "ast", + "id": "src_yt_scraper_store_store_init", + "community": 3, + "norm_label": ".__init__()" + }, + { + "label": "Path", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_store_py_path", + "community": 3, + "norm_label": "path" + }, + { + "label": "._connect()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L180", + "_origin": "ast", + "id": "src_yt_scraper_store_store_connect", + "community": 3, + "norm_label": "._connect()" + }, + { + "label": "Connection", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "connection", + "community": 3, + "norm_label": "connection" + }, + { + "label": "._init_schema()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L187", + "_origin": "ast", + "id": "src_yt_scraper_store_store_init_schema", + "community": 3, + "norm_label": "._init_schema()" + }, + { + "label": "._cursor()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L198", + "_origin": "ast", + "id": "src_yt_scraper_store_store_cursor", + "community": 3, + "norm_label": "._cursor()" + }, + { + "label": "Cursor", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "cursor", + "community": 3, + "norm_label": "cursor" + }, + { + "label": ".upsert_channel()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L208", + "_origin": "ast", + "id": "src_yt_scraper_store_store_upsert_channel", + "community": 3, + "norm_label": ".upsert_channel()" + }, + { + "label": ".list_channels()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L222", + "_origin": "ast", + "id": "src_yt_scraper_store_store_list_channels", + "community": 3, + "norm_label": ".list_channels()" + }, + { + "label": ".get_channel()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L227", + "_origin": "ast", + "id": "src_yt_scraper_store_store_get_channel", + "community": 3, + "norm_label": ".get_channel()" + }, + { + "label": ".delete_channel()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L233", + "_origin": "ast", + "id": "src_yt_scraper_store_store_delete_channel", + "community": 3, + "norm_label": ".delete_channel()" + }, + { + "label": ".upsert_videos()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L242", + "_origin": "ast", + "id": "src_yt_scraper_store_store_upsert_videos", + "community": 3, + "norm_label": ".upsert_videos()" + }, + { + "label": ".get_pending()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L261", + "_origin": "ast", + "id": "src_yt_scraper_store_store_get_pending", + "community": 3, + "norm_label": ".get_pending()" + }, + { + "label": ".get_all()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L275", + "_origin": "ast", + "id": "src_yt_scraper_store_store_get_all", + "community": 3, + "norm_label": ".get_all()" + }, + { + "label": ".get_video()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L286", + "_origin": "ast", + "id": "src_yt_scraper_store_store_get_video", + "community": 3, + "norm_label": ".get_video()" + }, + { + "label": ".query_videos()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L292", + "_origin": "ast", + "id": "src_yt_scraper_store_store_query_videos", + "community": 3, + "norm_label": ".query_videos()" + }, + { + "label": ".update_video_metadata()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L338", + "_origin": "ast", + "id": "src_yt_scraper_store_store_update_video_metadata", + "community": 3, + "norm_label": ".update_video_metadata()" + }, + { + "label": ".mark_done()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L372", + "_origin": "ast", + "id": "src_yt_scraper_store_store_mark_done", + "community": 3, + "norm_label": ".mark_done()" + }, + { + "label": ".mark_status()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L395", + "_origin": "ast", + "id": "src_yt_scraper_store_store_mark_status", + "community": 3, + "norm_label": ".mark_status()" + }, + { + "label": ".set_upload_date()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L403", + "_origin": "ast", + "id": "src_yt_scraper_store_store_set_upload_date", + "community": 3, + "norm_label": ".set_upload_date()" + }, + { + "label": ".mark_error()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L412", + "_origin": "ast", + "id": "src_yt_scraper_store_store_mark_error", + "community": 3, + "norm_label": ".mark_error()" + }, + { + "label": ".store_segments()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L423", + "_origin": "ast", + "id": "src_yt_scraper_store_store_store_segments", + "community": 3, + "norm_label": ".store_segments()" + }, + { + "label": ".get_segments()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L447", + "_origin": "ast", + "id": "src_yt_scraper_store_store_get_segments", + "community": 3, + "norm_label": ".get_segments()" + }, + { + "label": ".has_segments()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L461", + "_origin": "ast", + "id": "src_yt_scraper_store_store_has_segments", + "community": 3, + "norm_label": ".has_segments()" + }, + { + "label": ".search_segments()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L466", + "_origin": "ast", + "id": "src_yt_scraper_store_store_search_segments", + "community": 3, + "norm_label": ".search_segments()" + }, + { + "label": ".upsert_cookie()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L495", + "_origin": "ast", + "id": "src_yt_scraper_store_store_upsert_cookie", + "community": 3, + "norm_label": ".upsert_cookie()" + }, + { + "label": ".list_cookies()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L510", + "_origin": "ast", + "id": "src_yt_scraper_store_store_list_cookies", + "community": 3, + "norm_label": ".list_cookies()" + }, + { + "label": ".get_cookie()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L515", + "_origin": "ast", + "id": "src_yt_scraper_store_store_get_cookie", + "community": 3, + "norm_label": ".get_cookie()" + }, + { + "label": ".set_active_cookie()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L521", + "_origin": "ast", + "id": "src_yt_scraper_store_store_set_active_cookie", + "community": 3, + "norm_label": ".set_active_cookie()" + }, + { + "label": ".get_active_cookie()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L527", + "_origin": "ast", + "id": "src_yt_scraper_store_store_get_active_cookie", + "community": 3, + "norm_label": ".get_active_cookie()" + }, + { + "label": ".delete_cookie()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L533", + "_origin": "ast", + "id": "src_yt_scraper_store_store_delete_cookie", + "community": 3, + "norm_label": ".delete_cookie()" + }, + { + "label": ".create_job()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L539", + "_origin": "ast", + "id": "src_yt_scraper_store_store_create_job", + "community": 3, + "norm_label": ".create_job()" + }, + { + "label": ".update_job()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L548", + "_origin": "ast", + "id": "src_yt_scraper_store_store_update_job", + "community": 3, + "norm_label": ".update_job()" + }, + { + "label": ".get_job()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L567", + "_origin": "ast", + "id": "src_yt_scraper_store_store_get_job", + "community": 3, + "norm_label": ".get_job()" + }, + { + "label": ".list_jobs()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L573", + "_origin": "ast", + "id": "src_yt_scraper_store_store_list_jobs", + "community": 3, + "norm_label": ".list_jobs()" + }, + { + "label": ".stats()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L580", + "_origin": "ast", + "id": "src_yt_scraper_store_store_stats", + "community": 3, + "norm_label": ".stats()" + }, + { + "label": ".dashboard()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L594", + "_origin": "ast", + "id": "src_yt_scraper_store_store_dashboard", + "community": 3, + "norm_label": ".dashboard()" + }, + { + "label": ".reset_errors()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L654", + "_origin": "ast", + "id": "src_yt_scraper_store_store_reset_errors", + "community": 3, + "norm_label": ".reset_errors()" + }, + { + "label": "_sanitize_fts()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L665", + "_origin": "ast", + "id": "src_yt_scraper_store_sanitize_fts", + "community": 3, + "norm_label": "_sanitize_fts()" + }, + { + "label": "_now_iso()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L678", + "_origin": "ast", + "id": "src_yt_scraper_store_now_iso", + "community": 3, + "norm_label": "_now_iso()" + }, + { + "label": "_row_to_videorow()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L682", + "_origin": "ast", + "id": "src_yt_scraper_store_row_to_videorow", + "community": 3, + "norm_label": "_row_to_videorow()" + }, + { + "label": "Row", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "row", + "community": 3, + "norm_label": "row" + }, + { + "label": "_row_to_cookierow()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L707", + "_origin": "ast", + "id": "src_yt_scraper_store_row_to_cookierow", + "community": 3, + "norm_label": "_row_to_cookierow()" + }, + { + "label": "_row_to_jobrow()", + "file_type": "code", + "source_file": "src/yt_scraper/store.py", + "source_location": "L720", + "_origin": "ast", + "id": "src_yt_scraper_store_row_to_jobrow", + "community": 3, + "norm_label": "_row_to_jobrow()" + }, + { + "label": "webapp/__init__.py", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/__init__.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_webapp_init", + "community": 13, + "norm_label": "webapp/__init__.py" + }, + { + "label": "api.py", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api", + "community": 2, + "norm_label": "api.py" + }, + { + "label": "build_router()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L18", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api_build_router", + "community": 2, + "norm_label": "build_router()" + }, + { + "label": "APIRouter", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "apirouter", + "community": 2, + "norm_label": "apirouter" + }, + { + "label": "_video_dict()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L410", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api_video_dict", + "community": 2, + "norm_label": "_video_dict()" + }, + { + "label": "_job_dict()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L428", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api_job_dict", + "community": 2, + "norm_label": "_job_dict()" + }, + { + "label": "_loads()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L436", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api_loads", + "community": 2, + "norm_label": "_loads()" + }, + { + "label": "_handle()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L445", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api_handle", + "community": 2, + "norm_label": "_handle()" + }, + { + "label": "_folder_info()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L451", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api_folder_info", + "community": 2, + "norm_label": "_folder_info()" + }, + { + "label": "Path", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api_py_path", + "community": 2, + "norm_label": "path" + }, + { + "label": "_safe_dir()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L456", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api_safe_dir", + "community": 2, + "norm_label": "_safe_dir()" + }, + { + "label": "_open_in_os()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L461", + "_origin": "ast", + "id": "src_yt_scraper_webapp_api_open_in_os", + "community": 2, + "norm_label": "_open_in_os()" + }, + { + "label": "app.py", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_webapp_app", + "community": 2, + "norm_label": "app.py" + }, + { + "label": "create_app()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L20", + "_origin": "ast", + "id": "src_yt_scraper_webapp_app_create_app", + "community": 2, + "norm_label": "create_app()" + }, + { + "label": "Path", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_webapp_app_py_path", + "community": 2, + "norm_label": "path" + }, + { + "label": "FastAPI", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "fastapi", + "community": 2, + "norm_label": "fastapi" + }, + { + "label": "_load_cfg()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L74", + "_origin": "ast", + "id": "src_yt_scraper_webapp_app_load_cfg", + "community": 2, + "norm_label": "_load_cfg()" + }, + { + "label": "jobs.py", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs", + "community": 2, + "norm_label": "jobs.py" + }, + { + "label": "JobManager", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L19", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager", + "community": 2, + "norm_label": "jobmanager" + }, + { + "label": ".__init__()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L22", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_init", + "community": 2, + "norm_label": ".__init__()" + }, + { + "label": ".start()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L32", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_start", + "community": 2, + "norm_label": ".start()" + }, + { + "label": ".enqueue()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L38", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_enqueue", + "community": 2, + "norm_label": ".enqueue()" + }, + { + "label": "Any", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_py_any", + "community": 2, + "norm_label": "any" + }, + { + "label": ".cancel()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L47", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_cancel", + "community": 2, + "norm_label": ".cancel()" + }, + { + "label": ".events_since()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L55", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_events_since", + "community": 2, + "norm_label": ".events_since()" + }, + { + "label": ".is_terminal()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L60", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_is_terminal", + "community": 2, + "norm_label": ".is_terminal()" + }, + { + "label": "._emit()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L70", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_emit", + "community": 2, + "norm_label": "._emit()" + }, + { + "label": "._worker()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L74", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_worker", + "community": 2, + "norm_label": "._worker()" + }, + { + "label": "._run_job()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L87", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_run_job", + "community": 2, + "norm_label": "._run_job()" + }, + { + "label": "._resolve_channel_for_video()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L100", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", + "community": 2, + "norm_label": "._resolve_channel_for_video()" + }, + { + "label": "._run_batch()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L110", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_run_batch", + "community": 2, + "norm_label": "._run_batch()" + }, + { + "label": "._run_audio()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L154", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_run_audio", + "community": 2, + "norm_label": "._run_audio()" + }, + { + "label": "._run_channel()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L194", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "community": 2, + "norm_label": "._run_channel()" + }, + { + "label": "_clone_config()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L265", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_clone_config", + "community": 2, + "norm_label": "_clone_config()" + }, + { + "label": "_resolve_channel_url()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L270", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_resolve_channel_url", + "community": 2, + "norm_label": "_resolve_channel_url()" + }, + { + "label": "_handle()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L282", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_handle", + "community": 2, + "norm_label": "_handle()" + }, + { + "label": "Single-worker scrape job runner with an in-memory event log per job (SSE-polled)", + "file_type": "rationale", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L20", + "_origin": "ast", + "id": "src_yt_scraper_webapp_jobs_rationale_20", + "community": 2, + "norm_label": "single-worker scrape job runner with an in-memory event log per job (sse-polled)" + }, + { + "label": "app.js", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L1", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app", + "community": 0, + "norm_label": "app.js" + }, + { + "label": "setupChartDefaults()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L9", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_setupchartdefaults", + "community": 0, + "norm_label": "setupchartdefaults()" + }, + { + "label": "init()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L77", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_init", + "community": 0, + "norm_label": "init()" + }, + { + "label": "api()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L84", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_api", + "community": 0, + "norm_label": "api()" + }, + { + "label": "checkHealth()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L96", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_checkhealth", + "community": 0, + "norm_label": "checkhealth()" + }, + { + "label": "setView()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L101", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_setview", + "community": 0, + "norm_label": "setview()" + }, + { + "label": "loadDashboard()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L117", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loaddashboard", + "community": 0, + "norm_label": "loaddashboard()" + }, + { + "label": "renderDashboardCharts()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L127", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_renderdashboardcharts", + "community": 0, + "norm_label": "renderdashboardcharts()" + }, + { + "label": "loadChannels()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L152", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadchannels", + "community": 0, + "norm_label": "loadchannels()" + }, + { + "label": "loadChannelPending()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L169", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadchannelpending", + "community": 0, + "norm_label": "loadchannelpending()" + }, + { + "label": "addChannel()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L177", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_addchannel", + "community": 0, + "norm_label": "addchannel()" + }, + { + "label": "removeChannel()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L197", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_removechannel", + "community": 0, + "norm_label": "removechannel()" + }, + { + "label": "loadVideos()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L206", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadvideos", + "community": 0, + "norm_label": "loadvideos()" + }, + { + "label": "openVideo()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L227", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_openvideo", + "community": 0, + "norm_label": "openvideo()" + }, + { + "label": "seekTranscript()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L246", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_seektranscript", + "community": 0, + "norm_label": "seektranscript()" + }, + { + "label": "toggleSelect()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L257", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_toggleselect", + "community": 0, + "norm_label": "toggleselect()" + }, + { + "label": "isSelected()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L262", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_isselected", + "community": 0, + "norm_label": "isselected()" + }, + { + "label": "selectAll()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L263", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_selectall", + "community": 0, + "norm_label": "selectall()" + }, + { + "label": "selectNone()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L266", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_selectnone", + "community": 0, + "norm_label": "selectnone()" + }, + { + "label": "allSelected()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L267", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_allselected", + "community": 0, + "norm_label": "allselected()" + }, + { + "label": "toggleSelectAll()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L271", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_toggleselectall", + "community": 0, + "norm_label": "toggleselectall()" + }, + { + "label": "downloadFile()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L277", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_downloadfile", + "community": 0, + "norm_label": "downloadfile()" + }, + { + "label": "copyText()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L287", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_copytext", + "community": 0, + "norm_label": "copytext()" + }, + { + "label": "downloadMd()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L294", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_downloadmd", + "community": 0, + "norm_label": "downloadmd()" + }, + { + "label": "processOne()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L298", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_processone", + "community": 0, + "norm_label": "processone()" + }, + { + "label": "downloadMdBatch()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L306", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_downloadmdbatch", + "community": 0, + "norm_label": "downloadmdbatch()" + }, + { + "label": "downloadThumbnails()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L317", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_downloadthumbnails", + "community": 0, + "norm_label": "downloadthumbnails()" + }, + { + "label": "downloadAudio()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L326", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_downloadaudio", + "community": 0, + "norm_label": "downloadaudio()" + }, + { + "label": "downloadThumbnailsScope()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L337", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_downloadthumbnailsscope", + "community": 0, + "norm_label": "downloadthumbnailsscope()" + }, + { + "label": "downloadAudioScope()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L353", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_downloadaudioscope", + "community": 0, + "norm_label": "downloadaudioscope()" + }, + { + "label": "openClip()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L373", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_openclip", + "community": 0, + "norm_label": "openclip()" + }, + { + "label": "closeClip()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L381", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_closeclip", + "community": 0, + "norm_label": "closeclip()" + }, + { + "label": "runClip()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L386", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_runclip", + "community": 0, + "norm_label": "runclip()" + }, + { + "label": "copyClip()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L400", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_copyclip", + "community": 0, + "norm_label": "copyclip()" + }, + { + "label": "downloadClipTxt()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L406", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_downloadcliptxt", + "community": 0, + "norm_label": "downloadcliptxt()" + }, + { + "label": "loadStats()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L419", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadstats", + "community": 0, + "norm_label": "loadstats()" + }, + { + "label": "closeStats()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L432", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_closestats", + "community": 0, + "norm_label": "closestats()" + }, + { + "label": "downloadChannelPending()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L437", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_downloadchannelpending", + "community": 0, + "norm_label": "downloadchannelpending()" + }, + { + "label": "loadSearch()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L451", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadsearch", + "community": 0, + "norm_label": "loadsearch()" + }, + { + "label": "highlight()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L465", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_highlight", + "community": 0, + "norm_label": "highlight()" + }, + { + "label": "loadAnalysis()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L478", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadanalysis", + "community": 0, + "norm_label": "loadanalysis()" + }, + { + "label": "renderTopWordsChart()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L500", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_rendertopwordschart", + "community": 0, + "norm_label": "rendertopwordschart()" + }, + { + "label": "renderTimelineChart()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L510", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_rendertimelinechart", + "community": 0, + "norm_label": "rendertimelinechart()" + }, + { + "label": "cloudStyle()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L520", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_cloudstyle", + "community": 0, + "norm_label": "cloudstyle()" + }, + { + "label": "startScrape()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L536", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_startscrape", + "community": 0, + "norm_label": "startscrape()" + }, + { + "label": "subscribeJob()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L558", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_subscribejob", + "community": 0, + "norm_label": "subscribejob()" + }, + { + "label": "closeStream()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L590", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_closestream", + "community": 0, + "norm_label": "closestream()" + }, + { + "label": "cancelScrape()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L592", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_cancelscrape", + "community": 0, + "norm_label": "cancelscrape()" + }, + { + "label": "deleteJob()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L597", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_deletejob", + "community": 0, + "norm_label": "deletejob()" + }, + { + "label": "scrapePct()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L602", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_scrapepct", + "community": 0, + "norm_label": "scrapepct()" + }, + { + "label": "loadJobs()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L608", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadjobs", + "community": 0, + "norm_label": "loadjobs()" + }, + { + "label": "loadCookies()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L618", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadcookies", + "community": 0, + "norm_label": "loadcookies()" + }, + { + "label": "handleDrop()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L625", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_handledrop", + "community": 0, + "norm_label": "handledrop()" + }, + { + "label": "handleFiles()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L631", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_handlefiles", + "community": 0, + "norm_label": "handlefiles()" + }, + { + "label": "uploadCookies()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L639", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_uploadcookies", + "community": 0, + "norm_label": "uploadcookies()" + }, + { + "label": "activateCookie()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L652", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_activatecookie", + "community": 0, + "norm_label": "activatecookie()" + }, + { + "label": "testCookie()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L657", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_testcookie", + "community": 0, + "norm_label": "testcookie()" + }, + { + "label": "testLabel()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L665", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_testlabel", + "community": 0, + "norm_label": "testlabel()" + }, + { + "label": "removeCookie()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L672", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_removecookie", + "community": 0, + "norm_label": "removecookie()" + }, + { + "label": "doExport()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L681", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_doexport", + "community": 0, + "norm_label": "doexport()" + }, + { + "label": "openChannel()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L690", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_openchannel", + "community": 0, + "norm_label": "openchannel()" + }, + { + "label": "loadFolders()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L696", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadfolders", + "community": 0, + "norm_label": "loadfolders()" + }, + { + "label": "loadFormat()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L701", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_loadformat", + "community": 0, + "norm_label": "loadformat()" + }, + { + "label": "openFolder()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L706", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_openfolder", + "community": 0, + "norm_label": "openfolder()" + }, + { + "label": "reRender()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L715", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_rerender", + "community": 0, + "norm_label": "rerender()" + }, + { + "label": "makeChart()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L728", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_makechart", + "community": 0, + "norm_label": "makechart()" + }, + { + "label": "destroyCharts()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L740", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_destroycharts", + "community": 0, + "norm_label": "destroycharts()" + }, + { + "label": "lineOpts()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L744", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_lineopts", + "community": 0, + "norm_label": "lineopts()" + }, + { + "label": "barOpts()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L747", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_baropts", + "community": 0, + "norm_label": "baropts()" + }, + { + "label": "axisOpts()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L755", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_axisopts", + "community": 0, + "norm_label": "axisopts()" + }, + { + "label": "ts()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L765", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_ts", + "community": 0, + "norm_label": "ts()" + }, + { + "label": "humanDur()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L772", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_humandur", + "community": 0, + "norm_label": "humandur()" + }, + { + "label": "fmtNum()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L780", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_fmtnum", + "community": 0, + "norm_label": "fmtnum()" + }, + { + "label": "fmtDate()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L789", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_fmtdate", + "community": 0, + "norm_label": "fmtdate()" + }, + { + "label": "fmtDateTime()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L799", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_fmtdatetime", + "community": 0, + "norm_label": "fmtdatetime()" + }, + { + "label": "fmtMonth()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L805", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_fmtmonth", + "community": 0, + "norm_label": "fmtmonth()" + }, + { + "label": "chanName()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L812", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_channame", + "community": 0, + "norm_label": "channame()" + }, + { + "label": "statusClass()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L817", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_statusclass", + "community": 0, + "norm_label": "statusclass()" + }, + { + "label": "toast()", + "file_type": "code", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L823", + "_origin": "ast", + "id": "src_yt_scraper_webapp_static_app_toast", + "community": 0, + "norm_label": "toast()" + }, + { + "label": "test_chapters.py", + "file_type": "code", + "source_file": "tests/test_chapters.py", + "source_location": "L1", + "_origin": "ast", + "id": "tests_test_chapters", + "community": 1, + "norm_label": "test_chapters.py" + }, + { + "label": "test_align_no_chapters()", + "file_type": "code", + "source_file": "tests/test_chapters.py", + "source_location": "L7", + "_origin": "ast", + "id": "tests_test_chapters_test_align_no_chapters", + "community": 1, + "norm_label": "test_align_no_chapters()" + }, + { + "label": "test_align_with_chapters()", + "file_type": "code", + "source_file": "tests/test_chapters.py", + "source_location": "L15", + "_origin": "ast", + "id": "tests_test_chapters_test_align_with_chapters", + "community": 1, + "norm_label": "test_align_with_chapters()" + }, + { + "label": "test_align_pre_chapter_segments()", + "file_type": "code", + "source_file": "tests/test_chapters.py", + "source_location": "L34", + "_origin": "ast", + "id": "tests_test_chapters_test_align_pre_chapter_segments", + "community": 1, + "norm_label": "test_align_pre_chapter_segments()" + }, + { + "label": "test_chapters_from_info()", + "file_type": "code", + "source_file": "tests/test_chapters.py", + "source_location": "L43", + "_origin": "ast", + "id": "tests_test_chapters_test_chapters_from_info", + "community": 1, + "norm_label": "test_chapters_from_info()" + }, + { + "label": "test_chapters_from_info_empty()", + "file_type": "code", + "source_file": "tests/test_chapters.py", + "source_location": "L56", + "_origin": "ast", + "id": "tests_test_chapters_test_chapters_from_info_empty", + "community": 1, + "norm_label": "test_chapters_from_info_empty()" + }, + { + "label": "test_features.py", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L1", + "_origin": "ast", + "id": "tests_test_features", + "community": 1, + "norm_label": "test_features.py" + }, + { + "label": "store()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L47", + "_origin": "ast", + "id": "tests_test_features_store", + "community": 3, + "norm_label": "store()" + }, + { + "label": "test_parse_markdown_metadata()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L55", + "_origin": "ast", + "id": "tests_test_features_test_parse_markdown_metadata", + "community": 1, + "norm_label": "test_parse_markdown_metadata()" + }, + { + "label": "test_backfill_from_markdown()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L68", + "_origin": "ast", + "id": "tests_test_features_test_backfill_from_markdown", + "community": 1, + "norm_label": "test_backfill_from_markdown()" + }, + { + "label": "test_ts_helpers()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L90", + "_origin": "ast", + "id": "tests_test_features_test_ts_helpers", + "community": 1, + "norm_label": "test_ts_helpers()" + }, + { + "label": "test_export_json_csv()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L95", + "_origin": "ast", + "id": "tests_test_features_test_export_json_csv", + "community": 1, + "norm_label": "test_export_json_csv()" + }, + { + "label": "test_export_srt()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L111", + "_origin": "ast", + "id": "tests_test_features_test_export_srt", + "community": 1, + "norm_label": "test_export_srt()" + }, + { + "label": "test_export_html()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L123", + "_origin": "ast", + "id": "tests_test_features_test_export_html", + "community": 1, + "norm_label": "test_export_html()" + }, + { + "label": "test_word_frequency()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L131", + "_origin": "ast", + "id": "tests_test_features_test_word_frequency", + "community": 1, + "norm_label": "test_word_frequency()" + }, + { + "label": "test_term_timeline()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L146", + "_origin": "ast", + "id": "tests_test_features_test_term_timeline", + "community": 1, + "norm_label": "test_term_timeline()" + }, + { + "label": "test_build_filename_stem()", + "file_type": "code", + "source_file": "tests/test_features.py", + "source_location": "L154", + "_origin": "ast", + "id": "tests_test_features_test_build_filename_stem", + "community": 1, + "norm_label": "test_build_filename_stem()" + }, + { + "label": "test_parse.py", + "file_type": "code", + "source_file": "tests/test_parse.py", + "source_location": "L1", + "_origin": "ast", + "id": "tests_test_parse", + "community": 1, + "norm_label": "test_parse.py" + }, + { + "label": "test_parse_json3_basic()", + "file_type": "code", + "source_file": "tests/test_parse.py", + "source_location": "L10", + "_origin": "ast", + "id": "tests_test_parse_test_parse_json3_basic", + "community": 1, + "norm_label": "test_parse_json3_basic()" + }, + { + "label": "test_parse_json3_skips_empty_events()", + "file_type": "code", + "source_file": "tests/test_parse.py", + "source_location": "L21", + "_origin": "ast", + "id": "tests_test_parse_test_parse_json3_skips_empty_events", + "community": 1, + "norm_label": "test_parse_json3_skips_empty_events()" + }, + { + "label": "test_parse_vtt_basic()", + "file_type": "code", + "source_file": "tests/test_parse.py", + "source_location": "L28", + "_origin": "ast", + "id": "tests_test_parse_test_parse_vtt_basic", + "community": 1, + "norm_label": "test_parse_vtt_basic()" + }, + { + "label": "test_parse_vtt_strips_tags()", + "file_type": "code", + "source_file": "tests/test_parse.py", + "source_location": "L39", + "_origin": "ast", + "id": "tests_test_parse_test_parse_vtt_strips_tags", + "community": 1, + "norm_label": "test_parse_vtt_strips_tags()" + }, + { + "label": "test_merge_adjacent()", + "file_type": "code", + "source_file": "tests/test_parse.py", + "source_location": "L45", + "_origin": "ast", + "id": "tests_test_parse_test_merge_adjacent", + "community": 1, + "norm_label": "test_merge_adjacent()" + }, + { + "label": "test_parse_json3_invalid_json()", + "file_type": "code", + "source_file": "tests/test_parse.py", + "source_location": "L57", + "_origin": "ast", + "id": "tests_test_parse_test_parse_json3_invalid_json", + "community": 1, + "norm_label": "test_parse_json3_invalid_json()" + }, + { + "label": "test_render.py", + "file_type": "code", + "source_file": "tests/test_render.py", + "source_location": "L1", + "_origin": "ast", + "id": "tests_test_render", + "community": 1, + "norm_label": "test_render.py" + }, + { + "label": "test_format_timestamp_minutes()", + "file_type": "code", + "source_file": "tests/test_render.py", + "source_location": "L12", + "_origin": "ast", + "id": "tests_test_render_test_format_timestamp_minutes", + "community": 1, + "norm_label": "test_format_timestamp_minutes()" + }, + { + "label": "test_format_timestamp_hours()", + "file_type": "code", + "source_file": "tests/test_render.py", + "source_location": "L18", + "_origin": "ast", + "id": "tests_test_render_test_format_timestamp_hours", + "community": 1, + "norm_label": "test_format_timestamp_hours()" + }, + { + "label": "test_quote_yaml_plain()", + "file_type": "code", + "source_file": "tests/test_render.py", + "source_location": "L22", + "_origin": "ast", + "id": "tests_test_render_test_quote_yaml_plain", + "community": 1, + "norm_label": "test_quote_yaml_plain()" + }, + { + "label": "test_quote_yaml_special()", + "file_type": "code", + "source_file": "tests/test_render.py", + "source_location": "L26", + "_origin": "ast", + "id": "tests_test_render_test_quote_yaml_special", + "community": 1, + "norm_label": "test_quote_yaml_special()" + }, + { + "label": "test_quote_yaml_none()", + "file_type": "code", + "source_file": "tests/test_render.py", + "source_location": "L33", + "_origin": "ast", + "id": "tests_test_render_test_quote_yaml_none", + "community": 1, + "norm_label": "test_quote_yaml_none()" + }, + { + "label": "test_build_filename_stem()", + "file_type": "code", + "source_file": "tests/test_render.py", + "source_location": "L37", + "_origin": "ast", + "id": "tests_test_render_test_build_filename_stem", + "community": 1, + "norm_label": "test_build_filename_stem()" + }, + { + "label": "test_build_filename_stem_no_date()", + "file_type": "code", + "source_file": "tests/test_render.py", + "source_location": "L43", + "_origin": "ast", + "id": "tests_test_render_test_build_filename_stem_no_date", + "community": 1, + "norm_label": "test_build_filename_stem_no_date()" + }, + { + "label": "test_render_markdown()", + "file_type": "code", + "source_file": "tests/test_render.py", + "source_location": "L49", + "_origin": "ast", + "id": "tests_test_render_test_render_markdown", + "community": 1, + "norm_label": "test_render_markdown()" + }, + { + "label": "test_store_platform.py", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L1", + "_origin": "ast", + "id": "tests_test_store_platform", + "community": 7, + "norm_label": "test_store_platform.py" + }, + { + "label": "store()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L13", + "_origin": "ast", + "id": "tests_test_store_platform_store", + "community": 7, + "norm_label": "store()" + }, + { + "label": "seeded_store()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L18", + "_origin": "ast", + "id": "tests_test_store_platform_seeded_store", + "community": 3, + "norm_label": "seeded_store()" + }, + { + "label": "test_migration_idempotent()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L30", + "_origin": "ast", + "id": "tests_test_store_platform_test_migration_idempotent", + "community": 7, + "norm_label": "test_migration_idempotent()" + }, + { + "label": "test_store_and_search_segments()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L47", + "_origin": "ast", + "id": "tests_test_store_platform_test_store_and_search_segments", + "community": 7, + "norm_label": "test_store_and_search_segments()" + }, + { + "label": "test_store_segments_overwrites()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L72", + "_origin": "ast", + "id": "tests_test_store_platform_test_store_segments_overwrites", + "community": 7, + "norm_label": "test_store_segments_overwrites()" + }, + { + "label": "test_update_video_metadata()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L81", + "_origin": "ast", + "id": "tests_test_store_platform_test_update_video_metadata", + "community": 7, + "norm_label": "test_update_video_metadata()" + }, + { + "label": "test_query_videos_filters()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L91", + "_origin": "ast", + "id": "tests_test_store_platform_test_query_videos_filters", + "community": 7, + "norm_label": "test_query_videos_filters()" + }, + { + "label": "test_cookie_vault()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L103", + "_origin": "ast", + "id": "tests_test_store_platform_test_cookie_vault", + "community": 7, + "norm_label": "test_cookie_vault()" + }, + { + "label": "test_cookie_invalid_rejected()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L125", + "_origin": "ast", + "id": "tests_test_store_platform_test_cookie_invalid_rejected", + "community": 7, + "norm_label": "test_cookie_invalid_rejected()" + }, + { + "label": "test_cookie_only_one_active()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L131", + "_origin": "ast", + "id": "tests_test_store_platform_test_cookie_only_one_active", + "community": 7, + "norm_label": "test_cookie_only_one_active()" + }, + { + "label": "test_jobs_crud()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L144", + "_origin": "ast", + "id": "tests_test_store_platform_test_jobs_crud", + "community": 7, + "norm_label": "test_jobs_crud()" + }, + { + "label": "test_dashboard_aggregates()", + "file_type": "code", + "source_file": "tests/test_store_platform.py", + "source_location": "L158", + "_origin": "ast", + "id": "tests_test_store_platform_test_dashboard_aggregates", + "community": 7, + "norm_label": "test_dashboard_aggregates()" + }, + { + "label": "webapp-builder agent definition", + "file_type": "document", + "source_file": ".opencode/agent/webapp-builder.md", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "opencode_agent_webapp_builder", + "community": 5, + "norm_label": "webapp-builder agent definition" + }, + { + "label": "Sub-goal: Build the local webapp (Workstream B)", + "file_type": "document", + "source_file": ".opencode/goals/webapp-build.md", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "opencode_goals_webapp_build", + "community": 5, + "norm_label": "sub-goal: build the local webapp (workstream b)" + }, + { + "label": "OPPORTUNITIES.md - extension audit", + "file_type": "document", + "source_file": "OPPORTUNITIES.md", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "opportunities", + "community": 5, + "norm_label": "opportunities.md - extension audit" + }, + { + "label": "yt-channel-scraper README", + "file_type": "document", + "source_file": "README.md", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "readme", + "community": 9, + "norm_label": "yt-channel-scraper readme" + }, + { + "label": "config.example.yaml", + "file_type": "document", + "source_file": "config.example.yaml", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "config_example", + "community": 9, + "norm_label": "config.example.yaml" + }, + { + "label": "Platform Implementation Plan", + "file_type": "document", + "source_file": "docs/superpowers/plans/2026-07-26-platform-build.md", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "docs_superpowers_plans_2026_07_26_platform_build", + "community": 5, + "norm_label": "platform implementation plan" + }, + { + "label": "Platform Design Spec", + "file_type": "document", + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "docs_superpowers_specs_2026_07_26_platform_design", + "community": 5, + "norm_label": "platform design spec" + }, + { + "label": "SPA shell (index.html)", + "file_type": "document", + "source_file": "src/yt_scraper/webapp/static/index.html", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "src_yt_scraper_webapp_static_index", + "community": 5, + "norm_label": "spa shell (index.html)" + }, + { + "label": "Architecture: Monorepo in-package webapp (Approach A)", + "file_type": "rationale", + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a73", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "rationale": "FastAPI app lives inside src/yt_scraper/webapp/ and reuses Store + pipeline modules directly; one process serves SPA, JSON API, and SSE. Rejected: separate top-level package (doubles plumbing), separate processes sharing only DB (duplicates query logic, breaks the one-platform feel).", + "id": "docs_superpowers_specs_2026_07_26_platform_design_monorepo_architecture", + "community": 5, + "norm_label": "architecture: monorepo in-package webapp (approach a)" + }, + { + "label": "Scope rule: No AI features", + "file_type": "rationale", + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a71, \u00a714", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "rationale": "Data-mining + content focus only. Explicitly excluded: LLM summaries, Q&A/RAG, NER (spaCy), speaker diarization (pyannote). CLI stats/clip/thumbnails/translation also dropped; aggregate queries still exist internally to feed the dashboard.", + "id": "docs_superpowers_specs_2026_07_26_platform_design_no_ai_scope", + "community": 5, + "norm_label": "scope rule: no ai features" + }, + { + "label": "Design language: dark data command center", + "file_type": "concept", + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a77.2", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "rationale": "Near-black canvas (zinc-950), glassy cards (backdrop-blur), red->rose accent gradient as a creator-content nod, monospace data accents, smooth Alpine x-transitions. Charts via Chart.js with theme-matched grid/text colors.", + "id": "docs_superpowers_specs_2026_07_26_platform_design_dark_command_center", + "community": 5, + "norm_label": "design language: dark data command center" + }, + { + "label": "transcript_segments + FTS5 external-content table", + "file_type": "concept", + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a75.2", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "rationale": "FTS5 external-content table over transcript_segments(text). Manual populate_fts (delete+insert) after store_segments rather than triggers - simpler and idempotent. Queries via MATCH + join. Populated during scrape AND by one-time backfill from .md.", + "id": "docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5", + "community": 5, + "norm_label": "transcript_segments + fts5 external-content table" + }, + { + "label": "Single-threaded scrape job runner + SSE event bus", + "file_type": "concept", + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a77.1 (jobs.py)", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "rationale": "queue.Queue worker runs scrape jobs sequentially to avoid concurrent yt-dlp hammering. Emits SSE events (progress, log, done, error). Persisted in scrape_jobs table. Active cookie from vault is auto-passed as cookies_file to every job.", + "id": "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner", + "community": 5, + "norm_label": "single-threaded scrape job runner + sse event bus" + }, + { + "label": "Cookie drag-and-drop vault UX", + "file_type": "concept", + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a78", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "rationale": "Drop zone accepts multiple .txt files or pasted Netscape text. parse_netscape validates, extracts earliest expiry, detects session cookies (SID, SAPISID, __Secure-3PSID, LOGIN_INFO). Exactly one cookie active globally; path passed to yt-dlp as cookiefile.", + "id": "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux", + "community": 5, + "norm_label": "cookie drag-and-drop vault ux" + }, + { + "label": "cli.py cookies scope bug fix", + "file_type": "rationale", + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a72, \u00a76.2 (cli.py:228-229)", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "rationale": "_process_one() references cookies/cookies_from_browser local to main() - out of scope. Fix: thread both through _process_one signature; when neither flag given, fall back to active vault cookie via cookies.resolve_active_path() so the webapp selection also works for CLI.", + "id": "docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix", + "community": 5, + "norm_label": "cli.py cookies scope bug fix" + }, + { + "label": "Store API surface (data layer the webapp reuses)", + "file_type": "concept", + "source_file": ".opencode/agent/webapp-builder.md", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "rationale": "Agent must REUSE not duplicate: Store(db_path), cookies.py, segments.py, analysis.py, export.py, pipeline.process_video, config.Config. Active cookie (cookies.resolve_active_path) MUST be passed as cookies_file to every scrape job.", + "id": "opencode_agent_webapp_builder_store_data_layer", + "community": 5, + "norm_label": "store api surface (data layer the webapp reuses)" + }, + { + "label": "yt-dlp InnerTube mechanism (ANDROID/IOS/WEB clients)", + "file_type": "concept", + "source_file": "README.md", + "source_location": null, + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "readme_yt_dlp_innertube", + "community": 9, + "norm_label": "yt-dlp innertube mechanism (android/ios/web clients)" + }, + { + "label": "Feature proposal: search (FTS5 transcript search)", + "file_type": "concept", + "source_file": "OPPORTUNITIES.md", + "source_location": "Tier 1 #1", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "opportunities_search_fts5", + "community": 5, + "norm_label": "feature proposal: search (fts5 transcript search)" + }, + { + "label": "Feature proposal: LLM summaries per video", + "file_type": "concept", + "source_file": "OPPORTUNITIES.md", + "source_location": "Tier 3 #12", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "opportunities_llm_summaries", + "community": 5, + "norm_label": "feature proposal: llm summaries per video" + }, + { + "label": "Feature proposal: Q&A / RAG over channel", + "file_type": "concept", + "source_file": "OPPORTUNITIES.md", + "source_location": "Tier 3 #13", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "opportunities_rag_qa", + "community": 5, + "norm_label": "feature proposal: q&a / rag over channel" + }, + { + "label": "Feature proposal: multi-format export (json/csv/srt/html)", + "file_type": "concept", + "source_file": "OPPORTUNITIES.md", + "source_location": "Tier 1 #3", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "opportunities_export_formats", + "community": 5, + "norm_label": "feature proposal: multi-format export (json/csv/srt/html)" + }, + { + "label": "Feature proposal: content analysis (wordcloud/top-words/timeline)", + "file_type": "concept", + "source_file": "OPPORTUNITIES.md", + "source_location": "Tier 2 #9", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "opportunities_analysis_wordcloud", + "community": 5, + "norm_label": "feature proposal: content analysis (wordcloud/top-words/timeline)" + }, + { + "label": "Feature proposal: watch mode (periodic discovery)", + "file_type": "concept", + "source_file": "OPPORTUNITIES.md", + "source_location": "Tier 2 #8", + "source_url": null, + "captured_at": null, + "author": null, + "contributor": null, + "id": "opportunities_watch_mode", + "community": 5, + "norm_label": "feature proposal: watch mode (periodic discovery)" + } + ], + "links": [ + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "scripts/start-server.ps1", + "source_location": "L6", + "weight": 1.0, + "_origin": "ast", + "source": "scripts_start_server", + "target": "scripts_start_server_open_browser", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_init", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L36", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_analysis_iter_texts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L143", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_analysis_render_timeline_chart", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L119", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_analysis_render_top_words_chart", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L98", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_analysis_render_wordcloud", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L70", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_analysis_term_timeline", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L51", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_analysis_tokenize", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L66", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_analysis_top_words", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L58", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_analysis_word_frequency", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "submodule_import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L365", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_analysis", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "submodule_import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_analysis", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L36", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_iter_texts", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L60", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_word_frequency", + "target": "src_yt_scraper_analysis_iter_texts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L61", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_word_frequency", + "target": "src_yt_scraper_analysis_tokenize", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L67", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_top_words", + "target": "src_yt_scraper_analysis_word_frequency", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L58", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_word_frequency", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L66", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_top_words", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L71", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_rationale_71", + "target": "src_yt_scraper_analysis_term_timeline", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L70", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_term_timeline", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L98", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_render_wordcloud", + "target": "src_yt_scraper_analysis_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L143", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_render_timeline_chart", + "target": "src_yt_scraper_analysis_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/analysis.py", + "source_location": "L119", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_analysis_render_top_words_chart", + "target": "src_yt_scraper_analysis_py_path", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters", + "target": "src_yt_scraper_chapters_align_chapters", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters", + "target": "src_yt_scraper_chapters_chapter", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L39", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters", + "target": "src_yt_scraper_chapters_chapters_from_info", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L16", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters", + "target": "src_yt_scraper_chapters_section", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L5", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters", + "target": "src_yt_scraper_parse", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L5", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L17", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_chapters", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_chapters", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render", + "target": "src_yt_scraper_chapters", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_chapters.py", + "source_location": "L3", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters", + "target": "src_yt_scraper_chapters", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L6", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "src_yt_scraper_chapters", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters_align_chapters", + "target": "src_yt_scraper_chapters_chapter", + "confidence_score": 1.0 + }, + { + "relation": "uses", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L5", + "weight": 0.8, + "_origin": "ast", + "source": "src_yt_scraper_chapters_chapter", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 0.5 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L39", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters_chapters_from_info", + "target": "src_yt_scraper_chapters_chapter", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L17", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_chapters_chapter", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L427", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_re_render_cmd", + "target": "src_yt_scraper_chapters_chapter" + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L172", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_chapters_chapter", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L182", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_re_render_videos", + "target": "src_yt_scraper_chapters_chapter", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L36", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_align_pre_chapter_segments", + "target": "src_yt_scraper_chapters_chapter" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_align_with_chapters", + "target": "src_yt_scraper_chapters_chapter" + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters_align_chapters", + "target": "src_yt_scraper_chapters_section", + "confidence_score": 1.0 + }, + { + "relation": "uses", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L5", + "weight": 0.8, + "_origin": "ast", + "source": "src_yt_scraper_chapters_section", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 0.5 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L17", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_chapters_section", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render", + "target": "src_yt_scraper_chapters_section", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L58", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_render_markdown", + "target": "src_yt_scraper_chapters_section" + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/chapters.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_chapters_align_chapters", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L17", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_chapters_align_chapters", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L428", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_re_render_cmd", + "target": "src_yt_scraper_chapters_align_chapters" + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_chapters_align_chapters", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L57", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_chapters_align_chapters", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L185", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_re_render_videos", + "target": "src_yt_scraper_chapters_align_chapters", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_align_no_chapters", + "target": "src_yt_scraper_chapters_align_chapters" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L37", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_align_pre_chapter_segments", + "target": "src_yt_scraper_chapters_align_chapters" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L25", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_align_with_chapters", + "target": "src_yt_scraper_chapters_align_chapters" + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L17", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_chapters_chapters_from_info", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_chapters_chapters_from_info", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L56", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_chapters_chapters_from_info", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L50", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_chapters_from_info", + "target": "src_yt_scraper_chapters_chapters_from_info" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L57", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_chapters_from_info_empty", + "target": "src_yt_scraper_chapters_chapters_from_info" + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L363", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_analyze_cmd", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L72", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_apply_filters", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L248", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_audio_cmd", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L446", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_channel_targets", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L312", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_channels_add", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L291", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_channels_grp", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L297", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_channels_list", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L325", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_channels_remove", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L47", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_cli", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L219", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_export_cmd", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L475", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_extract_handle", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L481", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_fmt_date", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L489", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_fmt_duration", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L537", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_main", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L524", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_parse_interval", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L514", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_parse_tags", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L176", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_print_dry_run", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L458", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_print_stats", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L408", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_re_render_cmd", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L104", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_run_scrape", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L504", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_safe_dirname", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L509", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_safe_filename", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L99", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_scrape", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L195", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_search_cmd", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L497", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_seconds_to_ts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L28", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_setup_logging", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L470", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_title_for", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L345", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cli_watch_cmd", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_config", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_config_load_config", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cookies", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cookies_auto_import_dir", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_cookies_resolve_active_path", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L16", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_discover", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L16", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_discover_discover_channel", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "submodule_import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L221", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_export", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L347", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_monitor_watch_loop", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_parse", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L21", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_pipeline", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L21", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_pipeline_process_video", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L20", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_ratelimit", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L20", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_ratelimit_polite_sleep", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L19", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_render", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L19", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_render_build_filename_stem", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L19", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_render_render_markdown", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L412", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_segments_backfill_from_markdown", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L15", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L15", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L15", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_store_videoref", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L15", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L49", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_cli", + "target": "src_yt_scraper_cli_setup_logging", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L65", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_cli", + "target": "src_yt_scraper_cli_run_scrape", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L51", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_cli", + "target": "src_yt_scraper_config_config" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L51", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_cli", + "target": "src_yt_scraper_config_load_config" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L57", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_cli", + "target": "src_yt_scraper_cookies_auto_import_dir" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L54", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_cli", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L538", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_main", + "target": "src_yt_scraper_cli_cli", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L48", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_rationale_48", + "target": "src_yt_scraper_cli_cli", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L135", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_run_scrape", + "target": "src_yt_scraper_cli_apply_filters", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L100", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_rationale_100", + "target": "src_yt_scraper_cli_scrape", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L101", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_scrape", + "target": "src_yt_scraper_cli_run_scrape", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L132", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_run_scrape", + "target": "src_yt_scraper_cli_extract_handle", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L144", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_run_scrape", + "target": "src_yt_scraper_cli_print_dry_run", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L154", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_run_scrape", + "target": "src_yt_scraper_cli_print_stats", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L158", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_run_scrape", + "target": "src_yt_scraper_cookies_resolve_active_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L126", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_run_scrape", + "target": "src_yt_scraper_discover_discover_channel", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L167", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_run_scrape", + "target": "src_yt_scraper_pipeline_process_video", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L171", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_run_scrape", + "target": "src_yt_scraper_ratelimit_polite_sleep", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L183", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_print_dry_run", + "target": "src_yt_scraper_cli_fmt_date", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L183", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_print_dry_run", + "target": "src_yt_scraper_cli_fmt_duration", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L196", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_rationale_196", + "target": "src_yt_scraper_cli_search_cmd", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L198", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_search_cmd", + "target": "src_yt_scraper_cli_channel_targets", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L209", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_search_cmd", + "target": "src_yt_scraper_cli_seconds_to_ts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L208", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_search_cmd", + "target": "src_yt_scraper_cli_title_for", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L223", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_export_cmd", + "target": "src_yt_scraper_cli_channel_targets", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L220", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_rationale_220", + "target": "src_yt_scraper_cli_export_cmd", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L259", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_audio_cmd", + "target": "src_yt_scraper_cli_channel_targets", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L278", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_audio_cmd", + "target": "src_yt_scraper_cli_safe_filename", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L255", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_audio_cmd", + "target": "src_yt_scraper_cookies_resolve_active_path" + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L249", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_rationale_249", + "target": "src_yt_scraper_cli_audio_cmd", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L317", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_channels_add", + "target": "src_yt_scraper_cli_extract_handle", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L316", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_channels_add", + "target": "src_yt_scraper_discover_discover_channel" + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L346", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_rationale_346", + "target": "src_yt_scraper_cli_watch_cmd", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L348", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_watch_cmd", + "target": "src_yt_scraper_cli_parse_interval", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L350", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_watch_cmd", + "target": "src_yt_scraper_monitor_watch_loop" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L369", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_analyze_cmd", + "target": "src_yt_scraper_cli_channel_targets", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L364", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_rationale_364", + "target": "src_yt_scraper_cli_analyze_cmd", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L409", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_rationale_409", + "target": "src_yt_scraper_cli_re_render_cmd", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L417", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_re_render_cmd", + "target": "src_yt_scraper_cli_channel_targets", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L434", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_re_render_cmd", + "target": "src_yt_scraper_cli_parse_tags", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L439", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_re_render_cmd", + "target": "src_yt_scraper_cli_safe_dirname", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L426", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_re_render_cmd", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L437", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_re_render_cmd", + "target": "src_yt_scraper_render_build_filename_stem" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L440", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_re_render_cmd", + "target": "src_yt_scraper_render_render_markdown" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/cli.py", + "source_location": "L415", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_re_render_cmd", + "target": "src_yt_scraper_segments_backfill_from_markdown" + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L458", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_print_stats", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cli.py", + "source_location": "L470", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cli_title_for", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L61", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config", + "target": "src_yt_scraper_config_build_config", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L25", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config", + "target": "src_yt_scraper_config_delayconfig", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L52", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config", + "target": "src_yt_scraper_config_load_config", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L19", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config", + "target": "src_yt_scraper_config_ytdlpconfig", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L7", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_config", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_config", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_config", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_config", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_config", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L71", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_build_config", + "target": "src_yt_scraper_config_delayconfig", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L77", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_build_config", + "target": "src_yt_scraper_config_ytdlpconfig", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L61", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_build_config", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L40", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_config", + "target": "src_yt_scraper_config_config_database_path_resolved", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L44", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_config", + "target": "src_yt_scraper_config_config_output_dir_resolved", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L48", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_config", + "target": "src_yt_scraper_config_config_template_path_resolved", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L52", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_load_config", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L7", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L55", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_run_once", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_watch_loop", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L169", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_re_render_videos", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_build_router", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L20", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_create_app", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_load_cfg", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L265", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_clone_config", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_init", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L270", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_resolve_channel_url", + "target": "src_yt_scraper_config_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L40", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_config_database_path_resolved", + "target": "src_yt_scraper_config_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L44", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_config_output_dir_resolved", + "target": "src_yt_scraper_config_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L48", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_config_template_path_resolved", + "target": "src_yt_scraper_config_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L52", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_load_config", + "target": "src_yt_scraper_config_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L58", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_load_config", + "target": "src_yt_scraper_config_build_config", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_config_load_config", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L78", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_load_cfg", + "target": "src_yt_scraper_config_load_config", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_config_load_config", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/config.py", + "source_location": "L61", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_config_build_config", + "target": "src_yt_scraper_config_py_any", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L99", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_auto_import_dir", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_cookies_dir", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L137", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_delete", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_import_file", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L80", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_import_text", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L154", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_is_expired", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L133", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_list_vault", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L24", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_parse_netscape", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L62", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_parse_netscape_file", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L145", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_resolve_active_path", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L129", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_cookies_set_active", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_store_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_cookies", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "submodule_import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_cookies", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_cookies", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_cookies", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L101", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_auto_import_dir", + "target": "src_yt_scraper_cookies_cookies_dir", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_cookies_dir", + "target": "src_yt_scraper_cookies_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L141", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_delete", + "target": "src_yt_scraper_cookies_cookies_dir", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L85", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_import_text", + "target": "src_yt_scraper_cookies_cookies_dir", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L149", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_resolve_active_path", + "target": "src_yt_scraper_cookies_cookies_dir", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L99", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_auto_import_dir", + "target": "src_yt_scraper_cookies_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L137", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_delete", + "target": "src_yt_scraper_cookies_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_import_file", + "target": "src_yt_scraper_cookies_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L80", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_import_text", + "target": "src_yt_scraper_cookies_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L62", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_parse_netscape_file", + "target": "src_yt_scraper_cookies_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L145", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_resolve_active_path", + "target": "src_yt_scraper_cookies_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L81", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_import_text", + "target": "src_yt_scraper_cookies_parse_netscape", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L71", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_parse_netscape_file", + "target": "src_yt_scraper_cookies_parse_netscape", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L25", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_rationale_25", + "target": "src_yt_scraper_cookies_parse_netscape", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L107", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_auto_import_dir", + "target": "src_yt_scraper_cookies_parse_netscape_file", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L77", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_import_file", + "target": "src_yt_scraper_cookies_import_text", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_import_file", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L80", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_import_text", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L99", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_auto_import_dir", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L100", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_rationale_100", + "target": "src_yt_scraper_cookies_auto_import_dir", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_cookies_auto_import_dir", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L28", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_create_app", + "target": "src_yt_scraper_cookies_auto_import_dir", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L129", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_set_active", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L133", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_list_vault", + "target": "src_yt_scraper_store_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L133", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_list_vault", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L137", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_delete", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L145", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_resolve_active_path", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_cookies_resolve_active_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L84", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_run_once", + "target": "src_yt_scraper_cookies_resolve_active_path", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_cookies_resolve_active_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L158", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_audio", + "target": "src_yt_scraper_cookies_resolve_active_path" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L113", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_batch", + "target": "src_yt_scraper_cookies_resolve_active_path" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L243", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "target": "src_yt_scraper_cookies_resolve_active_path" + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/cookies.py", + "source_location": "L154", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_cookies_is_expired", + "target": "src_yt_scraper_store_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_discover", + "target": "src_yt_scraper_discover_discover_channel", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L57", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_discover", + "target": "src_yt_scraper_discover_flatten_entries", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_discover", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_discover", + "target": "src_yt_scraper_store_videoref", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_discover", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_discover", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L30", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_discover_discover_channel", + "target": "src_yt_scraper_discover_flatten_entries", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_discover_discover_channel", + "target": "src_yt_scraper_store_videoref", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_discover_rationale_14", + "target": "src_yt_scraper_discover_discover_channel", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_discover_discover_channel", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L68", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_run_once", + "target": "src_yt_scraper_discover_discover_channel", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L33", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_discover_discover_channel", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L37", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_build_router", + "target": "src_yt_scraper_discover_discover_channel", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_discover_discover_channel", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L210", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "target": "src_yt_scraper_discover_discover_channel" + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/discover.py", + "source_location": "L57", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_discover_flatten_entries", + "target": "src_yt_scraper_discover_py_any", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L24", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_export_export_csv", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L66", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_export_export_html", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_export_export_json", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L52", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_export_export_srt", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L42", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_export_export_srt_video", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L105", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_export_segments_to_srt", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L113", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_export_srt_ts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L79", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_export_video_to_dict", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_store_segmentrow", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "submodule_import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_export", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_json", + "target": "src_yt_scraper_export_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_json", + "target": "src_yt_scraper_export_video_to_dict", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_json", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L24", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_csv", + "target": "src_yt_scraper_export_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L66", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_html", + "target": "src_yt_scraper_export_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L52", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_srt", + "target": "src_yt_scraper_export_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L42", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_srt_video", + "target": "src_yt_scraper_export_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L37", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_csv", + "target": "src_yt_scraper_export_video_to_dict", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L24", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_csv", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L60", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_srt", + "target": "src_yt_scraper_export_export_srt_video", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L48", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_srt_video", + "target": "src_yt_scraper_export_segments_to_srt", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L42", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_srt_video", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L52", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_srt", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "src/yt_scraper/export.py", + "source_location": "L70", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_html", + "target": "environment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L72", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_html", + "target": "src_yt_scraper_export_video_to_dict", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L66", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_export_html", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L79", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_video_to_dict", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L79", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_video_to_dict", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L109", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_segments_to_srt", + "target": "src_yt_scraper_export_srt_ts", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/export.py", + "source_location": "L105", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_export_segments_to_srt", + "target": "src_yt_scraper_store_segmentrow", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L118", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_extract_download_subtitle", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L31", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_extract_extract_video", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L113", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_extract_normalize_lang", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L101", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_extract_pick_best_format", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L72", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_extract_pick_subtitle", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L16", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_extract_subtitlepick", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L24", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_extract_videodata", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_parse", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_parse_parse_auto_dump", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_extract", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L72", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract_pick_subtitle", + "target": "src_yt_scraper_extract_subtitlepick", + "confidence_score": 1.0 + }, + { + "relation": "uses", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L10", + "weight": 0.8, + "_origin": "ast", + "source": "src_yt_scraper_extract_subtitlepick", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 0.5 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L31", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract_extract_video", + "target": "src_yt_scraper_extract_videodata", + "confidence_score": 1.0 + }, + { + "relation": "uses", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L10", + "weight": 0.8, + "_origin": "ast", + "source": "src_yt_scraper_extract_videodata", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 0.5 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L62", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract_extract_video", + "target": "src_yt_scraper_extract_download_subtitle", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L59", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract_extract_video", + "target": "src_yt_scraper_extract_pick_subtitle", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L64", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract_extract_video", + "target": "src_yt_scraper_parse_parse_auto_dump", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_extract_extract_video", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L37", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_extract_extract_video", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L84", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract_pick_subtitle", + "target": "src_yt_scraper_extract_normalize_lang", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L90", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract_pick_subtitle", + "target": "src_yt_scraper_extract_pick_best_format", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L72", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract_pick_subtitle", + "target": "src_yt_scraper_extract_py_any", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/extract.py", + "source_location": "L101", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_extract_pick_best_format", + "target": "src_yt_scraper_extract_py_any", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L99", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_monitor_extract_handle", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L55", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_monitor_run_once", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_monitor_watch_loop", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_pipeline", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_pipeline_process_video", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_ratelimit", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_ratelimit_polite_sleep", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L28", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_rationale_28", + "target": "src_yt_scraper_monitor_watch_loop", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L44", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_watch_loop", + "target": "src_yt_scraper_monitor_run_once", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_watch_loop", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L37", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_watch_loop", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L72", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_run_once", + "target": "src_yt_scraper_monitor_extract_handle", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L90", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_run_once", + "target": "src_yt_scraper_pipeline_process_video", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L96", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_run_once", + "target": "src_yt_scraper_ratelimit_polite_sleep", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L55", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_run_once", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "src/yt_scraper/monitor.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_monitor_run_once", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit" + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse", + "target": "src_yt_scraper_parse_merge_adjacent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L88", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse", + "target": "src_yt_scraper_parse_parse_auto_dump", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L21", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse", + "target": "src_yt_scraper_parse_parse_json3", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L51", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse", + "target": "src_yt_scraper_parse_parse_vtt", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L94", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse", + "target": "src_yt_scraper_parse_vtt_ts_to_seconds", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_parse", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_chapters.py", + "source_location": "L4", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters", + "target": "src_yt_scraper_parse", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "src_yt_scraper_parse", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_parse.py", + "source_location": "L5", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse", + "target": "src_yt_scraper_parse", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L7", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "src_yt_scraper_parse", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "src_yt_scraper_parse", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse_merge_adjacent", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L88", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse_parse_auto_dump", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L21", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse_parse_json3", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L51", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse_parse_vtt", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L173", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L180", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_re_render_videos", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L82", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_parse_markdown", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "uses", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L10", + "weight": 0.8, + "_origin": "ast", + "source": "src_yt_scraper_segments_parsedmarkdown", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 0.5 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L94", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_store_segments", + "target": "src_yt_scraper_parse_segment", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_align_no_chapters", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L35", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_align_pre_chapter_segments", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_chapters.py", + "source_location": "L17", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters_test_align_with_chapters", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_features.py", + "source_location": "L96", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features_test_export_json_csv", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_features.py", + "source_location": "L112", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features_test_export_srt", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_features.py", + "source_location": "L147", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features_test_term_timeline", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_features.py", + "source_location": "L133", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features_test_word_frequency", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_parse.py", + "source_location": "L47", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse_test_merge_adjacent", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L61", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_render_markdown", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_store_platform.py", + "source_location": "L160", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform_test_dashboard_aggregates", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_store_platform.py", + "source_location": "L50", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform_test_store_and_search_segments", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_store_platform.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform_test_store_segments_overwrites", + "target": "src_yt_scraper_parse_segment" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L90", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse_parse_auto_dump", + "target": "src_yt_scraper_parse_parse_json3", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L48", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse_parse_json3", + "target": "src_yt_scraper_parse_merge_adjacent", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_parse.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse_test_parse_json3_basic", + "target": "src_yt_scraper_parse_parse_json3" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_parse.py", + "source_location": "L58", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse_test_parse_json3_invalid_json", + "target": "src_yt_scraper_parse_parse_json3" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_parse.py", + "source_location": "L23", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse_test_parse_json3_skips_empty_events", + "target": "src_yt_scraper_parse_parse_json3" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L91", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse_parse_auto_dump", + "target": "src_yt_scraper_parse_parse_vtt", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L71", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse_parse_vtt", + "target": "src_yt_scraper_parse_merge_adjacent", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/parse.py", + "source_location": "L59", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_parse_parse_vtt", + "target": "src_yt_scraper_parse_vtt_ts_to_seconds", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_parse.py", + "source_location": "L30", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse_test_parse_vtt_basic", + "target": "src_yt_scraper_parse_parse_vtt" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_parse.py", + "source_location": "L41", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse_test_parse_vtt_strips_tags", + "target": "src_yt_scraper_parse_parse_vtt" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_parse.py", + "source_location": "L51", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse_test_merge_adjacent", + "target": "src_yt_scraper_parse_merge_adjacent" + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L151", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_pipeline_cache_thumbnail", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L130", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_pipeline_normalize_date", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_pipeline_process_video", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L169", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_pipeline_re_render_videos", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L138", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_pipeline_safe_dirname", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L143", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_pipeline_thumbnail_url_for", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_render", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_render_build_filename_stem", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_render_render_markdown", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_pipeline", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L93", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_pipeline_normalize_date", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L111", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_pipeline_safe_dirname", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L106", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_render_build_filename_stem", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L112", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_render_render_markdown", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L126", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_process_video", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit" + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L29", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_rationale_29", + "target": "src_yt_scraper_pipeline_process_video", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_pipeline_process_video", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L250", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "target": "src_yt_scraper_pipeline_process_video" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L202", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_re_render_videos", + "target": "src_yt_scraper_pipeline_safe_dirname", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L158", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_cache_thumbnail", + "target": "src_yt_scraper_pipeline_thumbnail_url_for", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L144", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_rationale_144", + "target": "src_yt_scraper_pipeline_thumbnail_url_for", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L351", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_pipeline_thumbnail_url_for", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L356", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_build_router", + "target": "src_yt_scraper_pipeline_thumbnail_url_for", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L152", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_rationale_152", + "target": "src_yt_scraper_pipeline_cache_thumbnail", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L335", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_pipeline_cache_thumbnail", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L344", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_build_router", + "target": "src_yt_scraper_pipeline_cache_thumbnail", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L111", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_pipeline_cache_thumbnail", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L137", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_batch", + "target": "src_yt_scraper_pipeline_cache_thumbnail" + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L170", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_rationale_170", + "target": "src_yt_scraper_pipeline_re_render_videos", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L201", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_re_render_videos", + "target": "src_yt_scraper_render_build_filename_stem", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L203", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_re_render_videos", + "target": "src_yt_scraper_render_render_markdown", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/pipeline.py", + "source_location": "L169", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_pipeline_re_render_videos", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L282", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_pipeline_re_render_videos", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L287", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_build_router", + "target": "src_yt_scraper_pipeline_re_render_videos", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/ratelimit.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_ratelimit", + "target": "src_yt_scraper_ratelimit_backoff_sleep", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/ratelimit.py", + "source_location": "L7", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_ratelimit", + "target": "src_yt_scraper_ratelimit_polite_sleep", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L15", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_ratelimit", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L15", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_ratelimit_polite_sleep", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L259", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "target": "src_yt_scraper_ratelimit_polite_sleep" + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L66", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render", + "target": "src_yt_scraper_render_build_filename_stem", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render", + "target": "src_yt_scraper_render_format_timestamp", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L35", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render", + "target": "src_yt_scraper_render_make_env", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L20", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render", + "target": "src_yt_scraper_render_quote_yaml", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L48", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render", + "target": "src_yt_scraper_render_render_markdown", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L30", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render", + "target": "src_yt_scraper_render_to_json", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "src_yt_scraper_render", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L5", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "src_yt_scraper_render", + "confidence_score": 1.0 + }, + { + "relation": "indirect_call", + "context": "assignment", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L42", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render_make_env", + "target": "src_yt_scraper_render_format_timestamp", + "confidence_score": 0.5 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L19", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_format_timestamp_hours", + "target": "src_yt_scraper_render_format_timestamp" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_format_timestamp_minutes", + "target": "src_yt_scraper_render_format_timestamp" + }, + { + "relation": "indirect_call", + "context": "assignment", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L43", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render_make_env", + "target": "src_yt_scraper_render_quote_yaml", + "confidence_score": 0.5 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L34", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_quote_yaml_none", + "target": "src_yt_scraper_render_quote_yaml" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L23", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_quote_yaml_plain", + "target": "src_yt_scraper_render_quote_yaml" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L27", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_quote_yaml_special", + "target": "src_yt_scraper_render_quote_yaml" + }, + { + "relation": "indirect_call", + "context": "assignment", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L44", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render_make_env", + "target": "src_yt_scraper_render_to_json", + "confidence_score": 0.5 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L35", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render_make_env", + "target": "environment", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L35", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render_make_env", + "target": "src_yt_scraper_render_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L55", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render_render_markdown", + "target": "src_yt_scraper_render_make_env", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/render.py", + "source_location": "L48", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_render_render_markdown", + "target": "src_yt_scraper_render_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L66", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_render_markdown", + "target": "src_yt_scraper_render_render_markdown" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_features.py", + "source_location": "L156", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features_test_build_filename_stem", + "target": "src_yt_scraper_render_build_filename_stem" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L38", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_build_filename_stem", + "target": "src_yt_scraper_render_build_filename_stem" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_render.py", + "source_location": "L44", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render_test_build_filename_stem_no_date", + "target": "src_yt_scraper_render_build_filename_stem" + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L102", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_segments_backfill_from_markdown", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L45", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_segments_parse_markdown", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L39", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_segments_parsedmarkdown", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L98", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_segments_search", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L31", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_segments_seconds_to_ts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L94", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_segments_store_segments", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L87", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_segments_strip_quotes", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L173", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_segments_to_int", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_segments_ts_to_seconds", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_store_searchhit", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_segments", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L75", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_parse_markdown", + "target": "src_yt_scraper_segments_ts_to_seconds", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L362", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_segments_ts_to_seconds", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L366", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_build_router", + "target": "src_yt_scraper_segments_ts_to_seconds", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L45", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_parse_markdown", + "target": "src_yt_scraper_segments_parsedmarkdown", + "confidence_score": 1.0 + }, + { + "relation": "uses", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L11", + "weight": 0.8, + "_origin": "ast", + "source": "src_yt_scraper_segments_parsedmarkdown", + "target": "src_yt_scraper_store_searchhit", + "confidence_score": 0.5 + }, + { + "relation": "uses", + "confidence": "INFERRED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L11", + "weight": 0.8, + "_origin": "ast", + "source": "src_yt_scraper_segments_parsedmarkdown", + "target": "src_yt_scraper_store_store", + "confidence_score": 0.5 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L128", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_backfill_from_markdown", + "target": "src_yt_scraper_segments_parse_markdown", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L64", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_parse_markdown", + "target": "src_yt_scraper_segments_strip_quotes", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L167", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_backfill_from_markdown", + "target": "src_yt_scraper_segments_store_segments", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L94", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_store_segments", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L98", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_search", + "target": "src_yt_scraper_store_searchhit", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L98", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_search", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L102", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_backfill_from_markdown", + "target": "src_yt_scraper_segments_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L159", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_backfill_from_markdown", + "target": "src_yt_scraper_segments_to_int", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L102", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_backfill_from_markdown", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/segments.py", + "source_location": "L107", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_segments_rationale_107", + "target": "src_yt_scraper_segments_backfill_from_markdown", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L283", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_segments_backfill_from_markdown", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L285", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_build_router", + "target": "src_yt_scraper_segments_backfill_from_markdown", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L11", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_segments_backfill_from_markdown", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L35", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_create_app", + "target": "src_yt_scraper_segments_backfill_from_markdown", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L150", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L162", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_jobrow", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L678", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_now_iso", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L707", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_row_to_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L720", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_row_to_jobrow", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L682", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_row_to_videorow", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L665", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_sanitize_fts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L138", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_searchhit", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L129", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_segmentrow", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L174", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L96", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_videoref", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L106", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L15", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L16", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L8", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "src_yt_scraper_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L242", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_upsert_videos", + "target": "src_yt_scraper_store_videoref", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_features.py", + "source_location": "L50", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features_store", + "target": "src_yt_scraper_store_videoref" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_store_platform.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform_seeded_store", + "target": "src_yt_scraper_store_videoref" + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L682", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_row_to_videorow", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L275", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_all", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L261", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_pending", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L286", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_video", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L292", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_query_videos", + "target": "src_yt_scraper_store_videorow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L447", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_segments", + "target": "src_yt_scraper_store_segmentrow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L466", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_search_segments", + "target": "src_yt_scraper_store_searchhit", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L707", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_row_to_cookierow", + "target": "src_yt_scraper_store_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L527", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_active_cookie", + "target": "src_yt_scraper_store_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L515", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_cookie", + "target": "src_yt_scraper_store_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L510", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_list_cookies", + "target": "src_yt_scraper_store_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L720", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_row_to_jobrow", + "target": "src_yt_scraper_store_jobrow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L567", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_job", + "target": "src_yt_scraper_store_jobrow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L573", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_list_jobs", + "target": "src_yt_scraper_store_jobrow", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L180", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_connect", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L539", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_create_job", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L198", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L594", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_dashboard", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L233", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_delete_channel", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L533", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_delete_cookie", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L527", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_get_active_cookie", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L275", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_get_all", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L227", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_get_channel", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L515", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_get_cookie", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L567", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_get_job", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L261", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_get_pending", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L447", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_get_segments", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L286", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_get_video", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L461", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_has_segments", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L175", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_init", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L187", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_init_schema", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L222", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_list_channels", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L510", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_list_cookies", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L573", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_list_jobs", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L372", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_mark_done", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L412", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_mark_error", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L395", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_mark_status", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L292", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_query_videos", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L654", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_reset_errors", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L466", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_search_segments", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L521", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_set_active_cookie", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L403", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_set_upload_date", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L580", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_stats", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L423", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_store_segments", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L548", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_update_job", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L338", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_update_video_metadata", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L208", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_upsert_channel", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L495", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_upsert_cookie", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L242", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store", + "target": "src_yt_scraper_store_store_upsert_videos", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L15", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_build_router", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L24", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_create_app", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L16", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_init", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L270", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_resolve_channel_url", + "target": "src_yt_scraper_store_store", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_features.py", + "source_location": "L48", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features_store", + "target": "src_yt_scraper_store_store" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_store_platform.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform_store", + "target": "src_yt_scraper_store_store" + }, + { + "relation": "calls", + "context": "call", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "tests/test_store_platform.py", + "source_location": "L32", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform_test_migration_idempotent", + "target": "src_yt_scraper_store_store" + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L175", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_init", + "target": "src_yt_scraper_store_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L178", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_init", + "target": "src_yt_scraper_store_store_init_schema", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L180", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_connect", + "target": "connection", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L199", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_cursor", + "target": "src_yt_scraper_store_store_connect", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L188", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_init_schema", + "target": "src_yt_scraper_store_store_connect", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L541", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_create_job", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L198", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_cursor", + "target": "cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L595", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_dashboard", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L234", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_delete_channel", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L534", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_delete_cookie", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L528", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_active_cookie", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L282", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_all", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L228", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_channel", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L516", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_cookie", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L568", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_job", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L271", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_pending", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L448", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_segments", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L287", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_video", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L462", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_has_segments", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L223", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_list_channels", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L511", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_list_cookies", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L574", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_list_jobs", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L381", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_mark_done", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L414", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_mark_error", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L397", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_mark_status", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L328", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_query_videos", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L660", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_reset_errors", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L482", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_search_segments", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L522", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_set_active_cookie", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L406", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_set_upload_date", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L588", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_stats", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L424", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_store_segments", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L564", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_update_job", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L369", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_update_video_metadata", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L210", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_upsert_channel", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L497", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_upsert_cookie", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L245", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_upsert_videos", + "target": "src_yt_scraper_store_store_cursor", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L209", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_upsert_channel", + "target": "src_yt_scraper_store_now_iso", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L243", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_upsert_videos", + "target": "src_yt_scraper_store_now_iso", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L273", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_pending", + "target": "src_yt_scraper_store_row_to_videorow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L284", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_all", + "target": "src_yt_scraper_store_row_to_videorow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L290", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_video", + "target": "src_yt_scraper_store_row_to_videorow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L335", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_query_videos", + "target": "src_yt_scraper_store_row_to_videorow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L380", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_mark_done", + "target": "src_yt_scraper_store_now_iso", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L396", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_mark_status", + "target": "src_yt_scraper_store_now_iso", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L413", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_mark_error", + "target": "src_yt_scraper_store_now_iso", + "confidence_score": 1.0 + }, + { + "relation": "indirect_call", + "context": "getattr", + "confidence": "INFERRED", + "confidence_score": 0.8, + "source_file": "src/yt_scraper/store.py", + "source_location": "L430", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_store_segments", + "target": "src_yt_scraper_webapp_jobs_jobmanager_start" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L468", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_search_segments", + "target": "src_yt_scraper_store_sanitize_fts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L496", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_upsert_cookie", + "target": "src_yt_scraper_store_now_iso", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L513", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_list_cookies", + "target": "src_yt_scraper_store_row_to_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L519", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_cookie", + "target": "src_yt_scraper_store_row_to_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L531", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_active_cookie", + "target": "src_yt_scraper_store_row_to_cookierow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L540", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_create_job", + "target": "src_yt_scraper_store_now_iso", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L560", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_update_job", + "target": "src_yt_scraper_store_now_iso", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L571", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_get_job", + "target": "src_yt_scraper_store_row_to_jobrow", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L576", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_store_list_jobs", + "target": "src_yt_scraper_store_row_to_jobrow", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L682", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_row_to_videorow", + "target": "row", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L707", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_row_to_cookierow", + "target": "row", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/store.py", + "source_location": "L720", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_store_row_to_jobrow", + "target": "row", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L7", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "fastapi", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_webapp_api_build_router", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L451", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_webapp_api_folder_info", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L445", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_webapp_api_handle", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L428", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_webapp_api_job_dict", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L436", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_webapp_api_loads", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L461", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_webapp_api_open_in_os", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L456", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_webapp_api_safe_dir", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L410", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api", + "target": "src_yt_scraper_webapp_api_video_dict", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_webapp_api", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_build_router", + "target": "apirouter", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_webapp_api_build_router", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L50", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_create_app", + "target": "src_yt_scraper_webapp_api_build_router", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L430", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_job_dict", + "target": "src_yt_scraper_webapp_api_loads", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L451", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_folder_info", + "target": "src_yt_scraper_webapp_api_py_path", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/api.py", + "source_location": "L461", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_api_open_in_os", + "target": "src_yt_scraper_webapp_api_py_path", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L5", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "fastapi", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L20", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_webapp_app_create_app", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_webapp_app_load_cfg", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_webapp_jobs", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app", + "target": "src_yt_scraper_webapp_jobs_jobmanager", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "return_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L20", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_create_app", + "target": "fastapi", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L21", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_create_app", + "target": "src_yt_scraper_webapp_app_load_cfg", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "parameter_type", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L20", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_create_app", + "target": "src_yt_scraper_webapp_app_py_path", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L45", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_create_app", + "target": "src_yt_scraper_webapp_jobs_jobmanager", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/app.py", + "source_location": "L76", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_app_load_cfg", + "target": "src_yt_scraper_webapp_app_py_path", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L265", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_webapp_jobs_clone_config", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L282", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_webapp_jobs_handle", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L19", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_webapp_jobs_jobmanager", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L270", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs", + "target": "src_yt_scraper_webapp_jobs_resolve_channel_url", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L47", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_cancel", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L70", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L38", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_enqueue", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L55", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_events_since", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_init", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L60", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_is_terminal", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L100", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L154", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_run_audio", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L110", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_run_batch", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L194", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L87", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_run_job", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L32", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_start", + "confidence_score": 1.0 + }, + { + "relation": "method", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L74", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager", + "target": "src_yt_scraper_webapp_jobs_jobmanager_worker", + "confidence_score": 1.0 + }, + { + "relation": "rationale_for", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L20", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_rationale_20", + "target": "src_yt_scraper_webapp_jobs_jobmanager", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L43", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_enqueue", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L38", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_enqueue", + "target": "src_yt_scraper_webapp_jobs_py_any", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L154", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_audio", + "target": "src_yt_scraper_webapp_jobs_py_any", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L110", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_batch", + "target": "src_yt_scraper_webapp_jobs_py_any", + "confidence_score": 1.0 + }, + { + "relation": "references", + "context": "generic_arg", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L194", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "target": "src_yt_scraper_webapp_jobs_py_any", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L52", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_cancel", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L167", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_audio", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L117", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_batch", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L203", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L85", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_worker", + "target": "src_yt_scraper_webapp_jobs_jobmanager_emit", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L82", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_worker", + "target": "src_yt_scraper_webapp_jobs_jobmanager_run_job", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L96", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_job", + "target": "src_yt_scraper_webapp_jobs_jobmanager_run_audio", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L93", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_job", + "target": "src_yt_scraper_webapp_jobs_jobmanager_run_batch", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L98", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_job", + "target": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L141", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_batch", + "target": "src_yt_scraper_webapp_jobs_jobmanager_resolve_channel_for_video", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L119", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_batch", + "target": "src_yt_scraper_webapp_jobs_clone_config", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L199", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "target": "src_yt_scraper_webapp_jobs_clone_config", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L234", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "target": "src_yt_scraper_webapp_jobs_handle", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/jobs.py", + "source_location": "L200", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_jobs_jobmanager_run_channel", + "target": "src_yt_scraper_webapp_jobs_resolve_channel_url", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L652", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_activatecookie", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L177", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_addchannel", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L267", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_allselected", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L84", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L755", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_axisopts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L747", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_baropts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L592", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_cancelscrape", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L812", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_channame", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L96", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_checkhealth", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L381", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_closeclip", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L432", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_closestats", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L590", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_closestream", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L520", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_cloudstyle", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L400", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_copyclip", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L287", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_copytext", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L597", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_deletejob", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L740", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_destroycharts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L681", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_doexport", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L326", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_downloadaudio", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L353", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_downloadaudioscope", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L437", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_downloadchannelpending", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L406", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_downloadcliptxt", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L277", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_downloadfile", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L294", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_downloadmd", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L306", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_downloadmdbatch", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L317", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_downloadthumbnails", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L337", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_downloadthumbnailsscope", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L789", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_fmtdate", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L799", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_fmtdatetime", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L805", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_fmtmonth", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L780", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_fmtnum", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L625", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_handledrop", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L631", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_handlefiles", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L465", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_highlight", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L772", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_humandur", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L77", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_init", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L262", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_isselected", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L744", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_lineopts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L478", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadanalysis", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L169", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadchannelpending", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L152", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadchannels", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L618", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadcookies", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L117", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loaddashboard", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L696", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadfolders", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L701", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadformat", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L608", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadjobs", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L451", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadsearch", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L419", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadstats", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L206", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_loadvideos", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L728", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_makechart", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L690", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_openchannel", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L373", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_openclip", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L706", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_openfolder", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L227", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_openvideo", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L298", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_processone", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L197", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_removechannel", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L672", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_removecookie", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L127", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_renderdashboardcharts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L510", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_rendertimelinechart", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L500", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_rendertopwordschart", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L715", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_rerender", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L386", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_runclip", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L602", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_scrapepct", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L246", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_seektranscript", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L263", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_selectall", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L266", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_selectnone", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L9", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_setupchartdefaults", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L101", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_setview", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L536", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_startscrape", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L817", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_statusclass", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L558", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_subscribejob", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L657", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_testcookie", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L665", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_testlabel", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L823", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L257", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_toggleselect", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L271", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_toggleselectall", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L765", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_ts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L639", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app", + "target": "src_yt_scraper_webapp_static_app_uploadcookies", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L78", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_init", + "target": "src_yt_scraper_webapp_static_app_setupchartdefaults", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L79", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_init", + "target": "src_yt_scraper_webapp_static_app_checkhealth", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L81", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_init", + "target": "src_yt_scraper_webapp_static_app_loadchannels", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L80", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_init", + "target": "src_yt_scraper_webapp_static_app_loaddashboard", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L653", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_activatecookie", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L183", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_addchannel", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L97", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_checkhealth", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L598", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_deletejob", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L330", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadaudio", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L363", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadaudioscope", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L439", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadchannelpending", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L310", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadmdbatch", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L321", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadthumbnails", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L347", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadthumbnailsscope", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L486", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadanalysis", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L171", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadchannelpending", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L155", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadchannels", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L620", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadcookies", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L120", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loaddashboard", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L697", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadfolders", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L702", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadformat", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L610", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadjobs", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L459", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadsearch", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L427", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadstats", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L221", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadvideos", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L710", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_openfolder", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L233", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_openvideo", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L300", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_processone", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L199", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_removechannel", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L674", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_removecookie", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L718", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_rerender", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L395", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_runclip", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L551", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_startscrape", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L660", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_testcookie", + "target": "src_yt_scraper_webapp_static_app_api", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L692", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_openchannel", + "target": "src_yt_scraper_webapp_static_app_setview", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L104", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_setview", + "target": "src_yt_scraper_webapp_static_app_destroycharts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L110", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_setview", + "target": "src_yt_scraper_webapp_static_app_loadanalysis", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L109", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_setview", + "target": "src_yt_scraper_webapp_static_app_loadcookies", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L111", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_setview", + "target": "src_yt_scraper_webapp_static_app_loadfolders", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L111", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_setview", + "target": "src_yt_scraper_webapp_static_app_loadformat", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L108", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_setview", + "target": "src_yt_scraper_webapp_static_app_loadjobs", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L107", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_setview", + "target": "src_yt_scraper_webapp_static_app_loadvideos", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L106", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_setview", + "target": "src_yt_scraper_webapp_static_app_renderdashboardcharts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L122", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loaddashboard", + "target": "src_yt_scraper_webapp_static_app_renderdashboardcharts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L123", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loaddashboard", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L199", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_removechannel", + "target": "src_yt_scraper_webapp_static_app_loaddashboard", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L579", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_subscribejob", + "target": "src_yt_scraper_webapp_static_app_loaddashboard", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L139", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_renderdashboardcharts", + "target": "src_yt_scraper_webapp_static_app_baropts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L132", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_renderdashboardcharts", + "target": "src_yt_scraper_webapp_static_app_fmtmonth", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L133", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_renderdashboardcharts", + "target": "src_yt_scraper_webapp_static_app_lineopts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L130", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_renderdashboardcharts", + "target": "src_yt_scraper_webapp_static_app_makechart", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L185", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_addchannel", + "target": "src_yt_scraper_webapp_static_app_loadchannels", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L162", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadchannels", + "target": "src_yt_scraper_webapp_static_app_loadchannelpending", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L165", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadchannels", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L199", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_removechannel", + "target": "src_yt_scraper_webapp_static_app_loadchannels", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L578", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_subscribejob", + "target": "src_yt_scraper_webapp_static_app_loadchannels", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L186", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_addchannel", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L200", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_removechannel", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L223", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadvideos", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L693", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_openchannel", + "target": "src_yt_scraper_webapp_static_app_loadvideos", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L577", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_subscribejob", + "target": "src_yt_scraper_webapp_static_app_loadvideos", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L237", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_openvideo", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L271", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_toggleselectall", + "target": "src_yt_scraper_webapp_static_app_selectall", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L313", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadmdbatch", + "target": "src_yt_scraper_webapp_static_app_selectnone", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L271", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_toggleselectall", + "target": "src_yt_scraper_webapp_static_app_selectnone", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L412", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadcliptxt", + "target": "src_yt_scraper_webapp_static_app_downloadfile", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L295", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadmd", + "target": "src_yt_scraper_webapp_static_app_downloadfile", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L290", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_copytext", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L302", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_processone", + "target": "src_yt_scraper_webapp_static_app_subscribejob", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L301", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_processone", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L312", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadmdbatch", + "target": "src_yt_scraper_webapp_static_app_subscribejob", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L308", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadmdbatch", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L319", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadthumbnails", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L332", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadaudio", + "target": "src_yt_scraper_webapp_static_app_subscribejob", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L328", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadaudio", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L340", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadthumbnailsscope", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L365", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadaudioscope", + "target": "src_yt_scraper_webapp_static_app_subscribejob", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L356", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadaudioscope", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L403", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_copyclip", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L429", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadstats", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L444", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadchannelpending", + "target": "src_yt_scraper_webapp_static_app_subscribejob", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L441", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_downloadchannelpending", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L461", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadsearch", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L488", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadanalysis", + "target": "src_yt_scraper_webapp_static_app_rendertimelinechart", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L494", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadanalysis", + "target": "src_yt_scraper_webapp_static_app_rendertopwordschart", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L496", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadanalysis", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L506", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_rendertopwordschart", + "target": "src_yt_scraper_webapp_static_app_baropts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L503", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_rendertopwordschart", + "target": "src_yt_scraper_webapp_static_app_makechart", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L515", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_rendertimelinechart", + "target": "src_yt_scraper_webapp_static_app_fmtmonth", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L516", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_rendertimelinechart", + "target": "src_yt_scraper_webapp_static_app_lineopts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L513", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_rendertimelinechart", + "target": "src_yt_scraper_webapp_static_app_makechart", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L553", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_startscrape", + "target": "src_yt_scraper_webapp_static_app_subscribejob", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L538", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_startscrape", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L559", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_subscribejob", + "target": "src_yt_scraper_webapp_static_app_closestream", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L574", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_subscribejob", + "target": "src_yt_scraper_webapp_static_app_loadjobs", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L575", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_subscribejob", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L594", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_cancelscrape", + "target": "src_yt_scraper_webapp_static_app_closestream", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L594", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_cancelscrape", + "target": "src_yt_scraper_webapp_static_app_loadjobs", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L598", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_deletejob", + "target": "src_yt_scraper_webapp_static_app_loadjobs", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L599", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_deletejob", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L653", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_activatecookie", + "target": "src_yt_scraper_webapp_static_app_loadcookies", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L621", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_loadcookies", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L674", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_removecookie", + "target": "src_yt_scraper_webapp_static_app_loadcookies", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L647", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_uploadcookies", + "target": "src_yt_scraper_webapp_static_app_loadcookies", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L628", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_handledrop", + "target": "src_yt_scraper_webapp_static_app_handlefiles", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L633", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_handlefiles", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L634", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_handlefiles", + "target": "src_yt_scraper_webapp_static_app_uploadcookies", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L649", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_uploadcookies", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L654", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_activatecookie", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L675", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_removecookie", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L711", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_openfolder", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L720", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_rerender", + "target": "src_yt_scraper_webapp_static_app_toast", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L745", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_lineopts", + "target": "src_yt_scraper_webapp_static_app_axisopts", + "confidence_score": 1.0 + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "source_file": "src/yt_scraper/webapp/static/app.js", + "source_location": "L751", + "weight": 1.0, + "_origin": "ast", + "source": "src_yt_scraper_webapp_static_app_baropts", + "target": "src_yt_scraper_webapp_static_app_axisopts", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_chapters.py", + "source_location": "L7", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters", + "target": "tests_test_chapters_test_align_no_chapters", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_chapters.py", + "source_location": "L34", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters", + "target": "tests_test_chapters_test_align_pre_chapter_segments", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_chapters.py", + "source_location": "L15", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters", + "target": "tests_test_chapters_test_align_with_chapters", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_chapters.py", + "source_location": "L43", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters", + "target": "tests_test_chapters_test_chapters_from_info", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_chapters.py", + "source_location": "L56", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_chapters", + "target": "tests_test_chapters_test_chapters_from_info_empty", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L47", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_store", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L68", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_test_backfill_from_markdown", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L154", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_test_build_filename_stem", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L123", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_test_export_html", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L95", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_test_export_json_csv", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L111", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_test_export_srt", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L55", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_test_parse_markdown_metadata", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L146", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_test_term_timeline", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L90", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_test_ts_helpers", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_features.py", + "source_location": "L131", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_features", + "target": "tests_test_features_test_word_frequency", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_parse.py", + "source_location": "L45", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse", + "target": "tests_test_parse_test_merge_adjacent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_parse.py", + "source_location": "L10", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse", + "target": "tests_test_parse_test_parse_json3_basic", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_parse.py", + "source_location": "L57", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse", + "target": "tests_test_parse_test_parse_json3_invalid_json", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_parse.py", + "source_location": "L21", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse", + "target": "tests_test_parse_test_parse_json3_skips_empty_events", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_parse.py", + "source_location": "L28", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse", + "target": "tests_test_parse_test_parse_vtt_basic", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_parse.py", + "source_location": "L39", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_parse", + "target": "tests_test_parse_test_parse_vtt_strips_tags", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L37", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "tests_test_render_test_build_filename_stem", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L43", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "tests_test_render_test_build_filename_stem_no_date", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "tests_test_render_test_format_timestamp_hours", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L12", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "tests_test_render_test_format_timestamp_minutes", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L33", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "tests_test_render_test_quote_yaml_none", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L22", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "tests_test_render_test_quote_yaml_plain", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L26", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "tests_test_render_test_quote_yaml_special", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_render.py", + "source_location": "L49", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_render", + "target": "tests_test_render_test_render_markdown", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L18", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_seeded_store", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L13", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_store", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L125", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_cookie_invalid_rejected", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L131", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_cookie_only_one_active", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L103", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_cookie_vault", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L158", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_dashboard_aggregates", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L144", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_jobs_crud", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L30", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_migration_idempotent", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L91", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_query_videos_filters", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L47", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_store_and_search_segments", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L72", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_store_segments_overwrites", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "tests/test_store_platform.py", + "source_location": "L81", + "weight": 1.0, + "_origin": "ast", + "source": "tests_test_store_platform", + "target": "tests_test_store_platform_test_update_video_metadata", + "confidence_score": 1.0 + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".opencode/agent/webapp-builder.md", + "source_location": "last line", + "weight": 1.0, + "source": "opencode_agent_webapp_builder", + "target": "docs_superpowers_plans_2026_07_26_platform_build" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".opencode/agent/webapp-builder.md", + "source_location": "last line", + "weight": 1.0, + "source": "opencode_agent_webapp_builder", + "target": "docs_superpowers_specs_2026_07_26_platform_design" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".opencode/agent/webapp-builder.md", + "source_location": "What already exists section", + "weight": 1.0, + "source": "opencode_agent_webapp_builder", + "target": "opencode_agent_webapp_builder_store_data_layer" + }, + { + "relation": "references", + "confidence": "INFERRED", + "confidence_score": 0.85, + "source_file": ".opencode/agent/webapp-builder.md", + "source_location": null, + "weight": 1.0, + "source": "opencode_agent_webapp_builder", + "target": "src_yt_scraper_webapp_static_index" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".opencode/goals/webapp-build.md", + "source_location": "Owner agent line", + "weight": 1.0, + "source": "opencode_goals_webapp_build", + "target": "opencode_agent_webapp_builder" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": ".opencode/goals/webapp-build.md", + "source_location": "Spec line", + "weight": 1.0, + "source": "opencode_goals_webapp_build", + "target": "docs_superpowers_specs_2026_07_26_platform_design" + }, + { + "relation": "cites", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a71", + "weight": 1.0, + "source": "docs_superpowers_specs_2026_07_26_platform_design", + "target": "opportunities" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "README.md", + "source_location": "Configuraci\u00f3n section", + "weight": 1.0, + "source": "readme", + "target": "config_example" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "README.md", + "source_location": "header", + "weight": 1.0, + "source": "readme", + "target": "readme_yt_dlp_innertube" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "docs/superpowers/plans/2026-07-26-platform-build.md", + "source_location": "Spec line", + "weight": 1.0, + "source": "docs_superpowers_plans_2026_07_26_platform_build", + "target": "docs_superpowers_specs_2026_07_26_platform_design" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a72, \u00a76.2", + "weight": 1.0, + "source": "docs_superpowers_specs_2026_07_26_platform_design", + "target": "docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a73", + "weight": 1.0, + "source": "docs_superpowers_specs_2026_07_26_platform_design", + "target": "docs_superpowers_specs_2026_07_26_platform_design_monorepo_architecture" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a71, \u00a714", + "weight": 1.0, + "source": "docs_superpowers_specs_2026_07_26_platform_design", + "target": "docs_superpowers_specs_2026_07_26_platform_design_no_ai_scope" + }, + { + "relation": "implements", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "src/yt_scraper/webapp/static/index.html", + "source_location": "Cookies view dropzone", + "weight": 1.0, + "source": "src_yt_scraper_webapp_static_index", + "target": "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux" + }, + { + "relation": "implements", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "src/yt_scraper/webapp/static/index.html", + "source_location": null, + "weight": 1.0, + "source": "src_yt_scraper_webapp_static_index", + "target": "docs_superpowers_specs_2026_07_26_platform_design_dark_command_center" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a714", + "weight": 1.0, + "source": "docs_superpowers_specs_2026_07_26_platform_design_no_ai_scope", + "target": "opportunities_llm_summaries" + }, + { + "relation": "references", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": "\u00a714", + "weight": 1.0, + "source": "docs_superpowers_specs_2026_07_26_platform_design_no_ai_scope", + "target": "opportunities_rag_qa" + }, + { + "relation": "shares_data_with", + "confidence": "INFERRED", + "confidence_score": 0.85, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": null, + "weight": 1.0, + "source": "docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5", + "target": "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner" + }, + { + "relation": "semantically_similar_to", + "confidence": "INFERRED", + "confidence_score": 0.95, + "source_file": "OPPORTUNITIES.md", + "source_location": null, + "weight": 1.0, + "source": "opportunities_search_fts5", + "target": "docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5" + }, + { + "relation": "shares_data_with", + "confidence": "INFERRED", + "confidence_score": 0.85, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": null, + "weight": 1.0, + "source": "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux", + "target": "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner" + }, + { + "relation": "conceptually_related_to", + "confidence": "INFERRED", + "confidence_score": 0.65, + "source_file": "OPPORTUNITIES.md", + "source_location": null, + "weight": 1.0, + "source": "opportunities_watch_mode", + "target": "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner" + }, + { + "relation": "conceptually_related_to", + "confidence": "INFERRED", + "confidence_score": 0.85, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md", + "source_location": null, + "weight": 1.0, + "source": "docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix", + "target": "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux" + }, + { + "relation": "conceptually_related_to", + "confidence": "INFERRED", + "confidence_score": 0.65, + "source_file": "OPPORTUNITIES.md", + "source_location": null, + "weight": 1.0, + "source": "opportunities_analysis_wordcloud", + "target": "opencode_agent_webapp_builder_store_data_layer" + }, + { + "relation": "semantically_similar_to", + "confidence": "INFERRED", + "confidence_score": 0.65, + "source_file": "OPPORTUNITIES.md", + "source_location": null, + "weight": 1.0, + "source": "opportunities_export_formats", + "target": "opencode_agent_webapp_builder_store_data_layer" + } + ], + "hyperedges": [ + { + "id": "webapp_stack_b", + "label": "Workstream B webapp stack (FastAPI + Alpine SPA + subagent)", + "nodes": [ + "opencode_agent_webapp_builder", + "opencode_goals_webapp_build", + "src_yt_scraper_webapp_static_index", + "docs_superpowers_specs_2026_07_26_platform_design_dark_command_center", + "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner" + ], + "relation": "participate_in", + "confidence": "EXTRACTED", + "confidence_score": 0.95, + "source_file": ".opencode/agent/webapp-builder.md" + }, + { + "id": "fts5_search_flow", + "label": "FTS5 transcript search flow (proposal -> spec -> SPA view)", + "nodes": [ + "opportunities_search_fts5", + "docs_superpowers_specs_2026_07_26_platform_design_transcript_fts5", + "src_yt_scraper_webapp_static_index" + ], + "relation": "form", + "confidence": "INFERRED", + "confidence_score": 0.85, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md" + }, + { + "id": "cookie_auth_chain", + "label": "Cookie auth chain (vault -> resolve_active_path -> scrape job)", + "nodes": [ + "docs_superpowers_specs_2026_07_26_platform_design_cookie_vault_ux", + "docs_superpowers_specs_2026_07_26_platform_design_sse_job_runner", + "docs_superpowers_specs_2026_07_26_platform_design_cookies_bug_fix", + "src_yt_scraper_webapp_static_index" + ], + "relation": "participate_in", + "confidence": "INFERRED", + "confidence_score": 0.85, + "source_file": "docs/superpowers/specs/2026-07-26-platform-design.md" + } + ], + "built_at_commit": "0866c92650abbe87b70cac98b64801f37626664b" +} \ No newline at end of file diff --git a/graphify-out/manifest.json b/graphify-out/manifest.json new file mode 100644 index 0000000..754ac99 --- /dev/null +++ b/graphify-out/manifest.json @@ -0,0 +1,187 @@ +{ + "pyproject.toml": { + "mtime": 1785126752.9759955, + "ast_hash": "f80dc007b3b67c7f7a78d9df01a81ead", + "semantic_hash": "f80dc007b3b67c7f7a78d9df01a81ead" + }, + "scripts/start-server.ps1": { + "mtime": 1785130613.533591, + "ast_hash": "9baf397df6c14b7917ca59fbe6df61cc", + "semantic_hash": "9baf397df6c14b7917ca59fbe6df61cc" + }, + "scripts/stop-server.ps1": { + "mtime": 1785127403.2329483, + "ast_hash": "4398501c202a3eb624fb439f6d03fcf5", + "semantic_hash": "4398501c202a3eb624fb439f6d03fcf5" + }, + "src/yt_scraper/__init__.py": { + "mtime": 1785120608.3336751, + "ast_hash": "4867131295172353fe6c2295851defc7", + "semantic_hash": "4867131295172353fe6c2295851defc7" + }, + "src/yt_scraper/analysis.py": { + "mtime": 1785126463.1545029, + "ast_hash": "c28d08131e6594e1e7c6111ff01b2d37", + "semantic_hash": "c28d08131e6594e1e7c6111ff01b2d37" + }, + "src/yt_scraper/chapters.py": { + "mtime": 1785120675.3308973, + "ast_hash": "1bf51b7c13486b9db9bcc3420fba2593", + "semantic_hash": "1bf51b7c13486b9db9bcc3420fba2593" + }, + "src/yt_scraper/cli.py": { + "mtime": 1785126572.0575886, + "ast_hash": "9734cedf7c1e045e1ab0e4a102860e29", + "semantic_hash": "9734cedf7c1e045e1ab0e4a102860e29" + }, + "src/yt_scraper/config.py": { + "mtime": 1785120620.335521, + "ast_hash": "2f3c8f7768a942e12c0a9e41b54891be", + "semantic_hash": "2f3c8f7768a942e12c0a9e41b54891be" + }, + "src/yt_scraper/cookies.py": { + "mtime": 1785126417.4218228, + "ast_hash": "dd5ec44bb4c6e6375be80f21307fc73d", + "semantic_hash": "dd5ec44bb4c6e6375be80f21307fc73d" + }, + "src/yt_scraper/discover.py": { + "mtime": 1785120708.331971, + "ast_hash": "8db06d0b131575f709b55467eabdc2a9", + "semantic_hash": "8db06d0b131575f709b55467eabdc2a9" + }, + "src/yt_scraper/export.py": { + "mtime": 1785126439.6829402, + "ast_hash": "f1cff31fb1004f08e997655f838e3a58", + "semantic_hash": "f1cff31fb1004f08e997655f838e3a58" + }, + "src/yt_scraper/extract.py": { + "mtime": 1785122183.7294595, + "ast_hash": "3e2179db2f7fd316d2b3acedee536086", + "semantic_hash": "3e2179db2f7fd316d2b3acedee536086" + }, + "src/yt_scraper/monitor.py": { + "mtime": 1785126496.288271, + "ast_hash": "a64188f938dc4f8917335ef41d333ead", + "semantic_hash": "a64188f938dc4f8917335ef41d333ead" + }, + "src/yt_scraper/parse.py": { + "mtime": 1785120665.3384771, + "ast_hash": "25354365ac1ab52f1561c97256573806", + "semantic_hash": "25354365ac1ab52f1561c97256573806" + }, + "src/yt_scraper/pipeline.py": { + "mtime": 1785131195.7311583, + "ast_hash": "ebce1b294140bf40f809848ef280c290", + "semantic_hash": "ebce1b294140bf40f809848ef280c290" + }, + "src/yt_scraper/ratelimit.py": { + "mtime": 1785120650.3795395, + "ast_hash": "6082befe56d342fc43abd5299dd6c6ea", + "semantic_hash": "6082befe56d342fc43abd5299dd6c6ea" + }, + "src/yt_scraper/render.py": { + "mtime": 1785120688.3247268, + "ast_hash": "ff83764f3a8c8874557993e11eab1f89", + "semantic_hash": "ff83764f3a8c8874557993e11eab1f89" + }, + "src/yt_scraper/segments.py": { + "mtime": 1785128385.6652262, + "ast_hash": "09c7da35bc09a3f75fd0a627c0534746", + "semantic_hash": "09c7da35bc09a3f75fd0a627c0534746" + }, + "src/yt_scraper/store.py": { + "mtime": 1785131583.548138, + "ast_hash": "9a3d4286214aa54ae4ac4df2097b643d", + "semantic_hash": "9a3d4286214aa54ae4ac4df2097b643d" + }, + "src/yt_scraper/webapp/__init__.py": { + "mtime": 1785126827.4957752, + "ast_hash": "d41d8cd98f00b204e9800998ecf8427e", + "semantic_hash": "d41d8cd98f00b204e9800998ecf8427e" + }, + "src/yt_scraper/webapp/api.py": { + "mtime": 1785131595.9914868, + "ast_hash": "e64174f04d6eab0747b1d2a7c2a96a01", + "semantic_hash": "e64174f04d6eab0747b1d2a7c2a96a01" + }, + "src/yt_scraper/webapp/app.py": { + "mtime": 1785126888.8032887, + "ast_hash": "e0b1925b4318305dcf746d360373ff50", + "semantic_hash": "e0b1925b4318305dcf746d360373ff50" + }, + "src/yt_scraper/webapp/jobs.py": { + "mtime": 1785131211.0397103, + "ast_hash": "8b6c80001ff8c95eaaa16f7b61d1f207", + "semantic_hash": "8b6c80001ff8c95eaaa16f7b61d1f207" + }, + "src/yt_scraper/webapp/static/app.js": { + "mtime": 1785131664.8792574, + "ast_hash": "f6b081fadc5884d379152abbd1e59700", + "semantic_hash": "f6b081fadc5884d379152abbd1e59700" + }, + "tests/test_chapters.py": { + "mtime": 1785120789.3300896, + "ast_hash": "6d5303fa86de8dc99af6ae2ee17da033", + "semantic_hash": "6d5303fa86de8dc99af6ae2ee17da033" + }, + "tests/test_features.py": { + "mtime": 1785126709.65728, + "ast_hash": "21f9c44ce7cc1d618ece402ab7c2b057", + "semantic_hash": "21f9c44ce7cc1d618ece402ab7c2b057" + }, + "tests/test_parse.py": { + "mtime": 1785120974.3283188, + "ast_hash": "57ce74ee10fe6f9a90126ec7d9fd96b0", + "semantic_hash": "57ce74ee10fe6f9a90126ec7d9fd96b0" + }, + "tests/test_render.py": { + "mtime": 1785120806.3260238, + "ast_hash": "27125960e235813724fd669001faab59", + "semantic_hash": "27125960e235813724fd669001faab59" + }, + "tests/test_store_platform.py": { + "mtime": 1785126662.4772756, + "ast_hash": "bad13dcf37be7a414ffae8018c29e55b", + "semantic_hash": "bad13dcf37be7a414ffae8018c29e55b" + }, + ".opencode/agent/webapp-builder.md": { + "mtime": 1785126783.7152567, + "ast_hash": "58e92641724400370d7823dce1e02ca3", + "semantic_hash": "58e92641724400370d7823dce1e02ca3" + }, + ".opencode/goals/webapp-build.md": { + "mtime": 1785126796.8402326, + "ast_hash": "478e7a2350ded2fd273cfdb0714d228d", + "semantic_hash": "478e7a2350ded2fd273cfdb0714d228d" + }, + "OPPORTUNITIES.md": { + "mtime": 1785122706.3466253, + "ast_hash": "4af60e3106b394664fbf5b5c5f645804", + "semantic_hash": "4af60e3106b394664fbf5b5c5f645804" + }, + "README.md": { + "mtime": 1785121499.3282604, + "ast_hash": "a0a8e6b62a991fce5d6c58171f80075e", + "semantic_hash": "a0a8e6b62a991fce5d6c58171f80075e" + }, + "config.example.yaml": { + "mtime": 1785120602.4114335, + "ast_hash": "415b0fc8e71ecc305d21e9c3c08d585a", + "semantic_hash": "415b0fc8e71ecc305d21e9c3c08d585a" + }, + "docs/superpowers/plans/2026-07-26-platform-build.md": { + "mtime": 1785126240.4211702, + "ast_hash": "8097056ef23068f22c48151746de305b", + "semantic_hash": "8097056ef23068f22c48151746de305b" + }, + "docs/superpowers/specs/2026-07-26-platform-design.md": { + "mtime": 1785126024.4879057, + "ast_hash": "9b85f02fd45c93cdabfd2e1c6d1e0c9e", + "semantic_hash": "9b85f02fd45c93cdabfd2e1c6d1e0c9e" + }, + "src/yt_scraper/webapp/static/index.html": { + "mtime": 1785131695.7653384, + "ast_hash": "13591b7c8c662d8e7c2540f3032ae26d", + "semantic_hash": "13591b7c8c662d8e7c2540f3032ae26d" + } +} \ No newline at end of file diff --git a/src/yt_scraper/store.py b/src/yt_scraper/store.py index fc56eaa..78755b6 100644 --- a/src/yt_scraper/store.py +++ b/src/yt_scraper/store.py @@ -575,6 +575,22 @@ class Store: cur.execute("SELECT * FROM scrape_jobs ORDER BY started_at DESC LIMIT ?", (limit,)) return [_row_to_jobrow(r) for r in cur.fetchall()] + TERMINAL_STATUSES = ("done", "error", "cancelled") + + def delete_job(self, job_id: str) -> bool: + with self._cursor() as cur: + cur.execute("DELETE FROM scrape_jobs WHERE id = ?", (job_id,)) + return cur.rowcount > 0 + + def delete_terminal_jobs(self) -> int: + placeholders = ",".join("?" for _ in self.TERMINAL_STATUSES) + with self._cursor() as cur: + cur.execute( + f"DELETE FROM scrape_jobs WHERE status IN ({placeholders})", + list(self.TERMINAL_STATUSES), + ) + return cur.rowcount + # ------------------------------------------------------------------ aggregates def stats(self, channel_id: str | None = None) -> dict[str, int]: diff --git a/src/yt_scraper/webapp/api.py b/src/yt_scraper/webapp/api.py index 89ba3dd..63543c7 100644 --- a/src/yt_scraper/webapp/api.py +++ b/src/yt_scraper/webapp/api.py @@ -134,8 +134,19 @@ def build_router(store: Store, cfg: Config, jobs) -> APIRouter: await asyncio.sleep(0.25) return EventSourceResponse(gen()) + @r.delete("/scrape/history") + def clear_job_history(): + n = store.delete_terminal_jobs() + return {"deleted": n} + @r.delete("/scrape/{job_id}") - def cancel_job(job_id: str): + def delete_or_cancel_job(job_id: str): + job = store.get_job(job_id) + if not job: + raise HTTPException(404, "job not found") + if job.status in store.TERMINAL_STATUSES: + store.delete_job(job_id) + return {"deleted": job_id} ok = jobs.cancel(job_id) return {"cancelled": ok} @@ -329,6 +340,14 @@ def build_router(store: Store, cfg: Config, jobs) -> APIRouter: raise HTTPException(404, "markdown file missing on disk") return FileResponse(str(p), filename=p.name, media_type="text/markdown") + @r.api_route("/videos/{video_id}/audio", methods=["GET", "HEAD"]) + def video_audio(video_id: str, request: Request): + # audio is stored as data/audio/.mp3 (see jobs._run_audio outtmpl) + p = Path(cfg.output_dir_resolved).parent / "audio" / f"{video_id}.mp3" + if not p.exists(): + raise HTTPException(404, "audio not downloaded yet") + return FileResponse(str(p), filename=f"{video_id}.mp3", media_type="audio/mpeg") + # -------------------------------------------------- thumbnails (local cache) @r.post("/tools/thumbnails") async def download_thumbnails(payload: dict): diff --git a/src/yt_scraper/webapp/jobs.py b/src/yt_scraper/webapp/jobs.py index c2b2b47..ad8d52b 100644 --- a/src/yt_scraper/webapp/jobs.py +++ b/src/yt_scraper/webapp/jobs.py @@ -167,7 +167,7 @@ class JobManager: self._emit(job_id, "log", {"msg": f"downloading {total} audio tracks -> {out_dir}"}) ydl_opts = { "format": "bestaudio/best", - "outtmpl": str(out_dir / "%(title)s.%(ext)s"), + "outtmpl": str(out_dir / "%(id)s.%(ext)s"), "postprocessors": [{"key": "FFmpegExtractAudio", "preferredcodec": "mp3", "preferredquality": "128"}], "quiet": True, "no_warnings": True, "noprogress": True, } diff --git a/src/yt_scraper/webapp/static/app.js b/src/yt_scraper/webapp/static/app.js index ea9af91..6c08f57 100644 --- a/src/yt_scraper/webapp/static/app.js +++ b/src/yt_scraper/webapp/static/app.js @@ -37,7 +37,7 @@ dash: { channels: [], status_breakdown: {}, uploads_over_time: [], duration_histogram: [], top_tags: [] }, channels: { items: [], pending: {} }, videos: { items: [], total: 0, page: 1, size: 25, selected: [] }, - detail: { video: null, transcript: [] }, + detail: { video: null, transcript: [], hasAudio: false, audioPlaying: false, activeSeg: -1 }, search: { q: "", channel: "", items: [], ran: false }, analysis: { tab: "wordcloud", channel: "", term: "", words: [], timeline: [] }, @@ -55,7 +55,7 @@ stats: { open: false, data: null, loading: false, channel: "" }, // ----- floating job widget ----- - jobWidget: { collapsed: false }, + jobWidget: { collapsed: false, dismissed: false, _hideTimer: null }, // ----- tools / folders ----- folders: { markdown: { path: "", exists: false }, exports: { path: "", exists: false }, audio: { path: "", exists: false }, analysis: { path: "", exists: false }, database: { path: "", exists: false } }, @@ -228,7 +228,7 @@ this.view = "detail"; this.loading.detail = true; this.loading.transcript = true; - this.detail = { video: null, transcript: [] }; + this.detail = { video: null, transcript: [], hasAudio: false, audioPlaying: false, activeSeg: -1 }; try { const v = await this.api("/api/videos/" + encodeURIComponent(id)); // chapters may come embedded or be absent @@ -241,6 +241,73 @@ this.detail.transcript = (t && t.items) || []; } catch (_) { this.detail.transcript = []; } finally { this.loading.transcript = false; } + // probe audio availability (HEAD) for the integrated player + this.checkAudio(id); + }, + + async checkAudio(id) { + try { + const r = await fetch("/api/videos/" + encodeURIComponent(id) + "/audio", { method: "HEAD" }); + const ok = !!(r && r.ok); + if (this.detail.video && this.detail.video.video_id === id) this.detail.hasAudio = ok; + return ok; + } catch (_) { return false; } + }, + + async downloadAudioOne(id) { + try { + const d = await this.api("/api/tools/audio", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ video_ids: [id] }) }); + this.toast("Audio download started — player will activate when ready"); + this.subscribeJob(d.job_id, "audio"); + this._pollAudio(id); + } catch (e) { this.toast("Audio failed: " + e.message, "error"); } + }, + + _pollAudio(id) { + if (this._audioPoll) clearInterval(this._audioPoll); + let attempts = 0; + this._audioPoll = setInterval(async () => { + attempts++; + const ready = await this.checkAudio(id); + if ((ready && this.detail.video && this.detail.video.video_id === id) || attempts > 90) { + clearInterval(this._audioPoll); this._audioPoll = null; + if (ready && this.detail.video && this.detail.video.video_id === id) this.toast("Audio ready — press play ▶"); + } + }, 4000); + }, + + // audio playback -> transcript follower + onAudioTime(e) { + const t = (e && e.target && typeof e.target.currentTime === "number") ? e.target.currentTime : 0; + const segs = this.detail.transcript || []; + if (!segs.length) return; + let active = -1; + for (let i = 0; i < segs.length; i++) { + if ((segs[i].start_sec || 0) <= t + 0.05) active = segs[i].idx; + else break; + } + if (active !== this.detail.activeSeg) { + this.detail.activeSeg = active; + this.$nextTick(() => { + const el = document.getElementById("seg-" + active); + if (el) el.scrollIntoView({ behavior: "smooth", block: "center" }); + }); + } + }, + + seekAudio(sec) { + const a = this.$refs.audioPlayer; + if (!a) return false; + try { a.currentTime = sec; a.play().catch(() => {}); } catch (_) {} + return true; + }, + + seekTo(sec) { + // seek the local audio player if available; otherwise just scroll the transcript + if (this.detail.hasAudio && this.$refs.audioPlayer) { + if (this.seekAudio(sec)) return; + } + this.seekTranscript(sec); }, seekTranscript(sec) { @@ -563,6 +630,8 @@ this.scrape.log = ["[stream] connecting…"]; this.scrape.progress = { completed: 0, total: 0 }; this.jobWidget.collapsed = false; + this.jobWidget.dismissed = false; + this._disarmAutoHide(); const es = new EventSource("/api/scrape/" + encodeURIComponent(jobId) + "/stream"); this.scrape.es = es; es.addEventListener("log", e => { try { const d = JSON.parse(e.data); this.scrape.log.push(d.msg || ""); } catch (_) {} }); @@ -577,13 +646,15 @@ if (this.view === "videos") this.loadVideos(); if (this.view === "channels") this.loadChannels(); if (this.view === "dashboard") this.loadDashboard(); + this._armAutoHide(); }); - es.addEventListener("cancelled", () => { this.scrape.log.push("[cancelled]"); this.closeStream(); this.loadJobs(); }); + es.addEventListener("cancelled", () => { this.scrape.log.push("[cancelled]"); this.closeStream(); this.loadJobs(); this._armAutoHide(); }); es.addEventListener("error", e => { if (this.scrape.es === null) return; // already closed by done/cancelled let msg = "connection error"; try { if (e.data) { const d = JSON.parse(e.data); msg = d.msg || msg; this.scrape.error = msg; this.scrape.log.push("[error] " + msg); } } catch (_) { this.scrape.error = msg; } this.closeStream(); this.loadJobs(); + this._armAutoHide(); }); }, @@ -599,6 +670,32 @@ catch (e) { this.toast("Delete failed: " + e.message, "error"); } }, + closeJobWidget() { + if (this.scrape.jobId && !this.scrape.done && !this.scrape.error) { + this.jobWidget.collapsed = true; + return; + } + this._disarmAutoHide(); + this.jobWidget.dismissed = true; + }, + _armAutoHide() { + this._disarmAutoHide(); + this.jobWidget._hideTimer = setTimeout(() => { this.jobWidget.dismissed = true; }, 6000); + }, + _disarmAutoHide() { + if (this.jobWidget._hideTimer) { clearTimeout(this.jobWidget._hideTimer); this.jobWidget._hideTimer = null; } + }, + async clearJobHistory() { + if (!confirm("Clear all finished jobs from history?\nDownloaded .md files and video data are NOT affected.")) return; + try { + const d = await this.api("/api/scrape/history", { method: "DELETE" }); + this.toast("Cleared " + ((d && d.deleted) || 0) + " finished job(s)", "success"); + this.loadJobs(); + } catch (e) { this.toast("Clear failed: " + e.message, "error"); } + }, + jobIsTerminal(j) { return j && ["done", "error", "cancelled"].includes(j.status); }, + jobActionLabel(j) { return this.jobIsTerminal(j) ? "Clear" : "Cancel"; }, + scrapePct() { const p = this.scrape.progress || {}; if (!p.total) return this.scrape.done ? 100 : 0; diff --git a/src/yt_scraper/webapp/static/index.html b/src/yt_scraper/webapp/static/index.html index 14671af..10ea90c 100644 --- a/src/yt_scraper/webapp/static/index.html +++ b/src/yt_scraper/webapp/static/index.html @@ -292,7 +292,9 @@
- +
@@ -302,13 +304,38 @@ + +
+ + +
+

Chapters

@@ -749,7 +786,7 @@ -