{
  "created_at": "2026-09-08T03:33:27",
  "git_head": "2311bedeb9f04884485a968d5c1de48dc0eaeb68",
  "tracked_worktree_modified": true,
  "files": [
    {
      "path": "algorithms/algorithm/HATTV34Network.py",
      "group": "方法与 PPO 调用链",
      "purpose": "v3.4 服务任务上下文、AA/AT 与候选路由；方法章主要实现",
      "sha256": "4f6e181d1cccb1044c6a16787d567abfc60caa8a47f945fde3062e87a97f4f88",
      "bytes": 15273,
      "lines": 386
    },
    {
      "path": "algorithms/algorithm/HATTV33AANetwork.py",
      "group": "方法与 PPO 调用链",
      "purpose": "TypedRelationEdge 与 v3.3AA 基础；learned/uniform/zero 语义",
      "sha256": "6b0ee905eff4b1d5fcd203023c5aa0d00a256b39cd0aef791fa0fc3b6f13dbdb",
      "bytes": 18592,
      "lines": 436
    },
    {
      "path": "algorithms/algorithm/HATTV20Network.py",
      "group": "方法与 PPO 调用链",
      "purpose": "实体编码器、CandidateEdgeDecoder、基础 actor 与 schema 投影",
      "sha256": "7a3a5ce95102adb886b9d66ac2afd019dd5a78f999f51a605b91846aa37d1597",
      "bytes": 38376,
      "lines": 860
    },
    {
      "path": "algorithms/algorithm/gaRMAPPOPolicy.py",
      "group": "方法与 PPO 调用链",
      "purpose": "图模型路由、actor/critic 构造与动作接口",
      "sha256": "a7e11d5a43393b1f28a8c270b61178342e2c0a9e07a25954fa8da19bb89b6e14",
      "bytes": 38302,
      "lines": 870
    },
    {
      "path": "algorithms/algorithm/ga_rmappo.py",
      "group": "方法与 PPO 调用链",
      "purpose": "PPO 更新、active masks、损失与优化停止条件",
      "sha256": "c68bf923dfbca391d4ec7138c2e5e9064cfa0061d3aae231390c84c34d2797e7",
      "bytes": 16370,
      "lines": 343
    },
    {
      "path": "algorithms/algorithm/r_actor_critic.py",
      "group": "方法与 PPO 调用链",
      "purpose": "MLP/recurrent actor 与集中式 critic",
      "sha256": "cf854e669d44f8d341171a2136079656288f517ddd980fa56814cbd379ac45f2",
      "bytes": 8523,
      "lines": 173
    },
    {
      "path": "algorithms/algorithm/rMAPPOPolicy.py",
      "group": "方法与 PPO 调用链",
      "purpose": "标准 MAPPO 策略对照",
      "sha256": "b53b5014190cdcdbe9fa32d20c2281589fbc1d7e070e7c9574e4b454f41e31c6",
      "bytes": 7843,
      "lines": 142
    },
    {
      "path": "algorithms/algorithm/r_mappo.py",
      "group": "方法与 PPO 调用链",
      "purpose": "标准 PPO trainer",
      "sha256": "0f430148b51eea83dbbc4124b54f0fcd29155d729d84ce797ddfb052195efca2",
      "bytes": 13217,
      "lines": 300
    },
    {
      "path": "algorithms/utils/act.py",
      "group": "方法与 PPO 调用链",
      "purpose": "离散策略动作层",
      "sha256": "82a45f6ed7338619ab9695d30934e9c92f7aba3b432de921db0184af0f8d2a4e",
      "bytes": 9725,
      "lines": 194
    },
    {
      "path": "algorithms/utils/mlp.py",
      "group": "方法与 PPO 调用链",
      "purpose": "MLP 编码基础",
      "sha256": "a0475371f8454bc02111d8a6e27916e207a01a6c45eba8b4a52a83d9bfd65e5a",
      "bytes": 1947,
      "lines": 56
    },
    {
      "path": "algorithms/utils/rnn.py",
      "group": "方法与 PPO 调用链",
      "purpose": "可选 recurrent 层",
      "sha256": "bb6ca30a91503f012df3c45d9be9011642f9895fb9804b05530bcb49db47fe50",
      "bytes": 2929,
      "lines": 80
    },
    {
      "path": "algorithms/utils/distributions.py",
      "group": "方法与 PPO 调用链",
      "purpose": "动作分布与 log probability",
      "sha256": "811944a1317bdc40030c927b7c821a0468db4d49ff18cb7c0c5011752e3d986a",
      "bytes": 3592,
      "lines": 118
    },
    {
      "path": "runner/shared/macf_runner.py",
      "group": "方法与 PPO 调用链",
      "purpose": "collect/insert、focal state、决策掩码、训练与评价",
      "sha256": "453dfeb849d3593e42d58515bdf4038dfb2cb299ad0c6a8c572d84f53df7d719",
      "bytes": 54704,
      "lines": 1318
    },
    {
      "path": "runner/shared/base_runner.py",
      "group": "方法与 PPO 调用链",
      "purpose": "训练器/buffer 初始化及公共流程",
      "sha256": "089753fc171381140f5c2d34b98becd9072a8686e8f804eb928199c7d91c8be7",
      "bytes": 8644,
      "lines": 203
    },
    {
      "path": "utils/shared_gat_buffer.py",
      "group": "方法与 PPO 调用链",
      "purpose": "Dict on-policy 数据与 GAE",
      "sha256": "6ae61dc38042189dc2bfd236e3c7c019b1eddf73fe31d82e6c67f3cdaced5b1f",
      "bytes": 32258,
      "lines": 593
    },
    {
      "path": "utils/shared_buffer.py",
      "group": "方法与 PPO 调用链",
      "purpose": "MAPPO 对照 buffer",
      "sha256": "c9cf6f5ed3efae47653e39a506f87531a2aaabacd7df6299be71793c9d77e430",
      "bytes": 31775,
      "lines": 588
    },
    {
      "path": "utils/obs_utils.py",
      "group": "方法与 PPO 调用链",
      "purpose": "观测/state 展平及字段规则",
      "sha256": "0db7842a922fa542725a2b3890cf0d7f46bfb77cdcd614f5d7294119ca4fc1cf",
      "bytes": 2946,
      "lines": 93
    },
    {
      "path": "utils/valuenorm.py",
      "group": "方法与 PPO 调用链",
      "purpose": "价值归一化",
      "sha256": "8cd48bb7e3a3d8295baec57a2cde23ca60a973d047f358f408709ef53c6a1836",
      "bytes": 3189,
      "lines": 79
    },
    {
      "path": "envs/delivcoal/env_core.py",
      "group": "环境与执行",
      "purpose": "当前主实验物理过程、观测、event、覆盖与奖励",
      "sha256": "0012ff2bfea81808b50384d8f915c9c251ad63f81c5f60b290d0e2daca0d9543",
      "bytes": 110706,
      "lines": 2389
    },
    {
      "path": "envs/delivcoal/env_discrete.py",
      "group": "环境与执行",
      "purpose": "Gym Dict/Discrete 空间与环境封装",
      "sha256": "6c8d15b5133f40d1278e2d7cf84a58842c12c685dea0fab2d2b9ea41049124a6",
      "bytes": 7373,
      "lines": 198
    },
    {
      "path": "envs/delivcoal/env_wrappers.py",
      "group": "环境与执行",
      "purpose": "向量环境与自动 reset 接口",
      "sha256": "863e088540942fb09b21a0dab9f05669920667344c82d2a1927ee598e004843d",
      "bytes": 3103,
      "lines": 86
    },
    {
      "path": "envs/capcoal/env_core.py",
      "group": "环境与执行",
      "purpose": "CapCoal 任务生成与执行语义",
      "sha256": "b124a2d1d4923295f7c5a73b56eeacd0fa9faaa11102345ea1626fcac82c6a72",
      "bytes": 60369,
      "lines": 1422
    },
    {
      "path": "envs/capcoal/env_discrete.py",
      "group": "环境与执行",
      "purpose": "CapCoal 空间封装",
      "sha256": "5ef245ced7f53cc716210a4fac0bfd8a77549b931f0e8d7bae026d8cd97b6cf4",
      "bytes": 7035,
      "lines": 192
    },
    {
      "path": "envs/macf/env_core.py",
      "group": "环境与执行",
      "purpose": "MACF 基础环境及历史调用参照",
      "sha256": "743378fb23dca44fa5159215b4dc33c99aa238d8638f7d926a19dae254f67581",
      "bytes": 78942,
      "lines": 1738
    },
    {
      "path": "envs/gymrt2a/env_discrete.py",
      "group": "环境与执行",
      "purpose": "局部网格观测到 HATT 输入的适配",
      "sha256": "2b941a90ba5d840e4c454ebc47c403827c2cf15118b808bbb1ce8ce4a7e9a630",
      "bytes": 8844,
      "lines": 206
    },
    {
      "path": "config.py",
      "group": "训练和评价入口",
      "purpose": "参数定义与默认值；冻结有效配置字段见 evidence",
      "sha256": "bb66031ca941968f0bacc76c319ccbe945b193b6b7141e8537fe9222e8912f75",
      "bytes": 28374,
      "lines": 809
    },
    {
      "path": "train/train.py",
      "group": "训练和评价入口",
      "purpose": "训练入口、环境与 runner 选择",
      "sha256": "8e4e909d00f0866db14e6760596f56c1ff4b0876d10b8ce416b1e5953f79995c",
      "bytes": 21141,
      "lines": 551
    },
    {
      "path": "train/eval.py",
      "group": "训练和评价入口",
      "purpose": "checkpoint 加载与独立评价",
      "sha256": "3209322d0e2d0db321decfcd813a6eae46b07a1a5989759b84aea60ebcc817ce",
      "bytes": 9891,
      "lines": 300
    },
    {
      "path": "train/sweep.py",
      "group": "训练和评价入口",
      "purpose": "批量训练、checkpoint 与状态调度",
      "sha256": "694c8588f955f82dc91251e8b94d64abb4bd97bef25b9a9d0974b3211e11d254",
      "bytes": 56658,
      "lines": 1446
    },
    {
      "path": "scripts/experiments/run_staged_validation_queue.py",
      "group": "训练和评价入口",
      "purpose": "分阶段冻结 checkpoint 评估队列",
      "sha256": "6f1e797915e3c0532b70ab3bf12a3645fee99bc4eb9bef905beef7530ddab874",
      "bytes": 30292,
      "lines": 742
    },
    {
      "path": "scripts/experiments/run_final_window_queue.py",
      "group": "训练和评价入口",
      "purpose": "末期逐 episode actor 评估",
      "sha256": "6a4bd044765a4b6d49cf3085cae6c89cc7a2c7298a1b25a04d8ed5f105531a76",
      "bytes": 14607,
      "lines": 387
    },
    {
      "path": "scripts/analysis/evaluate_priority_reconfiguration.py",
      "group": "机制实验和实现核对",
      "purpose": "配对优先级事件、首次动作和闭环执行",
      "sha256": "be27bad0754cadad43949f0422de8cc2a9368777f31626b70879f849c489b871",
      "bytes": 21644,
      "lines": 596
    },
    {
      "path": "scripts/analysis/summarize_priority_reconfiguration.py",
      "group": "机制实验和实现核对",
      "purpose": "按训练 seed 汇总配对效应",
      "sha256": "db6cfe025628a6f833c6bf040d6e9bbbd9b39f15439faa3220b071b6e81113e0",
      "bytes": 7653,
      "lines": 216
    },
    {
      "path": "scripts/analysis/evaluate_source_commitment.py",
      "group": "机制实验和实现核对",
      "purpose": "共享状态库与源条件配对评价入口",
      "sha256": "3202c7b908cce8fed0cdbaddbc0bd7b986a12fe524b3d346592c39e343b84068",
      "bytes": 20413,
      "lines": 498
    },
    {
      "path": "scripts/analysis/eval_task_slot_permutation.py",
      "group": "机制实验和实现核对",
      "purpose": "任务槽重排、动作映射与配对统计",
      "sha256": "f6626ecb6e0c455edd7510bb8283363e26532b25d5ca37b2ae64276916963b9f",
      "bytes": 16528,
      "lines": 469
    },
    {
      "path": "tests/test_hatt_network.py",
      "group": "机制实验和实现核对",
      "purpose": "排列、梯度、任务上下文、schema 初始化检查",
      "sha256": "31ae3158a7b6fe8fcdfbcfa72b311b2213bddc51db364c8b682c2f7492104e9b",
      "bytes": 51589,
      "lines": 1368
    },
    {
      "path": "algorithms/algorithm/pcfa.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "本项目 PCFA 联盟分配与资源规则",
      "sha256": "7153c006672e0132f53ae71a22d3887f2a97d6a099a53b228d64b7b3b1d43e5a",
      "bytes": 22793,
      "lines": 564
    },
    {
      "path": "algorithms/algorithm/pcfa_policy.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "规则策略接口",
      "sha256": "27c0b6552f27dde39de3b24e40a2af1c500d147f2d5d713728cf5169d34b1416",
      "bytes": 6821,
      "lines": 208
    },
    {
      "path": "runner/pcfa/macf_runner.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "PCFA 运行及 RNG 流评估",
      "sha256": "a1b7c1894eeb156ebc62d07b7bc811593fb07aae693413b2770a42cee64913e0",
      "bytes": 9838,
      "lines": 227
    },
    {
      "path": "runner/pcfa/base_runner.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "PCFA runner 基础",
      "sha256": "d7166e7873549b9fdba571d49206447921222e113e2dc8b041619f3864413d1b",
      "bytes": 3088,
      "lines": 95
    },
    {
      "path": "algorithms/qmix/qmix.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "QMIX/VDN trainer",
      "sha256": "2937b005cf3701e106a8d34d3169a2ca6f1da7afb5e3f427e463b19d3ea7eea8",
      "bytes": 11524,
      "lines": 261
    },
    {
      "path": "algorithms/qmix/algorithm/QMixPolicy.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "individual-Q 策略",
      "sha256": "7266ead76a8d68641e9db739bb03f4122608d61589995b5b345b0b922042e014",
      "bytes": 10269,
      "lines": 255
    },
    {
      "path": "algorithms/qmix/algorithm/agent_q_function.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "个体 Q 网络",
      "sha256": "4912bb8d794bb51461723a8bb1e20891cfcb0aa1525f3d7f52c1d58bb5e09e00",
      "bytes": 1121,
      "lines": 30
    },
    {
      "path": "algorithms/qmix/algorithm/q_mixer.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "单调 mixer",
      "sha256": "4407a88f17e2c6af0ac2c7e5eaa0a4e40bdc5b15be5e243194155f0390419889",
      "bytes": 2031,
      "lines": 50
    },
    {
      "path": "runner/qmix/macf_runner.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "值分解 rollout 与评估",
      "sha256": "efd11997e57e38d9ba59938e8dc0c350e93894f1d1ab71464fbbb79c3b536f6f",
      "bytes": 18828,
      "lines": 398
    },
    {
      "path": "utils/rec_buffer.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "off-policy replay",
      "sha256": "7819887145daab82a0522d4e44f15a18de47f882ca59851f2fe8939e55ca2c64",
      "bytes": 17299,
      "lines": 324
    },
    {
      "path": "algorithms/algorithm/HATTGyMRT2ANetwork.py",
      "group": "本地基线与跨环境 actor",
      "purpose": "GymRT2A 空间候选 HATT actor",
      "sha256": "dd9e27c9f677dee4686c5af0180d7a5cc227f05b516f2e8d7309c85b5736da2f",
      "bytes": 6795,
      "lines": 135
    },
    {
      "path": "experiments/reproduction/delivcoal_adapter_common.py",
      "group": "外部方法适配与上游核心",
      "purpose": "共享 DelivCoal 配置读取与适配函数",
      "sha256": "4f0dc1aa5f2140fd115612a93fa1b64495f3fa594c331370de3d52441bcdca18",
      "bytes": 3400,
      "lines": 98
    },
    {
      "path": "experiments/reproduction/train_cfm_delivcoal.py",
      "group": "外部方法适配与上游核心",
      "purpose": "CFM pointer/POMO 配送训练",
      "sha256": "aec960321ec1956619cb83465977e2cd7ee81cd8ccf2a76c2edcc7b489800b51",
      "bytes": 15241,
      "lines": 378
    },
    {
      "path": "experiments/reproduction/eval_cfm_delivcoal.py",
      "group": "外部方法适配与上游核心",
      "purpose": "CFM 采样/greedy 留出评价",
      "sha256": "453257c21cd046339e1d3c7a57639bf8e5539fc82e277663a58f2f5eb6e93d56",
      "bytes": 4273,
      "lines": 114
    },
    {
      "path": "experiments/reproduction/run_marl_mrt2a_delivcoal.py",
      "group": "外部方法适配与上游核心",
      "purpose": "MRT2A 配送训练入口",
      "sha256": "1f1da5e3cfb5f8dba0b0328467b9274011f775dec802ec1eb862e09aeb226cf3",
      "bytes": 5027,
      "lines": 124
    },
    {
      "path": "experiments/reproduction/eval_marl_mrt2a_delivcoal.py",
      "group": "外部方法适配与上游核心",
      "purpose": "MRT2A 配送留出评价",
      "sha256": "877c9cc30c88b9681ee9e6dd353344086316f9065ac013cdf37b43fb2561b40a",
      "bytes": 5615,
      "lines": 144
    },
    {
      "path": "third_party/heteromrta/attention.py",
      "group": "外部方法适配与上游核心",
      "purpose": "CFM 上游 AttentionNet",
      "sha256": "7c214f8c51aee3df8acf3cd033f5229c88b8c1a84d9d76c91f38bd144e6f54ec",
      "bytes": 14524,
      "lines": 324
    },
    {
      "path": "third_party/heteromrta/worker.py",
      "group": "外部方法适配与上游核心",
      "purpose": "CFM 上游 rollout 与 success_rate 定义",
      "sha256": "b1a285190d25a191a88634a5e177245f252cf5679095523173139daef2499dc3",
      "bytes": 11392,
      "lines": 224
    },
    {
      "path": "third_party/heteromrta/LICENSE",
      "group": "外部方法适配与上游核心",
      "purpose": "CFM 上游许可",
      "sha256": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4",
      "bytes": 11357,
      "lines": 201
    },
    {
      "path": "third_party/marl_mrt2a/marl_mrt2a/marl/src/envs/delivcoal_env.py",
      "group": "外部方法适配与上游核心",
      "purpose": "空间网格、legacy20/full27、路径意图适配",
      "sha256": "a2c36aac21fe51d816ba164e49bce8d0ea5a4a3493e57f1d6996cca0b9a72a6c",
      "bytes": 18828,
      "lines": 421
    },
    {
      "path": "third_party/marl_mrt2a/marl_mrt2a/marl/src/modules/agents/custom_agent.py",
      "group": "外部方法适配与上游核心",
      "purpose": "MRT2A 上游空间策略网络",
      "sha256": "8ba538eed4c9ac8a1b00448aceac1b597a06f46990c613ffc49e65549af54930",
      "bytes": 9711,
      "lines": 229
    },
    {
      "path": "third_party/marl_mrt2a/marl_mrt2a/marl/src/learners/ppo_learner.py",
      "group": "外部方法适配与上游核心",
      "purpose": "MRT2A 上游 PPO learner",
      "sha256": "afe1562bba86741f97e4145748fd29f6a1b10e347a448eec342c7c1c68b9fc12",
      "bytes": 12641,
      "lines": 266
    },
    {
      "path": "third_party/marl_mrt2a/LICENSE",
      "group": "外部方法适配与上游核心",
      "purpose": "MRT2A 上游许可",
      "sha256": "cc3f705eb81345db8c3065e35b2de4879c6b0d28ad3bfcdfaf9f5a7acfdad234",
      "bytes": 11343,
      "lines": 201
    }
  ]
}
