Skip to content

feat: concurrent-agent sweep — docs, migrate CLI, engine registry, workspace app flow#710

Merged
steve8708 merged 24 commits into
mainfrom
updates-328
May 16, 2026
Merged

feat: concurrent-agent sweep — docs, migrate CLI, engine registry, workspace app flow#710
steve8708 merged 24 commits into
mainfrom
updates-328

Conversation

@steve8708
Copy link
Copy Markdown
Contributor

Concurrent-agent work sweep across docs content, migrate CLI, agent engine registry, workspace app flow, and dispatch. PR opened early so CI + review agents start; local prep verification in progress.

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-design ready!

Name Link
🔨 Latest commit 0a0ba83
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-design/deploys/6a07c6af6e69800008505fb9
😎 Deploy Preview https://deploy-preview-710--agent-native-design.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-images ready!

Name Link
🔨 Latest commit 0a0ba83
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-images/deploys/6a07c6af90bd6600083b95ee
😎 Deploy Preview https://deploy-preview-710--agent-native-images.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-voice ready!

Name Link
🔨 Latest commit 0a0ba83
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-voice/deploys/6a07c6af86ac7f000857ec49
😎 Deploy Preview https://deploy-preview-710--agent-native-voice.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-meeting-notes ready!

Name Link
🔨 Latest commit 0a0ba83
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-meeting-notes/deploys/6a07c6af6f514900088489e9
😎 Deploy Preview https://deploy-preview-710--agent-native-meeting-notes.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-scheduling ready!

Name Link
🔨 Latest commit 0a0ba83
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-scheduling/deploys/6a07c6af08db090008056428
😎 Deploy Preview https://deploy-preview-710--agent-native-scheduling.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@cloudflare-workers-and-pages

This comment has been minimized.

@cloudflare-workers-and-pages

This comment has been minimized.

@cloudflare-workers-and-pages

This comment has been minimized.

@cloudflare-workers-and-pages

This comment has been minimized.

@cloudflare-workers-and-pages

This comment has been minimized.

@cloudflare-workers-and-pages

This comment has been minimized.

@cloudflare-workers-and-pages

This comment has been minimized.

builder-io-integration[bot]

This comment was marked as outdated.

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-fw failed. Why did it fail? →

Name Link
🔨 Latest commit 9b288e8
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-fw/deploys/6a078ff51335d90008ad35c3

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for nutritrack-daily-calories canceled.

Name Link
🔨 Latest commit 69b38cb
🔍 Latest deploy log https://app.netlify.com/projects/nutritrack-daily-calories/deploys/6a079f5fda00fd00085390f1

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-content canceled.

Name Link
🔨 Latest commit dd1e5fa
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-content/deploys/6a07c451740377000896bae3

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-starter canceled.

Name Link
🔨 Latest commit 69b38cb
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-starter/deploys/6a079f5fda00fd00085390fd

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-forms canceled.

Name Link
🔨 Latest commit 36847f1
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-forms/deploys/6a07c59590bd6600083b20a0

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-calendar canceled.

Name Link
🔨 Latest commit 69b38cb
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-calendar/deploys/6a079f5f4262be0008411966

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-slides canceled.

Name Link
🔨 Latest commit 36847f1
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-slides/deploys/6a07c59557edd90008aeddb4

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-dispatch canceled.

Name Link
🔨 Latest commit 36847f1
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-dispatch/deploys/6a07c59590bd6600083b209e

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-macros canceled.

Name Link
🔨 Latest commit 36847f1
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-macros/deploys/6a07c5953197b90009d6ca23

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-issues canceled.

Name Link
🔨 Latest commit dd1e5fa
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-issues/deploys/6a07c45161c1d20008dfb7f1

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-videos canceled.

Name Link
🔨 Latest commit 36847f1
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-videos/deploys/6a07c5950428cd0008d7ed97

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-mail canceled.

Name Link
🔨 Latest commit dd1e5fa
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-mail/deploys/6a07c451c794410009787c74

@netlify
Copy link
Copy Markdown

netlify Bot commented May 15, 2026

Deploy Preview for agent-native-recruiting canceled.

Name Link
🔨 Latest commit 69b38cb
🔍 Latest deploy log https://app.netlify.com/projects/agent-native-recruiting/deploys/6a079f5fa71e3b00083cc434

builder-io-integration[bot]

This comment was marked as outdated.

