Skip to content

docs: DOC-1261: auto-import sync check coverage - #8302

Open
margaretkennedy wants to merge 3 commits into
deephaven:mainfrom
margaretkennedy:autoimport-sync-fixes
Open

docs: DOC-1261: auto-import sync check coverage#8302
margaretkennedy wants to merge 3 commits into
deephaven:mainfrom
margaretkennedy:autoimport-sync-fixes

Conversation

@margaretkennedy

Copy link
Copy Markdown
Contributor

No description provided.

@github-actions

github-actions Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

No docs changes detected for bbaae1c

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds automated detection and documentation for auto-import reference drift.

Changes:

  • Adds a Java reflection-based sync checker.
  • Adds scheduled/manual GitHub Actions coverage and notifications.
  • Improves generator dependency and HTTP error handling.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

File Description
CheckAutoImportDocSync.java Implements documentation sync validation.
README.md Documents CI and local workflows.
generate_autoimport_docs.py Improves execution robustness and categorization.
autoimport-docs-check.yml Adds scheduled and manual sync checks.

Comment thread docs/tools/autoimport/README.md Outdated
Comment thread .github/workflows/autoimport-docs-check.yml

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (3)

engine/table/src/test/java/io/deephaven/engine/table/lang/impl/CheckAutoImportDocSync.java:143

  • This filter does not actually mirror the generator. categorize() assigns an unmatched static-import class to uncategorized, and the generator writes every category returned by the result table; only exclude_sources removes a static source. Consequently, if a new class is added to statics() without adding a prefix here, its generated rows may be absent from both doc trees while this check still passes. Either check all generator-included static classes (excluding the same sources as the generator) or make the generator explicitly omit uncategorized statics.
            if (filteredOnly && !isDocumented(cls)) {
                continue;
            }

engine/table/src/test/java/io/deephaven/engine/table/lang/impl/CheckAutoImportDocSync.java:65

  • The generator excludes only valueOf and values, but this checker also drops any generated static member named compareTo, ordinal, name, or getDeclaringClass. These are instance methods on enums, so the static modifier check already removes the boilerplate; excluding their names globally creates false negatives if a utility class exposes a legitimate static member with one of those names. Match the generator's exclusion set exactly.
    private static final Set<String> EXCLUDED_METHOD_NAMES = new HashSet<>(Arrays.asList(
            "values", "valueOf", "compareTo", "ordinal", "name", "getDeclaringClass"));

.github/workflows/autoimport-docs-check.yml:48

  • The sync check is explicitly skipped for every pull request, so even a PR that changes QueryLibraryImportsDefaults can merge stale documentation and the problem is discovered only by the later weekly run. This defeats pre-merge sync coverage; set up Java and execute the check on PR events as well (and trigger it for changes to the static-imported implementation classes and committed auto-import pages).
      - name: Run sync check (scheduled/manual only)
        if: ${{ github.event_name != 'pull_request' }}
        run: ./gradlew :engine-table:checkAutoImportSync

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.

2 participants