Commit Graph

114 Commits

Author SHA1 Message Date
Peter Steinberger
2187b19d7e refactor: dedupe extension lowercase helpers 2026-04-07 22:24:32 +01:00
Gustavo Madeira Santana
28fc5d9b5e Plugin SDK: split approval adapter seams 2026-04-07 16:06:02 -04:00
Peter Steinberger
ba68537d9d refactor: dedupe line qqbot slack lowercase helpers 2026-04-07 20:58:01 +01:00
Gustavo Madeira Santana
d78512b09d Refactor: centralize native approval lifecycle assembly (#62135)
Merged via squash.

Prepared head SHA: b7c20a7398
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-07 14:40:26 -04:00
Peter Steinberger
f2b13b0a1a refactor: dedupe slack matrix venice lowercase helpers 2026-04-07 15:12:31 +01:00
Peter Steinberger
ce19b6bf6a refactor: dedupe channel extension readers 2026-04-07 08:40:34 +01:00
Peter Steinberger
625fd5b3e3 refactor: centralize inbound mention policy 2026-04-07 07:51:00 +01:00
Chunyue Wang
e8fb140642 fix: preserve Slack guarded media transport (#62239) (thanks @openperf)
* fix(slack ): prevent undici dispatcher leak to globalThis.fetch causing media download failure

* fix(slack): preserve guarded media transport

* fix: preserve Slack guarded media transport (#62239) (thanks @openperf)

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-07 11:15:53 +05:30
Praktika Engineer
b8c8139138 feat(slack): add thread.requireExplicitMention config option (#58276)
* feat(slack): add thread.requireExplicitMention config option

When requireMention is true in a Slack channel, replying inside a thread
where the bot previously participated currently bypasses mention gating
via implicit mention detection. This makes the bot respond to every
thread message even without an explicit @mention.

Add channels.slack.thread.requireExplicitMention (default: false) which,
when set to true, suppresses implicit thread mentions. Only explicit
@bot mentions will trigger replies inside threads.

Closes #34389
Closes #49972

* slack: refresh changelog and generated config artifacts

* slack: restore bundled channel metadata generation

---------

Co-authored-by: praktika-devops <devops@praktika.ai>
Co-authored-by: George Pickett <gpickett00@gmail.com>
2026-04-06 17:05:11 -07:00
Peter Steinberger
ce87d5e242 refactor(deadcode): remove extension wrapper shims 2026-04-06 17:18:03 +01:00
Vincent Koc
6067f2d9ad chore(plugins): drop dead channel test any suppressions 2026-04-06 15:45:18 +01:00
Vincent Koc
3ded10f52a chore(plugins): drop dead test any suppressions 2026-04-06 15:43:48 +01:00
Peter Steinberger
af62a2c2e4 style: fix extension lint violations 2026-04-06 14:53:55 +01:00
Vincent Koc
4b2d528345 fix(plugins): finish channel lint cleanup 2026-04-06 14:48:35 +01:00
Vincent Koc
4d49c7b8a5 fix(plugins): clean fourth channel lint batch 2026-04-06 14:42:09 +01:00
Peter Steinberger
3da7c8610f fix: preserve slack fallback thread classification (#61835) 2026-04-06 14:38:51 +01:00
Ken Shimizu
7f7cfc794f fix(slack): remove stale issue reference comment 2026-04-06 14:38:51 +01:00
Ken Shimizu
177b326354 fix(slack): remove backward-compat fallback that overrides isThreadReply with incomingThreadTs 2026-04-06 14:38:51 +01:00
Vincent Koc
505b980f63 fix(plugins): clean third channel lint batch 2026-04-06 14:34:07 +01:00
Peter Steinberger
318c0f2e89 fix(plugins): repair channel lint batch types 2026-04-06 14:32:02 +01:00
Vincent Koc
98f222a661 fix(plugins): clean second channel lint batch 2026-04-06 14:29:51 +01:00
Vincent Koc
c3edcfd46e fix(plugins): clean first channel lint batch 2026-04-06 14:27:45 +01:00
Vincent Koc
0fdf9e874b fix(config): normalize channel streaming config shape (#61381)
* feat(config): add canonical streaming config helpers

* refactor(runtime): prefer canonical streaming accessors

* feat(config): normalize preview channel streaming shape

* test(config): lock streaming normalization followups

* fix(config): polish streaming migration edges

* chore(config): refresh streaming baseline hash
2026-04-06 05:08:20 +01:00
Peter Steinberger
b1c98e8469 test: stabilize browser and provider ci shards 2026-04-06 03:38:28 +01:00
Peter Steinberger
6b627d4707 fix(discord): add batched reply mode 2026-04-05 21:15:29 +01:00
Andrii Furmanets
379f0d78e6 Slack: route live DM replies to channel 2026-04-05 19:53:23 +09:00
@zimeg
28e1142a24 revert(slack): use packaged thread status method 2026-04-04 13:15:57 -07:00
@zimeg
68b84980cc refactor(slack): use packaged thread status method 2026-04-04 13:14:06 -07:00
Hsiao A
ae16452a69 fix(slack): pre-set shuttingDown before app.stop() to prevent orphaned ping intervals (#56646)
Merged via squash with admin override.

Prepared head SHA: f1c91d50b0
Note: required red lanes are currently inherited from latest origin/main, not introduced by this PR.
Co-authored-by: hsiaoa <70124331+hsiaoa@users.noreply.github.com>
Co-authored-by: frankekn <4488090+frankekn@users.noreply.github.com>
Reviewed-by: @frankekn
2026-04-04 20:49:23 +08:00
Vincent Koc
9e389cff3d fix(config): migrate legacy group allow aliases (#60597)
* fix(config): migrate legacy group allow aliases

* fix(config): inline legacy streaming migration helpers

* refactor(config): rename legacy account matcher helper

* chore(agents): codify config contract boundaries

* fix(config): keep legacy allow aliases writable

* Update AGENTS.md
2026-04-04 11:15:32 +09:00
Peter Steinberger
ffba320a2c fix(ci): align test mock typings 2026-04-03 19:59:55 +01:00
Peter Steinberger
4b71a94450 fix(ci): repair contract and interaction drift 2026-04-03 19:57:35 +01:00
Vincent Koc
eecb36eff4 fix(ci): stabilize zero-delay retry and slack interaction tests 2026-04-04 03:52:07 +09:00
Peter Steinberger
8e8f8d0745 test: trim more extension importOriginal usage 2026-04-03 19:49:43 +01:00
Peter Steinberger
3fb6e3e91f test: trim more extension importOriginal usage 2026-04-03 19:40:20 +01:00
Peter Steinberger
6eca4e0136 test: trim extension partial mocks 2026-04-03 19:28:19 +01:00
Peter Steinberger
ab96520bba refactor(plugins): move channel behavior into plugins 2026-04-03 19:09:20 +01:00
Peter Steinberger
f36ed7105f test: reduce extension runtime partial mocks 2026-04-03 18:33:47 +01:00
Peter Steinberger
1c16c6a94a test: split inbound contract helpers 2026-04-03 18:33:46 +01:00
Vincent Koc
745f1c9812 fix(types): align callers with removed legacy config aliases 2026-04-04 01:50:44 +09:00
Peter Steinberger
2e041c8b66 test: split slack monitor coverage 2026-04-03 17:33:45 +01:00
Vincent Koc
6366010884 fix(ci): route extension test helpers through public sdk seams 2026-04-04 00:03:48 +09:00
Vincent Koc
ed166ba338 test(contracts): extract narrow channel contract helpers 2026-04-03 23:14:45 +09:00
Vincent Koc
568859e1fb test(extensions): avoid barrel testing helpers in media tests 2026-04-03 21:23:47 +09:00
Peter Steinberger
2766c27b2a refactor(plugin-sdk): genericize web channel runtime seams 2026-04-03 11:17:28 +01:00
Peter Steinberger
847faa3d04 test: trim extension test import churn 2026-04-03 04:41:08 +01:00
Peter Steinberger
694d12a90b refactor: apply context visibility across channels 2026-04-03 04:34:57 +09:00
Peter Steinberger
17f6626ffe feat(approvals): auto-enable native chat approvals 2026-04-02 17:30:40 +01:00
Jacob Tomlinson
ac5bc4fb37 Slack: filter thread context by allowlist (#58380)
* Slack: filter thread context by allowlist

* Slack: honor room thread allowlists

* Slack: keep open-room thread context

* Slack: keep non-room thread context

* Changelog: add Slack thread context fix
2026-04-02 11:01:11 +01:00
Vincent Koc
a7e3c0b0e1 feat(slack): add scoped prompts and mrkdwn hints (#59100)
* feat(slack): add scoped prompts and mrkdwn hints

* refactor(slack): drop dm prompt override

* refactor(slack): drop exposed prompt config

* chore(changelog): note slack mrkdwn fix
2026-04-02 11:23:43 +09:00