WarBow flag plant via Buy does not refresh pending-flag UI until another action #370

Closed
opened 2026-07-09 07:56:59 +00:00 by PlasticDigits · 3 comments
PlasticDigits commented 2026-07-09 07:56:59 +00:00 (Migrated from gitlab.com)

Bug

User report: "I tried with the buy button on top. But the flag was not planted until I used the steal button. I'll double check next time again"

Plant Flag on Next Buy + top Buy CHARM should plant onchain and update the WarBow pending-flag UI immediately after the buy mines. Users currently only see the planted flag after a later WarBow action (e.g. steal) refreshes related reads.

Likely cause

With indexer-first Arena display (#301), GET /v1/arena/timers omits warbowPendingFlag* fields. Those come from a separate RPC supplement (arenaV2WarbowFlagSupplementContracts).

submitBuy → refetchAll refreshes timers/sale/user/CRED/hero timer but does not refetch the WarBow flag supplement query (refetchInterval: false). Steal/other WarBow writes trigger broader wallet refreshes, so the planted flag appears later — matching the report.

Also verify:

  • DOUB / Kumbaya buy paths pass plantWarBowFlag=true into the correct buy / buyViaKumbaya overload.
  • CRED buys cannot plant (buyWithCred hardcodes plant=false) — UI should not imply they can.
  • Level ≥ 5 gate still applies onchain.

Acceptance

  • After a successful DOUB/Kumbaya buy with Plant Flag checked (level ≥ 5), UI shows the viewer as pending flag owner without requiring steal/guard/revenge.
  • Flag silence countdown / claim CTA appear from the refreshed onchain warbowPendingFlag* reads.
  • Regression test or session-hook coverage that buy success refetches the flag supplement.
  • #63 opt-in plant on buy
  • #362 planted-flag silence timer in WarBow viewer summary
  • #301 indexer-first display (timers omit flag fields)
## Bug User report: \"I tried with the buy button on top. But the flag was not planted until I used the steal button. I'll double check next time again\" Plant Flag on Next Buy + top Buy CHARM should plant onchain and update the WarBow pending-flag UI immediately after the buy mines. Users currently only see the planted flag after a later WarBow action (e.g. steal) refreshes related reads. ## Likely cause With indexer-first Arena display (#301), `GET /v1/arena/timers` omits `warbowPendingFlag*` fields. Those come from a separate RPC supplement (`arenaV2WarbowFlagSupplementContracts`). `submitBuy` → `refetchAll` refreshes timers/sale/user/CRED/hero timer but does **not** refetch the WarBow flag supplement query (`refetchInterval: false`). Steal/other WarBow writes trigger broader wallet refreshes, so the planted flag appears later — matching the report. Also verify: - DOUB / Kumbaya buy paths pass `plantWarBowFlag=true` into the correct `buy` / `buyViaKumbaya` overload. - CRED buys cannot plant (`buyWithCred` hardcodes `plant=false`) — UI should not imply they can. - Level ≥ 5 gate still applies onchain. ## Acceptance - After a successful DOUB/Kumbaya buy with Plant Flag checked (level ≥ 5), UI shows the viewer as pending flag owner without requiring steal/guard/revenge. - Flag silence countdown / claim CTA appear from the refreshed onchain `warbowPendingFlag*` reads. - Regression test or session-hook coverage that buy success refetches the flag supplement. ## Related - #63 opt-in plant on buy - #362 planted-flag silence timer in WarBow viewer summary - #301 indexer-first display (timers omit flag fields)
PlasticDigits commented 2026-07-09 07:59:45 +00:00 (Migrated from gitlab.com)

mentioned in commit fa467f9181

mentioned in commit fa467f918111cbdcb16f2e41c8601b60be1472ce
PlasticDigits commented 2026-07-09 08:00:21 +00:00 (Migrated from gitlab.com)

mentioned in merge request !541

mentioned in merge request !541
PlasticDigits commented 2026-07-11 01:37:21 +00:00 (Migrated from gitlab.com)

mentioned in commit e6fb5f8bea

mentioned in commit e6fb5f8bea542454864d0c2703db1d7cc57ae67a
PlasticDigits (Migrated from gitlab.com) closed this issue 2026-07-11 01:37:21 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
code/yieldomega#370
No description provided.