Skip to content

fix: read a date-only timestamp as midnight US/Eastern - #112

Closed
MarketDataDev02 wants to merge 1 commit into
mainfrom
claude/csharp-sdk-issue-111-4091ef
Closed

MarketDataDev02 wants to merge 1 commit into
mainfrom
claude/csharp-sdk-issue-111-4091ef

Conversation

@MarketDataDev02

@MarketDataDev02 MarketDataDev02 commented Sep 22, 2026 •

Copy link
Copy Markdown
Collaborator

Superseded by #114.

@MarketDataDev02

Copy link
Copy Markdown
Collaborator Author

C:/Program Files/Git/run-all-os

@MarketDataDev02

Copy link
Copy Markdown
Collaborator Author

/run-all-os

@codecov

codecov Bot commented Sep 22, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (3438f7f) to head (428d1d4).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #112   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           69        69           
  Lines         2187      2190    +3     
  Branches       272       274    +2     
=========================================
+ Hits          2187      2190    +3     
Files with missing lines Coverage Δ
src/MarketDataApp/JsonResponseParser.cs 100.00% <100.00%> (ø)

Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3438f7f...428d1d4. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions

Copy link
Copy Markdown
Contributor

❌ On-demand OS matrix {windows, macOS} failed. View run.

Under dateformat=timestamp the API writes a date as %Y-%m-%d, meaning that
calendar day in US/Eastern. ToDateTime parsed every string with
DateTimeStyles.AssumeUniversal, so a date became UTC midnight and, once
converted to America/New_York, 20:00 or 19:00 of the day before: daily
stock and fund candles, earnings dates, news dates, option expirations and
market status dates.

A string of exactly the yyyy-MM-dd shape is now midnight US/Eastern of that
day, with the EST or EDT offset in force then. Every other string keeps the
offset-aware parse, so datetimes with an offset and the unix format read as
before. A length test keeps datetime values off the exact date parse, which
would otherwise cost about 200 ns per value when it fails.

The explicit non-string branch surfaces a path the old combined condition
hid from coverlet, which shares one hit counter per jump target; that path
now has its own test.
@MarketDataDev02
MarketDataDev02 force-pushed the claude/csharp-sdk-issue-111-4091ef branch from 8fac40c to 428d1d4 Compare September 22, 2026 18:26
@marketdata-code-review

Copy link
Copy Markdown

⛔ Blocked — Code review

This changes internal timestamp decoding so exact date-only strings become midnight US/Eastern while offset-bearing datetimes and Unix timestamps retain their behavior, with direct and endpoint-level regression tests. Version impact: patch (1.0.0 -> 1.0.1); no public or protected symbol changes. The same defect exists in Python and may exist in PHP; Java, Go, and JavaScript do not share this typed-decoding path.

Rating patch 5/6 (solid) · proof 4/6 (adequate) · overall 4/6


Reviewed 428d1d4 · revision 1 · codex (gpt-5.6-sol) · claude unavailable · rules: default, sdk

@MarketDataDev02
MarketDataDev02 deleted the claude/csharp-sdk-issue-111-4091ef branch September 22, 2026 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant