{ "schema_version": 1, "module": "content_marketing", "snapshot": "current-filesystem", "files": [ { "source_relative_path": "bilibili_comment_scraper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/bilibili_comment_scraper.py", "source_sha256": "c7f116f30889125c668e7f4dd796e7249ba7ea8621d5ab5fb518028f56c7f8dc", "target_sha256": "95eb40cb6fbe98feca55ea3a051a3f3542b2132a45f476766e6964bed4eef462", "transformed": true, "category": "source" }, { "source_relative_path": "bilibili_scraper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/bilibili_scraper.py", "source_sha256": "c3df15f317ce073f84a59609f83e2723a21a43e37cfcfc2f17b3cbf3a17df73e", "target_sha256": "3605db4d3d435e4fca5a3a4f6c85a44367637c91277f9195d80346591f75e6b7", "transformed": true, "category": "source" }, { "source_relative_path": "chanmama_scraper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/chanmama_scraper.py", "source_sha256": "2edc26879b57d73ec5992c80e5ef74d76a509f09bff7284b1ae17e90df543e07", "target_sha256": "fbe2506c4176d7fc1f39d5312d031f18b83aada905db2e2fb9354e688b5cab16", "transformed": true, "category": "source" }, { "source_relative_path": "collection_completeness.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/collection_completeness.py", "source_sha256": "f23b70b949f8adcaf00ee62aa0f9f39314bc623528cad9a77591641da765991d", "target_sha256": "f23b70b949f8adcaf00ee62aa0f9f39314bc623528cad9a77591641da765991d", "transformed": false, "category": "source" }, { "source_relative_path": "creator_task_grouping.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/creator_task_grouping.py", "source_sha256": "d4ef307039726b325bbb1267d6e711bdb1c254f06cdbc967c8b4878dfdd7bad8", "target_sha256": "d4ef307039726b325bbb1267d6e711bdb1c254f06cdbc967c8b4878dfdd7bad8", "transformed": false, "category": "source" }, { "source_relative_path": "daily_creator_exposure_scope.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/daily_creator_exposure_scope.py", "source_sha256": "3aa717f29032bcbb8517bdce6b0896e80acd3337780c2e54192b439230b13281", "target_sha256": "c3d01d557f3979940b14d5dbe2bfe78f81ee588240c0bf940cabaccaae199338", "transformed": true, "category": "source" }, { "source_relative_path": "daily_marketing_report.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/daily_marketing_report.py", "source_sha256": "22456210632d34cc6e60e4302641fe3ce581353a41970eb9c5613dbeb135ba31", "target_sha256": "0e07312af6de1f03ab232fd992285b1d61cc752496db76d8f978f5c67713cbe4", "transformed": true, "category": "source" }, { "source_relative_path": "data/config/analyze.env.example", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/config/analyze.env.example", "source_sha256": "b60328ef177b795489d0a57957133dedcfd67b38b59603a6edeee1cf9babcee2", "target_sha256": "b60328ef177b795489d0a57957133dedcfd67b38b59603a6edeee1cf9babcee2", "transformed": false, "category": "config" }, { "source_relative_path": "data/config/db.env.example", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/config/db.env.example", "source_sha256": "15f9f181ecae6dfc4eedb03a18ed3379ac8a55b83a32ee169b339427acb712d7", "target_sha256": "52cd5399aa602b6e6a5d20c32ec0a92a93d9e60953158caf53a5a3d13e5a1a4e", "transformed": true, "category": "config" }, { "source_relative_path": "data/config/款式_多维表格_对照.json", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/config/款式_多维表格_对照.json", "source_sha256": "78985ed95d3363f8843b0ee9e8d6acdd8e44a7238bfded48965229fe615dae19", "target_sha256": "78985ed95d3363f8843b0ee9e8d6acdd8e44a7238bfded48965229fe615dae19", "transformed": false, "category": "config" }, { "source_relative_path": "data/config/款式_多维表格_对照_自营.json", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/config/款式_多维表格_对照_自营.json", "source_sha256": "29978931a5c682e9f8a37929f2888ac5781345ee8ab23000c69613383653d315", "target_sha256": "29978931a5c682e9f8a37929f2888ac5781345ee8ab23000c69613383653d315", "transformed": false, "category": "config" }, { "source_relative_path": "data/tools/analyze_comments.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/analyze_comments.py", "source_sha256": "61677e64d3e864b73573e3e59b7a247bcfddcde93f78f81a20ee27257c326107", "target_sha256": "1fc30272e9305bb6570beafbef95f5edf3a15954c18dec4a427c30cd6d57bef3", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/analyze_note.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/analyze_note.py", "source_sha256": "cdf981d21f30d31338b698a31fd44fea97c4c08e04750956ac6f1afb9ed56905", "target_sha256": "8fd4ab49d45a0084ad15d1a9a595013c9d31867d8f61993d3b971520ed81b949", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/batch_rescrape_bilibili.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/batch_rescrape_bilibili.py", "source_sha256": "31d015a53d8b25728e687d4a5db78673bd8dbd25e470e6e8c728a215147d00f1", "target_sha256": "0a550172b7bed73e254d89826e48d0532e9feea0d5c46676d35eac0f490097e5", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/batch_rescrape_douyin.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/batch_rescrape_douyin.py", "source_sha256": "261b3b122708deb40d8587f27fada55cc0cd234a2ddd085af4cf2f2e2871e05a", "target_sha256": "2253ee01da3b105d65d610e9e8fbabbde29d44ffdd540e724bad39274b0063c8", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/batch_rescrape_xiaohongshu.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/batch_rescrape_xiaohongshu.py", "source_sha256": "6c50845f568b5e51038229873aac977c1bc37f31dbe90f7ce10218d0358422ea", "target_sha256": "411f75888512d68212f221ea59a6af9a52ea425d5b99b95dfe7a2ca34d23cbdb", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/check_id_filled.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/check_id_filled.py", "source_sha256": "69e13df9ded14dc907a8ef13aa98808f9e7df6d18f6a50741a950ebcb826fcd9", "target_sha256": "69e13df9ded14dc907a8ef13aa98808f9e7df6d18f6a50741a950ebcb826fcd9", "transformed": false, "category": "tool" }, { "source_relative_path": "data/tools/check_status.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/check_status.py", "source_sha256": "b8aff93d9a4925bda966f1b458f974131827b59a62e85b73a10bac9d6afee072", "target_sha256": "376a2201912f524aab55eaae32ef889dacbb5fcbb332be14094d0d7c75d92dbb", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/collect_note_metrics.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/collect_note_metrics.py", "source_sha256": "30f40ae47baaf520001a20a0f1ef85472a999fca69127ad06d07bd697d3353bc", "target_sha256": "c0cf5f2569a50f32ea6f7c89eebb6562dca01ec5a3915906164caed2080c583d", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/daily_dashboard_analytics.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/daily_dashboard_analytics.py", "source_sha256": "6f0bd4b918691255290880aacaf82fd1ea16344204b6d80d5a85689448312985", "target_sha256": "6b5fcf393739f2c4b988ee3cff006577d4c5d851fb446db1d2abf0cf1e85512e", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/daily_report_card.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/daily_report_card.py", "source_sha256": "3229a5b4ec321ade3543a5fe172231af95e1874a690122258866f58740067855", "target_sha256": "9baf37c269e09ae2be1f244b080da0ed9879403aac654962a0fc1d48083c14d1", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/daily_report_charts.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/daily_report_charts.py", "source_sha256": "0fc15ec6114bcd46c51d7e21df23f850943a24acce2df408d795f077241c7ec4", "target_sha256": "90f5033cf7550241c6891b5927cf1b1811bb65913aa8a8793db4571bbe71897b", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/db.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/db.py", "source_sha256": "cb2e3c6a8b44d11668e8fdb6fc0acf8b73adf280a4e19b8f17547edc99ef0089", "target_sha256": "fb652acecc92227554a072a2b1e0be37a81df4c1215f36a5a50de966f7183054", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/feishu_comment_batch.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/feishu_comment_batch.py", "source_sha256": "2b04fde410eec1dece0b995d0b74bfad4bdc1a53669f19ead2a6fc13ecdd00b7", "target_sha256": "598a26e1dcc65702ad154ec3dcc84b4d5c8fecf45196e7e8301ca5b77544ae23", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/feishu_doc_writer.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/feishu_doc_writer.py", "source_sha256": "0ec54d855ae842b52d0897c782d2f4d9d696182bc6b8ffaf2e7973b615ac814f", "target_sha256": "4a24f87b487681edd8b684b1abe375fa134588a4a115f7f652d3ad462ee00e6b", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/friday_relogin_parallel.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/friday_relogin_parallel.py", "source_sha256": "affed4ab6e5e179c85dc92999502b98e007c71243ed26977b3c5eeba23b9e3dc", "target_sha256": "6fe2eecd03d0c99fc7004302c7b089994fb7e330fbd49ff246b3353b05ec174e", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/generate_creator_report.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/generate_creator_report.py", "source_sha256": "84f5404d45e05d5d33f61f29c123cb75f764f43ad4b04e83776e98228883dea7", "target_sha256": "12c3164c9128999449a481882e1d1afb820751cfe620373dc7f26aaf799d63d0", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/init_db.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/init_db.py", "source_sha256": "5dd41fcd437d957b24ecaf4579672dd2317145b44c44bbe308fdcfa8a94ec667", "target_sha256": "8c1f5336c42ca9be00eff79adc319f62b85234cdbd6089317672be6cc91bedb1", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/migrations/001_creators_and_cooperations.sql", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/migrations/001_creators_and_cooperations.sql", "source_sha256": "2a482079b9c65147f2f878f7ab2d855cf69a90086ed24da1f696e360b5a2684f", "target_sha256": "2a482079b9c65147f2f878f7ab2d855cf69a90086ed24da1f696e360b5a2684f", "transformed": false, "category": "sql" }, { "source_relative_path": "data/tools/migrations/003_creator_report.sql", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/migrations/003_creator_report.sql", "source_sha256": "a66b1ec9f9540a3ce67cb62bb0998df1e160664c5cc1dc752dbb24dbab97190c", "target_sha256": "a66b1ec9f9540a3ce67cb62bb0998df1e160664c5cc1dc752dbb24dbab97190c", "transformed": false, "category": "sql" }, { "source_relative_path": "data/tools/migrations/004_style_category.sql", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/migrations/004_style_category.sql", "source_sha256": "480b1386f6821b22a89018934fe1625994c7c6513b4e7a7afab4fa53ccfb4167", "target_sha256": "480b1386f6821b22a89018934fe1625994c7c6513b4e7a7afab4fa53ccfb4167", "transformed": false, "category": "sql" }, { "source_relative_path": "data/tools/migrations/005_style_product_profile.sql", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/migrations/005_style_product_profile.sql", "source_sha256": "8f9c4d25681e84e582d3cdcd9108ebb16c2f5b777b766a5c3653a21c0baf6d91", "target_sha256": "8f9c4d25681e84e582d3cdcd9108ebb16c2f5b777b766a5c3653a21c0baf6d91", "transformed": false, "category": "sql" }, { "source_relative_path": "data/tools/pull_all_tables.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/pull_all_tables.py", "source_sha256": "be331541a235be1ffb0f1d2f8583d2f5a7aa66ac324631ec6adeb0aaf988dd0c", "target_sha256": "59e57a1ce9ff0b5e8ef78e60778a46ce69ba2edc215d301b5059113847619e71", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/rebuild_mapping.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/rebuild_mapping.py", "source_sha256": "fe946418ebeb30d982ed667c4b7b08052a3fe9aba291eb62c1e726dc53854a3c", "target_sha256": "9c5cd95826e28e535d9dc421d1ebaf51644688804ef5b31a31ab0d6fa67fd394", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/refresh_self_mapping.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/refresh_self_mapping.py", "source_sha256": "c83ca6e10677fe6c09cb46c0d9a9a785b5c2ee6f9ac7fa3fd82438bd9f4fee7a", "target_sha256": "ae5805ffd37dd728f035c3126b789d54d230fb4f916321b598abd4e31fc96816", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/relogin_bilibili.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/relogin_bilibili.py", "source_sha256": "b8dc12539bcd6f1a368d50ead1f5d33d6577a75c92f0b7bafa75a67edd7a73fa", "target_sha256": "ae1a6e7b55e7e713dfa124e5ee90a926a14aff232eae51d916ecfbef4cbc3049", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/relogin_douyin.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/relogin_douyin.py", "source_sha256": "3c2017f8a801528ff17e4c4bae24615256b8788c185f9a797fe87470e35b1645", "target_sha256": "730a9e1091bc040d5c25df8fcd598d2a4ac41f981bb368bee61f74f9212bfb31", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/relogin_pgy.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/relogin_pgy.py", "source_sha256": "759c6a68a0851b4c87d8febfc5d94925831a3b2d7cdf1e6a6e74dcd52b83ae3f", "target_sha256": "dfffec788b2d23e01526be59ae8c36426ead821a13a28c5c6ffc720b2a05a44e", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/relogin_transaction.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/relogin_transaction.py", "source_sha256": "57ec20de8d99290268ed3d1fc2b66bf3faeaca807d7f3744dd51de6cc93628b2", "target_sha256": "57ec20de8d99290268ed3d1fc2b66bf3faeaca807d7f3744dd51de6cc93628b2", "transformed": false, "category": "tool" }, { "source_relative_path": "data/tools/relogin_xiaohongshu.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/relogin_xiaohongshu.py", "source_sha256": "fcdea30adecb066c4f3699ded457df0bc763d978248276ddbffa9f18bc9bdf2c", "target_sha256": "73a0c9cfb2da6780130868f02d678dba923c5a95e77b065dbbcbedafc50d5ac5", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/relogin_xingtu.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/relogin_xingtu.py", "source_sha256": "c9d434cb02a57ebd7b884598563077d733d56e45dad59ed30774eb7e1c668cb0", "target_sha256": "dd19e522789fc17a12fc0f78fe9a6d2f204323a5288ae75b18948ebe5d62d45b", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/retry_failed.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/retry_failed.py", "source_sha256": "90c6dbc47317cc48e28071d452d75c95913138fc885a5963f9eb58986cd99086", "target_sha256": "813f49cfc6758ff853c2f279b73bca0d8b242353b0b3e6546dc2f886db05ea6a", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/schema_gyxx_super_data.sql", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/schema_gyxx_super_data.sql", "source_sha256": "7d087858c183e2f8dce90842dec663c42d67a37a61215dc14bee48ee053caaec", "target_sha256": "6555471f333ce738d7944bb2901d09a6c8240ce226b8670476e653ec69de5902", "transformed": true, "category": "sql" }, { "source_relative_path": "data/tools/style_analyzer.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/style_analyzer.py", "source_sha256": "f58aa4ed597c225dcc105fad712e28c2c60a7dcd3edc93cf29b905c3d9e7e3c9", "target_sha256": "5e6d1a19cb749d788596e28d42a397fd93e57b81c7cc29edc3ae42546e59e901", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/sync_cooperations.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/sync_cooperations.py", "source_sha256": "e2a527a456847c88981fa6f4bba622b6e45f7782c94bf44459e08f9715e59105", "target_sha256": "988851d8f0a6dae276413a0c19364b05daa84c90ccfa0e4207205675334c48fb", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/sync_metrics_to_cmt_notes.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/sync_metrics_to_cmt_notes.py", "source_sha256": "3b97cab0740c5c97b47a0fbe763acb5391d7c8e47c95f4675720b4f716f6432f", "target_sha256": "d2ebaaf0eadc58d437c19346946326db112f72d50066c2b451e2340c3d907e25", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/sync_style_categories.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/sync_style_categories.py", "source_sha256": "931e70550275ffb33161bbc4cbe527d5b8eff49b4265fda53aa9a5f46947f204", "target_sha256": "f0c238dfef078297d48086118c06101eba581a4026fe078b3258fe5700b9d0b6", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/v2_filename.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/v2_filename.py", "source_sha256": "60bd6da02baa65e80b60f4fc89fd5f76de26f26566e0cf87a4dcc30e077c379e", "target_sha256": "60bd6da02baa65e80b60f4fc89fd5f76de26f26566e0cf87a4dcc30e077c379e", "transformed": false, "category": "tool" }, { "source_relative_path": "data/tools/validate_mapping.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/validate_mapping.py", "source_sha256": "1e5b792da893b7dd1a29d6f6a73146a4d25079ac8bf37cf15ab4816d64d72cfe", "target_sha256": "379276a67718cf1baced677135bb2880d1072574479fcbc66598093a760a274a", "transformed": true, "category": "tool" }, { "source_relative_path": "data/tools/write_notes_to_doc.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/data/tools/write_notes_to_doc.py", "source_sha256": "7c2eec1d8e89d9eb4c90e7cb4903eb50233c5b6932c18c727bbc2d211828230d", "target_sha256": "a1f9985ed6fb21f00be7a7acf6c0c57d83cd36a25a828a4dd54572a01411d3a8", "transformed": true, "category": "tool" }, { "source_relative_path": "douyin_comment_scraper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/douyin_comment_scraper.py", "source_sha256": "ec785ead9c95c5de65c00b06212b1f03d0159fed475a95a2b593d3b24e486e43", "target_sha256": "356eb84fb17a2a4526382defffd525aea6a82a592442f1bb6ab3815274a7f9cb", "transformed": true, "category": "source" }, { "source_relative_path": "feishu_mapping.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/feishu_mapping.py", "source_sha256": "d389fd59f5e49208ffa12d04c1ca6202f51dc5d89321a50e52fadad747239749", "target_sha256": "56af85da94c8eff1f1e0c27f13df56860cc959328524a059b6a374d55eb32e20", "transformed": true, "category": "source" }, { "source_relative_path": "login_helper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/login_helper.py", "source_sha256": "15c2563e224b7d8e6eb6ba40eb5da8f91125fb6d99f11e6bd028c0dd546812ac", "target_sha256": "309deb40e0ecaa498132c14de9a63d5a122b0ec7db4dc315f6aa7126c8379da2", "transformed": true, "category": "source" }, { "source_relative_path": "monthly_summary_all.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/monthly_summary_all.py", "source_sha256": "aa9c50b0a52416f518973d65e707a1428c5bd3c1f7435c674e894ccd4cc33c17", "target_sha256": "dd5a4be485fe05ad12e038101bf0560776b0bb99456fffbd0f0087211fe3f3c4", "transformed": true, "category": "source" }, { "source_relative_path": "pgy_xhs_scraper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/pgy_xhs_scraper.py", "source_sha256": "7d9cd66b80cf602127541cfdd9589f2d8870ca4a25bac3587478482064aae8f4", "target_sha256": "d1b3600a08c0ce92b0f9b67fdae1600ffc536172be6d13f07fef5ec3be69c3e6", "transformed": true, "category": "source" }, { "source_relative_path": "pgy_xhs_scraper_v2.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/pgy_xhs_scraper_v2.py", "source_sha256": "2be78ef76df38e80da2099a76e6e3fd9dcdc2e8875afb44279f54003ccb5f563", "target_sha256": "a9c36fb308b95ee100d3ff8073cbd1deb1a6f0e0617ef7658cebb294e8b35775", "transformed": true, "category": "source" }, { "source_relative_path": "requirements.txt", "target_relative_path": "src/gyxx_flow/modules/content_marketing/requirements.txt", "source_sha256": "64250b6eb39be48a87fcd79cd962306eb825d8c302f0c3f5f73d79928be602ad", "target_sha256": "64250b6eb39be48a87fcd79cd962306eb825d8c302f0c3f5f73d79928be602ad", "transformed": false, "category": "dependency" }, { "source_relative_path": "run_all.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/run_all.py", "source_sha256": "7a2529b1d043297171aeb88518fac8753234540992042f922172219b2b233dd4", "target_sha256": "295487234c50b4f7855a18feaa83e2811ede8c7fd2145413735c32c104217618", "transformed": true, "category": "source" }, { "source_relative_path": "self_bilibili_scraper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/self_bilibili_scraper.py", "source_sha256": "2ef650a16dde61697101bb219a8c3adcd682fec1529bb9c5312dc5b384d83a72", "target_sha256": "477e4137a09c5072922ff8d7401244aa7152054ff4c4506fdd20531af03aa549", "transformed": true, "category": "source" }, { "source_relative_path": "self_douyin_scraper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/self_douyin_scraper.py", "source_sha256": "4aba1264dee052521e5712d7219916e534db5705e3cec75caaa1b025a4bc2506", "target_sha256": "78f18751216f5bb56c062dbdcda334958d607a86a5693b0ad5b3973fb51c84bb", "transformed": true, "category": "source" }, { "source_relative_path": "weekly_summary_all.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/weekly_summary_all.py", "source_sha256": "f8a2d976378ade00579393a2bb0805281d1b7b500b119b497c69d1b591a9c8aa", "target_sha256": "77fd5e1580a0e9e4493aac44ee3be509ab10969391e9d57dc51e6ee10c6e9c4b", "transformed": true, "category": "source" }, { "source_relative_path": "weekly_summary_xingyun2.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/weekly_summary_xingyun2.py", "source_sha256": "637361e637e357c5727b9eb5bc7a8fa2eb0e67f819d81aef51672e54a4301d33", "target_sha256": "d240e648ab46175afd07edbdaa81d6b1fd17a3e0c20d69e5668a5fb290c1294d", "transformed": true, "category": "source" }, { "source_relative_path": "xiaohongshu_comment_scraper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/xiaohongshu_comment_scraper.py", "source_sha256": "58bc07bb2fd67897e18a9981f931df8fadf24a6cc5f09d55bd3aaa2e3c6756a4", "target_sha256": "d3afc963296220e357989f3386f755a4ac2a29b6d2b92b9ce86e8c1efee12639", "transformed": true, "category": "source" }, { "source_relative_path": "xingtu_scraper.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/xingtu_scraper.py", "source_sha256": "a5f101bf7bbd0f3475491eaadb5e42467f3bf3e8c79de343642e6b5b0c5ccfa9", "target_sha256": "3066bc9a48988d607d0b09b3a6e97f4baedf28064ef549945ae70f739e99d2e6", "transformed": true, "category": "source" }, { "source_relative_path": "xingtu_scraper_v2.py", "target_relative_path": "src/gyxx_flow/modules/content_marketing/xingtu_scraper_v2.py", "source_sha256": "f6ee7523f7f8d99790e6c7fd264d8584d48c7aecea93700380d19fcd3aeac467", "target_sha256": "13c0a2f0cd87849336a781cc027b6d86cb2da8730bc03c1e0597287de61a5794", "transformed": true, "category": "source" } ], "intentionally_excluded": [ { "pattern": ".gitignore", "category": "vcs", "reason": "source-project ignore rules are not module runtime source" }, { "pattern": ".git/**", "category": "vcs", "reason": "version-control metadata is not runtime source" }, { "pattern": ".venv/**", "category": "environment", "reason": "machine-specific virtual environments are rebuilt from dependencies" }, { "pattern": "**/__pycache__/**", "category": "cache", "reason": "generated Python bytecode cache" }, { "pattern": "**/*.pyc", "category": "cache", "reason": "generated Python bytecode" }, { "pattern": ".pytest_cache/**", "category": "cache", "reason": "generated test cache" }, { "pattern": ".claude/**", "category": "agent-state", "reason": "local assistant state" }, { "pattern": ".learnings/**", "category": "agent-state", "reason": "local learning state" }, { "pattern": ".superpowers/**", "category": "agent-state", "reason": "local planning state" }, { "pattern": "docs/**", "category": "documentation", "reason": "historical planning and review documents are not runtime dependencies" }, { "pattern": "data/config/*.env", "category": "secret", "reason": "real environment files may contain credentials; examples are copied separately" }, { "pattern": "data/**/*cookies*", "category": "session", "reason": "cookies and backups are sensitive mutable runtime state" }, { "pattern": "data/**/*storage_state*", "category": "session", "reason": "browser storage state is sensitive mutable runtime state" }, { "pattern": ".*chrome_profile*/**", "category": "session", "reason": "browser profiles are sensitive and machine-specific" }, { "pattern": "data/logs/**", "category": "generated-data", "reason": "historical logs are migrated as data, not source" }, { "pattern": "logs/**", "category": "generated-data", "reason": "historical logs are migrated as data, not source" }, { "pattern": "data/v2_results/**", "category": "generated-data", "reason": "historical collection results are migrated as data" }, { "pattern": "data/notes/**", "category": "generated-data", "reason": "collected note data is not source" }, { "pattern": "data/reports/**", "category": "generated-data", "reason": "generated reports are not source" }, { "pattern": "reports/**", "category": "generated-data", "reason": "generated reports are not source" }, { "pattern": "data/summary/**", "category": "generated-data", "reason": "generated summaries are not source" }, { "pattern": "data/tmp/**", "category": "temporary", "reason": "temporary files and generated images are not source" }, { "pattern": "data/qrcode/**", "category": "sensitive-evidence", "reason": "QR screenshots are sensitive runtime evidence" }, { "pattern": "data/feishu_tables/**", "category": "generated-data", "reason": "remote table snapshots are data caches" }, { "pattern": "data/chanmama/**", "category": "generated-data", "reason": "downloaded spreadsheets are raw data" }, { "pattern": "data/tools/*.xml", "category": "scheduler-artifact", "reason": "legacy Task Scheduler exports are retained only as audit evidence" }, { "pattern": "*.md", "category": "documentation", "reason": "root reports and notes are not runtime source" }, { "pattern": "*.json", "category": "generated-data", "reason": "root payloads and transient JSON files are not runtime source" }, { "pattern": "tests/**", "category": "test", "reason": "tests live in the repository test suite and are not production source-sync entries" }, { "pattern": "**/*.bat", "category": "legacy-launcher", "reason": "Windows batch launchers are archived history; production scheduling uses Python" }, { "pattern": "**/*.ps1", "category": "legacy-launcher", "reason": "Windows PowerShell launchers are archived history; production scheduling uses Python" } ], "transformation_rules": [ { "id": "externalize-credentials", "reason": "replace plaintext credentials in copied configuration/source with environment references" }, { "id": "remove-legacy-project-roots", "reason": "replace legacy project absolute roots in copied source and tools with portable paths" }, { "id": "portable-runtime-boundary", "reason": "route mutable state and generated data through GYXX_DATA_ROOT and immutable resources through GYXX_MODULE_ROOT" } ], "generated_files": [ { "target_relative_path": "src/gyxx_flow/modules/content_marketing/runtime_paths.py", "target_sha256": "417848beffe8768c51e83af07eac91bf090d2301d8ff120316db8b86a441f4f3", "category": "compatibility", "reason": "single portable module/data path boundary retained after flattening" } ] }