What's Changed
- fix(gateway): SSO login button not visible after saving settings by @jacoblee-io in #112
- fix(web): fix metrics page chart sizing and route conflict by @chent1996 in #113
- feat: deep search quality gate, knowledge extraction, progressive discovery by @LikiosSedo in #111
- improve(skills): hint about test workspace when skill awaits approval by @jacoblee-io in #114
- feat: add workspace context directories (repos/ + docs/) with overview scanning by @LikiosSedo in #115
- fix: knowledge extraction schema + report paths by @LikiosSedo in #116
- fix(skills): Approvals page broken for reviewers viewing personal skills by @jacoblee-io in #117
- Fix non-admin users accessing admin-only pages and onboarding route leaks by @LikiosSedo in #119
- fix(db): force UTC timezone for mysql2 to fix audit query offset by @chent1996 in #120
- fix(db): force UTC timezone for mysql2 to fix audit query offset by @chent1996 in #121
- feat(cron): add rate limits and resource protection by @LikiosSedo in #122
- docs: align invariants/decisions/CLAUDE.md with implementation reality by @LikiosSedo in #125
- fix(ui): remove redundant environment selector from kubeconfig upload dialog by @jacoblee-io in #126
- fix(cron): use average interval and add tool-side pre-validation by @LikiosSedo in #124
- fix: allow combined short flags and add AUDIT_WRITE capability by @jacoblee-io in #127
- feat(tools): require explicit kubeconfig in multi-cluster sessions by @jacoblee-io in #128
- feat(memory): knowledge extraction pipeline improvements by @LikiosSedo in #129
- fix(deep-search): remove report file write that fails on K8s readOnlyRootFilesystem by @LikiosSedo in #131
- feat(deep-search): proportional budget allocation and enriched prior findings by @LikiosSedo in #130
- feat(agentbox): increase resource limits to 2c4g by @jacoblee-io in #133
- fix(web): clear cached user profile on logout by @jacoblee-io in #134
- refactor(dp): replace manage_checklist tool with system-event-driven checklist by @LikiosSedo in #136
- fix(web): fork_skill tool results not rendered in conversation UI by @jacoblee-io in #135
- fix(core): add compaction safeguard to prevent OOM during context compaction by @jacoblee-io in #137
- refactor(memory): simplify memory system — disable topic extraction and MEMORY.md injection by @LikiosSedo in #141
- fix(core): add tool call validation to prevent 400 errors from OpenAI-compatible APIs by @jacoblee-io in #140
- fix(deep-search): catch Phase 1 sub-agent timeout to prevent investigation failure by @LikiosSedo in #139
- fix(tui): clear hypothesis widget before opening select dialog by @LikiosSedo in #138
- feat(web,db,tools): add cluster infra context and rename environments to clusters by @jacoblee-io in #144
- feat(feedback): add interactive session feedback system by @LikiosSedo in #142
- feat: harden debug pod lifecycle — labels, cleanup, namespace, reuse, GC by @chent1996 in #145
- feat(knowledge): add team-level knowledge base by @jacoblee-io in #146
- fix(skills): auto-extract description from frontmatter, fix script deletion by @jacoblee-io in #147
- fix(web): prevent DP mode from persisting across login sessions by @LikiosSedo in #148
- feat(debug-pod): per-cluster debug image and cache isolation by @chent1996 in #149
- fix(db): add missing feedback_reports table to MySQL DDL by @LikiosSedo in #150
Full Changelog: v0.1.3...v0.1.4