Skip to content

MILAB-6950: update SDK - #47

Merged
AStaroverov merged 3 commits into
mainfrom
MILAB-6950_update-sdk
Sep 25, 2026
Merged

AStaroverov merged 3 commits into
mainfrom
MILAB-6950_update-sdk

Conversation

@AStaroverov

@AStaroverov AStaroverov commented Sep 25, 2026 •

Copy link
Copy Markdown
Collaborator

Bumps the SDK catalog to the current npm latest (pnpm update-sdk), mainly to pick up @platforma-sdk/ui-vue 1.84.2.

That release fixes PlAgDataTableV2 rebuilding its AG Grid endlessly (~20 times a second) when the page has a saved grid state — most often right after a block rebuild. The loop strobed the column headers and flooded the console with AG Grid licence banners. The reload comparison now filters the stored state down to the columns the grid actually has and compares only the fields that state expresses, so it converges.

Changes:

  • pnpm-workspace.yaml: SDK catalog entries → npm latest
  • pnpm-lock.yaml: regenerated
  • patch changeset for the block

Verified locally: pnpm install + pnpm build:dev-no-software pass.

RetriggerConfidence Score: 4/5

The PR should align CI’s Node runtime with the newly resolved native dependency before merging.

Fix All in Claude CodeFindings

  1. P1 Native dependency requires newer Node ▶
  2. P2 Grid fix lacks regression coverage ▶
Fix with agent prompt
### Issue 1
pnpm-lock.yaml:2808-2810
CI runs Node 20.x, but the updated test dependency graph resolves `better-sqlite3@13.0.3`, which requires Node 22 or newer. The previous version supported Node 20. This leaves the configured CI test stack on an unsupported runtime, where the native dependency may fail to install or load. Align the CI runtime with the new dependency before relying on the build and test results.

### Issue 2
pnpm-workspace.yaml:16
This SDK update is meant to stop saved table state from repeatedly rebuilding the grid, but it adds no test for restoring that state. All three UI tables persist grid state, while the workspace’s only workflow scenario is disabled and the test command accepts zero tests. A later SDK update could bring back the loop without failing a check; a saved-state regression test would guard against that.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Summary

The PR refreshes the workspace SDK catalog and lockfile and adds a patch changeset for the saved-grid-state fix. Important touched terms:

  • SDK catalog — shared workspace dependency versions; updated for the UI, model, workflow, test, build, and packaging SDKs.
  • PlAgDataTableV2 / saved grid state — the UI table and its persisted configuration; the ui-vue bump is intended to stop repeated grid reconstruction after state restoration.
  • Browser model — the typed state and output contract shared with the UI; @platforma-sdk/model moves to 1.84.1.
  • Tengo workflow — the block’s data-preparation workflow; its runtime library and builder move to 6.12.1 and 4.1.4.
  • Block tools — the block packaging and release tool; moves to 2.16.3.
  • TypeScript builder — the workspace build tool; moves to 1.7.2 and changes its transitive compiler/tooling graph.
  • Block changeset — the release-version record; adds a patch entry for the published block.
Diagram
%%{init: {'theme': 'neutral'}}%%
flowchart LR
  C[Workspace SDK catalog] --> L[pnpm lockfile]
  L --> U[ui-vue 1.84.2]
  U --> G[Saved-state grid tables]
  L --> T[Test SDK and middle layer]
  T --> N[better-sqlite3 13]
  CI[CI: Node 20.x] --> T
  N --> E[Requires Node 22+]
Loading

Reviews (1) · Last reviewed commit: "MILAB-6950: update SDK"

Comment thread pnpm-lock.yaml
Comment on lines +2808 to +2810
better-sqlite3@13.0.3:
resolution: {integrity: sha512-RbOBxmLBG8uvFUc15X9+9SFemKcQ0WBuISBVkpuiaUB2qblC8UWlHEjdWVoZ8AdhSwmoEgsiXKfopX0CQxaACQ==}
engines: {node: '>=22'}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Native dependency requires newer Node

