Skip to content

Releases: CadPunkInvest/jij-bot

v1.5.12 - Fix USDC Tax Reserve sync (was dead code in v1.5.11)

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 04 Jul 16:28

What's fixed

  • Tax Reserve now actually syncs every poll cycle — the USDC reconcile in v1.5.11 had a bug where an early return in the SOL-check block exited the entire function whenever SOL pools were balanced (which is almost always). The USDC block beneath it was dead code. Now the SOL check only skips the SOL correction when there is no shortfall; USDC reconcile runs unconditionally every ~10 seconds and will correct the Tax Reserve display within one cycle of updating.

Downloads

Platform File
Windows JIJ-Bot-1.5.12-Windows-Setup.exe
Android JIJ-Bot-1.5.12.apk

v1.5.11 - Fix USDC Tax Reserve tracking

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 04 Jul 13:55

What's fixed

  • Tax Reserve stays in sync after USDC withdrawals — withdrawUSDC() now correctly decrements the tracked Tax Reserve balance
  • Bidirectional USDC reconciliation — the reconcile pass now syncs taxReserveUSDC up or down to match real wallet USDC balance (wallet is ground truth)
  • Payout send failure no longer loses USDC — if the payout swap lands on-chain but the token send fails, USDC is credited to Tax Reserve instead of being left untracked

Downloads

Platform File
Windows JIJ-Bot-1.5.11-Windows-Setup.exe
Android JIJ-Bot-1.5.11.apk

v1.5.10

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 03 Jul 23:13

What's changed

  • Trail now does a full re-anchor instead of an incremental shift. Once price runs far enough above the grid's upper bound, the bot pools Grid Reserve + Trail Buffer together and fully re-anchors the grid around the current price through the same 50/50 split used everywhere else in the recent redesign — instead of the old behavior, which slid the grid up one level at a time and never touched sell-side JiJ inventory. The manual "Re-anchor" button and the automatic trail trigger now share one implementation, so they can't drift out of sync with each other again.

What's fixed

  • Some bots stayed stuck skipping sells even after updating to v1.5.8. The self-heal added in that release only ran on the app-foreground resume path — it never ran on the path used when re-pressing "Start" after a stop, or on a fresh app launch with saved state ("Bot restarted — resuming existing grid" in the log). Both paths now run the heal.

v1.5.9

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 03 Jul 22:57

What's fixed

  • "The Cause" wasn't accumulating from small grid-fill profits. On a low-priced token like HYPE, a single grid step's profit can be smaller than the minimum amount the bot routes at once — so it gets held in a "dust" bucket until enough accumulates. That bucket was a temporary, in-memory value instead of part of the saved bot state, so it silently reset to zero on every app restart, losing whatever was pending before it ever reached tax, The Cause, Grid, DCA, or Trail. It's now persisted properly and survives restarts.

v1.5.8

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 03 Jul 22:05

Grid redesign — fixes sell rungs getting permanently stuck on fast price moves

During the open beta, HYPE moved >7% in a short window and multiple sell rungs got stuck
skipping "insufficient JiJ" for 35+ minutes straight. Device logs traced the exact cause,
and this release addresses it directly:

  • Capital is now split 50/50 (was 30/70) at bot start, Top Up, and re-anchor — half
    funds the buy-side reserve, half immediately buys JiJ sized to pre-arm every sell rung
    above entry, so sell rungs have real inventory from day one.
  • New rungs start with zero quantity until real JiJ is distributed across them — they
    can never fire on stale, unbacked sizing.
  • Grid fills are now aggregated. If price crosses several rungs since the last check
    (a fast move, or a burst after being backgrounded), the bot now executes one swap sized
    to whatever's actually available — JiJ for sells, SOL for buys — filling as many rungs
    as that covers and leaving any remainder for the next cycle, instead of firing one swap
    per rung, hitting rate limits, and skipping forever once inventory runs out.
  • JiJ redistribution now also runs after every grid format switch (3x/day), not just
    Top Up — previously only the buy side got rebalanced there.
  • A resume-time self-heal fixes any bot already stuck this way if real JiJ balance
    has drifted more than 5% from what its open sell rungs collectively require.

v1.5.7

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 03 Jul 19:27

What's fixed

  • Biometric login stuck in an unrecoverable dead end (Android). Diagnostics from an affected user's Activity Log showed biometric hardware reporting available, but never actually enrolled — meaning every attempt was guaranteed to fail with "no credentials found," regardless of fingerprint quality, with no way back to the setup screen to fix it.
    • PIN unlock now re-offers biometric enrollment once when it's available but was never successfully enrolled (and you haven't already dismissed it), using the PIN you just typed.
    • Enrollment failures are now logged instead of silently swallowed.
    • The "Use biometric instead" button no longer appears on the PIN screen when it's guaranteed to fail.

v1.5.6

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 03 Jul 14:12

What's fixed

  • Top Up no longer offers USDC/JiJ that's already committed. "Available" for USDC and JiJ was showing your full wallet balance, including funds already working for the bot — USDC sitting in the tax reserve, and JiJ tied up in the grid's own open sell orders. Available now correctly subtracts those, matching how SOL already worked, so Top Up only offers genuinely free funds.

v1.5.5

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 03 Jul 14:02

What's fixed

  • Self-reconciliation now rescales the running grid, not just the tracked number. When self-reconciliation corrects Grid Reserve down to match your real wallet balance, the grid's open buy/sell orders were still sized against the old, inflated reserve — meaning the grid could keep trying to trade more SOL than it actually had, and would eventually start failing fills. Every still-open, unfilled order is now automatically rescaled to match the corrected reserve. Filled orders are left untouched since they reflect real trades that already happened on-chain.

v1.5.4

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 03 Jul 13:37

What's fixed

  • Stale PIN digits on the unlock screen. After a session lock/relock (or falling back from biometric to PIN), the PIN screen could reopen with leftover digits from a previous, never-submitted entry already filled in — forcing you to backspace through them before typing your real PIN. The PIN field is now always cleared before the unlock screen reappears. Fixed on both desktop and Android.

v1.5.3

Choose a tag to compare

@CadPunkInvest CadPunkInvest released this 03 Jul 13:25

What's new

  • Full Activity Log viewer. The Activity card now has a "View Full Log" button that opens the entire session log with a Copy All button — paste it straight into a support message when reporting a bug.
  • Trade Log in the Wallet. Every grid buy/sell and every DCA buy is now recorded and labeled (BUY/SELL, GRID/DCA), with a 20-trade preview in the wallet and a full history view for everything the bot has ever traded.
  • Biometric diagnostics. For users whose fingerprint/face unlock isn't working (e.g. some Samsung Galaxy S25 Ultra devices), the app now captures the exact failure reason (hardware unavailable, not enrolled, locked out, mismatch, etc.) and surfaces it in the Activity Log after your next unlock — no adb or developer tools needed. Please copy/paste the log entry if biometric login still isn't working for you so we can pin down the exact cause.