Skip to content

fix(ci): stabilize npm release and catalog e2e workflows - #550

Merged
yacosta738 merged 1 commit into
mainfrom
fix/ci-stabilize-release-and-catalog-e2e
Aug 12, 2026
Merged

yacosta738 merged 1 commit into
mainfrom
fix/ci-stabilize-release-and-catalog-e2e

Conversation

@yacosta738

Copy link
Copy Markdown
Contributor

Description

Stabilizes the npm release workflow and the catalog E2E workflow.

Two CI failures addressed:

  1. Release npm typecheck broken under TypeScript 7: the npm/agentsync wrapper used
    moduleResolution: "node", which maps to the removed node10 resolution in TS 7 and fails with
    TS5108: Option 'moduleResolution=node10' has been removed in the Publish NPM Base Package job.
  2. Catalog E2E offline job fails before tests run: the offline job ran
    cargo test --offline without guaranteeing dependencies were fetched on the runner, failing with
    error: no matching package named 'anyhow' found during resolution.

Changes

  • npm/agentsync/tsconfig.json: migrate module and moduleResolution to Node16
    (replaces commonjs / node). Validated against TS 7.0.2: Node16, NodeNext, and
    preserve+bundler all pass; commonjs+nodenext fails TS5110; classic is removed.
  • .github/workflows/catalog-e2e.yml:
    • Add Fetch locked dependencies before offline test step (cargo fetch --locked).
    • Offline test now runs cargo test --test test_catalog_integration --locked --offline -- --nocapture.
    • Catalog installation job now sets RUN_E2E: 1 explicitly and uses --locked.

Type of change

  • Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

  • pnpm --filter agentsync run typecheck — pass (TS 7.0.2, Node 24)
  • pnpm --filter agentsync run build — pass
  • actionlint .github/workflows/catalog-e2e.yml — clean
  • cargo test --test test_catalog_integration --locked --offline -- --nocapture — 1 passed, 0 failed, 1 ignored
  • git diff --check — clean
  • pre-commit hooks (cargo fmt --all -- --check, cargo clippy --all-targets --all-features -- -D warnings) — clean

Test Configuration:

  • OS: macOS
  • Rust version: 1.89+
  • Node/pnpm version: Node 24, pnpm 11
  • Test command used: focused checks listed above

Checklist:

  • My code follows the style guidelines of this project
  • 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 tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

@coderabbitai

coderabbitai Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: feac5f03-5f9e-4233-bee9-2825963e8f4a

📥 Commits

Reviewing files that changed from the base of the PR and between 1c43d4a and f19acb7.

📒 Files selected for processing (2)
  • .github/workflows/catalog-e2e.yml
  • npm/agentsync/tsconfig.json

📝 Walkthrough

Summary by CodeRabbit

  • Chores
    • Improved catalog end-to-end test reliability by installing locked dependencies consistently.
    • Enabled the catalog installation end-to-end test job.
  • Refactor
    • Updated TypeScript module handling to align with modern Node.js conventions.

Walkthrough

The PR updates catalog E2E dependency and execution settings. It also changes the agentsync TypeScript configuration to use Node16 modules and module resolution.

Changes

Catalog E2E workflow

Layer / File(s) Summary
Catalog E2E execution settings
.github/workflows/catalog-e2e.yml
The offline job fetches locked dependencies and runs with --locked. The installation job sets RUN_E2E=1 and runs with --locked.

TypeScript module configuration

Layer / File(s) Summary
Node16 module settings
npm/agentsync/tsconfig.json
The compiler now uses Node16 for module and moduleResolution.

Estimated code review effort: 2 (Simple) | ~10 minutes

Poem

I’m a rabbit with a lockfile tight,
Fetching dependencies just right.
Node16 hops through modules new,
E2E tests run locked through.
Carrots compile, workflows gleam—
A tidy burrow for the team.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description check ✅ Passed The description directly explains the TypeScript configuration and catalog E2E workflow changes.
Title check ✅ Passed The title clearly summarizes the main CI stabilization changes for npm release and catalog E2E workflows.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/ci-stabilize-release-and-catalog-e2e

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codecov

codecov Bot commented Aug 12, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@sonarqubecloud

Copy link
Copy Markdown

@yacosta738
yacosta738 added this pull request to the merge queue Aug 12, 2026
Merged via the queue into main with commit c9a047f Aug 12, 2026
29 checks passed
@yacosta738
yacosta738 deleted the fix/ci-stabilize-release-and-catalog-e2e branch August 12, 2026 07:50
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.

1 participant