历史作品 · 全栈工程师

这里住的是工程师做过的真实交付作品——每份作品都是一次已经验证过的架构 / 代码库 / 部署方案,也是下次接类似项目的最佳参照源


1. 为什么要有这个库

1.1 脚手架可跨项目复用

工程师一号位做到第 3 个 Next.js + Supabase 项目时会发现:目录结构、ESLint 配置、Sentry 接入、Supabase 客户端封装、shadcn 组件库这些部分 80% 可复用。历史作品库是公司级脚手架的原料。

1.2 典型架构模式的沉淀

1.3 踩坑记录的价值

失败作品比成功作品更值钱: - 那次选型错了,浪费了 3 天 → 下次避雷 - 那次 schema 没设索引,上线后爆慢 → 下次默认加 - 那次 RLS 没开,被用户薅羊毛 → 下次默认开

1.4 跨岗位的"案例库"

AI PM 和设计师也会读这里: - AI PM 想看"上次那个 Agent 项目的实际响应时延是多少" - 设计师想看"上次那个状态集在实际代码里是怎么实现的"


2. 谁往这里写

只有 CKO 可以往这里写

2.1 写入时机

项目 status=已交付 后,CKO 在蒸馏流程的第 5 步走"路径 B 公司脑库建设"时: 1. 不复制整个代码库(太大且有敏感数据),而是复制: - 代码仓库链接 + 最终 commit hash - 20 / 22 / 23 / 26 / 27 等核心文档副本 - 脱敏后的关键代码片段(架构 / schema / 关键业务 / Prompt) - Sentry 项目链接 + 关键告警截图 - 部署 URL(若仍可访问) 2. 原件留在项目盒子里不动 3. 添加一份"作品说明"文件

2.2 写入后不允许修改

历史作品是只读归档


3. 命名规范

YYYY-MM-DD_项目名_交付类型.md


4. 每个作品的配套文件

---
work: 2026-04-15_示例项目_技术架构.md
from_project: 02_项目/项目_示例/
project_type: APP类
tech_stack: [Next.js 14, Supabase, Claude API, Vercel]
delivered_at: 2026-04-15
distilled_at: 2026-04-16
distilled_by: CKO
prod_url: {若仍可访问}
commit_hash: {最终 commit}
---

## 项目背景
{这个项目当时是为什么启动的 + 约束条件}

## 架构摘要
{3–5 句话说清楚这个项目的技术骨架}
- 前端:Next.js 14 App Router + RSC
- 后端:Server Actions + Supabase
- 数据库:Postgres + pgvector + Drizzle ORM
- AI:Claude API(Tool Use 多轮对话)
- 部署:Vercel + Supabase

## 这份作品的特殊价值
{为什么这份值得进历史作品库}
- 例:第一次成功落地 Claude Tool Use 多轮对话的状态管理
- 例:pgvector embedding 策略的首次验证
- 例:Supabase RLS 在多租户场景的实战

## 关键技术决策
| 决策点 | 选了什么 | 为什么 | 事后回看是否正确 |
|---|---|---|---|
| 状态管理 | Zustand | 简单、无样板 | ✅ |
| ORM | Drizzle | 类型安全、迁移优雅 | ✅ |
| AI 调用 | Vercel AI SDK | 流式响应统一层 | ⚠️(多轮状态有坑) |

## 可复用部分
- [x] 项目目录结构
- [x] ESLint / Prettier / husky 配置
- [x] Supabase 客户端封装
- [x] Claude Tool Use 状态管理模式
- [x] 埋点 + Sentry 接入模板
- [ ] 具体业务逻辑(客户专属,不可复用)
- [ ] 具体 Prompt(业务专属,需脱敏后才能参考)

## 踩过的坑
{按严重度排序}
1. **严重**:初期没给 `todos.user_id` 加索引,上线后 p95 飙到 3s,后来加了索引降到 50ms
2. **中**:Claude Tool Use 多轮对话时没存完整 messages 数组,第 3 轮开始丢上下文
3. **轻**:Tailwind 配置没继承 design-tokens,手抄了一遍值

## 性能与成本数据
- Lighthouse:94
- FCP:1.2s
- API p95:180ms
- Claude API 月成本:~$45(1000 DAU)
- Vercel 月成本:免费额度内
- Supabase 月成本:$25

## 关联蒸馏记录
`01_部门/档案部/首席知识官CKO/蒸馏记录/{项目_YYYY-MM-DD}.md`

5. 组织方式

历史作品/
├── 2026-04-15_示例项目_技术架构.md
├── 2026-04-15_示例项目_技术架构_作品说明.md
├── 2026-04-15_示例项目_数据库设计.md
├── 2026-04-15_示例项目_AI集成.md
├── 2026-04-15_示例项目_Prompt库/           · 脱敏后的 Prompt
├── 2026-04-15_示例项目_仓库链接.md         · 私有库链接 + commit hash
├── 2026-04-20_示例产品_技术架构.md
├── ...
└── _索引.md                             · 按技术栈 + 项目类型双维索引

5.1 _索引.md 示例结构

## 按技术栈

### Next.js + Supabase + Claude API
- 2026-04-15 示例项目(ADHD 待办 APP)
  - [技术架构](2026-04-15_示例项目_技术架构.md)
  - [数据库](2026-04-15_示例项目_数据库设计.md)
  - [AI 集成](2026-04-15_示例项目_AI集成.md)
  - [Prompt 库](2026-04-15_示例项目_Prompt库/)

### Next.js + Supabase(无 AI)
- 2026-04-20 示例产品(SaaS 后台)

## 按项目类型

### APP 类
- 2026-04-15 示例项目

### Web 后台类
- 2026-04-20 示例产品

## 按复用价值

### 架构模板级
- 2026-04-15 示例项目(Next.js + Supabase + Claude 的参考实现)

### 单点技术级
- 2026-04-15 示例项目 的 Claude Tool Use 多轮状态管理

## 按踩坑记录

### 数据库
- 2026-04-15 示例项目 的索引缺失事故

### AI 集成
- 2026-04-15 示例项目 的 Tool Use 上下文丢失

6. 跨岗位访问规则

AI PM / 设计师 / 运营 / CKO 都可以这里,但:


7. 公司级脚手架的沉淀路径

这是工程师一号位 v1.1 的核心升级目标:

  1. 第 1 个项目:历史作品里有 1 份技术架构
  2. 第 3 个项目:能看出 Next.js + Supabase 的基础配置高度相似
  3. 第 5 个项目:CKO 蒸馏出"公司级 Next.js + Supabase 脚手架"进 方法论/
  4. 第 10 个项目:新项目基于脚手架起步,只写业务代码

8. 红线