Skip to content

feat(postgres): complete schema-object introspection coverage - #66

Merged
vistart merged 4 commits into
release/v1.0.0.dev17from
feature/introspection-coverage
Nov 9, 2026
Merged

vistart merged 4 commits into
release/v1.0.0.dev17from
feature/introspection-coverage

Conversation

@vistart

@vistart vistart commented Nov 9, 2026

Copy link
Copy Markdown
Contributor

Description

Adds the missing postgres introspection coverage and aligns the CLI surface with what the backend can actually deliver.

  • schema-object introspection families: partitions, routines, types, operators, operator classes, operator families
  • identity sequences and identity/auto-increment column facts
  • DDL CLI type removed because supports_ddl_extraction() is now honestly False

The ddl introspection type is no longer advertised for this backend because
supports_ddl_extraction() is permanently False. introspect ddl is now an
argparse usage error (exit 2); the backend DDL expression/formatter remains for
a future implementation.

Adds # (no linked issue; operator-directed introspection coverage work)

Type of change

  • feat: A new feature
  • docs: Documentation only changes
  • test: Adding missing tests or correcting existing tests
  • ci: Changes to CI configuration files and scripts
  • perf
  • chore
  • build
  • revert

Breaking Change

  • Yes
  • No

The removed ddl CLI type never produced an answer for an ordinary table, so
its removal changes the help/type surface rather than a working capability.

Applicable rhosocial-activerecord Version Range:

>=1.0.0.dev30,<2.0.0

Related Repositories/Packages

  • rhosocial-activerecord core: release/v1.0.0.dev30
  • rhosocial-activerecord-testsuite: release/v1.0.0.dev17
  • This backend's own release branch: release/v1.0.0.dev17

Testing

  • CI run 42592033149: success (all jobs)
  • Local offline tests: 227 offline introspection tests; 792 conformance/DDL expression tests
  • introspect --help no longer lists ddl
  • introspect ddl exits 2 with invalid choice

Test Plan:

The CI run above is the full matrix. Targeted offline suites cover the new
formatters, parsers, sync/async dispatch, capability gates and CLI vocabulary.

Checklist

  • My code follows the project's code style guidelines.
  • I have performed a self-review of my own code.
  • I have commented my code, particularly in hard-to-understand areas.
  • I have made corresponding changes to the documentation.
  • My changes generate no new warnings.
  • I have added a Changelog fragment (changelog.d/<pr_number>.<type>.md).
    Not added: the operator explicitly requested no changelog fragments.
  • I have verified that my changes do not introduce SQL injection vulnerabilities.
  • I have checked for potential performance regressions.

Additional Notes

The backend capability/formatter for DDL extraction is intentionally left in
place; only the CLI type was removed until a real implementation exists.

Branch Commits

1c285b7 refactor(postgres): stop advertising ddl introspection
a0962a3 ci(postgres): test against testsuite release/v1.0.0.dev17
81cc179 feat(postgres): add schema-object introspection families and identity facts

@codecov

codecov Bot commented Nov 9, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 74.13011% with 171 lines in your changes missing coverage. Please review.
✅ Project coverage is 77.77%. Comparing base (33b3cf7) to head (127839f).

Files with missing lines Patch % Lines
...ackend/impl/postgres/introspection/introspector.py 51.25% 149 Missing and 7 partials ⚠️
...cord/backend/impl/postgres/mixins/introspection.py 91.09% 5 Missing and 8 partials ⚠️
.../backend/impl/postgres/expression/introspection.py 95.65% 1 Missing and 1 partial ⚠️
Additional details and impacted files
@@                   Coverage Diff                    @@
##           release/v1.0.0.dev17      #66      +/-   ##
========================================================
- Coverage                 77.90%   77.77%   -0.14%     
========================================================
  Files                       355      355              
  Lines                     17509    18140     +631     
  Branches                   2805     2873      +68     
========================================================
+ Hits                      13641    14108     +467     
- Misses                     2870     3020     +150     
- Partials                    998     1012      +14     
Flag Coverage Δ
postgres-18 77.77% <74.13%> (-0.14%) ⬇️
python-3.14 77.77% <74.13%> (-0.14%) ⬇️
unittests 77.77% <74.13%> (-0.14%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

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

@sonarqubecloud

sonarqubecloud Bot commented Nov 9, 2026

Copy link
Copy Markdown

@vistart vistart added the enhancement New feature or request label Nov 9, 2026
@vistart vistart self-assigned this Nov 9, 2026
@vistart
vistart merged commit 6bf8b72 into release/v1.0.0.dev17 Nov 9, 2026
15 of 17 checks passed
@vistart
vistart deleted the feature/introspection-coverage branch November 9, 2026 17:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant