Merge the MIBP fork (v1.0.14, synced to decolua v0.5.81) into our master
(0.5.86) at merge-base a8c9d380. Keep HEAD's infra policy (untracked
lockfile, mirror-configurable Dockerfile, decolua GHCR/DockerHub, README)
while absorbing the fork's engine features:
- feat(providers): freebuff provider + executor + OAuth + usage tracking
- feat(providers): cline free-tier models, Freebuff catalog sync
- feat(proxy-pools): pool egress geo probe, proxy-pool fitness + retry
- fix(usage): hide noAuth providers (devin-cli, mimo-free) from usage list
- test(harness): DATA_DIR isolation so tests never write the real DB
- fix(codebuddy-intl): probe token in connection test, OAuth by identity
- chore(guards): durable markers so fixes aren't silently dropped
Resolutions:
- registry/index.js regenerated deterministically (122 providers, alpha
order). trae/windsurf/devin-cli stay hidden per HEAD security posture
(no tool-calling / local-agent shell access) — not re-enabled.
- nonStreamingHandler: drop the generic unconditional unwrapDataEnvelope
call; envelope unwrap stays scoped to clineEnvelope-quirk providers
(unwrapClineEnvelope), fixing a latent mibp bug where non-opted-in
providers ({success,data} bodies) were stripped.
- Drop fork-local Docker lockfile policy (package-lock.json, AGENTS.md,
.npmrc verify scripts): this repo keeps package-lock untracked (nix
build deploy). .npmrc (audit=false/fund=false) kept.
- Keep gitbook-pages workflow enabled (ours); mibp disabled it.
- Restore 13 upstream tests mibp deleted (they cover features we keep).
Verified: 2841 tests, 2687 pass, fail set byte-identical to HEAD (zero
new regressions); providers/alias/oauth baselines regenerated to merged
code and all green.
70 lines
2.1 KiB
JSON
70 lines
2.1 KiB
JSON
{
|
|
"name": "9router-app",
|
|
"version": "0.5.86",
|
|
"description": "9Router web dashboard",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "next dev --port 20127",
|
|
"dev:webpack": "next dev --webpack --port 20127",
|
|
"build": "next build --webpack",
|
|
"postbuild": "node scripts/copy-standalone-assets.mjs",
|
|
"postbuild:bun": "node scripts/copy-standalone-assets.mjs",
|
|
"start": "node custom-server.js --port 20127",
|
|
"dev:bun": "bun --bun next dev --webpack --port 20127",
|
|
"build:bun": "bun --bun next build --webpack",
|
|
"start:bun": "bun ./.next/standalone/custom-server.js",
|
|
"cli:pack": "npm --prefix cli run pack:cli",
|
|
"cli:publish": "npm --prefix cli run publish:cli"
|
|
},
|
|
"dependencies": {
|
|
"@dnd-kit/core": "^6.3.1",
|
|
"@dnd-kit/modifiers": "^9.0.0",
|
|
"@dnd-kit/sortable": "^10.0.0",
|
|
"@dnd-kit/utilities": "^3.2.2",
|
|
"@monaco-editor/react": "^4.7.0",
|
|
"@next/third-parties": "^16.2.9",
|
|
"@node-saml/node-saml": "^5.1.0",
|
|
"@xyflow/react": "^12.10.1",
|
|
"bcryptjs": "^3.0.3",
|
|
"chalk": "^5.6.2",
|
|
"confbox": "^0.2.4",
|
|
"dompurify": "^3.4.13",
|
|
"express": "^5.2.1",
|
|
"http-proxy-middleware": "^3.0.5",
|
|
"jose": "^6.1.3",
|
|
"marked": "^18.0.1",
|
|
"material-symbols": "^0.44.6",
|
|
"monaco-editor": "^0.56.0",
|
|
"next": "^16.1.6",
|
|
"node-forge": "^1.3.3",
|
|
"node-machine-id": "^1.1.12",
|
|
"open": "^11.0.0",
|
|
"ora": "^9.1.0",
|
|
"prop-types": "^15.8.1",
|
|
"react": "19.2.4",
|
|
"react-dom": "19.2.4",
|
|
"react-is": "^16.13.1",
|
|
"recharts": "^3.7.0",
|
|
"selfsigned": "^5.5.0",
|
|
"socks-proxy-agent": "^8.0.5",
|
|
"sql.js": "^1.14.1",
|
|
"undici": "^7.19.2",
|
|
"uuid": "^13.0.0",
|
|
"zustand": "^5.0.10"
|
|
},
|
|
"optionalDependencies": {
|
|
"better-sqlite3": "^12.6.2"
|
|
},
|
|
"comment_better_sqlite3": "kept in optionalDependencies so npm install doesn't fail on systems without build tools — sql.js is used as fallback at runtime",
|
|
"devDependencies": {
|
|
"@tailwindcss/postcss": "^4.1.18",
|
|
"eslint": "^9",
|
|
"eslint-config-next": "16.1.6",
|
|
"postcss": "^8.5.6",
|
|
"tailwindcss": "^4"
|
|
},
|
|
"overrides": {
|
|
"dompurify": "^3.4.13"
|
|
}
|
|
}
|