Files

102 lines
4.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# CLAUDE.md — autumn-recruitment
## 项目介绍
这是一个用于沉淀秋招技术知识的 Obsidian 保险库。聚焦后端开发(Go / Java),以技术域分类法组织内容,覆盖语言基础、中间件、分布式架构、AI 工程实践和项目复盘。
---
## 目录结构
```
autumn-recruitment/
├── README.md # 知识库总览
├── 00.Go/
│ ├── data-structures/ # 切片、Map、Channel 底层实现
│ ├── concurrency/ # goroutine、sync.*、context、select
│ └── runtime/ # GC(三色标记)、调度器 GMP、pprof
├── 01.Java/
│ ├── jvm/ # 内存模型、垃圾回收、JFR
│ └── concurrent/ # 线程池参数、锁升级、并发容器、AQS
├── 02.MySQL/
│ ├── index/ # B+树、覆盖索引、回表、Explain
│ └── transaction/ # ACID、隔离级别、MVCC、锁机制
├── 03.Redis/
│ ├── core/ # 数据类型、RDB/AOF、集群、哨兵
│ └── strategies/ # 多级缓存、旁路/穿透/写回、热点探测 HeavyKeeper
├── 04.MQ/
│ └── rabbitmq/ # Exchange路由、持久化、ACK、死信、推拉结合
├── 05.架构/
│ ├── service-governance/ # 注册发现、负载均衡、限流熔断、配置中心
│ ├── distributed-lock/ # Redis/ZK/CRC 分布式锁
│ ├── idempotency/ # 幂等设计(网关级、数据库级)
│ └── ci-cd/ # K8s 发布、弹性扩缩容、灰度、可观测性
├── 06.AI/
│ └── agent-design/ # Eino DAG、多智能体协作、上下文工程、沙箱与权限、记忆管理
├── 07.模式/
│ ├── fsm/ # 有限状态机(核心亮点 ×2)
│ └── auth/ # RBAC 权限模型、OAuth/JWT
└── 08.项目/
├── gen2d/ # Gen2D — Agent Graph + 协程池 + 限流
└── thumbup/ # ThumbUP — 二级缓存 + Lua原子性 + HeavyKeeper
```
数字前缀保证按知识依赖链排序:语言 → 中间件 → 架构 → AI → 模式 → 项目。
---
## 文件操作规则
### 格式规范
新建或修改笔记时,遵循以下模板:
```yaml
---
tags: []
create time: YYYY-MM-DD HH:mm
---
# <标题>
## 概述
[简短描述文档内容,不要保留占位文本]
## 正文
[详略得当,注重实用性]
## 关联笔记
- [[相关笔记]](若无则移除此节)
```
### 必填项
| 字段 | 格式 | 说明 |
|------|------|------|
| `tags` | 数组 | 必须存在 `[]`,智能填充相关标签 |
| `create time` | `YYYY-MM-DD HH:mm` | 当前系统时间 |
### 内容规范
- **教学者模式**:假设你是教学者,需规划如何让读者轻松理解。可以穿插问题启发思考。建议使用 Obsidian 原生 `> [!type]` 语法(如 `> [!NOTE]`、`> [!TIP]`、`> [!WARNING]`)。
- **代码示例**:优先 Go(后端)+ React/TS(前端),点到为止,不冗长。用注释省略非核心部分,体现核心逻辑即可。给出代码时必须附带文本解释。
- **图表**:关键概念和流程使用 Mermaid,禁止纯文本 ASCII 图表。
- **风格**:文风严谨但保持"活人感",循序渐进,深入浅出。
### Mermaid 附录规范
- 所有中文内容必须用英文双引号 `""` 包裹,**不可用** `""` 或中文引号。
- 英文双引号内不允许出现标点符号或特殊字符,仅允许英文逗号 `,`。
- 不使用 `\n` 换行。
- 节点 ID 必须是英文。如需显示中文,放在双引号中:`A["中文显示文本"]`。
- 定义带说明的节点时,`[]` 内所有内容必须包在双引号里:`A["Interface MethodSet"]`。
- 散点图用 `A: [x, y]` 语法,不支持 `[label]` 作为点。
- 需求图中 `fulfills` 替换为 `SATISFIES`,`calls` 替换为 `TRACES`。
### 安全原则
- **尊重现有内容**:修改已有笔记前先读取完整内容,确保变更精确且不丢失信息。
- **相对路径**:提及 vault 内的文件时使用 Wiki-link 格式 `[[folder/note.md]]`。
- **frontmatter 保留**:修改包含 YAML frontmatter 的文件时,保留原有字段(如 tags、create time)。
- **避免破坏 Dataview**:不擅自修改或破坏 `dataview` 查询块。