dagger/dagger · error

merge sdk init changes: %w

Error message

merge sdk init changes: %w

What it means

Wraps the failure of merging the SDK's scaffolding changeset into the base changeset during init (module or client). Only reached when the SDK produced changes; the wrapped error comes from the srv.Select diff/merge chain and explains why the two changesets could not be combined.

Source

Thrown at core/schema/workspace_sdk_init.go:106

		Field: "withWorkdir",
		Args:  []dagql.NamedInput{{Name: "path", Value: dagql.String(".")}},
	}); err != nil {
		return ws, fmt.Errorf("anchor workspace at root: %w", err)
	}
	return rooted, nil
}

func mergeWorkspaceInitChangeset(ctx context.Context, base dagql.ObjectResult[*core.Changeset], sdkChanges dagql.ObjectResult[*core.Changeset]) (dagql.ObjectResult[*core.Changeset], error) {
	if sdkChanges.Self() == nil {
		return base, nil
	}
	srv, err := core.CurrentDagqlServer(ctx)
	if err != nil {
		return base, fmt.Errorf("dagql server: %w", err)
	}
	sdkChangesID, err := sdkChanges.ID()
	if err != nil {
		return base, fmt.Errorf("merge sdk init changes: %w", err)
	}
	// Merge through the withChangeset field rather than the raw Go method so
	// the result stays an attached dagql result. Returning a detached
	// *Changeset here breaks later id/Sync resolution with "result
	// *core.Changeset is detached" (see commit "keep generated workspace
	// changesets attached").
	var merged dagql.ObjectResult[*core.Changeset]
	if err := srv.Select(ctx, base, &merged, dagql.Selector{
		Field: "withChangeset",
		Args: []dagql.NamedInput{
			{Name: "changes", Value: dagql.NewID[*core.Changeset](sdkChangesID)},
			{Name: "onConflict", Value: core.FailEarlyOnMergeConflict},
		},
	}); err != nil {
		return base, fmt.Errorf("merge sdk init changes: %w", err)
	}
	return merged, nil
}

View on GitHub (pinned to 82ba2681db)

Solutions

  1. Inspect the wrapped merge error
  2. Retry the init; check that both changesets are valid
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at core/schema/workspace_sdk_init.go:106 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of dagger/dagger@82ba2681db (2026-09-05). Data as JSON: /api/errors/e4b6e693a7535135. Report an issue: GitHub.