Commit Graph

3806 Commits

Author SHA1 Message Date
huanghuoguoguo e3df35e7f7 test(workspace): harden release gate automation 2026-07-20 17:13:19 +08:00
huanghuoguoguo 7615c40f73 fix(plugin): extend knowledge retrieval timeout 2026-07-20 17:12:55 +08:00
huanghuoguoguo e4d4860446 fix(platform): resolve post-rebase compatibility 2026-07-19 23:03:54 +08:00
huanghuoguoguo 8afab5fa49 fix(mcp): recover box stdio sessions after disconnect 2026-07-19 22:47:09 +08:00
huanghuoguoguo 3359951837 test(workspace): add top-down release gates 2026-07-19 22:46:01 +08:00
huanghuoguoguo 7706634c34 test(agent): add complex local agent regression coverage 2026-07-19 22:46:01 +08:00
huanghuoguoguo cfa7c7b336 fix(tools): support skill mount root discovery 2026-07-19 22:46:01 +08:00
huanghuoguoguo 0c8eb90a75 docs(agent-runner): record release probe results 2026-07-19 22:46:01 +08:00
huanghuoguoguo 9f28d6949a fix(agent-runner): unify streamed completion delivery 2026-07-19 22:46:01 +08:00
huanghuoguoguo 8a7c3fcefe fix(agent-runner): aggregate non-streaming replies 2026-07-19 22:46:01 +08:00
huanghuoguoguo 54c872b74f fix(agent-runner): close sandbox skill authoring flow 2026-07-19 22:46:01 +08:00
huanghuoguoguo c55be79f9f fix(agent-runner): prepare local runner functional tests 2026-07-19 22:46:01 +08:00
huanghuoguoguo 1af106aa92 fix(agent-runner): validate clean marketplace onboarding 2026-07-19 22:46:01 +08:00
huanghuoguoguo d88d05e27c feat(agent-runner): enforce 4.x host-owned execution 2026-07-19 22:46:01 +08:00
huanghuoguoguo 9aa71d54e3 feat(agent-runner): finalize 4.x processor integration 2026-07-19 22:45:15 +08:00
Junyan Qin 457408ad7f feat(market): support AgentRunner component filters 2026-07-19 22:45:15 +08:00
huanghuoguoguo 1d8601f4a6 feat(wizard): add scenario templates and EBA release gate 2026-07-19 22:44:08 +08:00
huanghuoguoguo 0c0f5d8061 feat(wizard): start bot setup from scenarios 2026-07-19 22:44:08 +08:00
huanghuoguoguo c3aa4cfc97 feat(agent-platform): add scenario-based route creation 2026-07-19 22:44:08 +08:00
huanghuoguoguo b8d8bbadd5 feat(agent-platform): explain route conflicts and fallback 2026-07-19 22:44:08 +08:00
huanghuoguoguo 3aeae92707 test(skills): add bot event routing product flow 2026-07-19 22:44:08 +08:00
huanghuoguoguo 00fb6f8236 feat(agent-platform): productize bot event route testing 2026-07-19 22:44:08 +08:00
huanghuoguoguo 4cbb9415bf feat(agent-platform): show bot route runtime status 2026-07-19 22:44:08 +08:00
huanghuoguoguo ee11e97e86 feat(agent-platform): add bot route dry-run 2026-07-19 22:44:08 +08:00
Junyan Qin 428161110f docs: add EBA productization release plan 2026-07-19 22:44:07 +08:00
Junyan Qin 7fb393b85b refactor: consolidate bot event routing 2026-07-19 22:44:07 +08:00
huanghuoguoguo 662627142e test(agent-runner): strengthen local agent e2e gate 2026-07-19 22:42:40 +08:00
Junyan Qin 7cd04a2cff feat: improve sidebar usability 2026-07-19 22:42:40 +08:00
Junyan Qin 1eef5d2344 fix: remove internal adapter terminology from UI 2026-07-19 22:42:40 +08:00
Junyan Qin 427e8b2873 fix: stabilize 4.11 branch runtime state 2026-07-19 22:42:40 +08:00
huanghuoguoguo 5ab1e36eba test(provider): support fake token counting 2026-07-19 22:41:31 +08:00
huanghuoguoguo ff5f089225 docs(agent-runner): align protocol compatibility notes 2026-07-19 22:41:31 +08:00
wangcham 84b3485e7e fix(platform): align eba event declarations 2026-07-19 22:41:31 +08:00
huanghuoguoguo b29ff78d7b fix(debug-chat): preserve websocket pipeline routing 2026-07-19 22:41:31 +08:00
huanghuoguoguo 517986bd10 feat(agent-runner): support scoped token counting 2026-07-19 22:41:31 +08:00
Junyan Qin a87ebd8a5f i18n: add missing agents block to es-ES, ru-RU, th-TH, vi-VN, zh-Hant
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:31 +08:00
Junyan Qin 668210c533 feat(sidebar): add group-by-type toggle to installed extensions section
- Add group-by-type button to extensions category header (mirrors the
  agent group-by-kind pattern) — syncs with the extensions page Switch
  via shared SidebarDataContext state
