# Factory 项目协作约定

## 项目结构

- 当前仓库是 Django 后端。
- 配套 Vue 前端位于 `../ehs_web`。修改 serializer 字段、API 返回结构或接口行为时，检查并同步对应的前端页面和 `src/api/model/` 接口定义。
- `ehs_web` 的菜单和路由由后端动态下发。新增页面时不要修改 `src/config/route.js`；页面组件、菜单和权限应按后端配置衔接。

## 本地执行

- 在 Windows 下运行 Django、pytest 或其他 Python 命令时，使用项目虚拟环境：`D:\projects\factory\.venv\Scripts\python.exe`。不要依赖系统 Python。
- `scripts/*.py` 是有意忽略的一次性回刷或修数脚本。未经用户明确要求，不得用 `git add -f` 强制提交。

## 数据安全

- 涉及生产数据验证时，只允许执行只读查询；写入、修数或结构变更必须取得用户针对该操作的明确授权。
- 数据库连接参数从本机已忽略的配置读取。不得把用户名、密码、连接串或可直接复用的带凭据命令写入文档、skill、提交信息或源码。

## 发版

- 不要在普通修改完成后自动提升版本号、打 tag 或发版。
- 只有用户明确要求“发版”“release”或“bump 版本”时，才使用 `.agents/skills/release/SKILL.md`。
- 前端 `ehs_web` 有独立发版流程，不要套用后端 release 流程。

## 按需项目知识

- 详细项目背景、历史反馈和排障记录见 `.codex/memory/MEMORY.md`。
- 只在任务相关时读取对应 memory 文件，避免把历史问题误当成当前事实。
