乐于分享
好东西不私藏

当 AI 开始大规模提交代码,软件工程需要重新建立"责任链"

当 AI 开始大规模提交代码,软件工程需要重新建立"责任链"

基于 GitLab《AI 问责报告》的深度解读


一、一个被忽视的转折:代码的来源正在消失

过去二十年,软件工程围绕一个核心假设运转:代码是人写的

这个假设如此基础,以至于我们几乎意识不到它支撑了整套工程体系——需求评审确保人理解对了需求,代码评审确保人没写错逻辑,CI/CD 确保人没漏掉测试,发布审批确保人做出了负责任的决策。整个软件生命周期本质上是一套"人的责任链":谁写的、谁审的、谁批的、谁上的线,出了问题找得到人。

但 AI 编码工具的普及,正在 quietly 瓦解这个假设。

GitLab 最新发布的《AI 问责报告》调研了 1528 名 DevSecOps 从业者,一个数据格外刺眼:91% 的企业已经在同时使用两个以上的 AI 编码工具,54% 使用三个以上。AI 不再是程序员的"辅助插件",而是正在演变为研发基础设施的一部分。更关键的是,代码的构成正在发生结构性变化——过去一万行代码对应一万行人工输入,现在同样的一万行代码可能来自 30% 的人工、50% 的 Copilot 补全、20% 的 Agent 自动生成。

软件组织第一次面对一个根本性问题:我们不知道生产环境里的代码到底是谁产生的

这不是危言耸听。当一个 Agent 在凌晨自动提交了一个修复补丁,经过自动化测试后自动合并到主分支,第二天自动部署到生产环境——这个过程中,传统的"责任链"已经断裂了。没有人在代码评审时逐行看过这段代码,没有人明确签署过"我确认这段代码安全",甚至没有人知道这段代码是基于什么上下文生成的。我们获得了一个更快的交付流程,却失去了一个可追溯的责任体系。

这引出了报告的核心命题:AI Accountability(AI 问责制)——当 Agent 开始大规模参与代码生产,组织必须有能力回答三个问题:这段代码从哪来?它应该做什么?上线后谁对它负责?


二、写代码已经不是瓶颈,验证代码才是

报告中最具反直觉的一组数据:

  • 78%
     的 DevSecOps 人员认为,AI 编码工具让开发者写代码的速度显著提升;
  • 73%
     认为,进入生产环境的代码质量也有所改善;
  • 60%
     认为 AI 编码的投资回报超出预期。

看起来一切向好。但紧接着的另一组数据揭示了问题的另一面:

  • 85%
    受访者认为,AI 已经把软件开发的瓶颈从"写代码"转移到了"审核和验证代码";
  • 79%
     认为,虽然个人生产力提升了,但整体软件交付速度并没有同比例加速;
  • 82%
     担心 AI 生成的代码正在制造一种"新型技术债务",而大多数组织还没有准备好应对。

这组数据的矛盾性值得深思。AI 确实让代码生产更快了,但代码生产只是软件生命周期的一个环节。当代码生成速度翻倍,下游的代码评审、安全扫描、测试验证、部署审批并没有自动翻倍。相反,它们承受了更大的压力——因为 AI 生成的代码量更大、来源更杂、上下文更缺失。

报告中的一个细节很说明问题:开发者平均只把 16% 的时间花在写新代码上,其余时间分布在安全扫描、部署管理、故障响应、代码评审等环节。AI 优化了那 16%,却让剩下的 84% 变得更加复杂。这不是效率提升,而是瓶颈转移——从生产端转移到了验证端。

更深层的含义是:当代码生成成本趋近于零,"代码本身"开始贬值。过去一个工程师一天写 200 行代码,每一行都经过深思熟虑;现在一个 Agent 一小时生成 2000 行代码,其中可能混杂了不同模型的输出、不同 Prompt 的结果、不同上下文的片段。代码的稀缺性消失了,但理解代码、验证代码、治理代码的稀缺性急剧上升

这意味着软件工程的价值正在发生一次范式转移:从"如何更快生产代码"转向"如何确保生产的代码可信"。


三、AI Agent 时代,缺失的不是能力,而是"上下文"

为什么 AI 生成的代码经常"看起来对,用起来错"?

