Skip to content

@codesoul-co/hypha-core / contracts/execution-governance

模块用法

用于声明并运行时校验契约。Execution governance 模块公开 2 常量、4 接口、3 类型。

从包入口导入

ts
import {
  EXECUTION_SANDBOX_LEVELS,
  EXECUTION_TOOL_OPERATIONS,
} from '@codesoul-co/hypha-core';

import type {
  ExecutionRiskAssessment,
  ExecutionRiskEvaluationInput,
  ExecutionRiskEvaluator,
  ExecutionToolBinding,
  ExecutionSandboxLevel,
  ExecutionToolOperation,
  ExecutionToolSideEffectLevel,
} from '@codesoul-co/hypha-core';

使用要点

  • 7 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。
  • 2 个常量/枚举提供稳定值、Schema、Definition 或默认配置;应复用这些导出,避免在应用中复制内部值。

公共导出

Symbol种类签名说明
EXECUTION_SANDBOX_LEVELS常量const EXECUTION_SANDBOX_LEVELS: readonly ["local", "container", "remote_isolated"]contracts/execution-governance 模块导出的 EXECUTION SANDBOX LEVELS 常量。
EXECUTION_TOOL_OPERATIONS常量const EXECUTION_TOOL_OPERATIONS: readonly ["file_read", "file_write", "command", "sandbox", "artifact"]contracts/execution-governance 模块导出的 EXECUTION TOOL OPERATIONS 常量。
ExecutionRiskAssessment接口interface ExecutionRiskAssessmentExecution Risk Assessment 接口,共包含 7 个公开字段或方法。
ExecutionRiskEvaluationInput接口interface ExecutionRiskEvaluationInputExecution Risk Evaluation Input 接口,共包含 6 个公开字段或方法。
ExecutionRiskEvaluator接口interface ExecutionRiskEvaluatorExecution Risk Evaluator 接口,共包含 1 个公开字段或方法。
ExecutionToolBinding接口interface ExecutionToolBindingExecution Tool Binding 接口,共包含 6 个公开字段或方法。
ExecutionSandboxLevel类型type ExecutionSandboxLevel = (typeof EXECUTION_SANDBOX_LEVELS)[number]Execution Sandbox Level 公共类型别名;完整类型表达式见声明。
ExecutionToolOperation类型type ExecutionToolOperation = (typeof EXECUTION_TOOL_OPERATIONS)[number]Execution Tool Operation 公共类型别名;完整类型表达式见声明。
ExecutionToolSideEffectLevel类型type ExecutionToolSideEffectLevel = Exclude<SideEffectLevel, 'none'>Execution Tool Side Effect Level 公共类型别名;完整类型表达式见声明。

EXECUTION_SANDBOX_LEVELS

contracts/execution-governance 模块导出的 EXECUTION SANDBOX LEVELS 常量。

声明

text
export declare const EXECUTION_SANDBOX_LEVELS: readonly ["local", "container", "remote_isolated"];

EXECUTION_TOOL_OPERATIONS

contracts/execution-governance 模块导出的 EXECUTION TOOL OPERATIONS 常量。

声明

text
export declare const EXECUTION_TOOL_OPERATIONS: readonly ["file_read", "file_write", "command", "sandbox", "artifact"];

ExecutionRiskAssessment

Execution Risk Assessment 接口,共包含 7 个公开字段或方法。

声明

text
export interface ExecutionRiskAssessment {
    id: string;
    level: RiskLevel;
    reasons: string[];
    matchedRules?: string[];
    requiresApproval: boolean;
    recommendedSandboxLevel?: ExecutionSandboxLevel;
    evaluatedAt: string;
}

契约成员

