Skip to content

@codesoul-co/hypha-adapters-local / legacy-tool-artifact-migration-planner

模块用法

用于使用该功能边界的公共契约与操作。Legacy tool artifact migration planner 模块公开 2 类、7 接口、2 类型。

从包入口导入

ts
import {
  LegacyToolArtifactMigrationPlanError,
  LegacyToolArtifactMigrationPlanner,
} from '@codesoul-co/hypha-adapters-local';

import type {
  LegacyToolArtifactMigrationImportPlanItem,
  LegacyToolArtifactMigrationImportResolution,
  LegacyToolArtifactMigrationPlan,
  LegacyToolArtifactMigrationPlannerOptions,
  LegacyToolArtifactMigrationPlanRequest,
  LegacyToolArtifactMigrationSkipPlanItem,
  LegacyToolArtifactMigrationSkipResolution,
  LegacyToolArtifactMigrationPlanErrorCode,
} from '@codesoul-co/hypha-adapters-local';

// 完整导出列表见下方。

使用要点

  • 9 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。
  • 2 个类提供可实例化的运行时实现;构造参数与公开方法在各自条目中完整列出。

公共导出

Symbol种类签名说明
LegacyToolArtifactMigrationPlanErrornew LegacyToolArtifactMigrationPlanError(code: LegacyToolArtifactMigrationPlanErrorCode, message: string, details?: Record<string, unknown> | undefined): LegacyToolArtifactMigrationPlanErrorLegacy Tool Artifact Migration Plan Error 类,共公开 10 个构造函数或成员;精确签名见本条目的声明与成员表。
LegacyToolArtifactMigrationPlannernew LegacyToolArtifactMigrationPlanner(options?: LegacyToolArtifactMigrationPlannerOptions): LegacyToolArtifactMigrationPlannerCreates a deterministic migration plan without reading, importing, or deleting Artifact bytes. Historical path segments are never identities.
LegacyToolArtifactMigrationImportPlanItem接口interface LegacyToolArtifactMigrationImportPlanItemLegacy Tool Artifact Migration Import Plan Item 接口,共包含 2 个公开字段或方法。
LegacyToolArtifactMigrationImportResolution接口interface LegacyToolArtifactMigrationImportResolutionLegacy Tool Artifact Migration Import Resolution 接口,共包含 5 个公开字段或方法。
LegacyToolArtifactMigrationPlan接口interface LegacyToolArtifactMigrationPlanLegacy Tool Artifact Migration Plan 接口,共包含 5 个公开字段或方法。
LegacyToolArtifactMigrationPlannerOptions接口interface LegacyToolArtifactMigrationPlannerOptionsLegacy Tool Artifact Migration Planner Options 接口,共包含 1 个公开字段或方法。
LegacyToolArtifactMigrationPlanRequest接口interface LegacyToolArtifactMigrationPlanRequestLegacy Tool Artifact Migration Plan Request 接口,共包含 2 个公开字段或方法。
LegacyToolArtifactMigrationSkipPlanItem接口interface LegacyToolArtifactMigrationSkipPlanItemLegacy Tool Artifact Migration Skip Plan Item 接口,共包含 2 个公开字段或方法。
LegacyToolArtifactMigrationSkipResolution接口interface LegacyToolArtifactMigrationSkipResolutionLegacy Tool Artifact Migration Skip Resolution 接口,共包含 2 个公开字段或方法。
LegacyToolArtifactMigrationPlanErrorCode类型type LegacyToolArtifactMigrationPlanErrorCode = 'LEGACY_MIGRATION_INVALID_INVENTORY' | 'LEGACY_MIGRATION_DUPLICATE_SOURCE' | 'LEGACY_MIGRATION_LIMIT_EXCEEDED' | 'LEGACY_MIGRATION_INVALID_RESOLUTION'Legacy Tool Artifact Migration Plan Error Code 公共类型别名;完整类型表达式见声明。
LegacyToolArtifactMigrationResolution类型type LegacyToolArtifactMigrationResolution = LegacyToolArtifactMigrationImportResolution | LegacyToolArtifactMigrationSkipResolutionLegacy Tool Artifact Migration Resolution 公共类型别名;完整类型表达式见声明。

LegacyToolArtifactMigrationPlanError

Legacy Tool Artifact Migration Plan Error 类,共公开 10 个构造函数或成员;精确签名见本条目的声明与成员表。

声明

