Skip to content

Releases: atomantic/EscapeMint

v0.32.1

24 Jan 17:20
e1e816b

Choose a tag to compare

Release v0.32.1

Changes

  • chore: ignore .playwright-mcp folder
  • fix: correct APY calculation after full liquidation and restart

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev

v0.31.6

23 Jan 22:09
d051e80

Choose a tag to compare

Release v0.31.6

Changes

  • fix: address PR review feedback for note format and margin handling
  • fix: address PR review feedback for edge cases
  • fix: address PR review feedback for trade notes and date change calc
  • fix: address additional PR review feedback for cash sync
  • fix: address PR review feedback for cash sync on entry edit
  • feat: sync cash fund when editing trading fund entries

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev

v0.30.1

23 Jan 05:17
5ccb663

Choose a tag to compare

Release v0.30.1

Changes

  • feat: add GLD and SLV to backtest tool with updated default blend

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev

v0.29.1

22 Jan 15:38
d0d51c7

Choose a tag to compare

Release v0.29.1

Changes

  • chore: update M1 Finance share link

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev

v0.28.4

20 Jan 20:48
059eb4e

Choose a tag to compare

Release v0.28.4

Changes

  • fix: add totalExpectedTarget to WebSocket dashboard history
  • feat: enhance dashboard with stacked charts and target value
  • chore: update M1 Finance referral link
  • fix: correct derivatives liquidation price calculation
  • update tests
  • chore: update M1 Finance referral link and ignore playwright data
  • feat: prompt to reopen closed funds when adding entry

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev

v0.27.5

19 Jan 22:07
8fd27bb

Choose a tag to compare

Release v0.27.5

Changes

  • fix: address PR review feedback
  • docs: clarify Yield category is for stable high-yield instruments only
  • docs: remove ETH from Store of Value category (BTC only)
  • fix: sync package-lock.json version and update CI to maintain sync
  • feat: add multi-category pie fund support
  • feat: add Four Pillars fund categories with portfolio allocation chart
  • feat: add automatic build number incrementing on dev branch
  • docs: add v0.27.0 changelog and revert v0.26.0 to released state
  • docs: update changelog with timezone fix
  • fix: use UTC methods in holiday detection to fix timezone issues

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev

v0.26.0

19 Jan 00:18
5c79832

Choose a tag to compare

Release v0.26.0 - Smart Stock Fund Notifications

Released: 2026-01-18

Overview

This release improves the user experience by intelligently suppressing stock fund action prompts when the US stock market is closed, and fixes a visual alignment issue in entry forms.

New Features

Market-Aware Stock Fund Notifications

  • Weekend detection: Stock funds no longer prompt for action on Saturdays and Sundays
  • Holiday detection: Stock funds skip prompts on all major US stock market holidays:
    • New Year's Day (with weekend observance)
    • Martin Luther King Jr. Day (3rd Monday of January)
    • Presidents Day (3rd Monday of February)
    • Good Friday (Friday before Easter)
    • Memorial Day (Last Monday of May)
    • Juneteenth (June 19, with weekend observance)
    • Independence Day (July 4, with weekend observance)
    • Labor Day (1st Monday of September)
    • Thanksgiving (4th Thursday of November)
    • Christmas (December 25, with weekend observance)
  • Applies to: ActionableFundsBanner on dashboard and nav badge count
  • Other fund types unaffected: Crypto, cash, and derivatives funds still prompt as normal (24/7 markets)

GitHub App Link

  • Added link to the GitHub App installation page

Bug Fixes

Form Input Alignment

  • Fixed an issue where the "Update first" wizard indicator caused the Equity input field to be pushed down relative to the Date field
  • Applied consistent fixed-height label rows (h-5) across all form fields with wizard indicators
  • Affects both Cash Balance and standard trading fund entry forms

Technical Details

New Utility Functions

  • isStockMarketClosed(date?): Check if US stock market is closed on a given date
  • isUSMarketHoliday(date): Internal helper for holiday detection
  • calculateEaster(year): Easter calculation for Good Friday determination

Files Changed

  • packages/web/src/utils/format.ts - Added market closed detection utilities
  • packages/web/src/components/ActionableFundsBanner.tsx - Filter stock funds on market closed days
  • packages/web/src/components/Layout.tsx - Apply same filter to nav badge count
  • packages/web/src/components/EntryForm.tsx - Fixed label row heights for alignment

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev

Full Changelog

Full Diff: v0.25.0...v0.26.0

v0.25.0

16 Jan 22:09
9d42617

Choose a tag to compare

Release v0.25.0

Changes

  • feat: add VTI to backtest tool with 5 years historical data
  • more notes on asset choice

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev

v0.24.0

16 Jan 20:02
be5bbd2

Choose a tag to compare

Release v0.24.0 - Legacy Code Cleanup & Structured Logging

Released: 2026-01-16

Overview

This release removes deprecated fields and legacy fallback code, cleaning up technical debt while adding a structured logging utility for better observability.

New Features

Structured Logger Utility

  • Configurable log levels: Set LOG_LEVEL environment variable to control verbosity
  • Available levels: debug, info (default), warn, error, silent
  • Structured format: [timestamp] [LEVEL] [context] message
  • Context-aware: Create loggers with specific contexts (e.g., createLogger('import'))

Breaking Changes

Required Config Fields

  • __platform and __ticker are now required in fund config JSON files
  • Previous behavior: If missing, these were inferred from the filename (e.g., m1-voo.tsv → platform: m1, ticker: voo)
  • Migration: Add "__platform": "yourplatform" and "__ticker": "TICKER" to any config files missing these fields

Explicit Closed Status

  • status: 'closed' is now required to mark funds as closed
  • Previous behavior: Funds with fund_size_usd: 0 and no explicit status were treated as closed
  • Migration: Add "status": "closed" to config files for funds that should be closed

Removed

Deprecated Fields

  • initialMargin: Removed from derivatives calculations (use marginLocked instead)
  • funding_profit / funding_loss: Removed deprecated fields from storage and web interfaces

Legacy Code Paths

  • Filename parsing fallback: Config files must now include __platform and __ticker
  • Implicit closed detection: Zero fund_size no longer implies closed status
  • Console statements: Replaced 149 console.* calls in import.ts with structured logging

Improvements

Code Quality

  • Simplified closed fund detection logic across all packages
  • Reduced code complexity by removing legacy compatibility layers
  • Better log filtering via LOG_LEVEL environment variable

Files Changed

  • packages/server/src/utils/logger.ts (new) - Structured logging utility
  • packages/server/src/routes/import.ts - Replaced console with structured logs
  • packages/storage/src/fund-store.ts - Removed deprecated fields and fallbacks
  • packages/server/src/routes/funds.ts - Simplified closed fund checks
  • packages/engine/src/derivatives-calculations.ts - Removed initialMargin
  • Multiple web components - Removed deprecated field references

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev

Full Changelog

Full Diff: v0.23.0...v0.24.0

v0.23.0

16 Jan 15:42
b143328

Choose a tag to compare

Release v0.23.0

Changes

  • fix: address PR review feedback
  • fix: prevent SELL at loss and correct expected target calculation

Installation

git clone https://github.com/atomantic/EscapeMint.git
cd EscapeMint
npm run setup
npm run dev