* fix(tui): dedupe solid-js and @opentui/solid to fix "No renderer found" startup crash
The bundled CLI shipped with two copies of solid-js and two copies of
@opentui/solid since 7.2.1. Each duplicated copy of solid-js and
@opentui/solid creates its own RendererContext token via createContext(),
so the context provided by render() (using one copy) is invisible to
useRenderer() calls resolved against the other copy. A reactive setStore
early in boot triggers a cascade that crosses the copy boundary and
explodes with "Error: No renderer found", preceded by the warning
"You appear to have multiple instances of Solid."
Two duplications were responsible:
1. solid-js: @opentui/solid@0.1.87 declares an exact "solid-js": "1.9.9"
dependency, so bun installed a nested solid-js@1.9.11 inside
node_modules/@opentui/solid/node_modules while the rest of the
workspace used the catalog solid-js@1.9.12 at the top level. Force
dedupe via a root override.
2. @opentui/{core,solid}: packages/kilo-gateway pinned dev/peer
versions to 0.1.75 while opencode used 0.1.87. With kilo-gateway's
tui module imported by opencode in 7.2.1+, both versions were
bundled side-by-side. Bump kilo-gateway's pins to 0.1.87 to match.
Verified locally with a --single build on macOS arm64: pre-fix the binary
crashes on startup with the Solid error; post-fix it boots cleanly. Bundle
shrinks ~16KB from removing the duplicated solid-js copy.
* fix: Upgrade stale version with catalog:
---------
Co-authored-by: Brendan DeBeasi <brendandebeasi@users.noreply.github.com>
Co-authored-by: Johnny Amancio <johnnyeric@gmail.com>
Extract `disposeAllInstancesAfterProviderAuthCallback` into a dedicated
module and invoke it from the provider OAuth callback handler instead of
coupling it to the ProviderAuth layer. This removes the InstanceStore
dependency from `ProviderAuth.layer`.
Additional changes:
- Add `--cloud-fork` CLI option to the run command for fetching sessions
from cloud and continuing locally
- Replace the Zod-bridged `Schema.Any` indexing config with a native
Effect `IndexingSchema` definition in kilo-indexing, propagating typed
config through the SDK OpenAPI spec
- Use `optionalOmitUndefined` for `recommendedIndex` to emit clean JSON
- Fix `request.source.signal` access by guarding with `instanceof Request`
- Replace `Effect.catchAllCause` with `Effect.catchCause` in telemetry
- Migrate tests from `BashTool` to `ShellTool`, extract `TestConfig`
fixture, and convert stats-subagent-cost tests to use `testEffect`
- Reorder SDK event union members to match updated OpenAPI schema
- Export `aggregateSessionStats` for Kilo regression test coverage
- Widen `setViewedSessions` input to accept readonly arrays