Skip to content

v1.3.225

Choose a tag to compare

@topcheer topcheer released this 29 Aug 17:06
· 3213 commits to main since this release

ggcode v1.3.225

Highlights

  • See the changelog below for the user-facing updates included in this release.

Compare

Changelog

  • release: v1.3.225
  • fix(desktop): write crash note straight to fd 2 instead of the dead pipe (#1314)
  • fix(tool): non-verbose go test all-pass runs get a package-count summary (#1315)
  • fix(site): restore orphaned worktree i18n entries and feature card
  • test(tool): pin #1312 kb rune-constant contract for named keys
  • fix(tmux): store lock is actually cross-process + unique temp names (#1313)
  • fix(tool): browser press named keys typed literal text instead of pressing (#1312)
  • test(agent): pin panic-containment contract of RunStreamWithContent
  • fix(panic-safety): address review findings on main-goroutine containment
  • feat(panic-safety): main-goroutine panic containment - crash journal + agent-run error conversion
  • feat(panic-safety): CI gate for unprotected goroutines + sweep of stragglers
  • fix(agent): four TIA defects in test_impact_deps (#1296)
  • fix(swarm): cap transient task retries in idle runner (#1295)
  • fix(stream): encoder Read race + Manager.Stop order defeats graceful flush (#1293, #1294)
  • fix(panic-safety): recover-guard all unprotected goroutines behind safego
  • test(session): pin #1291 backfill skip on lock failure
  • fix(session): backfill skips when session lock unavailable (#1291)
  • fix(stream): encoder graceful stop and crash reaping (#1292)
  • fix(security): mask github_pat_ fine-grained PATs in display redaction (#1289)
  • fix(runfile): Windows processExists treats ACCESS_DENIED as alive (#1290)
  • fix(provider): gemini model discovery pagination (#1288)
  • fix(provider): purge prefix-hijack poison from probe cache via v3 migration (#1287 follow-up)
  • fix(provider): known_models bare-family prefix hijacks (#1287)
  • fix(provider): openai streaming usage zero-field guards (#1286)
  • fix(plugin): clear closed flag on manager-initiated reconnect (#1285 follow-up)
  • fix(plugin): mcp_loader Close races and post-close resurrection (#1285)
  • fix(lsp): ResolveServerForWorkspace reads serverOverrides via accessor (#1284)
  • perf(lsp): cache toolchain probes (10min TTL) + raise session idle TTL to 10min
  • test(permission): pin plan-mode im send_file boundary in companion test
  • fix(permission,notify): approval-memory over-breadth, PS quote injection, im always-allowed bypass
  • fix(memory,mcp): dedup/date over-stripping, dash-fold collisions, self-conflict skip, oauth refresh race
  • fix(mcp): serverSignature prefixes normalized transport (review follow-up to #1276)
  • fix(mcp): migration accepts ws servers; every dropped entry now warns
  • fix(mcp): hang-watchdog abort closes processExit so reconnect watchers fire
  • fix(mcp): stdio hang watchdog - abort connections with zero read progress under sustained traffic
  • fix(lsp,lanchat): serverOverrides race guard; empty pull diagnostics short-circuit; DM ambiguity errors
  • fix(knight): scenario log write-side rotation; description dedup token-Jaccard gate
  • fix(knight): promote/rollback abort on snapshot failure; microsecond snapshots; index epoch guard
  • fix(knight): proposal guardrail must ignore knight bookkeeping writes
  • fix(knight): proposal read-only enforcement; governance dup detection; nameSimilar gate; eval cooldown; index error propagation
  • fix(image,knight): wayland scale to logical coords; scrot window errors; knight temp-dir exact prefixes
  • fix(im): wecom media routing + spacing/retry + pairing downgrade; whatsapp captions
  • fix(im): wechat unsupported notice only when no usable text (#1251 review)
  • fix(im): twitch WHISPER routing + write mutex + state downgrade; wechat image/voice parity
  • fix(im): markdownv2 link URLs - balanced paren matching + escape ) and backslash
  • fix(provider,tool): chained async failover in stream watcher; GUI apps carry no timeout timer
  • fix(im): tg caption merge, HTML escaping, photo 429 retry + spacing, warning-state downgrade
  • test(im): companion coverage for #1235/#1239 - claim nil-store safety, typing comment sync
  • fix(im): binding ownership guards, slack loopback + rate-limit parity, signal state/typing fixes
  • fix(agent,im): wt-invalidation re-read events, relay error propagation, qq guild mention strip, qq image rate limit
  • fix(im): nostr multi-chunk sticky error - delivered chunk must not erase an earlier total failure
  • fix(agent): verify_debt once-per-run semantics cleanup, drop vestigial lastWarnDebt
  • fix(agent): sentiment whitelist masks phrases instead of short-circuiting the line
  • fix(agent,im): unsafe multiset delta, nostr partial-relay success, pc pairing reply
  • fix(agent,im): verification command lexical gate, sentiment whitelist, matrix reply fallback, IRC unicode safety, unused-param registration