Shakker
511f42d8a3
fix: keep acp telegram replies durable
2026-05-08 08:14:29 +01:00
Peter Steinberger
59fb9e5ca7
refactor: unify lazy import loaders
2026-05-02 10:55:59 +01:00
Peter Steinberger
2d8d50d418
fix: track diagnostic progress before stuck warnings
2026-05-02 00:35:17 +01:00
Peter Steinberger
249cb54373
fix: keep acp typing for tool-only replies
2026-04-28 09:58:18 +01:00
scoootscooob
3c636208b0
fix(messages): keep group replies tool-only by default
...
Rewrites the always-on reply handling so group/channel rooms default to message-tool-visible output, while `messages.groupChat.visibleReplies: \"automatic\"` preserves legacy auto-posting.\n\nThanks @scoootscooob.
2026-04-28 07:36:43 +01:00
luyao618
2b578c3a9e
fix(agents): pass agentDir to media understanding in ACP dispatch path
...
The ACP dispatch path calls applyMediaUnderstanding without the agentDir
parameter. This prevents the media understanding pipeline from locating
agent-specific models.json and auth profiles, causing image understanding
to fail silently for non-visual models configured with a separate image
understanding model.
The non-ACP reply path (get-reply.ts) already passes agentDir correctly.
This aligns the ACP path with the same behavior.
Closes #55046
AI-assisted (built with Hermes orchestration).
2026-04-27 21:19:45 +01:00
Peter Steinberger
d419fb561d
feat(tts): resolve channel account config generically
2026-04-26 08:10:36 +01:00
Peter Steinberger
cf834e2a21
fix(tts): clean streamed directive text
2026-04-26 04:09:56 +01:00
Peter Steinberger
0ca952cdd5
feat(tts): add per-agent voice overrides
2026-04-26 02:54:13 +01:00
Peter Steinberger
dd78b7f773
fix: harden OpenCode ACP bind dispatch
2026-04-25 13:38:58 +01:00
Peter Steinberger
5b59079fd4
fix(tts): preserve audio-only hook transcript
2026-04-25 06:28:54 +01:00
Peter Steinberger
3e2bc28e51
fix: forward chat images to acp dispatch
2026-04-23 19:06:19 +01:00
Peter Steinberger
b722273acb
refactor: share inbound media detection
2026-04-20 14:27:26 +01:00
Vincent Koc
796d4dfc49
fix(reply): split dispatcher shared types
2026-04-11 16:52:18 +01:00
Vincent Koc
74e7b8d47b
fix(cycles): bulk extract leaf type surfaces
2026-04-11 13:26:50 +01:00
Peter Steinberger
669b352d36
refactor: dedupe auto-reply trimmed readers
2026-04-08 00:09:42 +01:00
Peter Steinberger
b2dc25cd12
fix: repair ci type narrowing
2026-04-07 17:51:05 +01:00
Peter Steinberger
cebfa70277
refactor: dedupe auto-reply lowercase helpers
2026-04-07 17:50:37 +01:00
Peter Steinberger
74ea9de6f2
refactor: dedupe reply lowercase helpers
2026-04-07 10:37:39 +01:00
Peter Steinberger
f1bdfca1ed
refactor: dedupe reply gateway helpers
2026-04-07 10:37:39 +01:00
Peter Steinberger
ea7297b344
refactor: dedupe reply control readers
2026-04-07 06:42:33 +01:00
Peter Steinberger
d9f1c61361
refactor: dedupe reply session readers
2026-04-07 06:07:14 +01:00
Peter Steinberger
9b7c0bf8e9
refactor: dedupe auto-reply error formatting
2026-04-07 02:03:34 +01:00
Peter Steinberger
dcfc1f16ed
test: split ACP attachment resolution from dispatch flow
2026-04-05 18:51:13 +01:00
Peter Steinberger
adbcfbe2bb
perf: skip acp runtime work for no-media and no-command turns
2026-04-05 17:58:38 +01:00
Peter Steinberger
934641df86
perf(auto-reply): defer ACP runtime imports
2026-04-05 15:27:43 +01:00
Peter Steinberger
64d9b65b56
style(core): format reply and infra helpers
2026-04-04 06:02:47 +01:00
Tak Hoffman
01534d9bd5
fix: honor acp projector default account
2026-04-03 16:49:16 -05:00
Tak Hoffman
037da3ce34
fix: honor acp dispatch default account
2026-04-03 16:26:41 -05:00
Jacob Tomlinson
566fb73d9d
reply: enforce ACP attachment roots ( #57690 )
...
* reply: enforce ACP attachment roots
* media: harden local attachment cache reads
* reply: clarify ACP attachment skip logs
* reply: keep ACP attachments path-only
2026-03-30 14:04:02 +01:00
Mariano
17c36b5093
Gateway: track background task lifecycle ( #52518 )
...
Merged via squash.
Prepared head SHA: 7c4554204e
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-03-29 12:48:02 +02:00
助爪
443295448c
Track ACP sessions_spawn runs and emit ACP lifecycle events ( #40885 )
...
* Fix ACP sessions_spawn lifecycle tracking
* fix(tests): resolve leftover merge markers in sessions spawn lifecycle test
* fix(agents): clarify acp spawn cleanup semantics
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-03-29 18:20:10 +09:00
Frank Yang
c14b169a1b
fix(acp): repair stale bindings after runtime exits ( #56476 )
...
* fix(acp): repair stale bindings after runtime exits
* fix(acp): narrow stale binding recovery
* fix(acp): preserve policy gating for stale sessions
* fix(acp): handle signal exits and canonical unbinds
* fix(acp): harden canonical stale-session recovery
2026-03-29 01:15:16 +08:00
Ayaan Zaidi
4b1c37a152
fix: avoid duplicate ACP Telegram finals ( #55173 )
...
* fix: avoid duplicate final ACP text on telegram
* fix: keep ACP final fallback for non-telegram blocks
* fix: count telegram ACP block replies as success
* fix: recover ACP final fallback after block failures
* fix: settle telegram ACP block delivery before fallback
* test: isolate ACP dispatch mocks under shared workers
* fix: prefer telegram provider for ACP visibility
2026-03-26 20:37:21 +05:30
Peter Steinberger
d58d90074f
refactor: isolate ACP final delivery flow
2026-03-24 10:36:46 -07:00
Peter Steinberger
69a0a6c847
fix: tighten ACP final fallback semantics ( #53692 ) (thanks @w-sss)
2026-03-24 10:29:27 -07:00
w-sss
7b8142997f
fix(acp): deliver final result text as fallback when no blocks routed
...
- Check routedCounts.final to detect prior delivery
- Skip fallback for ttsMode='all' to avoid duplicate TTS processing
- Use delivery.deliver for proper routing in cross-provider turns
- Fixes #46814 where ACP child run results were not delivered
2026-03-24 10:28:33 -07:00
Bob
aa6b962a3a
Discord/ACP: forward abort signals into ACP turns ( #52148 )
...
* Discord/ACP: forward abort signals into ACP turns
* ACP: abort queued turns before actor start
2026-03-22 10:04:32 +01:00
Mariano
3c3474360b
acp: harden follow-up reliability and attachments ( #41464 )
...
Merged via squash.
Prepared head SHA: 7d167dff54
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-03-09 23:03:50 +01:00
Mariano
4aebff78bc
acp: forward attachments into ACP runtime sessions ( #41427 )
...
Merged via squash.
Prepared head SHA: f2ac51df2c
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com >
Reviewed-by: @mbelinky
2026-03-09 22:32:32 +01:00
Onur
43c57005a6
ACP: start typing lifecycle at turn start and harden delivery
2026-03-01 20:39:24 +01:00
Onur
752398a6ba
Refactor: split ACP dispatch delivery and settings
2026-03-01 20:39:24 +01:00
Onur
2466a9bb13
ACP: carry dedupe/projector updates onto configurable acpx branch
2026-03-01 20:39:24 +01:00
Onur Solmaz
a7d56e3554
feat: ACP thread-bound agents ( #23580 )
...
* docs: add ACP thread-bound agents plan doc
* docs: expand ACP implementation specification
* feat(acp): route ACP sessions through core dispatch and lifecycle cleanup
* feat(acp): add /acp commands and Discord spawn gate
* ACP: add acpx runtime plugin backend
* fix(subagents): defer transient lifecycle errors before announce
* Agents: harden ACP sessions_spawn and tighten spawn guidance
* Agents: require explicit ACP target for runtime spawns
* docs: expand ACP control-plane implementation plan
* ACP: harden metadata seeding and spawn guidance
* ACP: centralize runtime control-plane manager and fail-closed dispatch
* ACP: harden runtime manager and unify spawn helpers
* Commands: route ACP sessions through ACP runtime in agent command
* ACP: require persisted metadata for runtime spawns
* Sessions: preserve ACP metadata when updating entries
* Plugins: harden ACP backend registry across loaders
* ACPX: make availability probe compatible with adapters
* E2E: add manual Discord ACP plain-language smoke script
* ACPX: preserve streamed spacing across Discord delivery
* Docs: add ACP Discord streaming strategy
* ACP: harden Discord stream buffering for thread replies
* ACP: reuse shared block reply pipeline for projector
* ACP: unify streaming config and adopt coalesceIdleMs
* Docs: add temporary ACP production hardening plan
* Docs: trim temporary ACP hardening plan goals
* Docs: gate ACP thread controls by backend capabilities
* ACP: add capability-gated runtime controls and /acp operator commands
* Docs: remove temporary ACP hardening plan
* ACP: fix spawn target validation and close cache cleanup
* ACP: harden runtime dispatch and recovery paths
* ACP: split ACP command/runtime internals and centralize policy
* ACP: harden runtime lifecycle, validation, and observability
* ACP: surface runtime and backend session IDs in thread bindings
* docs: add temp plan for binding-service migration
* ACP: migrate thread binding flows to SessionBindingService
* ACP: address review feedback and preserve prompt wording
* ACPX plugin: pin runtime dependency and prefer bundled CLI
* Discord: complete binding-service migration cleanup and restore ACP plan
* Docs: add standalone ACP agents guide
* ACP: route harness intents to thread-bound ACP sessions
* ACP: fix spawn thread routing and queue-owner stall
* ACP: harden startup reconciliation and command bypass handling
* ACP: fix dispatch bypass type narrowing
* ACP: align runtime metadata to agentSessionId
* ACP: normalize session identifier handling and labels
* ACP: mark thread banner session ids provisional until first reply
* ACP: stabilize session identity mapping and startup reconciliation
* ACP: add resolved session-id notices and cwd in thread intros
* Discord: prefix thread meta notices consistently
* Discord: unify ACP/thread meta notices with gear prefix
* Discord: split thread persona naming from meta formatting
* Extensions: bump acpx plugin dependency to 0.1.9
* Agents: gate ACP prompt guidance behind acp.enabled
* Docs: remove temp experiment plan docs
* Docs: scope streaming plan to holy grail refactor
* Docs: refactor ACP agents guide for human-first flow
* Docs/Skill: add ACP feature-flag guidance and direct acpx telephone-game flow
* Docs/Skill: add OpenCode and Pi to ACP harness lists
* Docs/Skill: align ACP harness list with current acpx registry
* Dev/Test: move ACP plain-language smoke script and mark as keep
* Docs/Skill: reorder ACP harness lists with Pi first
* ACP: split control-plane manager into core/types/utils modules
* Docs: refresh ACP thread-bound agents plan
* ACP: extract dispatch lane and split manager domains
* ACP: centralize binding context and remove reverse deps
* Infra: unify system message formatting
* ACP: centralize error boundaries and session id rendering
* ACP: enforce init concurrency cap and strict meta clear
* Tests: fix ACP dispatch binding mock typing
* Tests: fix Discord thread-binding mock drift and ACP request id
* ACP: gate slash bypass and persist cleared overrides
* ACPX: await pre-abort cancel before runTurn return
* Extension: pin acpx runtime dependency to 0.1.11
* Docs: add pinned acpx install strategy for ACP extension
* Extensions/acpx: enforce strict local pinned startup
* Extensions/acpx: tighten acp-router install guidance
* ACPX: retry runtime test temp-dir cleanup
* Extensions/acpx: require proactive ACPX repair for thread spawns
* Extensions/acpx: require restart offer after acpx reinstall
* extensions/acpx: remove workspace protocol devDependency
* extensions/acpx: bump pinned acpx to 0.1.13
* extensions/acpx: sync lockfile after dependency bump
* ACPX: make runtime spawn Windows-safe
* fix: align doctor-config-flow repair tests with default-account migration (#23580 ) (thanks @osolmaz)
2026-02-26 11:00:09 +01:00