docs: fix release smoke test failures

This commit is contained in:
Turtle
2026-08-13 13:43:43 +08:00
parent be96840412
commit 62080d49c2
66 changed files with 1150 additions and 124 deletions

View File

@@ -2,5 +2,5 @@
# side as of the last confirmed-consistent state. Both languages carry equal authority;
# after editing either side, bring the other along and re-record with:
# pnpm run verify-translation-pairing --write docs/user/develop/framework/events.md
events.md: 4a6ecbad614cf2debccaee9ace1086273d8fb95b
events.zh.md: c77747bf6ac767c69e4f2d9cfe7375b71bd388e6
events.md: 1d9fe5c8f5068de6ad8b2abaa85cf67be35c8459
events.zh.md: 8bb9447a270cc2db966b1e01298a831a60a1b9c1

View File

@@ -40,7 +40,7 @@ ctx.on('my-plugin/ready', ({ id }) => {
### bail — short circuit
Listeners run in order; the first non-`undefined` result becomes the final result:
Listeners run in order; the first result other than `null`, `false`, or `undefined` becomes the final result:
```ts ignore-check
// Dispatch
@@ -49,13 +49,13 @@ const result = ctx.bail('some-check', input)
// Listen: a returned value stops later listeners.
ctx.on('some-check', (input) => {
if (shouldBlock(input)) return 'blocked'
// Return undefined to continue to the next listener.
// Return null, false, or undefined to continue to the next listener.
})
```
### serial — ordered execution
Listeners run in registration order and asynchronous results are awaited. The first listener to return a non-empty value stops further execution:
Listeners run in registration order and asynchronous results are awaited. The first result other than `null`, `false`, or `undefined` stops further execution:
```ts ignore-check
await ctx.serial('setup-phase', context)

View File

@@ -40,7 +40,7 @@ ctx.on('my-plugin/ready', ({ id }) => {
### bail — 短路
依次调用监听器,第一个非 `undefined` 的返回值将作为最终结果:
监听器按顺序运行,第一个不是 `null`、`false` 或 `undefined` 的返回值会成为最终结果:
```ts ignore-check
// Dispatch
@@ -49,13 +49,13 @@ const result = ctx.bail('some-check', input)
// Listen: a returned value stops later listeners.
ctx.on('some-check', (input) => {
if (shouldBlock(input)) return 'blocked'
// Return undefined to continue to the next listener.
// Return null, false, or undefined to continue to the next listener.
})
```
### serial — 顺序执行
监听器按注册顺序依次执行,并等待异步结果;第一个返回非空值的监听器会终止后续执行:
监听器按注册顺序依次执行,并等待异步结果;第一个不是 `null`、`false` 或 `undefined` 的返回值会终止后续执行:
```ts ignore-check
await ctx.serial('setup-phase', context)

View File

@@ -2,5 +2,5 @@
# side as of the last confirmed-consistent state. Both languages carry equal authority;
# after editing either side, bring the other along and re-record with:
# pnpm run verify-translation-pairing --write docs/user/develop/framework/service.md
service.md: a9e873f1ba969b1f2d22266f8ec03207f84eeddc
service.zh.md: a201280bc38176f57f5354ab205ae700c7b04a89
service.md: 03f4e7dc4df934495a4b203066183753b621339e
service.zh.md: 2f4c01e0ea6a87a87ca694b265b07e07098f3e59

View File

@@ -117,7 +117,7 @@ This prevents a plugin from calling a service that no longer exists.
name: '@deepseek-ai/cordis-plugin-group'
group: true
isolate:
bash: true
shell: true
config:
- name: '@deepseek-ai/dsh-bash-local'
config:
@@ -128,7 +128,7 @@ This prevents a plugin from calling a service that no longer exists.
name: '@deepseek-ai/cordis-plugin-group'
group: true
isolate:
bash: true
shell: true
config:
- name: '@deepseek-ai/dsh-bash-local'
config:

View File

@@ -108,6 +108,8 @@ export function apply(ctx: Context) {
这可以防止插件调用已不存在的服务。
<a id="service-isolation"></a>
## 服务隔离
`cordis.yml` 支持服务隔离——同一个服务可以有多个实例,不同插件组看到不同实例:
@@ -117,7 +119,7 @@ export function apply(ctx: Context) {
name: '@deepseek-ai/cordis-plugin-group'
group: true
isolate:
bash: true
shell: true
config:
- name: '@deepseek-ai/dsh-bash-local'
config:
@@ -128,7 +130,7 @@ export function apply(ctx: Context) {
name: '@deepseek-ai/cordis-plugin-group'
group: true
isolate:
bash: true
shell: true
config:
- name: '@deepseek-ai/dsh-bash-local'
config: