We’re trying to use the new preUninstall module (FRGE-1246, released March 30, 2026) in our Forge Remote app. The handler never fires: zero logs in the Forge console, zero requests to our remote backend.
We’ve followed both the official documentation and the Forge Remote example from the RFC 119 thread, and tested with both function and endpoint approaches with same results in both cases.
What we’ve tried
1. preUninstall with a Forge function
Local handler using invokeRemote to forward the event to our backend:
preUninstall:
- key: pre-uninstall-trigger
function: pre-uninstall-handler
2. preUninstall with a remote endpoint
Per the Forge Remote example in RFC 119 post #26:
preUninstall:
- key: pre-uninstall-trigger
endpoint: remote-pre-uninstall-bas
endpoint:
- key: remote-pre-uninstall-bas
remote: remote-app-bas
route:
path: /jira-forge/uninstalling
auth:
appSystemToken:
enabled: true
Linter issue with the RFC 119 example
The Forge Remote example in RFC 119 post #26 uses the same key for both preUninstall and endpoint modules:
preUninstall:
- key: remote-pre-uninstall
endpoint: remote-pre-uninstall
endpoint:
- key: remote-pre-uninstall
However, forge lint rejects this with:
error found duplicate module key 'remote-pre-uninstall' valid-module-required
We had to use distinct keys to pass the linter. Is this a linter bug, or is the RFC example incorrect?
Missing documentation
The official lifecycle events documentation only shows a function-based example. A Forge Remote example using endpoint is missing from the docs, the only reference is in the community RFC thread.
Environment
- Forge CLI 12.17.0, all
@forge/*packages at latest versions - Deployed to
developmentenvironment viaforge deploy forge lintpasses (no errors related to preUninstall)forge deploysucceeds- App runtime:
nodejs22.x
Other lifecycle triggers work fine
avi:forge:installed:app and avi:forge:upgraded:app both fire correctly using the trigger module with local functions.
Test procedure
Deploy → install app on site → uninstall app via UI → check Forge console logs. No preUninstall logs appear. Reinstall → uninstall again → still nothing.
Questions
- Is there a known rollout delay for this feature?
- Are there any additional permissions or scopes required beyond
read:app-system-token? - Any advice for debugging it ?