Which cron implementations run, and why one that does not is skipped.
The measured set on this install (invokeAllWith('cron') against the real site) is
announcements_feed, dblog, file, layout_builder, system, update. A module added later shows up in
cronHookList() and runs by default; a hook that reaches for a socket fails into a caught
error (the host stubs Asyncify), costing an invocation, not the interpreter.
A run: false removes the hook from every site and nothing reports it; three entries outlived
their limit. Before adding one, check the limit still holds.
Which cron implementations run, and why one that does not is skipped.
The measured set on this install (
invokeAllWith('cron')against the real site) is announcements_feed, dblog, file, layout_builder, system, update. A module added later shows up incronHookList()and runs by default; a hook that reaches for a socket fails into a caught error (the host stubs Asyncify), costing an invocation, not the interpreter.A
run: falseremoves the hook from every site and nothing reports it; three entries outlived their limit. Before adding one, check the limit still holds.