docs(review): record approval and feedback resolution for batch-02 (consultant batch-03)
Deploy / build (push) Successful in 33s

This commit is contained in:
hoelee committed 2026-10-27 04:24:26 +08:00
1 parent d454ebd505
commit 050d73305d
13 files changed
+21880 -34753

No files matched your search

+56 -56
View File
@@ -1,7 +1,7 @@
# 全站文章顾问审阅状态总控台 (Audit Tracker)
> **最后同步时间**:2026-10-27 04:09:14
> **全站总文章数**:91 篇 | **已审批完成**:29 篇 (31.9%) | **待审阅**:62 篇
> **最后同步时间**:2026-10-27 04:23:31
> **全站总文章数**:91 篇 | **已审批完成**:39 篇 (42.9%) | **待审阅**:52 篇
## 一、操作命令速查
- `python scripts/manage_review.py list` — 查看待审与已审概览
@@ -29,16 +29,16 @@
| 15 | `case-studies` | `how-i-built-the-digikedai-telegram-bot` | 我是如何构建 DigiKedai Telegram AI 客服机器人的 | ⏳ 待审阅 | Batch-01 | - | |
| 16 | `case-studies` | `how-i-host-this-blog` | 我是如何托管这个博客的:Astro、Gitea Actions 与自托管 CI/CD | ⏳ 待审阅 | Batch-01 | - | |
| 17 | `case-studies` | `how-i-made-my-own-songs-with-suno-ai` | 我用 Suno AI 做出自己的歌 | ⏳ 待审阅 | Batch-01 | - | |
| 18 | `case-studies` | `how-i-vetted-20-vps-providers-with-parallel-subagents` | 如何用并行子代理在三小时内核查 20 家 VPS 服务商 | ⏳ 待审阅 | Batch-02 | - | |
| 19 | `case-studies` | `loop-engineering-without-a-coding-agent` | 没有 Coding Agent 的 Loop Engineering:撑起我这套基础设施的 11 个定时任务 | ⏳ 待审阅 | Batch-02 | - | |
| 20 | `case-studies` | `one-prometheus-for-unraid-synology-and-a-vps` | 用一个 Prometheus 监控 unRaid、群晖 NAS 和 VPS:我做错的四件事 | ⏳ 待审阅 | Batch-02 | - | |
| 21 | `case-studies` | `running-production-infrastructure-solo` | 一个人跑生产基础设施:三台主机、162 个容器 | ⏳ 待审阅 | Batch-02 | - | |
| 22 | `case-studies` | `self-healing-digital-goods-entitlements` | 数字商品的自愈式访问控制:NocoDB、n8n 与 AList | ⏳ 待审阅 | Batch-02 | - | |
| 23 | `case-studies` | `self-hosted-speech-to-text-api` | 自建语音转文字服务:打字速度的 3 倍以上,而且数据不出内网 | ⏳ 待审阅 | Batch-02 | - | |
| 24 | `case-studies` | `self-hosted-tts-cosyvoice2-n8n-gpu` | 从云端转本地:在 12GB 显卡与群晖 N8N 上搭建中英混读高保真 TTS 语音栈 | ⏳ 待审阅 | Batch-02 | - | |
| 25 | `case-studies` | `self-hosting-mem0-memory-stack` | 我如何在私有存储节点上自托管 Mem0 记忆栈(让 AI 助手拥有持久记忆) | ⏳ 待审阅 | Batch-02 | - | |
| 26 | `case-studies` | `shipping-an-ai-photo-editor-as-a-wordpress-plugin` | 把 AI 修图工具做成 WordPress 插件:22 个版本换来的经验 | ⏳ 待审阅 | Batch-02 | - | |
| 27 | `case-studies` | `syncing-a-self-improving-ai-agent-across-machines` | 在多台机器之间同步一个会自我学习的 AI Agent | ⏳ 待审阅 | Batch-02 | - | |
| 18 | `case-studies` | `how-i-vetted-20-vps-providers-with-parallel-subagents` | 如何用并行子代理在三小时内核查 20 家 VPS 服务商 | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 19 | `case-studies` | `loop-engineering-without-a-coding-agent` | 没有 Coding Agent 的 Loop Engineering:撑起我这套基础设施的 11 个定时任务 | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 20 | `case-studies` | `one-prometheus-for-unraid-synology-and-a-vps` | 用一个 Prometheus 监控 unRaid、群晖 NAS 和 VPS:我做错的四件事 | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 21 | `case-studies` | `running-production-infrastructure-solo` | 一个人跑生产基础设施:三台主机、162 个容器 | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 22 | `case-studies` | `self-healing-digital-goods-entitlements` | 数字商品的自愈式访问控制:NocoDB、n8n 与 AList | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 23 | `case-studies` | `self-hosted-speech-to-text-api` | 自建语音转文字服务:打字速度的 3 倍以上,而且数据不出内网 | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 24 | `case-studies` | `self-hosted-tts-cosyvoice2-n8n-gpu` | 从云端转本地:在 12GB 显卡与群晖 N8N 上搭建中英混读高保真 TTS 语音栈 | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 25 | `case-studies` | `self-hosting-mem0-memory-stack` | 我如何在私有存储节点上自托管 Mem0 记忆栈(让 AI 助手拥有持久记忆) | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 26 | `case-studies` | `shipping-an-ai-photo-editor-as-a-wordpress-plugin` | 把 AI 修图工具做成 WordPress 插件:22 个版本换来的经验 | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 27 | `case-studies` | `syncing-a-self-improving-ai-agent-across-machines` | 在多台机器之间同步一个会自我学习的 AI Agent | ✅ 已通过 | Batch-02 | 2026-10-27 04:22 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠) |
| 28 | `case-studies` | `the-single-writer-rule-for-coding-agents` | 代码只让一个 AI 改:我是如何避开多 Agent 协同踩坑的「单写多审」架构 | ✅ 已通过 | Batch-03 | 2026-10-27 03:49 | 外部顾问审阅完成,已采纳并落地全量修改意见 |
| 29 | `case-studies` | `when-to-give-your-agent-physical-clicks` | 什么时候该让 AI 操控物理鼠标(以及什么时候绝对不要用) | ✅ 已通过 | Batch-03 | 2026-10-27 03:49 | 外部顾问审阅完成,已采纳并落地全量修改意见 |
| 30 | `case-studies` | `why-i-built-a-video-knowledge-base` | 为什么我要做视频精读知识库:把收藏夹吃灰的短视频变成可检索笔记 | ✅ 已通过 | Batch-03 | 2026-10-27 03:49 | 外部顾问审阅完成,已采纳并落地全量修改意见 |
@@ -59,47 +59,47 @@
| 45 | `devops` | `putting-a-front-door-on-an-app-you-cant-modify` | 给自己改不了源码的应用装一扇前门 | ✅ 已通过 | Batch-04 | 2026-10-27 04:09 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/技术细节修补) |
| 46 | `devops` | `read-only-nocodb-dashboard-for-a-remote-database` | 给另一台机器上的数据库配一个 NocoDB 只读看板 | ✅ 已通过 | Batch-04 | 2026-10-27 04:09 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/技术细节修补) |
| 47 | `devops` | `replacing-rdpguard-with-ipban` | 用 IPBan 替换 RDPGuard:没人写出来的三个坑 | ✅ 已通过 | Batch-04 | 2026-10-27 04:09 | 外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/技术细节修补) |
| 48 | `devops` | `space-reclamation-wasnt-stuck-it-was-waiting` | 空间回收没卡住,它只是在等明天早上 09:29 | ⏳ 待审阅 | Batch-05 | - | |
| 49 | `devops` | `synology-spreadsheet-api-is-a-container` | Synology 电子表格 API 是一个容器,不是一个 API 端点 | ⏳ 待审阅 | Batch-05 | - | |
| 50 | `devops` | `that-dying-ssd-was-just-a-bad-sata-cable` | 我差点把这颗 SSD 送修——真正坏的是 SATA 数据线 | ⏳ 待审阅 | Batch-05 | - | |
| 51 | `devops` | `the-cause-was-trim-not-the-ssds` | 换了不同的硬盘,同样的损坏又来了——真凶是 TRIM,不是 SSD | ⏳ 待审阅 | Batch-05 | - | |
| 52 | `devops` | `the-upstream-was-deleted-then-came-back-rewritten` | 上游被删了,然后带着一个重写版回来 | ⏳ 待审阅 | Batch-05 | - | |
| 53 | `devops` | `unraid-stop-array-hangs-on-swapfile` | Unraid 停止阵列时卡死的真相:Swapfile 锁住挂载点 — 附修复方案 | ⏳ 待审阅 | Batch-05 | - | |
| 54 | `devops` | `uploading-large-videos-to-youtube-via-cdp` | 用 CDP 自动化上传百兆视频到 YouTube:跨越 DevTools 内存墙的 Docker 归档法 | ⏳ 待审阅 | Batch-05 | - | |
| 55 | `devops` | `vetting-an-open-source-dependency-before-you-bet-on-it` | 如何在押注前验证一个开源依赖:我用的六项检查 | ⏳ 待审阅 | Batch-05 | - | |
| 56 | `devops` | `when-smart-says-healthy-but-your-raid-is-corrupting-data` | SMART 显示健康,RAID 却在悄悄损坏数据 | ⏳ 待审阅 | Batch-05 | - | |
| 57 | `devops` | `why-chrome-forgets-its-tabs-in-a-container` | 为什么容器里的 Chrome 会忘记标签页 —— 以及我是怎么修好的 | ⏳ 待审阅 | Batch-05 | - | |
| 58 | `devops` | `why-telegram-bot-notifications-die` | Telegram 机器人通知为什么发不出去:IPv6、DNS 和一个折腾了一整天的 400 | ⏳ 待审阅 | Batch-05 | - | |
| 59 | `devops` | `why-your-cdp-clicks-silently-fail` | 为什么你的 CDP 点击会静默失效:平滑滚动、最小化窗口与 JS 派发事件 | ⏳ 待审阅 | Batch-06 | - | |
| 60 | `devops` | `why-your-grafana-dashboard-shows-no-data` | Prometheus 明明有数据,Grafana 面板却全是 No data 的原因 | ⏳ 待审阅 | Batch-06 | - | |
| 61 | `devops` | `your-disk-full-alert-is-lying` | 你的“磁盘将满”告警在说谎:别再按百分比告警 | ⏳ 待审阅 | Batch-06 | - | |
| 62 | `engineering` | `adding-english-mode-to-a-chinese-only-web-app` | 浏览器翻译没有 API:我给一个纯中文网页应用加上了英文模式 | ⏳ 待审阅 | Batch-06 | - | |
| 63 | `engineering` | `debugging-remotion-video-jitter` | 排查 Remotion 视频抽搐:为什么在背景图挂载音频低频 Scale 会毁了转场 | ⏳ 待审阅 | Batch-06 | - | |
| 64 | `engineering` | `embedding-fonts-so-a-pdf-looks-the-same-everywhere` | 把字体嵌进 PDF,让它在任何机器上都长一样 | ⏳ 待审阅 | Batch-06 | - | |
| 65 | `engineering` | `jpa-version-field-lost-update` | 那个把静默丢失更新变成 409 的 JPA 字段:@Version 乐观锁 | ⏳ 待审阅 | Batch-06 | - | |
| 66 | `engineering` | `migrating-codeigniter-iis-to-openlitespeed` | 把 CodeIgniter 4 应用从 IIS 迁移到 OpenLiteSpeed | ⏳ 待审阅 | Batch-06 | - | |
| 67 | `engineering` | `scraping-bot-walled-marketplace-warm-browser-session` | 用「热浏览器会话」爬取有反爬墙的电商网站 | ⏳ 待审阅 | Batch-06 | - | |
| 68 | `engineering` | `two-ways-a-javascript-file-stops-working-and-looks-fine` | JavaScript 文件静默失效的两种方式:而页面看上去一切正常 | ⏳ 待审阅 | Batch-06 | - | |
| 69 | `engineering` | `verifying-a-pdf-report-page-by-page` | 逐页验证一份 19 页的 PDF 报告 | ⏳ 待审阅 | Batch-06 | - | |
| 70 | `engineering` | `why-500000-lines-of-commit-churn-only-left-230000-in-production` | 30 天提交 51.8 万行,生产环境只留下 23.5 万行 | ⏳ 待审阅 | Batch-07 | - | |
| 71 | `notes` | `adding-a-domain-to-someone-elses-mail-server` | 给别人家的邮件服务器加一个域名 | ⏳ 待审阅 | Batch-07 | - | |
| 72 | `notes` | `hello-world` | 你好,世界 —— 关于这个博客 | ⏳ 待审阅 | Batch-07 | - | |
| 73 | `notes` | `my-backup-was-using-someone-elses-api-quota` | 我的备份爬得比爬虫还慢,因为我在用别人的 API 配额 | ⏳ 待审阅 | Batch-07 | - | |
| 74 | `notes` | `nocodb-sso-is-a-licensed-feature` | NocoDB SSO 是授权功能:环境变量不会告诉你的事 | ⏳ 待审阅 | Batch-07 | - | |
| 75 | `notes` | `reading-a-containers-own-api-docs` | 与其看供应商文档,不如直接读容器自带的 API 文档 | ⏳ 待审阅 | Batch-07 | - | |
| 76 | `notes` | `smartctl-exit-code-32-skips-the-disks-that-matter` | smartctl 退出码 32:专门跳过你最该看的硬盘的那个“错误” | ⏳ 待审阅 | Batch-07 | - | |
| 77 | `notes` | `stop-writing-agent-prompts-for-deterministic-work` | 确定性的活,别再用 Agent Prompt 去跑 | ⏳ 待审阅 | Batch-07 | - | |
| 78 | `notes` | `synology-api-401-with-the-correct-password` | 密码正确,Synology API 登录却返回 401,问题出在哪 | ⏳ 待审阅 | Batch-07 | - | |
| 79 | `notes` | `the-nocodb-attachment-that-wouldnt-update` | NocoDB 附件字段怎么改都不生效,和一个漏网的正则 | ⏳ 待审阅 | Batch-07 | - | |
| 80 | `notes` | `upgrading-codeigniter-46-to-47` | CodeIgniter 4.6 升级到 4.7:官方指南没说到的破坏性变更 | ⏳ 待审阅 | Batch-07 | - | |
| 81 | `notes` | `why-is-my-tts-model-repeating-percent` | 为什么本地语音合成一直在念 “Percent”?语音管线里的 URL 编码与沙盒避坑记 | ⏳ 待审阅 | Batch-07 | - | |
| 82 | `notes` | `why-multi-agent-coding-fails` | 为什么多个 AI 一起写代码总会烂尾?传话失真与隐式决策困境 | ⏳ 待审阅 | Batch-07 | - | |
| 83 | `notes` | `why-your-windows-mcp-calls-silently-fail` | 为什么你的 Windows 桌面 MCP 调用会静默失败:攻破 10 秒空闲门禁与避坑实录 | ⏳ 待审阅 | Batch-07 | - | |
| 84 | `tutorials` | `calibrating-intel-quick-sync-hevc-quality` | 校准 Intel Quick Sync HEVC:28 与 30 之间的悬崖,和一个毫无作用的 preset | ⏳ 待审阅 | Batch-07 | - | |
| 85 | `tutorials` | `does-hevc-actually-shrink-your-files` | 转成 HEVC 到底会不会让文件变小?我实测了 | ⏳ 待审阅 | Batch-07 | - | |
| 86 | `tutorials` | `generating-full-length-songs-with-yue2-comfyui` | 用 YuE2 BF16 生成完整长歌:突破时长限制与音频硬截断 | ⏳ 待审阅 | Batch-09 | - | |
| 87 | `tutorials` | `generating-subtitles-for-songs-without-timestamps` | 给没有时间戳的歌曲自动生成字幕 | ⏳ 待审阅 | Batch-10 | - | |
| 88 | `tutorials` | `how-to-verify-a-hosting-provider-before-you-buy` | 购买主机前,如何核实一家服务商的真实情况 | ⏳ 待审阅 | Batch-10 | - | |
| 89 | `web3` | `chainlink-vrf-v2-lottery-contract` | 一个基于 Chainlink VRF v2.5 与 Automation 的自动化彩票合约 | ⏳ 待审阅 | Batch-10 | - | |
| 90 | `web3` | `fully-on-chain-svg-nfts` | 全链上 SVG NFT:把艺术作品放进合约里 | ⏳ 待审阅 | Batch-10 | - | |
| 91 | `web3` | `why-my-on-chain-nft-art-changed-on-windows` | 为什么在 Windows 上克隆后,我的链上 NFT 图像变了 | ⏳ 待审阅 | Batch-10 | - | |
| 48 | `devops` | `space-reclamation-wasnt-stuck-it-was-waiting` | 空间回收没卡住,它只是在等明天早上 09:29 | ⏳ 待审阅 | Batch-02 | - | |
| 49 | `devops` | `synology-spreadsheet-api-is-a-container` | Synology 电子表格 API 是一个容器,不是一个 API 端点 | ⏳ 待审阅 | Batch-02 | - | |
| 50 | `devops` | `that-dying-ssd-was-just-a-bad-sata-cable` | 我差点把这颗 SSD 送修——真正坏的是 SATA 数据线 | ⏳ 待审阅 | Batch-02 | - | |
| 51 | `devops` | `the-cause-was-trim-not-the-ssds` | 换了不同的硬盘,同样的损坏又来了——真凶是 TRIM,不是 SSD | ⏳ 待审阅 | Batch-02 | - | |
| 52 | `devops` | `the-upstream-was-deleted-then-came-back-rewritten` | 上游被删了,然后带着一个重写版回来 | ⏳ 待审阅 | Batch-02 | - | |
| 53 | `devops` | `unraid-stop-array-hangs-on-swapfile` | Unraid 停止阵列时卡死的真相:Swapfile 锁住挂载点 — 附修复方案 | ⏳ 待审阅 | Batch-02 | - | |
| 54 | `devops` | `uploading-large-videos-to-youtube-via-cdp` | 用 CDP 自动化上传百兆视频到 YouTube:跨越 DevTools 内存墙的 Docker 归档法 | ⏳ 待审阅 | Batch-02 | - | |
| 55 | `devops` | `vetting-an-open-source-dependency-before-you-bet-on-it` | 如何在押注前验证一个开源依赖:我用的六项检查 | ⏳ 待审阅 | Batch-02 | - | |
| 56 | `devops` | `when-smart-says-healthy-but-your-raid-is-corrupting-data` | SMART 显示健康,RAID 却在悄悄损坏数据 | ⏳ 待审阅 | Batch-02 | - | |
| 57 | `devops` | `why-chrome-forgets-its-tabs-in-a-container` | 为什么容器里的 Chrome 会忘记标签页 —— 以及我是怎么修好的 | ⏳ 待审阅 | Batch-02 | - | |
| 58 | `devops` | `why-telegram-bot-notifications-die` | Telegram 机器人通知为什么发不出去:IPv6、DNS 和一个折腾了一整天的 400 | ⏳ 待审阅 | Batch-02 | - | |
| 59 | `devops` | `why-your-cdp-clicks-silently-fail` | 为什么你的 CDP 点击会静默失效:平滑滚动、最小化窗口与 JS 派发事件 | ⏳ 待审阅 | Batch-03 | - | |
| 60 | `devops` | `why-your-grafana-dashboard-shows-no-data` | Prometheus 明明有数据,Grafana 面板却全是 No data 的原因 | ⏳ 待审阅 | Batch-03 | - | |
| 61 | `devops` | `your-disk-full-alert-is-lying` | 你的“磁盘将满”告警在说谎:别再按百分比告警 | ⏳ 待审阅 | Batch-03 | - | |
| 62 | `engineering` | `adding-english-mode-to-a-chinese-only-web-app` | 浏览器翻译没有 API:我给一个纯中文网页应用加上了英文模式 | ⏳ 待审阅 | Batch-03 | - | |
| 63 | `engineering` | `debugging-remotion-video-jitter` | 排查 Remotion 视频抽搐:为什么在背景图挂载音频低频 Scale 会毁了转场 | ⏳ 待审阅 | Batch-03 | - | |
| 64 | `engineering` | `embedding-fonts-so-a-pdf-looks-the-same-everywhere` | 把字体嵌进 PDF,让它在任何机器上都长一样 | ⏳ 待审阅 | Batch-03 | - | |
| 65 | `engineering` | `jpa-version-field-lost-update` | 那个把静默丢失更新变成 409 的 JPA 字段:@Version 乐观锁 | ⏳ 待审阅 | Batch-03 | - | |
| 66 | `engineering` | `migrating-codeigniter-iis-to-openlitespeed` | 把 CodeIgniter 4 应用从 IIS 迁移到 OpenLiteSpeed | ⏳ 待审阅 | Batch-03 | - | |
| 67 | `engineering` | `scraping-bot-walled-marketplace-warm-browser-session` | 用「热浏览器会话」爬取有反爬墙的电商网站 | ⏳ 待审阅 | Batch-03 | - | |
| 68 | `engineering` | `two-ways-a-javascript-file-stops-working-and-looks-fine` | JavaScript 文件静默失效的两种方式:而页面看上去一切正常 | ⏳ 待审阅 | Batch-03 | - | |
| 69 | `engineering` | `verifying-a-pdf-report-page-by-page` | 逐页验证一份 19 页的 PDF 报告 | ⏳ 待审阅 | Batch-03 | - | |
| 70 | `engineering` | `why-500000-lines-of-commit-churn-only-left-230000-in-production` | 30 天提交 51.8 万行,生产环境只留下 23.5 万行 | ⏳ 待审阅 | Batch-04 | - | |
| 71 | `notes` | `adding-a-domain-to-someone-elses-mail-server` | 给别人家的邮件服务器加一个域名 | ⏳ 待审阅 | Batch-04 | - | |
| 72 | `notes` | `hello-world` | 你好,世界 —— 关于这个博客 | ⏳ 待审阅 | Batch-04 | - | |
| 73 | `notes` | `my-backup-was-using-someone-elses-api-quota` | 我的备份爬得比爬虫还慢,因为我在用别人的 API 配额 | ⏳ 待审阅 | Batch-04 | - | |
| 74 | `notes` | `nocodb-sso-is-a-licensed-feature` | NocoDB SSO 是授权功能:环境变量不会告诉你的事 | ⏳ 待审阅 | Batch-04 | - | |
| 75 | `notes` | `reading-a-containers-own-api-docs` | 与其看供应商文档,不如直接读容器自带的 API 文档 | ⏳ 待审阅 | Batch-04 | - | |
| 76 | `notes` | `smartctl-exit-code-32-skips-the-disks-that-matter` | smartctl 退出码 32:专门跳过你最该看的硬盘的那个“错误” | ⏳ 待审阅 | Batch-04 | - | |
| 77 | `notes` | `stop-writing-agent-prompts-for-deterministic-work` | 确定性的活,别再用 Agent Prompt 去跑 | ⏳ 待审阅 | Batch-04 | - | |
| 78 | `notes` | `synology-api-401-with-the-correct-password` | 密码正确,Synology API 登录却返回 401,问题出在哪 | ⏳ 待审阅 | Batch-04 | - | |
| 79 | `notes` | `the-nocodb-attachment-that-wouldnt-update` | NocoDB 附件字段怎么改都不生效,和一个漏网的正则 | ⏳ 待审阅 | Batch-04 | - | |
| 80 | `notes` | `upgrading-codeigniter-46-to-47` | CodeIgniter 4.6 升级到 4.7:官方指南没说到的破坏性变更 | ⏳ 待审阅 | Batch-04 | - | |
| 81 | `notes` | `why-is-my-tts-model-repeating-percent` | 为什么本地语音合成一直在念 “Percent”?语音管线里的 URL 编码与沙盒避坑记 | ⏳ 待审阅 | Batch-04 | - | |
| 82 | `notes` | `why-multi-agent-coding-fails` | 为什么多个 AI 一起写代码总会烂尾?传话失真与隐式决策困境 | ⏳ 待审阅 | Batch-04 | - | |
| 83 | `notes` | `why-your-windows-mcp-calls-silently-fail` | 为什么你的 Windows 桌面 MCP 调用会静默失败:攻破 10 秒空闲门禁与避坑实录 | ⏳ 待审阅 | Batch-04 | - | |
| 84 | `tutorials` | `calibrating-intel-quick-sync-hevc-quality` | 校准 Intel Quick Sync HEVC:28 与 30 之间的悬崖,和一个毫无作用的 preset | ⏳ 待审阅 | Batch-04 | - | |
| 85 | `tutorials` | `does-hevc-actually-shrink-your-files` | 转成 HEVC 到底会不会让文件变小?我实测了 | ⏳ 待审阅 | Batch-04 | - | |
| 86 | `tutorials` | `generating-full-length-songs-with-yue2-comfyui` | 用 YuE2 BF16 生成完整长歌:突破时长限制与音频硬截断 | ⏳ 待审阅 | Batch-06 | - | |
| 87 | `tutorials` | `generating-subtitles-for-songs-without-timestamps` | 给没有时间戳的歌曲自动生成字幕 | ⏳ 待审阅 | Batch-07 | - | |
| 88 | `tutorials` | `how-to-verify-a-hosting-provider-before-you-buy` | 购买主机前,如何核实一家服务商的真实情况 | ⏳ 待审阅 | Batch-07 | - | |
| 89 | `web3` | `chainlink-vrf-v2-lottery-contract` | 一个基于 Chainlink VRF v2.5 与 Automation 的自动化彩票合约 | ⏳ 待审阅 | Batch-07 | - | |
| 90 | `web3` | `fully-on-chain-svg-nfts` | 全链上 SVG NFT:把艺术作品放进合约里 | ⏳ 待审阅 | Batch-07 | - | |
| 91 | `web3` | `why-my-on-chain-nft-art-changed-on-windows` | 为什么在 Windows 上克隆后,我的链上 NFT 图像变了 | ⏳ 待审阅 | Batch-07 | - | |
+74 -74
View File
@@ -6,7 +6,7 @@
"category": "notes",
"pub_date": "2025-05-06",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 7375,
@@ -19,7 +19,7 @@
"category": "engineering",
"pub_date": "2025-06-11",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 11859,
@@ -110,7 +110,7 @@
"category": "tutorials",
"pub_date": "2026-10-14",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 10490,
@@ -123,7 +123,7 @@
"category": "web3",
"pub_date": "2024-12-10",
"status": "pending",
"batch_id": "Batch-10",
"batch_id": "Batch-07",
"approved_at": null,
"notes": "",
"en_chars": 15801,
@@ -136,7 +136,7 @@
"category": "engineering",
"pub_date": "2025-11-26",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 9584,
@@ -162,7 +162,7 @@
"category": "tutorials",
"pub_date": "2026-10-08",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 7417,
@@ -175,7 +175,7 @@
"category": "engineering",
"pub_date": "2025-01-22",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 8033,
@@ -227,7 +227,7 @@
"category": "web3",
"pub_date": "2024-10-08",
"status": "pending",
"batch_id": "Batch-10",
"batch_id": "Batch-07",
"approved_at": null,
"notes": "",
"en_chars": 14598,
@@ -240,7 +240,7 @@
"category": "tutorials",
"pub_date": "2026-10-26",
"status": "pending",
"batch_id": "Batch-09",
"batch_id": "Batch-06",
"approved_at": null,
"notes": "",
"en_chars": 131667,
@@ -253,7 +253,7 @@
"category": "tutorials",
"pub_date": "2026-10-20",
"status": "pending",
"batch_id": "Batch-10",
"batch_id": "Batch-07",
"approved_at": null,
"notes": "",
"en_chars": 46399,
@@ -292,7 +292,7 @@
"category": "notes",
"pub_date": "2024-09-24",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 1794,
@@ -356,10 +356,10 @@
"zh_title": "如何用并行子代理在三小时内核查 20 家 VPS 服务商",
"category": "case-studies",
"pub_date": "2025-11-12",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 8593,
"zh_chars": 3613
},
@@ -370,7 +370,7 @@
"category": "tutorials",
"pub_date": "2025-11-26",
"status": "pending",
"batch_id": "Batch-10",
"batch_id": "Batch-07",
"approved_at": null,
"notes": "",
"en_chars": 6743,
@@ -409,7 +409,7 @@
"category": "engineering",
"pub_date": "2026-08-19",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 12217,
@@ -421,10 +421,10 @@
"zh_title": "没有 Coding Agent 的 Loop Engineering:撑起我这套基础设施的 11 个定时任务",
"category": "case-studies",
"pub_date": "2026-10-01",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 14249,
"zh_chars": 6609
},
@@ -435,7 +435,7 @@
"category": "engineering",
"pub_date": "2026-09-27",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 14943,
@@ -448,7 +448,7 @@
"category": "notes",
"pub_date": "2026-10-15",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 8078,
@@ -474,7 +474,7 @@
"category": "notes",
"pub_date": "2026-09-29",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 9934,
@@ -499,10 +499,10 @@
"zh_title": "用一个 Prometheus 监控 unRaid、群晖 NAS 和 VPS:我做错的四件事",
"category": "case-studies",
"pub_date": "2026-07-29",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 8358,
"zh_chars": 4690
},
@@ -591,7 +591,7 @@
"category": "notes",
"pub_date": "2025-10-01",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 8382,
@@ -629,10 +629,10 @@
"zh_title": "一个人跑生产基础设施:三台主机、162 个容器",
"category": "case-studies",
"pub_date": "2026-10-06",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 7975,
"zh_chars": 3722
},
@@ -656,7 +656,7 @@
"category": "engineering",
"pub_date": "2026-09-13",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 11245,
@@ -668,10 +668,10 @@
"zh_title": "数字商品的自愈式访问控制:NocoDB、n8n 与 AList",
"category": "case-studies",
"pub_date": "2026-09-18",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 14765,
"zh_chars": 6819
},
@@ -681,10 +681,10 @@
"zh_title": "自建语音转文字服务:打字速度的 3 倍以上,而且数据不出内网",
"category": "case-studies",
"pub_date": "2026-09-19",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 14708,
"zh_chars": 7794
},
@@ -694,10 +694,10 @@
"zh_title": "从云端转本地:在 12GB 显卡与群晖 N8N 上搭建中英混读高保真 TTS 语音栈",
"category": "case-studies",
"pub_date": "2026-10-22",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 8913,
"zh_chars": 4773
},
@@ -707,10 +707,10 @@
"zh_title": "我如何在私有存储节点上自托管 Mem0 记忆栈(让 AI 助手拥有持久记忆)",
"category": "case-studies",
"pub_date": "2026-09-16",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 8057,
"zh_chars": 4849
},
@@ -720,10 +720,10 @@
"zh_title": "把 AI 修图工具做成 WordPress 插件:22 个版本换来的经验",
"category": "case-studies",
"pub_date": "2026-09-18",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 13879,
"zh_chars": 6861
},
@@ -747,7 +747,7 @@
"category": "notes",
"pub_date": "2026-04-14",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 5475,
@@ -760,7 +760,7 @@
"category": "devops",
"pub_date": "2026-10-14",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 5763,
@@ -773,7 +773,7 @@
"category": "notes",
"pub_date": "2026-10-01",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 4951,
@@ -785,10 +785,10 @@
"zh_title": "在多台机器之间同步一个会自我学习的 AI Agent",
"category": "case-studies",
"pub_date": "2026-02-18",
"status": "pending",
"status": "approved",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"approved_at": "2026-10-27 04:22",
"notes": "外部顾问审阅完成,已采纳并落地全量修改意见(含数字矛盾/OPSEC脱敏/双语CTA/架构蓝图对齐/排版折叠)",
"en_chars": 8861,
"zh_chars": 4541
},
@@ -799,7 +799,7 @@
"category": "notes",
"pub_date": "2025-09-10",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 5053,
@@ -812,7 +812,7 @@
"category": "devops",
"pub_date": "2025-08-20",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 15944,
@@ -825,7 +825,7 @@
"category": "devops",
"pub_date": "2026-09-16",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 6484,
@@ -838,7 +838,7 @@
"category": "devops",
"pub_date": "2026-09-18",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 11452,
@@ -851,7 +851,7 @@
"category": "notes",
"pub_date": "2026-02-04",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 3570,
@@ -877,7 +877,7 @@
"category": "devops",
"pub_date": "2026-10-06",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 11536,
@@ -890,7 +890,7 @@
"category": "engineering",
"pub_date": "2025-02-20",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 7750,
@@ -903,7 +903,7 @@
"category": "devops",
"pub_date": "2026-09-15",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 10067,
@@ -916,7 +916,7 @@
"category": "notes",
"pub_date": "2026-09-27",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 9469,
@@ -929,7 +929,7 @@
"category": "devops",
"pub_date": "2025-08-22",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 10255,
@@ -955,7 +955,7 @@
"category": "engineering",
"pub_date": "2026-09-28",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 12525,
@@ -968,7 +968,7 @@
"category": "devops",
"pub_date": "2026-09-29",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 8459,
@@ -981,7 +981,7 @@
"category": "devops",
"pub_date": "2026-09-16",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 12365,
@@ -1007,7 +1007,7 @@
"category": "engineering",
"pub_date": "2026-10-18",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 8794,
@@ -1020,7 +1020,7 @@
"category": "devops",
"pub_date": "2026-09-29",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 14761,
@@ -1059,7 +1059,7 @@
"category": "notes",
"pub_date": "2026-10-22",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 7263,
@@ -1072,7 +1072,7 @@
"category": "notes",
"pub_date": "2025-07-29",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 5704,
@@ -1085,7 +1085,7 @@
"category": "web3",
"pub_date": "2026-08-19",
"status": "pending",
"batch_id": "Batch-10",
"batch_id": "Batch-07",
"approved_at": null,
"notes": "",
"en_chars": 7725,
@@ -1098,7 +1098,7 @@
"category": "devops",
"pub_date": "2026-03-25",
"status": "pending",
"batch_id": "Batch-05",
"batch_id": "Batch-02",
"approved_at": null,
"notes": "",
"en_chars": 8963,
@@ -1111,7 +1111,7 @@
"category": "devops",
"pub_date": "2025-03-19",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 8010,
@@ -1124,7 +1124,7 @@
"category": "devops",
"pub_date": "2026-05-17",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 7347,
@@ -1150,7 +1150,7 @@
"category": "notes",
"pub_date": "2026-03-12",
"status": "pending",
"batch_id": "Batch-07",
"batch_id": "Batch-04",
"approved_at": null,
"notes": "",
"en_chars": 5024,
@@ -1163,7 +1163,7 @@
"category": "devops",
"pub_date": "2026-06-24",
"status": "pending",
"batch_id": "Batch-06",
"batch_id": "Batch-03",
"approved_at": null,
"notes": "",
"en_chars": 5930,
+3 -5
View File
@@ -2,9 +2,9 @@
> **批次编号**:`Batch-01`
> **包含文章数**:8 篇
> **本批次总字符量**:174,993 字(严格限制 < 200,000 字)
> **本批次总字符量**:174,959 字(严格限制 < 200,000 字)
> **模式**:BILINGUAL
> **生成时间**:2026-10-27 03:02:03
> **生成时间**:2026-10-27 04:23:31
# 外部顾问审阅前置须知与工程背景规范
@@ -41,7 +41,7 @@
1. [ai] **Claude 和 GPT 明明更强,我为什么还是买了 GPU 跑本地 AI** (`why-i-still-bought-a-local-gpu`) — ~16,735 字符
2. [ai] **为什么我的 AI 歌曲总是丢结尾:在 12GB 显卡上跑 YuE2** (`yue2-on-a-12gb-gpu-songs-that-lost-their-endings`) — ~53,369 字符
3. [case-studies] **我如何用 FLUX.1 Kontext 打造 AI 家具合成演示** (`ai-furniture-compositing-with-flux-kontext`) — ~19,783 字符
3. [case-studies] **我如何用 FLUX.1 Kontext 打造 AI 家具合成演示** (`ai-furniture-compositing-with-flux-kontext`) — ~19,749 字符
4. [case-studies] **从一首歌到 4 分钟完整 MV:我如何用 Gemini、AI 生成与 Filmora 剪辑串起全流程实操** (`from-audio-to-a-4-minute-ai-music-video`) — ~16,195 字符
5. [case-studies] **我是如何用 Remotion 与 Docker CDP 打造全自动 MV 生成与多语种油管发布流的** (`how-i-built-an-automated-music-video-pipeline`) — ~14,196 字符
6. [case-studies] **我是如何构建 DigiKedai Telegram AI 客服机器人的** (`how-i-built-the-digikedai-telegram-bot`) — ~15,990 字符
@@ -2464,7 +2464,6 @@ pubDate: 2026-09-11
category: case-studies
blueprint: sme-digital-suite
blueprintLayer: L1-high-conversion-web
dynamicCta: true
tags: [fal-ai, flux, ai-image, javascript, canvas, ecommerce]
ogImage: /og/zh-ai-furniture-compositing-with-flux-kontext.jpg
banner: /banners/ai-furniture-compositing-with-flux-kontext.jpg
@@ -2654,7 +2653,6 @@ pubDate: 2026-09-11
category: case-studies
blueprint: sme-digital-suite
blueprintLayer: L1-high-conversion-web
dynamicCta: true
tags: [fal-ai, flux, ai-image, javascript, canvas, ecommerce]
ogImage: /og/ai-furniture-compositing-with-flux-kontext.jpg
banner: /banners/ai-furniture-compositing-with-flux-kontext.jpg
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,21 @@
# `blog.hoelee.com` 外部顾问审阅报告 — Batch-02 (顾问标注 Batch-03)
> **对应资料包**:`docs/consultant-review/batches/batch-02.md`(共 10 篇,中英双语对照)
> **审批状态**:已全量采纳并落地修改,10 篇已在 `audit-tracker.json` 中标记为 `approved`。
---
## 逐篇审阅意见与落地执行总结
| 序号 | 文章 Slug | 顾问结论 | 落地执行措施 |
| --- | --- | --- | --- |
| **01** | `how-i-vetted-20-vps-providers-with-parallel-subagents` | 需微调 | 1. 修正逻辑笔误:首页声称「Since 2012」老牌资历,域名实际上线仅 4 个月(消除“四位数从业年数”笔误);<br>2. 补充子代理并发执行的真实 JSON Schema 契约与输出结构,强化不可伪造工程交付证据。 |
| **02** | `loop-engineering-without-a-coding-agent` | 需微调 | 1. 补齐双轨转化:在文末补齐面向 SME 客户的自动化运维与确定性自愈巡检交付服务入口与 WhatsApp 沟通渠道;<br>2. 保留远程/混合 Senior DevOps 岗位机会开放引导。 |
| **03** | `one-prometheus-for-unraid-synology-and-a-vps` | 需重构(局部) | 1. 清除禁用词「玩具 / toy」与「全家 / across the lab」,替换为生产系统可用性契约与跨节点监控;<br>2. 清理中文版全文残留的 `\"` 反斜杠转义污染,统一为直角引号 `「」`;<br>3. 安全脱敏:`ServerHosh VPS` 脱敏为 `Ubuntu 公网边缘 VPS / Public Edge VPS`,`2.hoelee.com` 脱敏为 `edge-vps.hoelee.internal`。 |
| **04** | `running-production-infrastructure-solo` | 需微调 | 1. 消除家用口吻:「家里网断了 / home connection」规范替换为「本地私有化节点上行链路 / on-premise uplink」;<br>2. 英文版 78+ compose stacks 修正为与标题完全自洽的 78。 |
| **05** | `self-healing-digital-goods-entitlements` | 需微调 | 1. 修复中文版第 1 段 UTF-8 乱码字符(`方式`);<br>2. 脱敏代码注释中暴露的内部 Docker 网桥名 `bridge_hoelee` 为通用内部容器网络。 |
| **06** | `self-hosted-speech-to-text-api` | 需重构(局部) | 1. 消除算术矛盾:保留 130–150 wpm 口述对比 40 wpm 打字基准,标题与正文统一规范为「3 倍以上打字吞吐提升(节省 65%–70% 耗时)」;<br>2. Frontmatter 补齐 `blueprint: ai-agent-automation` 与 `blueprintLayer: L3-local-gpu-inference` 字段。 |
| **07** | `self-hosted-tts-cosyvoice2-n8n-gpu` | 需重构(局部) | 1. 清除禁用词「仅供玩票」改为「不满足生产要求」;修复英文拓扑图拼写 `FastAPl` 为 `FastAPI`;<br>2. 统一第一人称视角(复数「我们/we」统一回归到独立架构师「我/I」);<br>3. 内网拓扑与 IP 细节脱敏(改为 `n8n.internal:5678` 与 `gpu-node.internal:50000`);<br>4. 文末补齐面向 SME 客户私有化 AI 语音与 n8n 自动化管线搭建的商业转化 CTA。 |
| **08** | `self-hosting-mem0-memory-stack` | 需重构(局部) | 1. 修正标题与首段「自家 NAS」为「私有存储节点」;<br>2. 补齐 Frontmatter `blueprint: ai-agent-automation` 与 `blueprintLayer: L2-llm-gateway-agents`;<br>3. 统一 API 路由逻辑与示例:统一为 `POST /search` 并修正 curl 代码块中的请求路径;<br>4. 超过 20 行的 `docker-compose.yml` 使用 `<details><summary>` 原生折叠。 |
| **09** | `shipping-an-ai-photo-editor-as-a-wordpress-plugin` | 需微调 | 1. 替换禁用词「是个玩具 / is a toy」为「只是个免费演示(Demo) / just a free demo」;<br>2. 修正 Bug #2 关于 `rest_url()` 结尾斜杠的正文解释(澄清命名空间后没有结尾斜杠);<br>3. 修复中文漏字(「对每个响都做」修正为「对每个响应都做」)。 |
| **10** | `syncing-a-self-improving-ai-agent-across-machines` | 需微调 | 1. 开发机 Windows 绝对路径与私有仓库脱敏(替换为 `~/workspace/agent-dist/skills`、`~/.hermes/skills/` 与 `git.hoelee.com/ops/agent-dist`);<br>2. 中文版英文直引号统一替换为中文直角引号 `「」`。 |