# Particle runtime and trust

Understand availability, privileges, dependencies and limits before deploying application code.

Source: https://particledb.ai/particles/limits/

## Availability

The source build exposes the Python runtime as an optional feature. Use a distribution that includes it before running the Python examples. A Rust database client is separate from a Rust Particle runtime; support for one does not establish support for the other.

Agent and workflow patterns in these docs use application workers. They do not imply a built-in async Particle scheduler. Check the installed release's public interface before using additional annotations or execution modes.

## Trust

Treat deployed code as trusted server code. Do not infer a security sandbox from a function decorator or from a timeout. Only permit reviewed modules and dependencies from authorized publishers.

## Resource limits

Check the supported timeout, memory and concurrency settings in your server distribution. Test failure behavior in a disposable environment. A failed function may fail the calling statement; clients must handle that error and roll back a failed transaction before reusing the connection.

## Side effects

Prefer deterministic computation for SQL-callable functions. A query may evaluate a function multiple times. Network calls, file writes and external actions need their own authorization and idempotency design.

[Security](/guides/security/) · [Testing](/particles/testing/)

## Related

[Documentation home](/docs/) · [Troubleshooting](/guides/troubleshooting/)
