Commit Graph

4258 Commits

Author SHA1 Message Date
RockChinQ ac366193bc Merge pull request #2600 from langbot-app/fix/pin-sdk-0.6.20
chore(plugin): pin SDK 0.6.20
2026-09-27 17:08:39 +08:00
RockChinQ 3b94b7e4cc chore(plugin): pin SDK 0.6.20 2026-09-27 09:00:36 +00:00
RockChinQ 10bd175944 Merge pull request #2599 from langbot-app/fix/pin-sdk-0.6.19
chore(plugin): pin SDK 0.6.19
2026-09-27 15:50:14 +08:00
RockChinQ 0b78617b82 chore(plugin): pin SDK 0.6.19 2026-09-27 07:42:02 +00:00
RockChinQ d7ccb71dab Merge pull request #2598 from langbot-app/fix/pin-sdk-0.6.18
chore(plugin): pin SDK 0.6.18
2026-09-27 14:44:57 +08:00
RockChinQ cbc8ef2324 chore(plugin): pin SDK 0.6.18 2026-09-27 06:36:21 +00:00
RockChinQ 58c1b8ee4f Merge pull request #2597 from langbot-app/fix/pin-sdk-0.6.17
chore(plugin): pin SDK 0.6.17
2026-09-27 13:48:23 +08:00
RockChinQ b06083d9b6 chore(plugin): pin SDK 0.6.17 2026-09-27 05:36:56 +00:00
RockChinQ 30e7d9409e Merge pull request #2596 from langbot-app/dev/shared-worker-local-e2e
chore(plugin): pin SDK 0.6.16
2026-09-27 12:53:21 +08:00
RockChinQ c7306dc8b2 chore(plugin): pin SDK 0.6.16 2026-09-27 04:38:11 +00:00
RockChinQ 16d3ac58b8 Merge pull request #2595 from langbot-app/fix/pin-sdk-0.6.15
fix(plugin): pin SDK 0.6.15
2026-09-27 11:07:49 +08:00
RockChinQ 6da0aea901 fix(plugin): pin SDK 0.6.15 2026-09-27 02:59:40 +00:00
huanghuoguoguo 6a1cc49c54 docs(agent): document standalone LangBot CLI (#2571) 2026-09-27 10:27:48 +08:00
RockChinQ 718fa771e4 Merge pull request #2594 from langbot-app/fix/shared-install-readiness-final
fix(plugin): bound shared install readiness
2026-09-27 09:03:26 +08:00
RockChinQ d1a0ae9b26 fix(plugin): bound shared install readiness 2026-09-27 00:55:58 +00:00
RockChinQ e77f66d22c Merge pull request #2593 from langbot-app/fix/pin-sdk-0.6.14
fix(plugin): pin SDK 0.6.14 and bound shared readiness
2026-09-27 08:25:38 +08:00
RockChinQ 765dac74ea fix(plugin): pin SDK 0.6.14 and bound shared readiness 2026-09-27 00:11:57 +00:00
RockChinQ bd8eaf3123 Merge pull request #2591 from langbot-app/fix/pin-sdk-0.6.13
chore(runtime): pin plugin SDK 0.6.13
2026-09-27 05:38:07 +08:00
RockChinQ 3d6a203724 chore(runtime): pin plugin SDK 0.6.13 2026-09-26 21:28:52 +00:00
RockChinQ a0cab74ea7 Merge pull request #2590 from langbot-app/fix/pin-sdk-0.6.12
chore(runtime): pin plugin SDK 0.6.12
2026-09-27 04:50:46 +08:00
RockChinQ e63fcb36e4 chore(runtime): pin plugin SDK 0.6.12 2026-09-26 20:42:15 +00:00
RockChinQ 7c282964c8 Merge pull request #2589 from langbot-app/fix/pin-sdk-0.6.11
chore(runtime): pin plugin SDK 0.6.11
2026-09-27 02:29:52 +08:00
RockChinQ 755149ab0a chore(runtime): pin plugin SDK 0.6.11 2026-09-26 18:16:39 +00:00
RockChinQ 8a55781f02 Merge pull request #2588 from langbot-app/fix/pin-sdk-0.6.10
chore(runtime): pin plugin SDK 0.6.10
2026-09-27 01:23:02 +08:00
RockChinQ 3493660f5e chore(runtime): pin plugin SDK 0.6.10 2026-09-26 17:08:51 +00:00
RockChinQ 5e21d02ce4 Merge pull request #2587 from langbot-app/fix/pin-sdk-0.6.9
chore(runtime): pin plugin SDK 0.6.9
2026-09-26 22:46:54 +08:00
RockChinQ 64dc04d848 chore(runtime): pin plugin SDK 0.6.9 2026-09-26 14:33:35 +00:00
RockChinQ 81c38be0af Merge pull request #2586 from langbot-app/fix/pin-sdk-0.6.8
chore(runtime): pin plugin SDK 0.6.8
2026-09-26 21:11:34 +08:00
RockChinQ ccbf7c226e chore(runtime): pin plugin SDK 0.6.8 2026-09-26 13:02:43 +00:00
RockChinQ 2356086550 Merge pull request #2585 from langbot-app/fix/pin-sdk-0.6.7
fix(plugin): pin runtime SDK 0.6.7
2026-09-26 14:26:42 +08:00
RockChinQ 92669ef584 fix(plugin): pin runtime SDK 0.6.7 2026-09-26 06:19:15 +00:00
RockChinQ aad78767cd Merge pull request #2584 from langbot-app/fix/pin-sdk-0.6.6
fix(plugin): pin runtime SDK 0.6.6
2026-09-26 13:29:25 +08:00
RockChinQ 37e80e510f fix(plugin): pin runtime SDK 0.6.6 2026-09-26 05:21:50 +00:00
RockChinQ f34814270c Merge pull request #2583 from langbot-app/fix/pin-sdk-0.6.5
fix(plugin): pin runtime SDK 0.6.5
2026-09-26 12:36:55 +08:00
RockChinQ 9690f0bc6c fix(plugin): pin runtime SDK 0.6.5 2026-09-26 04:29:05 +00:00
RockChinQ dd88a54118 Merge pull request #2581 from langbot-app/fix/pin-sdk-0.6.4
fix(plugin): pin runtime SDK 0.6.4
2026-09-26 10:10:07 +08:00
RockChinQ ede433f0b1 fix(plugin): pin runtime SDK 0.6.4 2026-09-25 22:34:08 +00:00
RockChinQ 19634d3f54 Merge pull request #2580 from langbot-app/fix/certification-artifact-digest-backfill
fix(plugin): backfill certified artifact digest
2026-09-26 05:23:05 +08:00
RockChinQ a5e5ee5fb8 fix(plugin): backfill certified artifact digest 2026-09-25 21:03:47 +00:00
RockChinQ 3dee5f5cf8 Merge pull request #2578 from langbot-app/feat/certified-cross-tenant-worker-pool
feat(plugin): route certified installs to shared workers
2026-09-26 03:17:25 +08:00
RockChinQ deca26a666 chore(plugin): pin SDK 0.6.3 2026-09-25 19:09:16 +00:00
RockChinQ f488087cc4 Merge remote-tracking branch 'origin/master' into feat/certified-cross-tenant-worker-pool 2026-09-25 13:33:22 +00:00
RockChinQ 300f5825bb fix(plugin): fail closed on incomplete certification records 2026-09-25 13:13:35 +00:00
Type_rBody 840214da23 Merge pull request #2577 from langbot-app/fix/certified-plugin-oss-force-install
fix(plugin): keep certified marketplace packages installable on OSS
2026-09-25 20:51:36 +08:00
RockChinQ 9f296bd57e feat(plugin): route certified installs to shared workers 2026-09-25 12:48:55 +00:00
TyperBody 4b9a1590df style(plugin): apply ruff formatting to certification.py 2026-09-25 20:37:57 +08:00
TyperBody c76fd2d7c5 fix(migration): treat an unselected runner id as not_legacy
A saved pipeline may carry the post-migration shape
{'ai': {'runner': {'id': ''}, 'runner_config': {}}} while no runner has been
selected yet. The planner matched the empty id against the certified
'plugin:author/name/component' form, failed, and returned a malformed-id
blocker, so the whole 'migrate all' batch stopped with both pipelines reported
as blocked even though there was no legacy section and nothing to convert.

A blank id with no legacy runner section now reports not_legacy: no work is
needed and no target is synthesized. A blank id that still coexists with a
legacy section remains an explicit invalid_runner_id blocker, because that
ambiguous state must be resolved by the operator rather than guessed.
2026-09-25 20:02:17 +08:00
TyperBody afe700f1d8 fix(plugin): keep certified marketplace packages installable on OSS
The certified-archive admission gate treated any declared certificate it could
not resolve as an untrusted archive and rejected the install with
CERTIFIED_PLUGIN_OSS_FORCE_REQUIRED. OSS ships an empty
plugin.certification.trusted_public_keys ring and the marketplace signs every
package with its own issuer key, so all certified marketplace packages (for
example langbot-team/RunnerDemo and langbot-team/LocalAgent) failed at the
'validating plugin package' step before artifact storage.

Admission now distinguishes an unresolvable declaration from a configured trust
decision that fails:

- record certificate_id only when the key_id is actually present in the
  configured ring, so an empty ring yields an unresolvable declaration;
- OSS degrades an unresolvable declaration to the existing oss_dev dedicated
  profile with CERTIFIED_PLUGIN_OSS_UNTRUSTED_DEDICATED instead of blocking;
- a resolvable declaration that still fails keeps requiring the explicit
  administrator force (CERTIFIED_PLUGIN_OSS_FORCE_REQUIRED);
- Cloud stays fail-closed and rejects before storage.

No shared-runtime privilege is granted when the issuer is not trusted, so this
withholds isolation rather than escalating it.
2026-09-25 19:32:54 +08:00
Type_rBody 9631eccaaf Merge pull request #2576 from langbot-app/fix/i18n-locale-sync
fix(web): align i18n locale keys and ordering with en-US
2026-09-25 18:33:27 +08:00
TyperBody 262980d612 fix(web): add missing common.next/previous pagination keys
The bot session monitor paging controls use `common.next` and
`common.previous`, but those keys never existed in any locale. They were
only rendered because of the hardcoded `defaultValue: 'Next'`/`'Previous'`.
Removing those fallbacks (previous commit) made i18next render the raw key
name, so the Playwright smoke tests could no longer find the "Next" button.

Add `common.previous` and `common.next` to all 8 locales (reusing each
language's existing `guidedTour.previous`/`next` wording) and re-align the
locale key order with the `en-US` reference.

Verified locally:
- scripts/check-i18n.mjs passes for all locales
- every t('...') key referenced by BotSessionMonitor.tsx now exists in en-US
- tests/e2e/bot-session-tool-timeline.spec.ts: 13/13 passed (including the
  two request-recovery cases that failed in CI)
- prettier / tsc / eslint clean
2026-09-25 18:07:11 +08:00