-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Overview
Document the new vaultless field for order inputs/outputs in the YAML spec. This field enables direct wallet-based trading in V6 orderbook.
Parent issue: rainlanguage/rain.orderbook#2402
Spec Changes
Add vaultless field to order input/output configuration:
orders:
my-order:
inputs:
- token: token-a
vaultless: true # Funds received go directly to wallet
outputs:
- token: token-b
vault-id: 0x123 # Funds go from vault (existing behavior)Field Definition
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
vaultless |
boolean |
No | false |
When true, uses wallet directly instead of vault. Contract uses vault_id = 0 internally. |
Validation Rules
| Scenario | Result |
|---|---|
vaultless: true |
Valid - uses wallet directly |
vaultless: true + vault-id: X |
Error: "Using vault-id is not allowed in vaultless mode" |
vault-id: 0 |
Error: "Invalid vault-id value. For vaultless mode use vaultless: true" |
vaultless: false or omitted |
Uses vault-id if specified, otherwise generates random |
Behavior
- Vaultless inputs: Tokens received are sent directly to the owner's wallet
- Vaultless outputs: Tokens given are pulled directly from the owner's wallet (requires approval)
- Hybrid orders: Each input/output can independently be vaultless or vault-based
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels