该技能用于对现代化 Next.js 应用与旧版 Express 应用进行并行架构与交互审计,目标是通过系统性对比两者实时行为与内部逻辑,证明新代码为旧代码的功能等价替代。
前置条件:旧版应用运行于 http://localhost:3000,新版应用运行于 http://localhost:3001,且两者须指向同一 MongoDB 实例以保证数据一致。
审计前环境准备:使用 docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Ports}}" 检测占用 0.0.0.0:27017 的容器;若为非本次审计目标数据库,用 docker stop <ID> 停止;在两个目录分别执行 docker compose down,再在 modern-app/ 执行 docker compose up -d mongodb 启动统一数据库;确认仅一个 MongoDB 容器绑定主机端口,并验证两应用可无错误连接 localhost:27017。
审计步骤:步骤0 校验数据库与容器状态;步骤1 通过 browser_subagent 并行点击主路由与子资源路由、提交相同表单数据、对比空状态;步骤2 用 curl(经 run_command)直接查询 API,对比请求字段名与类型、响应 JSON 结构(可用 curl | jq . 检查包裹与否)、HTTP 状态码(200/201/400/404/422/500)是否一致;步骤3 用 curl 构造已认证与未认证请求,测试“仅所有者”“仅角色”逻辑,如未授权跳转 /login 或返回 401、跨用户资源 DELETE 的防护行为;步骤4 用 curl 注入畸形数据(空 JSON {}、无效 ID、超长字符串),严格对比错误数组结构;步骤5 将结果整理为 docs/verification/Functional_Parity_Report.md,将发现归类为 Confirmed Parity、Functional Gap(缺失逻辑)或 Intentional Drift(有记录原因的现代化变更);步骤6 如有差距则修复新版应用并重复上述步骤,直至完全等价。
限制:资料未提供该技能的价格、平台支持范围及版本信息。