Skip to main content
tif1 uses a structured exception hierarchy for graceful error handling. All exceptions inherit from TIF1Error, so a single clause catches every library-specific error.

Exception Hierarchy

Common Exceptions

DataNotFoundError

Raised when requested data does not exist in the archive.
Common causes:
  • Misspelled event name
  • The session has not started yet
  • Data not yet available in archive
Solution:

DriverNotFoundError

Raised when code accesses a driver that does not exist in the session.
Solution:

NetworkError

Raised when all CDN sources fail or timeout.
Solutions:
  • Check internet connection
  • Verify the CDN sources (jsDelivr, Hugging Face, StaticDelivr) are accessible
  • Reset circuit breaker if needed
  • Enable debug logging to see which CDN failed

InvalidDataError

Raised when fetched data is corrupted or malformed.

CacheError

Raised when cache operations fail.

Error handling patterns

Graceful Degradation

Handle errors without stopping the analysis.

Retry Logic

Implement custom retry for transient failures.

Batch Processing

Handle errors when processing multiple sessions.

Context Managers

Use context managers for resource cleanup.

Debugging Errors

Enable debug logging

See detailed information about the operations in progress.

Inspect error context

All tif1 exceptions include context information.

Check circuit breaker

Monitor network health.

Best Practices

1

Validate Input

Check data availability before processing.
2

Use Specific Exceptions

Catch specific exceptions rather than broad Exception.
3

Log Errors

Always log errors for debugging.
4

Fail Fast

Do not continue processing when critical data is missing.

Production Patterns

Health Checks

Monitor tif1 health in production.

Monitoring

Track errors and performance.

Summary

Proper error handling makes tif1 applications robust and maintainable. Always use specific exceptions, validate input, and add retry logic for production use.

Exceptions API

Exception reference

Troubleshooting

Common issues

Best Practices

Recommended patterns
Last modified on September 8, 2026