Event Enrichment (Fallback)

If you don’t provide an id, the backend will auto-generate one

‼️Limitation: Backend-generated IDs use the SAME ID for all sequential thinking blocks. All thinking events from the same EventEmitter instance will share the same ID. Hence, backend-generated ID not support parallel thinking.

Example:

// No id provided - backend generates id "abc-123"
{"data_type": "thinking_start", "data_value": "", "id": "abc-123"}
{"data_type": "thinking", "data_value": "Analyzing...", "id": "abc-123"}
{"data_type": "thinking_end", "data_value": "", "id": "abc-123"}
// Another sequential stream - backend reuse same id "abc-123"
{"data_type": "thinking_start", "data_value": "", "id": "abc-123"}
{"data_type": "thinking", "data_value": "Searching...", "id": "abc-123"}
{"data_type": "thinking_end", "data_value": "", "id": "abc-123"}

In this scenario, all thinking events will be merged (per each thinking block) in the database.

circle-info

Recommendations: Always provide your own UUIDs, especially if it parallel thinking case.

Last updated