aboutsummaryrefslogtreecommitdiff
path: root/modules/core
diff options
context:
space:
mode:
Diffstat (limited to 'modules/core')
-rw-r--r--modules/core/core-bundle.js8
-rw-r--r--modules/core/module-loader.js2
-rw-r--r--modules/core/terminal.js8
3 files changed, 15 insertions, 3 deletions
diff --git a/modules/core/core-bundle.js b/modules/core/core-bundle.js
index d52764d..349c02b 100644
--- a/modules/core/core-bundle.js
+++ b/modules/core/core-bundle.js
@@ -4104,7 +4104,13 @@ Only output XML function calls for tool tasks. If no tool is needed, answer norm
// (cron ui-gate-guard) fails if the gate is lost or the bare call returns.
const _uiExp = (function () {
try {
- if (new URLSearchParams(location.search).get('ui') === '1') return true;
+ // ANY `?ui=<value>` opts in except an explicit off ('0'/'false'), because
+ // `?ui=<mode>` is the shell's own shared-link request (?ui=chat deep-links a
+ // mode, validated against lazyIds inside the shell). Requiring exactly '1'
+ // made every shared mode link boot classic with no error — measured
+ // 2026-11-12, the day this gate shipped.
+ const q = new URLSearchParams(location.search).get('ui');
+ if (q !== null && q !== '' && q !== '0' && q !== 'false') return true;
return localStorage.getItem('webx11_ui_experimental') === '1';
} catch (e) { return false; }
})();
diff --git a/modules/core/module-loader.js b/modules/core/module-loader.js
index 06a809f..754b532 100644
--- a/modules/core/module-loader.js
+++ b/modules/core/module-loader.js
@@ -4,7 +4,7 @@
// Core module bundle loaded synchronously in main.html.
// This loader only handles version cache-busting, splash, terminal init, and optional ext modules.
- const LATEST_VER = 'v4.6.162';
+ const LATEST_VER = 'v4.6.163';
const CACHE = '?v=' + LATEST_VER;
// Exposed so ext modules can register their own URL with the same cache-busting version
// instead of an unversioned path the browser may already have cached (shell.js did).
diff --git a/modules/core/terminal.js b/modules/core/terminal.js
index cd7f5ae..9360f9e 100644
--- a/modules/core/terminal.js
+++ b/modules/core/terminal.js
@@ -1398,7 +1398,13 @@
// (cron ui-gate-guard) fails if the gate is lost or the bare call returns.
const _uiExp = (function () {
try {
- if (new URLSearchParams(location.search).get('ui') === '1') return true;
+ // ANY `?ui=<value>` opts in except an explicit off ('0'/'false'), because
+ // `?ui=<mode>` is the shell's own shared-link request (?ui=chat deep-links a
+ // mode, validated against lazyIds inside the shell). Requiring exactly '1'
+ // made every shared mode link boot classic with no error — measured
+ // 2026-11-12, the day this gate shipped.
+ const q = new URLSearchParams(location.search).get('ui');
+ if (q !== null && q !== '' && q !== '0' && q !== 'false') return true;
return localStorage.getItem('webx11_ui_experimental') === '1';
} catch (e) { return false; }
})();