Skip to content

feat: 增加远程命令状态接受策略 - #25

Merged
CSJ608 merged 1 commit into
mainfrom
feat-remote-command-state-policy
Aug 29, 2026
Merged

CSJ608 merged 1 commit into
mainfrom
feat-remote-command-state-policy

Conversation

@CSJ608

@CSJ608 CSJ608 commented Aug 29, 2026

Copy link
Copy Markdown
Owner

变更

  • 为 GemEquipmentServices 增加单一、精确可释放的远程命令接受策略。
  • 策略在严格解码后获得当前 CommunicationState、OnlineState 和 GemRemoteCommand,并在锁外决定是否交给现有执行处理器。
  • 策略拒绝时返回 profile 失败值和空参数结果,执行处理器不被调用,双方 GEM 状态保持不变。
  • 未注册接受策略时保持既有执行行为;策略释放后后续请求恢复默认放行。
  • 没有执行处理器时继续立即失败,接受策略不会被调用。
  • 更新 README、GEM 行为文档、端点角色、标准边界、路线图与 CHANGELOG。

验证

  • dotnet build SecsFrame.slnx -c Release
    • 0 警告,0 错误
  • dotnet test SecsFrame.slnx -c Release --no-build
    • SecsFrame.Tests: net8.0/net10.0/net48 各 200/200
    • SecsFrame.Secs4NetInterop.Tests: net8.0/net10.0 各 2/2
    • 互操作项目继续使用 nuget.org 官方 Secs4Net 3.1.0

新增状态测试覆盖 Communicating + Online 快照、策略拒绝短路、同会话改为接受后执行、策略释放后默认放行,以及无执行处理器时不调用接受策略。

标准边界

策略默认不注册,库不内置未经授权 E30-0526 核对的远程命令状态矩阵,也不声明完整 GEM 合规。

@CSJ608
CSJ608 merged commit d2871a0 into main Aug 29, 2026
5 of 6 checks passed
@CSJ608
CSJ608 deleted the feat-remote-command-state-policy branch August 29, 2026 03:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant