docs: add offline evidence handoff plan

This commit is contained in:
zhaoyilun
2026-07-06 20:46:49 +08:00
parent bbd2be876c
commit d773571402
6 changed files with 1014 additions and 8 deletions

View File

@@ -352,4 +352,60 @@
- 是否过度设计:未过度设计。两段提交节奏已按执行前审批用于解决审查日志追加后的 dirty 问题;提交粒度虽被 opencode 记录为略粗,但仍按交付类型分组,未混入无关文件,属于非阻塞质量观察,不构成返工理由。
- 是否遗漏无阻塞性遗漏。N11 验证、提交、临时产物清理、Python MCP 缺失确认、无 search/send/file tools 等关键验收已有审查证据;唯一剩余事项是 N11-B 将审查追加的 process docs 精确提交并核对 `git status --short` clean这属于已批准两段节奏的收尾不是 N11 业务目标缺口。若 N11-B 后仍非 clean、出现 broad stage、提交 build 产物或出现 N12/业务动作文件,应立即停止并返工。
- 是否允许进入下一轮:不允许实际进入 N12停止在 N12 前。原因是当前事实没有用户已手动登录并打开 iSphere 主窗口的前置条件;即使 N11-B 完成 clean也只能进入“等待用户手动登录/打开 iSphere 并重新发起 N12 执行前审批”的状态,不能自动开始 real logged-in UIA capture。
- 业务经理结论:批准 N11-A 通过;批准执行 N11-B 最终 process checkpoint 精确提交,提交范围仅限审查阶段追加/修改的 process docs并由主协调核对 `git status --short` clean。不要求返工不停止项目本身但明确不批准实际进入 N12不得真实采集、不得搜索/发送/文件/自动登录/注入/hook/读内存。N12 必须等待用户手动登录并打开 iSphere 可见主窗口后,再单独提交执行前审批。
- 业务经理结论:批准 N11-A 通过;批准执行 N11-B 最终 process checkpoint 精确提交,提交范围仅限审查阶段追加/修改的 process docs并由主协调核对 `git status --short` clean。不要求返工不停止项目本身但明确不批准实际进入 N12不得真实采集、不得搜索/发送/文件/自动登录/注入/hook/读内存。N12 必须等待用户手动登录并打开 iSphere 可见主窗口后,再单独提交执行前审批。
## 2026-07-05 N11 后 / N12 前业务边界变更判断
- 当前节点N11 已完成后的 N12 前业务边界变更判断;用户说明当前环境无法登录,只能在别的沙盒登录后复制所需文件/证据。本轮只判断业务路线与边界,不进入 N12不看代码。
- 本轮目标:
- 判断“从别的沙盒复制文件/证据”是否满足原 N12 Real logged-in UIA capture gate。
- 判断是否允许新增离线前置节点(建议命名为 N12-pre / offline evidence intake用于先定义可复制证据包清单、脱敏边界和验收规则。
- 明确离线证据包允许/禁止内容避免密码、token、聊天内容、联系人隐私、发送/文件能力、自动登录、注入、hook、读内存或规避安防。
- 判断是否允许当前主会话先给用户一份“需要复制哪些文件/证据”的清单,以及是否立即更新计划文档。
- 业务判断:从别的沙盒复制文件/证据不满足原 N12。原 N12 的关键前置条件是用户在当前可执行环境手动打开并登录 iSphere且 iSphere 主窗口可见,然后使用当前 Go MCP 只读工具 `win_helper_scan_windows` / `win_helper_dump_uia` 采集真实窗口 UIA离线复制证据不能证明当前环境存在可见登录窗口也不能替代当前环境的实时 UIA capture gate。因此 N12 仍被阻断。但允许新增 N12-pre / offline evidence intake 作为 N12 前置路线,用于接收和审查用户从别的沙盒导出的脱敏证据包,目标是判断是否足以改写后续计划或准备离线分析,不允许把它当作 N12 已通过。
- 是否跑偏:未跑偏。新增离线前置节点是对“当前环境无法登录”的业务约束适配,仍围绕只读 UIA 证据、窗口/控件识别和后续 selector 设计准备;不允许搜索联系人、打开会话、发送消息、发送/接收文件、自动登录、注入、hook、读内存或规避安防。
- 是否过度设计:未过度设计。建议先给用户一份最小证据清单和脱敏边界,等待文件到位后再审批/维护正式 N12-pre 计划;当前不需要立即重写大计划或创建复杂 intake 流程,避免在没有证据样本前过度设计。
- 是否遗漏需补齐离线证据包清单与边界。允许包含1) 证据清单 manifest来源沙盒、采集时间、iSphere/IMPlatform 版本、OS 版本、是否手动登录但不含账号密码2) 使用只读方式导出的 `scan_windows` 候选窗口结果3) 手动登录后主窗口的脱敏 `dump_uia` JSON字段限于窗口/控件识别所需的 `name``control_type``automation_id``class_name``children`、窗口标题/进程名/句柄等元数据4) 脱敏截图可选必须遮挡联系人、头像、聊天内容、账号信息、组织信息和任何个人数据5) 安装/版本元数据可执行文件路径、文件版本、产品版本、哈希、必要资源文件名列表6) 采集步骤记录与校验摘要。禁止包含密码、token、cookie、session、证书、私钥、自动登录材料、联系人列表、聊天消息、文件附件、下载内容、个人资料、原始数据库/缓存、未脱敏日志、内存 dump、进程 dump、抓包、注入/hook/读内存产物、发送/接收文件能力证明或任何可用于绕过登录/安防的数据。
- 是否允许进入下一轮:不允许实际进入 N12允许下一步仅进入 N12-pre / offline evidence intake 的准备动作,即主会话可以给用户“需要复制哪些文件/证据”的清单和脱敏要求。收到证据包后,必须先做新的执行前审批,再决定是否更新 `docs/go-mcp-minimal-plan.md` 增加 N12-pre 或改写后续路线;不得直接把离线证据视为 N12 通过。
- 业务经理结论N12 不满足,停止在 N12 前;批准离线证据包路线作为 N12 前置补充,不批准真实采集、不批准搜索/发送/文件/自动登录/注入/hook/读内存。当前主会话允许先给用户最小操作清单;本轮不要求立即修改计划文档,等用户证据到位后再审批新节点和必要计划更新。
## 2026-07-05 N12-pre 离线证据路线设计审查
- 当前节点N11 后、N12 前的业务边界变更设计审查;审查逆向子智能体新增的 `docs/offline-evidence-intake-plan.md``docs/go-mcp-minimal-plan.md` 中的 N12-pre 插入,以及 `docs/go-mcp-runbook.md` 的无法当前环境登录指引。本轮只做业务设计审查,不看代码、不做代码审查、不进入真实 N12。
- 本轮目标:
- 判断 N12-pre Offline evidence intake 是否能在当前环境无法登录的约束下,作为 N12 前置补充路线承接用户从其他沙盒复制的脱敏证据。
- 判断该路线是否仍保留原 N12 的 live current-environment UIA capture gate不把离线证据误判为 N12 pass。
- 判断证据包清单、允许/禁止边界、脱敏规则、manifest/scan/dump 三个 required files 是否足够清晰。
- 判断是否允许主协调基于文档向用户提出文件/证据包要求,以及这些文档是否应立即提交。
- 业务判断:通过。新的 N12-pre 路线符合业务目标:它承认当前环境无法登录的现实,给出可复制、可脱敏、可验证形状的离线证据包路线,同时明确 `offline_pre_only_not_n12_pass`,不把离线证据等同于原 N12。required files 聚焦 `manifest.json``scan_windows-redacted.json``dump_uia-main-redacted.json`,与后续 UI 结构/selector 可行性分析直接相关,交付价值明确。
- 是否跑偏:未跑偏。文档明确 N12-pre 只能使用 `version/self_check/scan_windows/dump_uia` 四个只读 op禁止 password/token/cookie/session/contact/chat/attachment/raw db/cache/memory dump/packet capture/hook/injection/read memory也禁止搜索联系人、打开会话、发送消息、发送/接收文件、自动登录和规避安防;计划仍保留原 N12 必须当前环境手动登录并 live UIA capture 的条件。
- 是否过度设计:未过度设计。相较此前“只要几个文件”的粗略清单,当前 manifest schema、redaction rules、required-file checks 和 repository-side validation 是必要的业务边界设计,用于防止用户复制敏感数据或误把离线证据当作 N12 通过。当前仍停留在文档和清单层,没有新增工具、验证器、代码或脚本,因此没有过度工程化。
- 是否遗漏:无阻塞性遗漏。文档已覆盖 N12-pre 定位、三类必需文件、可选文件、禁止内容、脱敏规则、保存路径、校验方式、离线分析允许/禁止范围,以及进入真正 N12 的条件。非阻塞建议:主协调对用户输出时应使用简化版清单,强调“先脱敏再复制”和“离线包不等于 N12 通过”;收到证据后仍需单独做 N12-pre 执行前审批/验收审查。
- 是否允许进入下一轮:允许主协调基于该文档向用户提出文件/证据包要求;不允许进入真实 N12不允许真实采集不允许搜索/发送/文件/自动登录/注入/hook/读内存。建议下一步只是向用户确认能否按清单提供脱敏证据包,并等待文件到位后再审批 N12-pre intake。
- 业务经理结论:批准 N12-pre 离线证据路线设计;允许主协调向用户提出 evidence package 要求。提交节奏上,不建议立即提交这些文档;建议先让用户确认清单是否可提供、是否存在必须调整的字段,确认后再做一次精确的 N12-pre docs checkpoint 提交。若用户确认无调整,则提交范围应仅限相关文档和过程日志,不得混入代码、脚本、真实证据或构建产物。
## 2026-07-05 N12-pre full sandbox artifact bundle 路线审查
- 当前节点N11 后、N12 前的 N12-pre 离线证据接入路线扩大审查;审查逆向子智能体将 N12-pre 调整为两种 intake 模式后的业务合理性。本轮只做业务设计审查,不看代码、不做代码审查、不进入真实 N12。
- 本轮目标:
- 判断推荐模式 AFull sandbox artifact bundle 是否能解决用户“不懂 manifest/scan/dump JSON只能复制登录后测试沙盒文件”的现实问题。
- 判断模式 BMinimal redacted UIA package 是否仍可作为高级可选路线保留。
- 判断新路线是否仍明确 not N12 pass且后续处理只做 read-only inventory不直接运行未知二进制、不修改原始拷贝文件。
- 判断是否允许主协调现在给用户一份“复制完整测试沙盒证据包”的简化清单,以及是否继续暂不提交,等待用户确认可提供哪些目录后再 checkpoint。
- 业务判断通过。Full sandbox artifact bundle 路线符合当前业务目标:用户无法在当前环境登录且不理解 JSON要求“从长计议”并复制登录后的测试沙盒安装文件和用户目录推荐用户只复制目录比继续要求 manifest/scan/dump 更可执行。文档将 install、user profile、ProgramData、shortcuts、TEMP/importal/localcache 等目录纳入结构化证据包,并特别提示 `importal\localcache``LoginLog``IMPP.Util.dll` 等线索,有助于后续只读清点、离线分析和设计后续路线。
- 是否跑偏:未跑偏。文档明确 full bundle 仍是 N12-pre不是 N12 passN12 仍要求当前环境手动登录和 live UIA capture。文档也明确收到后先做 read-only inventory不直接运行未知二进制不把测试沙盒文件用于自动登录不设计搜索联系人、打开会话、发送消息、发送/接收文件、注入、hook、读内存或规避安防能力`git diff --name-only -- '*.go' '*.cs' 'scripts/*.ps1'` 无输出,说明本轮未改代码/脚本。
- 是否过度设计:未过度设计。相比之前只要求 JSON 的路线full bundle 模式更贴合用户实际能力目录分区、copy-notes、metadata、raw/install、raw/user-profile、raw/programdata、raw/temp-importal-localcache 是为了让非技术用户能复制,同时让后续清点可控。保留 minimal redacted UIA package 作为高级可选不会增加执行负担,也避免丢失原先 UIA 证据路线。
- 是否遗漏:无阻塞性遗漏。已覆盖两种 intake 模式、推荐路线、目录结构、关键候选路径、not N12 pass、read-only inventory、禁止运行未知二进制、禁止修改原始证据、禁止自动登录/发送/文件/注入/hook/读内存/规避安防。非阻塞补充要求:主协调给用户清单时应强调这是“测试沙盒证据包”,不要提交 raw evidence 到 Git如果压缩包内有真实个人/生产数据,应先说明并隔离处理;收到后需先做 N12-pre 执行前审批和只读 inventory 审查。
- 是否允许进入下一轮:允许主协调向用户给出“复制完整测试沙盒证据包”的简化清单;不允许进入真实 N12不允许开始真实采集不允许运行或使用复制来的未知二进制不允许基于复制文件实现搜索/发送/文件/自动登录/注入/hook/读内存。下一步应只是让用户确认能提供哪些目录/压缩包,并等待证据到位或用户反馈后再决定 N12-pre intake 审批。
- 业务经理结论:批准 full sandbox artifact bundle 路线;允许主协调现在给用户简化清单。提交节奏上,继续暂不提交这些文档,先让用户确认可提供哪些目录和是否有压缩包;确认后再做精确 N12-pre docs checkpoint。后续提交范围应仅限相关文档和过程日志不得提交 raw 证据包、代码、脚本或构建产物。
## 2026-07-05 N12-pre 完整测试沙盒包扩大清单判断
- 当前节点N11 后、N12 前的 N12-pre 离线证据接入边界扩大判断;用户补充“我拥有完整权限”,且说明当前材料均为测试文件。本轮只做业务边界判断,不看代码、不做代码审查、不进入真实 N12。
- 本轮目标:
- 判断是否允许把用户复制清单从“相关目录优先”升级为“完整测试沙盒包优先”。
- 判断是否允许主协调给用户最终清单:完整复制 `C:\Users\<登录用户>`、安装目录、`C:\ProgramData` 相关或完整副本、`C:\Users\<用户>\AppData\Local\Temp\importal`、快捷方式、进程/版本/目录树元数据,并建议压缩为 zip/7z。
- 明确保留边界:离线包不是 N12 pass收到后先做 read-only inventory不直接运行未知二进制不进入发送/文件/自动登录/注入/hook/读内存。
- 判断是否需要现在更新文档,还是等用户提供包后再 checkpoint。
- 业务判断:允许扩大清单。用户已明确拥有完整权限且材料是测试文件,在业务上可以将 N12-pre 的推荐输入升级为“完整测试沙盒包优先”,因为完整用户目录和完整/相关 ProgramData 更能保留登录后运行环境、缓存、配置、日志、快捷方式和版本线索,降低用户漏拷关键目录的风险,也比要求用户识别 JSON 或具体应用目录更可执行。
- 是否跑偏:未跑偏。该扩大只改变 N12-pre 证据包收集范围,不改变 N12 通过条件;完整测试沙盒包仍是 offline pre evidence不等于当前环境 live UIA capture。收到后只能做 read-only inventory 和离线分析,不得直接运行未知二进制,不得把包内 credential-like/test session 材料用于登录或冒充用户,不得实现搜索联系人、打开会话、发送消息、发送/接收文件、自动登录、注入、hook、读内存或规避安防。
- 是否过度设计:未过度设计。对非技术用户而言,“完整测试沙盒包优先”比逐项筛选相关目录更简单,且能避免关键 AppData/ProgramData/Temp/importal/localcache 漏拷;压缩为 zip/7z、附目录树/进程/版本元数据属于必要交付包装,不是功能扩张。后续只读 inventory 再决定哪些文件有分析价值,能减少前期沟通成本。
- 是否遗漏无阻塞性遗漏。最终清单应至少包括1) 完整 `C:\Users\<登录用户>` 测试用户目录2) iSphere/IMPlatformClient 安装目录3) `C:\ProgramData` 中相关目录,若用户确认都是测试环境且体积可接受,可提供完整 `C:\ProgramData` 副本4) `C:\Users\<用户>\AppData\Local\Temp\importal``importal\localcache``LoginLog` 等 Temp/cache 线索5) 桌面和开始菜单快捷方式6) 必要系统元数据,如目录树、文件列表、文件版本/哈希、运行进程列表、安装程序列表、OS 版本、环境变量摘要。仍需强调 raw evidence 不提交 Git进入仓库后应放在 `runs/offline-evidence-intake/<evidence-id>/` 或由主协调指定的非提交证据位置。
- 是否允许进入下一轮:允许主协调向用户发出最终“完整测试沙盒包优先”清单;不允许进入真实 N12不允许运行复制来的未知二进制不允许开始发送/文件/自动登录/注入/hook/读内存能力。用户提供包后,应先做 N12-pre intake 执行前审批与只读 inventory 计划,再开展文件清点。
- 业务经理结论:批准将复制清单扩大为完整测试沙盒包优先。当前不建议立即更新/提交文档;先让用户按最终清单提供或确认可提供哪些目录,等证据包到位或用户确认后,再按实际情况做精确 docs checkpoint。若后续更新文档提交范围只能是相关文档和过程日志不能提交 raw 测试证据包、代码、脚本或构建产物。

