Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

FB-001: engine.run(start, end) silently drops the end date [silent-wrong]

Open Beginner friendly
#20 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
76/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
backend, databases

Research direction

The issue points to the date filter at engine.py:129 and says get_available_dates() returns timestamps formatted as "YYYY-MM-DD 00:00:00". Start by reading that filter and how run() receives start and end, then check the available date values for the repro. Done means run(d, d) includes that day and the expiry period no longer closes one day early.

Written by the indexing model from the issue text.

Description

bug

Severity: silent-wrong (all modes, including period="day") · Source: BUGS_FASTBT.md (2026-10-09, re-confirmed 2026-10-11 by findings consolidation B04)

engine.py:129 filters start_date <= d <= end_date as strings, but get_available_dates() returns "YYYY-MM-DD 00:00:00". "2025-07-10 00:00:00" <= "2025-07-10" is False, so the end date is excluded.

Repro (nifty_full.vortex, verified 2026-10-09): [d for d in dates if '2025-07-04' <= d <= '2025-07-10'] gives 07-04, 07-07, 07-08, 07-09 — expiry 07-10 is missing.

Impact: day mode silently skips the last day; run(d, d) runs zero days. In expiry mode the period is truncated: the position is force-closed (EOD_FORCE) at 15:30 the day before expiry.

Workaround: pass end + " 23:59:59".
Fix: compare on str(d)[:10], or normalise the dates once in run().

Dominant language
Python
Stars
28
Forks
17
PR merge metrics
No merged PRs in 30d

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from uberdeveloper/fastbt

All issues in uberdeveloper/fastbt

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.