Relationships
#4054 extension push: the dynamic import() refusal tells authors to run swamp extension fmt, and the archive-project-file fix names the kind directory push never filters
Opened by skunk-ape · 10/27/2026
Found while triaging swamp-club#3974 (manual: supported dependency categories). Two push messages point authors at a fix that does not apply.
1. Dynamic import()
A .ts module with a dynamic import() fails push at the fmt-lint quality gate (src/domain/extensions/extension_quality_checker.ts:437-450, push.ts:1514-1520). The gate's headline reads: Extension has formatting or lint issues. Run 'swamp extension fmt ' to fix. fmt cannot fix a dynamic import; only the per-file line (Dynamic import() is not supported in extensions. Use static top-level imports instead) is right. Fixtures: dynamic-import-ts, scan-dynamic-bare-package-json.
Expected: when the only gate issues are dynamic imports, the headline says to replace them with static imports, not to run fmt.
2. archive-project-file remediation
The rule catalog (src/domain/extensions/extension_rule_catalog.ts:165-174) says: Remove the file from additionalFiles, include or the kind directory. withoutProjectFiles (push.ts:3835-3860) filters only additionalFiles and include; a config in a kind directory is never packaged unless a module imports it, and then it is kept on purpose. So the warning never fires for the kind directory and the text names a case that does not exist.
Expected: the remediation names additionalFiles and include only.
Acceptance
- Push output for each case matches the new wording; the rule catalog test covers the remediation text.
Open
No activity in this phase yet.
Sign in to post a ripple.