Skip to content

[P1] 确定性清算、银行边界、报价兑换与 Entitlement #71

Closed

Description

@LIghtJUNction

2026-09-28 核验:基础账本已合入;清算/报价兑换由 #103 收口

基线 main 13c562ea05d273e618b1ea06b9e452da79d4439f、CI 36384948145 success,完整证据见 #83。#102 已完成版本化订单/交付/仲裁主线,不能再将这些功能整体当作缺失,也不能被 #103 的另一套实现覆盖。

主线已有

  • 单币种 primary/scale=6 整数账项、默认零余额/零发行、不可变账本、系统 LedgerAccount、基本 transfer/root 本机 money 操作与 scoped 读取。
  • plugins/offers.py 登记及 fail-closed 框架存在,但主线无已登记的真实 purchasable 类型/兑现器;安全空目录不等于兑换功能完成。
  • fix(market): close escrow, private delivery and arbitration lifecycle gaps (#73–75) #102 的 market/*、原 orders.buy@1/@2 与完整 @3 生命周期、签名快照/受保护 escrow debit/恢复不变量必须保留。

#103 当前阻塞

head 9dc0d3db8a78a9bd1b99ca2bfb5ef97e1934b730 有 main 冲突,CI 36384344964 failure。已独立核验该运行 shard0 的 SHA-256/JUnit,至少两类失败:tests/test_market_73.py 的 _sale(..., policy=...) 与辅助函数签名不符;tests/test_money_config.py::test_market_selftest_features_require_the_actual_isolated_flow 返回非成功。尚未据此声称已读尽全部分片失败。

剩余验收

  • 先读全部失败与 review,按保留两边安全语义的方式解决冲突;不删除失败测试、不绕过官方 selftest、不新造第二个 escrow 状态机。
  • 将 Complete deterministic clearing, bounty and order contracts (#71–#73) #103 确定性 ClearingPolicy/具名账本 legs、版本摘要/sequence、owner-account 凭据范围与幂等重放检查整合到当前账本;不改变历史 receipt/序列/签署字节。
  • 真实 Registry purchasable/ResourceEntitlement、offer 修订/价格快照、数量与额度边界;money.redeem 原版本保持,扩展须明确新版本。同步扣款/兑现同事务,异步 reservation/pending→settle/refund 守恒且可恢复。
  • bank fund 通过真正本机命令解析路径,授角色与 root 注资两项明确确认,PIN/控制台边界与任务 A 联合验收;银行不增发、不透支、不获额外权限。
  • 正/零/负/溢出/scale、并发最后余额、重复请求同/异 payload、崩溃回滚、系统账户不可注册/签名/恢复/委托、撤权即时拒绝、报价禁用及恢复全矩阵。
  • 默认空报价/零发行;购买容量不授 CA/system/local_only/mode 绕过权、优先级或基础通信准入。金融读取零业务副作用。
  • CLI/配置/default/doctor/isolated selftest 与真实 Python 3.15/PostgreSQL/Valkey 全量 CI 对齐,不借用旧 head 成功。

任务 B

独占市场/货币业务实现与 #103;共享模型/DDL/CLI/manifest 接线交 C 串行整合,旧 LedgerAccount 引用迁移与 A 联合审查。运行前刷新 base/head,最小修复后交 C 以 expected head SHA 合并。

本轮未修复该 PR 源码、未合并、未进行生产发行/注资/报价启用或部署。设计第 04/05/09/15 章与 #72 的官方闭环仍为验收依据。

Activity

  1. LIghtJUNction commented on Sep 28, 2026

    @LIghtJUNction
    ContributorAuthor

    用户已批准架构收敛,并已写入权威设计(本轮 main 源码基线 acc542a):ServerOffer 作为 Listing 的兼容视图,Purchase 收敛为 Order;保留 /_money/offers、money.redeem 及已发表请求/短码/签名原义,新语义新版本。主体、订单托管、悬赏托管共用 LedgerAccount/唯一受保护记账路径,但账户用途和付款授权不互换。异步权益款成功履约前留在托管;已结算给 root 的退款不得绕过本机付款约束。完整清单见 #85。

    #103 仍按既有主线整合与最终完整CI门槛处理,不由本轮另建平行金融执行器。本轮先提交窄范围邮件/通知复用补丁,不修改你的 branch、清算 schema 或生产资金。该评论是更新验收目标,不宣称上述模型迁移已经完成。

  2. added 3 commits that reference this issue on Sep 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions