Skip to main content

The package has the wrong owner

Use the generated project for the intended model. Company packages belong in portal projects. Standalone packages use Droplet ownership and fluid.widget.config.ts. Do not copy configuration between models.

A standalone project has no Droplet ID

The explicit ID avoids an interactive lookup. Confirm that the Droplet already exists and that your credentials can access it.

A portal function is rejected as undeclared

Import the typed function from @fluid-app/portal-sdk/widgets/worker, add that same function value to the widget’s uses, rebuild, and retry.

Defaults fail validation

Compare defaultProps and field defaults with the current property schema. Keep JSON values within the worker-safe SDK types. Test missing and malformed persisted inputs separately.

Styles are missing

Restore the generated root styles.css. Preserve the standalone template’s guarded worker import. Company widget modules must not import CSS directly.

Build fails after stale generated output

Preserve author source and configuration. Remove only generated .fluid/widget-build/, .fluid/tmp/, or .fluid/widget-dist/ content, then rerun the failed command.

A published version already exists

Published Widget Package versions are immutable. Increment the semantic version and publish again.

Push and publication disagree

fluid widget push separates repository synchronization from publication. Read the phase result and inspect fluid widget status and fluid widget logs before retrying.

Network approval is rejected

Confirm that the widget declares networkAccess, the package has been reviewed, and the approval matches the exact package ID, package version, and capability version. --yes alone does not approve it.