Commit Graph
531 Commits
Author SHA1 Message Date
Chin Rock 0990cc429d fix(explicit-response-files): Deliver explicit attachments without implicit Box scan (LANG-136) 2026-10-20 07:54:05 +00:00
彼方 1baba1b9f9 Merge pull request #2725 from langbot-app/fix/session-summary-persistence
fix(monitoring): persist session summaries to avoid history scans
2026-10-20 11:53:06 +08:00
BiFangKNT 3b1ea56f4f fix(monitoring): avoid historical payload reads in execution filters
- Add covering indexes through migration 0040
- Preserve PostgreSQL FORCE RLS state when marking historical summaries
- Add query-plan and migration regression tests to CI
2026-10-20 10:45:44 +08:00
BiFangKNT 7129e20cf6 fix(monitoring): paginate conversation IDs before loading message payloads
Count and paginate lightweight records, then load payloads only for the
selected page to avoid materializing large historical messages.

Add regression coverage for oversized history, ingress deduplication,
stable pagination, and PostgreSQL tenant isolation.
2026-10-20 09:34:05 +08:00
BiFangKNT 17aa5a75ac test(persistence): align migration fixtures with startup bootstrap 2026-10-20 06:50:07 +08:00
BiFangKNT 810d053df9 fix(monitoring): persist session summaries to avoid history scans
- Maintain counts and display snapshots in source transactions with replay-safe deduplication.
- Read session lists exclusively from summaries and remove execution-only filters.
- Automatically initialize historical summaries in bounded, resumable batches during OSS startup.
- Add behavioral contracts covering accounting, retention, query cost and PostgreSQL concurrency.

