The SDK doesn't validate field lengths before sending. The ingest API enforces:
message: 1-10,000 chars
source: 1-100 chars
errorName: max 200 chars
errorStack: max 10,000 chars
tags: max 20 items, each max 50 chars
userId, sessionId, requestId: max 100 chars
version, dataset, flowId: max 50 chars
stepIndex: 0-1,000
Should validate early and raise clear errors.
Files: timberlogs/types.py, timberlogs/client.py