A broadcast timeout is not a failed transaction.
Blindly retrying can duplicate business effects. CellFlow records deterministic identity first, then reconciles chain truth by hash.
Explore the lifecycle without connecting a project. This page uses local UI state only and never presents simulated activity as production data.
This walkthrough does not submit anything to CKB. It demonstrates the recovery model using Alice → Bob service-right transfer.
CellFlow stores the business intent before any CKB submission begins.
# 1) Create a durable business intent
curl -X POST "$CELLFLOW_URL/api/v1/intents" \
-H "Authorization: Bearer $CELLFLOW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"intentId": "skillpass-transfer-1042",
"metadata": {"useCase":"SkillPass transfer","from":"Alice","to":"Bob"},
"expectedCells": [{
"outputIndex": 0,
"mode": "live",
"lock": {"args":"0xBOB_LOCK_ARGS"}
}]
}'
# 2) After signing, persist the deterministic transaction hash before broadcast
curl -X POST "$CELLFLOW_URL/api/v1/intents/skillpass-transfer-1042/prepare" \
-H "Authorization: Bearer $CELLFLOW_API_KEY" \
-H "Content-Type: application/json" \
-d '{"txHash":"0xYOUR_64_HEX_TX_HASH"}'
# 3) Reconcile / inspect at any time
curl "$CELLFLOW_URL/api/v1/intents/skillpass-transfer-1042" \
-H "Authorization: Bearer $CELLFLOW_API_KEY"Blindly retrying can duplicate business effects. CellFlow records deterministic identity first, then reconciles chain truth by hash.
It demonstrates CREATED → PREPARED → SUBMISSION_UNKNOWN → PENDING → COMMITTED → CONFIRMED and the expected-Cell verification boundary.
This walkthrough does not submit to CKB, generate real confirmations or create durable evidence. Use the console with a configured project for live operations.