Skip to content

Conversation

@atomantic
Copy link
Owner

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

Commits

  • docs: add changelog for v0.26.0
  • feat: skip stock fund action prompts on weekends and holidays
  • fix: align form input fields by using fixed height label rows
  • adding link to github app
  • build: prep v0.26.0 for next release

github-actions bot and others added 5 commits January 16, 2026 22:09
WizardIndicator now uses absolute positioning with h-5 fixed height
label containers to prevent the indicator from pushing inputs down.
Stock funds no longer prompt for action when the US stock market is
closed (weekends and major holidays like New Year's, MLK Day, Presidents
Day, Good Friday, Memorial Day, Juneteenth, Independence Day, Labor Day,
Thanksgiving, and Christmas). This applies to both the ActionableFundsBanner
and the nav badge count.
Copilot AI review requested due to automatic review settings January 18, 2026 23:32
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces smart stock fund notifications that suppress action prompts when the US stock market is closed (weekends and holidays), adds a GitHub repository link to the backtest page, and fixes form input field alignment issues caused by wizard indicators.

Changes:

  • Market-aware filtering for stock fund action prompts based on weekends and US market holidays
  • GitHub repository link added to backtest page footer
  • Form label heights standardized using fixed-height wrapper divs with relative positioning

Reviewed changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
packages/web/src/utils/format.ts Adds isStockMarketClosed() utility with weekend and holiday detection logic including Easter calculation
packages/web/src/components/ActionableFundsBanner.tsx Filters out stock funds when market is closed using memoized market status check
packages/web/src/components/Layout.tsx Applies market closed filter to navigation badge count for consistency
packages/web/src/components/EntryForm.tsx Fixes wizard indicator alignment by using absolute positioning within fixed-height label containers
pages/src/BacktestApp.tsx Adds GitHub repository link to footer
package.json Version bump to 0.26.0
package-lock.json Version bump to 0.26.0
.changelogs/v0.26.0.md Release notes documenting all changes

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- Change "Run the App" link text to "View on GitHub" for accuracy
- Remove unnecessary useMemo in ActionableFundsBanner since
  isStockMarketClosed is a lightweight calculation
- Use US Eastern Time (America/New_York) for market closed checks
  instead of local browser timezone
- Fix holiday observance date calculation to handle month boundaries
  correctly using Date arithmetic
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 7 out of 8 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@atomantic atomantic merged commit 5c79832 into main Jan 19, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants