feat: complete production workflow migration
This commit is contained in:
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,305 +1,376 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"module": "shop_intelligence",
|
||||
"source_project": "shop-data-flow",
|
||||
"files": [
|
||||
{
|
||||
"source_relative_path": ".env.example",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/config.example.env",
|
||||
"category": "config",
|
||||
"source_sha256": "d0a005429c4363020681076afe4ec389712bd86b041271b8e9d52b977d79bfc1",
|
||||
"target_sha256": "a1e2bad32d3a2eb6cec1c60e13bef1298f872365301c048a8e8df826c783c122",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "adaptive_selectors.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/adaptive_selectors.py",
|
||||
"category": "source",
|
||||
"source_sha256": "7f60d6eedf0b9bf4aad0087305a86814dc9e2691128cce4010f9b3deff403bae",
|
||||
"target_sha256": "9ee3b786a5eecb6877c31d583de87bf75e22326c9126d9b679d2d4460db70454",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/__init__.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/collectors/__init__.py",
|
||||
"category": "source",
|
||||
"source_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"target_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/dy_store_competitor_store_scraping.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/collectors/dy_store_competitor_store_scraping.py",
|
||||
"category": "source",
|
||||
"source_sha256": "009879a7dd341ca6ecbc8eb66f5700114c73bcaba3a53f159014a76232d0aa6b",
|
||||
"target_sha256": "8d319196d56a52e084c375f872faf729d33fca400f4cabae901accb6c0bdde47",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_data_collector.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/collectors/jd_data_collector.py",
|
||||
"category": "source",
|
||||
"source_sha256": "6f00ae3b2b74e08d3c34c3b911ea819dfa4c6ce55bceef282afb3b2f565aa3ec",
|
||||
"target_sha256": "1825f123b3c1604340bd95a79cad31cbaba23834d50dae69ce5b68068a5b055e",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_peer_store_data_collector.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/collectors/jd_peer_store_data_collector.py",
|
||||
"category": "source",
|
||||
"source_sha256": "4ebdb52df7b384d2bfdd2fc840d55d14e18864002c20a36685b63cee1966cf4c",
|
||||
"target_sha256": "23f445aae6bcf41193db5286ce1a519d50b93e20a55f27f6df58315aafb30a08",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/taobao_sycm.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/collectors/taobao_sycm.py",
|
||||
"category": "source",
|
||||
"source_sha256": "6978333bd60c1946e3dd8eeced1d0589461c4a26377511da7875f60bd0e31739",
|
||||
"target_sha256": "6042dc251c0dbff92ca9eb8ed0a4db4322db5810e43fadf1cae79219067496fd",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "config.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/config.py",
|
||||
"category": "source",
|
||||
"source_sha256": "2cfa101ed07643ad822f176e4b21bb72bf7ff32e3945837082811ea792a9e21b",
|
||||
"target_sha256": "d9a8e32513071dacc8fd303901a3f665336d49e5dd8afe2ba3a0bc8f9dc19985",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "db/__init__.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/db/__init__.py",
|
||||
"category": "source",
|
||||
"source_sha256": "e75ec31954ddf3c6a84e5915a6ff662027d097fdf7fba91aa5c84d048b8e960c",
|
||||
"target_sha256": "e75ec31954ddf3c6a84e5915a6ff662027d097fdf7fba91aa5c84d048b8e960c",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "db/db.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/db/db.py",
|
||||
"category": "source",
|
||||
"source_sha256": "bf600de53e60be0492426b6ffade60f75474d885263963b12b1bc4a42c03e216",
|
||||
"target_sha256": "567df11eac1462111594668d66e1210fe1d1808f0f77250e557ad1cf5b66af44",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "db/schema.sql",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/db/schema.sql",
|
||||
"category": "sql",
|
||||
"source_sha256": "5c3b90a70af4aa9e69039be8f3ec79a136ab5892e5d1ff31fc8a20d735a5dfe5",
|
||||
"target_sha256": "5c3b90a70af4aa9e69039be8f3ec79a136ab5892e5d1ff31fc8a20d735a5dfe5",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "lark_cli.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/lark_cli.py",
|
||||
"category": "source",
|
||||
"source_sha256": "434394c2864b44e612a34b16c242df2a5f89dbfb298505b22f2133af925d0233",
|
||||
"target_sha256": "dd2c06c0e491f310e563b6203b078f41fd1cf1427b946332a2735df522cf13d1",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "pyproject.toml",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/dependencies.toml",
|
||||
"category": "dependency",
|
||||
"source_sha256": "002035ffb503798d48241f962216c5baa460de4ee8a1d7d696a3d6ba6afb2975",
|
||||
"target_sha256": "002035ffb503798d48241f962216c5baa460de4ee8a1d7d696a3d6ba6afb2975",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/__init__.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/runners/__init__.py",
|
||||
"category": "source",
|
||||
"source_sha256": "79b41ece107032dcaa3a7b07df8454673fae8d09f763052ec12c81e3be5126d0",
|
||||
"target_sha256": "79b41ece107032dcaa3a7b07df8454673fae8d09f763052ec12c81e3be5126d0",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/run_peer_store.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/runners/run_peer_store.py",
|
||||
"category": "launcher",
|
||||
"source_sha256": "363a04b516dd6b011f07bf34feb480ccd0f1da46cb7d9512653ea7d5f4f7a3a4",
|
||||
"target_sha256": "5db5365ba1a69ec325cc9e5b90aa77609045df84d5b3b8956e1718faaf30be55",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/run_shop.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/runners/run_shop.py",
|
||||
"category": "launcher",
|
||||
"source_sha256": "5c5a37fb230f531e55563e75b7cf361a3cba190707f01f516e244ac643c73027",
|
||||
"target_sha256": "f12d29bd72533780270393eae855412b87f716f2540b05fed82da097821d20cb",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/utils.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/runners/utils.py",
|
||||
"category": "source",
|
||||
"source_sha256": "3bdf504593634d467524d06322d7f0ca20ab7bdf8c115573c154b8f5559c1cad",
|
||||
"target_sha256": "43340178902f3531d3d68ae3dc51b2dc8117003b43c6172f32a53f04b3f6f2cb",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "scripts/remove_scheduler.ps1",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/scripts/remove_scheduler.ps1",
|
||||
"category": "launcher",
|
||||
"source_sha256": "0532c87a6de5f7f7f65796b8c2077126091cda7d4f065c6015624599b6df1ee6",
|
||||
"target_sha256": "c376ac34da5aa777634ccea5a5d2e5718c69309b17a0219cac5c19a3c6d46ca4",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "scripts/setup_scheduler.ps1",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/scripts/setup_scheduler.ps1",
|
||||
"category": "launcher",
|
||||
"source_sha256": "8ff5418b494886ceb76acb9c8dcbccf85183f1e85fb18426c0053802ae5eb26b",
|
||||
"target_sha256": "88915b6d75c62c61d13bc39d7fb959ea4b308068b9edab08db43c5c18f295f69",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "writers/__init__.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/writers/__init__.py",
|
||||
"category": "source",
|
||||
"source_sha256": "d830cb8dd53601d06abb9481c907472bcefcadb8b65ceb0356f5baf037c3af10",
|
||||
"target_sha256": "d830cb8dd53601d06abb9481c907472bcefcadb8b65ceb0356f5baf037c3af10",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "writers/peer_store_writer.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/writers/peer_store_writer.py",
|
||||
"category": "source",
|
||||
"source_sha256": "71bf69c423bf3dd1f3d68d4e33f7024fbe0e446567d2cc3b25ec0cb71f59ab7e",
|
||||
"target_sha256": "075b2862d486f43a406a3be58439813b60f3354ebba244f4d0be25a82ff618d7",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "writers/shop_base_writer.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runtime/writers/shop_base_writer.py",
|
||||
"category": "source",
|
||||
"source_sha256": "01aa18955a0ec92f4fb745df916e5b7f1c69646c8a194e29bc0042120f59c722",
|
||||
"target_sha256": "3ec3d71af95e7d50fa77d7ec684f1e86634eea0eed6be6b5728fe19a3f04ce0d",
|
||||
"transformed": true
|
||||
}
|
||||
],
|
||||
"entrypoints": [
|
||||
{
|
||||
"source_relative_path": "runners/run_shop.py",
|
||||
"target_relative_path": "runners/run_shop.py",
|
||||
"classification": "scheduled",
|
||||
"workflows": [
|
||||
"shop.metrics.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/run_peer_store.py",
|
||||
"target_relative_path": "runners/run_peer_store.py",
|
||||
"classification": "scheduled",
|
||||
"workflows": [
|
||||
"shop.competitor.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_data_collector.py",
|
||||
"target_relative_path": "collectors/jd_data_collector.py",
|
||||
"classification": "internal",
|
||||
"workflows": [
|
||||
"shop.metrics.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_peer_store_data_collector.py",
|
||||
"target_relative_path": "collectors/jd_peer_store_data_collector.py",
|
||||
"classification": "internal",
|
||||
"workflows": [
|
||||
"shop.competitor.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/dy_store_competitor_store_scraping.py",
|
||||
"target_relative_path": "collectors/dy_store_competitor_store_scraping.py",
|
||||
"classification": "internal",
|
||||
"workflows": [
|
||||
"shop.metrics.weekly",
|
||||
"shop.competitor.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/taobao_sycm.py",
|
||||
"target_relative_path": "collectors/taobao_sycm.py",
|
||||
"classification": "internal",
|
||||
"workflows": [
|
||||
"shop.metrics.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "scripts/setup_scheduler.ps1",
|
||||
"target_relative_path": "scripts/setup_scheduler.ps1",
|
||||
"classification": "maintenance",
|
||||
"workflows": [
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "scripts/remove_scheduler.ps1",
|
||||
"target_relative_path": "scripts/remove_scheduler.ps1",
|
||||
"classification": "maintenance",
|
||||
"workflows": [
|
||||
|
||||
]
|
||||
}
|
||||
],
|
||||
"intentionally_excluded": [
|
||||
{
|
||||
"pattern": ".git/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": ".venv/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/__pycache__/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": ".env",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/*cookies*",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/*profile*/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/data/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/logs/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "debug/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "uv.lock",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "README.md",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "CLAUDE.md",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "AGENTS.md",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
}
|
||||
],
|
||||
"snapshot": "current-filesystem"
|
||||
"schema_version": 1,
|
||||
"module": "shop_intelligence",
|
||||
"source_project": "shop-data-flow",
|
||||
"files": [
|
||||
{
|
||||
"source_relative_path": ".env.example",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/config.example.env",
|
||||
"category": "config",
|
||||
"source_sha256": "d0a005429c4363020681076afe4ec389712bd86b041271b8e9d52b977d79bfc1",
|
||||
"target_sha256": "2d5c9bd6f7749bee87c3716c0d934883f0dcc3548ccf0df75441911b882a98ad",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "adaptive_selectors.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/adaptive_selectors.py",
|
||||
"category": "source",
|
||||
"source_sha256": "7f60d6eedf0b9bf4aad0087305a86814dc9e2691128cce4010f9b3deff403bae",
|
||||
"target_sha256": "3417782d86c96939ca7fc682c8d9e85a8f4b156f25df802f16a168a3fbe421e6",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/__init__.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/collectors/__init__.py",
|
||||
"category": "source",
|
||||
"source_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"target_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/dy_store_competitor_store_scraping.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/collectors/dy_store_competitor_store_scraping.py",
|
||||
"category": "source",
|
||||
"source_sha256": "009879a7dd341ca6ecbc8eb66f5700114c73bcaba3a53f159014a76232d0aa6b",
|
||||
"target_sha256": "e0b9664ad71c5c44132a730ccb274e30e6749229e912c5df816105aa7905405b",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_data_collector.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/collectors/jd_data_collector.py",
|
||||
"category": "source",
|
||||
"source_sha256": "6f00ae3b2b74e08d3c34c3b911ea819dfa4c6ce55bceef282afb3b2f565aa3ec",
|
||||
"target_sha256": "caaef9f448c1fd803ee7aac5149d5ddf49890fc793c1d4d6e1ef58f8404e0be9",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_peer_store_data_collector.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/collectors/jd_peer_store_data_collector.py",
|
||||
"category": "source",
|
||||
"source_sha256": "4ebdb52df7b384d2bfdd2fc840d55d14e18864002c20a36685b63cee1966cf4c",
|
||||
"target_sha256": "d0a75b08ca50b746dd28b609d15d769b1137a8f6aba575a253a0fc3988bbf34b",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_self_operated_brand_daily.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/collectors/jd_self_operated_brand_daily.py",
|
||||
"category": "source",
|
||||
"source_sha256": "f03e6e6a65faa1cbafae57b641fe2efec9aae8ba685afd1c0cf63680adf7588e",
|
||||
"target_sha256": "9190b09f739461fa7d231391754ba4373093ec8dede9df77ae06d866306da1a6",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_self_operated_product_daily.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/collectors/jd_self_operated_product_daily.py",
|
||||
"category": "source",
|
||||
"source_sha256": "92f5c8619eede17c25bad8482b8821ff7a7dac3ff649e4a02d69c21f8dc89de1",
|
||||
"target_sha256": "8c28a8684bf8812f87e8ca7764fed3d6b026cf107d69dbac6507e0fb4630f54d",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/taobao_sycm.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/collectors/taobao_sycm.py",
|
||||
"category": "source",
|
||||
"source_sha256": "6978333bd60c1946e3dd8eeced1d0589461c4a26377511da7875f60bd0e31739",
|
||||
"target_sha256": "b832f7421f0782401850c3bf6d6c7c1c827af10230c7c4b0b12db303edac3d61",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "config.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/config.py",
|
||||
"category": "source",
|
||||
"source_sha256": "2cfa101ed07643ad822f176e4b21bb72bf7ff32e3945837082811ea792a9e21b",
|
||||
"target_sha256": "0e8819fc9ec12fabbe91b25f51db895ca95f4a725b69bde0d6b807da5b8d4416",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "db/__init__.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/db/__init__.py",
|
||||
"category": "source",
|
||||
"source_sha256": "ffc89b78ff0081a129e04eb6de4985ab0a2a4613c9e8a1d8b2750d8c17e8bc05",
|
||||
"target_sha256": "ffc89b78ff0081a129e04eb6de4985ab0a2a4613c9e8a1d8b2750d8c17e8bc05",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "db/db.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/db/db.py",
|
||||
"category": "source",
|
||||
"source_sha256": "168b6f87c1827b267f763ddce7eb15d0c8d652c8c0c7af18dcd0c6c7da5cddd1",
|
||||
"target_sha256": "b8f15975605e2d9b75d25ac09a67768d4583401c1365288de078a97d0d3f3abf",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "db/schema.sql",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/db/schema.sql",
|
||||
"category": "sql",
|
||||
"source_sha256": "73230590bde7ae6359c02c82c2db096c0d3faa55b374e30348c47d7b40ea498b",
|
||||
"target_sha256": "a0aa2a22c8fdbb1f748dc7b206fe06a43f10899ca7036e433cdd91d7a1f5cba9",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "lark_cli.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/lark_cli.py",
|
||||
"category": "source",
|
||||
"source_sha256": "434394c2864b44e612a34b16c242df2a5f89dbfb298505b22f2133af925d0233",
|
||||
"target_sha256": "1b227902a8ebe05ada4f0bda7c2b69bdfd639a4f5b339c949df0b656c11e6144",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "pyproject.toml",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/dependencies.toml",
|
||||
"category": "dependency",
|
||||
"source_sha256": "002035ffb503798d48241f962216c5baa460de4ee8a1d7d696a3d6ba6afb2975",
|
||||
"target_sha256": "002035ffb503798d48241f962216c5baa460de4ee8a1d7d696a3d6ba6afb2975",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "tests/test_jd_self_operated_brand_daily.py",
|
||||
"target_relative_path": "tests/modules/shop_intelligence/test_jd_self_operated_brand_daily.py",
|
||||
"category": "test",
|
||||
"source_sha256": "71186dd318bd582648b43b72641b91c540c1e6908b28f2b9591f70c3590f22e8",
|
||||
"target_sha256": "8dddfb16c48556b00f59b00477407e7d289e5f893ecff60255b04829b18a4fb5",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "tests/test_jd_self_operated_product_daily.py",
|
||||
"target_relative_path": "tests/modules/shop_intelligence/test_jd_self_operated_product_daily.py",
|
||||
"category": "test",
|
||||
"source_sha256": "2b8d404951bea91438dc7fa85ad525bf0235cd758de14c35cc17f0a3f6c4b06b",
|
||||
"target_sha256": "21667a07f324da3755d70c67cba4b2d50f922614bee41464a52ae154aff56fc2",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "tests/test_run_jd_self_operated_daily.py",
|
||||
"target_relative_path": "tests/modules/shop_intelligence/test_run_jd_self_operated_daily.py",
|
||||
"category": "test",
|
||||
"source_sha256": "8883b9f6cf6313dd49422a1329307288a240dee6018ed40c71683969b565885e",
|
||||
"target_sha256": "1fafc65993c4c0b853f60ae0bad2ca53d2b396a7c7a1b602be7830ec2a5ba5f5",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/__init__.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runners/__init__.py",
|
||||
"category": "source",
|
||||
"source_sha256": "79b41ece107032dcaa3a7b07df8454673fae8d09f763052ec12c81e3be5126d0",
|
||||
"target_sha256": "79b41ece107032dcaa3a7b07df8454673fae8d09f763052ec12c81e3be5126d0",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/run_peer_store.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runners/run_peer_store.py",
|
||||
"category": "launcher",
|
||||
"source_sha256": "363a04b516dd6b011f07bf34feb480ccd0f1da46cb7d9512653ea7d5f4f7a3a4",
|
||||
"target_sha256": "a603b281f5db5c43bc022c47f7dd3c8a381a33980f6974c5c30aac5c06431917",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/run_jd_self_operated_daily.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runners/run_jd_self_operated_daily.py",
|
||||
"category": "launcher",
|
||||
"source_sha256": "b0bad4bcb45f9566d004358796c9588d3e1f0714f5a9b523fae1d44a94b1745e",
|
||||
"target_sha256": "a26baf610b91d86684366db5809ca031b737663b765fd8672b0addbf4a58a67d",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/run_shop.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runners/run_shop.py",
|
||||
"category": "launcher",
|
||||
"source_sha256": "7c5f50e44613fa4271d6b3d8dbc28d43c884a06a6a2cd04299f7155a9dc572e3",
|
||||
"target_sha256": "94e0024de5f92a7e72d864f52f30474ca193feff93a370dcbb6d8a346590386e",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/utils.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/runners/utils.py",
|
||||
"category": "source",
|
||||
"source_sha256": "3bdf504593634d467524d06322d7f0ca20ab7bdf8c115573c154b8f5559c1cad",
|
||||
"target_sha256": "d3b8d86770401b12fbfc8855763e765c5599b97eddb6cd65ea49fe7b34ce2ce4",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "writers/__init__.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/writers/__init__.py",
|
||||
"category": "source",
|
||||
"source_sha256": "d830cb8dd53601d06abb9481c907472bcefcadb8b65ceb0356f5baf037c3af10",
|
||||
"target_sha256": "d830cb8dd53601d06abb9481c907472bcefcadb8b65ceb0356f5baf037c3af10",
|
||||
"transformed": false
|
||||
},
|
||||
{
|
||||
"source_relative_path": "writers/peer_store_writer.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/writers/peer_store_writer.py",
|
||||
"category": "source",
|
||||
"source_sha256": "71bf69c423bf3dd1f3d68d4e33f7024fbe0e446567d2cc3b25ec0cb71f59ab7e",
|
||||
"target_sha256": "56b2d41af0b5ac19e189b5445b765776efdacea8c963bf0013ad377c399cc569",
|
||||
"transformed": true
|
||||
},
|
||||
{
|
||||
"source_relative_path": "writers/shop_base_writer.py",
|
||||
"target_relative_path": "src/gyxx_flow/modules/shop_intelligence/writers/shop_base_writer.py",
|
||||
"category": "source",
|
||||
"source_sha256": "f16f6dcb1ca028ca4ec1fe70d77127459656b4f9f6fc982c30bc426ad09ca3f5",
|
||||
"target_sha256": "3bcd1dc039b25370d27cdbefa697a47349707ab94ff5e999c5ab25fa74168421",
|
||||
"transformed": true
|
||||
}
|
||||
],
|
||||
"entrypoints": [
|
||||
{
|
||||
"source_relative_path": "runners/run_shop.py",
|
||||
"target_relative_path": "runners/run_shop.py",
|
||||
"classification": "scheduled",
|
||||
"workflows": [
|
||||
"shop.metrics.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/run_peer_store.py",
|
||||
"target_relative_path": "runners/run_peer_store.py",
|
||||
"classification": "scheduled",
|
||||
"workflows": [
|
||||
"shop.competitor.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_data_collector.py",
|
||||
"target_relative_path": "collectors/jd_data_collector.py",
|
||||
"classification": "internal",
|
||||
"workflows": [
|
||||
"shop.metrics.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_peer_store_data_collector.py",
|
||||
"target_relative_path": "collectors/jd_peer_store_data_collector.py",
|
||||
"classification": "internal",
|
||||
"workflows": [
|
||||
"shop.competitor.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/dy_store_competitor_store_scraping.py",
|
||||
"target_relative_path": "collectors/dy_store_competitor_store_scraping.py",
|
||||
"classification": "internal",
|
||||
"workflows": [
|
||||
"shop.metrics.weekly",
|
||||
"shop.competitor.weekly",
|
||||
"shop.douyin_price_appeal"
|
||||
],
|
||||
"commands": [
|
||||
"shop.douyin_price_appeal"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/taobao_sycm.py",
|
||||
"target_relative_path": "collectors/taobao_sycm.py",
|
||||
"classification": "internal",
|
||||
"workflows": [
|
||||
"shop.metrics.weekly"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_self_operated_brand_daily.py",
|
||||
"target_relative_path": "collectors/jd_self_operated_brand_daily.py",
|
||||
"classification": "manual",
|
||||
"workflows": [
|
||||
"shop.jd_self_operated.daily"
|
||||
],
|
||||
"commands": [
|
||||
"shop.jd_self_operated.collect_brand"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "runners/run_jd_self_operated_daily.py",
|
||||
"target_relative_path": "runners/run_jd_self_operated_daily.py",
|
||||
"classification": "scheduled",
|
||||
"workflows": [
|
||||
"shop.jd_self_operated.daily"
|
||||
]
|
||||
},
|
||||
{
|
||||
"source_relative_path": "collectors/jd_self_operated_product_daily.py",
|
||||
"target_relative_path": "collectors/jd_self_operated_product_daily.py",
|
||||
"classification": "internal",
|
||||
"workflows": [
|
||||
"shop.jd_self_operated.daily"
|
||||
]
|
||||
}
|
||||
],
|
||||
"intentionally_excluded": [
|
||||
{
|
||||
"pattern": "scripts/setup_scheduler.ps1",
|
||||
"reason": "historical Windows scheduler setup is archived under docs/history and is not production source"
|
||||
},
|
||||
{
|
||||
"pattern": "scripts/remove_scheduler.ps1",
|
||||
"reason": "historical Windows scheduler removal is archived under docs/history and is not production source"
|
||||
},
|
||||
{
|
||||
"pattern": ".gitignore",
|
||||
"reason": "source-project ignore rules are not module runtime source"
|
||||
},
|
||||
{
|
||||
"pattern": ".learnings/**",
|
||||
"reason": "local learning state is not runtime source"
|
||||
},
|
||||
{
|
||||
"pattern": "docs/**",
|
||||
"reason": "historical design and review documents are not runtime dependencies"
|
||||
},
|
||||
{
|
||||
"pattern": "**/*storage_state*",
|
||||
"reason": "browser storage state is sensitive mutable runtime data"
|
||||
},
|
||||
{
|
||||
"pattern": ".git/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": ".venv/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/__pycache__/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": ".env",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/*cookies*",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/*profile*/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/data/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "**/logs/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "debug/**",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "uv.lock",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "README.md",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "CLAUDE.md",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
},
|
||||
{
|
||||
"pattern": "AGENTS.md",
|
||||
"reason": "runtime, generated, sensitive, or non-business material is not copied into module source"
|
||||
}
|
||||
],
|
||||
"snapshot": "current-filesystem"
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user