Skip to content

perf(dev): curate SIM_DEV_MINIMAL_REGISTRY to core toolbar blocks#5251

Open
TheodoreSpeaks wants to merge 1 commit into
stagingfrom
perf/minimal-registry-core-blocks
Open

perf(dev): curate SIM_DEV_MINIMAL_REGISTRY to core toolbar blocks#5251
TheodoreSpeaks wants to merge 1 commit into
stagingfrom
perf/minimal-registry-core-blocks

Conversation

@TheodoreSpeaks

Copy link
Copy Markdown
Collaborator

Summary

  • Rebuilds the dev-only minimal block registry (SIM_DEV_MINIMAL_REGISTRY=1 / bun run dev:minimal) from the canonical, toolbar-visible core set: every category: 'blocks' / 'triggers' block that is not hideFromToolbar, always the latest version.
  • Adds the visible workflow_input and table blocks. Previously only the hidden workflow block was in the minimal set, so the Workflow block never rendered in dev:minimal even though it shows in a full build.
  • Drops superseded/hidden entries that were lingering in the minimal set: api_trigger, chat_trigger, input_trigger, manual_trigger (folded into start_trigger), router (→ router_v2), starter (→ start_trigger), workflow (→ workflow_input).
  • Hand-prunes the heaviest / rarely-core-dev blocks to keep the RAM win: mothership, pi, tts, stt_v2, image_generator_v2, video_generator_v3, circleback.
  • The ~247 category: 'tools' integrations remain excluded — that heavy graph is what minimal mode exists to skip. Net set: 32 curated core blocks.

Type of Change

  • Improvement (dev tooling)

Testing

Tested manually: dev:minimal toolbar now shows the Workflow block; every imported block export resolves against current staging; bunx biome check clean on the file. Dev-only — gated on SIM_DEV_MINIMAL_REGISTRY=1, never aliased in production.

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

Rebuild the dev-only minimal block registry from the canonical, toolbar-visible
core (category blocks/triggers, not hideFromToolbar, latest version). Adds the
visible workflow_input and table blocks (previously only the hidden `workflow`
was present, so the Workflow block never rendered in dev:minimal), drops the
superseded/hidden entries (api_trigger, chat_trigger, input_trigger,
manual_trigger, router, starter, workflow), and hand-prunes the heaviest /
rarely-core-dev blocks (mothership, pi, tts, stt_v2, image_generator_v2,
video_generator_v3, circleback).

Dev-only, gated on SIM_DEV_MINIMAL_REGISTRY=1; never aliased in production.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 28, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
docs Skipped Skipped Jun 28, 2026 1:15am

Request Review

@cursor

cursor Bot commented Jun 28, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
Dev-only resolve alias gated on SIM_DEV_MINIMAL_REGISTRY=1; no production behavior change, only which blocks compile in minimal dev mode.

Overview
Recurates registry-maps.minimal.ts so SIM_DEV_MINIMAL_REGISTRY=1 / dev:minimal aligns with toolbar-visible core blocks (blocks / triggers, not hidden, current versions only), not a stale subset.

Swaps and fixes: Supabase entries (api_trigger, chat_trigger, input_trigger, manual_trigger, router, starter, hidden workflow) are removed in favor of start_trigger, router_v2, and workflow_input (so the Workflow block actually appears in minimal dev). Adds a broad set of current core blocks (e.g. a2a, credential, guardrails, mcp, file_v5, logs_v2, wait, webhook_request, and others) while still excluding the ~247 tools integrations and a short hand-pruned list of heavy blocks documented in the file comment.

Net result is 32 dev-only registry keys; production still uses the full registry-maps (never aliased outside dev).

Reviewed by Cursor Bugbot for commit 4a31cd1. Bugbot is set up for automated code reviews on this repo. Configure here.

@TheodoreSpeaks

Copy link
Copy Markdown
Collaborator Author

@greptile review

@greptile-apps

greptile-apps Bot commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR updates the dev-only minimal block registry. The main changes are:

  • Adds current toolbar-visible core block configs.
  • Replaces superseded entries with latest block IDs.
  • Removes hidden, tool, media, and heavier block configs from minimal mode.

Confidence Score: 4/5

The dev minimal registry can break older saved workflows that still use legacy block IDs.

  • Newly imported block exports resolve through the existing alias import pattern.
  • The production build is not affected by the minimal registry alias.
  • Saved workflows with removed block types can hit a registry miss during serializer validation.

apps/sim/blocks/registry-maps.minimal.ts

Important Files Changed

Filename Overview
apps/sim/blocks/registry-maps.minimal.ts Curates the dev minimal block registry to current visible core blocks, but removes legacy persisted block IDs without a migration fallback.

Reviews (1): Last reviewed commit: "perf(dev): curate SIM_DEV_MINIMAL_REGIST..." | Re-trigger Greptile

Comment on lines +70 to +81
router_v2: RouterV2Block,
rss: RssBlock,
schedule: ScheduleBlock,
search: SearchBlock,
sim_workspace_event: SimWorkspaceEventBlock,
start_trigger: StartTriggerBlock,
starter: StarterBlock,
table: TableBlock,
translate: TranslateBlock,
variables: VariablesBlock,
workflow: WorkflowBlock,
wait: WaitBlock,
webhook_request: WebhookRequestBlock,
workflow_input: WorkflowInputBlock,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

P1 Legacy Block Types Disappear

When SIM_DEV_MINIMAL_REGISTRY=1 opens a saved workflow containing router, workflow, starter, or the older trigger types, getBlock(type) can no longer resolve the persisted type and the serializer throws Invalid block type. The executor still recognizes those IDs and there is no load-time type migration, so older dev workflows can fail to open or save in minimal mode.

@greptile-apps

greptile-apps Bot commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR curates the dev-only minimal block registry. The main changes are:

  • Adds more current toolbar-visible core blocks.
  • Replaces superseded entries such as legacy router and workflow blocks.
  • Keeps the heavy tools and hand-pruned media/integration blocks out of minimal mode.

Confidence Score: 4/5

The minimal dev registry can stop resolving existing workflows that still store legacy block ids.

  • The changed map removes ids that persisted workflow state and test factories can still contain.
  • The inspected loading path keeps stored block types instead of rewriting them before registry validation.
  • Production remains outside this alias, so the impact is contained to minimal dev mode.

apps/sim/blocks/registry-maps.minimal.ts

Important Files Changed

Filename Overview
apps/sim/blocks/registry-maps.minimal.ts Updates the dev-only minimal registry to a curated core set, but removed legacy ids can break existing minimal-mode workflows that still store those block types.

Reviews (2): Last reviewed commit: "perf(dev): curate SIM_DEV_MINIMAL_REGIST..." | Re-trigger Greptile

rss: RssBlock,
schedule: ScheduleBlock,
search: SearchBlock,
sim_workspace_event: SimWorkspaceEventBlock,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

P1 Legacy Block Types Stop Resolving

When SIM_DEV_MINIMAL_REGISTRY=1 loads a saved or fixture workflow that still stores starter, router, workflow, or the removed trigger ids, persistence keeps those block type values and later registry validation cannot resolve them. Existing dev:minimal workflows can then fail validation or execution instead of loading through a compatibility alias or block-type migration.

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