fix: MBE health check proxy and admin page

- Added /api/v1/mbe/health proxy endpoint
- Frontend uses proxy for MBE health check (works on localhost and external)
- Accepts 'healthy' status from MBE response
- Shows model info (MBE e4b) in Admin UI
This commit is contained in:
2026-10-23 00:33:31 +08:00
parent 951a2964f3
commit 50bd33106f
8 changed files with 21 additions and 8 deletions

Binary file not shown.

Binary file not shown.

View File

@@ -1,3 +1,5 @@
import "./chunk-RR3RQRRX.js";
// node_modules/@tauri-apps/api/external/tslib/tslib.es6.js // node_modules/@tauri-apps/api/external/tslib/tslib.es6.js
function __classPrivateFieldGet(receiver, state, kind, f) { function __classPrivateFieldGet(receiver, state, kind, f) {
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");

File diff suppressed because one or more lines are too long

View File

@@ -2,36 +2,42 @@
"hash": "813ccdf0", "hash": "813ccdf0",
"configHash": "5b9e4b03", "configHash": "5b9e4b03",
"lockfileHash": "ac269d47", "lockfileHash": "ac269d47",
"browserHash": "2eabb9c1", "browserHash": "4a92acfe",
"optimized": { "optimized": {
"@tauri-apps/api/core": { "@tauri-apps/api/core": {
"src": "../../@tauri-apps/api/core.js", "src": "../../@tauri-apps/api/core.js",
"file": "@tauri-apps_api_core.js", "file": "@tauri-apps_api_core.js",
"fileHash": "3969e853", "fileHash": "9c12c9cd",
"needsInterop": false "needsInterop": false
}, },
"vue": { "vue": {
"src": "../../vue/dist/vue.runtime.esm-bundler.js", "src": "../../vue/dist/vue.runtime.esm-bundler.js",
"file": "vue.js", "file": "vue.js",
"fileHash": "b283492a", "fileHash": "8cfb0722",
"needsInterop": false "needsInterop": false
}, },
"vue-router": { "vue-router": {
"src": "../../vue-router/dist/vue-router.mjs", "src": "../../vue-router/dist/vue-router.mjs",
"file": "vue-router.js", "file": "vue-router.js",
"fileHash": "0528c0df", "fileHash": "8e70fe49",
"needsInterop": false "needsInterop": false
}, },
"vue-i18n": { "vue-i18n": {
"src": "../../vue-i18n/dist/vue-i18n.mjs", "src": "../../vue-i18n/dist/vue-i18n.mjs",
"file": "vue-i18n.js", "file": "vue-i18n.js",
"fileHash": "b2bd439f", "fileHash": "ecd260b8",
"needsInterop": false "needsInterop": false
}, },
"@vueuse/core": { "@vueuse/core": {
"src": "../../@vueuse/core/dist/index.js", "src": "../../@vueuse/core/dist/index.js",
"file": "@vueuse_core.js", "file": "@vueuse_core.js",
"fileHash": "db16229f", "fileHash": "cb3f3d6d",
"needsInterop": false
},
"p-limit": {
"src": "../../p-limit/index.js",
"file": "p-limit.js",
"fileHash": "b4b2941e",
"needsInterop": false "needsInterop": false
} }
}, },
@@ -41,6 +47,9 @@
}, },
"chunk-5G6OTI3J": { "chunk-5G6OTI3J": {
"file": "chunk-5G6OTI3J.js" "file": "chunk-5G6OTI3J.js"
},
"chunk-RR3RQRRX": {
"file": "chunk-RR3RQRRX.js"
} }
} }
} }

View File

@@ -20,6 +20,7 @@ import {
watch, watch,
watchEffect watchEffect
} from "./chunk-5G6OTI3J.js"; } from "./chunk-5G6OTI3J.js";
import "./chunk-RR3RQRRX.js";
// node_modules/vue-router/dist/devtools-EWN81iOl.mjs // node_modules/vue-router/dist/devtools-EWN81iOl.mjs
var isBrowser = typeof document !== "undefined"; var isBrowser = typeof document !== "undefined";

File diff suppressed because one or more lines are too long

1
node_modules/.vite/deps/vue.js generated vendored
View File

@@ -171,6 +171,7 @@ import {
withModifiers, withModifiers,
withScopeId withScopeId
} from "./chunk-5G6OTI3J.js"; } from "./chunk-5G6OTI3J.js";
import "./chunk-RR3RQRRX.js";
export { export {
BaseTransition, BaseTransition,
BaseTransitionPropsValidators, BaseTransitionPropsValidators,