Commit Graph

33265 Commits

Author SHA1 Message Date
Patrick Erichsen
efb7d426cf fix(browser): reject ax<N> refs in act path instead of timing out (#69924) 2026-04-21 18:43:27 -07:00
claycurry
6a68f1dd57 Docs: link feature cards to relevant pages
Link docs feature cards to their intended destination pages in the English docs surfaces.

- add hrefs to the feature cards in docs/concepts/features.md
- add hrefs to the key capability cards in docs/index.md
- preserve current main branch copy while landing the navigation fix
2026-04-21 20:36:55 -05:00
Peter Steinberger
fb9a21ae8f fix: centralize draft preview finalization 2026-04-22 02:32:55 +01:00
Peter Steinberger
ffef84dea7 ci: start runtime tests without dist 2026-04-22 02:27:03 +01:00
Peter Steinberger
e5909f3e5d ci: scope mlx helper as macos native 2026-04-22 02:19:58 +01:00
Peter Steinberger
e836b5b6d7 ci: isolate mlx from macos swift checks 2026-04-22 02:12:07 +01:00
Peter Steinberger
710e4e9e51 ci: widen package boundary cache inputs 2026-04-22 01:53:22 +01:00
Gustavo Madeira Santana
f4478a142a Fix channel presence gating for disabled plugins (#69862)
Merged via squash.

Prepared head SHA: f76f6212b2
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-04-21 20:51:09 -04:00
Peter Steinberger
eb6006730d fix(line): guard outbound media targets 2026-04-22 01:48:14 +01:00
Peter Steinberger
66576f3355 test(extensions): fix lint-clean test assertions 2026-04-22 01:43:18 +01:00
Peter Steinberger
d57fe63ee0 ci: cache package boundary artifacts 2026-04-22 01:42:44 +01:00
Peter Steinberger
5c74e9da01 fix(qqbot): avoid eager storage directory creation 2026-04-22 01:42:10 +01:00
Peter Steinberger
540171ddbd docs: clarify ACP delivery model 2026-04-22 01:32:20 +01:00
Peter Steinberger
73d9746e6a ci: reuse swift build cache for unchanged inputs 2026-04-22 01:30:40 +01:00
Peter Steinberger
ce05418930 ci: preserve exact swift build cache 2026-04-22 01:26:05 +01:00
Gustavo Madeira Santana
819d15481d fix: validate plugin source entries before runtime inference (#69868)
Merged via squash.

Prepared head SHA: b67644cdda
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-04-21 20:12:19 -04:00
Gustavo Madeira Santana
19354c9a6a fix(discord): keep slash follow-ups ephemeral (#69869)
Merged via squash.

Prepared head SHA: 0f5ab77156
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-04-21 20:02:59 -04:00
Ron Cohen
08bc16853e WhatsApp: add group and direct system prompt support (#59553)
Merged via squash.

Prepared head SHA: 63e2b50e01
Co-authored-by: Bluetegu <1525690+Bluetegu@users.noreply.github.com>
Co-authored-by: omarshahine <10343873+omarshahine@users.noreply.github.com>
Reviewed-by: @omarshahine
2026-04-21 16:40:32 -07:00
Gustavo Madeira Santana
06a6dd5a6b chore(docs): update stale docs ref 2026-04-21 19:33:36 -04:00
Peter Steinberger
37463af5e1 ci: increase package boundary compile concurrency 2026-04-22 00:26:03 +01:00
Onur Solmaz
99787dbf45 docs(skills): add duplicate triage maintainer skill (#69780)
* docs(skills): add duplicate triage maintainer skill

* docs(skills): align duplicate triage with prtags sync

* docs(skills): remove local paths from duplicate triage skill

* docs(skills): use pr-search-cli naming consistently

* docs(skills): fix pr-search-cli command usage

* docs(skills): use tested release install commands

* docs(skills): treat prtags comment sync as automatic

* docs(skills): adjust duplicate triage skill title

* docs(skills): add duplicate triage UI metadata
2026-04-22 01:18:07 +02:00
Peter Steinberger
85c63942a5 ci: skip swift package patch in macos node lane 2026-04-22 00:16:45 +01:00
Peter Steinberger
a426ef5b6a ci: preserve swift build cache hits 2026-04-22 00:12:03 +01:00
Bek
e116b343b2 feat(slack): Annotate inbound Slack mention tokens in Slack RawBody and BodyForAgent content so the agent sees both the actionable Slack mention token and a human-readable name. (#65731)
* Annotate inbound Slack mentions in raw bodies

* Avoid shared regex state in Slack mention rendering

* Bound Slack mention lookups with concurrency

* slack: keep mention concurrency helper plugin-local

* test: stabilize node core CI assertions

* slack: cap mention lookups per inbound message

* test: reset suite gateway runtime state

* fix(slack): reuse plugin sdk concurrency helper
2026-04-21 19:03:50 -04:00
Peter Steinberger
6bf56d8637 ci: cap android checkout and use build cache 2026-04-22 00:02:40 +01:00
Peter Steinberger
cc8ecde364 ci: avoid external gradle action in android checks 2026-04-21 23:56:52 +01:00
Peter Steinberger
6966f018f7 ci: quiet mlx swift manifest warnings 2026-04-21 23:52:04 +01:00
Peter Steinberger
e822e71410 ci: cap stuck checkout retries 2026-04-21 23:47:17 +01:00
Peter Steinberger
df3fcbd716 test: lazy-load openai provider catalog contract 2026-04-21 23:35:37 +01:00
Bek
70683179a0 fix(slack): narrow first turn context seeding to remove redundant thread-starter content (#68402)
Fix Slack thread bootstrap replaying the bot's own prior turns into new sessions and duplicating the thread-starter prompt block.

Narrows first-turn context seeding to exclude only the current Slack bot's own starter/history entries, so self-authored turns no longer pollute new session prompts while preserving human and third-party bot context

Removes the redundant plain-text starter prelude in runPreparedReply() that doubled thread-starter content when no ThreadHistoryBody was present
2026-04-21 18:28:34 -04:00
Peter Steinberger
acf67c1a42 docs: tighten optimizetests skill 2026-04-21 23:24:51 +01:00
Bek
dfe0e49c8a fix(qmd): Dedup in-flight manager creation so only one full QMD manager arms per agent/config at a time, eliminating the concurrent exportSessions() collisions that triggered path changed during write errors (#65226)
Fixes concurrent manager creation races that caused SafeOpenErrors during session export.

Deduplicates in-flight manager creation so only one full QMD manager arms per agent/config at a time, eliminating the concurrent exportSessions() collisions that triggered path changed during write errors
Resolves and snapshots runtime inputs before cache reuse, replacing stale managers atomically when workspace/config changes, and aborting queued export work promptly on close()
2026-04-21 18:22:21 -04:00
Bek
1acb094579 fix: wrap oversized session lines before JSONL write (#64494)
updates the real session-export path so pathological transcript messages no longer become a single toxic export line for downstream indexing.
2026-04-21 18:18:22 -04:00
Gustavo Madeira Santana
66add9fcd9 perf(cli): lazy-load doctor plugin paths (#69840)
Merged via squash.

Prepared head SHA: ebf93ad913
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-04-21 18:17:19 -04:00
Bek
0e1d324dd8 fix(agents): Wake active requester sessions for subagent completions while keeping dormant sessions externally deliverable (#62963)
Route subagent completion announces through embedded-run wake for active requesters, preserve external delivery for dormant ones
2026-04-21 18:13:53 -04:00
Bek
14dcbd4044 fix(prompt): align system prompt messaging and subagent routing guidance (#64059)
replace legacy `to` with `target` in prompt
2026-04-21 18:10:53 -04:00
Peter Steinberger
824c4785e4 test: speed channel contract suites 2026-04-21 23:09:22 +01:00
Devin Robison
ee316dbc4b fix(tlon): guard memex upload target (#69794)
* fix(tlon): guard memex upload target

* fix(tlon): harden guarded memex upload

* fix(tlon): validate hosted memex upload targets

* fix(tlon): tighten hosted domain matching

* fix(tlon): reject non-standard memex upload ports

* fix(tlon): disable memex upload redirects

* test(tlon): drop redundant mock resets in memex upload test

* chore(lint): update tlon raw-fetch allowlist for guarded memex upload

* fix(tlon): reject unparseable ship URLs in hosted-ship classifier

* fix(lint): point tlon raw-fetch allowlist at fetch callee lines

* fix(tlon): guard custom-S3 upload through fetchWithSsrFGuard

* fix(tlon): preserve scheme-less hosted ship routing and allow explicit :443

* docs(changelog): note tlon upload guard

* fix(tlon): guard memex lookup and private s3 opt-in

* fix(tlon): validate upload result URLs
2026-04-21 15:57:49 -06:00
Peter Steinberger
74668ea8a1 fix(image-generation): log provider fallback failures 2026-04-21 22:50:09 +01:00
Vincent Koc
b5c4aaf2a7 fix(install): mirror node-domexception override for npm (#69819)
* fix(install): mirror node-domexception override for npm

* docs(changelog): credit npm install override fix

* fix(install): pin domexception override exactly

* docs(changelog): drop leftover npm fix merge markers

* Update CHANGELOG.md
2026-04-21 14:45:05 -07:00
Peter Steinberger
d1e3789e15 test: optimize slow test hotspots 2026-04-21 22:42:08 +01:00
Bek
49b233caa1 fix(slack): preserve thread aliases in runtime outbound sends (#62947)
Slack-threaded direct sends that go through the generic runtime wrapper now stay in the intended thread when the caller supplies threadTs.
2026-04-21 17:40:47 -04:00
Vincent Koc
475e6ff1d1 docs(gateway): replace user-facing 'extension' references with 'plugin' per terminology rules 2026-04-21 14:39:10 -07:00
Peter Steinberger
d2f68af615 docs: document Ollama image understanding 2026-04-21 22:33:56 +01:00
Vincent Koc
f1f6214fd5 docs(help): add frontmatter to gpt54-codex parity docs 2026-04-21 14:29:58 -07:00
Peter Steinberger
e71e543350 fix: route explicit image describe models 2026-04-21 22:25:45 +01:00
Peter Steinberger
a7ff7dd945 docs: note Ollama image routing (#69816) (thanks @soloclz) 2026-04-21 22:25:45 +01:00
soloclz
9a22cd212b fix(ollama): register media-understanding provider so image tool can route ollama/* models
Ollama chat models already support image inputs (extensions/ollama/src/stream.ts
extracts image parts and forwards them via the Ollama API), but the ollama
plugin did not register a MediaUnderstandingProvider. The image tool's provider
registry therefore had no 'ollama' entry, so requests like
`imageModel: 'ollama/qwen2.5vl:7b'` failed to resolve and fell back to
unrelated providers.

Register ollamaMediaUnderstandingProvider with:
- capabilities: ['image']
- describeImage/describeImages wired to the shared core helpers (reuses the
  same pi-ai complete path Ollama chat already goes through)
- no defaultModels or autoPriority: Ollama vision support depends on which
  model the user has pulled, so we don't pick a canonical default and don't
  auto-steal image duty from configured providers.

Fixes #69071 (and supersedes #60280).
2026-04-21 22:25:45 +01:00
Vincent Koc
b2f96f7f05 docs(providers): alphabetize Cloudflare/ComfyUI and vLLM/Vydra entries 2026-04-21 14:25:31 -07:00
Devin Robison
7be82d4fd1 fix(openshell): pin host writes to sandbox root (#69797)
* fix(openshell): pin host writes to sandbox root

* fix(openshell): use plugin sdk infra runtime

* fix(openshell): reject symlink write targets

* chore(changelog): note openshell sandbox write fix
2026-04-21 15:18:28 -06:00