Skip to content

feat(workbench): support durable NoKV restore#958

Open
wchwawa wants to merge 3 commits into
Lingtai-AI:mainfrom
wchwawa:feat/nokv-durable-restore
Open

feat(workbench): support durable NoKV restore#958
wchwawa wants to merge 3 commits into
Lingtai-AI:mainfrom
wchwawa:feat/nokv-durable-restore

Conversation

@wchwawa

@wchwawa wchwawa commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Summary

  • preserve MCP structuredContent across stdio and HTTP transports
  • promote structured JSON tool errors to stable top-level code, message, retryable, and details fields while preserving legacy plain-text behavior
  • update the NoKV workbench skill to v0.4 with durable restore retry, terminal-state, and manifest validation rules
  • strengthen deployment preflight to validate the raw restore schema and capability-gated tool advertisement

Design boundary

LingTai does not keep a second restore state machine or orchestrate a multi-step copy. After MCP reconnect it reuses the saved numeric snapshot ID and resends the same strict request. No Agent startup path is hard-coded to NoKV, and the change does not auto-revive a destination workbench or couple restore to CPR internals.

The transport decoder is protocol-generic; NoKV-specific policy remains in the intrinsic workbench skill and deployment preflight.

Validation

  • 179 focused MCP, capability, skill, reconnect, config, discovery, LICC, and skill-manual tests passed
  • Ruff checks passed for all changed Python files
  • companion NoKV full --require-all live E2E passed with real RustFS, NoKV serve, Agent registration/reconnect, and two independent MCP clients

Companion NoKV PR: NoKV-Lab/NoKV#407
Prerequisite Holt PR: NoKV-Lab/holt#29

wchwawa added 2 commits July 16, 2026 05:01
Signed-off-by: wchwawa <wch19961116@gmail.com>
Signed-off-by: wchwawa <wch19961116@gmail.com>
@wchwawa
wchwawa marked this pull request as ready for review July 16, 2026 06:48
Signed-off-by: wchwawa <wch19961116@gmail.com>
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