build(vendor): rescope the vendored Cordis packages into @deepseek-ai

Machine-produced by `pnpm run rescope-vendor --apply` plus the regeneration it
prints: `pnpm install` for the lockfile, `pnpm run gen-third-party-notices`,
`verify-translation-pairing --write` for the touched bilingual pairs,
`gen-doc-graphs`, and one typert snapshot whose ids embed character offsets.
`pnpm run rescope-vendor --check` verifies the result.

Renames nine vendored packages (cordis, cosmokit, schemastery and the six
@cordisjs plugins) and every reference that resolves them: manifest names and
dependency keys, module specifiers including declare-module merges, cordis.yml
plugin names, tsconfig paths, every Markdown fence, and `docs/` prose.
Directory names, upstream versions, and dependency ranges are unchanged, so
vendor/README.md still reads as an upstream snapshot; its manifest table gains
an upstream-name column so THIRD_PARTY_NOTICES keeps MIT attribution pointed
at each fork's origin.

The tutorial tier follows the rename end to end: its yaml fences named plugins
the Loader can no longer resolve, its `ts ignore-check` fences disagreed with
the compiled fences beside them, and its prose quoted both. The contracts that
told readers to keep upstream names — the root convention and the vendoring
cookbook's tree comment and manifest invariant — now say to rescope instead.

Two rules read `@deepseek-ai/` as "another workspace plugin": the client bundle
purity gate now names the vendored libraries a browser bundle inlines, and the
files where a bare `cordis` is an agent-preset id keep that product data.
This commit is contained in:
imccyu
2026-08-10 22:04:06 +08:00
parent 78e9b8bec5
commit ec601ca13d
1400 changed files with 3337 additions and 3317 deletions

View File

@@ -35,13 +35,13 @@
},
"peerDependencies": {
"@deepseek-ai/dsh-invariants": "^0.0.1",
"cordis": "^4.0.0-rc.7"
"@deepseek-ai/cordis": "^4.0.0-rc.7"
},
"devDependencies": {
"@deepseek-ai/dsh-invariants": "workspace:^",
"@deepseek-ai/dsh-tool-cordis": "workspace:^",
"@deepseek-ai/dsh-typert-registry": "workspace:^",
"cordis": "^4.0.0-rc.7",
"@deepseek-ai/cordis": "^4.0.0-rc.7",
"zod": "^4.4.3"
}
}

View File

