<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SDK 指南 on go-bitfs</title><link>https://63812707.go-bitfs.pages.dev/guide/sdk/</link><description>Recent content in SDK 指南 on go-bitfs</description><generator>Hugo</generator><language>zh-cn</language><atom:link href="https://63812707.go-bitfs.pages.dev/guide/sdk/index.xml" rel="self" type="application/rss+xml"/><item><title/><link>https://63812707.go-bitfs.pages.dev/guide/sdk/01-%E5%8D%8F%E8%AE%AE%E5%9F%BA%E7%A1%80%E4%B8%8Ecbor/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://63812707.go-bitfs.pages.dev/guide/sdk/01-%E5%8D%8F%E8%AE%AE%E5%9F%BA%E7%A1%80%E4%B8%8Ecbor/</guid><description>&lt;h1 id="01--协议基础与-cbor"&gt;01 · 协议基础与 CBOR&lt;/h1&gt;
&lt;p&gt;返回 &lt;a href="SDK-API%E6%A1%86%E6%9E%B6%E8%AE%BE%E8%AE%A1.md"&gt;SDK API 框架入口&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;当前代码已落地本页的核心边界：&lt;code&gt;bitfs&lt;/code&gt;、&lt;code&gt;pool&lt;/code&gt;、&lt;code&gt;buyer.Workflow&lt;/code&gt;、&lt;code&gt;seller.Workflow&lt;/code&gt;、&lt;code&gt;arbitration.Workflow&lt;/code&gt; 和 &lt;code&gt;wire&lt;/code&gt; 均可直接使用；本文中的伪代码用于说明职责，不替代 Go 包的实际签名。&lt;/p&gt;</description></item><item><title/><link>https://63812707.go-bitfs.pages.dev/guide/sdk/02-%E5%A4%96%E9%83%A8%E9%92%A9%E5%AD%90%E4%B8%8E%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://63812707.go-bitfs.pages.dev/guide/sdk/02-%E5%A4%96%E9%83%A8%E9%92%A9%E5%AD%90%E4%B8%8E%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B/</guid><description>&lt;h1 id="02--外部钩子与数据类型"&gt;02 · 外部钩子与数据类型&lt;/h1&gt;
&lt;p&gt;返回 &lt;a href="SDK-API%E6%A1%86%E6%9E%B6%E8%AE%BE%E8%AE%A1.md"&gt;SDK API 框架入口&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;调用方把钱包、持久化、内容源和节点能力注入 SDK。SDK 不要求某个数据库或 RPC 服务。&lt;/p&gt;
&lt;h2 id="签名时间与内容钩子"&gt;签名、时间与内容钩子&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-go" data-lang="go"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// Signer 使用调用方托管的私钥签出精确 bytes。&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// SDK 永不接收或保存私钥。&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Signer&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;interface&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;PublicKey&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;ctx&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;context&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Context&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;([]&lt;/span&gt;&lt;span class="kt"&gt;byte&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;Sign&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;ctx&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;context&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Context&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;payload&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="kt"&gt;byte&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;([]&lt;/span&gt;&lt;span class="kt"&gt;byte&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// SignatureVerifier 验证某个公钥对精确 payload 的签名。&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// 001、003、004 使用它；005 使用 MultisigPoolPort 的交易签名校验。&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;SignatureVerifier&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;interface&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;Verify&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;pubkey&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;payload&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;signature&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="kt"&gt;byte&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;error&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// Clock 使到期校验可测试，且禁止工作流直接调用 time.Now。&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Clock&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;interface&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;NowUnix&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;UnixSeconds&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// ContentSource 只由卖方实现。它按内容哈希返回 seed 或块的原始字节。&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// 返回的内容仍会由 SDK 再计算哈希和长度。&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;ContentSource&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;interface&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;LoadContent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;ctx&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;context&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Context&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;hash&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Hash32&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;([]&lt;/span&gt;&lt;span class="kt"&gt;byte&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// SeedSource 只由买方实现。请求 block 时提供已验证的 seed，SDK 会校验&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// seed_hash 以及 block hash 的成员关系。&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;SeedSource&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;interface&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;LoadSeed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;ctx&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;context&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Context&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;seedHash&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Hash32&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;([]&lt;/span&gt;&lt;span class="kt"&gt;byte&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// ContentSink 是买方可选的落盘钩子。SDK 在验证 004 后才调用它。&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;type&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;ContentSink&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kd"&gt;interface&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;SaveVerifiedContent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;ctx&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;context&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Context&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;hash&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Hash32&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;payload&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="kt"&gt;byte&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kt"&gt;error&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="存储钩子"&gt;存储钩子&lt;/h2&gt;
&lt;p&gt;存储接口按凭证类别拆分。应用可用同一数据库实现它们，也可完全使用文件或内存。&lt;/p&gt;</description></item><item><title/><link>https://63812707.go-bitfs.pages.dev/guide/sdk/03-%E8%A7%92%E8%89%B2%E5%B7%A5%E4%BD%9C%E6%B5%81api/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://63812707.go-bitfs.pages.dev/guide/sdk/03-%E8%A7%92%E8%89%B2%E5%B7%A5%E4%BD%9C%E6%B5%81api/</guid><description>&lt;h1 id="03--角色工作流-api"&gt;03 · 角色工作流 API&lt;/h1&gt;
&lt;p&gt;返回 &lt;a href="SDK-API%E6%A1%86%E6%9E%B6%E8%AE%BE%E8%AE%A1.md"&gt;SDK API 框架入口&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;当前实现入口分别是 &lt;code&gt;buyer.NewWorkflow(buyer.WorkflowConfig{...})&lt;/code&gt;、&lt;code&gt;seller.NewWorkflow(seller.WorkflowConfig{...})&lt;/code&gt; 和 &lt;code&gt;arbitration.NewWorkflow(arbitration.WorkflowConfig{...})&lt;/code&gt;。下文保留为角色级调用顺序说明；细节以包中的实际类型和方法为准。&lt;/p&gt;</description></item><item><title/><link>https://63812707.go-bitfs.pages.dev/guide/sdk/04-%E5%AE%9E%E6%96%BD%E8%B7%AF%E7%BA%BF/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://63812707.go-bitfs.pages.dev/guide/sdk/04-%E5%AE%9E%E6%96%BD%E8%B7%AF%E7%BA%BF/</guid><description>&lt;h1 id="04--实施路线"&gt;04 · 实施路线&lt;/h1&gt;
&lt;p&gt;返回 &lt;a href="SDK-API%E6%A1%86%E6%9E%B6%E8%AE%BE%E8%AE%A1.md"&gt;SDK API 框架入口&lt;/a&gt;。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;code&gt;wire&lt;/code&gt;、&lt;code&gt;bitfs&lt;/code&gt; 的 001/003/004、&lt;code&gt;pool&lt;/code&gt; 的 002/005/006、&lt;code&gt;arbitration&lt;/code&gt; 的 007 已实现 deterministic CBOR、严格解码和证据校验。&lt;/li&gt;
&lt;li&gt;MultisigPool 是费用池交易、SIGHASH_ALL|FORKID、2-of-3 脚本、累计付款、最终关闭和退款到期校验的唯一实现；&lt;code&gt;pool.VerifiedNonFinalPoolNode&lt;/code&gt; 负责本地验收和后端响应绑定，具体 BSV RPC 由 &lt;code&gt;NonFinalPoolBackend&lt;/code&gt; 注入。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pool.MemoryStore&lt;/code&gt; 和 &lt;code&gt;bitfs.FileQuoteStore&lt;/code&gt; 已实现线程安全/可重启的参考存储；生产多进程环境应替换为事务数据库，并保留其原子升级、不可变和幂等语义。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;buyer.Workflow&lt;/code&gt;、&lt;code&gt;seller.Workflow&lt;/code&gt;、&lt;code&gt;arbitration.Workflow&lt;/code&gt; 已接入端到端集成测试，覆盖报价、开池、内容交付、付款推进和重复付款重试。&lt;/li&gt;
&lt;li&gt;当前发布面只包含 BitFS v3 的 &lt;code&gt;buyer.Workflow&lt;/code&gt;、&lt;code&gt;seller.Workflow&lt;/code&gt;、&lt;code&gt;arbitration.Workflow&lt;/code&gt; 与 &lt;code&gt;pool&lt;/code&gt; 角色适配器；旧 &lt;code&gt;settlement&lt;/code&gt;/runtime 双栈已删除，不存在 &lt;code&gt;legacy&lt;/code&gt; build tag 验收路径。&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title/><link>https://63812707.go-bitfs.pages.dev/guide/sdk/sdk-api%E6%A1%86%E6%9E%B6%E8%AE%BE%E8%AE%A1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://63812707.go-bitfs.pages.dev/guide/sdk/sdk-api%E6%A1%86%E6%9E%B6%E8%AE%BE%E8%AE%A1/</guid><description>&lt;h1 id="bitfs-sdk-api-框架设计"&gt;BitFS SDK API 框架设计&lt;/h1&gt;
&lt;p&gt;本文是 BitFS SDK 的公开 API 蓝图入口，不是 wire 规范，也不是可直接编译的 Go 代码。实际实现必须服从 001–007 协议规范；若本文与编号规范冲突，以编号规范为准。&lt;/p&gt;</description></item></channel></rss>