mirror of
https://github.com/wwiinnddyy/LanMountainDesktop.git
synced 2026-08-19 21:53:25 +08:00
185 lines
11 KiB
JSON
185 lines
11 KiB
JSON
{
|
||
"summary": {
|
||
"projectName": "阑山桌面LanMountainDesktop",
|
||
"locale": "zh-CN",
|
||
"modelId": "agent-work-loop-v4",
|
||
"reportContractVersion": 25,
|
||
"overview": "项目拥有全面的 AGENTS.md 指导文档和 7 个 CI 工作流,但项目级可执行 Agent 能力完全缺失(零 Skills、零 Commands、零 MCP),且 12 个会话中未观察到任何变更验证行为,学习捕获机制尚未从线索阶段推进到可复用改进。",
|
||
"aiAgentPractice": {
|
||
"inspectedSurfaces": [
|
||
"Rules",
|
||
"Workflows"
|
||
],
|
||
"coverageRows": [
|
||
{
|
||
"surface": "Rules",
|
||
"scopes": [
|
||
"Project"
|
||
],
|
||
"count": 1,
|
||
"paths": [
|
||
"AGENTS.md"
|
||
]
|
||
},
|
||
{
|
||
"surface": "Workflows",
|
||
"scopes": [
|
||
"Project"
|
||
],
|
||
"count": 7,
|
||
"paths": [
|
||
".github/workflows/build.yml",
|
||
".github/workflows/code-quality.yml",
|
||
".github/workflows/installer-build.yml",
|
||
".github/workflows/issue-management.yml",
|
||
".github/workflows/plonds-comparator.yml",
|
||
".github/workflows/plonds-uploader.yml",
|
||
".github/workflows/release.yml"
|
||
]
|
||
},
|
||
{
|
||
"surface": "Skills",
|
||
"scopes": [
|
||
"Project"
|
||
],
|
||
"count": 0
|
||
},
|
||
{
|
||
"surface": "MCP",
|
||
"scopes": [
|
||
"Project"
|
||
],
|
||
"count": 0
|
||
},
|
||
{
|
||
"surface": "Commands",
|
||
"scopes": [
|
||
"Project"
|
||
],
|
||
"count": 0
|
||
},
|
||
{
|
||
"surface": "Custom Agents",
|
||
"scopes": [
|
||
"Project"
|
||
],
|
||
"count": 0
|
||
},
|
||
{
|
||
"surface": "Plugins",
|
||
"scopes": [
|
||
"Project"
|
||
],
|
||
"count": 0
|
||
}
|
||
]
|
||
},
|
||
"assignmentSummaries": [],
|
||
"dimensions": [
|
||
{
|
||
"id": "task-understanding",
|
||
"label": "任务理解",
|
||
"score": 76,
|
||
"summary": "AGENTS.md 提供了全面的 AI 指导,涵盖架构、视觉规范、插件 SDK 等关键领域;24 份架构文档和 80 份规格文件为上下文路由提供了充足依据,但部分会话仍出现执行摩擦,说明指导到执行的转化路径存在断裂。",
|
||
"findingRefs": []
|
||
},
|
||
{
|
||
"id": "controlled-execution",
|
||
"label": "可控执行",
|
||
"score": 50,
|
||
"summary": "项目有明确的启动和构建命令(AGENTS.md 中记录),但项目级可执行能力为零——无 Skills、Commands、MCP、Agents 或 Plugins 配置。Agent 只能依赖通用工具能力,无法通过项目专属的可复用工作流执行任务。",
|
||
"findingRefs": []
|
||
},
|
||
{
|
||
"id": "change-validation",
|
||
"label": "改动验证",
|
||
"score": 35,
|
||
"summary": "12 个已分析会话中未观察到任何验证命令执行。证据包报告 990 个源文件中零测试文件,仅 3 个跟踪测试文件。变更验证维度所有三项检查均处于 Unobserved 状态。",
|
||
"findingRefs": [
|
||
"no-validation-commands-observed"
|
||
]
|
||
},
|
||
{
|
||
"id": "reliable-delivery",
|
||
"label": "可靠交付",
|
||
"score": 55,
|
||
"summary": "7 个 CI 工作流覆盖了构建、代码质量、安装程序、发布等交付路径,机制已 Present。但在分析窗口内未观察到会话级别的交付验收或回滚恢复行为,证据强度停留在 Present 未达 Wired。",
|
||
"findingRefs": []
|
||
},
|
||
{
|
||
"id": "learning-capture",
|
||
"label": "经验沉淀",
|
||
"score": 40,
|
||
"summary": "检测到 3 次执行摩擦信号和 1 个重复工作候选,但均未完成语义复核。2 条 episode 记录未产生任何可复用候选。学习捕获处于线索收集阶段,尚未推进到 Loop Engineering 或纵向验证。",
|
||
"findingRefs": [
|
||
"zero-project-skill-coverage",
|
||
"unreviewed-execution-friction",
|
||
"unevaluated-lifecycle-demand"
|
||
]
|
||
}
|
||
]
|
||
},
|
||
"findings": [
|
||
{
|
||
"id": "zero-project-skill-coverage",
|
||
"title": "项目级 Skill 为零,已检测到的可复用流程候选无持久所有者",
|
||
"severity": "Low",
|
||
"reason": "资产清单确认项目级 Skills 为零,而分析器检测到 `.trae/skills/refactoring-insight/SKILL.md` 作为 Skill 候选存在(触发条件、流程、输出均已具备,仅缺验证和路由)。重复程序或知识需求没有通过覆盖检查梯级(observed → built-in → configured → extend → create)进行路由,导致可复用能力无法被 Agent 发现和调用。",
|
||
"expectedOutput": [
|
||
"通过 Loop Discovery 为每个检测到的 Skill 候选选择最小持久所有者(observed → built-in → configured → extend → create)",
|
||
"记录路由决策和覆盖梯级检查结果"
|
||
],
|
||
"expectedArtifact": "Skill 覆盖路由决策记录",
|
||
"aiFixPrompt": "/better-harness fix this issue\n\n为检测到的 Skill 候选执行覆盖检查梯级路由。\n\n## 先检查的覆盖梯级\n\n1. 检查是否存在 observed 覆盖(Agent 已在会话中自发执行的流程)\n2. 检查 built-in 覆盖(Qoder 内置能力是否已满足)\n3. 检查 configured 覆盖(已配置但未激活的 Skill)\n4. 评估 extend 或 create 的必要性\n\n## 候选 Skill\n\n- `.trae/skills/refactoring-insight/SKILL.md`:触发条件 yes,流程 yes,输出 yes,验证 no,路由 no\n\n## 验证\n\n- 运行 `node scripts/better-harness.mjs coding-agent-practices asset-baseline qoder --workspace . --language zh-CN --json` 确认 Skill 覆盖变化\n- 确认 Loop Discovery 已为候选选择了最小持久所有者",
|
||
"dimensionRefs": [
|
||
"learning-capture"
|
||
]
|
||
},
|
||
{
|
||
"id": "no-validation-commands-observed",
|
||
"title": "12 个会话中未执行任何验证命令,变更验证完全缺失",
|
||
"severity": "Low",
|
||
"reason": "12 个已分析会话中没有任何验证命令类别被观察到。证据包报告 990 个源文件中零测试文件(由证据包统计),仅 3 个跟踪测试文件存在于 LanMountainDesktop.Tests 项目中。AGENTS.md 记录了 `dotnet test LanMountainDesktop.slnx -c Debug` 命令,但该命令未在分析窗口内的任何会话中被执行。变更验证维度的三项检查(相关验证、失败诊断与修复、修复后重新验证)均处于 Unobserved 状态,维度分数上限为 59。",
|
||
"expectedOutput": [
|
||
"确认 `dotnet test` 命令可执行并覆盖核心变更路径",
|
||
"如果验证路由存在障碍(如测试项目不完整),记录具体阻塞原因"
|
||
],
|
||
"expectedArtifact": "验证路由检查报告",
|
||
"aiFixPrompt": "/better-harness fix this issue\n\n在 AGENTS.md 的「改动后必做检查」中已记录验证命令,但会话中未观察到执行。检查验证路由是否可发现且可执行。\n\n## 先核对的命令\n\n- `dotnet build LanMountainDesktop.slnx -c Debug`\n- `dotnet test LanMountainDesktop.slnx -c Debug`\n\n## 验证\n\n- 确认 `dotnet test` 在本地可执行且返回有意义的结果\n- 确认 AGENTS.md 中的测试命令与实际测试项目路径一致\n- 检查是否需要添加 Hook 在编辑后自动触发验证",
|
||
"dimensionRefs": [
|
||
"change-validation"
|
||
]
|
||
},
|
||
{
|
||
"id": "unreviewed-execution-friction",
|
||
"title": "3 次执行摩擦信号未完成语义复核,无法区分真实问题与噪音",
|
||
"severity": "Low",
|
||
"reason": "分析器聚合了 3 次 failed-event 摩擦信号(来源:2 次 disabled-source-root 警告、2 次 missing-optional-root 警告),但对应的有界会话尚未打开进行语义复核。当前无法判断这些摩擦是否导致了实际的任务失败、重试或工作丢失,还是仅为配置噪音。摩擦信号是调查线索,不是已确认的后果,但长期不复核会导致真实问题被淹没。",
|
||
"expectedOutput": [
|
||
"每个摩擦信号完成 taskFamily、outcome、friction 分类",
|
||
"区分配置噪音与真实执行障碍,对真实障碍记录修复路由"
|
||
],
|
||
"expectedArtifact": "摩擦信号语义复核报告",
|
||
"aiFixPrompt": "/better-harness fix this issue\n\n对 3 次 failed-event 摩擦信号执行有界语义复核。\n\n## 先做什么\n\n1. 运行 session-analysis insights 获取完整会话洞察\n2. 为每个摩擦信号分类:taskFamily、outcome、friction、confidence、evidenceReason\n3. 区分配置缺失(disabled-source-root、missing-optional-root)与真实执行失败\n\n## 验证\n\n- 运行 `node scripts/session-analysis.mjs insights --platform qoder --workspace . --selection all-eligible --limit 1000 --format json`\n- 确认每个摩擦信号已有分类结论\n- 对于确认为配置问题的信号,修复配置或记录为已知噪音",
|
||
"dimensionRefs": [
|
||
"learning-capture"
|
||
]
|
||
},
|
||
{
|
||
"id": "unevaluated-lifecycle-demand",
|
||
"title": "1 个重复工作候选未通过覆盖梯级路由,学习捕获停留在线索阶段",
|
||
"severity": "Low",
|
||
"reason": "工作流需求诊断检测到 1 个重复工作候选(repeated candidate),但当前手off 数量为零。该候选未被追踪通过 Skill 覆盖梯级(observed → built-in → configured → extend → create),也未通过 Loop Discovery 选择最小持久所有者。2 条 episode 记录未产生任何循环候选。学习捕获维度的 Lifecycle Opportunity Detection 处于线索阶段,Loop Engineering 和 Longitudinal Validation 均无法推进。",
|
||
"expectedOutput": [
|
||
"重复工作候选通过 Loop Discovery 选择了最小持久所有者",
|
||
"记录覆盖梯级检查结果和路由决策依据"
|
||
],
|
||
"expectedArtifact": "Loop Discovery 路由决策记录",
|
||
"aiFixPrompt": "/better-harness fix this issue\n\n对检测到的重复工作候选执行 Loop Discovery 路由。\n\n## 先做什么\n\n1. 运行 session-analysis 获取工作流需求诊断详情\n2. 识别重复候选的具体意图和范围\n3. 通过覆盖梯级检查现有覆盖\n4. 如无现有覆盖,通过 Loop Discovery 选择最小持久所有者\n\n## 验证\n\n- 确认重复候选已有明确的覆盖路由决策\n- 如果选择 Skill 形状的所有者,确认触发条件、流程、输出和验证器已定义\n- 运行 `node scripts/better-harness.mjs coding-agent-practices asset-baseline qoder --workspace . --language zh-CN --json` 确认资产变化",
|
||
"dimensionRefs": [
|
||
"learning-capture"
|
||
]
|
||
}
|
||
]
|
||
}
|