- Relocate both group and refresh controls to sit left-aligned
  immediately after the title for both Agent and Extensions sections
- Add plugins.groupByTypeShort i18n key to all 8 locales

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:31 +08:00
Junyan Qin 6cda1e4260 feat(sidebar): add group-by-kind toggle to Agent section
Add a toggle (left of the "+" button) that groups the Agent section by
kind, showing "Agent" and "Pipeline" sub-headers. State persists in
localStorage, mirroring the extensions group-by-type pattern.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:31 +08:00
Junyan Qin 2e619f1684 refine(sidebar): show Agent/Pipeline marker as icon only
Drop the text label; keep the icon with a title tooltip so names have
more room in the narrow sidebar.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:31 +08:00
Junyan Qin 56cd6a74d4 feat(sidebar): mark Agent entries as Agent or Pipeline
Add a trailing badge (icon + label) to each entry in the sidebar Agent
section so users can tell Agent orchestration apart from legacy Pipeline.
Thread the agent `kind` field through SidebarEntityItem.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:31 +08:00
Junyan Qin ef344ec8cc fix(bots): hide redundant namespace wildcard and show raw event code
- Only surface `ns.*` wildcard when the namespace has 2+ concrete events,
  so single-event adapters (legacy) show just the one event
- Show raw event code as a muted subtitle under each option's label

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:31 +08:00
Junyan Qin 95f3409d55 feat(bots): refine event binding editor UI and i18n
- Move conditions toggle between event select and arrow; drop "IF" label
- Remove "all events" (*) option from event select
- Add i18n labels for concrete event names (zh/en/ja) via bots.eventNames
- Narrow fallback event set to message.received for adapters without
  declared supported_events (legacy adapters only emit message.received)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:30 +08:00
Junyan Qin 68d43834bd fix(adapters): add categories to telegram EBA manifest
The Telegram (EBA) manifest was missing spec.categories, so it fell
into the uncategorized/protocol bucket. Restore popular + global to
match the legacy telegram adapter.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:30 +08:00
Junyan Qin 9044f2d747 feat(adapters): mark EBA-superseded adapters as legacy and collapse them
The 12 old adapters that now have an EBA replacement are tagged
`spec.legacy: true` in their source manifests. Principle: don't delete,
de-emphasize.

- sources/*.yaml (aiocqhttp, dingtalk, discord, kook, lark,
  officialaccount, qqofficial, slack, telegram, wecom, wecombot,
  wecomcs): add spec.legacy: true
- Adapter / IChooseAdapterEntity types: add optional legacy flag
- BotForm adapter Select: split legacy adapters into a collapsed,
  grayscale group at the bottom with an explanatory hint; auto-expand
  when the bot already uses a legacy adapter
- Wizard platform picker: same collapsed legacy section
- i18n: legacyAdapters / legacyAdaptersHint (zh-Hans, en-US)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:30 +08:00
Junyan Qin 7dbdddd062 fix(web): remove discard option from event target selector
Unorchestrated events are discarded by default, so an explicit discard
target is redundant. Drop the discard CommandGroup (and the now-unused
CommandSeparator import); the currentLabel() discard branch is kept so
any pre-existing discard bindings still render correctly.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:30 +08:00
Junyan Qin fd53c40ee6 fix(web): place each adapter in a single category bucket
groupByCategory pushed multi-category adapters (lark, wecom, discord,
slack) into every matching bucket, so the adapter Select rendered
duplicate SelectItem values — triggering React duplicate-key warnings
and corrupting Radix item tracking. Assign each item to its highest
-priority matching category only. Also de-dupes the wizard card grid.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:30 +08:00
Junyan Qin 7d801cfb68 feat(eba): consolidate event bindings, fix command.tsx pointer-events
- Replace legacy pipeline binding card + RoutingRulesEditor with unified
  EventBindingsEditor; remove use_pipeline_uuid/pipeline_routing_rules
  from bot form schema and API update handler
- Add _augment_event_data() to botmgr for filter virtual fields
  (message_text, message_element_types, chat_type)
- Add alembic migration 0009: migrate use_pipeline_uuid and
  pipeline_routing_rules into event_bindings on first run
- Fix command.tsx: data-[disabled] -> data-[disabled=true] so cmdk 1.x
  items (data-disabled=false) are not pointer-events:none
- EventBindingsEditor: onSelect on CommandItems, filter conditions panel,
  disabled bindings section, dnd reorder
- i18n: add filter/condition keys for zh-Hans and en-US
- Update tests to match new bot service behavior

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 22:41:30 +08:00
huanghuoguoguo 9a0081c4d2 test(agent): cover agent service event bindings 2026-07-19 22:41:30 +08:00
huanghuoguoguo 5bda2167bd test(agent): cover pluginized agent runner runtime 2026-07-19 22:41:30 +08:00
Junyan Qin 27b43c1731 feat(agent): add event orchestration surface 2026-07-19 22:41:30 +08:00