不是模型不会写代码。GPT-4、Claude、Gemini 在编程基准测试上的表现已经证明了它们具备足够的编码能力。真正的问题是:它们缺乏上下文

想象一个场景:一个 Agent 接到任务——“优化订单模块的性能”。它打开了 OrderService.java,分析了代码结构,识别出一个可以优化的数据库查询,重写了查询逻辑,提交了代码。从局部看,这个优化是合理的。但从全局看,它可能完全忽略了:

  • 这个查询之所以这样写,是因为三年前有一个并发安全问题;
  • 订单模块的表结构即将在下个季度重构,这次修改会增加迁移成本;
  • 这个查询的结果被下游的报表系统依赖,修改后可能导致报表数据不一致;
  • 当前业务正在推行一个"订单分片"的新架构,这次优化方向与新架构冲突。

Agent 看到了代码,但没有看到代码背后的需求上下文、历史上下文、架构上下文、业务上下文。它在做局部优化,但局部优化的总和可能损害全局目标。

报告将 Context(上下文) 定义为软件工程的新核心资产:围绕代码存在的业务需求、依赖关系、安全问题、部署信息、变更历史等关联信息。当代码生成成为商品,谁能为 AI 提供最完整的上下文,谁就能让 AI 做出最正确的决策

这也解释了为什么报告强调"集成"如此重要。调研显示,只有 28% 的企业认为其软件生命周期工具是"完全集成"的,50% 认为"大部分集成",20% 认为"部分集成"。工具链的碎片化意味着上下文也在碎片化——需求在 Jira 里,代码在 GitHub 里,安全扫描在 SonarQube 里,部署在 ArgoCD 里,监控在 Datadog 里。每个工具都掌握了一部分上下文,但没有工具掌握完整的上下文。Agent 在这样的环境中工作,本质上是在信息孤岛中做局部决策。

未来的研发平台竞争,将不再是"谁的模型生成代码更快",而是"谁能为 Agent 提供最完整的软件上下文"。


四、Traceability:每一行 AI 代码都需要一张"身份证"

如果说 Context 是 AI 做正确决策的前提,那么 Traceability(可追溯性) 就是事后问责的基础。

报告中的一个数据令人警醒:在过去一年经历过生产事故的企业中,34% 无法确定 AI 生成的代码是否参与其中。不是"确定参与了",也不是"确定没参与",而是"根本无从判断"。这意味着当线上出现故障时,有三分之一的企业连排查方向都无法确定——是 AI 写的代码出了问题?还是人写的代码出了问题?是 AI 的 Prompt 有问题?还是上下文理解有问题?

这个问题之所以严重,是因为传统的代码追溯体系假设所有代码都是人写的。Git 的提交记录告诉你谁改了哪行代码,但无法告诉你这段代码最初是 AI 生成的还是人工编写的;CI/CD 的流水线告诉你代码经过了哪些测试,但无法告诉你这些测试是否覆盖了 AI 生成代码的特殊风险;代码评审记录告诉你谁审了这段代码,但无法告诉你评审者是否知道这段代码来自 AI。

未来的代码需要一张"身份证",包含以下信息:

Code Artifact├── Origin(来源)│   ├── 生成工具:Copilot / Claude Code / 自定义 Agent│   ├── 模型版本:GPT-4o / Claude 3.5 Sonnet│   └── 生成时间:2025-07-10 14:23:07├── Intent(意图)│   ├── 关联需求:JIRA-2847 订单性能优化│   ├── 业务目标:降低 P95 延迟 30%│   └── 约束条件:不影响现有报表逻辑├── Agent Trace(执行轨迹)│   ├── 使用的 Tools:文件搜索、数据库查询、测试运行│   ├── 中间步骤:识别瓶颈 → 重写查询 → 运行测试 → 提交代码│   └── 人工干预点:第 3 步由人类确认查询逻辑├── Review History(评审历史)│   ├── AI 预评审:Security Agent 扫描通过│   ├── 人工评审:张三,重点检查并发安全│   └── 合并审批:李四,确认符合发布窗口└── Deployment History(部署历史)    ├── 部署环境:staging → production    ├── 部署时间:2025-07-11 02:00 UTC    └── 回滚标记:可回滚至上一版本

