Posts
All the articles I've posted.
- 0x13//后端实践
无框架 PHP 项目的渐进式工程化改造
记录如何将一个扁平结构的 PHP 营销站点改造为具有 Composer 自动加载、PSR-4 命名空间、public/ 入口隔离和视图层的工程化项目,而不引入重量级框架。
- 0x12//工具设计
RAG + 本地/在线 LLM:一个可离线的 AI 客服架构
记录如何为一个 SaaS 营销站搭建 RAG 驱动的 AI 客服系统:FastAPI 后端、FAISS 向量检索、本地 Ollama + 可选在线 LLM,以及从纯在线到本地优先的架构演进。
- 0x11//工具设计
「未实现」还是「不实现」:PPS 脚手架的设计选择
PPS 是一个 PHP 脚手架工具,它不做占位符替换、不创建代码目录、在构造函数里做 I/O。当 AI 把这五个设计点列为 bug 时,我才意识到——这些选择不是没有理由的,但如果不把理由写出来,别人就会用自己的框架来评判。
- 0x10//工具设计
全量 Vendor Rebrand:9 个 PHP 包从 hizpark 到 changhorizon 的实践记录
记录一次完整的 PHP 包生态 vendor 切换过程:9 个已发布包、跨包依赖、命名空间变更、CI 适配、版本号策略——以及关于 composer.lock 和脚手架设计哲学的思考。
- 0x0f//后端实践
mPDF 6.0 动态图片渲染踩坑:当 base64、PNG、绝对路径全都失效
在 PHP 5.6 遗留系统中用 mPDF 6.0 生成含动态签名图片的工单 PDF。本以为 base64 data URI 或绝对路径就能解决,结果 PNG 在 mPDF 中怎么都渲染不出来。本文记录四种方案的完整排查过程和最终解决方案。
- 0x0e//后端实践
在 PHP 5.6 遗留系统中设计 Shopify 模块:架构取舍
在 PHP 5.6、无框架、无 Composer 的老旧 WMS 中设计一个多层架构的 Shopify 集成模块。本文记录分层设计、GraphQL 集成、多店铺 OAuth 等关键决策背后的取舍逻辑。
- 0x0d//后端实践
工单系统的重生:从 Demo 到 WMS 集成
一个 5 字段的 stub 表单如何通过完整设计重构为可用的工单系统?记录从 Demo 前端到旧系统后端的架构适配全过程,包括数据库规范化、替换决策和 PHP 5.6 下的技术约束。
- 0x0c//工具设计
设计经验的容器:AI Skill 的迭代过程
从生成日报到设计完整的工作流规范——记录一个 AI Skill 如何通过对话迭代逐步成型,以及从中总结的 Skill 设计三原则。
- 0x0b//后端实践
三层防御:设计安全的危险操作
一个删除按钮引发的思考——Controller 校验、Repository SQL 保护、DB 约束兜底,三层防御模式让"手滑"不会变成"灾难"。
- 0x0a//后端实践
Shopify OAuth 跨账号授权:一个调试中的意外发现
用错误的 App 凭据居然授权成功了?一次 Shopify OAuth 调试中发现的跨账号授权机制。原来 client_id 是应用的全域身份证,绑的不是账号而是应用本身。
- 0x09//工具设计
从 Pine 到回测:构建本地交易信号系统
记录如何搭建一个本地交易信号系统:SQLite 数据仓库自动同步多周期 K 线、Python DSL 策略框架、回测引擎,以及将 TradingView Pine Script 策略移植到本地回测的完整过程。
- 0x08//工具设计
扩展 AI 编码助手的本地能力:浏览器自动化与共享终端
记录如何为 AI 编码助手集成浏览器自动化(playwright-cli)和共享终端(tmux)能力,实现从纯文本交互到操作本地 Chrome 浏览器、协作远程服务器的完整工具链。