Why do you want to contribute?
I've been porting a durable agent runtime onto Trigger.dev and writing up which parts of my hand-rolled version the platform made redundant, which meant reading the docs fairly closely. I hit one thing I'd like to fix.
The maxDuration page says CPU time "does not include time spent waiting during the following", then lists wait.for, triggerAndWait and batchTriggerAndWait. The list reads as exhaustive, but /wait documents four wait functions and three of them are missing here: wait.until(), wait.forToken() and inputStream.wait().
I got this wrong in my own writeup because of it. I was using wait.forToken() for a human approval gate, read the list, and concluded a day-long approval would burn the run's maxDuration. It doesn't. The human-in-the-loop guide states the general rule already, that maxDuration "measures active CPU time and excludes suspended waitpoint time, exactly like wait.for", but the reference page is where you look when you're deciding whether a wait is safe.
The change states that rule on the reference page and completes the list. Five lines, one file, no behaviour change. The branch is ready if it's useful to look at before vouching:
alexvervloet/trigger.dev@main...alexvervloet:trigger.dev:docs/max-duration-waitpoint-exclusions
Prior contributions or relevant experience
Eight years shipping React, React Native and Node, now building AI systems from scratch.
The port that turned this up is at https://github.com/alexvervloet/deskhand, a support agent allowed to refund money, where the writeup in docs/TRIGGER-PORT.md covers what a durable execution platform absorbed and what it did not.
Why do you want to contribute?
I've been porting a durable agent runtime onto Trigger.dev and writing up which parts of my hand-rolled version the platform made redundant, which meant reading the docs fairly closely. I hit one thing I'd like to fix.
The
maxDurationpage says CPU time "does not include time spent waiting during the following", then listswait.for,triggerAndWaitandbatchTriggerAndWait. The list reads as exhaustive, but/waitdocuments four wait functions and three of them are missing here:wait.until(),wait.forToken()andinputStream.wait().I got this wrong in my own writeup because of it. I was using
wait.forToken()for a human approval gate, read the list, and concluded a day-long approval would burn the run'smaxDuration. It doesn't. The human-in-the-loop guide states the general rule already, thatmaxDuration"measures active CPU time and excludes suspended waitpoint time, exactly likewait.for", but the reference page is where you look when you're deciding whether a wait is safe.The change states that rule on the reference page and completes the list. Five lines, one file, no behaviour change. The branch is ready if it's useful to look at before vouching:
alexvervloet/trigger.dev@main...alexvervloet:trigger.dev:docs/max-duration-waitpoint-exclusions
Prior contributions or relevant experience
Eight years shipping React, React Native and Node, now building AI systems from scratch.
The port that turned this up is at https://github.com/alexvervloet/deskhand, a support agent allowed to refund money, where the writeup in
docs/TRIGGER-PORT.mdcovers what a durable execution platform absorbed and what it did not.