PAPER — 一份关于工程、方法与交付的小型刊物 VOL. 02 / 2026 SHENZHEN / CN NO PHOTO IN HTML
AI application engineer / Agentic coding

白鸿亮。 BAI HONGLIANG

AI 应用开发工程师 Agent / Agentic Coding 2026 届 · 深圳 02 projects / 39 versions / 145 commits / 129 decisions
1276109210@qq.com/ 15661632282/ 本科 · 绥化学院 · 计算机科学与技术
02

项目 / Projects

39

版本 / Versions

145

提交 / Commits

129

决策 / Decisions

“先用文档把问题定义清楚,
再让 AI 在约束内实现。”EDITOR'S LETTER / P.02

A SMALL PUBLICATION ABOUT ENGINEERING, METHODS & DELIVERY
01Editor's note
编者按约 40 秒

先看方法,
再看证据。

02PAGE
WORDS / 01
白鸿亮
AI APPLICATION
ENGINEER

SHENZHEN · 2026
DOCUMENT-DRIVEN ENGINEERING

我不是“让 AI 帮我写代码”,而是先用文档把问题定义清楚,再让 AI 在约束内把工程做出来。

两个项目都从 0 到 1:外借设备管理把登记 → 在借 → 超时 → 归还 → 合同 → 台账收进一条可追溯的状态链;WebHelper 把 A4 排版、填单与 1:1 打印收进同一条渲染链。中间沉淀下 129 项设计决策、87 项白盒审查、73 条测试用例,以及 15 屏可以逐屏查看的界面复刻。

这份网页简历不是一张海报,而是一份可翻阅的工程档案。每一个形容词后面,都尽量跟一个数字、一个产物,或一屏可以亲手点的界面。

白鸿亮AI application engineer / Shenzhen · 2026

四条工作原则 / FOUR PRINCIPLES 每条都附项目证据 / EVIDENCE ATTACHED
01Architecture first

以架构为先的 Agentic Coding 范式

先拆解业务需求,再与 LLM 多轮评审并确认系统设计、技术栈、模块边界与验收标准;沉淀设计文档与开发文档,以文档作为项目开发的单一事实源。

Evidence72 + 57 项决策
02Context isolation

全流程 Agent 工程化协作

把需求讨论、方案设计、编码实现、联调测试、Debug、Git 版本管理、部署运维拆分为独立对话窗口 / 专用 Agent 会话,实现职责隔离、上下文隔离、产物可追溯,避免“边聊边写”造成的上下文污染与返工。

Evidence6 阶段会话隔离
03Constrained output

用权威文档约束 Agent 产出

基于官方 / 权威技术文档约束产出,按模块推进开发、验证与回归,形成九步闭环:需求拆解 → 设计评审 → 文档沉淀 → 工程初始化 → 模块开发 → 联调测试 → 缺陷修复 → 版本管理 → 部署上线。

Evidence87 审查 / 73 用例
04Proof, not claims

两个 Web 项目从 0 到 1 的实证

已用上述范式完成 2 个 Web 项目的开发与部署,具备把 AI 从“聊天助手”升级为受架构与文档约束的工程协作者的实操经验。所有数字都能在文档、Git 记录或测试输出里找到出处。

Evidence2 项目 / 15 屏
Next / 02方法 · 九步闭环约 60 秒 →
02The method
工作方法约 60 秒

先定义问题,
再让 Agent 实现。

03PAGE

不是“更会写 Prompt”,
而是把问题拆成文档、
把会话隔成阶段、
把模块验收成版本。

Agent 负责生成,架构与文档负责约束。 每个阶段独立会话,只读取上一阶段的产物,不读取上一阶段的聊天记录。下一阶段拿到的,是可回放的文档、代码与验收记录。 Source / 官方文档 · 项目文档 · 验收记录
01 / Single source of truth

文档是唯一事实源

先把业务术语、边界与决策写进文档,再让 Agent 写第一行代码。同一个词只有一个含义;冲突时以章程与术语表为准。

TERMS 149RULESDESIGN 129CHANGELOG
02 / Context isolation

会话隔离,产物交接