text
export declare class LegacyToolArtifactMigrationPlanError extends Error {
    readonly code: LegacyToolArtifactMigrationPlanErrorCode;
    readonly details?: Record<string, unknown> | undefined;
    constructor(code: LegacyToolArtifactMigrationPlanErrorCode, message: string, details?: Record<string, unknown> | undefined);
}

公开成员

成员种类签名说明
cause属性cause?: unknown公开属性;类型、只读和可选状态以签名列为准。
code属性readonly code: LegacyToolArtifactMigrationPlanErrorCode公开属性;类型、只读和可选状态以签名列为准。
constructor构造函数(code: LegacyToolArtifactMigrationPlanErrorCode, message: string, details?: Record<string, unknown> | undefined): LegacyToolArtifactMigrationPlanError创建该类的实例。
details属性readonly details?: Record<string, unknown>公开属性;类型、只读和可选状态以签名列为准。
message属性message: string公开属性;类型、只读和可选状态以签名列为准。
name属性name: string公开属性;类型、只读和可选状态以签名列为准。
stack属性stack?: string公开属性;类型、只读和可选状态以签名列为准。
static captureStackTrace方法static captureStackTrace(targetObject: object, constructorOpt?: Function): voidCreates a .stack property on targetObject, which when accessed returns a string representing the location in the code at which Error.captureStackTrace() was called. js const myObject = {}; Error.captureStackTrace(myObject); myObject.stack; // Similar to `new Error().stack` The first line of the trace will be prefixed with ${myObject.name}: ${myObject.message}. The optional constructorOpt argument accepts a function. If given, all frames above constructorOpt, including constructorOpt, will be omitted from the generated stack trace. The constructorOpt argument is useful for hiding implementation details of error generation from the user. For instance: js function a() { b(); } function b() { c(); } function c() { // Create an error without stack trace to avoid calculating the stack trace twice. const { stackTraceLimit } = Error; Error.stackTraceLimit = 0; const error = new Error(); Error.stackTraceLimit = stackTraceLimit; // Capture the stack trace above function b Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace throw error; } a();
static prepareStackTrace方法static prepareStackTrace(err: Error, stackTraces: NodeJS.CallSite[]): any公开方法;参数与返回类型以签名列为准。
static stackTraceLimit属性static stackTraceLimit: numberThe Error.stackTraceLimit property specifies the number of stack frames collected by a stack trace (whether generated by new Error().stack or Error.captureStackTrace(obj)). The default value is 10 but may be set to any valid JavaScript number. Changes will affect any stack trace captured after the value has been changed. If set to a non-number value, or set to a negative number, stack traces will not capture any frames.

LegacyToolArtifactMigrationPlanner

Creates a deterministic migration plan without reading, importing, or deleting Artifact bytes. Historical path segments are never identities.

声明

text
export declare class LegacyToolArtifactMigrationPlanner {
    constructor(options?: LegacyToolArtifactMigrationPlannerOptions);
    plan(request: LegacyToolArtifactMigrationPlanRequest): Promise<LegacyToolArtifactMigrationPlan>;
}

公开成员

成员种类签名说明
constructor构造函数(options?: LegacyToolArtifactMigrationPlannerOptions): LegacyToolArtifactMigrationPlanner创建该类的实例。
plan方法plan(request: LegacyToolArtifactMigrationPlanRequest): Promise<LegacyToolArtifactMigrationPlan>公开方法;参数与返回类型以签名列为准。

LegacyToolArtifactMigrationImportPlanItem

Legacy Tool Artifact Migration Import Plan Item 接口,共包含 2 个公开字段或方法。

声明

text
export interface LegacyToolArtifactMigrationImportPlanItem {
    source: LegacyToolArtifactInventoryEntry;
    request: LegacyToolArtifactImportRequest;
}

契约成员

成员种类签名说明
request属性request: LegacyToolArtifactImportRequest公开属性;类型、只读和可选状态以签名列为准。
source属性source: LegacyToolArtifactInventoryEntry公开属性;类型、只读和可选状态以签名列为准。

LegacyToolArtifactMigrationImportResolution

Legacy Tool Artifact Migration Import Resolution 接口,共包含 5 个公开字段或方法。

声明

text
export interface LegacyToolArtifactMigrationImportResolution {
    action: 'import';
    context: ToolArtifactManagerContext;
    toolId: string;
    invocationId: string;
    metadata?: Record<string, unknown>;
}

契约成员