这不是幻想,而是 AI 时代软件供应链的必然要求。就像今天的软件供应链安全要求追踪每一个依赖包的来源(SBOM),未来的 AI 代码供应链也需要追踪每一行代码的"生成谱系"。报告将其称为 Code Attribution(代码归因)——确定一段代码是人写的还是 AI 生成的,以及是哪个工具、哪个模型、哪个 Prompt 生成的。这是可追溯性和治理的基础。


五、Governance:AI 时代需要新的研发控制体系

Governance(治理)在软件工程语境中常常被误解为"管理制度"或"合规流程"。但在 AI 时代,Governance 首先是一个技术体系——一套能够约束、验证、审计 AI 生成代码的工程机制。

传统的软件治理基于一个简单模型:

Human Developer → Code Review → CI/CD → Production

每个环节都有明确的"人"作为责任主体。但 AI 时代的研发流程变成了:

Human  ↓Agent(理解需求)  ↓Tool(生成代码)  ↓Model(补全逻辑)  ↓Generated Code  ↓Validation Agent(自动测试)  ↓Security Agent(安全扫描)  ↓Review Agent(代码评审)  ↓Human Approval(人工审批)  ↓Deploy Agent(自动部署)  ↓Production

这个链条中,“人"的节点被大量"Agent"和"Tool"替代。传统的治理机制——比如"代码必须经两人评审”——在 Agent 参与的场景下失去了意义:如果评审者也是 Agent,谁来评审评审者?

报告调研显示,77% 的企业已经建立了某种形式的 AI 代码治理政策,但其中只有 41% 是"全面的正式政策",37% 只是"一些指导原则"。更关键的是,80% 的受访者认为企业采用 AI 编码工具的速度超过了治理政策的制定速度78% 认为现有的代码评审流程不是为 AI 生成代码的规模设计的

这意味着我们需要构建一套AI-Native SDLC(AI 原生软件开发生命周期),至少包含三个层面:

1. Agent 身份与权限管理

每个参与代码生产的 Agent 都需要一个"数字身份":它是谁?被授权做什么?可以调用哪些模型?可以访问哪些代码库?可以执行哪些操作(读/写/提交/部署)?这类似于微服务架构中的服务身份认证,但应用于 Agent 层面。

2. AI 代码审计日志

每一次 AI 生成代码的行为都需要被记录:输入的 Prompt 是什么?提供的 Context 是什么?调用了哪些 Tool?生成了哪些文件?修改了哪些逻辑?测试结果如何?这不仅是合规要求,更是故障排查的基础——当一段 AI 代码引发问题时,审计日志是唯一的"黑匣子"。

3. 自动化质量门禁

传统的质量门禁(Quality Gate)基于人工规则,比如"代码覆盖率必须达到 80%"、“SonarQube 评分不能低于 A”。AI 时代需要更智能的门禁:

Agent 生成代码    ↓Security Scan Agent(检查 AI 常见安全漏洞模式)    ↓Test Agent(生成针对性测试用例,尤其是边界条件)    ↓Context Consistency Agent(检查代码与需求文档的一致性)    ↓Review Agent(检查代码风格、设计模式、架构合规性)    ↓Human Approval(关键变更仍需人类最终确认)    ↓Deploy

这个门禁系统的核心不是"阻止 AI 生成代码",而是"确保 AI 生成的代码满足与人类代码同等甚至更高的质量标准"。


六、下一代研发平台:软件上下文基础设施的竞争

如果我们将视野从"如何治理 AI 代码"提升到"未来研发平台应该长什么样",一个更宏大的图景浮现出来。

今天的 AI 编码工具本质上是"IDE + LLM"——在编辑器里接入一个大模型,提供代码补全、生成、解释等功能。这种模式解决了"写代码"的问题,但没有解决"理解软件系统"的问题。Agent 在 IDE 里看到的是单个文件或片段,看不到整个软件系统的全貌。

未来的研发平台应该是这样的架构:

┌─────────────────────────────────────────┐│           Agent Layer                   ││  (Coding Agent / Review Agent /         ││   Security Agent / Deploy Agent)        │├─────────────────────────────────────────┤│         Context Graph                   ││  (代码-需求-测试-部署-监控的关联图谱)    │├─────────────────────────────────────────┤│      Software Knowledge Base            ││  (架构文档、业务规则、历史决策、技术债务)  │├─────────────────────────────────────────┤│        SDLC Data Plane                  ││  (统一的需求、代码、CI/CD、运维数据层)    │├─────────────────────────────────────────┤│   Code / Issue / Test / Deploy / Ops   │└─────────────────────────────────────────┘

这不是简单的工具集成,而是软件上下文基础设施的构建。它的核心是一个"软件知识图谱"——将代码、需求、测试、部署、监控、文档等所有软件生命周期数据关联成一个可查询、可推理、可更新的图结构。Agent 不是基于孤立的文件片段做决策,而是基于完整的软件知识图谱做决策。

报告在最后提出了 AI 问责制的四个支柱:

  1. Governance(治理)
    可扩展的 AI 代码审查、审批和部署控制体系;
  2. Traceability(可追溯性)
    连接每一行代码到其原始意图、生成过程和责任人;
  3. Integrated Tooling(集成工具)
    贯穿完整软件生命周期的统一平台,保持上下文不丢失;
  4. Maintainability(可维护性)
    在代码量指数级增长的背景下,保持文档、上下文和治理机制的可持续性。

这四个支柱共同指向一个结论:AI Coding 的第一阶段——让机器参与代码生产——已经基本完成。第二阶段——让机器参与软件决策——正在进行。但真正困难的第三阶段——建立一个能够约束机器、理解机器、审计机器的软件工程体系——才刚刚开始。


七、结语:从"谁写了代码"到"为什么允许这段代码存在"

回顾软件工程的历史,每一次生产力工具的革新都伴随着工程范式的调整。从汇编到高级语言,我们建立了编译器和调试器;从单体到微服务,我们建立了容器化和 DevOps;从人工测试到自动化测试,我们建立了 CI/CD 流水线。

AI 编码是又一次生产力革新,但它带来的挑战比以往任何一次都更深层——因为它不仅改变了"如何写代码",还改变了"代码是谁写的"这个根本假设。当 Agent 成为研发团队的一员,软件工程关注的问题也必须随之升级:

  • 过去我们问"这段代码是谁写的",未来我们需要回答"为什么允许这段代码存在";
  • 过去我们关注"代码有没有 Bug",未来我们需要关注"AI 生成这段代码时理解了什么、误解了什么";
  • 过去我们信任"经过人工评审的代码",未来我们需要建立"经过 AI 验证 + 人类确认的代码"的新信任机制。

GitLab 的这份报告最有价值的启示,不是"AI Coding 很有效"——这已经是行业共识。而是:AI Coding 已经完成从实验工具到研发基础设施的转变,而软件工程正在进入"AI 生成软件治理时代"。在这个时代,组织的竞争力不再取决于谁生成代码更快,而取决于谁能管理 AI 生成的软件系统——谁能提供完整的上下文、建立可追溯的责任链、构建可扩展的治理体系。

最终,软件工程回归到一个古老而常新的命题:快不是目的,可信才是


本文基于 GitLab《The AI Accountability Report》(2026)及作者对 AI 软件工程趋势的研究撰写。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-23 20:31:10 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/859427.html
  2. 运行时间 : 0.152637s [ 吞吐率:6.55req/s ] 内存消耗:4,714.80kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=9364fdaa767dc903d29b129ef5674af9
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000463s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000732s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.010804s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.010853s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000772s ]
  6. SELECT * FROM `set` [ RunTime:0.000289s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000605s ]
  8. SELECT * FROM `article` WHERE `id` = 859427 LIMIT 1 [ RunTime:0.002764s ]
  9. UPDATE `article` SET `lasttime` = 1784809870 WHERE `id` = 859427 [ RunTime:0.016678s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000302s ]
  11. SELECT * FROM `article` WHERE `id` < 859427 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.002981s ]
  12. SELECT * FROM `article` WHERE `id` > 859427 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.006075s ]
  13. SELECT * FROM `article` WHERE `id` < 859427 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.012743s ]
  14. SELECT * FROM `article` WHERE `id` < 859427 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.002143s ]
  15. SELECT * FROM `article` WHERE `id` < 859427 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001102s ]
0.154801s