AI Library · 知识库

# 验证记录

编写规范

记录按日期和实际范围解读,不把预期输出、阅读核对或页面渲染等同于代码运行通过。状态定义与证据要求见维护规范。

# 当前逐篇状态索引

状态核对日期:2026-10-18。下表覆盖九章的 64 篇正文;同一行列出的文章分别具有该行状态,未单列通过的语言不继承其他语言的结果。待复核表示当前没有可绑定该文章代码版本的完整运行证据,不等于已证明失败,也不追认正文中孤立的“全部通过”。导航、模板与维护文档不作为代码示例计数。

文章 当前范围与证据
命令分派、变量与可变性、数字与运算、数值转换、定义数据类型、能力约束、函数参数、泛型数据结构、泛型函数 TypeScript 完整程序编译及正文驱动通过,见完整示例修复验证;其余语言待复核
分页偏移 八语言正文驱动均通过,代码版本、命令及边界见本次修复验证;旧版 JS 失败记录单独保留,不再代表当前实现
端口解析 TypeScript 的短驱动和 16 项边界通过,见本次修复验证;其余七种语言待复核,不从旧语言汇总推定通过
日志统计器、配置加载器、HTTP JSON 客户端 每篇均为部分验证:JavaScript 无参数演示通过,版本哈希和未覆盖范围见抽样执行;Python 和独立 CLI 路径待复核
查找首个匹配文件、判断库存、最小值与最大值 各篇八语言均待复核;库存旧用例说明保留在历史段,但缺少当时源代码标识
相等性、字符串格式化、空值与默认值、Unicode 各篇八语言均待复核
聚合、复制与共享、筛选与变换、惰性处理、字典与集合、顺序集合、排序 各篇八语言均待复核
组合与委托、数据与行为、有限状态、处理状态、方法与封装 各篇八语言均待复核
继承与重写 Java、Kotlin、Python、C++、TypeScript、Go、Rust 示例待复核
报告输出、创建有效对象 报告输出的 Rust、Go、Java、Python 待复核;有效对象的 Rust、Java、Python 待复核。报告旧用例没有绑定当前代码版本
别名与可变性 八语言均待复核
C++ RAII、Rust 所有权 分别为 C++、Rust 待复核;编译失败的教学反例也没有负向编译证据
确定性清理、区分失败原因、传播失败、恢复与降级 各篇 Go、Java、Python 均待复核
闭包捕获、扩展操作 各篇八语言均待复核
元编程 Rust、C++、Python、Go 示例待复核
反射与 RTTI Go、Java、Python、JavaScript、Rust 示例待复核
限制并发量、超时与取消 各篇 Go、Python 均待复核
并发等待 Python、JavaScript 待复核
CPU 并行、消息传递、共享状态 CPU 并行的 Go、Rust、Java、Python、JavaScript;消息传递的 Go、Rust、Java、Python;共享状态的 Rust、Java 均待复核
工程生态 执行状态不适用;本次核对部署事实来源,不宣称做过构建或体积测量,见修复验证
抽象成本、兼容演进、错误处理哲学、语言总结、内存资源、面向对象与组合、保证与责任、简洁与显式、静态与动态、类型与业务建模 均无独立可执行代码,执行状态不适用;引用实现的通过状态只能逐项引用,不因文章标题或设计推论获得运行证据。本轮未全面复核这些分析的来源

# 2026-10-18 TypeScript 完整示例修复验证

检查了 docs/ 下全部 Markdown 中的 TypeScript 围栏与跨节复制说明,找到 10 篇需要从 JavaScript 拼装的主示例,现均改为包含实现和驱动的完整程序。其余短块为明确标注的验证输入数据,不作为独立程序。本次检查针对示例完整性,不代表全库语义审计。