…at; sweep concurrent dispatch/brain/docs work + prettier
…s; agent-chat-plugin + dispatch resource-store refinements
Copy link
Copy Markdown
Contributor

@builder-io-integration builder-io-integration Bot left a comment

Choose a reason for hiding this comment

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

Builder reviewed your changes and found 2 potential issues 🔴

Review Details

Incremental Code Review Summary

This incremental review focuses on verifying the status of issues from the previous review and checking for new regressions in the latest commits.

Risk Level: Standard — Backend/CLI changes with workspace sync logic and Dream proposal integration.

Status of Previous Issues

FIXED: Missing db variable in applyDreamProposalDirect

  • The function now properly declares const db = getDb(); at line 1577
  • Database updates will execute correctly

⚠️ STILL BROKEN: Two high-severity issues remain unfixed

Critical Issues Requiring Fix Before Merge

🔴 HIGH #1: PUT response not checked in syncResourcesToApp

  • File: packages/dispatch/src/server/lib/workspace-resources-store.ts (lines 1004-1027)
  • Problem: When recovering from a 409 conflict, the code sends a PUT request to update an existing resource but never checks if it succeeded. The code unconditionally marks the resource as synced and updates the syncedAt timestamp regardless of whether the PUT succeeds or fails.
  • Impact: Resources can silently fail to sync while the UI and audit trail report success. Stale app resources persist undetected.
  • Fix Required: Check the PUT response (putRes.ok) before marking the resource as synced. Only advance syncedAt and add to syncedPaths when the update actually succeeds.

🔴 HIGH #2: --last flag parsed but never used in resolveWorkbenchDir

  • File: packages/core/src/cli/migrate.ts (lines 178-179 parse, but 1077-1081 ignore it)
  • Problem: The --last flag is parsed and documented in help text (resume --last, status --last, ui --last, stop --last), but resolveWorkbenchDir() completely ignores it. The function falls back to the default DEFAULT_APP_NAME regardless of the flag.
  • Impact: The advertised CLI workflow is broken. Users trying to resume their last migration with --last will get "No Migration Workbench found" errors because the command still looks only in the default directory.
  • Fix Required: Implement --last functionality by either finding the most recently created workbench directory, or remove the flag from parsing and documentation until it's fully implemented.

Architecture Notes

Good patterns:

  • New Dream proposal workflow with proper async handling
  • Workspace scope isolation working correctly in org context
  • Helper functions (withTimeout, mapWithConcurrency) are well-implemented
  • Changeset files properly included for publishable packages

Browser Testing

🧪 Skipped — PR is pure backend/CLI with no UI changes. All modifications are to dispatch logic, resource sync, and CLI argument handling.

Comment on lines 1004 to 1021
await fetch(
`${agent.url}/_agent-native/resources/${existing.id}`,
{
method: "PUT",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ content: resource.content }),
body: JSON.stringify({
content: resource.content,
metadata: {
source: DISPATCH_RESOURCE_METADATA_SOURCE,
resourceId: resource.id,
kind: resource.kind,
name: resource.name,
description: resource.description,
updatedAt: resource.updatedAt,
},
}),
},
);
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.

🔴 PUT response not checked before marking resource synced

The code awaits the PUT request but never checks if it succeeded. Even if the update returns 4xx/5xx, the code still marks the resource as synced (line 1027) and updates syncedAt. Check putRes.ok and only mark as synced if the update actually succeeded.

Fix in Builder

Or react with 🚀 to auto-fix.

Comment on lines +1077 to +1078
function resolveWorkbenchDir(opts: MigrateCliOptions): string {
if (opts.workbench) return path.resolve(process.cwd(), opts.workbench);
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.

🔴 last flag is parsed but never used

The parseMigrateArgs function accepts --last (line 178), and help text advertises resume --last, but resolveWorkbenchDir ignores opts.last and always falls back to DEFAULT_APP_NAME. Either implement finding the most recent workbench when --last is true, or remove the flag from parsing.

Fix in Builder

Or react with 🚀 to auto-fix.

Copy link
Copy Markdown
Contributor

@builder-io-integration builder-io-integration Bot left a comment

Choose a reason for hiding this comment

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

Builder reviewed your changes and found 1 potential issue 🔴

Review Details

Incremental Code Review Summary

This incremental review verifies the status of 2 previously flagged issues and checks for new regressions in the latest commit (8bc6f85: feat: sweep concurrent-agent work).

Risk Level: Standard — Backend/CLI changes affecting resource sync and migration CLI workflow.

Status of Previously Flagged Issues

STILL NOT FIXED: PUT response not verified in syncResourcesToApp

  • File: packages/dispatch/src/server/lib/workspace-resources-store.ts (lines 1057-1074)
  • Status: Issue remains unchanged. The PUT request is made but response is never checked before marking resource as synced.
  • Impact: Resources can silently fail to sync while audit trail reports success, corrupting sync state.

STILL NOT FIXED: --last flag parsed but not used

  • File: packages/core/src/cli/migrate.ts (lines 1278-1279)
  • Status: Core issue remains: resolveWorkbenchDir() never checks opts.last. However, the symptom is partially masked by new code that checks run records before calling this function.
  • Impact: The documented --last flag doesn't actually work as intended.

NEW BUG FOUND IN LATEST COMMIT

🔴 HIGH: migrate status ignores --app-surface when any prior run exists

  • File: packages/core/src/cli/migrate.ts (line 478)
  • Problem: The condition if (last || !opts.appSurface) causes the function to display Code Agents status whenever any prior run exists, completely ignoring an explicit --app-surface flag. This breaks the documented ability to inspect legacy workbench status.
  • Impact: Users cannot access the legacy workbench status view on machines that have recorded migration runs, making that entire surface unreachable.
  • Fix Required: Change to if (last && !opts.appSurface) so an explicit --app-surface request takes precedence.

Summary

The PR still has 2 high-severity blocking issues (PUT response verification and --last flag) that were previously reported and remain unfixed. Additionally, a new regression was introduced in the CLI status command that breaks the legacy workbench surface for users with recorded runs.

🧪 Browser Testing: Skipped — Pure backend/CLI changes, no UI impact.

function printMigrationStatus(opts: MigrateCliOptions): void {
const last = getLastCodeAgentRunRecord("migrate");
const runs = listCodeAgentRunRecords("migrate");
if (last || !opts.appSurface) {
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.

🔴 migrate status --app-surface flag ignored when any prior run exists

The condition if (last || !opts.appSurface) should be if (last && !opts.appSurface) so an explicit --app-surface request is not overridden. Currently, any existing run record causes the Code Agents view to be shown regardless of the user's request for the legacy workbench surface.

Fix in Builder

Or react with 🚀 to auto-fix.

Copy link
Copy Markdown
Contributor

@builder-io-integration builder-io-integration Bot left a comment

Choose a reason for hiding this comment

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

Builder reviewed your changes — no new findings

Review Details

Incremental Code Review Summary

This incremental review checks the latest commit (e49d25c: style: prettier-format) and the status of the 3 previously flagged blocking issues.

Risk Level: Standard — Formatting commit with no functional changes to the flagged areas.

Status of Previously Flagged Issues

Still unfixed (3 blocking issues):

  1. PUT response not verified in syncResourcesToApp — workspace-resources-store.ts:1057-1074

    • The PUT request result is never checked before marking resource as synced
    • Resources can silently fail to sync while audit trail reports success
  2. --last flag parsed but never used — migrate.ts:1278-1279

    • The flag is parsed but resolveWorkbenchDir() ignores it
    • Documented workflow (migrate resume --last) doesn't work
  3. migrate status --app-surface flag ignored — migrate.ts:478

    • Logic if (last || !opts.appSurface) overrides explicit --app-surface request
    • Users cannot access legacy workbench status when run records exist

Latest Commit Review

The latest commit (e49d25c) is a prettier formatting pass on unrelated files (templates/brain). No functional changes to the flagged areas. No new bugs introduced.

Assessment

The PR remains blocking until all 3 high-severity issues are fixed. No progress has been made on any of the issues since they were first flagged. The review comments remain open on the PR documenting each issue and the required fixes.

🧪 Browser Testing: Skipped — No UI changes, backend/CLI only.

steve8708 added 18 commits May 15, 2026 10:39
…es panel + editor, chat threads, migrate CLI, dispatch updates
… under CI frozen-lockfile (was spawnSync status:null ENOENT)
…ions store, dispatch integrations UI, code-agent auto-mode
… code-agents-ui + desktop IPC + code template
…egrations UI, docs (mcp-clients/embedding-sdk/workspace)
…ooks; action-discovery refinements; composer-geometry QA smoke
@steve8708 steve8708 merged commit 79a0eb9 into main May 16, 2026
36 checks passed
@steve8708 steve8708 deleted the updates-328 branch May 16, 2026 01:40
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