Skip to content

Migrate immune-assay-data onto the structurer + SDK upgrade#52

Merged
mzueva merged 3 commits into
mainfrom
chore/immune-assay-data-structurer
Jun 29, 2026
Merged

Migrate immune-assay-data onto the structurer + SDK upgrade#52
mzueva merged 3 commits into
mainfrom
chore/immune-assay-data-structurer

Conversation

@vadimpiven

@vadimpiven vadimpiven commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Migrates immune-assay-data onto the block-tools structurer and bumps the SDK to latest.

Note: this block was already on BlockModelV3 (and already past the tengo-builder 3→4 jump), so there is no model-V3 migration here — only the structurer layout adoption + SDK-version bump.

Commits

  1. chore: structurer refresh + SDK upgrade — tool-managed layout (oxlint/oxfmt, ts-builder, regenerated tsconfig/turbo/index/package.json across model, ui, workflow, block, and all 9 software packages). SDK → model/ui-vue 1.79.14, workflow-tengo 6.6.3, tengo-builder 4.0.8, block-tools 2.11.0. Also removes orphaned test scaffolding: the structurer drops vitest from ui devDeps (canonical structured blocks centralize tests in a test/ package), which left ui's test: "vitest" script and the model/ui vitest.config.mts files dangling — the block has zero test files, so the dead script and configs are removed.
  2. chore: changeset — patch on the 12 touched released packages (model, ui, workflow, 9 software); root auto-patches. No block behavior change.

Deliberately not adopted

