Commit Graph
5637 Commits
Author SHA1 Message Date
fdc310 4cc3ab52fb chore(deps): pin blocking interaction SDK revision 2026-10-31 19:57:06 +08:00
fdc310 bca82cb633 refactor(agent): unify blocking interaction callbacks and adapters 2026-10-31 19:53:17 +08:00
fdc310 02162a5a1a chore(plugins): sync LocalAgent catalog version 2026-10-31 15:24:35 +08:00
fdc310 5e718bca79 fix(agent): avoid duplicate replies and enable LocalAgent cards 2026-10-31 15:20:46 +08:00
fdc310 e38091dba7 fix(interactions): align adapter manifests and close timed-out streams 2026-10-31 14:12:07 +08:00
fdc310 45c7c3a0a5 test(runner): keep legacy SDK probe importable 2026-10-31 14:04:01 +08:00
fdc310 27d4184bef fix(ci): lock blocking interaction SDK for dependent checks 2026-10-31 13:59:02 +08:00
fdc310 07fcdb35b5 fix(interactions): respect live adapter APIs and preserve deadlines 2026-10-31 03:21:52 +08:00
fdc310 16cedd2389 Merge remote-tracking branch 'origin/master' into feat/blocking-interactions 2026-10-31 03:17:49 +08:00
fdc310 bafe1df93d feat(interactions): resume runner in place after card submission 2026-10-31 03:17:42 +08:00
RockChinQandmultica-agent 566952c0f7 feat(provider): preserve MiniMax thinking history and refresh discovery (#2824)
Co-authored-by: multica-agent <[email protected]>
2026-10-31 02:45:08 +08:00
Pratik GandhiandRockChinQ a1dda4ac80 docs(agent-runner): fix links to AGENT_RUNNER_QA_GUIDE.md (#2726)
Ten links in dev-docs/agent-runner-pluginization/ pointed to the non-existent ./RUNNER_QA_GUIDE.md; point them to AGENT_RUNNER_QA_GUIDE.md. Rebased onto the docs/ -> dev-docs/ move.

Co-authored-by: RockChinQ <[email protected]>
2026-10-31 02:15:08 +08:00
Martin fe6f279d24 chore(docker): drop obsolete compose version and expose ACP daemon port (#2789) 2026-10-31 02:05:48 +08:00
d8271d9198 feat(line): Native Event-Based Agent (EBA) LINE Platform Adapter (#2736)
* feat(line): EBA LINE adapter skeleton (WO-LINE-01-SKELETON-1018)

- pkg/platform/adapters/line/ 9 files (LineAdapter hybrid inheritance +
  Capability + event namespace + config env load, zero hardcoded secrets)
- LINE SDK calls all stub (NotImplementedError) pending WO-LINE-00/02/03
- Verified: compileall 7/7 + ruff 0 + import chain green against
  v4.11.0-hotfixed SDK (container-extracted, read-only)
- Source: handoff box WO-LINE-01-SKELETON-1018 (sha256 9/9 matched)

Co-authored-by: multica-agent <[email protected]>

* feat(line): implement WO-LINE-02 message.received loop and converter

Co-authored-by: multica-agent <[email protected]>

* feat(line): implement WO-LINE-03 streaming and send API

Co-authored-by: multica-agent <[email protected]>

* feat(line): implement WO-LINE-04 group and user event extensions

Co-authored-by: multica-agent <[email protected]>

* feat(line): implement WO-LINE-05 group and user event extensions

Co-authored-by: multica-agent <[email protected]>

* docs(line): add EBA LINE adapter architecture guide and documentation

Co-authored-by: multica-agent <[email protected]>

* feat(line): resolve Ruff warnings and manifest spec update

Co-authored-by: multica-agent <[email protected]>

* feat(line): add webhook_url config and help_links to PR_DESCRIPTION.md

Co-authored-by: multica-agent <[email protected]>

* feat(line): add webhook_url config and help_links for PR #2736

Co-authored-by: multica-agent <[email protected]>

* fix(line): ruff format, update help_links, remove nested duplicate dir

Co-authored-by: multica-agent <[email protected]>

* fix(line): resolve 12 test failures, align types, and move architecture docs to dev-docs

Co-authored-by: multica-agent <[email protected]>

* fix(line): resolve ruff lint and formatting issues for CI

Co-authored-by: multica-agent <[email protected]>

* docs(line): sanitize internal orchestration notes and standardize documentation

Co-authored-by: multica-agent <[email protected]>

* clean(line): remove internal tracking ticket references from source code

Co-authored-by: multica-agent <[email protected]>

* fix(line): resolve MessageReceivedEvent and Friend entity mapping for 100% test pass

Co-authored-by: multica-agent <[email protected]>

* fix(line): resolve E402 import order in event_converter.py

Co-authored-by: multica-agent <[email protected]>

* feat(line): implement the LINE Omni adapter on the legacy messaging flow

Replace the placeholder skeleton with a working unified-webhook adapter:

- verify X-Line-Signature with WebhookParser and acknowledge before dispatch
- build real LINE messaging clients from channel_access_token and drop
  the adapter's own messages using the account id from get_bot_info
- map message/image/voice events to message.received, unsend to
  message.deleted, membership changes to group/bot events, and the
  remaining LINE event types to platform.specific with chat identity
- send and reply through MessagingApi with LINE's five-message budget,
  a reply-token to push fallback, and honest NotSupportedError paths
- expose get_user_info, get_group_info, leave_group and the get_bot_info,
  get_profile, get_group_summary pass-through actions
- keep the legacy FriendMessage/GroupMessage listeners working
- move tests to tests/unit_tests/platform, add the adapter doc, and
  register line in OMNI_ADAPTER_NAMES

Co-authored-by: multica-agent <[email protected]>

---------

Co-authored-by: multica-agent <[email protected]>
Co-authored-by: RockChinQ <[email protected]>
2026-10-30 12:58:04 +08:00
fdc310 72068e41fa fix(dify): merge HITL resume streaming into in-tree plugin 2026-10-30 12:49:15 +08:00
fdc310 67115d431b Merge remote-tracking branch 'origin/master' into feat/cross-platform-ai-cards 2026-10-30 12:13:31 +08:00
huanghuoguoguo 292fe43731 test(plugins): use in-tree sources without hash pins
Use the in-tree plugins directly for consumer contracts and avoid per-edit hash refreshes.
2026-10-30 11:11:31 +08:00
huanghuoguoguo 70fb56e274 fix(agent): keep reset generation out of external conversation ID (#2818)
Fixes #2814

After a session reset, keep the reset generation marker out of provider-facing external conversation state so Runner plugins start a new remote conversation.
2026-10-30 10:21:33 +08:00
huanghuoguoguo 98a242320b test(cli): add compatibility job with semantic assertions (#2813)
Squash merge after rebasing onto the merged companion suites and passing all required checks.
2026-10-30 09:33:00 +08:00
huanghuoguoguo 7119cc94ba test(regression): add plugin lifecycle recovery job (#2812)
Squash merge after resolving companion-suite conflicts and passing all required checks.
2026-10-30 09:20:37 +08:00
huanghuoguoguo 21ff044df1 test(regression): add concurrent conversation isolation job (#2811)
Squash merge after conflict resolution and all required checks passed.
2026-10-30 09:06:07 +08:00
huanghuoguoguo 52b07cb01f fix(regression): tolerate sandbox removal during resource sampling
Squash merge after all required checks passed.
2026-10-30 08:53:23 +08:00
huanghuoguoguo 687fc52b36 Merge pull request #2810 from langbot-app/test/state-lifecycle-job
test(regression): add durable state lifecycle job
2026-10-30 08:35:09 +08:00
fdc310 e4f36490b1 fix(plugins): refresh LocalAgent source hashes 2026-10-30 02:13:38 +08:00
fdc310 fe739135c7 chore(merge): sync master into interactive cards 2026-10-30 02:03:05 +08:00
fdc310 983e12acdf fix(lark): stream replies after HITL submissions 2026-10-30 01:06:10 +08:00
Chin Rockandmultica-agent 75e1630550 fix(localagent): keep the SDK constraint installable across 0.7.x
LocalAgent declared langbot-plugin>=0.7.18, and the published 0.2.2 artifact
pinned langbot-plugin==0.7.16. The plugin runtime rejects any SDK requirement
its own SDK version does not satisfy, so both directions were dead ends: 4.11.4
(SDK 0.7.19) could not install the published build, and a 0.7.18 floor would
have locked out 4.11.2/4.11.3 (SDK 0.7.16) from the next one.

Use a bounded range from the 4.11.2 baseline instead, matching every other
official Runner and KnowledgeEngine plugin. Verified on SDK 0.7.16 and 0.7.19:
327 tests pass on both, including the runtime dependency admission contract.

Co-authored-by: multica-agent <[email protected]>
2026-10-29 15:48:06 +00:00
Chin Rockandmultica-agent 3ac4eef3ec chore(release): bump version to 4.11.4
Co-authored-by: multica-agent <[email protected]>
v4.11.4
2026-10-29 13:40:29 +00:00
Chin Rockandmultica-agent a9ad6ac00b ci(plugins): build plugin packages with the current SDK CLI
The packaging job pinned langbot-plugin 0.7.18 while Core runs 0.7.19, so it
would validate archives with a CLI that no longer matches the SDK contracts the
plugins are shipped against. Follow the Core pin.

Co-authored-by: multica-agent <[email protected]>
2026-10-29 13:40:29 +00:00
Chin Rockandmultica-agent 1f81966606 fix(persistence): make resource URL catalog downgrade work standalone
0041_resource_urls could not be rolled back through the supported entry point
(`python -m langbot.pkg.persistence.alembic_runner downgrade`):

- SQLite failed with `no such function: langbot_expand_resource_urls`. The UDF
  is registered by an Engine `connect` hook that only runs when the application
  installs the catalog, so a standalone migration process held a connection
  without it.
- Both backends failed with `AttributeError: 'Engine' object has no attribute
  '_langbot_resource_aliases'`, because `uninstall()` assumed `install()` had
  already run on that engine.

Register the expansion UDF on the migration connection for SQLite, and let
`uninstall()` skip the alias cache when the engine never installed it. The
downgrade still rewrites retained payloads back to literal URLs and drops the
catalog; only the missing hooks were at fault.

Co-authored-by: multica-agent <[email protected]>
2026-10-29 12:30:28 +00:00
fdc310 21e2187c6c fix(dingtalk): show submitted HITL choices in cards 2026-10-29 20:23:06 +08:00
fdc310 d611f687eb fix(wecombot): stream replies after HITL cards 2026-10-29 19:29:32 +08:00
leonoxoandleonoxo c1284be8fc fix(line): decouple webhook processing lifecycle and use Push API for proactive sends (#2721)
- webhook handler: run listener in a tracked background task so the
  HTTP ACK is not coupled to the Agent run lifetime (prevents in-flight
  cancellation when the request scope ends); exceptions are logged
- send_message: implement LINE Push API path (text + image) instead of
  the empty stub, separated from the reply-token path

Verified in production on a self-hosted v4.11.0 deployment (LangBot
community edition, rootless Docker).

Co-authored-by: leonoxo <[email protected]>
2026-10-29 14:54:31 +08:00
huanghuoguoguo 31bcd673e7 Merge pull request #2806 from langbot-app/ci/daily-api-contract
ci(daily): add API contract regression job
2026-10-29 11:10:46 +08:00
huanghuoguoguo f5924164d2 ci(daily): run API contracts alongside endurance 2026-10-29 11:00:11 +08:00
huanghuoguoguo b19315b078 test: add isolated API contract regression job 2026-10-29 10:57:16 +08:00
huanghuoguoguo 96ec96baf2 Merge pull request #2805 from langbot-app/fix/mcp-mode-validation
fix(mcp): reject unsupported modes before persistence
2026-10-29 10:41:57 +08:00
huanghuoguoguo 3969c3d25d fix(mcp): reject unsupported modes before persistence 2026-10-29 10:14:02 +08:00
fdc310 2721a213e8 fix(wecombot): handle native select card callbacks 2026-10-29 04:23:54 +08:00
Chin Rockandmultica-agent 117e3bb350 fix(dify-agent): separate final answers and release 0.2.5
Co-authored-by: multica-agent <[email protected]>
2026-10-28 15:15:48 +00:00
huanghuoguoguo 0ce6eee2f4 Merge pull request #2784 from langbot-app/ci/daily-endurance
ci(regression): exercise monorepo plugins in daily functional cycles
2026-10-28 21:45:12 +08:00
huanghuoguoguo c21b3bc0ad Merge pull request #2803 from langbot-app/fix/localagent-latest-sdk
fix(localagent): follow the latest stable SDK in dependency checks
2026-10-28 21:43:07 +08:00
huanghuoguoguo 63a00d1856 Merge pull request #2798 from langbot-app/test/box-cancel-persistent-oracle
test(regression): preserve cancellation evidence across Box retirement
2026-10-28 21:42:31 +08:00
huanghuoguoguo e3792184bf test(localagent): refresh source hashes for updated SDK requirements 2026-10-28 21:08:53 +08:00
Guanchao Wang ce3a4e7bfd Merge pull request #2564 from Smilewithoutfalling/fix/wecombot-throttle-stream-push
fix(wecombot): throttle intermediate stream frames in WS mode
2026-10-28 13:03:37 +00:00
huanghuoguoguo 21be11766b ci(regression): build monorepo plugins and exercise local command and page APIs 2026-10-28 20:46:53 +08:00
WangCham bab86430e6 fix(wecombot): preserve throttled snapshots for empty final frames 2026-10-28 20:46:15 +08:00
huanghuoguoguo b21d150c4c fix(localagent): test against the latest stable SDK 2026-10-28 20:31:31 +08:00
huanghuoguoguo 67419699b4 test(regression): preserve cancellation evidence across Box retirement 2026-10-28 20:27:02 +08:00
huanghuoguoguo 1f842381df test(regression): preserve cancellation evidence across Box retirement 2026-10-28 20:01:13 +08:00