docs: consolidate runnable examples and publish v0.1.1 guides

This commit is contained in:
2026-09-24 21:27:25 +08:00
parent e29dec717f
commit 81e56bd633
124 changed files with 1430 additions and 281 deletions

View File

@@ -19,3 +19,20 @@ GOWORK=off go build ./cmd/sender
真实数据库、HTTP、COMMIT响应丢失、CLI及发送进程故障由仓库根目录的`make integration`统一执行,使用专门的一次性数据库。没有测试环境变量时Integration会跳过。
发送核心已抽为[公共 MySQL 适配包](../../adapters/outbox/mysql/README.md);本项目仅保留示例业务事务。已有 sender_outbox / sender_jobs 表保持兼容。
## 运行与核对
先按完整手册创建专用平台队列和独立空业务库;从仓库根目录设置配置:
```sh
export ORBIT_URL=http://127.0.0.1:8080
export ORBIT_CREDENTIALS_FILE="$PWD/.local/outbox.credentials.json"
export ORBIT_SENDER_DSN='user:password@tcp(127.0.0.1:3306)/sender_example'
cd examples/task-outbox
GOWORK=off go run ./cmd/sender init
GOWORK=off go run ./cmd/sender demo
```
`init` 只初始化一次。`demo` 写入本地业务事务、核对重复入队、发送并确认原任务身份,最后取消示例任务;预期受理状态为 `ACCEPTED`。请在没有 object.prepare Worker 的隔离队列运行此受理演示。
真实业务分开调用 `enqueue <operation_id> <source_ref>`、`send`、`status <operation_id>`。操作 ID 是预先持久化的 32 位小写十六进制字符串;断线/重启后仍用原 ID 查询和恢复。ACCEPTED 仅表示平台受理,执行完成须另接 Worker 和结果订阅。