Skip to main content
← Back to list
01Issue
BugShippedSwamp CLIPublic
Assigneeszack

Relationships

#4462 runModel infers incomplete extension owner for nested GCP package types

Opened by mrehle · 11/5/2026· Shipped 11/5/2026

CLI version 20261021.015131.0-sha.bfde0792. With official @swamp/gcp/gmail 2026.10.23.1 installed, a local extension method on type @swamp/gcp/gmail/users-messages calls context.runModel to execute an existing @swamp/ssh definition. The call is rejected before child execution: Cannot verify dependencies for extension "@swamp/gcp" — manifest could not be loaded. Ensure the extension is properly installed. The actual installed package is @swamp/gcp/gmail; there is no @swamp/gcp package manifest. Please resolve extension ownership from registered module/package metadata, including nested package names, rather than an inferred shortened type prefix. A host-bound local extension using the existing SSH method directly works; no missing Gmail API credentials or expanded OAuth scope is involved. No organization identifiers, addresses or secrets included.

02Bog Flow
✓OPEN✓TRIAGED✓IN PROGRESS✓SHIPPED+ 1 MOREASSIGNED+ 2 MOREREVIEW+ 20 MOREPR_MERGED+ 2 MORESESSION_SUMMARIZED

Shipped

11/5/2026, 11:45:11 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
zack assigned zack11/5/2026, 10:21:36 PM
Editable. Press Enter to edit.

zack commented 11/5/2026, 11:45:14 PM

Thanks @mrehle for reporting this! We shipped: runModel authorization derives the calling and target extension from the source path, keeping at most two segments for scoped names, so every nested-name package (@swamp/gcp/gmail, @swamp/aws/ec2, ~500 packages) is attributed to a parent like @swamp/gcp that has no manifest and is refused fail-closed. Fix extractExtensionNameFromPath to name the owner from the nearest manifest.yaml under the pulled root (its install directory, which is also the lockfile key and where the invocation service reads dependencies), keeping a defined fallback so authorization never fails open. No change to the authorization rules themselves.. The fix has been merged and a release is on its way. We appreciate your contribution to swamp.

Sign in to post a ripple.