Commit Graph
17 Commits
Author SHA1 Message Date
abccodes b2ceb4b466 [aidan] fix/model-fallback: reconcile free trial and provider states 2026-06-26 03:39:48 -07:00
ciregenz 0d093cc5f8 [eric] backend: one-line every comment + collapse 3+ blank runs across apps/ (AST-verified identical, -lines); CLAUDE.md one-line-comment rule 2026-06-25 02:29:04 -07:00
ciregenz c5fd4f6b86 [eric] apps: leading-_ -> p_ for import aliases (import x as _y) across apps modules (file-local bindings, p-private 0) 2026-06-23 21:15:43 -07:00
ciregenz 798448acca [eric] apps: leading-_ -> p_ for function-local vars/args/nested-fns across 53 apps modules (scope-aware AST rename, module symbols untouched, p-private 0) 2026-06-23 21:11:44 -07:00
ciregenz 10aef1ff18 [eric] swarm+nine_router: leading-_ -> p_/public across swarm entities/closure/redact/ziputil + nine_router process/sync/oauth; promote cross-file public, fix monkeypatch refs 2026-06-23 20:35:06 -07:00
ciregenz b7450f885a [eric] merge winv2: win startup speedups + skill-registry seed, release 1.3.87 2026-06-19 00:57:57 -07:00
Eric ec0f9600bc [eric] backend: remove cold-start diagnostics, keep the fix + slim lifespan timer
- the is_running() fast-fail fix (v1.3.91) verified cold backend-http-ready
  23.5s -> 3.86s and warm 5.0s -> 3.32s on the signed build, no 9Router regression
- strip the [perf] bg entry logs from mcp/skill/settings/service/9router now that
  the stall is diagnosed; keep Apps.py per-lifespan timing but only print a
  lifespan over 50ms plus the total (cheap regression tripwire)
- document the root cause + fix + before/after in docs/perf/winv2/README.md
2026-06-17 19:28:23 -07:00
Eric 24df3e8fac [eric] backend: fast-fail is_running() to kill the ~18s cold-start event-loop freeze
- faulthandler on the signed cold build caught the asyncio loop frozen in
  socket.create_connection inside is_running() (process.py): a synchronous
  httpx.get to "localhost:20128" called ~5x on the boot path before 9Router is up
- on Windows a dead-port connect to "localhost" stalls ~7s each (tries ::1 first,
  loopback refusal is slow), freezing the loop ~18s so uvicorn could not answer
  the health probe -> cold backend-http-ready was ~23s
- fix: probe 127.0.0.1 with a 0.3s TCP timeout first (measured 306ms vs ~7s), only
  HTTP-confirm when the port is open; 9Router binds 0.0.0.0 so reachability is
  unchanged. drop the faulthandler diagnostic from main.py
2026-06-17 19:06:10 -07:00
Eric 90aa66f6ce [eric] backend: timestamp each startup background task to pin the cold-start loop stall
- instrumented cold v1.3.88 proved the lifespans are 141ms even cold; the ~18s
  cold gap is a backgrounded create_task blocking the event loop AFTER lifespan
  startup but BEFORE uvicorn reports ready (what the health probe waits on)
- add [perf] entry/segment logs to the post-startup background tasks: mcp refresh,
  skill refresh, 9router ensure (+ prelude bisection), and svc._post/_post_or_spool
- logging only, no behavior change; next cold log names the exact blocking call
2026-06-17 18:11:46 -07:00
ciregenz 6b8750efaf [eric] 9router: rotate the unbounded request-details log + cap node heap, fixes the idle OOM crash 2026-06-17 16:20:59 -07:00
Eric bca0050dcb [eric] perf: start 9router in background instead of blocking the http bind
- service lifespan was awaiting ensure_9router (~7.4s, up to ~18s cold) on the boot path

- dispatch already ensures it lazily; serialize ensure_running so no double-spawn

- cuts warm backend-ready ~9-10s toward ~2-3s
2026-06-16 21:59:16 -07:00
ciregenz 9d1ff22a41 [eric] 9router: verify-at-boot, report why a start failed (no silent DEVNULL) + no dev-npm fallback in packaged 2026-06-16 04:55:14 -07:00
ciregenz f93d6e02d1 [eric] 9router: port the 0.4.x /api auth gate (x-9r-cli-token) to unblock a version bump 2026-06-14 20:27:39 -07:00
eric 5fdbc3ab79 [eric] router: revert dev pin to 0.3.60 (0.4.x adds an api auth gate that 401s our oauth/provider-sync calls, breaking every subscription connect); documented what porting the bump needs 2026-06-01 08:27:00 -07:00
eric f40d3b3b95 [eric] router: bump dev 9router pin 0.3.60 -> 0.4.66 to test websearch rework + opus-4-8/gpt-5.5 sub routes (prod pin stays 0.3.60 until websearch verified live) 2026-06-01 08:12:35 -07:00
ciregenz fa57be6bbb [eric] tree: group foundational agent modules under agents/core 2026-05-23 13:05:15 -07:00
ciregenz 4f016a0f9e [eric] split: nine_router into process/sync/oauth package 2026-05-23 02:56:31 -07:00