Skip to content

BidEngine shellScript strategy bypassed: bids submitted without invoking price script (v0.12.0) #514

@Metz-Live

Description

@Metz-Live

Describe the bug

BidEngine shellScript strategy is frequently bypassed — the provider daemon submits bids using internal scale parameters instead of calling the configured price script. All script logic including filtering (exit 1) and custom pricing is ignored.

  • account address = akash15uc29tz7l7umw77rh7l5mh90jzq4h8kqc36vu0
  • deployment sequence = N/A (affects all incoming orders)
  • deploy.yaml = N/A (provider-side bug)

To Reproduce

  1. Configure provider with AKASH_BID_PRICE_STRATEGY=shellScript
  2. Set AKASH_BID_PRICE_SCRIPT_PATH=/scripts/price_script.sh
  3. Add logging at line 1 of script:
echo "DEBUG SCRIPT START: $(date +%H:%M:%S.%3N)" >&2
  1. Observe provider logs — many bids are submitted without DEBUG SCRIPT START appearing

Expected behavior

Every bid submitted by the provider should be preceded by a script invocation. If the script returns exit 1, no bid should be submitted.

Logs

When bug occurs — script never started, bid submitted via internal fallback:

INF Reservation fulfilled    order=akash15uc29tz7.../26879854/1/1
DBG submitting fulfillment   order=akash15uc29tz7.../26879854/1/1 price=63uact
INF bid complete             order=akash15uc29tz7.../26879854/1/1

When working correctly — script called, exit 1 respected:

ERR error calculating price error="exit status 1: script failure
DEBUG SCRIPT START: 10:09:03.609
DEBUG UTIL FIELDS: alloc_cpu=512000 avail_cpu=480250 ...
DEBUG DECISION: CPU_ONLY resources too small cpu_m=4000

Desktop

  • OS: Ubuntu 24.04
  • Provider version: v0.12.0
  • Kubernetes: k3s
  • Chain: akashnet-2

Additional context

  • Confirmed on two independent providers: provider.metz.live and provider.akash.metz.live
  • Script hash verified identical between local file and pod (md5sum match)
  • curl latency inside pod: 10–23ms (well within 500ms timeout)
  • All price_target_* set to 0 to disable fallback — bug persists
  • No consistent trigger pattern identified from logs alone
  • Results in: unwanted bids on filtered jobs, incorrect prices, wasted gas

Metadata

Metadata

Assignees

Labels

repo/providerAkash provider-services repo issues

Type

No type
No fields configured for issues without a type.

Projects

Status

Backlog (not prioritized)

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions