Peter Steinberger
a7401366ef
test: trim more channel-heavy startup in unit tests
2026-03-20 18:50:52 +00:00
Vincent Koc
083f825122
docs: expand community plugins (always visible), add Codex App Server/Lossless Claw/Opik, A-Z order
2026-03-20 11:40:50 -07:00
Peter Steinberger
b26edfe1ff
test: trim plugin-heavy unit test imports
2026-03-20 18:35:39 +00:00
Vincent Koc
740b345a2e
docs: sort Tools nav group alphabetically
2026-03-20 11:33:51 -07:00
Vincent Koc
483926a6fb
docs: rewrite sdk-migration and bundles, fold agent-tools into building-plugins, remove cookbook from nav, remove dead WeChat listing
2026-03-20 11:32:11 -07:00
Vincent Koc
2e0b445b46
docs: use expandable Accordions for community plugins, keep A-Z order
2026-03-20 11:27:45 -07:00
Tak Hoffman
16e055c083
restore extension-api backward compatibility with migration warning
2026-03-20 13:27:30 -05:00
Vincent Koc
e4d0fdcc15
docs: rewrite community plugins page with Cards, Steps, and quality bar table
2026-03-20 11:23:46 -07:00
Vincent Koc
fb293fa36f
docs: rewrite plugins install/configure page with Steps, Accordions, and clear hierarchy
2026-03-20 11:20:36 -07:00
Vincent Koc
a4a5ed8948
docs: retitle plugin internals/agent-tools/cookbook, collapse Browser into Tools, reorder Plugins group
2026-03-20 11:17:49 -07:00
Vincent Koc
4edab304db
docs: reorder Tools & Plugins nav, move Media/devices to Gateway tab, rewrite 4 problem pages with Mintlify components
2026-03-20 11:10:45 -07:00
Vincent Koc
3d097f1052
docs: rewrite tools landing page with Tools/Skills/Plugins explainer using Steps
2026-03-20 11:02:01 -07:00
Vincent Koc
e18ab85f08
docs(agents): clarify plugin nomenclature
2026-03-20 10:59:29 -07:00
Vincent Koc
5f600e117d
docs: restructure Tools & Plugins section, rename building-extensions to building-plugins, rewrite tools landing page and SDK migration
2026-03-20 10:55:56 -07:00
Ayaan Zaidi
35ac1f6e07
fix: add changelog for telegram account routing fix ( #50853 ) (thanks @hclsys)
2026-03-20 23:24:40 +05:30
HCL
4e45a663e7
fix(telegram): prevent silent wrong-bot routing when accountId not in config
...
When a non-default accountId is specified but not found in the accounts
config, resolveTelegramToken() falls through to channel-level defaults
(botToken, tokenFile, env) — silently routing messages via the wrong
bot's token. This is a cross-bot message leak with no error or warning.
Root cause: extensions/telegram/src/token.ts:44-46, resolveAccountCfg()
returns undefined for unknown accountIds but code continues to fallbacks.
Introduced in e5bca0832f when Telegram moved to extensions/.
Fix: return { token: "", source: "none" } with a diagnostic log when
a non-default accountId is not found. Existing behavior for known
accounts (with or without per-account tokens) preserved.
Test: added "does not fall through when non-default accountId not in
config" — 1/1 new, 10/10 existing unaffected.
Closes #49383
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: HCL <chenglunhu@gmail.com>
2026-03-20 23:24:40 +05:30
Vincent Koc
c64893a9c2
fix(config): use static channel metadata in docs baseline ( #51161 )
2026-03-20 10:52:40 -07:00
Vincent Koc
ad4536fd7e
docs: rename Extensions to Plugins, rewrite building guide as capability-agnostic, move voice-call to Channels
2026-03-20 10:45:56 -07:00
Peter Steinberger
1cabb053ad
test: lazy-load default setup registry
2026-03-20 17:43:49 +00:00
Vincent Koc
23a119c6ea
test(msteams): clear remaining rebase conflict hunk
2026-03-20 10:38:55 -07:00
Vincent Koc
42801f6178
fix(plugin-sdk): dedupe rebased zalo export entries
2026-03-20 10:38:55 -07:00
Vincent Koc
5b7ae24e30
test(msteams): align adapter doubles with interfaces
2026-03-20 10:38:55 -07:00
Vincent Koc
a2e1991ed3
refactor(plugin-sdk): route bundled runtime barrels through public subpaths
2026-03-20 10:38:55 -07:00
Vincent Koc
fb3550ef5e
test(sessions): stabilize pruning integration setup
2026-03-20 10:38:55 -07:00
Vincent Koc
58889f984f
docs: set sidebar title to SDK Migration
2026-03-20 10:32:51 -07:00
Vincent Koc
06311f89e0
docs: escape angle brackets in sdk-migration to fix Mintlify MDX build
2026-03-20 10:32:01 -07:00
Peter Steinberger
fa275fddf8
docs: refresh config baseline
2026-03-20 17:29:37 +00:00
Vincent Koc
96e1c37685
docs: improve Building Extensions with Mintlify Steps, Accordion, and Warning components
2026-03-20 10:24:51 -07:00
Vincent Koc
a39c440d39
fix(config): share json compatibility parsing
2026-03-20 10:17:53 -07:00
Harold Hunt
4838e3934b
Tests: default CI unit lanes to forks ( #51145 )
2026-03-20 13:15:55 -04:00
Saurabh Mishra
4266e260e1
fix: emit message:sent hook on Telegram streaming preview finalization ( #50917 )
...
* fix: emit message:sent hook on Telegram streaming preview finalization
* fix: include messageId in preview-delivered hook callback
* fix: skip message:sent hook for preview-retained paths
* fix: correct JSDoc for onPreviewDelivered callback
* fix: pass visible preview text on regressive-skip path
* fix: remove dead fallbacks and add stopCreatesFirstPreview test
* Update extensions/telegram/src/lane-delivery-text-deliverer.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* fix: align telegram preview sent hooks (#50917 ) (thanks @bugkill3r)
---------
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-03-20 22:42:04 +05:30
Peter Steinberger
85a5d64d8f
test: speed up isolated test lanes
2026-03-20 17:11:23 +00:00
Vincent Koc
93fbe26adb
fix(config): tighten json and json5 parsing paths ( #51153 )
2026-03-20 10:10:57 -07:00
Vincent Koc
87eeab7034
docs: add plugin SDK migration guide, link deprecation warning to docs
2026-03-20 10:05:06 -07:00
Peter Steinberger
fcabecc9a4
fix: remove duplicate plugin sdk exports
2026-03-20 16:52:10 +00:00
Peter Steinberger
18fa2992f9
fix: restore plugin sdk runtime barrels
2026-03-20 16:46:34 +00:00
Peter Steinberger
cb89325cd8
fix: restore latest main gate
2026-03-20 16:46:34 +00:00
Peter Steinberger
4c614c230d
fix: restore local gate
2026-03-20 16:46:14 +00:00
Vincent Koc
aa78a0c00e
refactor(plugin-sdk): formalize runtime contract barrels
2026-03-20 09:30:34 -07:00
Vincent Koc
9b6f286ac2
refactor(channels): share route format and binding helpers
2026-03-20 09:30:34 -07:00
Vincent Koc
faa9faa767
refactor(web-search): share provider clients and config helpers
2026-03-20 09:30:34 -07:00
Vincent Koc
d3ffa1e4e7
refactor(errors): share api error payload parsing
2026-03-20 09:30:33 -07:00
Vincent Koc
dbc9d3dd70
fix(plugin-sdk): restore root diagnostic compat
2026-03-20 09:27:37 -07:00
Peter Steinberger
50ce9ac1c6
refactor: privatize bundled sdk facades
2026-03-20 15:56:14 +00:00
Peter Steinberger
f6948ce405
refactor: shrink sdk helper surfaces
2026-03-20 15:43:14 +00:00
Peter Steinberger
ba1bb8505f
refactor: install optional channels for directory
2026-03-20 15:37:56 +00:00
sudie-codes
06845a1974
fix(msteams): resolve Graph API chat ID for DM file uploads ( #49585 )
...
Fixes #35822 — Bot Framework conversation.id format is incompatible with
Graph API /chats/{chatId}. Added resolveGraphChatId() to look up the
Graph-native chat ID via GET /me/chats, cached in the conversation store.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 10:08:26 -05:00
sudie-codes
7c3af3726f
msteams: extend MSTeamsAdapter and MSTeamsActivityHandler types; implement self() ( #49929 )
...
- Add updateActivity/deleteActivity to MSTeamsAdapter
- Add onReactionsAdded/onReactionsRemoved to MSTeamsActivityHandler
- Implement directory self() to return bot identity from appId credential
- Add tests for self() in channel.directory.test.ts
2026-03-20 10:08:23 -05:00
sudie-codes
897cda7d99
msteams: fix sender allowlist bypass when route allowlist is configured (GHSA-g7cr-9h7q-4qxq) ( #49582 )
...
When a route-level (teams/channel) allowlist was configured but the sender
allowlist (allowFrom/groupAllowFrom) was empty, resolveSenderScopedGroupPolicy
would downgrade the effective group policy from "allowlist" to "open", allowing
any Teams user to interact with the bot.
The fix: when channelGate.allowlistConfigured is true and effectiveGroupAllowFrom
is empty, preserve the configured groupPolicy ("allowlist") rather than letting
it be downgraded to "open". This ensures an empty sender allowlist with an active
route allowlist means deny-all rather than allow-all.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 10:08:19 -05:00
John Scianna
5607da90d5
feat: pass modelId to context engine assemble() ( #47437 )
...
Merged via squash.
Prepared head SHA: d708ddb222abda2c8d5396bbf4ce9ee5c4549fe3
Co-authored-by: jscianna <9017016+jscianna@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-20 08:05:02 -07:00