Skip to content

docs: correct the external-engine count and source - #730

Merged
cevheri merged 1 commit into
libredb:mainfrom
2160039878-cyber:docs/external-engine-count-667
Sep 9, 2026
Merged

docs: correct the external-engine count and source#730
cevheri merged 1 commit into
libredb:mainfrom
2160039878-cyber:docs/external-engine-count-667

Conversation

@2160039878-cyber

@2160039878-cyber 2160039878-cyber commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Description

The project overview counts the embedded LibreDB store as an external engine. State sixteen external engines plus the embedded store and point at EXTERNAL_DATABASE_TYPES in compatibility.ts for the published list.

Type of Change

  • Documentation update

Related Issue

Closes #667

Changes Made

Checked the sixteen-entry external list and the EXTERNAL record's single false entry (libredb). The overview no longer says 17 engines, uses the correct source pointer, and retains never a prose enumeration. bun run readme:check passed. Documentation only; the issue explicitly requires no new test.

Testing

  • Local: bun run readme:check passed.
  • Linux CI on the exact PR commit 3db1f4c: 14,713 tests passed, all 391 isolated core files and 34 component groups passed; 46324/46324 lines covered (100%). Ran the unfiltered bun run test:coverage and bun run coverage:check scripts.
  • The same run passed formatting, lint, typecheck, knip, README/chart/channel/security guards, application and library builds, Helm lint, and Node 24/26 engine smoke tests.
  • Playwright: 65 passed / 1 flaky (passed on retry) / 6 skipped under the existing configuration, plus 1 subpath, 1 PostgreSQL functional smoke, 3 tarball, and 3 npx tests passed.
  • Secret Scan passed after fetching all fork branch history, including this commit; no leaks found.

I did not complete bun run test / full coverage, the Helm checks, and E2E locally on Windows: the existing SQLite cleanup hits EBUSY, and Docker Desktop is unavailable. The unchanged upstream workflow ran the complete coverage/test layers and the other checks above on Linux instead. SonarCloud is the sole failed job in that fork run: access to the upstream project returns 401 / Not authorized or project not found. Upstream CI already skips SonarCloud for external fork PRs; no workflow or coverage gate was changed.

Test Environment

LibreDB Studio 0.15.0; Windows local / Ubuntu CI; Bun 1.4.2; Node 24 (plus Node 26 smoke); Chromium and WebKit; PostgreSQL functional smoke.

Checklist

  • Claimed the linked issue before editing; branch starts from main.
  • Reviewed the diff and followed the existing style.
  • Documentation only: the issue explicitly requires no new test.
  • All executable test/build jobs pass on the exact commit in Linux CI.

Additional Notes

AI-assisted implementation and validation using Codex, disclosed in the issue claim. Only documentation changes. No provider code changes, so the provider code/doc/test triad is not applicable. No dependent changes or screenshots are needed.

CI follow-up

The fork-run SonarCloud 401 is tracked in #732 and fixed by #733. The inherited condition admitted fork-owned pushes and fork-local PRs to the canonical SonarCloud project. The dedicated CI fix run now succeeds: all nine executable test/build jobs pass, and SonarCloud is scoped to the canonical repository. That run tests CI fix commit 80a318b; this PR's exact-head verification remains the original run linked above, whose nine executable jobs passed. Upstream Actions still await maintainer approval.

@cevheri

cevheri commented Sep 9, 2026

Copy link
Copy Markdown
Member

Checked against #667. All three editable items hold: no 17 engines, the source is now EXTERNAL_DATABASE_TYPES in compatibility.ts, and never a prose enumeration survived the edit.

I derived the numbers rather than trusting the sentence. DB_UI_CONFIG is a Record<DatabaseType, ...>, so its key count is compiler-enforced: 17. EXTERNAL_DATABASE_TYPES.length is 16, and the only id that is not external is libredb. So "sixteen external engines, plus the embedded LibreDB store" is exact. One thing worth knowing if you ever count them again: a regex over the union declaration is unreliable, because long comments are interleaved between the members, and my first attempt silently dropped duckdb. The Record key count does not have that problem.

I also checked the edit costs an agent nothing. CLAUDE.md:78 still names the DatabaseType union as the type-id set for the provider triad rule, which is the place that actually needs that pointer.

One thing that is ours and not yours: "sixteen" is still a hand-written count, so the seventeenth external engine will make this line wrong again with a different word. It now agrees with every other file in the tree that spells the count by hand, and agreeing is worth more here than being uniquely clever, so this is right as it stands. Closing the class means a guard, and I am tracking that separately.

Merging shortly.

@cevheri cevheri added documentation Improvements or additions to documentation enhancement New feature or request labels Sep 9, 2026
@cevheri
cevheri merged commit 1917a84 into libredb:main Sep 9, 2026
22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CLAUDE.md opens with 17 engines, and 17 is the number every other file in the tree is careful not to publish

2 participants