文档 · 开始 文档概览 选择正确的阅读入口,并了解当前 pre-alpha 边界。 文档 · 开始 快速开始 安装锁定的工具链,并在本地验证仓库。 文档 · 开始 Core 合约示例 无需 Runtime 依赖,编译首个 Agent、类型化 Tool、Model Stream 与显式协议映射。 文档 · 开始 强类型 Agent 生成并固定类型化 Schema,再绑定第一方 OpenAI 与 Anthropic Adapter。 文档 · 开始 进程内 Agent 无需 HTTP 运行强类型 Agent,同时保留 PostgreSQL 持久化、鉴权、恢复与自持有角色。 文档 · 开始 持久化准入 原子提交已认证 Intent、数据库时间、首 Event 与初始 Checkpoint。 文档 · 开始 可恢复 Run 与 Result 使用持久化 Ingress Key 提交、恢复原 Run,并读取经过验证的公开 Result。 文档 · 理解 编译确定性 Graph 构建 Schema-pinned Graph,验证拓扑,并冻结 Canonical Digest。 文档 · 理解 子图与循环 组合共享状态子图、有界循环与能够在中断后恢复的显式返回路径。 文档 · 理解 Skill 组合 在能力包、共享状态子图、持久子 Run 与受保护 MCP Skill 之间选择,不创建第二套 Runtime。 文档 · 理解 持久执行模型 理解 Journal、Checkpoint、Lease、Fence 与恢复证据如何协同。 文档 · 理解 可恢复 Graph Runtime 注册精确可执行代码、重放非初始状态,并在一个 Fence 下驱动确定性有界 Sibling Batch。 文档 · 理解 可恢复 Agent Loop 提交 Lifecycle Handoff,并执行一个 Tenant-scoped 可恢复调度 Quantum。 文档 · 理解 可恢复调用执行 通过持久化 Start、分阶段有序 Tool Coordination、Streaming 校验与 No-dispatch Terminal Recovery 执行精确 Model/Tool Attempt。 文档 · 理解 Provider-native Agent 编译并运维支持有界 Output Repair、有序 Parallel Read-only Tool 与 Write Barrier 的可恢复多轮 Graph,并固定 Policy、Accounting 与 Cancellation Evidence。 文档 · 集成 本地 Rust Tool 生成 Digest-pinned Schema、注册强类型本地代码,并保留持久执行边界。 文档 · 集成 AgentService v1 通过带版本的嵌入式边界授权并暴露精确版本的可恢复 Agent。 文档 · 集成 Agent HTTP v1 通过经过认证、有资源上限的 JSON HTTP 接口提交、找回、读取与取消 Agent。 文档 · 集成 通用 MCP Tool Client 通过 JSON/SSE、OAuth、Custom Header 与受控 MRTR 发现和调用有界 Stateless MCP 2026-07-28 Tool。 文档 · 集成 MCP OAuth Client 将一个 MCP Resource 绑定到 Challenge-driven Discovery、PKCE、Issuer 校验、持久化 Credential 与有界 Replay。 文档 · 集成 MCP Remote Tool 固定 Identity、Schema、可恢复 Dispatch 与 Reconciliation,绑定严格 Stateless MCP 2026-07-28 Tool。 文档 · 集成 MCP Server Profile 在严格 Stateless 生产边界后暴露有界 Tools、Resources、Prompts、Completion 与 MRTR。 文档 · 集成 MCP Skills 通过不可变 Manifest、Origin-scoped 审批与校验后延迟读取发布并激活 Final SEP-2640 静态 Skill。 文档 · 集成 MCP Conformance 状态 查看冻结的官方 Runner 清单、已实现证据与当前 MCP 声明的精确边界。 文档 · 集成 A2A 1.0 Client 发现并固定一个 Agent,调用全部 11 个 Operation,并只依据已背书的远端保证对持久化 Unknown Send 执行 Reconciliation。 文档 · 集成 Artifact 持久化存储 将 Terminal A2A Part 物化为不可变 PostgreSQL Metadata 与私有、经过完整性校验的 Object Bytes。 文档 · 集成 A2A 1.0 Server 通过 Identity-first Policy 与可恢复 Service 合约暴露有界 HTTP+JSON 和 JSON-RPC/SSE。 文档 · 集成 A2A Conformance 状态 查看冻结的官方 TCK、已审计 Harness Patch、精确结果与 Server-only 声明边界。 文档 · 运维 公平调度 配置 Replica-safe 加权 Tenant Selection、精确 Starvation Bound、Rollout 与 Retention。 文档 · 运维 PostgreSQL Provider 配置、迁移、校验并测试已实现的持久化 Provider。 文档 · 运维 宿主验证 记录有界容量、恢复与故障证据,避免把 CI 结果误写成生产 SLO。 文档 · 项目 版本与发布 精确固定公共 Alpha,并理解兼容性、MSRV、持久化数据与发布门禁。 文档 · 项目 实现状态 区分已经实现、正在开发和明确尚未支持的能力。 首页 架构图 查看已经实现、正在开发和规划中的边界。 首页 当前实现 已经实现的切片与明确缺口。 首页 路线图 从合约走向可验证 v1 的开发顺序。 仓库 源代码 StateKnot/StateKnot on GitHub. 仓库 RFCs 架构与持久执行合约草案。 仓库 安全策略 私密漏洞报告与支持策略。
↑↓ 选择 ↵ 打开 39 项结果

