Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ch10-14 已完成和待完成模块

返回本章

先看市场问题

这里先从市场定义往下看。“已完成和待完成模块”服务的是 Predict 市场如何被定义、定价、mint、settle 或索引;不要把它读成普通现货订单簿的变体。

源码入口

  • PREDICT_MIGRATION.md:PR 状态和 Phase 2 计划。
  • packages/predict/sources/*:本书采用的 GitHub 源码快照中的 Move 模块。
  • packages/predict/simulations/*:本地仿真 runtime、scenario 和可视化脚本。

读市场参数

PREDICT_MIGRATION.md,已完成:Oracle、constants/math、Vault、pricing config、risk config。迁移计划中待完成:Market Key、PredictManager、Predict Core、Registry、单元测试、集成测试、Predict schema、Predict Indexer、Predict Server、部署脚本、oracle services、Docker 和 CI。

按本书采用的 GitHub 源码快照,可阅读和本地开发环境试验:range_key.movepredict_manager.movepredict.moveregistry.moveoracle_config.movefee_reserve.move、仿真 runtime。书稿后续章节引用这些文件时,必须加上“本书采用的 GitHub 源码快照已有,迁移计划仍未全部标为完成”的限定。

可以把模块分成三层:迁移文档已合入的链上基础、工作树中可读可仿真的 Move/Simulation、尚未完成的 Indexer/Server/部署脚本/Oracle services。只有第一层能被写成已合入;第二层适合精读和本地实验;第三层只能写设计边界。

SDK 或服务配置建议包含 predictVersionStatus:例如 migration-pr1-pr2-merged-local-snapshotlocalnet-simulation-onlymainnet-unverified。缺少该字段时,服务应拒绝构造真实用户交易,只允许生成示例或 dry run 教学。

Predict 边界判断

  • 每次更新文档前先核对迁移文档和实际发布对象。
  • 代码示例默认 localnet/simulation,主网需要显式配置和版本证明。
  • 待完成项写成风险或后续工作,不写成当前能力。

动手检查

  • 哪些能力可以作为链上已合入基础讲解?
  • 哪些能力只能作为本书采用的 GitHub 源码快照或仿真使用?
  • 服务初始化缺少版本状态时应如何 fail fast?