> For the complete documentation index, see [llms.txt](https://novacont.gitbook.io/nova-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://novacont.gitbook.io/nova-docs/security-and-developers/state-machine-and-lifecycle.md).

# State Machine & Lifecycle

Every agreement on NovaCont exists in one of seven possible states. State transitions are enforced programmatically. No function can move a contract to an invalid state, and no state can be skipped or reversed.

<figure><img src="/files/sVw8yvH6InXlezxI1KNy" alt=""><figcaption></figcaption></figure>

### The Seven States

**Created** The initial state. The client has locked funds on-chain and the contract is waiting for the provider to respond. The provider may accept or reject. The client may cancel at any time during this state for a full refund.

**Accepted** The provider has accepted the terms. The delivery countdown is now active. The provider is expected to deliver within the agreed deadline. The client may still cancel. With a potential penalty applied if more than half the delivery period has elapsed.

**Delivered** The provider has submitted their deliverables and evidence URI. The 7-day review window is now open. The client must approve or dispute. If neither action is taken within 7 days, the provider may claim the timeout.

**Disputed** A dispute has been formally opened by one of the parties. Funds are locked pending resolution. The case is either under administrator review or awaiting jury assignment depending on the current system mode.

**Completed** Terminal state. The client approved the work or the provider claimed a timeout. Funds have been distributed. The platform fee has been deducted and credited to the protocol. No further actions are possible.

**Resolved** Terminal state. A dispute was resolved — either by the administrator or by the jury. Funds have been distributed according to the verdict. No further actions are possible.

**Cancelled** Terminal state. The contract was cancelled before reaching completion. The client received a full or partial refund depending on the stage at which cancellation occurred.

| From      | To        | Triggered By          | Condition                               |
| --------- | --------- | --------------------- | --------------------------------------- |
| Created   | Accepted  | Provider              | Within accept deadline                  |
| Created   | Cancelled | Provider              | Rejection                               |
| Created   | Cancelled | Client or Owner       | Any time during Created state           |
| Accepted  | Delivered | Provider              | Within delivery deadline                |
| Accepted  | Cancelled | Client                | Cancel request — full or partial refund |
| Delivered | Completed | Client                | Work approved                           |
| Delivered | Completed | Provider              | 7-day timeout claimed                   |
| Delivered | Disputed  | Client or Provider    | Dispute opened with fee paid            |
| Disputed  | Resolved  | Administrator or Jury | Verdict issued and executed             |
