diff --git a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-script/src/main/java/org/xwiki/extension/script/internal/ExtensionManagerScriptService.java b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-script/src/main/java/org/xwiki/extension/script/internal/ExtensionManagerScriptService.java
index 98a3d53d2010af6d02933b404442a32d67e8c9bb..9adcafc161a2cd40ae4e12b9dbddd32f1c4cba4d 100644
--- a/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-script/src/main/java/org/xwiki/extension/script/internal/ExtensionManagerScriptService.java
+++ b/xwiki-platform-core/xwiki-platform-extension/xwiki-platform-extension-script/src/main/java/org/xwiki/extension/script/internal/ExtensionManagerScriptService.java
@@ -89,12 +89,17 @@ public class ExtensionManagerScriptService implements ScriptService
     /**
      * The prefix put behind all job ids.
      */
-    public static final String EXTENSION_JOBID_PREFIX = "extension";
+    public static final String EXTENSION_JOBID_PREFIX = "action";
 
     /**
-     * The prefix put behind all job ids.
+     * The prefix put behind all job ids which are actual actions.
+     */
+    public static final String EXTENSIONACTION_JOBID_PREFIX = "action";
+
+    /**
+     * The prefix put behind all job ids which are information gathering.
      */
-    public static final String EXTENSIONPLAN_JOBID_PREFIX = EXTENSION_JOBID_PREFIX + "_plan";
+    public static final String EXTENSIONPLAN_JOBID_PREFIX = "plan";
 
     /**
      * The real extension manager bridged by this script service.
@@ -374,6 +379,19 @@ public Map<String, Collection<InstalledExtension>> getBackwardDependencies(Strin
 
     // Actions
 
+    private List<String> getJobId(String prefix, String extensionId, String namespace)
+    {
+        List<String> jobId;
+
+        if (namespace != null) {
+            jobId = Arrays.asList(EXTENSION_JOBID_PREFIX, prefix, extensionId, namespace);
+        } else {
+            jobId = Arrays.asList(EXTENSION_JOBID_PREFIX, prefix, extensionId);
+        }
+
+        return jobId;
+    }
+
     /**
      * Start the asynchronous installation process for an extension if the context document has programming rights.
      * 
@@ -395,7 +413,7 @@ public Job install(String id, String version, String namespace)
         setError(null);
 
         InstallRequest installRequest = new InstallRequest();
-        installRequest.setId(Arrays.asList(EXTENSION_JOBID_PREFIX, id, namespace));
+        installRequest.setId(getJobId(EXTENSIONACTION_JOBID_PREFIX, id, namespace));
         installRequest.setInteractive(true);
         installRequest.addExtension(new ExtensionId(id, version));
         if (StringUtils.isNotBlank(namespace)) {
@@ -429,7 +447,7 @@ public ExtensionPlan createInstallPlan(String id, String version, String namespa
         setError(null);
 
         InstallRequest installRequest = new InstallRequest();
-        installRequest.setId(Arrays.asList(EXTENSIONPLAN_JOBID_PREFIX, id, namespace));
+        installRequest.setId(getJobId(EXTENSIONPLAN_JOBID_PREFIX, id, namespace));
         installRequest.addExtension(new ExtensionId(id, version));
         if (StringUtils.isNotBlank(namespace)) {
             installRequest.addNamespace(namespace);
@@ -470,7 +488,7 @@ public Job uninstall(String id, String namespace)
         setError(null);
 
         UninstallRequest uninstallRequest = new UninstallRequest();
-        uninstallRequest.setId(Arrays.asList(EXTENSION_JOBID_PREFIX, id, namespace));
+        uninstallRequest.setId(getJobId(EXTENSIONACTION_JOBID_PREFIX, id, namespace));
         uninstallRequest.addExtension(new ExtensionId(id, (Version) null));
         if (StringUtils.isNotBlank(namespace)) {
             uninstallRequest.addNamespace(namespace);
@@ -518,7 +536,7 @@ public ExtensionPlan createUninstallPlan(String id, String namespace)
         setError(null);
 
         UninstallRequest uninstallRequest = new UninstallRequest();
-        uninstallRequest.setId(Arrays.asList(EXTENSIONPLAN_JOBID_PREFIX, id, namespace));
+        uninstallRequest.setId(getJobId(EXTENSIONPLAN_JOBID_PREFIX, id, namespace));
         uninstallRequest.addExtension(new ExtensionId(id, (Version) null));
         if (StringUtils.isNotBlank(namespace)) {
             uninstallRequest.addNamespace(namespace);
@@ -565,7 +583,7 @@ public ExtensionPlan createUpgradePlan(String namespace)
         setError(null);
 
         InstallRequest installRequest = new InstallRequest();
-        installRequest.setId(Arrays.asList(EXTENSIONPLAN_JOBID_PREFIX, namespace));
+        installRequest.setId(getJobId(EXTENSIONPLAN_JOBID_PREFIX, null, namespace));
         if (StringUtils.isNotBlank(namespace)) {
             installRequest.addNamespace(namespace);
         }
@@ -622,7 +640,7 @@ private JobStatus getJobStatus(List<String> jobId)
      */
     public JobStatus getExtensionJobStatus(String extensionId, String namespace)
     {
-        return getJobStatus(Arrays.asList(EXTENSION_JOBID_PREFIX, extensionId, namespace));
+        return getJobStatus(getJobId(EXTENSIONACTION_JOBID_PREFIX, extensionId, namespace));
     }
 
     /**
@@ -634,7 +652,7 @@ public JobStatus getExtensionJobStatus(String extensionId, String namespace)
      */
     public JobStatus getExtensionPlanJobStatus(String extensionId, String namespace)
     {
-        return getJobStatus(Arrays.asList(EXTENSIONPLAN_JOBID_PREFIX, extensionId, namespace));
+        return getJobStatus(getJobId(EXTENSIONPLAN_JOBID_PREFIX, extensionId, namespace));
     }
 
     /**