Skip to content

docs: add ## Notes section to time/quarter-of-year README#12734

Draft
Planeshifter wants to merge 1 commit into
developfrom
philipp/drift-time-2026-06-09
Draft

docs: add ## Notes section to time/quarter-of-year README#12734
Planeshifter wants to merge 1 commit into
developfrom
philipp/drift-time-2026-06-09

Conversation

@Planeshifter

Copy link
Copy Markdown
Member

Description

This pull request adds the ## Notes section present in 17 of 19 sibling @stdlib/time/* packages (~89% conformance) to the quarter-of-year README. The boilerplate text matches the disclaimer added to iso-weeks-in-year (#12313), day-of-quarter, and day-of-year (#12369). quarterOfYear() accepts a Date argument and uses Date.prototype.getMonth() (local time), so the daylight-savings / timezone disclaimer is semantically applicable, matching sibling day-of-quarter.

Namespace summary

  • Members analyzed: 19 (@stdlib/time/* direct children with package.json)
  • Structural features with clear majority (≥75%): file_tree (set), pkg_json.top_keys, readme_sections (set and sequence), test_files, examples_files
  • Semantic features with clear majority: errorConstruction (uniformly format), @example presence, JSDoc tag families (matched to per-function semantics)
  • Features excluded for no clear majority: benchmark/benchmark.js presence (2/19), pkg_json.scripts_keys, pkg_json.stdlib_keys

quarter-of-year

Sole outlier with confirmed, mechanically fixable drift. The README jumped from ## Usage directly to ## Examples, skipping the ## Notes section present in 17 of 19 siblings (89.5% conformance). The Notes content is identical verbatim across all conformant siblings; the disclaimer applies semantically because quarterOfYear reads the month via Date.prototype.getMonth() in local time.

Validation

  • Structural extraction: file trees, package.json shapes, README section sets and sequences, test/benchmark/example filenames across all 19 members.
  • Semantic extraction: error-construction style, JSDoc tag families, dependencies via require(), public-function shapes — scanned directly across all 19 lib/main.js files.
  • Three-agent validation on the surviving outlier (cross-reference and structural review) — both returned confirmed-drift. Semantic-review skipped (purely structural feature).
  • Deliberately excluded: base (meta sub-namespace), tic/toc lacking CLI infrastructure (no shell use case; CLI not present in ≥90% of stdlib outside this namespace), and benchmark/benchmark.js adds across 17 packages (below 75% majority threshold).
  • Generator-owned files (docs/repl.txt, docs/types/index.d.ts) intentionally not touched, despite some prior maintainer PRs (docs: document Date input and add Notes section in time/iso-weeks-in-year #12313) editing them; this PR plays conservative on generator-owned scope.

Related Issues

No.

Questions

No.

Other

Recent precedent for this exact correction on adjacent siblings: #12313 (iso-weeks-in-year) and #12369 (day-of-quarter, day-of-year). Both added the verbatim Notes block in the same README position.

Checklist

AI Assistance

  • Yes
  • No

If you answered "yes" above, how did you use AI assistance?

  • Code generation (e.g., when writing an implementation or fixing a bug)
  • Test/benchmark generation
  • Documentation (including examples)
  • Research and understanding

Disclosure

This PR was authored by Claude Code as part of a cross-package API drift detection routine: structural and semantic features extracted across all 19 direct children of @stdlib/time/, majority pattern identified per feature (75% threshold), single high-signal outlier (quarter-of-year missing ## Notes) confirmed via multi-agent validation, and the verbatim sibling boilerplate applied.


@stdlib-js/reviewers


Generated by Claude Code

Adds the `## Notes` section present in 17 of 19 sibling `@stdlib/time/*`
packages (~89% conformance) to the `quarter-of-year` README. Boilerplate
text matches the disclaimer used in recent PRs (#12313, #12369) that
added the same note to `iso-weeks-in-year`, `day-of-quarter`, and
`day-of-year`. `quarterOfYear()` uses `Date.prototype.getMonth()` (local
time) when called with a `Date` argument, so the daylight-savings /
timezone disclaimer is semantically applicable, matching sibling
`day-of-quarter`. Generator-owned `docs/repl.txt` and
`docs/types/index.d.ts` are intentionally left untouched.
@stdlib-bot

Copy link
Copy Markdown
Contributor

Coverage Report

Package Statements Branches Functions Lines
time/quarter-of-year $\color{green}129/129$
$\color{green}+100.00\%$
$\color{green}17/17$
$\color{green}+100.00\%$
$\color{green}1/1$
$\color{green}+100.00\%$
$\color{green}129/129$
$\color{green}+100.00\%$

The above coverage report was generated for the changes in this PR.

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.

3 participants