Pre-alpha 文档

重试提交,恢复同一个 Agent Run。

使用租户隔离的持久化幂等记录,再按 Run ID 或 Submission Key 读取完整重校验的公开 Run/Result Snapshot。

让 Key 与 Run 在同一事务提交

先认证 Tenant、冻结 Policy 与 Deployment Input,再调用 submit。Key Mapping 与新原子 Admission 在同一 Transaction Commit,因此成功 Mapping 不可能指向只创建了一半的 Run。

Rust · 可信 Ingress
let runs = DurableAgentRuns::new(store.clone(), executable_registry)?;
let key = AgentSubmissionKey::generate();

let request = DurableAgentAdmissionRequest::new(
    tenant_id.clone(),
    AgentRunIds::generate(),
    agent_descriptor,
    agent_request,
    evaluated_budget_layers,
    graph_reference,
    admission_authority,
    initial_state,
)?;

let admitted = runs.submit(&key, request).await?;
let run_id = admitted.snapshot().provenance().run_id();

默认 Key 包含 148 位随机量。外部 Key 必须由 [A-Za-z0-9._~-] 中的 16–128 个字节组成,并提供至少 128 位不可预测性。PostgreSQL 只保存 Tenant-scoped Digest;Raw Key 不进入持久化 Row,也不会出现在 Debug 中。

重试 Logical Content,而不是 Candidate Identity

结果不明时,复用同一 Key 与所有不可变 Logical Input:Agent、Request、Budget、Graph、 Authorization Evidence 和 Initial State。新尝试可以重新生成 Run/Thread/Invocation/Event/Checkpoint ID,第一次选中的 Run 仍然胜出。

Rust · Lost Acknowledgement
// 重建相同 Logical Content;Candidate ID 可以全新生成。
let retry = DurableAgentAdmissionRequest::new(
    tenant_id.clone(),
    AgentRunIds::generate(),
    retained_agent_descriptor,
    retained_agent_request,
    retained_budget_layers,
    retained_graph_reference,
    retained_authority,
    retained_initial_state,
)?;

let resolved = runs.submit(&key, retry).await?;
assert_eq!(resolved.snapshot().provenance().run_id(), original_run_id);

let current = runs.load_by_key(&tenant_id, &key).await?;

Logical Content 变化会返回 Conflict;同一 Run 换第二个 Key 也会 Conflict。完成本地 Deployment 重校验后,持久化 Key Evidence 会先于新的数据库时钟与 Initial-checkpoint Admission Check;有效 Lost-ACK Retry 跨过原 Deadline 后仍只解析到 原 Run,缺少精确 Executable Code 时则 Fail Closed。

轮询封闭的公开 Snapshot

Observation Identity
使用 (run_id, revision);Revision 单调,相同 Revision 表示同一个 Lifecycle Observation。
Nonterminal State
active、waiting 与 cancellation_requested 必须显式返回 outcome: null。
Terminal State
succeeded 返回经过 Schema 与 Budget 校验的 AgentResult;failed 与 cancelled 返回 Public-safe Failure、Completion Time 与累计 Usage。
Quarantine
Quarantined Run 仍可观察,但不会被静默表示为可执行工作。

Response 不含 Request Input、Authorization Evidence、Graph State、Lease、Scheduler Internal 或 Private Diagnostic。每次 Load 都会重查不可变 Deployment、Schema、 Admission Anchor、Lifecycle、Provenance、Output 与 Accounting 后再返回。

每次 Lookup 前都先授权

Tenant ID、Run ID 与 Submission Key 是关联 Identity,不是访问凭据。调用 load 或 load_by_key 前先认证并授权 Caller,把 PostgreSQL Credential 留在可信 Service 内,并转换 Not-found/Conflict Response,避免泄漏 Cross-tenant 资源是否存在。

发布 Migration 16,但不能削弱 Retry

使用独立 Role 执行 Migration,启动时强制校验精确 Checksum 与 Schema Object,再部署冻结 Executable Registry 后开启流量。Client 仍可能 Retry 时绝不能删除 Key Mapping,否则会允许第二个 Run。未来 Retention 必须在 Retry Guarantee 到期后同时移除 Run、Admission 与 Key Evidence。

PostgreSQL 16/17 验证覆盖带数据的 v15→v16 Upgrade、24 路收敛、Changed-content 与 Second-key Conflict、Raw Key 不落库、Tamper 拒绝、晚期 Transaction Rollback,以及通过公开 Facade 验证 Succeeded、Failed 与已确认 Cancelled Result。采用该公共预览 API 前,请阅读完整集成契约。