Skip to content

Document NBP publication schedules in client XML docs - #23

Merged
milten89 merged 3 commits into
developfrom
docs/nbp-publication-schedules
Oct 1, 2026
Merged

milten89 merged 3 commits into
developfrom
docs/nbp-publication-schedules

Conversation

@milten89

@milten89 milten89 commented Oct 1, 2026

Copy link
Copy Markdown
Owner

Fixes BACKLOG P1 item 10.

Publication schedule (Europe/Warsaw time)

Source: NBP's "Informacja o terminach publikacji kursów walut". The site blocks automated browsers, so I read it through the search engine's copy.

Data Published
Table A (mid, common currencies) business days, 11:45–12:15
Table B (mid, less common currencies) Wednesdays, 11:45–12:15; the previous business day if Wednesday is a holiday
Table C (buy/sell) business days, 7:45–8:15
Gold business days. No hour is documented: I couldn't confirm one from NBP's own text.

Changes

  • Every method of the three client interfaces has <remarks> with the schedule of the table it reads (mid methods: A/B, buy-sell methods: C, gold), and each interface summarises it.
  • Today methods explain that until that day's publication, and on days without one, the result is a NotFoundError. They point to the matching Latest method with <see cref>. Latest methods explain that they return the previous value until the next publication.
  • "Can return no data" summaries now name the NotFoundError.
  • Concrete client classes (NbpCurrencyExchangeRateClient, NbpExchangeRateTableClient, NbpGoldPriceClient): all 25 public methods use <inheritdoc/>, the classes inherit the interface summary, and the constructors are documented. Without this, callers using the classes directly (the ADR-0007 default) saw none of the docs; CS1591 is suppressed, which hid the gap.
  • Grammar fixes ("the todays", "the gold price are").

Merge note: this PR and #22 remove adjacent lines in docs/BACKLOG.md (items 10 and 11), so whichever merges second will show a one-line conflict. Ask me to update that PR and I'll resolve it.

Verification

  • dotnet build OpenUrzednik.slnx: 0 errors, no cref warnings.
  • dotnet test -f net10.0: Core 90/90, Nbp 556/556, IntegrationTests 47 passed / 9 skipped (manual tests).
  • dotnet format --verify-no-changes: clean.
  • reviewer agent: no blocking findings. I fixed its should-fix point (<inheritdoc/> on the concrete clients) and nits (Latest wording, gold wording, NotFoundError in summaries, grammar).

🤖 Generated with Claude Code

milten89 and others added 3 commits October 1, 2026 22:56
Each interface and method states when its table is published (Europe/
Warsaw): A on business days 11:45-12:15, B on Wednesdays 11:45-12:15
(previous business day if Wednesday is a holiday), C on business days
7:45-8:15, gold on business days. Today methods explain the
NotFoundError before publication and point to the Latest method.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The client classes had no XML docs, so callers using them directly
(new NbpGoldPriceClient(httpClient)) saw none of the limits or
publication schedules. Methods now use <inheritdoc/>, classes inherit
the interface summary, and constructors are documented. Also: say
NotFoundError instead of 'can return no data', clearer Latest remarks,
and grammar fixes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@milten89
milten89 merged commit 6e7d4c6 into develop Oct 1, 2026
8 checks passed
@milten89
milten89 deleted the docs/nbp-publication-schedules branch October 1, 2026 21:04
milten89 added a commit that referenced this pull request Oct 1, 2026
- P1: drop item 11, which #22 fixed (the #23 merge put it back); add
  item 27, the unconfirmed gold publication hour.
- P2: items 12 and 13 describe what is left after #16-#18; item 26
  (WireMock error paths per client) goes with item 12.
- P3: item 20 is no longer a vulnerability after #12; item 21 notes
  what is documented; new items 24 (Microsoft.Testing.Platform, blocks
  Dependabot #11) and 25 (outdated GITHUB-SETUP.md). Item 22 points
  to the new prose skills.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
milten89 added a commit that referenced this pull request Oct 1, 2026
- P1: drop item 11, which #22 fixed (the #23 merge put it back); add
  item 27, the unconfirmed gold publication hour.
- P2: items 12 and 13 describe what is left after #16-#18; item 26
  (WireMock error paths per client) goes with item 12.
- P3: item 20 is no longer a vulnerability after #12; item 21 notes
  what is documented; new items 24 (Microsoft.Testing.Platform, blocks
  Dependabot #11) and 25 (outdated GITHUB-SETUP.md). Item 22 points
  to the new prose skills.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
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.

1 participant