> ## Documentation Index
> Fetch the complete documentation index at: https://docs.summerengine.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Summer.authority.world

> Typed authoritative World lifecycle operations.

**Class:** `SummerAuthorityWorld` · **Inherits:** RefCounted · **Access:** `Summer.authority.world`

Typed authoritative World lifecycle operations.

Authority-only facade for explicit World lifecycle operations. Completing a World is separate from committing a Match settlement so required post-Match projections have a bounded delivery phase.

## Methods

### get\_shutdown\_notice

```gdscript theme={null}
func get_shutdown_notice() -> SummerShutdownNotice const
```

Current platform maintenance notice, or `null`. Connect [`shutdown_notice_changed`](/api-reference/gdscript/authority/world#shutdown_notice_changed), then read this getter to include a notice received before subscription. Cancellation returns `null`; stale reordered notices never restore cancelled state.

**Returns:** [`SummerShutdownNotice`](/api-reference/gdscript/types/shutdown-notice)

### complete

```gdscript theme={null}
func complete(reason: String = "world_complete") -> SummerOperation
```

Idempotently ends a Match-scoped or persistent World after settlement and required delivery have reached a terminal state. A persistent World must first finish restoring its selected save. Completion permanently ends the logical World; it is not a request to sleep or save it. Multi-Match Worlds use [`Summer.authority.match.complete_delivery()`](/api-reference/gdscript/authority/match#complete_delivery) instead.

| Parameter | Type | Default |
| - | - | - |
| `reason` | String | `"world_complete"` |

**Returns:** [`SummerOperation`](/api-reference/gdscript/types/operation)

Returns at once. Wait for the result with `var result: SummerResult = await op.get_result_or_completed_signal()`; see [SummerOperation](/api-reference/gdscript/types/operation).

### load\_save

```gdscript theme={null}
func load_save() -> SummerWorldLoadOperation
```

Load and integrity-check the current World save. Existing schema and Build must be compatible. Before initial restore completes, admission remains closed.

**Returns:** [`SummerWorldLoadOperation`](/api-reference/gdscript/types/world-load-operation)

Returns at once. Wait for the result with `var result: SummerResult = await op.get_result_or_completed_signal()`; see [SummerOperation](/api-reference/gdscript/types/operation).

### commit\_save

```gdscript theme={null}
func commit_save(expected_revision: String, save_id: String, schema: String, data: PackedByteArray, state_sequence: String) -> SummerWorldSaveOperation
```

Commit an internally consistent game capture after restore. Data is bounded to 16 MiB. Revision and state sequence are canonical nonnegative int64 decimal strings. Save identity and schema are bounded to 128 UTF-8 bytes. Retrying must retain all arguments exactly; conflicting identity reuse or base revision is rejected. The game defines serialization and coupled inventory consistency.

| Parameter | Type | Default |
| - | - | - |
| `expected_revision` | String | required |
| `save_id` | String | required |
| `schema` | String | required |
| `data` | PackedByteArray | required |
| `state_sequence` | String | required |

**Returns:** [`SummerWorldSaveOperation`](/api-reference/gdscript/types/world-save-operation)

Returns at once. Wait for the result with `var result: SummerResult = await op.get_result_or_completed_signal()`; see [SummerOperation](/api-reference/gdscript/types/operation).

### finish\_restore

```gdscript theme={null}
func finish_restore(save: SummerWorldSave) -> SummerOperation
```

Call only after applying and validating the successful load result. Admission opens only after the World owner confirms this exact runtime and revision. A foreign, stale or failed load cannot authorize readiness.

| Parameter | Type | Default |
| - | - | - |
| `save` | [`SummerWorldSave`](/api-reference/gdscript/types/world-save) | required |

**Returns:** [`SummerOperation`](/api-reference/gdscript/types/operation)

Returns at once. Wait for the result with `var result: SummerResult = await op.get_result_or_completed_signal()`; see [SummerOperation](/api-reference/gdscript/types/operation).

### finish\_snapshot

```gdscript theme={null}
func finish_snapshot(request_id: String, receipt: SummerWorldSaveReceipt) -> SummerOperation
```

Acknowledge a platform save request using a committed receipt. The owner verifies that the save was produced by this runtime after the request. This does not complete or delete the logical World. A successful final acknowledgment may stop this runtime before its completion signal reaches game code; do not rely on code after awaiting it.

| Parameter | Type | Default |
| - | - | - |
| `request_id` | String | required |
| `receipt` | [`SummerWorldSaveReceipt`](/api-reference/gdscript/types/world-save-receipt) | required |

**Returns:** [`SummerOperation`](/api-reference/gdscript/types/operation)

Returns at once. Wait for the result with `var result: SummerResult = await op.get_result_or_completed_signal()`; see [SummerOperation](/api-reference/gdscript/types/operation).

### get\_snapshot\_request\_id

```gdscript theme={null}
func get_snapshot_request_id() -> String const
```

Current platform save request, or empty. Query after connecting [`save_requested`](/api-reference/gdscript/authority/world#save_requested) so requests delivered earlier are not missed.

**Returns:** String

### get\_snapshot\_deadline\_unix\_msec

```gdscript theme={null}
func get_snapshot_deadline_unix_msec() -> int const
```

Current platform save deadline in Unix milliseconds, or zero.

**Returns:** int

## Signals

### shutdown\_notice\_changed

```gdscript theme={null}
signal shutdown_notice_changed(notice: SummerShutdownNotice)
```

The platform announces, revises, or cancels maintenance. A `null` notice means cancellation before final saving begins. During advance notice, finish game events or persist their phase. At the preparation boundary, native gameplay input and simulation stop; [`save_requested`](/api-reference/gdscript/authority/world#save_requested) and save operation completions continue. Serialize directly in that callback and use [`commit_save()`](/api-reference/gdscript/authority/world#commit_save) followed by [`finish_snapshot()`](/api-reference/gdscript/authority/world#finish_snapshot). Do not wait for a scene frame, timer, or unrelated deferred callback during final saving. The stop deadline remains binding if the game does not acknowledge. A restart restores the same logical World; it never implies a gameplay wipe or a promise that replacement is already ready.

### save\_requested

```gdscript theme={null}
signal save_requested(request_id: String, deadline_unix_msec: int)
```

The platform requests a coherent final save before its deadline. Commit first, then acknowledge using [`finish_snapshot()`](/api-reference/gdscript/authority/world#finish_snapshot). Process crashes cannot deliver this signal, so periodic saves are still required.

***

What is live on the platform today: [platform capability status](/knowledge-base/source-status). Check availability at runtime before you offer a feature.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.