Armin Ronacher
d5475a3ccd
chore: merge main into codemode
2026-09-22 15:43:38 +02:00
Mario Zechner
d201760ffe
Merge remote-tracking branch 'origin/main'
2026-09-22 13:56:53 +02:00
Mario Zechner
8158b03213
feat(durable): add versioned document storage
...
Replace persisted inputs with strict input and passive-write submissions. Add atomic document bases, deltas, historical reads, reincarnation, reclamation, and indexed memory queries.
2026-09-22 13:54:50 +02:00
Ramiz Wachtler
95fbc04997
docs(coding-agent): update changelog with --mode validation fix ( #9877 )
2026-09-22 08:40:15 +02:00
Ramiz Wachtler
e40126f578
fix(coding-agent): reject invalid --mode values
...
fixes #9045
2026-09-22 08:29:57 +02:00
Armin Ronacher
1a584a7a56
feat(ai,coding-agent): add Grok 4.7 support
2026-09-22 00:07:34 +02:00
David Brailovsky
1b6ddca87c
fix(ai): omit empty text parts from multimodal user messages
...
Prevent OpenAI-compatible providers from rejecting image-only prompts.
Fixes #9797
2026-09-21 21:48:11 +02:00
Armin Ronacher
4c8eb393c7
Add [Unreleased] section for next cycle
2026-09-21 18:31:58 +02:00
Armin Ronacher
16787ad5b2
Release v0.87.0
v0.87.0
2026-09-21 18:31:52 +02:00
Armin Ronacher
eaf72ed4d8
fix(coding-agent): update stale test expectations
2026-09-21 18:26:29 +02:00
Armin Ronacher
7f06f9cf16
docs(coding-agent): complete unreleased changelog
2026-09-21 17:22:53 +02:00
Ramiz Wachtler
8c72793785
fix(tui): prevent jump-to-end label from shifting when scrollbar hides ( #9842 )
...
- center the label independently of scrollbar visibility
- clip drawing and click bounds before the scrollbar
- fixes #9136
2026-09-21 17:16:06 +02:00
Armin Ronacher
aef5fc429b
fix(coding-agent): keep prompt and tool state across context handlers ( #9846 )
...
Since 0.86 the prompt and tool declarations live in transcript system
messages, so a context handler that filters or slices messages could drop
them. After extension-driven compaction this sent requests without built-in
tools and made Codex emit raw tool-call text.
context handlers now see the conversation only. An unchanged list keeps the
transcript as is; a changed list gets the replayed prompt sections and tool
declarations as one leading system message. Handler-added system messages
are kept after it.
Add context_with_system, which runs after every context handler on the full
transcript and sends its result verbatim, for extensions that need to edit
system messages per request. Dropping the leading system message is reported
as an extension error.
closes #9789 , closes #9822
2026-09-21 17:14:22 +02:00
Mario Zechner
466db0fecd
feat: add canonical session context boundaries
...
Make SessionManager projections authoritative for provider requests, add append-only context edits and actionable turn boundaries, and preserve existing queue scheduling during continuation and recovery.
2026-09-21 16:59:20 +02:00
Mario Zechner
10d1ad621f
feat: add transactional replicated state
2026-09-21 16:07:59 +02:00
Armin Ronacher
9ac95c7151
docs(coding-agent): audit unreleased changelog
2026-09-21 16:03:40 +02:00
Christian Klotz and Geet Khosla
b6419322e6
fix(coding-agent): report invalid prompt frontmatter ( #9830 )
...
Fixes #9354
Co-authored-by: Geet Khosla <geetkhosla@gmail.com >
2026-09-21 15:22:17 +02:00
Christian Klotz
1e0fe20497
fix(coding-agent): allow offline bug report exports ( #9841 )
2026-09-21 14:54:57 +02:00
Armin Ronacher
c7cdb460aa
fix(coding-agent): reject bug reports offline
2026-09-21 10:49:12 +02:00
David Brailovsky
47a18e37b1
fix: require complete GIF image signatures
...
Require GIF87a or GIF89a headers to avoid classifying text files beginning with GIF as images.
Fixes #9755
2026-09-21 10:30:42 +02:00
Armin Ronacher
8bfef4de88
fix(ai): update strict mode test expectations
2026-09-21 09:39:21 +02:00
Armin Ronacher
890f920884
fix(ai): default unknown providers to non-strict tools ( closes #9816 )
2026-09-21 01:14:53 +02:00
Armin Ronacher
63787ee6ba
feat(coding-agent): identify extensions in crash stacks
2026-09-21 01:00:43 +02:00
Armin Ronacher
f5c946480c
feat(ai,coding-agent): add image input limits ( closes #9631 )
2026-09-20 22:59:16 +02:00
Armin Ronacher
3390bd9363
fix(coding-agent): skip late cache warming refreshes
2026-09-20 15:53:22 +02:00
Armin Ronacher
19451accde
Add [Unreleased] section for next cycle
2026-09-20 13:04:18 +02:00
Armin Ronacher
13cbf77df2
Release v0.86.1
v0.86.1
2026-09-20 13:04:11 +02:00
Armin Ronacher
68f98022e3
docs: audit Cerebras fix changelog entries
2026-09-20 13:00:29 +02:00
Armin Ronacher
199160a6a8
docs(coding-agent): document inherited z.ai overflow fix
2026-09-20 13:00:00 +02:00
EdenGottlieb
af7359b904
fix(ai): exclude Cerebras from supportsStrictMode ( #9804 )
...
Make strict mode as unsupported in cerebras, as mixed strict/unstrict tool usage doesn't work (400 from API), and extensions may define both strict and unstrict tools
2026-09-20 12:52:18 +02:00
Armin Ronacher
0e283203c7
fix(ai): detect z.ai prompt-too-long errors
...
closes #9805
2026-09-20 12:46:49 +02:00
Armin Ronacher
6dff740fab
fix(coding-agent): restore OSC 52 clipboard fallback for headless sessions
...
3349e1db1 (#9618 ) limited OSC 52 to SSH/mosh so a desktop terminal that ignores
it no longer reports a false success. That also disabled the only clipboard
route for containers and WSL without WSLg, which have no display to gate on.
Emit OSC 52 again on display-less Linux. On WSL, write the Windows clipboard
through PowerShell (verified, no OSC 52 size cap), preferring OSC 52 in
Windows Terminal where it is known to work. Desktop sessions with a display
still report the failure.
closes #9688
2026-09-20 12:42:15 +02:00
Armin Ronacher
ee2df312e5
docs: audit post-release changelog entries
2026-09-20 12:15:11 +02:00
Armin Ronacher
d875512cc4
fix(coding-agent): suppress bug hints for expected failures
2026-09-20 12:06:14 +02:00
Armin Ronacher
60740991c0
feat(coding-agent): cache compiled Node CLI modules
2026-09-20 12:06:14 +02:00
Alexey Zaytsev
b73412a378
feat(ai,coding-agent): add Meta provider with Muse subscription OAuth ( #9096 )
...
Device authorization flow against auth.meta.com mints a Model API key via the Muse Code key-mint endpoint. Identity token stored as refresh, minted key as access; daily re-mint via the standard OAuth scheduler. Identity is non-renewable (no refresh grant), so mint 401/403 directs to /login meta. Models sourced from models.dev; default muse-spark-1.3.
2026-09-20 11:13:43 +02:00
Armin Ronacher
d1230ea200
fix(coding-agent): preserve multiline bug descriptions
2026-09-20 01:40:27 +02:00
Armin Ronacher
50d766cba2
Add [Unreleased] section for next cycle
2026-09-20 01:00:48 +02:00
Armin Ronacher
ecac0a9c4e
Release v0.86.0
v0.86.0
2026-09-20 01:00:41 +02:00
Armin Ronacher
12032deb70
docs: complete unreleased changelog audit
2026-09-20 00:55:19 +02:00
Armin Ronacher
dd01f5b240
fix(coding-agent): speed up recent session discovery
2026-09-20 00:50:10 +02:00
Armin Ronacher
dfbf793b78
feat(coding-agent): load session picker progressively
2026-09-20 00:48:26 +02:00
梧桐雨 and Armin Ronacher
21b8cc1a4b
fix(coding-agent): ignore stale tool image conversions ( #8743 )
...
Co-authored-by: Armin Ronacher <armin.ronacher@active-4.com >
2026-09-20 00:38:42 +02:00
Armin Ronacher
803f0e906d
fix(tui): preserve fullscreen images in WezTerm
...
closes #9169
2026-09-20 00:25:51 +02:00
初心Yearth
d7951ec362
fix(tui): rank skill autocomplete by bare name ( #9120 )
2026-09-20 00:25:43 +02:00
Armin Ronacher
b7f7881949
fix(coding-agent): await terminal remote prompt event
2026-09-19 23:33:02 +02:00
Armin Ronacher
fa0e1f48ac
fix(tui): improve LaTeX compatibility and layouts
...
closes #8827
2026-09-19 23:28:04 +02:00
Armin Ronacher
40c256cccb
feat(coding-agent): defer extension loader dependencies
...
Load ordinary jiti lazily on Node while retaining jiti/static for Bun and SEA binaries. This closes #9540 .
2026-09-19 23:25:47 +02:00
xu0o0
bfa6862400
fix(tui): handle CJK punctuation in file autocomplete ( #9746 )
2026-09-19 21:53:26 +02:00
Armin Ronacher
c596d09d9c
feat(coding-agent): add prompt cache warming ( #9668 )
2026-09-19 21:18:15 +02:00