CI runs Node 20.x, but the updated test dependency graph resolves better-sqlite3@13.0.3, which requires Node 22 or newer. The previous version supported Node 20. This leaves the configured CI test stack on an unsupported runtime, where the native dependency may fail to install or load. Align the CI runtime with the new dependency before relying on the build and test results.

Knowledge Base Used: Validation and release automation

Prompt To Fix With AI
This is a comment left during a code review.
Path: pnpm-lock.yaml
Line: 2808-2810

Comment:
**Native dependency requires newer Node**

CI runs Node 20.x, but the updated test dependency graph resolves `better-sqlite3@13.0.3`, which requires Node 22 or newer. The previous version supported Node 20. This leaves the configured CI test stack on an unsupported runtime, where the native dependency may fail to install or load. Align the CI runtime with the new dependency before relying on the build and test results.

**Knowledge Base Used:** [Validation and release automation](https://app.greptile.com/milaboratories/-/custom-context/knowledge-base/platforma-open/clonotype-browser/-/docs/validation-and-release-automation.md)

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Fix in Claude Code

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Fixed in c92cbc2: CI (build and mark-stable workflows) now runs on Node 22.x, matching the other blocks.

Comment thread pnpm-workspace.yaml
"@platforma-sdk/block-tools": 2.14.3
"@platforma-sdk/workflow-tengo": 6.12.1
"@platforma-sdk/model": 1.84.1
"@platforma-sdk/ui-vue": 1.84.2

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Grid fix lacks regression coverage

This SDK update is meant to stop saved table state from repeatedly rebuilding the grid, but it adds no test for restoring that state. All three UI tables persist grid state, while the workspace’s only workflow scenario is disabled and the test command accepts zero tests. A later SDK update could bring back the loop without failing a check; a saved-state regression test would guard against that.

Knowledge Base Used: Workflow validation tests

Prompt To Fix With AI
This is a comment left during a code review.
Path: pnpm-workspace.yaml
Line: 16

Comment:
**Grid fix lacks regression coverage**

This SDK update is meant to stop saved table state from repeatedly rebuilding the grid, but it adds no test for restoring that state. All three UI tables persist grid state, while the workspace’s only workflow scenario is disabled and the test command accepts zero tests. A later SDK update could bring back the loop without failing a check; a saved-state regression test would guard against that.

**Knowledge Base Used:** [Workflow validation tests](https://app.greptile.com/milaboratories/-/custom-context/knowledge-base/platforma-open/clonotype-browser/-/docs/workflow-validation-tests.md)

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Fix in Claude Code

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

The fix and its regression coverage live in the SDK, not in this block. @platforma-sdk/ui-vue tests the stored-state comparison in sdk/ui-vue/src/components/PlAgDataTable/sources/grid-state.test.ts and mounts PlAgDataTableV2 through a reload in sdk/ui-vue/src/components/PlAgDataTable/__tests__/PlAgDataTableV2.reload.jsdomtest.ts. This PR only bumps the dependency; a block-level test would duplicate that coverage and needs a mounted AG Grid, which the block test setup does not provide. Not adding one here.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

That’s a fair clarification. Because the saved-state comparison and PlAgDataTableV2 reload behavior are already covered in @platforma-sdk/ui-vue by grid-state.test.ts and PlAgDataTableV2.reload.jsdomtest.ts, a block-level test would duplicate upstream coverage and would not be practical without the SDK’s mounted AG Grid test setup. I’m withdrawing the “Grid fix lacks regression coverage” finding; no additional test is needed for this PR.

Tip: You can customize Greptile's behavior for this repo with .greptile/rules.md and .greptile/config.json.

@AStaroverov
AStaroverov merged commit 4f4def2 into main Sep 25, 2026
10 checks passed
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.

1 participant