bbsbot
2026-04-04
Planet harvest pipeline, ship purchasing, upgrade handlers, and uwarp-explorer delegation
71 files · 1,156+ · 934-
Planet harvest pipeline
3 files changed
executor_planet.pyNew planet harvest executor (84 lines)industrialist.pyIndustrialist archetype wired to harvest executorloop_archetype_dispatch.pyDispatch loop updated for planet harvest
- executor_planet.py implements a full planet harvest pipeline: land, harvest colonists/fuel/organics, handle capacity checks, and return to orbit. Industrialist archetype updated to call the harvest executor. Loop dispatch updated to route planet-related actions.
instantiate
behavioral
2 files
executor_planet.pyindustrialist.py
Automated ship purchasing at Stardock
2 files changed
ship_buyer.pyNew ship purchasing logic (189 lines): Stardock menu navigation, model selectionloop_handlers.pyLoop handler wires ship_buyer into the upgrade decision path
- ship_buyer.py handles automated ship purchasing at the Stardock Shipyard: navigates the ship purchase menu, selects the best available model within budget, and confirms the purchase. Integrated into the loop handlers for the upgrade decision path.
instantiate
behavioral
2 files
ship_buyer.pyloop_handlers.py
Upgrade handlers with bank withdrawal before purchase
3 files changed
upgrade_handlers.pyNew upgrade handlers (212 lines): withdraw bank funds before upgrade purchaseupgrades.pyUpgrade logic updated for new handler flowgameplay.pyTrading capital thresholds raised; upgrade ROI gate lowered
- upgrade_handlers.py: before any upgrade purchase, withdraws sufficient funds from the bank to cover the shortfall rather than failing the purchase. Capital thresholds and ROI gate reconfigured in gameplay.py for more aggressive upgrade behavior.
instantiate
behavioral
2 files
upgrade_handlers.pygameplay.py
Delegate executors to uwarp-explorer mechanics
5 files changed
banking.pyBank deposit/withdraw delegated to uwarp-explorer mechanicsexecutor_colonize.pyColonize executor delegated to uwarp-explorer planet mechanicsexecutor_combat.pyCombat executor delegated to uwarp-explorer mechanicsexecutor_corp.pyCorp executor delegated to uwarp-explorer mechanicsexecutor_fighters.pyFighters executor delegated to uwarp-explorer mechanics
- Five executors (banking, colonize, combat, corp, fighters) refactored to delegate their core game interactions to uwarp-explorer mechanics modules rather than duplicating TW2002 protocol logic. Significant line reduction in each: executor_combat.py shrinks from ~200 to ~90 lines, executor_corp.py from ~230 to ~120 lines. Follows the shared-library pattern established when uwarp-explorer was extracted in W13.
decouple
architectural
5 files
banking.pyexecutor_colonize.pyexecutor_combat.pyexecutor_corp.pyexecutor_fighters.py
Fix 'i' spam stall loop and port menu detection
3 files changed
loop_menu_recovery.pyStall detection added; port menu T-trigger broadenedguard_logic.pyGuard logic updateddetection.pyScreen detection patterns updated for port menu recognition
- The ‘i’ command was spamming in a stall loop when the port menu didn’t respond as expected. Fixed by adding stall detection and broadening the T-trigger regex for port menu recognition in loop_menu_recovery.py and detection.py.
remediate
behavioral
2 files
loop_menu_recovery.pydetection.py
Migrate from undef-terminal to provide-terminal
5 files changed
term_bridge.pyImport updated from undef-terminal to provide-terminalcontrol_channel.pyImport updatedrender.pyImport updated__init__.pyImport updatedpyproject.tomlDependency updated to provide-terminal
Test fixes and reliability
4 files changed
test_runtime_reliability_fixes.py64-line expansion: structlog patching, pirate state, guard logic fixestest_executor_colonize.pyUpdated for uwarp-explorer delegationtest_executor_combat.pyUpdated for uwarp-explorer delegationtest_executor_fighters.pyUpdated for uwarp-explorer delegation
- Resolved all test failures caused by the uwarp-explorer delegation refactor: structlog patching updated, pirate state assertions corrected, guard logic test expectations aligned. Executor tests updated to mock uwarp-explorer mechanics instead of internal implementation.
qualify
internal
2 files
test_runtime_reliability_fixes.pytest_executor_colonize.py