Skip to content

eve-online-mining-bot: add wormhole=yes D-Scan hostile detection - #491

Merged
smerwin merged 1 commit into
mainfrom
mining-bot-wormhole-dscan
Sep 12, 2026
Merged

smerwin merged 1 commit into
mainfrom
mining-bot-wormhole-dscan

Conversation

@smerwin

@smerwin smerwin commented Sep 11, 2026

Copy link
Copy Markdown
Owner

Summary

  • Adds a wormhole setting (yes/no, default no) that turns on eve-online-gas-huffer's Directional-Scanner-based paranoid hostile detection (issues eve-online-gas-huffer: hostile detection from the overview and D-Scan #462, eve-online-gas-huffer: retreat, cloak and evade until the grid is clean #463), ported to this bot's own decision tree -- see the doc comment on the new ## Wormhole safety section in Bot.elm for what changed in the port and why (no cloak/celestial-bounce escalation; composed with this bot's existing runAway instead, since it already has a docking step and somewhere real to retreat to).
  • Adds friendly-ship-tag and dscan-interval-seconds, ported alongside it.
  • Adds previousStepsEffects to this bot's vendored EveOnline.BotFrameworkSeparatingMemory.UpdateMemoryContext, matching saxrat's and the gas huffer's copies, which the D-Scan refresh cadence needs.
  • Default wormhole = no means an existing settings string is completely unaffected -- confirmed by parsing the launcher's actual settings string through the changed parseBotSettings in elm repl.

Fixes #490.

Test plan

  • elm make Bot.elm compiles clean (14 modules, only the expected harmless "NO MAIN" error).
  • elm-format --validate passes on both changed files.
  • Pure functions executed through the real Bot.elm in elm repl (not just read): hostile-trust matching (TrustNobody/TrustShipsTagged, case-insensitive substring), D-Scan row classification (harmless probe vs. combat probe, structure/deployable Type markers, the RowCouldNotBeRead blank-row case), D-Scan refresh cadence (dscanRefreshIsDue at both sides of the interval), grid verdict (gridReadsClean for clean/hostile/cannot-tell), and the three new settings' parsing including the empty-friendly-ship-tag guard and an invalid wormhole value.
  • Not run against a live wormhole client -- this bot's runs have all been in known space so far. What to watch on the first wormhole run: the Grid: status-line clause appearing and reading CLEAN on a quiet grid, then HOSTILE/SOMETHING IS HERE on the first unrecognized ship, followed by the same runAway behavior a low shield percentage already triggers.

🤖 Generated with Claude Code

Ports eve-online-gas-huffer's paranoid Directional-Scanner-based hostile
detection (issues #462, #463) behind a new `wormhole` setting, default `no`
so existing settings strings are unaffected. `friendly-ship-tag` and
`dscan-interval-seconds` are ported alongside it.

Composed with this bot's own retreat (`runAway`) rather than the huffer's
cloak-and-celestial-bounce escalation, since this bot already has a docking
step and somewhere real to run to; the huffer does not.

Also adds `previousStepsEffects` to this bot's vendored
`EveOnline.BotFrameworkSeparatingMemory.UpdateMemoryContext`, the same field
saxrat's and the gas huffer's copies already carry, which the D-Scan refresh
cadence needs to know whether the previous step actually pressed the scan
key.

Verified without a live client: the whole file compiles clean under
`elm make`, and the pure functions (hostile-trust matching, D-Scan row
classification, staleness/refresh timing, grid verdict, and the three new
settings' parsing including the empty-tag guard) were executed through the
real `Bot.elm` in `elm repl` rather than only read. Not run against a live
wormhole client.

Fixes #490

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@smerwin
smerwin merged commit 6386180 into main Sep 12, 2026
1 of 3 checks passed
@smerwin
smerwin deleted the mining-bot-wormhole-dscan branch September 12, 2026 14:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

eve-online-mining-bot: needs a wormhole=true flag importing the gas huffer's paranoid D-Scan hostile detection

2 participants