forked from bai/curriculum-project-hub
42 lines
2.3 KiB
Lean4
42 lines
2.3 KiB
Lean4
import Spec.System.ProjectGroup
|
||
import Spec.System.Organization
|
||
import Spec.System.ProjectWorkspace
|
||
import Spec.System.Capacity
|
||
import Spec.System.PlatformAdministration
|
||
import Spec.System.Run
|
||
import Spec.System.Lock
|
||
import Spec.System.Memory
|
||
import Spec.System.AgentSurface
|
||
import Spec.System.Permission
|
||
import Spec.System.PermissionGrant
|
||
import Spec.System.Audit
|
||
/-!
|
||
# System —— Hub 平台层契约
|
||
|
||
协作与执行的平台:项目、飞书群、AgentRun、锁、权限、审计、按需上下文。likec4
|
||
(`docs/architecture/likec4/`)已画出这一层的**结构**;本层只补 likec4 画不出的
|
||
**语义分歧点**:
|
||
|
||
- `ProjectGroup` —— project↔飞书群 1:1 长生命周期绑定(ADR-0001);群是协作空间,不持锁。
|
||
- `Organization` —— SaaS tenant root(ADR-0020);project/team 单归属,TEAM grant 不跨 org;
|
||
connection secret 使用本地主密钥信封与 fail-closed resolver(ADR-0024)。
|
||
- `ProjectWorkspace` —— org 后台 project explorer:folder 是透明组织节点,project 仍是权限边界
|
||
(ADR-0021)。
|
||
- `Capacity` —— platform ceiling 与 org policy 的分层限制、持久 admission request 状态和
|
||
平台紧急工作负载制动(ADR-0022)。
|
||
- `PlatformAdministration` —— 独立平台身份/会话、单一管理员角色、绑定邀请、最后管理员
|
||
保护、fail-closed 平台审计与离线 emergency grant(ADR-0023)。
|
||
- `Run` —— AgentRun 状态与终止判定(状态集合完整性 OPEN)。
|
||
- `Lock` —— 锁 owner=run(ADR-0002),及"持锁者必为非终止 run"的核心不变式。
|
||
- `Memory` —— 按需上下文:锚点类别(ADR-0003)+ MCP 工具按 run/project 上下文授权的不变式。
|
||
- `AgentSurface` —— agent 执行面被 run 的工作区所界定(ADR-0018);与 Lock 正交——
|
||
Lock 限定并发,Surface 限定波及面。机制 OPEN。
|
||
- `Permission` —— read⊂edit⊂manage 角色格、能力推导、单调性;force-release 在格外。
|
||
- `PermissionGrant` —— grant(resource×principal×role)与 settings(六 policy 旋钮)结构
|
||
(ADR-0004);role-capability 与 settings-policy 的组合规则 OPEN。
|
||
- `Audit` —— customer Project/Run 审计有意从简(内容多为 plumbing,OPEN);Platform
|
||
Audit 由 `PlatformAdministration` 独立钉死。
|
||
|
||
标识符见 `Spec.Prelude`。决策出处:ADR-0001..0004, 0018, 0020..0024。
|
||
-/
|