Skip to content

chore(deps): sync internal @forestadmin version pins to workspace versions - #1772

Merged
Scra3 merged 2 commits into
mainfrom
chore/sync-internal-version-pins
Jul 23, 2026
Merged

chore(deps): sync internal @forestadmin version pins to workspace versions#1772
Scra3 merged 2 commits into
mainfrom
chore/sync-internal-version-pins

Conversation

@Scra3

@Scra3 Scra3 commented Jul 22, 2026

Copy link
Copy Markdown
Member

Problem

Any fresh build of main is currently red at the "Installing & Building" step:

src/utils/forest-schema/generator-fields.ts: Property 'isEnumField' does not exist on type 'typeof TypeGetter'
src/agent.ts: DataSourceFactory (workspace) is not assignable to DataSourceFactory (.../workflow-executor/node_modules/@forestadmin/datasource-toolkit)

Root cause

Successive chore(release): X [skip ci] commits bumped several workspace packages in their own package.json but did not re-pin the dependents that reference them by exact version. Because the pin (e.g. "1.53.1") no longer matches the workspace version (1.54.0), yarn installs a published copy nested under each dependent. Those nested copies drift from the workspace source and cause cross-package TS type-clashes (two distinct DataSourceFactory types, missing new API like isEnumField). Since the releases carry [skip ci], CI never re-ran — main's last green run predates the desync, and it only surfaces on the next real build (e.g. any open PR).

Seven workspace packages were desynced:

Package dependents pinned workspace
datasource-customizer 1.69.3 1.70.0
datasource-toolkit 1.53.1 1.54.0
forestadmin-client 1.40.5 1.41.0
datasource-sql 1.17.10 1.17.11
datasource-mongoose 1.13.4 1.14.0
datasource-sequelize 1.13.8 1.13.9
ai-proxy 1.12.0 1.12.1

Fix

Align every exact internal pin to the version already present in the workspace (32 pin edits across 12 package.json + a 1-line yarn.lock reconciliation). Pure metadata — no source or behavior change; the target versions already ship in the workspace. After the fix, every @forestadmin/* dependency resolves to the workspace symlink with no nested published copy.

Verification

  • yarn installzero packages/*/node_modules/@forestadmin/* nested copies remain.
  • Full topological build of the affected chain (agent-toolkit → ai-proxy → datasource-toolkit → forestadmin-client → agent-client → customizer → sequelize → sql → mongoose → workflow-executor → mcp-server → agent) passes with no TS errors.

Unblocks every open PR (they all fail on this same fresh-build error).

🤖 Generated with Claude Code

Note

Sync internal @ForestAdmin dependency version pins to workspace versions

Updates pinned versions of internal @forestadmin/* packages across all workspace package.json files to match their current workspace versions. Affected packages include datasource-toolkit, forestadmin-client, datasource-customizer, datasource-sql, datasource-mongoose, datasource-sequelize, and ai-proxy. The yarn.lock is updated accordingly.

Macroscope summarized 37054e2.

…sions

Successive `chore(release): X [skip ci]` commits bumped several workspace
packages without re-pinning their dependents, so a fresh install pulled
published copies nested under the dependents. Those nested copies drift from the
workspace source and cause cross-package TS type-clashes (e.g. two distinct
DataSourceFactory types) — breaking any fresh build. `[skip ci]` releases never
re-ran CI, so main went red only on the next real build.

Align every exact internal pin to the version already present in the workspace:
- datasource-customizer 1.69.3 → 1.70.0
- datasource-toolkit    1.53.1 → 1.54.0
- forestadmin-client    1.40.5 → 1.41.0
- datasource-sql        1.17.10 → 1.17.11
- datasource-mongoose   1.13.4 → 1.14.0
- datasource-sequelize  1.13.8 → 1.13.9
- ai-proxy              1.12.0 → 1.12.1

Pure metadata alignment (the versions already ship in the workspace); every
@ForestAdmin dependency now resolves to the workspace, no nested published copy.
Verified: full topological build of the affected packages passes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@Scra3 Scra3 closed this Jul 22, 2026
@Scra3 Scra3 reopened this Jul 22, 2026
@qltysh

qltysh Bot commented Jul 22, 2026

Copy link
Copy Markdown

Qlty


Coverage Impact

This PR will not change total coverage.

🚦 See full report on Qlty Cloud »

🛟 Help
  • Diff Coverage: Coverage for added or modified lines of code (excludes deleted files). Learn more.

  • Total Coverage: Coverage for the whole repository, calculated as the sum of all File Coverage. Learn more.

  • File Coverage: Covered Lines divided by Covered Lines plus Missed Lines. (Excludes non-executable lines including blank lines and comments.)

    • Indirect Changes: Changes to File Coverage for files that were not modified in this PR. Learn more.

@arnaud-moncel arnaud-moncel left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

🙏

@Scra3
Scra3 merged commit e4141c5 into main Jul 23, 2026
37 checks passed
@Scra3
Scra3 deleted the chore/sync-internal-version-pins branch July 23, 2026 07:55
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