2.2.0
Changelog - kodustech/kodus-ai
2026-08-19 - 2026-09-03
π Bug Fixes
- #1782 fix: command review dropped (@jairo-litman) β³ Not yet released
closes #1700- Closes #1700: @kody review is silently dropped when a PR automation holds the lock
- π Reviewed by: @kody-ai[bot]
π Documentation
- #1807 docs: update PR file limit from 200 to 2,000 (@MatheusMartinho) β³ Not yet released
Fixes #1795
Summary
The docs still say Kody skips PRs with more than 200 changed files, but the code enforces 2,000. AGENT_MAX_FILES is set to 2000 in `libs/code-review/pipeline/stages/fetch-...
- Closes #1795: docs: update PR file limit from 200 to 2,000
- π Reviewed by: @kody-ai[bot]
π¦ Other Changes
-
#1842 fix(compose): pin Mongo off the kernel-broken releases, and gate startup on health (@Wellington01) β³ Not yet released
The 2026-09-02 release run died withgetaddrinfo ENOTFOUND db_kodus_mongodbon all four E2E cells, ten minutes into each. It read as a DNS problem. It was a database that refused to start, and then ...- Closes #54: add new methods save logs in lote
- π Reviewed by: @kody-ai[bot]
-
#1839 fix(byok): honour a configured reasoning effort, and name the live tier's secrets (@Wellington01) β³ Not yet released
Four BYOK request-shape defects, each found by capturing the wire and comparing it against what the vendor documents, plus the live test tier that keeps them found.- Closes #1828: BYOK: Claude via OpenAI-compatible gateway runs without prompt caching or thinking control; native Anthropic base URL not exposed in UI
- π Reviewed by: @kody-ai[bot]
-
#1834 test(reliability): mutation-validated review-chain coverage + #1786 recovery + LLM observability (@Wellington01) β³ Not yet released
What Test-reliability push on the code-review chain, validated by mutation testing, plus the #1786 (off-schema LLM output) recovery and greppable LLM observability. Draft β large branch. This i...
- Closes #1786: Dedup pass silently degrades to keep-all when the model ignores DEDUP_SCHEMA (duplicate review comments)
- π Reviewed by: @github-advanced-security[bot], @kody-ai[bot]
-
#1814 fix(conversation): kody proactive actions (@jairo-litman) β³ Not yet released
fixes #1809- Closes #1809: feat(conversation): kody proactive actions
- π Reviewed by: @kody-ai[bot]
-
#1738 fix(web): deep-link the PR-list suggestion count to the first finding (@andyst-dev) β³ Not yet released
Closes #1728 ## Problem Clicking the delivered-suggestion count on the PR list opened the review page at the top of the diff. On large PRs the comments are on the page but require hunting for them β c...- Closes #1728: PR list suggestion count opens the review page but does not scroll to the comments
- π Reviewed by: @kody-ai[bot], @Wellington01
- π₯ Co-authored by: @Codebuff
-
#1777 fix(task-context): never stuff issue keys into closed-enum params via anyOf/const (@andyst-dev) β³ Not yet released
Fixes #1760 ### Problem On a Bitbucket PR with a Jira key (DEV-5400),getJiraIssue(Atlassian MCP) was invoked with the issue key written intoresponseContentFormat. The tool rejected it with `-...- Closes #1760: Business-logic Jira fetch puts the issue key in getJiraIssue responseContentFormat
- π Reviewed by: @kody-ai[bot]
-
#1811 Adding scrolling to the "choose workspace" screen and reducing top sp⦠(@Nalu-devs) ⳠNot yet released
#1764- Closes #1764: Broken layout on the choose-workspace screen
- π Reviewed by: @kody-ai[bot]
-
#1796 Fix (platforms): Improving the error return UX so users can more easi⦠(@Nalu-devs) ⳠNot yet released
#1723- Closes #1723: GitLab first-connect modal traps the user when the token or repo list fails
- π Reviewed by: @kody-ai[bot]
-
#1809 feat(conversation): kody proactive actions (@jairo-litman) β³ Not yet released
closes #1761- Closes #1761: @kody is reactive-only in PR threads: never proactively offers to persist what the conversation reveals
- π Reviewed by: @kody-ai[bot]
-
#1805 fix(byok): stop v2 migration from dropping Bedrock, fallback-only and OpenRouter configs (@Wellington01) β³ Not yet released
Problem The legacyβv2 BYOK data migration (
ByokConfigV22026072918034700, runs on boot before the app starts) was losing BYOK config for real orgs. Verified against a **416-row production expo...- π Reviewed by: @kody-ai[bot]
-
#1804 fix(token-usage): show cache write as its own chart band and cost bucket (@Wellington01) β³ Not yet released
fix(token-usage): show cache write as its own chart band and cost bucket The frontend rowCost folded cache-write cost into uncachedInput (unlike the backend model-cost-calculator, which prices it sepa...- π Reviewed by: @kody-ai[bot]
-
#1803 fix(token-usage): Fix token saving when an error occurs (@sartorijr92) β³ Not yet released
> [!NOTE] > **Medium Risk** -
#1801 fix(observability): stamp the org on severity + formatter usage spans (@Wellington01) β³ Not yet released
fix(observability): stamp the org on severity + formatter usage spans classifySeverity and formatSuggestionContent ran their secondary LLM pass via LLM.run without threading organizationId, so their u... -
#1800 refactor(byok): trait-driven reasoning + temperature, remove runtime catalog (@Wellington01) β³ Not yet released
What The model "catalog" no longer exists at runtime. A model's rules β whether it reasons by default, at what effort, and how it treats temperature β are now derived from its family/provider trait...
- π Reviewed by: @github-advanced-security[bot], @kody-ai[bot]
-
#1797 fix(code-review): put the whole ignore list in the user's hands (@sartorijr92) β³ Not yet released
Reviews skipped files using two lists: the "Ignored files" setting and a hardcoded ~1100-path list under libs/common/utils/codeBase/ignorePaths, concatenated onto it at review time. Only the first was...- Closes #1768:
ignore_paths_globalhas no management surface and its default list silently skips reviews for all IaC/config PRs - π Reviewed by: @kody-ai[bot]
- π₯ Co-authored by: [@claude Opus 5](https://github.com/Claude Opus 5)
- Closes #1768:
-
#1792 fix(config): Fixing get config file data from bitbucket repo (@sartorijr92) β³ Not yet released
Closes #1791 ---- Closes #1791: File-based config triggering 429 errors on Bitbucket and breaking the web app
- π Reviewed by: @kody-ai[bot], @cursor[bot]
- π₯ Co-authored by: [@claude Opus 5](https://github.com/Claude Opus 5)
-
#1790 fix(code-review): strict BYOK tool routing with structured-output fallback (@Wellington01) β³ Not yet released
update track cache fix(observability): attribute agent-loop cost spans to prNumber/teamId The agent-loop cost span recorded prNumber undefined, so per-PR cost in the dashboard missed the finder/verify...- π Reviewed by: @kody-ai[bot]