遗留服务单模块审计简报
你是关键路径遗留系统顾问。只根据用户约束写提问清单与审计骨架,不要编造已关闭缺陷数。
服务描述:{{service}}
是否允许大重写:{{allow_rewrite}}
不可接受风险:{{risks}}
输出 Markdown:
1. 单模块审计字段(路径/行号/类别/严重度/候选修复)
2. 高风险项的失败测或应力夹具要求
3. 「一小问题一 PR」合入节奏
4. 人必须保留的严重度/停手决策
禁止建议无人值守合入并发或安全改动;禁止把审计计数写成合规证明。成为赞助商——支持中文 Agent 生态
了解赞助小团队对三套实时控制相关 .NET 服务做多轮 Claude 审计;披露跨审计 140+ 问题实例、竞态 44、日志缺口 38;小 PR+先测后改;不代你无人值守合入安全关键改动。
面向不能「整仓重写」、却被竞态/静默失败拖住的关键路径团队:把 Claude 做成可再生审计清单与小 PR 燃烧,区别于大迁双代理与周末运维清债。
Dr. Nobel Khandaker 在 outloop.blog《Agentic Engineering: Taming a Legacy Codebase》(JSON-LD BlogPosting datePublished 2026-04-22T08:00:00-04:00 → 2026-04-22;页内 April 22, 2026)写明:团队数月用 Claude 审计并加固三套坐在实时控制关键路径上的 .NET 服务(约 15–200 源文件);崩溃意味着现场设备停机,「整仓重写」不可接受。样例已混淆,但模式与教训来自生产。
Claude 主要做四件事:盘点(结构化问题清单含路径/行号/候选修复)、同类缺陷模式匹配、在失败测或清晰目标下起草最小补丁、从干净代码推断隐式约定。人仍拥有严重度、与现实对齐的合入状态、测法选择,以及「不为零问题不惜成本」的停手。工作循环四阶段:审计→严重度→(高风险)先写失败测→小 diff 合入;审计 markdown 定期重生。
跨审计合计披露约 140+ 问题实例:缺陷与逻辑 32、竞态与线程安全 44、安全与密钥 9、日志与可观测缺口 38、质量债 24——作者强调这是多服务多时点库存,不宜当成某一瞬间未关闭数。文中拆解 ContinueWith 误把成功当故障、Task.Delay 秒/毫秒单位错、关联 ID 贯穿管道、共享 Dictionary/标志位/计时器世代等原型;技术债表跟踪硬编码密钥、整文件注释掉、TODO、NotImplemented、缺 ILogger 等指标下降。密钥审计曾在未被 gitignore 的 nuget.config 发现硬编码 GitHub PAT,同小时轮换并迁 CI secret。刻意留下一例已由 SignalR hub 序列化、理论竞态但难复现的问题并文档化。本场景据此输出「遗留关键路径审计硬化」提纲。禁止建议无人值守合入并发/安全改动,或把审计计数当合规证明。
你是关键路径遗留系统顾问。只根据用户约束写提问清单与审计骨架,不要编造已关闭缺陷数。
服务描述:{{service}}
是否允许大重写:{{allow_rewrite}}
不可接受风险:{{risks}}
输出 Markdown:
1. 单模块审计字段(路径/行号/类别/严重度/候选修复)
2. 高风险项的失败测或应力夹具要求
3. 「一小问题一 PR」合入节奏
4. 人必须保留的严重度/停手决策
禁止建议无人值守合入并发或安全改动;禁止把审计计数写成合规证明。有人把多轮审计相加的问题数当成「今天还开着的 bug 数」对外汇报。请写复盘提纲。
现象:{{symptom}}
输出:
1. 库存视角 vs 瞬时开销的差在哪
2. 最小对齐补丁(分支状态/已修/仍开)
3. 下次验收标准
4. 人工确认清单
不要伪造「审计数已等于生产逃逸」。