DevOS v1 + Phase 2: unified resource model, infra ops, website deployment, AI chat ops
- Monorepo: NestJS API (Fastify) + React web (antd/ProComponents) + shared packages - PostgreSQL/Prisma (unified resources, relations graph, audit, events, jobs) - Auth/RBAC/workspace isolation, credential vault (AES-256-GCM) - Servers/SSH, Docker discovery & lifecycle, Job Center - Websites & deployments (git provider credential clone, env, health verification) - Domains/DNS (Cloudflare adapter), certificates (TLS probe), monitoring - Automation (cron/event/webhook HMAC + notifications), AI Gateway, MCP (29 tools) - AI chat window (LLM function-calling + rules fallback, SSE streaming, approvals) - Notes: Vditor WYSIWYG markdown editor, non-blocking autosave - Tests: 35 unit/security tests; UI audit clean (desktop+mobile, deep links)
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# 02 — Unified Resource Model
|
||||
|
||||
## 原则
|
||||
Resource Registry 必须从“通用 CRUD”升级为平台的统一索引层。
|
||||
|
||||
## Resource 基础字段
|
||||
```ts
|
||||
interface Resource {
|
||||
id: string
|
||||
workspaceId: string
|
||||
type: ResourceType
|
||||
name: string
|
||||
status: string
|
||||
provider?: string
|
||||
externalId?: string
|
||||
metadata: Record<string, unknown>
|
||||
createdAt: Date
|
||||
updatedAt: Date
|
||||
}
|
||||
```
|
||||
|
||||
## 必须支持的类型
|
||||
Server, Container, Website, Domain, Certificate, Repository, Deployment, Database, Project, Task, Note, Document, Credential, Automation, Job, Monitor。
|
||||
|
||||
## Relation
|
||||
实现有方向关系并支持 relation type,例如:
|
||||
- PROJECT_HAS_REPOSITORY
|
||||
- PROJECT_HAS_WEBSITE
|
||||
- WEBSITE_DEPLOYED_TO_SERVER
|
||||
- WEBSITE_USES_DOMAIN
|
||||
- WEBSITE_HAS_DEPLOYMENT
|
||||
- DEPLOYMENT_FROM_REPOSITORY
|
||||
- DEPLOYMENT_TO_SERVER
|
||||
- SERVER_HAS_CONTAINER
|
||||
- PROJECT_HAS_TASK
|
||||
- PROJECT_HAS_DOCUMENT
|
||||
|
||||
## 关键要求
|
||||
- 所有资源必须 workspace scoped。
|
||||
- 资源详情页必须显示 Relations。
|
||||
- 支持反向关系。
|
||||
- 支持按关系跳转。
|
||||
- 删除资源前检查关系影响。
|
||||
- 不要让 Resource Registry 替代领域模型;它负责索引/关系/统一查询,领域模块负责业务规则。
|
||||
Reference in New Issue
Block a user