test(web): complete schedule catalog validation

This commit is contained in:
pku-xht
2026-08-26 14:40:12 +08:00
parent 673aeb65af
commit 9cd9c7f634
3 changed files with 27 additions and 23 deletions
+9 -9
View File
@@ -113,18 +113,18 @@ pnpm applies local patches to the following packages at install time, so shipped
The project owner authorizes distribution of every version of the official `@anthropic-ai/claude-agent-sdk` package and the official Claude Code CLI/platform payloads that each version declares through `optionalDependencies`. This identity-scoped authorization does not classify their declared terms as permissive and does not cover any unrelated runtime package; version, declared-license, and payload-set changes still require the ordinary dependency, lockfile, compatibility, terms, and notices review.
The installed SDK 0.3.220 declares the following optional platform packages. Each carries the official Claude Code 2.1.220 executable; the package identities and versions come from the SDK manifest, while the declared license field is verified against the platform payload installed for the current host.
The installed SDK 0.3.241 declares the following optional platform packages. Each carries the official Claude Code 2.1.241 executable; the package identities and versions come from the SDK manifest, while the declared license field is verified against the platform payload installed for the current host.
| Optional platform package | Version | Declared license |
| --- | --- | --- |
| [`@anthropic-ai/claude-agent-sdk-darwin-arm64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-darwin-arm64) | 0.3.220 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-darwin-x64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-darwin-x64) | 0.3.220 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-linux-arm64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-linux-arm64) | 0.3.220 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-linux-arm64-musl`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-linux-arm64-musl) | 0.3.220 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-linux-x64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-linux-x64) | 0.3.220 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-linux-x64-musl`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-linux-x64-musl) | 0.3.220 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-win32-arm64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-win32-arm64) | 0.3.220 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-win32-x64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-win32-x64) | 0.3.220 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-darwin-arm64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-darwin-arm64) | 0.3.241 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-darwin-x64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-darwin-x64) | 0.3.241 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-linux-arm64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-linux-arm64) | 0.3.241 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-linux-arm64-musl`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-linux-arm64-musl) | 0.3.241 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-linux-x64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-linux-x64) | 0.3.241 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-linux-x64-musl`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-linux-x64-musl) | 0.3.241 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-win32-arm64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-win32-arm64) | 0.3.241 | SEE LICENSE IN LICENSE.md |
| [`@anthropic-ai/claude-agent-sdk-win32-x64`](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk-win32-x64) | 0.3.241 | SEE LICENSE IN LICENSE.md |
## Development-only npm dependencies
+4
View File
@@ -716,6 +716,10 @@ describe.skipIf(MODE === 'record')('web e2e: active Schedule catalog', () => {
const trigger = page.getByRole('button', { name: '3 reminders' })
await trigger.waitFor({ timeout: 15_000 })
await trigger.focus()
await page.keyboard.press('Tab')
expect(await trigger.evaluate(element => element === document.activeElement)).toBe(false)
await page.keyboard.press('Shift+Tab')
expect(await trigger.evaluate(element => element === document.activeElement)).toBe(true)
await trigger.press('Enter')
expect(await trigger.getAttribute('aria-expanded')).toBe('true')
await trigger.press('Escape')
+14 -14
View File
@@ -255,15 +255,15 @@ const EXACT_EDITS: readonly ExactEdit[] = [
// A plain fence listing the bundle's mounted tree: a bare token, no quotes.
id: 'agent-spine-demo-mounted-tree',
file: 'packages/examples/agent-spine-demo/README.md',
find: '@cordisjs/plugin-timer timer service (writes nothing to stdout)',
replace: '@deepseek-ai/cordis-plugin-timer timer service (writes nothing to stdout)',
find: '@cordisjs/plugin-timer timer service',
replace: '@deepseek-ai/cordis-plugin-timer timer service',
expect: 1,
},
{
id: 'agent-spine-demo-mounted-tree-zh',
file: 'packages/examples/agent-spine-demo/README.zh.md',
find: '@cordisjs/plugin-timer timer service (writes nothing to stdout)',
replace: '@deepseek-ai/cordis-plugin-timer timer service (writes nothing to stdout)',
find: '@cordisjs/plugin-timer timer service',
replace: '@deepseek-ai/cordis-plugin-timer timer service',
expect: 1,
},
{
@@ -302,34 +302,34 @@ const VENDORED_LIBRARY = /^@deepseek-ai\\/(cosmokit|schemastery)(\\/|$)/
expect: 1,
},
{
// The step-1 file tree must rescope the package name while preserving the
// current publishable-vendor guidance around it.
// The step-1 file tree told the reader to keep the upstream name, one
// paragraph above the invariant that says to rescope it.
id: 'vendoring-cookbook-tree-comment',
file: 'docs/cookbook/adding-a-vendored-package.md',
find: ' package.json # from upstream; keep name/exports/type (publishable release member, no private flag)',
replace: ' package.json # from upstream; rescope the name, keep exports/type (publishable release member, no private flag)',
find: ' package.json # from upstream; set "private": true, keep name/exports/type',
replace: ' package.json # from upstream; set "private": true, rescope the name, keep exports/type',
expect: 1,
},
{
id: 'vendoring-cookbook-tree-comment-zh',
file: 'docs/cookbook/adding-a-vendored-package.zh.md',
find: ' package.json # from upstream; keep name/exports/type (publishable release member, no private flag)',
replace: ' package.json # from upstream; rescope the name, keep exports/type (publishable release member, no private flag)',
find: ' package.json # from upstream; set "private": true, keep name/exports/type',
replace: ' package.json # from upstream; set "private": true, rescope the name, keep exports/type',
expect: 1,
},
{
// The checklist told the next vendoring to keep upstream's name.
id: 'vendoring-cookbook-name-invariant',
file: 'docs/cookbook/adding-a-vendored-package.md',
find: "keep upstream's `name`/`exports`/`type`",
replace: "rescope the `name` ([mapping](../rescope.md)) while keeping upstream's `exports`/`type`",
find: "keep upstream's `name`/`version`/`exports`/`type`",
replace: "rescope the `name` ([mapping](../rescope.md)) while keeping upstream's `version`/`exports`/`type`",
expect: 1,
},
{
id: 'vendoring-cookbook-name-invariant-zh',
file: 'docs/cookbook/adding-a-vendored-package.zh.md',
find: '保留上游的 `name`/`exports`/`type`',
replace: '改写 `name` 的 scope[映射](../rescope.zh.md)),保留上游的 `exports`/`type`',
find: '保留上游的 `name`/`version`/`exports`/`type`',
replace: '改写 `name` 的 scope[映射](../rescope.zh.md)),保留上游的 `version`/`exports`/`type`',
expect: 1,
},
{