From 1d4d22c1ff126b3c43fade32596ddf7bc9cda58a Mon Sep 17 00:00:00 2001 From: creatixchu Date: Fri, 11 Sep 2026 15:26:54 +0800 Subject: [PATCH] test: complete projection fixtures and configuration catalog --- docs/config-catalog.i18n.yaml | 4 ++-- docs/config-catalog.md | 2 +- docs/config-catalog.zh.md | 2 +- packages/core/session/tests/message-projections.spec.ts | 7 +++++-- .../session/session-format-catalog/tests/catalog.spec.ts | 2 +- 5 files changed, 10 insertions(+), 7 deletions(-) diff --git a/docs/config-catalog.i18n.yaml b/docs/config-catalog.i18n.yaml index e12f9b02c4..74fb981f67 100644 --- a/docs/config-catalog.i18n.yaml +++ b/docs/config-catalog.i18n.yaml @@ -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/config-catalog.md -config-catalog.md: ac456fd50f29d7efc2c30aea9420083a76911c61 -config-catalog.zh.md: 9e49687d376d16d481d4417f37704c7a8512250e +config-catalog.md: a9dfb42b9eb5d6b779c10a92ef96e51c078dd449 +config-catalog.zh.md: 4d5547f22d95b50e9d4a30988192ff0eeb58032d diff --git a/docs/config-catalog.md b/docs/config-catalog.md index ac456fd50f..a9dfb42b9e 100644 --- a/docs/config-catalog.md +++ b/docs/config-catalog.md @@ -3500,7 +3500,7 @@ These load from a `cordis.yml` entry with no `config:` block; they declare no co - `@deepseek-ai/dsh-command-feedback` — requires `commands` ([`packages/feedback/command-feedback/src/index.ts`](../packages/feedback/command-feedback/src/index.ts)) - `@deepseek-ai/dsh-command-goal` — requires `commands` · `goals` ([`packages/goal/command-goal/src/index.ts`](../packages/goal/command-goal/src/index.ts)) - `@deepseek-ai/dsh-commands` ([`packages/interaction/commands/src/index.ts`](../packages/interaction/commands/src/index.ts)) -- `@deepseek-ai/dsh-compaction-image-offload` — requires `agents` ([`packages/compaction/compaction-image-offload/src/index.ts`](../packages/compaction/compaction-image-offload/src/index.ts)) +- `@deepseek-ai/dsh-compaction-image-offload` — requires `agents` · `sessions` ([`packages/compaction/compaction-image-offload/src/index.ts`](../packages/compaction/compaction-image-offload/src/index.ts)) - `@deepseek-ai/dsh-cordis-client-runner` ([`packages/extensions/cordis-client-runner/src/index.ts`](../packages/extensions/cordis-client-runner/src/index.ts)) - `@deepseek-ai/dsh-deepseek-llm-api-extensions` ([`packages/llm/deepseek-llm-api-extensions/src/index.ts`](../packages/llm/deepseek-llm-api-extensions/src/index.ts)) - `@deepseek-ai/dsh-experimental-client-ui-agent-team` ([`packages/experimental/client-ui-agent-team/src/index.ts`](../packages/experimental/client-ui-agent-team/src/index.ts)) diff --git a/docs/config-catalog.zh.md b/docs/config-catalog.zh.md index 9e49687d37..4d5547f22d 100644 --- a/docs/config-catalog.zh.md +++ b/docs/config-catalog.zh.md @@ -3502,7 +3502,7 @@ export interface Config { - `@deepseek-ai/dsh-command-feedback` — 需要 `commands`([`packages/feedback/command-feedback/src/index.ts`](../packages/feedback/command-feedback/src/index.ts)) - `@deepseek-ai/dsh-command-goal` — 需要 `commands` · `goals`([`packages/goal/command-goal/src/index.ts`](../packages/goal/command-goal/src/index.ts)) - `@deepseek-ai/dsh-commands`([`packages/interaction/commands/src/index.ts`](../packages/interaction/commands/src/index.ts)) -- `@deepseek-ai/dsh-compaction-image-offload`,需要 `agents`([`packages/compaction/compaction-image-offload/src/index.ts`](../packages/compaction/compaction-image-offload/src/index.ts)) +- `@deepseek-ai/dsh-compaction-image-offload`,需要 `agents` 和 `sessions`([`packages/compaction/compaction-image-offload/src/index.ts`](../packages/compaction/compaction-image-offload/src/index.ts)) - `@deepseek-ai/dsh-cordis-client-runner`([`packages/extensions/cordis-client-runner/src/index.ts`](../packages/extensions/cordis-client-runner/src/index.ts)) - `@deepseek-ai/dsh-deepseek-llm-api-extensions`([`packages/llm/deepseek-llm-api-extensions/src/index.ts`](../packages/llm/deepseek-llm-api-extensions/src/index.ts)) - `@deepseek-ai/dsh-experimental-client-ui-agent-team`([`packages/experimental/client-ui-agent-team/src/index.ts`](../packages/experimental/client-ui-agent-team/src/index.ts)) diff --git a/packages/core/session/tests/message-projections.spec.ts b/packages/core/session/tests/message-projections.spec.ts index e9943c1e1d..055dac5ff6 100644 --- a/packages/core/session/tests/message-projections.spec.ts +++ b/packages/core/session/tests/message-projections.spec.ts @@ -63,7 +63,10 @@ describe('plugin-owned message projections', () => { const ctx = new Context() contexts.push(ctx) await ctx.plugin(SessionStore) - const fiber = await ctx.plugin((owner) => { owner.sessions.registerMessageProjection(projection) }) + const fiber = await ctx.plugin({ + inject: ['sessions'], + apply(owner: Context) { owner.sessions.registerMessageProjection(projection) }, + }) expect(() => ctx.sessions.registerMessageProjection(projection)).toThrow(/already registered/) const live = ctx.sessions.create(SessionId('live')) const source = input(live) @@ -75,7 +78,7 @@ describe('plugin-owned message projections', () => { const child = ctx.sessions.fork(live) expect(child.deriveMessages()).toEqual(before) const restored = ctx.sessions.prepare(SessionId('restore'), { - seed: live.snapshotEvents(), meta: { ...live.header, id: SessionId('restore') }, + seed: [...live.snapshotEvents()], meta: { ...live.header, id: SessionId('restore') }, inheritedEventCount: live.inheritedEventCount, eventState: 'shared-frozen', }) expect(restored.deriveMessages()).toEqual(before) diff --git a/packages/session/session-format-catalog/tests/catalog.spec.ts b/packages/session/session-format-catalog/tests/catalog.spec.ts index a1f2abe167..fdb7b4927d 100644 --- a/packages/session/session-format-catalog/tests/catalog.spec.ts +++ b/packages/session/session-format-catalog/tests/catalog.spec.ts @@ -22,7 +22,7 @@ describe('first-party Session format catalog', () => { const session = Session.create(SessionId('projection-catalog')) session.append('user/message', createUserMessage({ content: [{ type: 'text', text: 'no image' }], source: { kind: 'user' } }), { surfaceOp: 'append' }) const artifact = { - header: session.header, inheritedEventCount: 0, + header: { ...session.header, delegationDepth: 0 }, inheritedEventCount: 0, events: [...session.snapshotEvents(), { type: 'image/offload', seq: 1, time: 0, data: { targets: [{ seq: 0, imageIndexes: [0] }] } }], } expect(() => validateInstalledCurrentSessionArtifact(artifact)).toThrow(/image index 0 does not exist/)