成员种类签名说明
action属性action: "import"公开属性;类型、只读和可选状态以签名列为准。
context属性context: ToolArtifactManagerContext公开属性;类型、只读和可选状态以签名列为准。
invocationId属性invocationId: string公开属性;类型、只读和可选状态以签名列为准。
metadata属性metadata?: Record<string, unknown>公开属性;类型、只读和可选状态以签名列为准。
toolId属性toolId: string公开属性;类型、只读和可选状态以签名列为准。

LegacyToolArtifactMigrationPlan

Legacy Tool Artifact Migration Plan 接口,共包含 5 个公开字段或方法。

声明

text
export interface LegacyToolArtifactMigrationPlan {
    planHash: string;
    imports: LegacyToolArtifactMigrationImportPlanItem[];
    skipped: LegacyToolArtifactMigrationSkipPlanItem[];
    totalEntries: number;
    totalBytes: number;
}

契约成员

成员种类签名说明
imports属性imports: LegacyToolArtifactMigrationImportPlanItem[]公开属性;类型、只读和可选状态以签名列为准。
planHash属性planHash: string公开属性;类型、只读和可选状态以签名列为准。
skipped属性skipped: LegacyToolArtifactMigrationSkipPlanItem[]公开属性;类型、只读和可选状态以签名列为准。
totalBytes属性totalBytes: number公开属性;类型、只读和可选状态以签名列为准。
totalEntries属性totalEntries: number公开属性;类型、只读和可选状态以签名列为准。

LegacyToolArtifactMigrationPlannerOptions

Legacy Tool Artifact Migration Planner Options 接口,共包含 1 个公开字段或方法。

声明

text
export interface LegacyToolArtifactMigrationPlannerOptions {
    maxEntries?: number;
}

契约成员

成员种类签名说明
maxEntries属性maxEntries?: number公开属性;类型、只读和可选状态以签名列为准。

LegacyToolArtifactMigrationPlanRequest

Legacy Tool Artifact Migration Plan Request 接口,共包含 2 个公开字段或方法。

声明

text
export interface LegacyToolArtifactMigrationPlanRequest {
    inventory: LegacyToolArtifactInventoryResult;
    resolve: (entry: Readonly<LegacyToolArtifactInventoryEntry>) => LegacyToolArtifactMigrationResolution | Promise<LegacyToolArtifactMigrationResolution>;
}

契约成员

成员种类签名说明
inventory属性inventory: LegacyToolArtifactInventoryResult公开属性;类型、只读和可选状态以签名列为准。
resolve方法resolve(entry: Readonly<LegacyToolArtifactInventoryEntry>): LegacyToolArtifactMigrationResolution | Promise<LegacyToolArtifactMigrationResolution>公开方法;参数与返回类型以签名列为准。

LegacyToolArtifactMigrationSkipPlanItem

Legacy Tool Artifact Migration Skip Plan Item 接口,共包含 2 个公开字段或方法。

声明

text
export interface LegacyToolArtifactMigrationSkipPlanItem {
    source: LegacyToolArtifactInventoryEntry;
    reason: string;
}

契约成员

成员种类签名说明
reason属性reason: string公开属性;类型、只读和可选状态以签名列为准。
source属性source: LegacyToolArtifactInventoryEntry公开属性;类型、只读和可选状态以签名列为准。

LegacyToolArtifactMigrationSkipResolution

Legacy Tool Artifact Migration Skip Resolution 接口,共包含 2 个公开字段或方法。

声明

text
export interface LegacyToolArtifactMigrationSkipResolution {
    action: 'skip';
    reason: string;
}

契约成员

成员种类签名说明
action属性action: "skip"公开属性;类型、只读和可选状态以签名列为准。
reason属性reason: string公开属性;类型、只读和可选状态以签名列为准。

LegacyToolArtifactMigrationPlanErrorCode

Legacy Tool Artifact Migration Plan Error Code 公共类型别名;完整类型表达式见声明。

声明

text
export type LegacyToolArtifactMigrationPlanErrorCode = 'LEGACY_MIGRATION_INVALID_INVENTORY' | 'LEGACY_MIGRATION_DUPLICATE_SOURCE' | 'LEGACY_MIGRATION_LIMIT_EXCEEDED' | 'LEGACY_MIGRATION_INVALID_RESOLUTION';

LegacyToolArtifactMigrationResolution

Legacy Tool Artifact Migration Resolution 公共类型别名;完整类型表达式见声明。

声明

text
export type LegacyToolArtifactMigrationResolution = LegacyToolArtifactMigrationImportResolution | LegacyToolArtifactMigrationSkipResolution;