Skip to content

跨组织 SLA 管理

Phase 61 | v2.0.0 | 5 IPC 处理器 | 2 张新数据库表

核心特性

  • 📋 SLA 合约管理: 支持保障/惩罚/奖励条款的完整合约生命周期(DRAFT → ACTIVE → TERMINATED)
  • 自动合规检查: 实时对比实际指标与合约承诺,自动检测违约
  • ⚠️ 分级违约追踪: CRITICAL/MAJOR/MINOR 三级违约分类,支持自动升级和解决追踪
  • 📊 全局仪表板: 合约状态和违约事件概览,支持趋势分析
  • 🤝 跨组织协作: 面向联邦代理网络的多组织 SLA 管理

系统架构

┌──────────────┐     ┌──────────────┐
│  Org A       │     │  Org B       │
│  Agent Node  │◄───►│  Agent Node  │
└──────┬───────┘     └──────┬───────┘
       │                    │
       └────────┬───────────┘

       ┌────────▼────────┐
       │  SLA Manager    │
       │  ┌────────────┐ │
       │  │ Contract   │ │
       │  │ Engine     │ │
       │  ├────────────┤ │
       │  │ Compliance │ │
       │  │ Checker    │ │
       │  ├────────────┤ │
       │  │ Violation  │ │
       │  │ Tracker    │ │
       │  └────────────┘ │
       └────────┬────────┘

       ┌────────▼────────┐
       │  SQLite (2表)   │
       │  sla_contracts  │
       │  sla_violations │
       └─────────────────┘

概述

Phase 61 为联邦代理网络引入跨组织服务级别协议(SLA)管理能力,支持合约创建、合规检查和违约追踪,保障跨组织协作的服务质量。

核心目标:

  • 合约管理: SLA 合约 CRUD,支持保障/惩罚/奖励条款
  • 合规检查: 自动对比实际指标与合约承诺
  • 违约追踪: 分级记录违约事件,支持升级和解决
  • 仪表板: 全局合约和违约状态概览

合约生命周期

DRAFT → ACTIVE → VIOLATED → TERMINATED
                    │               │
                    └── EXPIRED ────┘
状态说明
DRAFT草稿,双方协商中
ACTIVE生效中
VIOLATED发生违约
EXPIRED到期失效
TERMINATED提前终止

核心功能

1. 创建 SLA 合约

javascript
const contract = await window.electronAPI.invoke('sla:create-contract', {
  name: 'org-a-b-premium-sla',
  orgId: 'org-a',
  partnerOrgId: 'org-b',
  guarantees: {
    maxExecutionMs: 30000,    // 最大执行时间 30s
    minAvailability: 0.99,    // 最低可用性 99%
    minQualityScore: 0.8      // 最低质量评分 0.8
  },
  penalties: {
    availability: { threshold: 0.95, action: 'CREDIT_REFUND' },
    execution: { threshold: 60000, action: 'ESCALATE' }
  },
  rewards: {
    overPerformance: { threshold: 0.999, bonus: 'REPUTATION_BOOST' }
  },
  validFrom: '2026-03-01',
  validUntil: '2026-12-31'
});

2. 合规检查

javascript
const compliance = await window.electronAPI.invoke('sla:check-compliance', {
  contractId: 'sla-001'
});

console.log(compliance);
// {
//   contractId: 'sla-001',
//   compliant: false,
//   checks: [
//     { metric: 'maxExecutionMs', guaranteed: 30000, actual: 28500, passed: true },
//     { metric: 'minAvailability', guaranteed: 0.99, actual: 0.985, passed: false },
//     { metric: 'minQualityScore', guaranteed: 0.8, actual: 0.92, passed: true }
//   ],
//   violations: [{ severity: 'MAJOR', metric: 'minAvailability', ... }]
// }

3. 违约查询

javascript
const violations = await window.electronAPI.invoke('sla:get-violations', {
  filter: { contractId: 'sla-001', severity: 'CRITICAL' }
});

4. 仪表板

javascript
const dashboard = await window.electronAPI.invoke('sla:get-dashboard');
// {
//   contracts: { total: 15, active: 10, violated: 2, expired: 3 },
//   violations: { total: 8, critical: 1, major: 3, minor: 4, resolved: 5 }
// }

违约严重度

严重度触发条件响应动作
CRITICAL可用性 < 95%自动升级 + 退款
MAJOR可用性 < 99% 或执行超时 2x通知 + 记录
MINOR质量评分轻微下降记录

IPC 通道

通道参数返回值
sla:list-contracts{ filter? }合约列表
sla:create-contract{ name, orgId, partnerOrgId, guarantees, ... }合约对象
sla:get-violations{ filter? }违约列表
sla:check-compliance{ contractId }合规结果
sla:get-dashboard仪表板数据

数据库表

sla_contracts

字段类型说明
idTEXT PK合约 ID
nameTEXT合约名称
org_idTEXT发起方组织 ID
partner_org_idTEXT合作方组织 ID
statusTEXT合约状态
guaranteesJSON保障条款
penaltiesJSON惩罚条款
rewardsJSON奖励条款
valid_fromTEXT生效日期
valid_untilTEXT失效日期
created_atINTEGER创建时间

sla_violations

字段类型说明
idTEXT PK违约 ID
contract_idTEXT FK关联合约 ID
severityTEXTCRITICAL/MAJOR/MINOR
metricTEXT违约指标名
expected_valueREAL承诺值
actual_valueREAL实际值
descriptionTEXT违约描述
escalatedINTEGER是否已升级(0/1)
resolvedINTEGER是否已解决(0/1)
created_atINTEGER创建时间

相关链接

关键文件

文件职责行数
src/main/enterprise/sla-manager.jsSLA 合约管理核心引擎~380
src/main/enterprise/sla-compliance-checker.js合规检查与违约检测~250
src/main/ipc/ipc-sla.jsSLA IPC 处理器注册~120
src/renderer/stores/sla.tsSLA Pinia 状态管理~150

相关文档

基于 MIT 许可发布