Experimental crafting recovery and diagnostics for Minecraft 1.20.1, Forge 47.4.20, and Applied Energistics 2 15.4.10.
Large AE2 jobs can plan around deterministic processing-pattern byproducts and later reach a state where every remaining operation depends on material that the same job was expected to produce. This mod distinguishes that zero-progress state from ordinary machine delay, records the blocked dependency graph, and attempts recovery without first dumping the crafting CPU's contents.
After twenty consecutive dispatch passes with no runnable pattern and no legitimate output in flight, recovery proceeds in this order:
Any expected machine output still in flight is an absolute recovery barrier, regardless of age. After ten minutes the owner receives a warning, but the mod does not replan, top up, reclaim, or replace delayed output work. This prevents slow, fuel-starved, paused, or externally gated machines from causing duplicate production.
Newly submitted jobs preserve their complete original pattern route through world saves and restarts. Recovery calculations use that archive rather than AE2's shrinking remaining-task list. If the craft owner is offline when an alert occurs, the server stores a capped, deduplicated message and delivers it when that player next logs in.
Concise recovery messages remain in latest.log. Full dependency graphs, CPU inventories, preflight shortages, recovery choices, and rollback evidence are written to:
logs/ae2-crafting-recovery.log
The diagnostic file rotates at 8 MiB and retains three older generations. Repeated reports are suppressed until the job state changes.
Install the same jar on both the dedicated server and every connecting client. Remove older versions before starting Minecraft.
This project currently targets the exact AE2 execution internals in version 15.4.10. Other AE2 or Minecraft versions are not yet officially supported. Back up important worlds before testing recovery on large crafts.