Commit Graph

19241 Commits

Author SHA1 Message Date
Peter Steinberger cb5a25d8d8 fix(discord): normalize legacy streaming aliases 2026-04-12 11:52:56 -07:00
Peter Steinberger 2c590bdbc4 test(gateway): align sessions send auth token 2026-04-12 11:52:33 -07:00
Peter Steinberger 35b0586cb1 build: update A2UI bundle hash 2026-04-12 11:41:24 -07:00
Peter Steinberger 903f771c93 fix: align trace protocol artifacts 2026-04-12 11:41:24 -07:00
Vincent Koc 0fd9aa8e00 refactor(plugins): centralize manifest owner trust policy (#65459)
* refactor(plugins): share manifest owner policy helpers

* test(plugins): cover activated manifest owner policy

* fix(plugins): honor explicit disable in setup discovery
2026-04-12 19:36:03 +01:00
Peter Steinberger c8347e70da fix: align trace directive types 2026-04-12 11:30:44 -07:00
Peter Steinberger e76c2812b7 style: apply oxfmt 2026-04-12 11:28:43 -07:00
Peter Steinberger 67af6f0baf fix: restore main CI checks 2026-04-12 11:28:43 -07:00
Marcus Castro aa023e4283 refactor(whatsapp): centralize account connection lifecycle (#65427)
* refactor(whatsapp): centralize account connection lifecycle

* fix(whatsapp): harden controller open failure cleanup

* refactor(whatsapp): remove active listener fallback path

* fix(whatsapp): isolate controller registry state

* debug(whatsapp): trace typing presence updates

* docs(changelog): add whatsapp lifecycle fix note

* debug(whatsapp): log global presence mode

* chore(whatsapp): remove debug presence logs

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-04-12 15:24:49 -03:00
Tak Hoffman c37e49f275 Add /trace toggle and fix Active Memory diagnostics 2026-04-12 13:20:22 -05:00
Vincent Koc dda70915a0 fix(test): align gateway early runtime stubs 2026-04-12 19:15:08 +01:00
Vincent Koc d4fb7d893d fix(ci): repair main tsgo regressions 2026-04-12 19:14:00 +01:00
Peter Steinberger 067f27f6a2 fix: normalize stale qmd binary paths 2026-04-12 19:08:59 +01:00
Peter Steinberger 19d8069aea fix: lazy-start gateway mcp loopback 2026-04-12 19:08:58 +01:00
Marcus Castro 000fc7f233 refactor(qa): add shared QA channel contract and harden worker startup (#64562)
* refactor(qa): add shared transport contract and suite migration

* refactor(qa): harden worker gateway startup

* fix(qa): scope waits and sanitize shutdown artifacts

* fix(qa): confine artifacts and redact preserved logs

* fix(qa): block symlink escapes in artifact paths

* fix(gateway): clear shutdown race timers

* fix(qa): harden shutdown cleanup paths

* fix(qa): sanitize gateway logs in thrown errors

* fix(qa): harden suite startup and artifact paths

* fix(qa): stage bundled plugins from mutated config

* fix(qa): broaden gateway log bearer redaction

* fix(qa-channel): restore runtime export

* fix(qa): stop failed gateway startups as a process tree

* fix(qa-channel): load runtime hook from api surface
2026-04-12 15:02:57 -03:00
Vincent Koc fcae3bf943 fix(agents): preserve active-turn queued user prompts (#65478)
* fix(agents): preserve active-turn queued user prompts

* Update src/agents/pi-embedded-runner/run/attempt.prompt-helpers.ts

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* Update CHANGELOG.md

* Update CHANGELOG.md

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-12 19:02:55 +01:00
Peter Steinberger 4df9772b6e fix: trim timezone suffix from pretty logs 2026-04-12 18:58:27 +01:00
Peter Steinberger 87fa88ac3d fix: use literal runtime import for compaction 2026-04-12 18:56:27 +01:00
Peter Steinberger e24b80b15e fix: clarify escaped skill path warnings 2026-04-12 10:53:31 -07:00
Vincent Koc 6437aa8532 fix(inbound-meta): unblock Claude CLI and scrub NULs (#65467)
* fix(inbound-meta): rename schema and scrub NULs

* fix(inbound-meta): harden untrusted context blocks

* fix(inbound-meta): preserve fenced metadata blocks

* fix(inbound-meta): cap untrusted context payloads
2026-04-12 18:52:48 +01:00
Peter Steinberger 15b86ac6d0 fix: narrow qmd defaults and clawblocker memory 2026-04-12 18:52:06 +01:00
saram ali 7995e408ce fix(discord): clear stale heartbeat timers in SafeGatewayPlugin.connect() (#65087)
* fix(discord): clear stale heartbeat timers in SafeGatewayPlugin.connect()

The @buape/carbon@0.15.0 heartbeat setup has a race where stopHeartbeat()
runs before heartbeatInterval is assigned, leaving a stale setInterval with
a closed reconnectCallback. When the stale interval fires ~41s later it
throws an uncaught exception that bypasses the EventEmitter error path and
crashes the gateway process via process.on('uncaughtException').

Add a connect() override in SafeGatewayPlugin that unconditionally clears
both heartbeatInterval and firstHeartbeatTimeout before calling super. The
parent's connect() only calls stopHeartbeat() when isConnecting=false; when
isConnecting=true it returns early without clearing — this override fills
that gap.

Fixes #65009. Related: #64011, #63387, #62038.

* test(discord): assert super.connect() delegation in SafeGatewayPlugin tests

* fix(ci): update raw-fetch allowlist line numbers for gateway-plugin.ts

The connect() override added in the heartbeat fix shifted the two
pre-existing fetch() callsites from lines 370/436 to 387/453.

* docs(changelog): add discord heartbeat crash note

* test(cli): align plugin registry load-context mock

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-04-12 18:40:04 +01:00
Peter Steinberger a8e140e395 chore: bump version to 2026.4.12 2026-04-12 10:37:18 -07:00
Vincent Koc 9259e593e6 test(gateway): share transcript event waiters 2026-04-12 18:33:47 +01:00
Vincent Koc 9c2b094f3f test(gateway): share search session transcript fixtures 2026-04-12 18:32:04 +01:00
Vincent Koc a24af49100 fix(update-cli): respawn plugin refresh after self-update (#65471)
* fix(update-cli): respawn plugin refresh after self-update

* Update src/cli/update-cli/update-command.ts

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* Update CHANGELOG.md

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-12 18:26:43 +01:00
Vincent Koc f00f0a9596 fix(agents): stop leaking session lock exit listeners (#65469)
* fix(agents): stop leaking session lock exit listeners

* Update src/agents/session-write-lock.ts

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-12 18:22:12 +01:00
Vincent Koc a5aceebc01 test(gateway): share bearer agents list invoke 2026-04-12 18:20:39 +01:00
Vincent Koc 27afd01577 test(gateway): share session history sse helpers 2026-04-12 18:17:50 +01:00
Vincent Koc 686e5976df test(gateway): share preauth hardening setup helpers 2026-04-12 18:04:22 +01:00
Vincent Koc eddd9a1a1c test(gateway): share silent reconnect rejection assertions 2026-04-12 18:00:49 +01:00
Vincent Koc b35becfb1d test(gateway): share plugin approval no-route context 2026-04-12 17:59:17 +01:00
Vincent Koc 2c5290a7b1 test(gateway): share paired ios operator fixture 2026-04-12 17:57:55 +01:00
Vincent Koc ed1744bcaa test(heartbeat): cover isolated cron event consumption 2026-04-12 17:55:36 +01:00
Vincent Koc 68a64a14d9 test(gateway): share close handler deps 2026-04-12 17:45:46 +01:00
Nimrod Gutman 26dbc3da15 fix(agents): isolate skills tests from personal home (#65456) 2026-04-12 19:44:50 +03:00
Peter Steinberger b23f56fa8c fix: restore media understanding attempt outcome export 2026-04-12 17:44:16 +01:00
Pengfei Ni aff8a0c0e7 fix(config): resolve CLI command aliases against parent plugin in plugins.allow (#64748) (#64779)
* fix(config): resolve CLI command aliases against parent plugin in plugins.allow (#64748)

The CLI allow guard checked command names (e.g. 'wiki') directly against
plugins.allow, missing the parent plugin ('memory-wiki'). Additionally,
memory-wiki did not declare 'wiki' as a commandAlias, so doctor --fix
would remove it as stale.

- Add commandAliases entry for 'wiki' in memory-wiki plugin manifest
- Check parent plugin ID in the CLI fallback allow guard
- Add tests for both allow and deny cases

* fix(cli): inject manifest registry for alias diagnostics

* Update CHANGELOG.md

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-04-12 17:32:11 +01:00
Vincent Koc 7518b8d339 test(gateway): share allowlist node helpers 2026-04-12 17:26:31 +01:00
Vincent Koc b7b3846793 feat(plugins): narrow channel loads from manifests (#65429)
* feat(plugins): narrow channel loads from manifests

* fix(plugins): harden channel owner activation trust

* fix(plugins): preserve empty channel scopes

* fix(plugins): honor channel-owner policy gates

* fix(plugins): keep channel setup and scope fallbacks correct

* fix(plugins): keep channel trust tied to source config
2026-04-12 17:24:15 +01:00
Peter Steinberger 50fcdb36a8 fix: preserve prompt budget for small context models 2026-04-12 17:16:37 +01:00
Vincent Koc 0b8f09819f fix(media): use exported decision outcome type 2026-04-12 17:13:27 +01:00
Vincent Koc df1a82f6c1 test(gateway): share auth-profile ref fixture 2026-04-12 17:11:12 +01:00
Vincent Koc 88dfc6e7b6 test(gateway): share hook session routing helper 2026-04-12 17:09:23 +01:00
Vincent Koc 43cb94a39a fix(doctor): preserve discord streaming downgrade compatibility 2026-04-12 17:09:08 +01:00
Daniel Alkurdi 1f0431cd11 fix(media): surface OpenAI audio transcription failures (#65096)
* fix(media): surface audio transcription provider failures

* fix(media): prefer failed reasons in surfaced errors

* fix(media): import attempt outcome type

* fix(media): guard malformed decision arrays

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-04-12 17:05:18 +01:00
Vincent Koc d46f684898 test(agents): fix tsgo typing regressions 2026-04-12 17:02:24 +01:00
Vincent Koc 3bb69edf58 test(gateway): share browser origin rejection helper 2026-04-12 17:01:43 +01:00
Peter Steinberger c146738996 fix: stabilize subagent cleanup retries 2026-04-12 16:59:27 +01:00
Vincent Koc 2de988ae4b test(gateway): share temp home env setup 2026-04-12 16:56:06 +01:00