ForcePilot/backend/package/yuxi/channels/contract/__init__.py
Kris 8eead29de0 refactor: 批量清理冗余空行,优化部分枚举使用方式
1.  移除所有适配器文件中多余的空导入行
2.  调整ValidationError继承,移除不必要的ValueError继承
3.  修正多处ChannelType使用方式,从.value改为直接使用枚举实例
4.  优化飞书插件部分硬编码渠道类型为枚举实例
5.  更新wechat_ilink插件清单与适配器配置
6.  新增飞书目录适配器缓存清理支持判断与iLink生命周期适配器凭据轮换支持判断
7.  优化配置处理器历史查询逻辑,区分键不存在与无历史记录场景
2026-07-04 00:14:56 +08:00

334 lines
8.2 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""多渠道网关契约层入口。
契约层是横切层所有层core/application/adapters/framework均可依赖
自身不得依赖任何实现层。本包聚合驱动端口、被驱动端口、DTO、错误类型、
渠道插件协议等子模块,提供统一导出入口。
子包分组:
- **端口**ports25 个驱动端口 + 28 个被驱动端口,定义核心与外部边界
的交互契约,使用 ``typing.Protocol`` + ``@runtime_checkable`` 风格声明。
- **DTO**dtos38 个模块的跨层共享不可变值对象(``dataclass(frozen=True)``
覆盖渠道、消息、路由、身份、会话、健康、配置、审计、插件等全场景。
- **错误**errorsClient / Server / Domain 三大类错误层级,禁止原生异常
穿透至核心层。
- **插件协议**plugin渠道插件协议组合式适配器契约包含插件入口、
清单、能力声明与证明、生命周期钩子、扩展点协议与 15 个适配器协议。
入参 / 出参均为契约层不可变值对象,不泄露领域实体引用。
"""
from __future__ import annotations
# DTOdtos核心跨层共享值对象按使用频率选取主要类型
from yuxi.channels.contract.dtos import (
AdminSendCmd,
AdminSendResult,
Attachment,
ChannelAccount,
ChannelHealth,
ChannelSession,
ChannelType,
ControlCmd,
ControlResult,
ConversationId,
FailureDetail,
HealthQuery,
InboundMessageCmd,
InboundResult,
LifecycleCmd,
LifecycleResult,
Message,
MessageContent,
MessageFormat,
MessageId,
Operator,
OperatorRole,
RawEvent,
RequestId,
SaveMessageCmd,
SkipDetail,
TraceContext,
TraceId,
)
# 错误类型errorsbase / client / server / domain
from yuxi.channels.contract.errors import (
AuthError,
BotLoopBudgetExceededError,
CapabilityNotProvenError,
ChannelDegradedError,
ClientError,
ConfigNotHotReloadableError,
ConfigRestartRequiredError,
ConfigRollbackError,
ConfigValidationError,
ConfigVersionConflictError,
ConflictError,
DependencyError,
DmDeniedError,
DomainError,
Error,
InternalError,
NotFoundError,
OperationTimeoutError,
PairingExpiredError,
PermissionDeniedError,
PluginAlreadyRegisteredError,
PluginFailedError,
PluginNotFoundError,
RateLimitError,
RuleViolationError,
SchemaInitializationError,
ServerError,
ValidationError,
)
# 插件协议pluginmanifest / entry / capability / lifecycle / extension_point / adapters
from yuxi.channels.contract.plugin import (
CHANNEL_ENTRY,
CapabilityDeclaration,
CapabilityProof,
CapabilityProver,
ChannelManifest,
CommandAdapter,
ConfigField,
ConfigSource,
ConflictStrategy,
DirectoryAdapter,
DoctorAdapter,
EventSubscription,
FailurePolicy,
FailureStrategy,
IdentityResolverAdapter,
InboundAdapter,
LifecycleHook,
LifecycleHookHandler,
LifecycleState,
MentionAdapter,
MessageOpsAdapter,
OutboundAdapter,
PluginDependency,
PluginHost,
PluginManifest,
ResourceQuota,
RichMessageAdapter,
SessionAdapter,
Stage,
StageSlot,
StatusAdapter,
StreamingAdapter,
ToolsAdapter,
WhitelistAdapter,
WizardAdapter,
)
# 端口ports26 个驱动端口 + 27 个被驱动端口
from yuxi.channels.contract.ports import (
AccountManagementPort,
AdminMessagePort,
AgentManagementPort,
AgentRunExecutionPort,
AgentRunPort,
AnalyticsViewPort,
AuditLogRepositoryPort,
AuditQueryPort,
CachePort,
CapabilityQueryPort,
ChannelAccountRepositoryPort,
ChannelContextProviderPort,
ChannelLoginPort,
ChannelSessionRepositoryPort,
ChannelToolExecutorPort,
CloseablePort,
ConfigManagementPort,
ConfigPort,
ContentReviewPort,
ContentReviewQueryPort,
ConversationPort,
DashboardViewPort,
DirectoryPort,
DoctorPort,
EventPublisherPort,
HealthAggregatorPort,
HealthCheckPort,
IdempotencyRepositoryPort,
IdentityResolverPort,
InboundMessagePort,
LoggerPort,
MaskingPort,
MessageManagementPort,
MessageOpsPort,
OutboxManagementPort,
OutboxRepositoryPort,
PairingManagementPort,
PairingRepositoryPort,
PersistenceHealthPort,
PersistencePort,
PingablePort,
PluginLifecycleManagerPort,
PluginLifecyclePort,
PluginManagementPort,
QueuePort,
ReportManagementPort,
SessionManagementPort,
TracerPort,
TransactionPort,
UserBindingPort,
UserIdentityRepositoryPort,
WhitelistCommandPort,
WhitelistManagementPort,
WizardPort,
)
__all__ = [
# 端口ports
"AccountManagementPort",
"AdminMessagePort",
"AgentManagementPort",
"AgentRunExecutionPort",
"AgentRunPort",
"AnalyticsViewPort",
"AuditLogRepositoryPort",
"AuditQueryPort",
"CachePort",
"CapabilityQueryPort",
"ChannelAccountRepositoryPort",
"ChannelContextProviderPort",
"ChannelLoginPort",
"ChannelSessionRepositoryPort",
"ChannelToolExecutorPort",
"CloseablePort",
"ConfigManagementPort",
"ConfigPort",
"ContentReviewPort",
"ContentReviewQueryPort",
"ConversationPort",
"DashboardViewPort",
"DirectoryPort",
"DoctorPort",
"EventPublisherPort",
"HealthAggregatorPort",
"HealthCheckPort",
"IdempotencyRepositoryPort",
"IdentityResolverPort",
"InboundMessagePort",
"LoggerPort",
"MaskingPort",
"MessageManagementPort",
"MessageOpsPort",
"OutboxManagementPort",
"OutboxRepositoryPort",
"PairingManagementPort",
"PairingRepositoryPort",
"PersistenceHealthPort",
"PersistencePort",
"PingablePort",
"PluginLifecycleManagerPort",
"PluginLifecyclePort",
"PluginManagementPort",
"QueuePort",
"ReportManagementPort",
"SessionManagementPort",
"TransactionPort",
"TracerPort",
"UserBindingPort",
"UserIdentityRepositoryPort",
"WhitelistCommandPort",
"WhitelistManagementPort",
"WizardPort",
# 错误类型errors
"AuthError",
"BotLoopBudgetExceededError",
"CapabilityNotProvenError",
"ChannelDegradedError",
"ClientError",
"ConfigNotHotReloadableError",
"ConfigRestartRequiredError",
"ConfigRollbackError",
"ConfigValidationError",
"ConfigVersionConflictError",
"ConflictError",
"DependencyError",
"DmDeniedError",
"DomainError",
"Error",
"InternalError",
"NotFoundError",
"PairingExpiredError",
"PermissionDeniedError",
"PluginAlreadyRegisteredError",
"PluginFailedError",
"PluginNotFoundError",
"RateLimitError",
"RuleViolationError",
"SchemaInitializationError",
"ServerError",
"OperationTimeoutError",
"ValidationError",
# 插件协议plugin
"CHANNEL_ENTRY",
"CapabilityDeclaration",
"CapabilityProof",
"CapabilityProver",
"ChannelManifest",
"CommandAdapter",
"ConfigField",
"ConflictStrategy",
"ConfigSource",
"DirectoryAdapter",
"DoctorAdapter",
"EventSubscription",
"FailurePolicy",
"FailureStrategy",
"IdentityResolverAdapter",
"InboundAdapter",
"LifecycleHook",
"LifecycleHookHandler",
"LifecycleState",
"MentionAdapter",
"MessageOpsAdapter",
"OutboundAdapter",
"PluginDependency",
"PluginHost",
"PluginManifest",
"ResourceQuota",
"RichMessageAdapter",
"SessionAdapter",
"Stage",
"StageSlot",
"StatusAdapter",
"StreamingAdapter",
"ToolsAdapter",
"WhitelistAdapter",
"WizardAdapter",
# DTOdtos核心类型
"AdminSendCmd",
"AdminSendResult",
"Attachment",
"ChannelAccount",
"ChannelHealth",
"ChannelSession",
"ChannelType",
"ControlCmd",
"ControlResult",
"ConversationId",
"FailureDetail",
"HealthQuery",
"InboundMessageCmd",
"InboundResult",
"LifecycleCmd",
"LifecycleResult",
"Message",
"MessageContent",
"MessageFormat",
"MessageId",
"Operator",
"OperatorRole",
"RawEvent",
"RequestId",
"SaveMessageCmd",
"SkipDetail",
"TraceContext",
"TraceId",
]