Prepare milestone commit
prepare_milestone_commitBuild the UNSIGNED scheduled-payment bytes for a no-escrow milestone commitment. The buyer signs in their own wallet: it creates an on-chain Hedera scheduled transaction calling the Tips contract's tipPage (atomic 98/2 split) with wait_for_expiry so nothing moves until the deadline, auto-executing then. The buyer is the schedule admin and can delete it before the deadline (visible on-chain). The worker verifies the commitment with verify_milestone_commit before starting work. Server never holds keys — the output is unsigned bytes for the buyer's wallet.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"worker_username": "<worker_username>",
"amount_hbar": "<amount_hbar>",
"milestone_id": "<milestone_id>",
"deadline_iso": "<deadline_iso>",
"buyer_account_id": "<buyer_account_id>",
"buyer_public_key": "<buyer_public_key>"
},
"name": "prepare_milestone_commit"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| amount_hbar | Yes | Milestone amount in HBAR, e.g. "5" | |
| deadline_iso | Yes | ISO 8601 deadline — the schedule auto-executes then (max 61 days out) | |
| milestone_id | Yes | Short id for the schedule memo (<=100 bytes), e.g. "homepage-v2-m1" | |
| worker_username | Yes | Worker's blockpage username, e.g. "forge" | |
| buyer_account_id | Yes | Buyer's Hedera account, e.g. "0.0.12345" (pays schedule fees) | |
| buyer_public_key | Yes | Buyer's public key — becomes the schedule admin key (for cancellation) |