环境:Windows x64,TypeScript 5.9.3(npm 缓存中的隔离编译器),Node.js v22.17.0;未修改项目依赖。逐篇提取 TypeScript 完整代码块到独立系统临时目录的 main.ts,执行 tsc --strict --target ES2022 main.ts,再执行 node main.js。全部编译与运行退出码为 0,编译无诊断,运行 stderr 为空;正文内检查均未失败。下表记录实际 stdout,\n 表示换行,哈希基于代码块 UTF-8 字节、LF 换行且保留末尾换行。

文章 实际 stdout 源码 SHA-256
命令分派 started\nunknown command\n 4b6b497814bc1786ddd0066b0047e72879cb0cc368391b5470e91c3e4224cd19
变量与可变性 3\n 145f514a2d9aa30ee380f575d78230dc6fd00cbc43b6377ef52df045e0b42501
数字与运算 3.5\nempty\n a61cbf769384351153b722db197b6168b38473827711c79008714e26a34531c7
数值转换 12\ninvalid sample\n 7d26cdc0cd044ea888619a9c47c4722747011653206a088ff35ef9fbd2087bbf
端口解析 8080\ninvalid port\n cf96d354e0644c8279f9d0705d5e81846ea1b1ff09ad3981b63f48aa018073ad
定义数据类型 无输出 85623c41b4fa2cbbcedfa3d0442df6b958db865611c61f00bd3ecefde24f0c81
能力约束 无输出 d7fcf0ccc1f487356a56e2d9769de2dd1979799ec61d879425a1cb8f7c9c3fa0
函数参数 rule failed\n ddaaf5bb6ae8164cea0bbc41c5fb01ae6a81dda34a5bf14637b0da33e0e9ee83
泛型数据结构 end\n 07d038f8e6aa4bb3e5e11fe7b38a6687482ece02a155793b4571eed2f4914f52
泛型函数 not found\n 6656de7d245207dc86ceda142d4fac127bf5779390c088a51397dc5afead3b61

端口解析的完整代码与 2026-10-17 组装后的短驱动哈希一致;此前 16 项边界的历史记录保留,本次只重跑正文短驱动。其余文章本次只覆盖正文既有用例,未执行其他语言。临时源码和编译产物已删除。

文档检查:npm test 的 7 项导航测试通过,npm run render 成功生成 82 篇文档,git diff --check 无错误;生成页面的 TypeScript 代码块与源文档一致,保留 #typescript 锚点。

# 2026-10-17 P1 修复验证

# 端口解析的 TypeScript 重新核验

原冲突对象明确为 02-types/parse-port.md 的 TypeScript 小节:旧总表没有文章与源码标识,不能证明曾覆盖端口片段;旧组装表的“本机未执行”也不能描述当前状态。因此不推测旧结论谁正确,而以本次具体运行取代该对象的未知状态,其余历史对象维持待复核。

环境:Windows x64,TypeScript 5.9.3,Node.js v22.17.0。使用已有隔离编译器,不改变仓库依赖或系统默认工具链。

  1. 按正文组装:仅将 JS 实现首行替换为 function parsePort(text: string): number {,保留函数体,在其后添加一个空行和 JS 驱动,保存为独立临时目录下的 main.ts。
  2. 短驱动执行 tsc --strict --target ES2022 main.ts,再执行 node main.js;编译与运行退出码均为 0,编译无诊断、运行 stderr 为空,stdout 精确为 8080\ninvalid port\n。
  3. 另建独立目录,只把驱动输入数组换为下列 16 项,重复同一编译、运行命令。输出前四行依次为 8080、80、1、65535,后十二行均为 invalid port;退出码均为 0、stderr 为空,与预期逐行一致。
TypeScript["8080", "00080", "1", "65535", "", "0", "65536", " 80",
 "+80", "-80", "80x", "80\n", "1e3", "80.0", "80", "000080"]

代码版本按**组装后 main.ts 的 UTF-8 字节(LF 换行)**记录 SHA-256:短驱动为 cf96d354e0644c8279f9d0705d5e81846ea1b1ff09ad3981b63f48aa018073ad,扩展驱动为 066c7043ddbdb389640ee66de4e09008a09ca4bf2713bc230ccd836f533e2980。扩展数组按上述顺序序列化为紧凑单行字符串替换原数组。本文数组围栏只是驱动替换数据,不是新的独立程序。

执行器调用已有编译器入口的等价命令为 node <TypeScript目录>/bin/tsc --strict --target ES2022 main.ts;编译限时 30 秒、运行限时 10 秒,未触发超时。临时源文件和产物已删除。本次未执行其余七种语言,也未扩展为任意对象或空引用输入校验。

# 分页偏移的八语言回归

对象:01-basics/page-offset.md 全部八个语言的完整程序,直接从正文提取,不改函数或驱动。执行时整个 Markdown 文件 UTF-8 字节 SHA-256 为 ef884c95fe3305ee02af06731bd129fa7ed04a123b5d47cd80a9f2307ea72d35。每种语言使用独立系统临时子目录;外部执行器给每条命令 120 秒超时,均未触发,执行后删除临时目录和产物。

环境为 Windows x64。下表每一行均实际执行,所有编译及运行退出码为 0、stderr 为空;单独编译步骤无 stdout,运行 stdout 统一 CRLF 为 LF 后均精确为 offset: 20\n。Java -ea 已启用,Python 未使用 -O,C++ 未定义 NDEBUG。

语言 / 实际工具链 文件及实际命令(工具路径以入口名表示) 结果
Rust 1.88.0,edition 2021,Windows MSVC 工具链 main.rs:rustc --edition=2021 main.rs,随后 .\main.exe 通过
Go 1.26.4 windows/amd64 main.go:go run main.go 通过
Java 21.0.11,Oracle GraalVM JDK Main.java:java -ea Main.java 通过
JavaScript,Node.js v22.17.0 main.cjs:node main.cjs 通过
TypeScript 5.9.3,Node.js v22.17.0 main.cts:tsc --strict --target ES2022 --module commonjs main.cts,随后 node main.cjs 通过
Kotlin JVM 1.9.25,JDK 21.0.11 Main.kt:kotlinc Main.kt -include-runtime -d main.jar,随后 java -jar main.jar 通过
Python 3.13.3,经 uv 选择已有解释器 main.py:uv run --no-project --no-python-downloads --python 3.13.3 main.py 通过
C++,GCC 15.2.0,C++17 main.cpp:g++ -std=c++17 main.cpp -o main,随后 .\main.exe 通过

环境处理:默认 rustc 入口报未配置默认工具链,本轮没有修改全局设置,而是直接调用已安装的 stable-x86_64-pc-windows-msvc/bin/rustc.exe;TS 通过 node <TypeScript目录>/bin/tsc 调用,Kotlin 通过已有 kotlinc.bat 调用。复现者应选择自己的对应工具链路径,不依赖作者缓存目录。

各语言驱动均检查六组合法显式输入、默认容量、九组非法输入。其中包括结果恰好 MAX、MAX-1、MAX+1、最大输入及零结果、超上限输入、(MAX,MAX) 和原反例 (9007199254740990,3);所有超范围调用都走显式错误通道。JS/TS 还检查小数、NaN、无穷值,JS/Python 检查字符串与布尔值,Python 还拒绝整数值浮点输入。详细值表保留在正文,不以只有最终打印结果作为正确性依据。

原反例在本轮八语言驱动中均被拒绝;不是通过删掉输入或容忍舍入来“通过”。共同值域现在明确限制输入与结果为安全整数范围,且乘法前检查。没有测试真实数据库、全部操作系统、32 位目标或每个历史基线版本;本轮使用的较新版本不能替代基线兼容性验证。

# 工程生态的来源复核

对象:09-philosophy/engineering-ecosystem.md,整个 Markdown 文件 UTF-8 字节 SHA-256 为 f3251247bc1e01f8397377bc71df376827fcfc34727a66c4b099d19981ec8c6d。文章以已有配置加载器部署到干净目标机器为共同变化,移除了无测量依据的镜像区间和无条件的静态、零依赖保证。

核对范围为正文就近引用的官方材料:Go/cgo、Rust Reference Linkage、JDK 21 jpackage/jlink、Python 3.11 Windows embeddable package 与 C 扩展、Node.js 22 平台与 addons、GCC 链接选项及 Cargo/Clippy 工具边界。结论限定在目标平台、链接方式、运行时和资源条件下;生态与团队判断明确标为分析。原有标题锚点保持不变。

此项执行状态为“不适用”:没有构建镜像、制作安装包、实测部署、性能或体积,来源核对不计入任何语言的运行通过数量。

# 2026-10-17 审查抽样执行

环境:Windows x64,Node.js v22.17.0。只执行下表的 JavaScript,没有在本次重跑其他语言,也没有证明全部基线兼容。正文和其他语言的历史通过声明不自动继承本表结论。

使用现有 Markdown-it 提取各篇标为 javascript 的完整程序。三个项目分别放入系统临时目录下独立、无 package.json 的 CommonJS 子目录,保存为 main.js,以 node main.js 无参数执行;每个进程设置 20 秒外部超时。逐字比对正文“运行与验证”的预期 stdout(统一 CRLF 为 LF),核对退出码和 stderr。临时目录执行后已删除。

文章 / 语言 状态与实际结果 本次覆盖与未覆盖
日志统计器 / JavaScript 通过:退出 0,stderr 为空,stdout 与正文六行预期一致 执行无参数演示及其中断言;未单独执行带文件参数的 CLI、权限失败或输出断开
配置加载器 / JavaScript 通过:退出 0,stderr 为空,stdout 与正文十行预期一致 执行无参数演示及其中断言;未单独执行带参数 CLI 或改变父进程环境
HTTP JSON 客户端 / JavaScript 通过:退出 0,stderr 为空,stdout 与正文六行预期一致 执行本机随机端口服务、六个网络场景及字段断言;未单独执行带参数 CLI、公网或正文列出的其他未覆盖场景
分页 / JavaScript 修复前版本失败(额外精度反例):原驱动打印 offset: 20;输入 (9007199254740990, 3) 的 Number 结果字符串为 27021597764222970,精确整数应为 27021597764222967 当时以 node --input-type=commonjs -e <原代码及诊断> 执行,退出 0、stderr 为空;仅本次审查阶段未执行其他语言。新版八语言结果见上方 P1 修复验证;旧诊断见问题单

以下为执行对象的整个 Markdown 文件 UTF-8 字节 SHA-256,不是临时驱动或渲染页面的哈希:

文件 SHA-256
08-projects/log-analyzer.md 7c64fe6552c031ca99de6714fa0d052603f224030afd1f67245fefc4417c4263
08-projects/config-loader.md 670a7bc3412f472a7035fdc54a9d8bf71b86e93386f05efb3d49c2f309312b4d
08-projects/http-json-client.md e77328c4f80b394c0aa3694c05600d60879ea1c186ba81f4e03c898d782c5bb1
01-basics/page-offset.md 0a980b4f719837217f790da1963a32e3e00f97dc3629a1986a81bbcdad606d7f

# 本次文档与页面检查

# 2026-10-15 历史摘要的适用范围

以下是历史声明而非当前通过矩阵;所有未绑定当时源代码与逐篇用例的条目均为待复核。保留工具链名称、原声称范围和旧用例用于后续比对,但不把它们算作当前证据。TypeScript 端口片段的现状已由上方重新执行确定,不能再用旧总表或旧“本机未执行”代替。下方旧日期、数量和页面结论均未在本轮重新测得。

# 实际执行情况

原记录描述曾从 Markdown 提取代码,在系统临时目录组装、编译和执行;未保留可对应多数文章版本的证据清单。下表只保存其声明,不据此确认当前实现通过。

原记录工具链 原声称范围(待复核,不是当前通过状态)
Rust 1.88.0,edition 2021 声称执行了基础语法、条件分支、端口解析、报告输出、极值、空值与并发
Go 1.26.4 声称执行了多分支、切片与映射、并发管道与计算累加
Java 21.0.11,LTS 声称执行了条件分支、端口解析、密封状态、Record、线程池与集合流
JavaScript,Node.js 22.17.0 声称执行了条件分支、端口解析、集合管道、闭包与工作线程
TypeScript 5.9.3(隔离工具链) 声称严格模式与 ES2022 编译及生成 JS 运行通过,但未列文章;不能证明包括端口片段
Kotlin 1.9.25(隔离工具链) 声称 JVM 目标编译与断言通过,未列逐篇对象
Python 3.13.3(uv 驱动) 声称执行了分支、报告写入、集合推导、多进程与综合项目 CLI
C++,GCC 15.2.0,C++17 声称执行了条件分支、端口解析、RAII 异常展开与变体访问

原记录另称准备了临时 TypeScript 5.9.3 与 Kotlin 1.9.25,执行基础与集合的典型示例。缺少文章和源代码版本清单,不能据此追认为全篇或全库通过。

历史环境说明:当时直接执行 python --version 命中 Windows 应用执行别名;通过 uv python list --only-installed 找到 Python 3.13.3,并记录以下等价命令:

Shelluv run --no-project --no-python-downloads --python 3.13.3 main.py

原记录的 Python 3.13.3 等实际版本不等于首页全部基线;该记录也没有证明所有基线版本兼容。

# 组装与复现

以下为历史组装说明,保留供比对。操作时仍应使用各语言独立临时目录和当前正文命令;这一段不声明当前代码已执行。

文章 组装方式 执行与观察
if / else:判断库存 各语言块都是独立完整程序;使用文中的文件名 按小节命令运行,核对控制台输出
字符串转端口号 每种语言的实现块后追加驱动块;Java 分为 Ports.java 和 Main.java 先观察两行 8080、invalid port,再扩展为输入表
TypeScript 端口片段 仅替换 JS 函数第一行为 TS 签名,其余函数体和驱动保留,保存为独立目录下的 main.ts 原条目记为“本机未执行”,与无逐篇范围的旧 TS 总表无法对齐;当前状态以本次修复验证为准
将报告写入不同目标 Rust、Go、Java、Python 的内存示例各自完整;Python 文件调用块追加到其完整程序末尾 成功时无控制台输出,内容断言通过;Python 额外观察真实文件字节与清理

编译与运行命令在正文中维护,避免在此重复多个易失步的版本。工具路径、版本和临时目录因机器而异,不要把作者的本机路径复制为运行前提。

# 用例与验证边界

以下用例与观察均为原记录描述,不是本轮重新执行;缺少源代码标识的对象仍按当前索引列为待复核。

# 条件分支

执行库存 0、1、3、5、6,分别核对 sold out、low stock、low stock、low stock、in stock。覆盖三个分支与低库存区间的两个端点。负数不属于示例输入契约,输入校验不在本例中实现。

文末 debug 条件取值表仍是函数内教学片段,本次未逐门组装执行;不要把正文完整程序的通过状态扩展到该表。

# 端口解析

# 报告输出

# 文档与页面验证

原记录称 npm run render 生成了全库 80 个 Markdown 页面,并检查了 378 个代码围栏、1283 个内部链接(713 个带章节锚点)。这些历史数量不代表修订后状态,也没有可复用的逐项检查输出。

原记录还描述了篇内跳转、阅读路径、模板入口与桌面/窄屏检查。当前文档变化后的实际检查另按日期记录,不从该段继承。

# 历史记录

2026-10-06 的原始说明称仅执行 Rust、Go、Java、JavaScript、C++,当时未定位到 Python;Go 曾受环境限制。此处仅保留历史上下文,不认定当时对象与当前代码相同,也不再声明“以当前代码和上表结果为准”。