Skip to content

Add AI Doxygen documentation comments to engine headers#4337

Draft
andrew-tawfeek wants to merge 3 commits into
Macaulay2:developmentfrom
andrew-tawfeek:doxygen
Draft

Add AI Doxygen documentation comments to engine headers#4337
andrew-tawfeek wants to merge 3 commits into
Macaulay2:developmentfrom
andrew-tawfeek:doxygen

Conversation

@andrew-tawfeek
Copy link
Copy Markdown
Contributor

Squashed import of the doxygen-comment work previously hosted in the M2-docs companion repo (~641 small commits there, e.g. "Add class doxygen for foo, bar, baz"). Strictly additive: 12,279 insertions vs 521 deletions, where the deletions are trailing whitespace and a handful of older one-line \ingroup directives folded into the new file-level comment blocks. No semantic code changes.

Source: M2-docs (github.com/andrew-tawfeek/M2-docs) master @ e080fbdc15. These comments are what populates https://atawfeek.com/M2-engine/docs/ when doxygen.sh regenerates against this tree.

Important note: These doxygen comments are all AI (Opus 4.7) generated.

Squashed import of the doxygen-comment work previously hosted in the
M2-docs companion repo (~641 small commits there, e.g. "Add class
doxygen for foo, bar, baz"). Strictly additive: 12,279 insertions
vs 521 deletions, where the deletions are trailing whitespace and a
handful of older one-line \ingroup directives folded into the new
file-level comment blocks. No semantic code changes.

Source: M2-docs (github.com/andrew-tawfeek/M2-docs) master @ e080fbdc15.
These comments are what populates https://atawfeek.com/M2-engine/docs/
when doxygen.sh regenerates against this tree.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@andrew-tawfeek andrew-tawfeek changed the title Add Doxygen documentation comments to engine headers Add AI Doxygen documentation comments to engine headers May 20, 2026
@andrew-tawfeek andrew-tawfeek marked this pull request as draft May 20, 2026 19:11
quasicompact and others added 2 commits May 20, 2026 19:18
Adds a `@note AI-generated documentation. Verify against the source
before relying on it.` line to every doxygen block introduced in the
prior squash (commit 2f165f0). 556 blocks across 313 files; pure
additive (1112 insertions, 0 deletions). Pre-existing upstream
`@brief` blocks (e.g. in aring-qq-flint.hpp, aring-m2-gf.hpp) were
detected via verbatim body match against upstream/development and
left untouched. CRLF line endings on the bibasis files preserved.

The @note renders as a blue admonition box in Doxygen HTML, placed
right after the @brief paragraph so it is the first thing a reader
sees in the rendered detailed description.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
`vec` / `vecterm` nodes are kept in strictly decreasing order of
`comp`, with zero-coefficient entries omitted. The invariant is
already relied on by `Ring::add_vec_to`'s sorted merge and by
`Ring::get_entry`'s early-`break` search, but only `ring.hpp`'s
section comment said so out loud. Pull the note up to the other
three places vec is described:

  - ringelem.hpp: at the vecterm definition
  - ring-vecs.cpp: in the file-level @brief
  - matrix.hpp: in both column iterator @details blocks
  - ring.hpp: extend the existing "descending component" note to
    also mention zero-omission

Co-Authored-By: Claude Opus 4.7 <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.

2 participants