需求、架构、后端、前端、质量、部署各自独立会话。下一阶段只读取上一阶段的文档与产物,不读上一阶段聊天记录。

6 阶段输入 / 产物隔离边界
03 / Acceptance & regression

用验收标准收口

每个模块都有可复算的验收:测试用例、白盒审查、E2E 断言与发版脚本。修复必须回到用例与版本,而不是“感觉修好了”。

73 用例87 审查26 E2E
Nine-step loop / 九步闭环点击任意一步,查看输入 / 动作 / 产物
01
Input / 输入
业务痛点与现有流程谁在用、卡在哪、哪些不能改
Action / 动作
澄清边界,列出“不做什么”把模糊需求拆成可验收的问题
Output / 产物
需求清单与验收标准范围、角色、字段、状态
Evidence / 证据
TERMS · RULES术语先行,后续文档只认这一份

Anti-pattern / 边聊边写

  • 需求、实现、修 bug 混在一个窗口,结论只存在聊天里。
  • 下一轮只能靠猜,改一处、坏三处,回归靠记忆。
  • 交付物是“感觉能跑”,不是可复算的版本与部署包。

Document-driven / 文档驱动 + 会话隔离

  • 每个阶段独立会话,只读取上一阶段产物,职责与上下文隔离。
  • 决策写进 TERMS / 设计 / 开发文档,冲突有明确裁决顺序。
  • 每次修复回到用例、版本与部署包,工程闭环可追溯。
Next / 03案例 · 两个项目与 15 屏约 90 秒 →
03Selected cases
项目选页约 90 秒

两个项目,
一条交付链。

04PAGE

不是作品集,而是两次完整的工程交付:从需求澄清、架构评审、文档沉淀,到编码、测试、发版与部署。每个案例都保留了 3–5 个关键判断,以及可以逐屏打开的界面。

02Cases / 15 screens / 0 shots
CASE 01 内部业务系统 / 2026.08–09 Node.js 24 · 原生 JS · JSON 独立完成(Agent 协作)

CASE 01 / THE STATE MACHINE外借设备
管理系统

面向公司内部的设备外借与售后顶换登记系统。它把登记 → 在借 → 超时 → 归还 → 合同 → 台账收进一条可追溯的状态链,替代表格与口头催还。

背景 / Context

设备外借与售后顶换借机涉及寄送、归还、超期、合同与责任归属。原流程依赖表格与口头催还,超期不可见、合同手写、历史难追溯。目标是把这套流程收敛为一个内网双击即用、无需外网依赖的系统。

Agent 方法 / Method

先完成需求澄清与多轮方案评审,沉淀 72 项设计决策与 149 条业务术语;再写设计 / 开发 / 测试 / 部署文档;按“工程初始化 → 模块开发 → 联调 → 白盒审查 → 缺陷修复 → 发版”推进,每阶段独立会话、独立产物。

架构与实现 / Architecture

  • 零依赖后端:Node.js 24 单文件 2,459 行;REST + 会话 + 角色 + 原子写 + append-only 日志;JSON 持久化,12 小时快照保留 28 份。
  • 单文件前端:12 个原生 JS 模块共 2,551 行,build.js 合并为 174 KB 单 HTML,零外网依赖。
  • 合同生成:手写 OOXML + ZIP(store + CRC32),零依赖生成可编辑 .docx;在线改稿、历史快照与编号唯一。
  • 并发与安全:编辑锁(心跳续期 / 超时释放 / 409 冲突 / 管理员强制解锁);软删除;日志只增不删;路径遍历、Host 校验、CSV 公式注入防护。

关键难点 / Difficulties

  1. 业务口径自洽:四态派生统一以归还日期为基准,今日 / 本周到期按“日”判定,CSV 导出再导入可回环还原。
  2. 在借冲突检测:设备序列号归一化后,在新建、编辑、复制三个入口原子校验,阻止同一设备重复借出。
  3. 跨端日期交互:放弃原生 date picker,全站改为自绘日历,统一 Windows / macOS 的弹出、选中与清除行为。

