diff --git a/docs/00-project-profile.md b/docs/00-project-profile.md index c74d0cb..d8934a9 100644 --- a/docs/00-project-profile.md +++ b/docs/00-project-profile.md @@ -2,8 +2,8 @@ generated: true (请先修改 Gitea Wiki,禁止直接编辑本文件) wiki_page: Project-Profile wiki_url: https://git.ilapage.cn/chengma/cmsp/wiki/Project-Profile.- -wiki_revision: 31121357f505262b339bfb1816f2008fd38f04b8 -synchronized_at: 2026-09-02T03:57:21Z +wiki_revision: 851951b8efc73aff595e100c24d7404bec45a09a +synchronized_at: 2026-09-02T07:25:55Z # 项目档案 @@ -39,8 +39,8 @@ synchronized_at: 2026-09-02T03:57:21Z | 项目 | 内容 | |---|---| | DevHarness 来源仓库 | `D:/OPC/dev_harness`(对应 `https://git.ilapage.cn/OPC/dev_harness`) | -| 当前基线提交 | `c13f6adb76c2ffbcae080dabf1df869a241e8f63` | -| 最后接入或升级日期 | 2026-09-02 | +| 当前基线提交 | `40b99387adc184274c43fda5f7efb3746642e27a` | +| 最后接入或升级日期 | 2026-09-02(接入 `c13f6ad`,同日升级至 `40b9938`,见工单 #1) | | 项目适配说明 | 完整保留 Harness 规则与 `dev_scripts/` 工具。治理模式选择轻量。本项目无常驻服务,不创建 `Deployment-and-Operations` 页面;`Deployment-Template` 仅作为模板保留。 | ## 子项目与交付单元 @@ -72,6 +72,7 @@ synchronized_at: 2026-09-02T03:57:21Z | 外部依赖程序 | Google Chrome(专属 Profile,用于淘宝登录与 CDP)、`ffprobe`(视频完整性校验) | | 外部服务 | 货憨憨 ERP HTTP 接口;淘宝 MTOP 以图搜接口;验证码识别为外部 HTTP OCR 服务 | | 支持环境 | Windows 10 及以上;不支持 macOS 与 Linux | +| 开发命令行 | PowerShell 7 `pwsh`;不套用 Bash 语法,见[本地开发与验证](04-local-development-and-verification.md) | | 常驻服务 | 无。本项目是单机桌面程序,不部署服务端 | ## 迁移来源 diff --git a/docs/01-workflow.md b/docs/01-workflow.md index 58ae254..33240b5 100644 --- a/docs/01-workflow.md +++ b/docs/01-workflow.md @@ -2,8 +2,8 @@ generated: true (请先修改 Gitea Wiki,禁止直接编辑本文件) wiki_page: Development-Workflow wiki_url: https://git.ilapage.cn/chengma/cmsp/wiki/Development-Workflow.- -wiki_revision: bbc3e4fa231918f0763e34da282c154b3188406c -synchronized_at: 2026-09-02T03:57:21Z +wiki_revision: bdde4b3aa64377fb9a3db1314f3f203cdba7e69b +synchronized_at: 2026-09-02T07:25:57Z # 开发工作流 @@ -15,6 +15,15 @@ synchronized_at: 2026-09-02T03:57:21Z - Git 保存源码、与特定代码版本强绑定的文档,以及 Wiki 的本地镜像。 - 本地 `docs/` 仅供浏览和审查,不是长期文档编辑入口。 +## 语言与术语 + +- 用户可以使用中文、英文或合理的中英混合语言提出需求和补充信息;Agent 不要求用户先翻译。 +- Agent 默认使用中文进行分析、回复、工单记录和内部项目文档维护。 +- 代码标识符、命令、参数、路径、文件名、API 名称、协议名、日志和错误原文保持原样,不做会影响搜索、复制、执行或排错的翻译。 +- commit、revision、middleware 等通用英文术语可以保留;可能影响初级维护者理解时,在首次出现处补充简短中文解释,不反复注释。 +- 用户明确要求某次回复、交付物或对外文档使用其他语言时,按该次明确要求执行;默认中文不是禁止其他交付语言的门禁。 +- 引用外部材料时保留必要原文并用中文说明结论;不得为了语言统一改写事实、错误信息或接口契约。 + ## Gitea 交互与工单最小读取 - 所有 Gitea 工单和 Wiki 的查询、创建、更新、评论、状态变更及关闭操作,优先使用项目已配置的 Gitea MCP。 diff --git a/docs/04-local-development-and-verification.md b/docs/04-local-development-and-verification.md index 5398bfb..047f7cf 100644 --- a/docs/04-local-development-and-verification.md +++ b/docs/04-local-development-and-verification.md @@ -2,8 +2,8 @@ generated: true (请先修改 Gitea Wiki,禁止直接编辑本文件) wiki_page: Local-Development-and-Verification wiki_url: https://git.ilapage.cn/chengma/cmsp/wiki/Local-Development-and-Verification.- -wiki_revision: 62df45bceed4d638250dcc514c1db5940b2185ce -synchronized_at: 2026-09-02T03:57:23Z +wiki_revision: c539cdacdad897d81aee331d4d787e5a9f85a8cd +synchronized_at: 2026-09-02T07:25:58Z # 本地开发与验证 @@ -34,6 +34,41 @@ synchronized_at: 2026-09-02T03:57:23Z - 只有确实出现乱码时才调整当前进程的输出编码,不要默认设置。 - 不使用 `-ExecutionPolicy Bypass`。确有可信 `.ps1` 被执行策略阻止且没有更小替代方案时,才对该次进程使用并在工单记录原因。 +### PowerShell 语法与外部命令 + +- Windows 环境默认使用当前 PowerShell 语法,不套用 Bash 的 heredoc、变量、路径、引号或反斜杠转义规则。只有明确调用 Bash、WSL 或 Git Bash,并确认路径与编码边界时,才使用 Bash 专用语法。 +- 不需要变量展开的正则和字符串优先用单引号;单引号字符串内部的单引号写成两个单引号。需要变量展开时才使用双引号。 +- 正则同时包含单双引号或转义复杂时,优先赋值给变量、使用 `rg -e`,或拆成语义等价的简单查询;不得为了避开转义改变 AND/OR 条件或重复执行无关搜索。 + +```powershell +rg -n 'error|warning' docs +$pattern = 'can''t match "value"' +rg -n -e $pattern docs +``` + +PowerShell 不支持 Bash heredoc。需要把多行 Python 送入标准输入时,使用单引号 here-string,避免 PowerShell 展开 Python 中的 dollar sign(`$`)等内容。起始标记后必须立即换行,结束标记必须单独占一行: + +```powershell +@' +print("hello") +'@ | python - +``` + +`foreach`、`if` 等语句块不能裸放在管道左侧;需要管道输出时使用 `$()`、`@()` 或先赋值。普通命令输出无需包装: + +```powershell +@(foreach ($number in 1..3) { $number }) | + Measure-Object +``` + +不要把含 `*` 的搜索路径直接作为 `rg` 路径参数。优先传入真实目录,并用 `-g/--glob` 让 ripgrep 筛选路径: + +```powershell +rg -n -g '*.md' 'PowerShell' docs +``` + +只有确实需要把实体路径列表交给其他命令时,才使用 `Get-ChildItem` 展开并传递 `.FullName`;不要把 `Get-ChildItem -Filter` 设为所有 `rg` 搜索的固定前置。 + ## 第一次运行 ```powershell