Skip to content

Hardcoded Limits & Configurable Policies

This page documents all known hardcoded thresholds and configurable policy limits across the g3nretailstack platform.

Configurable via Environment Variables

SettingDefaultEnv VarServicesNotes
Rate limit (RPM)600RATE_LIMIT_RPMAll 18 + VGPer-org, per-minute. Kill-switch: RATE_LIMIT_ENABLED=false
Rate limit window60s(hardcoded)AllFixed-window counter via DDB atomic ADD
Request validationenabledREQUEST_VALIDATION17/20AJV 8 schema validation. =false disables
Maintenance cache TTL20s(hardcoded)14 servicesDDB singleton cache for ACTIVE_MAINTENANCE
Session cache TTL30s(hardcoded)auth-directIn-Lambda session cache, max 1000 entries
Bulk import timeout13.5 min(hardcoded)10 servicesSelf-re-invoke threshold for bulk import Lambdas

Hardcoded Thresholds

LimitValueServiceFileNotes
Transfer line max20ICStransfer.tsMax lines per transfer request
Comment list default8-10SCM, ICS, PVM, etc.comment handlersDefault limit for comment listing
Audit query max256SCMposAuditQuery.tsMax items per POS audit query
Pagination default limit8Allentry handlersDefault limit, clamped 1-256
TransactWrite max items10Allpackages/httpDDB limit; assertTransactLimit() enforces
MRS tag max20MRShandlers.tsMax tags per record
MRS max inline payload256 KBMRShandlers.tsInline JSON payload limit
MRS max presign payload128 MBMRShandlers.tsPresigned upload limit
Vacuum pending window5 minOPSvacuumAll.tsCancel-safe window before execution
Vacuum mutex TTL24hOPSvacuumAll.tsSafety release for stuck mutex
Kit nesting depth3SCMpromise.tsMax recursive kit explosion depth
Coupon max_per_customerconfigurablePPMcouponCode.tsPer-coupon, stored in DDB entity
Layaway deposit min20%SCMpolicy.tsChannel policy configurable
Special order deposit50%SCMpolicy.tsChannel policy configurable

Channel Policies (per-org, per-channel configurable)

These are stored in DDB and configurable at runtime via /scm/channel-policy/* endpoints:

  • Layaway: max_days, service_fee, payment_interval, forfeiture_grace_days, min_deposit_pct
  • Special Order: deposit_pct, price_lock, cancel_policy, pickup_window_days
  • Returns: return_window_days, condition_codes, disposition_rules
  • Substitution: substitution_mode, sla_targets