质量与交付 / Quality

  • 87 项白盒审查(安全 28 / 业务 24 / 工程 25 + 补充 10)、73 条测试用例、14 项黑盒缺陷全修、26 项 Chromium E2E 断言。
  • 112 commits / 7 个版本;文档版本随项目版本同步,release.js 内置数据保护校验。
  • Windows x64 免安装(node.exe + 启动.bat)与部署包(SHA256 校验、使用说明);--data-dir 让数据与程序分离,升级不丢数据。

Agent 协作证据 / Evidence

72 项决策 / 149 条术语 / 73 条用例 / 87 项审查;CHANGELOG 按“用户反馈批次 / 白盒修复批次”归档,文档版本随项目版本同步。

Agent 协作证据:72 决策 / 149 术语 / 73 用例 / 87 审查 CASE 01 / 2,459 行后端 + 2,551 行前端
CASE 02 本地生产力工具 / 2026.08–10 Vanilla JS · Vite 5 · Node 中间件 独立完成(Agent 协作)

CASE 02 / ONE RENDER SOURCE文档模板
打印系统

WebHelper 把 A4 单据的“排版”和“填单”分开:模板一次设计、长期复用,填单只改内容。预览与打印共用同一个 iframe 渲染源,所见即所印。

背景 / Context

报价单、送货单、收款收据、封面等 A4 单据版式固定但字段多变,原流程靠 Word / Excel 反复排版,容易错版。目标是把“排版”和“填单”分开:模板一次设计、长期复用;填单只改内容,打印结果与预览严格一致。

Agent 方法 / Method

产品设计文档迭代 14 版、收敛 57 项决策,并在 3 套 VI 方案中评审定稿;先把三列布局、三种模式、渲染源与数据接口定死,再进入模块开发;每个版本独立目录、独立 Git 仓库与 tag,形成可回溯的演进链。

架构与实现 / Architecture

  • 唯一渲染源:第 3 列 iframe 同时负责预览与打印,mm↔px 按 96/25.4 映射,A4 真实比例 1:1;打印前等待引擎就绪并取快照。
  • 低耦合模块:12 个前端模块 + 双入口(应用 / 渲染引擎),约 3,650 行;Vite 多页构建。
  • 数据落盘:Vite 中间件提供 /api/data,仅本机来源、写操作 POST、文件名白名单、写队列串行;zip 导入限额 5,000 文件 / 200 MB。
  • 历史与备份:打印历史只增不减,索引 + 分页避免“越用越卡”;每日滚动备份保留 7 天。

关键难点 / Difficulties

  1. 编辑器交互:自研 DOM 拖拽与四角缩放(对角锚定 + 父页面指针捕获,移出窗口仍连续);Ctrl/⌘ 多选、6 种对齐、整组拖动、手势级撤销/重做。
  2. 填单体验:灰字水印作背景层、文本作前层叠加,单击/双击/拖选三种操作并存;超限提示只由真实输入驱动。
  3. 性能与体量:历史索引、分页、逐条导出,避免一次性加载全部记录。

质量与交付 / Quality

  • 32 个版本 / 33 commits / 32 tags;node:test 单测 10/10;5 份开发日志 + 2 份技术总结 + 缺陷报告。
  • 启动.bat 端口探测(5173→5174→5175)、守护重启、自动开浏览器;四期 Windows 离线安装包;Mac 全量迁移脚本。
  • MCP doc-reader(Python FastMCP):read_csv / read_docx / read_docx_tables,让 Agent 直接读取 docx/csv 需求材料(50 MB / 60 s 防护)。

Agent 协作证据 / Evidence

14 版产品文档 / 57 项决策 / 5 份开发日志 / 2 份技术总结 / 10 项单测;MCP 工具补齐 Agent 的文档读取能力。

Agent 协作证据:57 决策 / 14 版文档 / 10 份日志 / 10/10 单测 CASE 02 / 12 模块 + 双入口 + 3,650 行
2项目 / Projects
39版本 / Versions
145提交 / Commits
129决策 / Decisions
87审查 / Reviews
73用例 / Test cases
15 屏索引 / All screens点击任意一屏直接打开 · 全部为 HTML 复刻
Next / 04词条 · 7 组能力与项目证据约 45 秒 →
04Index of skills
能力词条约 45 秒

能力不是形容词,
是做过的证据。

05PAGE
Node.js 24Vanilla JSVite 5HTML5 / CSS3 JSON 原子写OOXMLZIP / CRC32Git Chromium E2Enode:testPython FastMCPWindows 部署
01
Agent 工程与 AI 协作
Agent Engineering & AI Collaboration

Agentic Coding 工作流设计;需求拆解与多轮设计评审;上下文与会话隔离;Prompt & Context Engineering;基于权威文档约束产出;Agent 产出验收与回归。

项目证据 / Evidence
  • 129 项设计决策;九步闭环;6 阶段会话隔离
  • 73 条测试用例、87 项白盒审查、26 项 E2E 断言
  • 自建 MCP doc-reader,补齐 Agent 的文档读取能力
Used in / 用于外借设备管理 · WebHelper
129Decisions
Next / 05学历 · 课程与竞赛约 20 秒 →
05Academic
学历与荣誉约 20 秒

起点在课程与竞赛。

06PAGE
绥化学院 计算机科学与技术 · 本科 · 2026 届 2022.09 — 2026.06 · Suihua, Heilongjiang

课程与竞赛围绕 C/C++、数据结构与算法;两个 Web 项目为独立实践,均独立完成(Agent 协作)。

Education / 2022—2026 · Bachelor of Engineering
“把课程里的算法,
放进真实项目的约束里。”
03竞赛 / Honors
05主修课程 / Courses
02项目 / Projects

主修课程 / Coursework

数据结构操作系统计算机网络 计算机组成原理C / C++

荣誉 / 竞赛 / Honors

  • 01第二届全国大学生 C 语言程序设计大赛三等奖
  • 02第十六届蓝桥杯 C/C++ 程序设计 B 组 · 黑龙江省赛三等奖
  • 03第二十届黑龙江省大学生程序设计竞赛优胜奖
Next / 06尾页 · 联系方式与 PDF约 10 秒 →
06Colophon / 尾页

下一段工程,
一起交付。

如果你在找一位能用文档与流程约束 AI、并把项目真正交付上线的工程师,欢迎来信。深圳 · 2026 届 · 可到岗。

Base深圳 · GMT+8
StatusOpen to work · 2026
© 2026 白鸿亮 / PAPER ISSUE 02 PDF = 2 页钩子 · WEB = 完整档案 · 15 HTML SCREENS 回到封面 ↑
文档驱动
DOCUMENT
DRIVEN
30-second read / 快速扫描
BAI HONGLIANG / AI APPLICATION ENGINEER / SHENZHEN / 2026

用文档约束 AI,
把需求交付成系统。

2026 届本科,计算机科学与技术。用两个从 0 到 1 的 Web 项目,验证“先设计、再让 Agent 实现”的工程方法。

02项目 / From 0 to 1
39版本 / Versions
145提交 / Commits
129决策 / Decisions
只看项目 下载 PDF ↓

30 秒版本 · 完整证据都在网页里 · 15 屏可交互 · 0 张截图

Reading guide / 阅读指南
BAI HONGLIANG / PAPER ISSUE 02 / 2026

先选一条路线,
再开始翻阅。

这份简历有三层:30 秒钩子、3 分钟主线、15 屏可交互案例。选一条适合你时间的路线,我会把最相关的证据先递给你。

02项目 / Projects
39版本 / Versions
145提交 / Commits
129决策 / Decisions
NO PHOTO IN HTML
15 HTML SCREENS
已读过? 键盘:? 快捷键 · G 指南 · J/K 章节
Keyboard / 键盘

少一点滚动,
多一点直达。

G打开阅读指南
C打开章节目录
J下一章 / 下一屏
K上一章 / 上一屏
Q30 秒速览
P下载 PDF
?显示这个面板
Esc关闭弹层 / 退出导览

在案例剧场中,方向键切换画面;输入框聚焦时不拦截。所有引导都可以随时退出。

邮箱已复制