@@ -653,7 +653,7 @@ class FaceAnalyzer {
for (const statement of sourceFile.statements) {
if (!ts.isModuleDeclaration(statement)
|| !ts.isStringLiteral(statement.name)
|| statement.name.text !== 'cordis'
|| statement.name.text !== '@deepseek-ai/cordis'
|| statement.body === undefined
|| !ts.isModuleBlock(statement.body)) continue
for (const member of statement.body.statements) {
@@ -2545,7 +2545,7 @@ function sourceFileHasSurface(sourceFile: ts.SourceFile): boolean {
}
if (!ts.isModuleDeclaration(statement)
|| !ts.isStringLiteral(statement.name)
|| statement.name.text !== 'cordis'
|| statement.name.text !== '@deepseek-ai/cordis'
|| statement.body === undefined
|| !ts.isModuleBlock(statement.body)) continue
if (statement.body.statements.some(member => ts.isInterfaceDeclaration(member)

View File

@@ -4,7 +4,7 @@
*/
/* jscpd:ignore-start */
import type { Context } from 'cordis'
import type { Context } from '@deepseek-ai/cordis'
import type { InvariantInstaller } from '@deepseek-ai/dsh-invariants'
const PACKAGE_NAME = '@deepseek-ai/dsh-typert-generator'

View File

@@ -407,7 +407,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/host:packages/host/src/index.ts#Agent#id@480",
"id": "@fixture/host:packages/host/src/index.ts#Agent#id@493",
"kind": "property",
"location": {
"column": 3,
@@ -426,7 +426,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/host:packages/host/src/index.ts#Agent#state@502",
"id": "@fixture/host:packages/host/src/index.ts#Agent#state@515",
"kind": "property",
"location": {
"column": 3,
@@ -446,7 +446,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Read the public display label.",
"id": "@fixture/host:packages/host/src/index.ts#Agent#label@735",
"id": "@fixture/host:packages/host/src/index.ts#Agent#label@748",
"jsDoc": "/** Read the public display label. */",
"kind": "getter",
"location": {
@@ -472,7 +472,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Accept a public display label.",
"id": "@fixture/host:packages/host/src/index.ts#Agent#label@823",
"id": "@fixture/host:packages/host/src/index.ts#Agent#label@836",
"jsDoc": "/** Accept a public display label. */",
"kind": "setter",
"location": {
@@ -507,7 +507,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Run one typed input.",
"id": "@fixture/host:packages/host/src/index.ts#Agent#run@902",
"id": "@fixture/host:packages/host/src/index.ts#Agent#run@915",
"jsDoc": "/** Run one typed input. */",
"kind": "method",
"location": {
@@ -598,7 +598,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Report readiness.",
"id": "@fixture/host:packages/host/src/index.ts#AliasedService#ready@1181",
"id": "@fixture/host:packages/host/src/index.ts#AliasedService#ready@1194",
"jsDoc": "/** Report readiness. */",
"kind": "method",
"location": {
@@ -651,7 +651,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Report readiness.",
"id": "@fixture/host:packages/host/src/index.ts#DefaultOnlyService#ready@1404",
"id": "@fixture/host:packages/host/src/index.ts#DefaultOnlyService#ready@1417",
"jsDoc": "/** Report readiness. */",
"kind": "method",
"location": {
@@ -704,7 +704,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Inspect one agent without flattening its generic state.",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#inspect@1767",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#inspect@1780",
"jsDoc": "/** Inspect one agent without flattening its generic state. */",
"kind": "method",
"location": {
@@ -747,7 +747,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Keep an npm-owned type as External.",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#acceptsExternal@1965",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#acceptsExternal@1978",
"jsDoc": "/** Keep an npm-owned type as External. */",
"kind": "method",
"location": {
@@ -782,7 +782,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Accept a developer-authored enum without flattening it.",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#setPhase@2102",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#setPhase@2115",
"jsDoc": "/** Accept a developer-authored enum without flattening it. */",
"kind": "method",
"location": {
@@ -817,7 +817,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Exercise every retained type-graph shape from a public boundary.",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#inspectSyntax@2234",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#inspectSyntax@2247",
"jsDoc": "/** Exercise every retained type-graph shape from a public boundary. */",
"kind": "method",
"location": {
@@ -852,7 +852,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": true,
"description": "Preserve async source metadata without changing its type signature.",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#inspectAsync@2369",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#inspectAsync@2382",
"jsDoc": "/** Preserve async source metadata without changing its type signature. */",
"kind": "method",
"location": {
@@ -887,7 +887,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Retain an authored binding-pattern parameter.",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#destructure@2496",
"id": "@fixture/host:packages/host/src/index.ts#DemoService#destructure@2509",
"jsDoc": "/** Retain an authored binding-pattern parameter. */",
"kind": "method",
"location": {
@@ -2816,7 +2816,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "type:packages/host/src/index.ts:116:31#1#ready@3038",
"id": "type:packages/host/src/index.ts:116:31#1#ready@3064",
"kind": "property",
"location": {
"column": 33,
@@ -2919,7 +2919,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "type:packages/host/src/index.ts:12:43#1#ready@387",
"id": "type:packages/host/src/index.ts:12:43#1#ready@400",
"kind": "property",
"location": {
"column": 45,
@@ -3037,7 +3037,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "type:packages/host/src/index.ts:139:31#1#ready@3476",
"id": "type:packages/host/src/index.ts:139:31#1#ready@3515",
"kind": "property",
"location": {
"column": 33,
@@ -3207,7 +3207,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"name": "Service",
"target": {
"kind": "external",
"module": "cordis",
"module": "@deepseek-ai/cordis",
"name": "Service",
"subpath": ".",
},
@@ -3224,7 +3224,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"name": "Service",
"target": {
"kind": "external",
"module": "cordis",
"module": "@deepseek-ai/cordis",
"name": "Service",
"subpath": ".",
},
@@ -3241,7 +3241,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"name": "Service",
"target": {
"kind": "external",
"module": "cordis",
"module": "@deepseek-ai/cordis",
"name": "Service",
"subpath": ".",
},
@@ -3265,7 +3265,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "type:packages/host/src/index.ts:68:24#1#ready@1790",
"id": "type:packages/host/src/index.ts:68:24#1#ready@1803",
"kind": "property",
"location": {
"column": 26,
@@ -5711,7 +5711,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"line": 101,
},
"members": [
"@fixture/host:packages/host/src/index.ts#AliasedService#ready@1181",
"@fixture/host:packages/host/src/index.ts#AliasedService#ready@1194",
],
"summary": "Service exported only through a non-default alias.",
"symbol": "@fixture/host:packages/host/src/index.ts#AliasedService",
@@ -5736,7 +5736,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"line": 102,
},
"members": [
"@fixture/host:packages/host/src/index.ts#DefaultOnlyService#ready@1404",
"@fixture/host:packages/host/src/index.ts#DefaultOnlyService#ready@1417",
],
"summary": "Service exported only through the package default.",
"symbol": "@fixture/host:packages/host/src/index.ts#DefaultOnlyService",
@@ -5760,12 +5760,12 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"line": 100,
},
"members": [
"@fixture/host:packages/host/src/index.ts#DemoService#inspect@1767",
"@fixture/host:packages/host/src/index.ts#DemoService#acceptsExternal@1965",
"@fixture/host:packages/host/src/index.ts#DemoService#setPhase@2102",
"@fixture/host:packages/host/src/index.ts#DemoService#inspectSyntax@2234",
"@fixture/host:packages/host/src/index.ts#DemoService#inspectAsync@2369",
"@fixture/host:packages/host/src/index.ts#DemoService#destructure@2496",
"@fixture/host:packages/host/src/index.ts#DemoService#inspect@1780",
"@fixture/host:packages/host/src/index.ts#DemoService#acceptsExternal@1978",
"@fixture/host:packages/host/src/index.ts#DemoService#setPhase@2115",
"@fixture/host:packages/host/src/index.ts#DemoService#inspectSyntax@2247",
"@fixture/host:packages/host/src/index.ts#DemoService#inspectAsync@2382",
"@fixture/host:packages/host/src/index.ts#DemoService#destructure@2509",
],
"summary": "Fixture service with generic, mapped, and truly external boundary types.",
"symbol": "@fixture/host:packages/host/src/index.ts#DemoService",
@@ -5827,7 +5827,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"abstract": false,
"async": false,
"description": "Return the host-owned object unchanged.",
"id": "@fixture/client:packages/client/src/index.ts#ClientBridge#reflect@1096",
"id": "@fixture/client:packages/client/src/index.ts#ClientBridge#reflect@1109",
"jsDoc": "/** Return the host-owned object unchanged. */",
"kind": "method",
"location": {
@@ -5888,7 +5888,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/client:packages/client/src/index.ts#ClientView#agent@587",
"id": "@fixture/client:packages/client/src/index.ts#ClientView#agent@600",
"kind": "property",
"location": {
"column": 3,
@@ -5907,7 +5907,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/client:packages/client/src/index.ts#ClientView#inherited@632",
"id": "@fixture/client:packages/client/src/index.ts#ClientView#inherited@645",
"kind": "property",
"location": {
"column": 3,
@@ -5926,7 +5926,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/client:packages/client/src/index.ts#ClientView#importedAgent@666",
"id": "@fixture/client:packages/client/src/index.ts#ClientView#importedAgent@679",
"kind": "property",
"location": {
"column": 3,
@@ -5945,7 +5945,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/client:packages/client/src/index.ts#ClientView#importedAgentWithNamedArgument@739",
"id": "@fixture/client:packages/client/src/index.ts#ClientView#importedAgentWithNamedArgument@752",
"kind": "property",
"location": {
"column": 3,
@@ -5964,7 +5964,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/client:packages/client/src/index.ts#ClientView#namespaceAgent@821",
"id": "@fixture/client:packages/client/src/index.ts#ClientView#namespaceAgent@834",
"kind": "property",
"location": {
"column": 3,
@@ -5983,7 +5983,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/client:packages/client/src/index.ts#ClientView#defaultService@876",
"id": "@fixture/client:packages/client/src/index.ts#ClientView#defaultService@889",
"kind": "property",
"location": {
"column": 3,
@@ -6002,7 +6002,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/client:packages/client/src/index.ts#ClientView#payload@915",
"id": "@fixture/client:packages/client/src/index.ts#ClientView#payload@928",
"kind": "property",
"location": {
"column": 3,
@@ -6021,7 +6021,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "@fixture/client:packages/client/src/index.ts#ClientView#phase@943",
"id": "@fixture/client:packages/client/src/index.ts#ClientView#phase@956",
"kind": "property",
"location": {
"column": 3,
@@ -6084,7 +6084,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "type:packages/client/src/index.ts:11:48#1#ready@469",
"id": "type:packages/client/src/index.ts:11:48#1#ready@482",
"kind": "property",
"location": {
"column": 50,
@@ -6130,7 +6130,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "type:packages/client/src/index.ts:15:29#1#ready@615",
"id": "type:packages/client/src/index.ts:15:29#1#ready@628",
"kind": "property",
"location": {
"column": 31,
@@ -6188,7 +6188,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "type:packages/client/src/index.ts:17:57#1#ready@722",
"id": "type:packages/client/src/index.ts:17:57#1#ready@735",
"kind": "property",
"location": {
"column": 59,
@@ -6264,7 +6264,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "type:packages/client/src/index.ts:19:39#1#ready@859",
"id": "type:packages/client/src/index.ts:19:39#1#ready@872",
"kind": "property",
"location": {
"column": 41,
@@ -6334,7 +6334,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"name": "Service",
"target": {
"kind": "external",
"module": "cordis",
"module": "@deepseek-ai/cordis",
"name": "Service",
"subpath": ".",
},
@@ -6371,7 +6371,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
{
"abstract": false,
"async": false,
"id": "type:packages/client/src/index.ts:28:40#1#ready@1135",
"id": "type:packages/client/src/index.ts:28:40#1#ready@1148",
"kind": "property",
"location": {
"column": 42,
@@ -6477,7 +6477,7 @@ exports[`WorkspaceAnalyzer > builds independent face models with an explicit cro
"line": 35,
},
"members": [
"@fixture/client:packages/client/src/index.ts#ClientBridge#reflect@1096",
"@fixture/client:packages/client/src/index.ts#ClientBridge#reflect@1109",
],
"summary": "Client-face service.",
"symbol": "@fixture/client:packages/client/src/index.ts#ClientBridge",

View File

@@ -91,7 +91,7 @@ function fixtureRoot(eventsBlock: string): string {
const root = mkdtempSync(join(tmpdir(), 'cordis-catalog-'))
writeProject(
root,
`declare module 'cordis' {\n interface Events {\n${eventsBlock}\n }\n}\n`,
`declare module '@deepseek-ai/cordis' {\n interface Events {\n${eventsBlock}\n }\n}\n`,
)
return root
}
@@ -103,7 +103,7 @@ function serviceFixtureRoot(classSource: string): string {
const root = mkdtempSync(join(tmpdir(), 'cordis-catalog-'))
writeProject(
root,
`declare module 'cordis' {\n interface Context {\n fix: FixService\n }\n}\n\n${classSource}\n`,
`declare module '@deepseek-ai/cordis' {\n interface Context {\n fix: FixService\n }\n}\n\n${classSource}\n`,
)
return root
}

View File

@@ -1,4 +1,4 @@
declare module 'cordis' {
declare module '@deepseek-ai/cordis' {
export class Service { protected readonly __service?: never }
export interface Context {}

View File

@@ -1,4 +1,4 @@
import { Service } from 'cordis'
import { Service } from '@deepseek-ai/cordis'
import type HostDefault from '@fixture/host'
import type * as Host from '@fixture/host'
import type { AgentPhase } from '@fixture/host'
@@ -30,7 +30,7 @@ export class ClientBridge extends Service {
}
}
declare module 'cordis' {
declare module '@deepseek-ai/cordis' {
interface Context {
clientBridge: ClientBridge
}

View File

@@ -1,4 +1,4 @@
import { Service } from 'cordis'
import { Service } from '@deepseek-ai/cordis'
import type { ZodType } from 'zod'
import type { AgentPhase, Box, Entity, Flags, Payload, Present, SyntaxZoo } from './models.ts'
@@ -95,7 +95,7 @@ export class DemoService extends Service {
}
}
declare module 'cordis' {
declare module '@deepseek-ai/cordis' {
interface Context {
demo: DemoService
aliased: AliasedService
@@ -130,7 +130,7 @@ declare module 'cordis' {
type IgnoredDeclaration = string
}
declare module 'cordis' {
declare module '@deepseek-ai/cordis' {
interface Context {
demo: DemoService
}

View File

@@ -1,4 +1,4 @@
import { Service } from 'cordis'
import { Service } from '@deepseek-ai/cordis'
/** Service whose public annotations are intentionally absent. */
export class WritableService extends Service {
@@ -9,7 +9,7 @@ export class WritableService extends Service {
}
}
declare module 'cordis' {
declare module '@deepseek-ai/cordis' {
interface Context {
writable: WritableService
}

View File

@@ -11,7 +11,7 @@
"ignoreDeprecations": "6.0",
"types": ["node"],
"paths": {
"cordis": ["./cordis.d.ts"],
"@deepseek-ai/cordis": ["./cordis.d.ts"],
"@fixture/host": ["./packages/host/src/index.ts"],
"@fixture/host/*": ["./packages/host/src/*"],
"@fixture/client": ["./packages/client/src/index.ts"],

View File

@@ -2,7 +2,7 @@ import { mkdtempSync, rmSync, writeFileSync } from 'node:fs'
import { join, resolve } from 'node:path'
import { pathToFileURL } from 'node:url'
import { afterEach, describe, expect, it } from 'vitest'
import { Context } from 'cordis'
import { Context } from '@deepseek-ai/cordis'
import TypertRegistry from '@deepseek-ai/dsh-typert-registry'
import type { TypertContribution } from '@deepseek-ai/dsh-typert-registry/types'
import { EVENT_API, SERVICE_API, TYPE_API } from '@deepseek-ai/dsh-tool-cordis/src/api-catalog.ts'

View File

@@ -834,7 +834,7 @@ describe('WorkspaceAnalyzer', { timeout: 60_000 }, () => {
writeFileSync(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`)
writeFileSync(join(hostRoot, 'src/index.ts'), [
'export {}',
"declare module 'cordis' {",
"declare module '@deepseek-ai/cordis' {",
' interface Context {}',
' interface Events {}',
' interface Ignored {}',
@@ -1237,10 +1237,10 @@ function configureDualRuntimeClient(root: string, splitProjects: boolean): void
}
writeFileSync(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`)
writeFileSync(join(packageRoot, 'src/client.ts'), [
"import { Service } from 'cordis'",
"import { Service } from '@deepseek-ai/cordis'",
'export interface ClientOnlyMarker { readonly client: true }',
'export class BrowserBridge extends Service {}',
"declare module 'cordis' { interface Context { browserBridge: BrowserBridge } }",
"declare module '@deepseek-ai/cordis' { interface Context { browserBridge: BrowserBridge } }",
'',
].join('\n'))
const indexPath = join(packageRoot, 'src/index.ts')
@@ -1338,14 +1338,14 @@ function addExplicitServicePackage(root: string, annotation: string, withProtoco
' /** Report protocol readiness. */',
' ready(): boolean',
'}',
"declare module 'cordis' {",
"declare module '@deepseek-ai/cordis' {",
' interface Context { detached: DetachedProtocol }',
'}',
'',
].join('\n'))
}
writeFileSync(join(packageRoot, 'src/index.ts'), [
"import { Service } from 'cordis'",
"import { Service } from '@deepseek-ai/cordis'",
...(withProtocol ? ["export type { DetachedProtocol } from './types.ts'"] : []),
'/**',
' * Service implementation discovered independently of its protocol package.',

View File

@@ -25,19 +25,19 @@
],
"license": "BSD-3-Clause",
"peerDependencies": {
"@cordisjs/plugin-loader": "^1.0.0-rc.5",
"@deepseek-ai/cordis-plugin-loader": "^1.0.0-rc.5",
"@deepseek-ai/dsh-invariants": "^0.0.1",
"@deepseek-ai/dsh-typert-registry": "^0.0.1",
"cordis": "^4.0.0-rc.7"
"@deepseek-ai/cordis": "^4.0.0-rc.7"
},
"dependencies": {
"schemastery": "^3.18.0"
"@deepseek-ai/schemastery": "^3.18.0"
},
"devDependencies": {
"@cordisjs/plugin-loader": "workspace:^",
"@deepseek-ai/cordis-plugin-loader": "workspace:^",
"@deepseek-ai/dsh-invariants": "workspace:^",
"@deepseek-ai/dsh-typert-registry": "workspace:^",
"cordis": "^4.0.0-rc.7",
"@deepseek-ai/cordis": "^4.0.0-rc.7",
"zod": "^4.4.3"
}
}

View File

@@ -29,9 +29,9 @@ import { readFileSync } from 'node:fs'
import { createRequire } from 'node:module'
import { dirname, join } from 'node:path'
import { pathToFileURL } from 'node:url'
import type { Context } from 'cordis'
import z from 'schemastery'
import type {} from '@cordisjs/plugin-loader'
import type { Context } from '@deepseek-ai/cordis'
import z from '@deepseek-ai/schemastery'
import type {} from '@deepseek-ai/cordis-plugin-loader'
import type {} from '@deepseek-ai/dsh-typert-registry'
import type { TypertContribution } from '@deepseek-ai/dsh-typert-registry/types'

View File

@@ -4,7 +4,7 @@
*/
/* jscpd:ignore-start */
import type { Context } from 'cordis'
import type { Context } from '@deepseek-ai/cordis'
import type { InvariantInstaller } from '@deepseek-ai/dsh-invariants'
const PACKAGE_NAME = '@deepseek-ai/dsh-typert-loader'

View File

@@ -4,8 +4,8 @@ import { tmpdir } from 'node:os'
import { join } from 'node:path'
import { fileURLToPath, pathToFileURL } from 'node:url'
import { afterEach, describe, expect, it, vi } from 'vitest'
import { Context } from 'cordis'
import Loader from '@cordisjs/plugin-loader'
import { Context } from '@deepseek-ai/cordis'
import Loader from '@deepseek-ai/cordis-plugin-loader'
import TypertRegistry from '@deepseek-ai/dsh-typert-registry'
import * as typertLoader from '@deepseek-ai/dsh-typert-loader'
import { validateTypertManifest } from '@deepseek-ai/dsh-typert-loader'

View File

@@ -51,10 +51,10 @@
},
"peerDependencies": {
"@deepseek-ai/dsh-invariants": "^0.0.1",
"cordis": "^4.0.0-rc.7"
"@deepseek-ai/cordis": "^4.0.0-rc.7"
},
"devDependencies": {
"@deepseek-ai/dsh-invariants": "workspace:^",
"cordis": "^4.0.0-rc.7"
"@deepseek-ai/cordis": "^4.0.0-rc.7"
}
}

View File

@@ -1,6 +1,6 @@
/** Browser face of the shared TypeRT runtime registry. */
import type { Context } from 'cordis'
import type { Context } from '@deepseek-ai/cordis'
import { TypertRegistry } from '../service.ts'
/** Required services: none; this is the Client reflection root. */

View File

@@ -4,7 +4,7 @@
*/
/* jscpd:ignore-start */
import type { Context } from 'cordis'
import type { Context } from '@deepseek-ai/cordis'
import type { InvariantInstaller } from '@deepseek-ai/dsh-invariants'
const PACKAGE_NAME = '@deepseek-ai/dsh-typert-registry'

View File

@@ -5,7 +5,7 @@
* @module @deepseek-ai/dsh-typert-registry
*/
import { Context, Service } from 'cordis'
import { Context, Service } from '@deepseek-ai/cordis'
import { z } from 'zod'
import type {
InvocationDescriptor,

View File

@@ -1,5 +1,5 @@
import { describe, expect, it } from 'vitest'
import { Context } from 'cordis'
import { Context } from '@deepseek-ai/cordis'
import { z } from 'zod'
import TypertRegistry, {
typertEndpoint,

View File

@@ -31,10 +31,10 @@
"license": "BSD-3-Clause",
"peerDependencies": {
"@deepseek-ai/dsh-invariants": "^0.0.1",
"cordis": "^4.0.0-rc.7"
"@deepseek-ai/cordis": "^4.0.0-rc.7"
},
"devDependencies": {
"@deepseek-ai/dsh-invariants": "workspace:^",
"cordis": "^4.0.0-rc.7"
"@deepseek-ai/cordis": "^4.0.0-rc.7"
}
}

View File

@@ -4,7 +4,7 @@
* @module @deepseek-ai/dsh-type-meta
*/
import { Service, type Context } from 'cordis'
import { Service, type Context } from '@deepseek-ai/cordis'
import type { TypeRTContextMap } from './types.ts'
const TYPERT_REMOTE_SEGMENT_PATTERN = /^[A-Za-z0-9_$.-]+$/

View File

@@ -4,7 +4,7 @@
*/
/* jscpd:ignore-start */
import type { Context } from 'cordis'
import type { Context } from '@deepseek-ai/cordis'
import type { InvariantInstaller } from '@deepseek-ai/dsh-invariants'
const PACKAGE_NAME = '@deepseek-ai/dsh-type-meta'

View File

@@ -4,7 +4,7 @@
* @module @deepseek-ai/dsh-type-meta/types
*/
import type { Context } from 'cordis'
import type { Context } from '@deepseek-ai/cordis'
declare const LOOKUP_HOST: unique symbol
declare const LOOKUP_WIRE: unique symbol
@@ -421,7 +421,7 @@ export interface TypeRTService {
readonly contexts: TypeRTContextRegistry
}
declare module 'cordis' {
declare module '@deepseek-ai/cordis' {
interface Context {
typert: TypeRTService
}

View File

@@ -1,4 +1,4 @@
import { Context } from 'cordis'
import { Context } from '@deepseek-ai/cordis'
import {
GatewayService,
Remote,

View File

@@ -1,6 +1,6 @@
import { execFileSync } from 'node:child_process'
import { fileURLToPath } from 'node:url'
import { Context } from 'cordis'
import { Context } from '@deepseek-ai/cordis'
import { describe, expect, it } from 'vitest'
import {
bindTypeRTGateway,