Verified with the required session_summary suite and real container upgrade startup.
2026-10-20 06:12:00 +08:00
Chin Rockandmultica-agent b7992e4ea6 fix(ci): align HTTP attachment test with explicit file export
Co-authored-by: multica-agent <[email protected]>
2026-10-19 19:02:21 +00:00
41b55952ff fix(runner): avoid duplicate inline image payloads (#2631)
* fix(runner): avoid duplicate inline image payloads

* fix(runner): preserve attachments and complete HTTP agent delivery

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

---------

Co-authored-by: Qingsong Li <[email protected]>
Co-authored-by: Chin Rock <[email protected]>
Co-authored-by: multica-agent <[email protected]>
2026-10-20 02:14:36 +08:00
RockChinQandmultica-agent d9e4e7d9df fix(pipeline): decouple Runner from extension permissions (LANG-54) (#2723)
* fix(pipeline): decouple runner from extension allowlist

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

* fix(pipeline): complete runner diagnostics and real runtime coverage

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

---------

Co-authored-by: multica-agent <[email protected]>
2026-10-19 23:07:11 +08:00
RockChinQ 5a6ddbff6f Merge pull request #2656 from fluo-rite/fix/telegram-mention-entities
fix(telegram): respect entity boundaries when parsing bot mentions
2026-10-19 17:51:31 +08:00
RockChinQandmultica-agent 52e8042f51 fix(telegram): match mention usernames case-insensitively
Co-authored-by: multica-agent <[email protected]>
2026-10-19 17:33:51 +08:00
Haoxuan Jiang 841b4df09d fix(lark): preserve incoming rich-text code blocks (#2626) 2026-10-19 16:26:16 +08:00
947d8addea fix(box): validate and export explicitly selected files (#2641)
* fix(box): retain outbox files when export fails

* test(box): retain ownership evidence in CI logs

* test(box): exercise LocalAgent export repair through real runtime and Docker

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

* fix(box): complete bounded outbox recovery contract

* feat(box): export explicitly selected files

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

* test(box): exercise explicit export on real Docker

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

* test(box): verify explicit exports with live model and Docker

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

* fix(box): align explicit export SDK and integration contracts

* docs(box): describe selected-file export contract

---------

Co-authored-by: HaiYangBG1 <[email protected]>
Co-authored-by: Chin Rock <[email protected]>
Co-authored-by: multica-agent <[email protected]>
2026-10-19 15:31:33 +08:00
bce94bd0d9 fix(tools): require python3 for Box native file scripts (#2658)
* fix(tools): require python3 for Box native file scripts

Unversioned `python` is still Python 2 on some host-rootfs nsjail
mounts. Falling back to it made read/write/edit scripts fail with
SyntaxError on f-strings (#2603).

Resolve only `python3`, and return a clear JSON error when it is
missing instead of invoking Python 2.

Fixes #2603

* style(tools): format Box interpreter error command

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

---------

Co-authored-by: Li-john1021 <[email protected]>
Co-authored-by: Chin Rock <[email protected]>
Co-authored-by: multica-agent <[email protected]>
2026-10-19 14:46:47 +08:00
Hyu 868f89a383 merge: integrate master into lark webhook signature fix 2026-10-19 01:53:46 +08:00
Hyu 757f8b7a35 fix(lark): authenticate plaintext webhooks and explain credentials 2026-10-19 01:48:29 +08:00
彼方 62b647761f Merge pull request #2718 from langbot-app/fix/nonblocking-console-logging
fix(logging): prevent blocked stdout from freezing LangBot
2026-10-19 01:12:59 +08:00
RockChinQ 4b87bb0a35 Merge pull request #2654 from ShaoLOWu/fix/bootutils-files-global-clobber
fix(core): stop generate_files from clobbering the required_paths global
2026-10-19 00:52:19 +08:00
BiFangKNT 4a989dd8aa fix(logging): prevent blocked stdout from freezing LangBot
- Isolate console writes with a bounded queue and daemon thread
- Preserve file logging and WebUI caching when stdout stalls
- Flush startup output before starting the writer to prevent exit hangs
- Add regression tests for backpressure, overflow, and shutdown
2026-10-18 19:13:22 +08:00
BiFangKNT 57077740bd chore(merge): sync master and preserve monitoring test coverage 2026-10-18 12:43:44 +08:00
BiFangKNT b73f66a234 feat(persistence): enforce image reference storage contract
- Reject structured inline images on ORM and Core writes
- Route plugin run results through the media-aware journal
- Redact legacy inline images before merging run metadata
- Cover storage contracts and regressions on SQLite and PostgreSQL
2026-10-18 12:26:09 +08:00
BiFangKNT 1e5aeb6032 refactor(provider): decouple Groq message sanitization from reasoning family
Use the chat provider to apply transport-specific metadata cleanup.
Keep finish_reason removal in the common message conversion path.

Verify streaming and non-streaming HTTP payloads through LiteLLM,
metadata preservation for other providers, and source message immutability.
2026-10-18 11:38:15 +08:00
BiFangKNT bc52184597 style(tests): add comments to explain foreign key parsing. 2026-10-18 11:15:44 +08:00
BiFangKNT 80b8358d8d test(monitoring): add status column to monitoring messages table 2026-10-18 11:10:35 +08:00
BiFangKNT f42d3919cb refactor(persistence): consolidate monitoring index migrations
- Merge migrations 0039 through 0041 into a single 0039 migration
- Preserve existing indexes and support partial historical schemas
- Update migration tests for the consolidated revision
2026-10-18 09:58:30 +08:00
BiFangKNT d610d64c67 fix(storage): expire historical inline images with bounded TTL cleanup
- Apply media retention to inline images while preserving text and URLs
- Persist per-workspace cursors atomically with payload updates
- Bound candidate scans and verify event ownership before loading payloads
- Add cleanup indexes and regression tests, and fix Windows path assertions
2026-10-18 09:58:04 +08:00
BiFangKNT cbc849d4e2 fix(storage): unify CAS persistence for inline images
- Externalize inline images in messages and run events before persistence
- Keep snapshots, transcripts, and metadata free of inline payloads
- Serialize messages after externalization to reduce peak memory usage
- Preserve live messages, URL-only images, and SDK image retrieval behavior
- Add regression tests for deduplication, redaction, storage failures, and serialization order
2026-10-18 00:04:20 +08:00
huanghuoguoguo 399685962e fix(skills): preserve escapes in Python workspace shell wrapper (#2666)
* fix(skills): preserve escapes in Python workspace shell wrapper

* style(skills): retain original end-of-file formatting
2026-10-17 23:13:27 +08:00
huanghuoguoguo 13b8edeace Merge pull request #2705 from langbot-app/test/required-contract-suites
test(ci): decouple required suites from test names and counts
2026-10-17 23:12:59 +08:00
BiFangKNT f12490bc73 perf(monitoring): load execution details on demand
- Load overview first and fetch secondary sections when expanded
- Add a covering index and select conversation IDs before loading page payloads
- Preserve full-detail API compatibility and add pagination and lazy-loading tests
2026-10-17 21:10:55 +08:00
huanghuoguoguo eaaf44f87a Merge pull request #2704 from langbot-app/test/quality-local-runner-execution-20261017
test: require LocalAgent and monitoring PostgreSQL contracts in CI
2026-10-17 20:36:33 +08:00
huanghuoguoguo 268285a090 Merge pull request #2703 from langbot-app/fix/box-root-owned-export-20261017
fix(box): recover private outbox files without following links
2026-10-17 20:34:49 +08:00
huanghuoguoguo ab29e83ca0 test: retain consolidated contracts when merging master 2026-10-17 20:15:07 +08:00
huanghuoguoguo 6a6304f457 test(box): merge master and preserve attachment runtime assertions 2026-10-17 20:14:30 +08:00
huanghuoguoguo 8dfdb4fc45 test: preserve session and quota contracts when merging master 2026-10-17 20:14:10 +08:00
huanghuoguoguo 407e352e5d Merge pull request #2695 from langbot-app/test/quality-migration-oracles-20261017
test(migrations): reuse historical data contracts and measure startup peaks
2026-10-17 20:12:34 +08:00
huanghuoguoguo 710d3edb71 Merge pull request #2694 from langbot-app/test/quality-discord-increment-oracles-20261017
test(discord): assert attachment and guild delivery targets
2026-10-17 20:12:28 +08:00
huanghuoguoguo fc877f73df Merge pull request #2693 from langbot-app/test/quality-box-platform-oracles-20261017
test(runtime): verify sandbox and platform behavior contracts
2026-10-17 20:12:22 +08:00
huanghuoguoguo c9f886a203 Merge pull request #2692 from langbot-app/test/quality-valkey-search-oracles-20261017
test(vector): verify real Valkey search and deletion results
2026-10-17 20:12:15 +08:00
huanghuoguoguo 64cdb7095d Merge pull request #2691 from langbot-app/test/quality-bot-api-oracles-20261017
test(api): verify bot response and service delegation contracts
2026-10-17 20:12:09 +08:00
huanghuoguoguo f30abc7bce Merge pull request #2690 from langbot-app/test/quality-unit-api-maintenance-20261017
test: verify scoped cleanup and storage analysis contracts
2026-10-17 20:12:01 +08:00
huanghuoguoguo 916b4a4b14 Merge pull request #2689 from langbot-app/test/quality-unit-api-identity-20261017
test: verify identity persistence and credential boundaries
2026-10-17 20:11:54 +08:00
huanghuoguoguo 849ad84810 Merge pull request #2688 from langbot-app/test/quality-unit-api-orchestration-20261017
test: verify bot and pipeline persistence and isolation
2026-10-17 20:11:48 +08:00
huanghuoguoguo da4c987976 Merge pull request #2687 from langbot-app/test/quality-persistence-core-oracles-20261017
test: strengthen startup and persistence boundary oracles
2026-10-17 20:11:42 +08:00
huanghuoguoguo 4a84ccffe6 Merge pull request #2685 from langbot-app/test/quality-unit-api-extensions-20261017
test: enforce MCP and webhook persistence and lifecycle contracts
2026-10-17 20:11:30 +08:00
huanghuoguoguo ec57b6a51d Merge pull request #2684 from langbot-app/test/quality-agent-plugin-oracles-20261017
test: verify persisted Agent and Plugin behavior boundaries
2026-10-17 20:11:24 +08:00
huanghuoguoguo 3a508b5bda Merge pull request #2683 from langbot-app/test/quality-unit-api-providers-20261017
test: strengthen provider service and secret response contracts
2026-10-17 20:11:18 +08:00
huanghuoguoguo 0c71bba2f0 Merge pull request #2682 from langbot-app/test/quality-unit-api-models-20261017
test(api): verify model persistence and runtime boundaries
2026-10-17 20:11:12 +08:00
huanghuoguoguo 1d9e551908 Merge pull request #2681 from langbot-app/test/quality-auth-boundary-oracles-20261017
test(auth): verify revocation and authorization ordering
2026-10-17 20:11:06 +08:00
huanghuoguoguo 98cc2ec2d6 Merge pull request #2680 from langbot-app/fix/auth-invalid-json-contract-20261017
fix(auth): reject malformed credential payloads before authentication
2026-10-17 20:11:01 +08:00