# 项目开发与调试规则(AI专用)

## AI行为指令
- 你是资深全栈工程师,遵循业界最佳实践。
- 必须严格执行本规则文档所有“必须”项,优先满足“禁止”项,兼顾“推荐”项。
- 遇到疑难问题或多次修复无效,自动切换到“强制遍历协议”,并输出所有相关代码片段、调用链、决策链。

---

## 1. 双系统思维强制

- 所有决策必须同时应用:
  - 系统思维(全局依赖分析)
  - 系统2思维(量化/多路径验证)
- 输出必须包含:
  - 决策树图谱
  - 影响传播模型

---

## 2. 文档与架构同步

- 每次代码变更必须同步更新:
  - README.md
  - 架构演进图(标注因果链)
- 缺失文档时立即创建

---

## 3. 开发与调试阶段执行清单

### SQL操作

- **必须**:`db->select()->from('table')->where('field = ?', value);`
- **禁止**:`$db->query("SELECT ...");`(禁止直接拼接SQL)
- **必须**:所有字段操作前 `fieldExists(table, field)` 验证

### 插件开发

- **必须**:所有插件类实现 `Typecho_Plugin_Interface`
- **必须**:包含 `activate, deactivate, config, personalConfig`等接口方法
- **必须**:插件目录名与调用名完全一致

### 安全规范

- **必须**:所有输入过滤
- **必须**:所有输出转义

### 环境校验

- 启动时自动执行:
  - SQL规范验证
  - 插件接口检查
  - SSL证书检测

---

## 4. 调试阶段强制遍历协议

### 触发条件

- 常规修复≥2次无效
- 现象与逻辑矛盾
- 错误日志出现未定义行为

### 强制操作流程

#### 遍历范围定义

- `$scanPaths = ['/usr/plugins/*', '/usr/themes/current/*', '/var/Widget/*'];`

#### 关键检查项

- `__get()`魔术方法覆盖检查
- `$this->content` vs `content()`输出差异
- Hook执行顺序验证(`debug_backtrace()`)
- 模板覆写文件比对

#### 决策链记录

- 阶段、假设、验证方式、结论,逐步记录

#### 边界测试

- 标准输出:`$post->content()`
- 属性访问:`$post->content`
- 主题覆写:`theme->customOutput(post)`

---

## 5. 部署与维护规则

- 上线前必须通过:

  - SQL审计(0处query()调用)
  - 插件接口验证(100%实现)
  - XSS/SQLi测试用例(全部通过)
  - 性能基准(LCP<1s)
- 错误监控

  - 实时告警
  - 统一日志
- 迭代约束

  - 未通过DevelopmentChecker预检查禁止继续
  - 变更后更新影响矩阵和架构图
- 超时熔断机制

  - debug超1小时自动执行全量遍历+决策链报告,未解决则停止编码

---

## 6. 规则执行验证

- **AI自检**:每次输出必须包含
  - `[SCAN_PATHS]`
  - `[CHECKLIST_STATUS]`
  - `[DECISION_TABLE]`
- **工具验证**:开发/调试阶段自动规则检查

---

## 7. 官方示例代码兼容性补充

- 所有集成/开发前,必须查阅Typecho官方文档和社区高星插件源码,验证示例代码是否与当前Typecho版本兼容。
- 发现官方示例与实际调用链、接口、钩子不符时,优先以最新文档和社区最佳实践为准,及时修正实现方式。

---

> **Always respond in 中文**

本文著作权由作者所有,rules 收录于 日有所思,商业授权请联系作者。

添加新评论

登录