docs: correct the README verification notes, bind address and default port
Drop point-in-time test counts and audit notes that no longer hold, state that the gateway listens on 0.0.0.0, list two known gaps, and fix the default port (8045, not 10100) in the pt-BR, es and zh-CN READMEs.
This commit is contained in:
1 parent
0a6a8ff4bb
commit
7ed730b23b
4 files changed
+19
-26
No files matched your search
@@ -78,7 +78,7 @@ It is a personal desktop tool, not a hosted service: everything runs on your mac
|
||||
|
||||
## Requirements
|
||||
|
||||
- Node.js `^20.19.0 || >=22.12.0` (Vite 8 engine range). The repository pins 22.17.1 in `.nvmrc`; this audit ran on Node 24.20.0.
|
||||
- Node.js `^20.19.0 || >=22.12.0` (Vite 8 engine range). The repository pins 22.17.1 in `.nvmrc`.
|
||||
- pnpm `10.11.0` (declared in `package.json`). With Corepack enabled, `pnpm` resolves to that version automatically.
|
||||
- Native build toolchain for `better-sqlite3` and `keytar`: on Linux, `base-devel`/`build-essential`, `python3` and `libsecret`; on macOS, Xcode Command Line Tools; on Windows, Visual Studio Build Tools with the C++ workload. `pnpm install` runs `scripts/setup-dev.js --check-only`, which reports what is missing.
|
||||
- A graphical session to run the desktop app itself (Electron).
|
||||
@@ -158,7 +158,7 @@ Routes actually mapped by the gateway (read from the running server):
|
||||
| `GET /v1beta/models`, `GET /v1beta/models/:model` | Gemini-native model listing. |
|
||||
| `POST /v1beta/models/:modelAction`, `POST /v1beta/models/:model/countTokens` | Gemini-native generate and token counting. |
|
||||
|
||||
Authentication: the gateway accepts the API key as `Authorization: Bearer <key>`, `x-api-key: <key>` or `x-goog-api-key: <key>`. If the configured key is empty, the gateway runs open, which is only sensible while it is bound to localhost.
|
||||
Authentication: the gateway accepts the API key as `Authorization: Bearer <key>`, `x-api-key: <key>` or `x-goog-api-key: <key>`. If the configured key is empty, the gateway runs open. It listens on all network interfaces (`0.0.0.0`, see `src/server/main.ts`), so always set an API key on a machine that is reachable from a LAN.
|
||||
|
||||
## Build and release
|
||||
|
||||
@@ -199,19 +199,18 @@ scripts/ dev environment setup, Windows build help
|
||||
|
||||
## Verification
|
||||
|
||||
Previously recorded Linux x64 checks (Node 24.20.0, pnpm 10.11.0), before the review below:
|
||||
Checks used before merging, all run with `pnpm`:
|
||||
|
||||
| Command | Result |
|
||||
| Command | Notes |
|
||||
|---|---|
|
||||
| `pnpm install --frozen-lockfile` | exit 0 |
|
||||
| `pnpm test` | 54 test files, 499 tests, all passing |
|
||||
| `pnpm run type-check` | exit 0 |
|
||||
| `pnpm run lint` | exit 0 (327 warnings, no errors) |
|
||||
| `pnpm run format` | all files formatted |
|
||||
| `pnpm run package` | exit 0, `out/Gemini Nexus-linux-x64` |
|
||||
| `pnpm run test:e2e` | not run: Playwright drives Electron and needs a graphical session |
|
||||
| `pnpm install --frozen-lockfile` | Run it with a native toolchain, or add `--ignore-scripts` to skip compiling `better-sqlite3`/`keytar` (the unit tests mock both). |
|
||||
| `pnpm test` | Vitest suite under `src/tests/unit` and `src/tests/integration`. |
|
||||
| `pnpm run type-check` | `tsc --noEmit`. |
|
||||
| `pnpm run lint` | ESLint; reports warnings (mostly `no-explicit-any`) but no errors. |
|
||||
| `pnpm run format` | Prettier check. |
|
||||
| `pnpm run test:e2e` | Not part of CI: Playwright drives Electron and needs a graphical session. |
|
||||
|
||||
The E2E suite is also excluded from CI for the same reason.
|
||||
Electron packaging, real account switching and the E2E suite need separate validation on each platform.
|
||||
|
||||
## Current state and limitations
|
||||
|
||||
@@ -221,6 +220,8 @@ The E2E suite is also excluded from CI for the same reason.
|
||||
- UI languages are en, zh-CN, ru and vi. The default language in `DEFAULT_APP_CONFIG` is `zh-CN`.
|
||||
- Windows installers are unsigned (SmartScreen warning). macOS builds are unsigned and unnotarized.
|
||||
- The E2E suite does not run in CI.
|
||||
- `src/tests/GeminiNexusCoreFeatures.test.ts` sits outside the Vitest `include` globs, so it never runs, and several of its cases no longer match the current request mapper.
|
||||
- `response_format: { type: 'json_schema' }` sets the JSON mime type but the schema itself is not forwarded upstream (`buildGenerationConfig` in `src/lib/geminiNexus/ClaudeRequestMapper.ts`).
|
||||
- The project is mid-migration to a single license: the code inherited from AntigravityManager is CC BY-NC-SA 4.0 (non-commercial), while the new code is MIT. See the license section.
|
||||
- `pnpm install` reports `Ignored build scripts: sharp`. `sharp` is only used by `scripts/generate-assets.ts` for icon generation, and its prebuilt binaries are installed through optional dependencies.
|
||||
|
||||
@@ -248,11 +249,3 @@ The project is being migrated to MIT as the remaining original code is rewritten
|
||||
## Credits
|
||||
|
||||
Originally forked from [AntigravityManager](https://github.com/Draculabo/AntigravityManager). Since the fork the codebase has been largely rewritten by [evandrodevbr](https://github.com/evandrodevbr): UI/UX, usage analytics, traffic monitor, environment isolation, CI/CD, test infrastructure and documentation.
|
||||
|
||||
## Review checks (2026-09-30)
|
||||
|
||||
Retry durations are parsed as complete values: `500ms` is milliseconds, and fractional components are rounded after summation. Invalid trailing text is rejected. Account and model lockouts honor the later expiration. IDE fallback configuration remains available at loopback when the OS denies network-interface enumeration.
|
||||
|
||||
Focused checks: `pnpm exec vitest run src/tests/unit/rate-limit-tracker.test.ts src/tests/unit/ipc/proxy-advanced-handler.test.ts`. Run `pnpm test`, `pnpm type-check`, `pnpm lint` and `pnpm format` for the full non-E2E gates. Native SQLite/keytar are mocked by the unit-test configuration; Electron packaging, real account switching and E2E still require separate validation.
|
||||
|
||||
This review passes all 509 tests across 54 files, type checking, lint (327 existing warnings, no errors) and formatting with Node 24.19.0 and pnpm 10.11.0. The original lockfile is retained: its audit still reports two critical findings, in `tar` and `seroval`, requiring a separately validated dependency update.
|
||||
Reference in new issue
Block a user