Skip to content

Commit

Permalink
feat(zoe): describe afterDeadline functionality in more detail
Browse files Browse the repository at this point in the history
- replaces #821
  • Loading branch information
0xpatrickdev committed Feb 8, 2024
1 parent 36cd216 commit 3ee7e04
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion main/reference/zoe-api/zoe.md
Original file line number Diff line number Diff line change
Expand Up @@ -323,11 +323,19 @@ the Keywords might be "Asset" and "Bid".
- `{ onDemand: null }`: (Default) The offering party can cancel on demand.
- `{ waived: null }`: The offering party can't cancel and relies entirely on the smart contract to complete (finish or fail) their offer.
- `{ afterDeadline: deadlineDetails }`: The offer is automatically cancelled after a deadline,
as determined by its **timer** and **deadline** properties.
as determined by its **timer** and **deadline** properties. The proposer cannot exit the seat before the deadline (the seat is in the **waived** state), but the contract can exit the proposer's seat early.
**timer** must be a timer, and **deadline** must be timestamp understood by it.
(Some timers use Unix epoch time, while others count block height.)
For more details, see [Timer Services](/reference/repl/timerServices.md).

### Proposal Shape

A contract can enforce a certain proposal shape using the
**[M](https://endojs.github.io/endo/interfaces/_endo_patterns.PatternMatchers.html)** (for '**M**atcher') object from `@endo/patterns`.

For example, a contract holding an auction might require that all offers include an `afterDeadline` exit rule with a timestamp in the future.


### Payments

**paymentPKeywordRecord** must be either `undefined` or a **[PaymentPKeywordRecord](./zoe-data-types.md#keywordrecord)**
Expand Down

0 comments on commit 3ee7e04

Please sign in to comment.