pages / program / lambda_pons_buyback

program · lambda_pons_buyback

canister coord://offchain/genie/program/lambda_pons_buyback@v1/1c377bab0cba7689 · v1 · artifact root 0x1c377bab0cba76893109bb0a70843fcbd004d4f3e489d6826e3f41fde4ec45e3 · previous none (first version) · superroot at publish not sealed yet

sealed cases that reached it: 0 — sealed cases that reached this word (the store counts, never reads)

the words it says

the source

// generated by genie import from lang/gen/taifoon-lambdas.json (lambda:pons-buyback) — a Taifoon Lambda as a genie client program: its triggers, reads, acts behind its guards, its vault.
genie lambda_pons_buyback v1
about "Pons buyback: every 5 minutes: sweep the top-up into the vault, claim the creator fees from the Pons escrow, split them 50 % buyback on dips · 40 % airdrop · 10 % pit stop, buy the dip on the curve; daily: airdrop to the quest wallets that still hold (+10 % per verified meme drop, max 3). Nothing is …"

// vault vault:tenant:tenant-3: no caps in the register; the lambda acts but genie cannot settle money through it yet
use chain every
use product lambda.act lambda.read
use guard owner-arm signer-allowlist message-pin chain-pin value-cap day-cap fee-cap exact-approvals simulate-first receipt-check code-pin price-breaker outflow-breaker halt-on-failure single-runner idempotent-payouts recipient-filter fixed-addresses vault-owns kms-sign-only role-keys slice-size

agent pons_buyback is "Pons buyback"
  states idle read act_1 act_2 act_3 act_5 settled recorded held
  start idle
  final recorded held
  failed held
  on tick 5m
  on cron "12:00 UTC daily (airdrop)"
  move idle -> read meter lambda.read component coord-rpc
  move read -> act_1 when plan.ready == true act creator signs curve:launch sweepFees(uint256) buy(uint256,uint256,address) sell(uint256,uint256,address) guard owner-arm signer-allowlist message-pin chain-pin value-cap day-cap fee-cap exact-approvals simulate-first receipt-check code-pin price-breaker outflow-breaker halt-on-failure single-runner idempotent-payouts recipient-filter fixed-addresses vault-owns kms-sign-only role-keys slice-size meter lambda.act
  move act_1 -> act_2 when plan.ready == true act creator signs token:launch transfer(address,uint256) approve(address,uint256) guard owner-arm signer-allowlist message-pin chain-pin value-cap day-cap fee-cap exact-approvals simulate-first receipt-check code-pin price-breaker outflow-breaker halt-on-failure single-runner idempotent-payouts recipient-filter fixed-addresses vault-owns kms-sign-only role-keys slice-size meter lambda.act
  move act_2 -> act_3 when plan.ready == true act creator signs registered-address disperseToken(address,address[],uint256[]) guard owner-arm signer-allowlist message-pin chain-pin value-cap day-cap fee-cap exact-approvals simulate-first receipt-check code-pin price-breaker outflow-breaker halt-on-failure single-runner idempotent-payouts recipient-filter fixed-addresses vault-owns kms-sign-only role-keys slice-size meter lambda.act
  move act_3 -> act_5 when plan.ready == true act creator signs registered-address claim() claimToken(address) guard owner-arm signer-allowlist message-pin chain-pin value-cap day-cap fee-cap exact-approvals simulate-first receipt-check code-pin price-breaker outflow-breaker halt-on-failure single-runner idempotent-payouts recipient-filter fixed-addresses vault-owns kms-sign-only role-keys slice-size meter lambda.act
  move act_5 -> settled when receipts.all == true
  move settled -> recorded
  move * -> held when guard.held == true
  refuse guard_held "a guard held the run; nothing was signed"
  say recorded "Pons buyback: the run is recorded"
  next idle read "The run starts on its trigger: tick 5m, cron 12:00 UTC daily (airdrop)"

knowledge
  symptom "Pons buyback is held" caused_by "a guard held the run (owner-arm, signer-allowlist, message-pin, chain-pin, value-cap, day-cap, fee-cap, exact-approvals, simulate-first, receipt-check, code-pin, price-breaker, outflow-breaker, halt-on-failure, single-runner, …" fixed_by "read the guard by name in the trace, fix its cause, let the next trigger run"
  rule "Pons buyback signs only behind owner-arm, signer-allowlist, message-pin, chain-pin, value-cap, day-cap, fee-cap, exact-approvals, simulate-first, receipt-check, code-pin, price-breaker, outflow-breaker, halt-on-failure, single-runner, …"