feat: publish Dever core with project scaffolding and versioned AI skills

This commit is contained in:
Antigravity committed 2026-10-04 13:37:30 +00:00
1 parent 70fa73cdc2
commit ac458ffa7f
960 files changed
+221319 -1163

No files matched your search

@@ -0,0 +1,81 @@
# 成员应用
成员应用建立租户关系并验证有效成员。
- 包:`user.membership.app`
- 公开类型:无
- 公开方法:
- `grant_owner`
- `require_active`
- `active`
- 使用:
- `user.membership.grant_owner(account_id, selected_tenant_id)`
- `user.membership.require_active(account_id, selected_tenant_id)`
- `user.membership.active(stored)`
## 授予所有者
本节定义对应的源码合同。
- 函数:`grant_owner`
- 输入:
- `account_id: user.account.model.principal.id`:用户主体
- `selected_tenant_id: platform.tenant.model.id`:租户
- 输出:无
```dever
grant_owner(
account_id: user.account.model.principal.id,
selected_tenant_id: platform.tenant.model.id
) () {
stored = model.create(
{
user_id = account_id
tenant_id = selected_tenant_id
role = model.MembershipRole.Owner
}
)
discarded = stored
}
```
## 验证有效成员
本节定义对应的源码合同。
- 函数:`require_active`
- 输入:
- `account_id: user.account.model.principal.id`:用户主体
- `selected_tenant_id: platform.tenant.model.id`:租户
- 输出:无
```dever
require_active(
account_id: user.account.model.principal.id,
selected_tenant_id: platform.tenant.model.id
) () {
stored = model.first(
{
where = user_id == account_id and tenant_id == selected_tenant_id and status == model.MembershipStatus.Active
}
)
active(stored)
}
```
## 检查查询结果
本节定义对应的源码合同。
- 函数:`active`
- 输入:
- `stored: user.membership.model.Membership?`:成员查询结果
- 输出:无
```dever
active(stored: model.Membership) () {}
active(stored: null) () {
fail(dever.api.Error.Unauthorized)
}
```
@@ -0,0 +1,75 @@
# 租户成员模型
控制库保存用户主体在租户中的角色。
- 包:`user.membership.model`
- 公开类型:
- `MembershipRole`
- `MembershipStatus`
- `Membership`
- 公开方法:无
- 使用:无
## 成员角色
本节定义对应的源码合同。
- 类型:`MembershipRole`
- 分支:
- `Owner`:所有者
- `Editor`:编辑
- `Reader`:读者
```dever
type MembershipRole {
Owner = "所有者"
Editor = "编辑"
Reader = "读者"
}
```
## 成员状态
本节定义对应的源码合同。
- 类型:`MembershipStatus`
- 分支:
- `Active`:启用
- `Disabled`:禁用
```dever
type MembershipStatus {
Active = "启用"
Disabled = "禁用"
}
```
## 成员记录
本节定义对应的源码合同。
- 类型:`Membership`
- 字段:
- `user_id: user.account.model.principal.id`:用户主体
- `tenant_id: platform.tenant.model.id`:租户
- `role: MembershipRole`:角色
- `status: MembershipStatus`:状态
```dever
global type Membership {
user_id: user.account.model.principal.id
tenant_id: platform.tenant.model.id
role: MembershipRole index
status: MembershipStatus default MembershipStatus.Active index
}
```
## 成员唯一约束
本节定义对应的源码合同。
- 声明:`unique(user_id, tenant_id)`
```dever
unique(user_id, tenant_id)
```