Files
digital-psychology/docs/PROJECT_PROFILE.md
T
jackyu66gitandCursor 89756f65b4 feat(ECR-012–016): 合规、题库、时辰刷新、头像、MBTI OEJTS 与埋点
落地输入合规、探索题库、报告日/时辰刷新、账号头像、OEJTS 量表,并补齐 H5 埋点与 Admin 漏斗;同步 ESS 工件、切至自建 Git、清理 GitHub Actions。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-13 01:27:58 +08:00

74 lines
3.4 KiB
Markdown
Raw 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.
# Project Profile — 愈心谷 (YuXinGu)
> Agent **第一次**读这个文件。不要重新猜技术栈;偏离见 Forbidden + ADR。
> 产品/领域/完成标准权威仍在 `.ai/`;本文件只锁定栈与 ESS 流程入口。
## Profile Version
`2026.08`
## Type
`saas-web` + AI Agent(心理洞察 / 画像 / 关系 / 问答陪伴)
## Dual-track governance
| Layer | Authority | Path |
|-------|-----------|------|
| Product · Domain · Lexicon · Feature Spec · DoD | **`.ai/`** | `.ai/product/` · `.ai/domain.md` · `.ai/definition-of-done.md` |
| Architecture · Forbidden · ADR | **`.ai/`** | `.ai/architecture.md` · `.ai/forbidden.md` · `.ai/adr/` |
| Change process · ECR · Task · Handoff · Roles | **ESS** | `docs/ECR/` · `docs/TASKS/` · `docs/HANDOFF/` · `docs/STATE/` |
| Backend change design(涉后台) | **ESS** | `docs/BACKEND_DESIGN/` + `$ESS_ROOT/.../BACKEND_STANDARD.md` |
| Stack lock (mirror) | ESS + `.ai/` | 本文 + `.ai/tech-stack.md` |
冲突时:领域与完成标准以 `.ai/` 为准;变更分级与角色门禁以 ESS 为准。
## Stack Lock
| Layer | Choice |
|-------|--------|
| Language (API) | Go 1.22+ |
| Backend | gin · Handler → Service → Repository |
| Database | PostgreSQL · migrations under `apps/api/migrations/` |
| Frontend | Vue 3 + TypeScript (`strict`) + Vite · Pinia |
| Shared | npm workspaces · `@yuxingu/sdk` · `@yuxingu/types` |
| Mini-program | Scaffold only until tasked |
| Local run | Host Go + ViteDocker **仅** Postgres`docker-compose.dev.yml` |
| Deployment | Docker Compose / images — never `latest` in prod |
| Architecture Pattern | Monorepo · layered API · REST `{code,message,data}` |
## Forbidden(无 ADR 禁止)
- 换后端语言 / 以 GraphQL·gRPC 替代主 REST
- 无 ADR 拆微服务
- Handler 直连 DBUI 直连 DB;页面内裸 `fetch`
- Docker-only 日常开发(每次改代码重建应用镜像)
- 无 Active Feature Spec`.ai/product/feature-spec/`)实现新行为
- L2+ 行为变更无 Approved ECR`docs/ECR/`
- 复制整棵 ESS 进本仓
- 扩展已清理的 Legacy 根 HTML(见 `LEGACY.md`
## Active anchors
- **ESS Intake G0** **FROZEN** · Validation **Active**`$ESS_ROOT/ESS_INTAKE_0.2_FREEZE.md`)— 下一条真实 L2 跑 A→B→C;失败只修 G0
- **本仓:** `ess_intake: strict` · Retro FAIL · 单 ECR Context
- **禁止验证期扩:** PR2/PR3 · Loop v1.2 · 自动建 ECR / 自动切 Context
- **Loop / Adapter** FROZEN / STABLE;不在本仓维护
- ECR: ECR-006016 Closed012016 含 RETRO 收口);ECR-001005 Closed
- EXP: (无)
- STATE: `docs/STATE/ECR-016.md` · `docs/STATE/ECR-015.md` · `docs/STATE/ECR-014.md`
- TRACEABILITY: `docs/TRACEABILITY.md`
- ADR: `.ai/adr/0007-ess-ai-dual-track.md`
- Product status: `.ai/product/p1-status.md`**P1 Complete**)· `.ai/product/p2-status.md`**P2 Complete**
- Active Spec: `account-auth` · `explore-test` · `home` · `star-profile` · `life-rhythm` · `input-compliance` · `ops-system` · `profile`
## WIP(尚未单独 ECR
(无显著未挂 ECR 的后端 WIP;工作区其它 FE chrome 属既有 Closed ECR 或 L0 UI
## Pointers
- Rules: `docs/PROJECT_RULES.md`
- Stack detail: `docs/TECH_STACK.md``.ai/tech-stack.md`
- ESS root: `.ess-root` 或环境变量 `ESS_ROOT`
- Agent entry: `AGENTS.md` · `CLAUDE.md`