The structurer also rewrote the two CI workflows with changes unrelated to this migration — test: falsetrue (the block has no tests), an AWS_CI_TURBOREPO_US_S3_BUCKETAWS_CI_TURBOREPO_S3_BUCKET secret rename, and Slack-secret reordering. Both .github/workflows/*.yaml are left identical to main.

Verification

pnpm build:dev + check (tsc + oxlint + oxfmt) + pnpm test all green (turbo 16/16) on the first try — no author-code fixes were required. Changeset validated.

Greptile Summary

This PR migrates immune-assay-data onto the block-tools structurer layout and bumps all SDK versions (model/ui-vue 1.77.171.79.14, workflow-tengo 6.1.06.6.3, tengo-builder 4.0.04.0.8, block-tools 2.10.02.11.0). The block was already on BlockModelV3, so no data-model migration is needed — all author-logic files (model/src/, ui/src/) are reformatted only (single→double quotes, import ordering, line-wrapping).

  • Tooling overhaul: eslint replaced by oxlint/oxfmt (check/fmt scripts), ts-builder replaces loose tsc invocations, and shx replaces rm/mv for cross-platform compat in scripts.
  • block/index.js gains a real blockSpec export ({ type: "dev-v2", folder: __dirname }) replacing an empty export {}, enabling the block to be referenced by its spec.
  • Dead test scaffolding removed: vitest devDep and vitest.config.mts files for model and ui dropped (the block has no test files), and the test workspace package removed from pnpm-workspace.yaml.

Confidence Score: 5/5

Safe to merge — all author-logic files are reformatted only, with no changes to block behaviour, data model, or workflow.

Every change in model/src/, ui/src/, and the workflow is a mechanical reformat (single→double quotes, import ordering, attribute line-wrapping). The only structural additions are the blockSpec CJS export in block/index.js (a new required structurer artefact), the check/fmt script split, and the SDK version bumps — all straightforward, tool-managed changes. The one stale catalog entry (blocks-deps-updater) is harmless. The PR description confirms pnpm build:dev, check, and pnpm test all passed green on first try.

No files require special attention. pnpm-workspace.yaml has a single orphaned catalog entry worth cleaning up, but it has no functional impact.

Important Files Changed

Filename Overview
pnpm-workspace.yaml SDK versions bumped across all catalog entries; test workspace removed; shx added; vue pinned exactly; @platforma-sdk/blocks-deps-updater catalog entry retained but no longer consumed.
block/index.js Replaces empty export {} with a real blockSpec CJS export ({ type: "dev-v2", folder: __dirname }); correctly uses CJS syntax since the package has no "type": "module".
block/package.json Adds shx devDep, reorders fields to structurer canonical order; build switches rm -rf to shx rm -rf for cross-platform support.
model/package.json Adds "module": "dist/index.js" and "main": "dist/index.cjs" for dual CJS/ESM; exports wildcard ./dist/*; removes vitest and eslint-config devDeps; replaces lint with fmt/check scripts.
ui/package.json Removes vitest devDep and test: "vitest" script (no test files exist); adds dev and check/fmt scripts; replaces lint script; adds peerDependencies.
turbo.json Replaces lint/type-check tasks with fmt/check; build now depends on check (same-package lint+typecheck before compile); adds build:dev task.
workflow/package.json Separates check (pl-tengo check) from build; adds @platforma-sdk/test and shx devDeps; adds graceful emacs fallback; SDK bump to workflow-tengo 6.6.3.
model/src/index.ts Reformatted only (single→double quotes, import ordering); no logic changes to BlockModelV3 definition, outputs, args, or prerunArgs.
model/src/types.ts Quote style reformatting only; all type definitions (BlockData, BlockArgs, Settings, Modality, ImportColumnInfo, LegacyBlockArgs, LegacyBlockUiState) unchanged.
ui/src/pages/MainPage.vue Reformatted only (quotes, import grouping, attribute line-wrapping); all watchers, computed props, and event handlers are functionally identical.
ui/src/importFile.ts Reformatted only; file parsing, column type inference, and sequence type detection logic are unchanged.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[pnpm build:dev\nturbo run build] --> B{turbo tasks}

    B --> C[check\ndependsOn: deps build]
    C --> C1[ts-builder check\noxlint + tsc]

    B --> D[build\ndependsOn: check + deps build]
    D --> D1[model: ts-builder build\n+ block-tools build-model]
    D --> D2[ui: ts-builder build]
    D --> D3[workflow: pl-tengo build]
    D --> D4[block: block-tools pack]
    D --> D5[software: pl-pkg-builder pack]

    C --> D
    D1 --> D4
    D2 --> D4
    D3 --> D4

    subgraph block/index.js
        E[blockSpec = type dev-v2 + folder __dirname]
    end

    D4 --> E
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    A[pnpm build:dev\nturbo run build] --> B{turbo tasks}

    B --> C[check\ndependsOn: deps build]
    C --> C1[ts-builder check\noxlint + tsc]

    B --> D[build\ndependsOn: check + deps build]
    D --> D1[model: ts-builder build\n+ block-tools build-model]
    D --> D2[ui: ts-builder build]
    D --> D3[workflow: pl-tengo build]
    D --> D4[block: block-tools pack]
    D --> D5[software: pl-pkg-builder pack]

    C --> D
    D1 --> D4
    D2 --> D4
    D3 --> D4

    subgraph block/index.js
        E[blockSpec = type dev-v2 + folder __dirname]
    end

    D4 --> E
Loading

Fix All in Claude Code

Prompt To Fix All With AI
Fix the following 1 code review issue. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 1
pnpm-workspace.yaml:31-33
The `@platforma-sdk/blocks-deps-updater` catalog entry is now orphaned — its only consumer (`"@platforma-sdk/blocks-deps-updater": "catalog:"` in root `devDependencies`) was removed in this PR and replaced by `block-tools structure refresh --update-deps-only`. The entry is harmless but will accumulate drift as the real package continues to version independently.

```suggestion
  # Common dependencies - can use ^ or ~
```

Reviews (1): Last reviewed commit: "chore: add changeset for structurer migr..." | Re-trigger Greptile

Greptile also left 1 inline comment on this PR.

Context used:

  • Context used - Terms is a types in codebase. Provide the list of ... (source)

…grade

Adopt the tool-managed block layout (oxlint/oxfmt, ts-builder, regenerated
tsconfig/turbo/index/package.json across model, ui, workflow, block and all 9
software packages) and bump the SDK to latest: model/ui-vue 1.79.14,
workflow-tengo 6.6.3, tengo-builder 4.0.8, block-tools 2.11.0.

The block is already on BlockModelV3 and tengo-builder 4, so no model migration
was needed — this is layout/tooling + SDK-version only.

Remove orphaned test scaffolding: the structurer drops vitest from ui devDeps
(canonical structured blocks centralize tests in a test/ package), leaving ui's
'test': 'vitest' script and the model/ui vitest.config.mts files dangling — the
block has zero test files. Drop the dead script and configs.

CI workflows left unchanged from main (structurer drift — test:false->true, a
turborepo S3 bucket secret rename, Slack reordering — is unrelated).

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code Review

This pull request migrates the repository to the block-tools structurer, standardizing the project layout with oxlint, oxfmt, and ts-builder, and updates the SDK packages to their latest versions. Additionally, it formats the codebase to use double quotes and introduces cross-platform scripts using shx. Feedback is provided to update the do-pack script in workflow/package.json to use shx as well, ensuring consistent cross-platform compatibility.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread workflow/package.json
"do-pack": "rm -f *.tgz && pnpm pack && mv *.tgz package.tgz"
"build": "shx rm -rf dist && pl-tengo build",
"format": "/usr/bin/env emacs --script ./format.el || echo 'No emacs.'",
"do-pack": "rm -f *.tgz && pnpm pack && mv *.tgz package.tgz",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

The do-pack script still uses the platform-specific rm and mv commands. Since shx has been added to the devDependencies of this package (and is used in the build script), please update do-pack to use shx rm and shx mv to ensure cross-platform compatibility (e.g., on Windows).

Suggested change
"do-pack": "rm -f *.tgz && pnpm pack && mv *.tgz package.tgz",
"do-pack": "shx rm -f *.tgz && pnpm pack && shx mv *.tgz package.tgz",

Comment thread pnpm-workspace.yaml
Comment on lines 31 to 33
"@platforma-sdk/blocks-deps-updater": 2.2.0

# Common dependencies - can use ^ or ~

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 The @platforma-sdk/blocks-deps-updater catalog entry is now orphaned — its only consumer ("@platforma-sdk/blocks-deps-updater": "catalog:" in root devDependencies) was removed in this PR and replaced by block-tools structure refresh --update-deps-only. The entry is harmless but will accumulate drift as the real package continues to version independently.

Suggested change
"@platforma-sdk/blocks-deps-updater": 2.2.0
# Common dependencies - can use ^ or ~
# Common dependencies - can use ^ or ~
Prompt To Fix With AI
This is a comment left during a code review.
Path: pnpm-workspace.yaml
Line: 31-33

Comment:
The `@platforma-sdk/blocks-deps-updater` catalog entry is now orphaned — its only consumer (`"@platforma-sdk/blocks-deps-updater": "catalog:"` in root `devDependencies`) was removed in this PR and replaced by `block-tools structure refresh --update-deps-only`. The entry is harmless but will accumulate drift as the real package continues to version independently.

```suggestion
  # Common dependencies - can use ^ or ~
```

How can I resolve this? If you propose a fix, please make it concise.

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

@mzueva
mzueva merged commit 107bfa9 into main Jun 29, 2026
11 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.

2 participants