mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-07-09 17:28:51 +00:00
* chore(release): open v3.8.21 development cycle
* fix: pass through valid max_tokens-truncated responses instead of fake 502 (#3572) (#3595)
* fix: /v1/completions returns legacy text-completion format, not chat (#3571) (#3596)
* fix: z.ai/GLM coding plan no longer shows Monthly 0% when no monthly cap (#3580) (#3597)
* docs: mark DISCOVERY_TOOL_DESIGN endpoints as Phase-2 not-yet-implemented (#3498) (#3599)
* fix(agent-bridge): add validate-only upstream-ca/test route (#3488) (#3600)
* fix(gamification): add level/badges/badges-earned profile routes (#3484)
* security(oauth): migrate 5 public client_ids to resolvePublicCred (#3493)
* fix(mcp): ship MCP server source closure in npm files + coverage gate (#3578)
* fix: add reasoning token buffer for combo routing (fixes #3587) (#3588)
Integrated into release/v3.8.21
* Refactor: Extract chatCore phases into modular files (#3598)
Integrated into release/v3.8.21 — chatCore phase modularization. Adjusted: re-derive idempotencyKey for the save path after the check moved into the module (co-authored). Thanks @oyi77!
* docs(changelog): credit #3598 (chatCore modularization) + #3588 (combo reasoning buffer)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* fix(api): implement GET /api/guardrails + POST /api/guardrails/test, drop shadow/guardrails doc-fiction (#3496) (#3602)
Integrated into release/v3.8.21 — implements GET /api/guardrails + POST /api/guardrails/test, removes shadow/guardrails doc-fiction. TDD-validated (5/5) + check-docs-symbols/typecheck/eslint green.
* fix(gemini): isolate textual reasoning wrappers (#3605)
Split-out PR C from #3584. Isolates textual reasoning wrappers (<think>/<thinking>/<thought>/<internal_thought>, including malformed/open tags) into reasoning_content across both the non-streaming sanitizer and the Gemini streaming translator, with split-chunk buffering. Additive to the existing textual tool-call pipeline; does not touch the #3569 native functionResponse path. Integrated into release/v3.8.21. Thanks @dhaern!
* fix(antigravity): normalize Gemini 3.5 Flash tier IDs (#3603)
Split-out PR A from #3584. Normalizes the Antigravity/agy Gemini 3.5 Flash tier IDs to clean public names (gemini-3.5-flash-low/medium/high), maps them to the live upstream IDs at the executor boundary, and removes Antigravity from the global model resolver so the executor owns wire normalization. Maintainer follow-up: kept gemini-3.5-flash-preview as a hidden backward-compat alias routing to the High tier (so saved combos/configs keep working). Live-validated the tier set via the agy CLI catalog. Integrated into release/v3.8.21. Thanks @dhaern!
* fix(agent-bridge): surface real MITM startup-failure cause, not always port 443 (#3606) (#3608)
Integrated into release/v3.8.21 (#3606)
* fix(oauth): surface real Kiro import-token failure cause, not a bare 500 (#3589) (#3609)
Integrated into release/v3.8.21 (#3589)
* docs(opencode-provider): soft-deprecate in favor of @omniroute/opencode-plugin (#3419) (#3613)
Integrated into release/v3.8.21 (#3419)
* fix(usage): normalize Antigravity and agy provider quotas (#3604)
Split-out PR B from #3584. Normalizes Antigravity/agy provider quotas: prefers retrieveUserQuota for live consumption, falls back to fetchAvailableModels and local usage_history, sanitizes cached Provider Limits so retired upstream IDs are not re-exposed, and schedules a deduplicated post-usage refresh. Maintainer follow-up: decoupled the post-usage refresh via a lightweight usageEvents bus (usageHistory no longer dynamic-imports providerLimits) so it does not pull the executors/translator graph into the typecheck-core surface — typecheck:core stays at 0. Integrated into release/v3.8.21. Thanks @dhaern!
* feat(cli): add autostart on/off/toggle shorthand for headless serve mode (#3331) (#3614)
Integrated into release/v3.8.21 (#3331)
* docs(changelog): credit #3603 (Flash tier IDs) + #3604 (provider quotas) + #3605 (reasoning wrappers)
Co-authored-by: diegosouzapw <diegosouza.pw@gmail.com>
* fix(review): resolve findings from /review-reviews battery (v3.8.21 hardening) (#3618)
Pre-release hardening from the /review-reviews battery — 15 findings resolved (L1-L13,L15) + L14 live-verified WONTFIX, convergence re-review clean. lint/typecheck:core/test:vitest(146)/build green; zero new test:unit failures vs baseline 797de433f.
* chore(release): v3.8.21 CHANGELOG + i18n + env-doc sync
---------
Co-authored-by: Hernan Javier Ardila Sanchez <hjasgr@gmail.com>
Co-authored-by: Paijo <14921983+oyi77@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Raxxoor <manker_lol@hotmail.com>
124 lines
2.5 KiB
Text
124 lines
2.5 KiB
Text
# Database files - NEVER publish
|
|
data/
|
|
**/data/
|
|
**/db.json
|
|
|
|
# VS Code extension test runtime (large binary, not needed in npm package)
|
|
app/vscode-extension/
|
|
**/data/
|
|
**/db.json
|
|
|
|
# Source code (pre-built app/ is published instead)
|
|
#
|
|
# NOTE (#3578 / #3821-review): package.json "files" is the source of truth for what
|
|
# ships. It now allowlists the backend source closure the MCP server needs at runtime
|
|
# (open-sse/, src/lib, src/server, ...) and OVERRIDES the broad src/ + open-sse/ excludes
|
|
# below — npm honors files[] over .npmignore for inclusion. These lines are kept only as
|
|
# intent/back-stop: if files[] is ever trimmed back to specific paths, they must NOT be
|
|
# allowed to re-hide the MCP closure (that would silently reintroduce the --mcp
|
|
# ERR_MODULE_NOT_FOUND #3578 fixed). The closure gate in
|
|
# tests/unit/mcp-published-files-closure-3578.test.ts asserts the real `npm pack` output
|
|
# in both directions (closure present + zero test files), catching such a regression.
|
|
src/
|
|
open-sse/
|
|
docs/
|
|
tests/
|
|
cloud/
|
|
images/
|
|
logs/
|
|
scripts/
|
|
|
|
# Co-located tests must never ship even when their parent dir is allowlisted by files[].
|
|
# (Primary guard is the "!**/*.test.*" negations in package.json files[]; this is defense
|
|
# in depth for any nested dir the allowlist pulls in.)
|
|
**/__tests__/
|
|
**/*.test.ts
|
|
**/*.test.tsx
|
|
**/*.test.js
|
|
**/*.test.mjs
|
|
**/*.spec.ts
|
|
**/*.spec.tsx
|
|
|
|
# Config/dev files
|
|
*.md
|
|
!README.md
|
|
.gitignore
|
|
.git/
|
|
.github/
|
|
.husky/
|
|
.vscode/
|
|
.agents/
|
|
.env*
|
|
app/.env
|
|
app/.env*
|
|
eslint.config.mjs
|
|
prettier.config.mjs
|
|
postcss.config.mjs
|
|
next.config.mjs
|
|
tsconfig.json
|
|
tsconfig.typecheck-core.json
|
|
tsconfig.typecheck-noimplicit-core.json
|
|
playwright.config.ts
|
|
vitest.config.ts
|
|
next-env.d.ts
|
|
llm.txt
|
|
|
|
# Docker
|
|
docker-compose*.yml
|
|
Dockerfile
|
|
.dockerignore
|
|
|
|
# Misc
|
|
AGENTS.md
|
|
bun.lock
|
|
|
|
# Build artifacts (pre-built goes inside app/)
|
|
/.next/
|
|
/node_modules/
|
|
|
|
# Ignore large binary files and other build directories
|
|
*.tgz
|
|
*.AppImage
|
|
*.deb
|
|
*.rpm
|
|
electron/
|
|
app/electron/
|
|
app/vscode-extension/
|
|
|
|
# Subprojects
|
|
clipr/
|
|
omnirouteCloud/
|
|
omnirouteSite/
|
|
vscode-extension/
|
|
|
|
# Root-level underscore-prefixed directories (private/draft — never publish)
|
|
/_*/
|
|
app/_*/
|
|
app/coverage/
|
|
app/logs/
|
|
app/tests/
|
|
|
|
# Consistent with .gitignore and .dockerignore
|
|
.DS_Store
|
|
.idea/
|
|
.config/
|
|
.data/
|
|
.omnivscodeagent/
|
|
.omc/
|
|
*.sqlite-*
|
|
*.tsbuildinfo
|
|
security-analysis/
|
|
.analysis/
|
|
antigravity-manager-analysis/
|
|
.sisyphus/
|
|
.plans/
|
|
app.__qa_backup/
|
|
.app-build-backup-*/
|
|
.gitnexus
|
|
.worktrees
|
|
.next-playwright/
|
|
test-results/
|
|
playwright-report/
|
|
blob-report/
|
|
coverage/
|
|
@omniroute/
|