Skip to content

Replaced NQL Lerna tooling with Nx - #279

Merged
9larsons merged 5 commits into
mainfrom
codex/nql-nx-release
Oct 31, 2026
Merged

9larsons merged 5 commits into
mainfrom
codex/nql-nx-release

Conversation

@9larsons

@9larsons 9larsons commented Oct 31, 2026 •

Copy link
Copy Markdown
Contributor

NQL currently uses Lerna for task orchestration and independent versioning. This adopts framework's Nx pattern and the same setup as SDK's follow-up: Nx orders parser builds before dependent tests, pnpm ship versions and pushes, and the existing OIDC workflow publishes only versions missing from npm.

Follows the pnpm/security rollout merged in #201 and targets current main.

  • Replaces Lerna with pinned Nx/@nx/js 23.3.1 and removes lerna.json.
  • Preserves npm names, current package versions, independent versions, tag format and the version-commit trigger. Maintains literal minor/major bump behavior for 0.x versions and updates dependent ranges.
  • Includes Node/database configuration in test cache inputs so MySQL cannot reuse SQLite results. Preserves the Node 22/24 database matrix.
  • Keeps hash-verified pnpm bootstrapping and scripts-disabled dependency installation in the OIDC job. Nx publishes with pnpm, explicitly requires provenance, and selects only missing versions to avoid changing existing dist-tags. Registry errors fail the job.
  • Requires a clean main branch for pnpm ship; documents versioning and publishing dry-runs.

Validation: frozen scripts-disabled install; lint/build and all four test suites with SQLite and isolated MySQL 8 (container removed); all four package publish dry-runs; nql-lang minor/major previews update nql and its range correctly; package manifests unchanged after previews; wrong-branch ship guard; live registry selection skipped all four published versions. Selection is identical to SDK's validated implementation, including missing/private packages and registry 401/429/500 failures. actionlint and git diff checks passed. No packages published or release tags pushed.

ref https://linear.app/ghost/issue/PLA-322

Refresh the migration against current main and preserve the better-sqlite3 test matrix and privileged publish install safeguards.
ref #201

Checked the wrapper and native tarballs against the committed integrity pins without running bootstrap lifecycle scripts in the OIDC job. Corrected pnpm setup instructions.
ref #201

Follow the framework Nx task and independent-release pattern. Preserve names, versions, tag format and literal 0.x bump semantics. Keep secured OIDC publishing restricted to missing versions, and include database settings in test cache inputs so MySQL cannot replay SQLite results.
@coderabbitai

coderabbitai Bot commented Oct 31, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

  • Run on-demand review

This review includes 8 billable files and costs up to $2.00.

Or wait 52 minutes for your next included review.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 3407411d-f12e-4231-b229-21fdb886a08f
Commits

Reviewing files that changed from the base of the PR and between 0bbfd94 and 2c38368.

Files ignored due to path filters: 1
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
Files selected for processing: 8
  • .github/workflows/publish.yml
  • .github/workflows/test.yml
  • .gitignore
  • README.md
  • lerna.json
  • nx.json
  • package.json
  • pnpm-workspace.yaml
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

@codecov-commenter

codecov-commenter commented Oct 31, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 85.52%. Comparing base (0bbfd94) to head (2c38368).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #279   +/-   ##
=======================================
  Coverage   85.52%   85.52%           
=======================================
  Files           9        9           
  Lines        2293     2293           
  Branches      484      484           
=======================================
  Hits         1961     1961           
  Misses        326      326           
  Partials        6        6           

☔ 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.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Base automatically changed from codex/pla-322-nql-pnpm-baseline to main October 31, 2026 21:43
ref #279

Resolve the ancestry conflicts after the pnpm prerequisite was squash-merged. Retain the validated Nx implementation and the latest action pins from main.
@9larsons
9larsons merged commit abc27d2 into main Oct 31, 2026
9 checks passed
@9larsons
9larsons deleted the codex/nql-nx-release branch October 31, 2026 21:58
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