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

# model-action-no-transactional-timeout-mismatch

> Disallow timeoutMS above 5000ms on model actions without explicitly setting transactional: false.

| Recommended                                  | Strict                                     | Auto-fixable                                | Scope              |
| -------------------------------------------- | ------------------------------------------ | ------------------------------------------- | ------------------ |
| <Badge color="orange" size="sm">warn</Badge> | <Badge color="red" size="sm">error</Badge> | <Badge color="gray" size="sm">false</Badge> | Model action files |

<Tip>
  Related Gadget documentation: [Gadget
  docs](https://docs.gadget.dev/guides/actions/code#gadgettransaction-callback-params)
</Tip>

**What the linter reports:**

> timeoutMS `value`ms has no effect on transactional model actions above 5000ms.

## Examples

<Tabs>
  <Tab title="Incorrect">
    ```ts title="api/models/widget/actions/create.ts" theme={null}
    export const options: ActionOptions = {
      // 30000ms has no effect when transactional is true (max 5000ms)
      timeoutMS: 30000,
      transactional: true,
    };
    ```
  </Tab>

  <Tab title="Correct">
    ```ts title="api/models/widget/actions/create.ts" theme={null}
    export const options: ActionOptions = {
      // set transactional: false to use timeouts above 5000ms
      timeoutMS: 30000,
      transactional: false,
    };
    ```
  </Tab>
</Tabs>
