--- title: 决策记录:远端采集协议与目录识别 type: curated permalink: main/projects/dfbf674f-e25b-4b7d-b64d-83d1a133c3bc/curated/决策记录远端采集协议与目录识别 stable_id: c8676bcb-775b-4fa1-bcfd-9d48fb33216c scope: project project_id: dfbf674f-e25b-4b7d-b64d-83d1a133c3bc workspace_type: development usage_profile_id: null preference_context: development document_type: decisions revision: 1 source_memory_ids: - 27055182-7b0b-4db8-a95a-76bd28d1cf98 source_checkpoint_ids: - 20c56050-403a-4440-b88f-dba7b0d17625 source_file_ids: [] source_git_commit: null source_git_commits: [] source_agent_sync_ids: [] model_connection: Sub2API model_name: git-restore source_count: 22 source_revisions: memory:b43affa7-095b-4fba-a60a-dfc0df1d9611: '1' memory:e014ec8b-372e-44b9-b45e-d905b666743b: '1' source_dispositions: processed: 22 unchanged: 0 unsupported: 0 skipped: 0 cited_source_ids: - curated_baseline:c8676bcb-775b-4fa1-bcfd-9d48fb33216c - memory:b43affa7-095b-4fba-a60a-dfc0df1d9611 - memory:e014ec8b-372e-44b9-b45e-d905b666743b job_cited_source_ids: - curated_baseline:c8676bcb-775b-4fa1-bcfd-9d48fb33216c conflicts: [] supersedes: [] preferences: [] source_cursor: 709 source_hash: 8e3b44b8ce51f954d19c8183cd4784963759cfeac42fd4e0cbca3ee197276f05 prompt_version: 2026-08-12.3 schema_version: '3' curation_job_id: null created_at: '2026-09-18T02:21:23.395226+00:00' updated_at: '2026-09-23T15:10:50.833604+00:00' tags: - commguard-next - development restored_from_commit: 6a6a895eafcca6052e81a14fca103a42635dd1c2 --- Current decisions:\n\n在远端采集阶段,决定采用 **SFTP 15022** 端口作为默认传输协议,放弃旧版 FTP 15021。FTP 的被动模式会导致 WinError 10061 失效,虽然可以列出目录,但下载失败。\n\n目录识别方面,原先仅使用「[date]」模式来定位当天目录。由于服务器文件夹采用 **YYYY‑MM‑DD**(如 2026‑09‑18)的命名,导致误报为不存在。新的实现将同时尝试三种格式:\n- `{date}`\n- `[{date}]`\n- `({date})`\n一旦任一匹配即终止报错,提升了容错性。\n\n凭证使用已移入密码库(lookup_key = *commguard‑sftpgo‑jmomcuser1*),不在代码中硬编码。