Expand extractFilePathFromHref test coverage to handle file:// URLs on
Unix, Windows drives, and encoded characters. Previously file:// URLs
were expected to return undefined; now they resolve to local paths.
Exclude @kilocode/kilo-jetbrains from turbo typecheck filter to avoid
build errors in that package.
Re-enable @kilocode/kilo-jetbrains in bun turbo typecheck (package.json) and
bun turbo test:ci (test.yml). Add Java 21 setup to the typecheck workflow so
Gradle can run. Fix three serialization test failures:
- KiloProfile200Response with null balance / with organizations: Effect's HttpApi
OpenAPI generator emits balance and currentOrgId as non-nullable even though
the server schema uses Schema.NullOr. Add fixProfileNullable step to
OpenApiSpecNormalizer that wraps these fields in anyOf: [{schema}, {type:null}]
before Kotlin client generation, plus regression tests.
- model limit context and output deserialize with large values (NoSuchMethodError):
compileTestKotlin was not invalidated when the generated API type changed, leaving
stale bytecode referencing the old ProviderConfigModelsValueAnyOfLimit class.
Wire compileTestKotlin -> fixGeneratedApi in backend/build.gradle.kts so API
regeneration always invalidates test compilation.
Fixes#10396
Generated OpenAPI client churn (#10395) breaks the JetBrains gradle
typecheck. Exclude @kilocode/kilo-jetbrains from the root `bun typecheck`
filter so contributors and the typecheck CI workflow don't need Java/Gradle.
The jetbrains test:ci pipeline still runs the gradle typecheck via Turbo's
task graph, so the plugin remains covered in its own CI job.
The automated kilo compat transform keeps upstream's root scripts/catalog
wholesale and only re-applies a handful of Kilo-specific scripts, which
silently dropped:
- postinstall's `&& bun run script/setup-git.ts` tail (needed to set
merge.conflictStyle=zdiff3 locally, which upstream merges rely on)
- the `dev-setup` script shorthand
- kept dead `dev:desktop` / `dev:web` / `dev:console` scripts whose
target packages aren't tracked in Kilo
- kept `@sentry/solid` / `@sentry/vite-plugin` catalog entries that
have zero consumers in our tree
Add a new setup script to configure `merge.conflictStyle=zdiff3` locally
within the repository. This ensures that the common ancestor is visible
during merge conflicts, which is required for structural resolution by
`mergiraf` and simplifies manual conflict resolution.
The configuration is applied during `bun install` via the `postinstall`
hook and remains as a fallback for the upstream merge utilities.