9598d162dd
算法修复 (P0/P1): - P0-1: 空亡判断改为仅从日柱计算(年月空亡标注但不断事) - P0-2: 暗动判断重写为静爻+旺相+日冲三条件 - P1-1: 月破独立标注 - P1-2: 动不为空、旺不为空 - P1-3: 三合局判断 - P1-4: 反吟伏吟判断 - P1-5: 日辰十二长生 - P1-6: 回头生克判断 Prompt架构重构: - 删除system_prompt中_build_env_section,不再泄露用户上下文到prompt - 删除if is_chinese分支,_LANGUAGE_LABELS已覆盖全部语言映射 - 安全规则改为六爻专属约束,拒绝无关问题 - sign_level枚举值在所有语言版本中统一为简体中文(schema严格约束) - _WORKER_ROLE_PLAYING始终为中文,不因ai_language切换 - _WORKER_OUTPUT_RULES按ai_language分zh-CN/zh-Hant/en三版本 - worker_rules.py独立文件管理多语言输出规则 - runner ai_language从user_context.settings.preferences提取传入prompt 清理死代码: - 删除UserPreferences/RuntimePromptContext及辅助函数 - 删除runner中runtime_client_time参数链路 - 删除SystemAgentRuntimeConfig.extra_context - 删除sections.py中env section marker - 删除agent_prompt.py中AgentPromptRegistry死代码 安全规则: - AGENTS.md添加Git Safety规则(禁止未经批准的破坏性git操作) - opencode.json添加高危git命令审批配置 测试: - 新增22个六爻算法单元测试(空亡/暗动/月破/三合局等) - 重写7个prompt测试适配新签名 - 全部85个单元测试通过
75 lines
2.9 KiB
Markdown
75 lines
2.9 KiB
Markdown
# Project AGENTS Router
|
|
|
|
Root `AGENTS.md` is routing + cross-domain policy only.
|
|
Do not place backend/frontend implementation details here.
|
|
|
|
## Scope
|
|
|
|
- Applies to repository root and cross-domain tasks.
|
|
- Subdomain rules: `backend/AGENTS.md`, `apps/AGENTS.md`.
|
|
- If rules conflict, use the stricter one.
|
|
|
|
## Rule Order
|
|
|
|
1. System / developer / platform safety instructions
|
|
2. Workspace runtime rules (`AGENTS.md` + `rules/*`)
|
|
3. This file (routing + project-level constraints)
|
|
4. Subdomain rules (backend/apps)
|
|
|
|
## Mandatory Routing
|
|
|
|
- `backend/**` must follow `backend/AGENTS.md`.
|
|
- `apps/**` must follow `apps/AGENTS.md`.
|
|
- Cross-domain changes must satisfy all relevant subdomain rules.
|
|
- `infra/**` follows this file plus `infra/` conventions.
|
|
|
|
## Project-Wide Constraints
|
|
|
|
- Default development branch is `dev`; do not develop directly on `main`.
|
|
- Never push unless explicitly requested by the user.
|
|
- Keep AGENTS layered and lean: shared rules at root, domain rules in sub-AGENTS.
|
|
- **No Error Swallowing**: All exceptions must propagate or be converted to typed errors. Never catch an exception, log it, and silently continue. This destroys debuggability.
|
|
|
|
## Git Safety (CRITICAL)
|
|
|
|
- **NEVER execute `git checkout -- <file>` or any git command that modifies files without explicit user approval.**
|
|
- **NEVER reset, revert, or discard uncommitted changes without user consent.**
|
|
- If you need to discard changes, ask the user first and explain exactly what will be lost.
|
|
- Before any destructive git operation, list the affected files and get confirmation.
|
|
- This rule is non-negotiable. Violation will cause irreversible loss of user work.
|
|
|
|
## Protocol Source of Truth
|
|
|
|
`docs/protocols/` is the single source of truth for protocol and data format.
|
|
|
|
- Update protocol docs before changing data/API/UI contracts.
|
|
- Document compatibility strategy (backward-compatible vs migration).
|
|
- Keep frontend/backend implementations aligned with documented protocol.
|
|
|
|
## Database Access
|
|
|
|
When viewing data in the database, use `supabase mcp` tools (`supabase_execute_sql`, `supabase_list_tables`, etc.) instead of direct queries or other methods.
|
|
|
|
## Image Handling
|
|
|
|
When reading images, check whether the model has native multimodal capability first. If it does, use `Read` tool to read images directly. If it does not, fall back to `understand_image` tool. Only use `Read` tool for non-image files.
|
|
|
|
<!-- TRELLIS:START -->
|
|
# Trellis Instructions
|
|
|
|
These instructions are for AI assistants working in this project.
|
|
|
|
Use the `/trellis:start` command when starting a new session to:
|
|
- Initialize your developer identity
|
|
- Understand current project context
|
|
- Read relevant guidelines
|
|
|
|
Use `@/.trellis/` to learn:
|
|
- Development workflow (`workflow.md`)
|
|
- Project structure guidelines (`spec/`)
|
|
- Developer workspace (`workspace/`)
|
|
|
|
Keep this managed block so 'trellis update' can refresh the instructions.
|
|
|
|
<!-- TRELLIS:END -->
|