- Updates rst documentation
- Adds feature: risk-averse
- Revises ChannelManager::manage_group
- Now performs analysis of group designations
- If any designation has fall space, designations are analyzed for accessibility (a weighted score of how many ways it can be accessed)
- If a designation has no fall space, but cannot be accessed it will be "dig_now"'ed
- accessibility scores are stored for the management phase
- Management loop has been extended
- iff no cave-in candidates exist, then perform simple management (as requested)
- if candidates do exist, then we must check if our current position is one
- if the current position is a cave-in candidate it must also be within range (+2) of the least access
- if the candidate is in range or on the dignow queue, then we activate the designation and modify the dig priority according to distance from least_access
- if not a candidate, or the other checks failed, then we set the designation to marker mode
- Updates rst documentation
- Adds troubleshooting section
- Renames the monitor feature to monitoring
- Adds cave-in helper functions
- ChannelJobs::has_cavein_conditions()
- ChannelJobs::possible_cavein()
- find_dwarf() ~ finds the nearest dwarf or the first one that has a path to a position
- Moves dignow/resurrect to inlines.h
- Improves management of regular dig designations
- Adds df::job* tracking back into ChannelJobs to simplify cancellations
- Updates/improves debug logging
- Switches unordered structures with ordered in some locations to have ordered debugging information
- Simplifies ChannelManager::manage_group()
- Fixes up ChannelManager::manage_one()
- the return value is now useful even if unused
This depends on a new entrypoint put inside the docker image, that will
read BUILDER_UID and fix up the users and files.
This also removes "sudo" and allows the entire script to be run with
sudo without messing with the build file permissions.