View File

@@ -38,3 +38,19 @@
- 关键输出:
- `{"ok":true,"configuration":"Release","platform":"anycpu","csc":"C:\\WINDOWS\\Microsoft.NET\\Framework64\\v4.0.30319\\csc.exe","source_dir":"E:\\coding\\codex\\isphere-ai-bridge\\native\\ISphereWinHelper","output":"E:\\coding\\codex\\isphere-ai-bridge\\runs\\win-helper\\ISphereWinHelper.exe"}`
- `{"ok":true,"helper":"E:\\coding\\codex\\isphere-ai-bridge\\runs\\win-helper\\ISphereWinHelper.exe","version":"0.1.0","scan_window_count":30,"uia_available":true}`
## 2026-07-05 19:45:57 +08:00 - N12-pre offline evidence intake route design
- 当前 helper 状态:未变更;本轮只确认现有 helper 边界仍为 `version` / `self_check` / `scan_windows` / `dump_uia` 四个只读 op。
- 是否修改 C# 文件:否。
- 验证命令:未运行 helper 构建/验证;本轮为文档设计与边界复核,读取 `docs/go-csharp-helper-boundary.md``docs/go-mcp-runbook.md``native/ISphereWinHelper/Program.cs``UiaDumper.cs``WindowScanner.cs` 确认 op 与参数。
- 验证结果:新增 `docs/offline-evidence-intake-plan.md`,并在 `docs/go-mcp-minimal-plan.md` 中把离线证据接入定义为 `N12-pre`,明确不替代 real logged-in UIA capture gate`docs/go-mcp-runbook.md` 增加“当前环境无法登录”指引。
- 是否保持只读边界:是;未写 Go/C# 功能代码,未创建新 MCP server/tools未修改 helper 行为,未进入真实 N12未采集真实 iSphere 登录 UIA未点击、输入、发送、上传、下载未设计搜索联系人、打开会话、发送消息、发送/接收文件、自动登录、注入、hook、读内存或规避安防能力。
## 2026-07-05 21:31:11 +08:00 - N12-pre full sandbox artifact bundle update
- 当前 helper 状态未变更本轮只更新离线证据接入设计helper 仍保持 `version` / `self_check` / `scan_windows` / `dump_uia` 四个只读 op 边界。
- 是否修改 C# 文件:否。
- 验证命令:未运行 helper 构建/验证;本轮为文档更新与边界复核。
- 验证结果:`docs/offline-evidence-intake-plan.md` 已调整为两个 intake 模式A. Full sandbox artifact bundle推荐用户只复制目录不要求理解 JSONB. Minimal redacted UIA package可选高级用户`docs/go-mcp-minimal-plan.md``docs/go-mcp-runbook.md` 已同步说明 full bundle 是 N12-pre不等同 N12 通过。
- 是否保持只读边界:是;未写 Go/C# 功能代码,未创建新工具,未修改 helper 行为,未进入真实 N12未真实采集 iSphere 登录 UIA未设计发送消息、发送文件、接收文件、自动登录、注入、hook、读内存或规避安防能力。