mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-23 23:52:18 +03:00
Landed with the design call resolved per the owner's pick — **option 1**: the synced store is now endpoint-agnostic (persistDiscoveredModels and managedModelImport no longer drop non-chat models at write time), and chat selectability moved to read time (auto-pool expansion in autoStrategy applies filterChatSelectableModels; the models-route projection already had its chatOnly filter). Your discovery test now passes end-to-end (3/3): /api/show capabilities persist per connection and image/embedding requests route through the advertising host. Reconciliation notes: conflicted areas merged onto the current tip (adobe discovery import, requestedModel preflight signature, resolvedProvider fast-path coexists with the synced-route override — explicit resolution wins); carried base-red drains (#10055 memoization, #11071 test variants) dropped as already-landed; the managed-model-import exclusion test was propagated to the new contract (image/video models persist; the read filter still hides them from chat pickers — pinned by a new assertion). Full battery: 205/206 focused (the one red is a confirmed periodic-timer timing flake on the loaded devbox — 20/20 isolated), autoCombo vitest 30/30, combo suites 46/46, gates + typecheck clean. Thank you @yourspraveen — the capability probe + routing design was right; it just needed the store contract opened up. Fixes #11087.
70 lines
1.8 KiB
Makefile
70 lines
1.8 KiB
Makefile
.PHONY: help install dev start build build-release lint typecheck typecheck-strict \
|
|
test test-unit test-vitest test-coverage test-all test-integration test-e2e \
|
|
check check-cycles check-docs env-sync clean
|
|
|
|
# OmniRoute — convenience wrapper around the npm scripts.
|
|
# All targets delegate to the canonical package.json scripts (single source of truth).
|
|
|
|
help: ## Show this help
|
|
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[36m%-18s\033[0m %s\n", $$1, $$2}'
|
|
|
|
install: ## Install dependencies (auto-generates .env from .env.example)
|
|
npm install
|
|
|
|
dev: ## Dev server at http://localhost:20128
|
|
npm run dev
|
|
|
|
start: ## Production server (requires a prior build)
|
|
npm run start
|
|
|
|
build: ## Production build (Next.js 16 standalone)
|
|
npm run build
|
|
|
|
build-release: ## Release build
|
|
npm run build:release
|
|
|
|
lint: ## ESLint (0 errors expected)
|
|
npm run lint
|
|
|
|
typecheck: ## TypeScript check (core)
|
|
npm run typecheck:core
|
|
|
|
typecheck-strict: ## Strict check (no implicit any)
|
|
npm run typecheck:noimplicit:core
|
|
|
|
test: ## Unit tests (Node native runner)
|
|
npm run test:unit
|
|
|
|
test-unit: ## Alias for `test`
|
|
npm run test:unit
|
|
|
|
test-vitest: ## Vitest (MCP server, autoCombo, cache)
|
|
npm run test:vitest
|
|
|
|
test-coverage: ## Unit tests + coverage gate (60/60/60/60)
|
|
npm run test:coverage
|
|
|
|
test-all: ## All suites (unit + vitest + ecosystem + e2e)
|
|
npm run test:all
|
|
|
|
test-integration: ## Integration tests
|
|
npm run test:integration
|
|
|
|
test-e2e: ## E2E (Playwright)
|
|
npm run test:e2e
|
|
|
|
check: ## lint + test combined
|
|
npm run check
|
|
|
|
check-cycles: ## Detect circular dependencies
|
|
npm run check:cycles
|
|
|
|
check-docs: ## Validate documentation (incl. fabricated-docs)
|
|
npm run check:docs-all
|
|
|
|
env-sync: ## Sync .env from .env.example
|
|
npm run env:sync
|
|
|
|
clean: ## Remove build artifacts
|
|
rm -rf .build dist coverage .eslintcache
|