成员种类签名说明
evaluatedAt属性evaluatedAt: string公开属性;类型、只读和可选状态以签名列为准。
id属性id: string公开属性;类型、只读和可选状态以签名列为准。
level属性level: RiskLevel公开属性;类型、只读和可选状态以签名列为准。
matchedRules属性matchedRules?: string[]公开属性;类型、只读和可选状态以签名列为准。
reasons属性reasons: string[]公开属性;类型、只读和可选状态以签名列为准。
recommendedSandboxLevel属性recommendedSandboxLevel?: "local" | "container" | "remote_isolated"公开属性;类型、只读和可选状态以签名列为准。
requiresApproval属性requiresApproval: boolean公开属性;类型、只读和可选状态以签名列为准。

ExecutionRiskEvaluationInput

Execution Risk Evaluation Input 接口,共包含 6 个公开字段或方法。

声明

text
export interface ExecutionRiskEvaluationInput {
    assessmentId: string;
    binding: ExecutionToolBinding;
    request: CommandExecutionRequest | WorkspaceOperationRequest;
    environment: ExecutionEnvironmentSpec;
    workspace: WorkspaceSpec;
    evaluatedAt: string;
}

契约成员

成员种类签名说明
assessmentId属性assessmentId: string公开属性;类型、只读和可选状态以签名列为准。
binding属性binding: ExecutionToolBinding公开属性;类型、只读和可选状态以签名列为准。
environment属性environment: ExecutionEnvironmentSpec公开属性;类型、只读和可选状态以签名列为准。
evaluatedAt属性evaluatedAt: string公开属性;类型、只读和可选状态以签名列为准。
request属性request: CommandExecutionRequest | WorkspaceOperationRequest公开属性;类型、只读和可选状态以签名列为准。
workspace属性workspace: WorkspaceSpec公开属性;类型、只读和可选状态以签名列为准。

ExecutionRiskEvaluator

Execution Risk Evaluator 接口,共包含 1 个公开字段或方法。

声明

text
export interface ExecutionRiskEvaluator {
    evaluate(input: ExecutionRiskEvaluationInput): ExecutionRiskAssessment;
}

契约成员

成员种类签名说明
evaluate方法evaluate(input: ExecutionRiskEvaluationInput): ExecutionRiskAssessment公开方法;参数与返回类型以签名列为准。

ExecutionToolBinding

Execution Tool Binding 接口,共包含 6 个公开字段或方法。

声明

text
export interface ExecutionToolBinding {
    toolId: string;
    operation: ExecutionToolOperation;
    executionProfileRef: string;
    requiredScopes: string[];
    sideEffectLevel: ExecutionToolSideEffectLevel;
    humanReviewPolicyRef?: string;
}

契约成员

成员种类签名说明
executionProfileRef属性executionProfileRef: string公开属性;类型、只读和可选状态以签名列为准。
humanReviewPolicyRef属性humanReviewPolicyRef?: string公开属性;类型、只读和可选状态以签名列为准。
operation属性operation: "artifact" | "command" | "file_read" | "file_write" | "sandbox"公开属性;类型、只读和可选状态以签名列为准。
requiredScopes属性requiredScopes: string[]公开属性;类型、只读和可选状态以签名列为准。
sideEffectLevel属性sideEffectLevel: ExecutionToolSideEffectLevel公开属性;类型、只读和可选状态以签名列为准。
toolId属性toolId: string公开属性;类型、只读和可选状态以签名列为准。

ExecutionSandboxLevel

Execution Sandbox Level 公共类型别名;完整类型表达式见声明。

声明

text
export type ExecutionSandboxLevel = (typeof EXECUTION_SANDBOX_LEVELS)[number];

ExecutionToolOperation

Execution Tool Operation 公共类型别名;完整类型表达式见声明。

声明

text
export type ExecutionToolOperation = (typeof EXECUTION_TOOL_OPERATIONS)[number];

ExecutionToolSideEffectLevel

Execution Tool Side Effect Level 公共类型别名;完整类型表达式见声明。

声明

text
export type ExecutionToolSideEffectLevel = Exclude<SideEffectLevel, 'none'>;