mewkit 1.12.1 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +37 -0
- package/dist/commands/migrate.d.ts +2 -0
- package/dist/commands/migrate.d.ts.map +1 -1
- package/dist/commands/migrate.js +2 -0
- package/dist/commands/migrate.js.map +1 -1
- package/dist/commands/validate.js +14 -7
- package/dist/commands/validate.js.map +1 -1
- package/dist/core/derived-index.d.ts +1 -1
- package/dist/core/derived-index.d.ts.map +1 -1
- package/dist/core/derived-index.js +3 -2
- package/dist/core/derived-index.js.map +1 -1
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -1
- package/dist/migrate/config-merger/merge-single-sections.d.ts.map +1 -1
- package/dist/migrate/config-merger/merge-single-sections.js +4 -2
- package/dist/migrate/config-merger/merge-single-sections.js.map +1 -1
- package/dist/migrate/converters/command-to-codex-skill.d.ts +10 -0
- package/dist/migrate/converters/command-to-codex-skill.d.ts.map +1 -0
- package/dist/migrate/converters/command-to-codex-skill.js +78 -0
- package/dist/migrate/converters/command-to-codex-skill.js.map +1 -0
- package/dist/migrate/converters/direct-copy.d.ts +4 -1
- package/dist/migrate/converters/direct-copy.d.ts.map +1 -1
- package/dist/migrate/converters/direct-copy.js +19 -22
- package/dist/migrate/converters/direct-copy.js.map +1 -1
- package/dist/migrate/converters/fm-strip.d.ts.map +1 -1
- package/dist/migrate/converters/fm-strip.js +5 -1
- package/dist/migrate/converters/fm-strip.js.map +1 -1
- package/dist/migrate/converters/fm-to-codex-toml.js +1 -1
- package/dist/migrate/converters/fm-to-codex-toml.js.map +1 -1
- package/dist/migrate/converters/fm-to-fm.js +4 -4
- package/dist/migrate/converters/fm-to-fm.js.map +1 -1
- package/dist/migrate/converters/fm-to-json.d.ts.map +1 -1
- package/dist/migrate/converters/fm-to-json.js +2 -1
- package/dist/migrate/converters/fm-to-json.js.map +1 -1
- package/dist/migrate/converters/fm-to-yaml.js +1 -1
- package/dist/migrate/converters/fm-to-yaml.js.map +1 -1
- package/dist/migrate/converters/index.d.ts +7 -2
- package/dist/migrate/converters/index.d.ts.map +1 -1
- package/dist/migrate/converters/index.js +7 -7
- package/dist/migrate/converters/index.js.map +1 -1
- package/dist/migrate/converters/mcp-json-to-codex-toml.d.ts +8 -0
- package/dist/migrate/converters/mcp-json-to-codex-toml.d.ts.map +1 -0
- package/dist/migrate/converters/mcp-json-to-codex-toml.js +65 -0
- package/dist/migrate/converters/mcp-json-to-codex-toml.js.map +1 -0
- package/dist/migrate/converters/md-strip.d.ts +10 -1
- package/dist/migrate/converters/md-strip.d.ts.map +1 -1
- package/dist/migrate/converters/md-strip.js +27 -70
- package/dist/migrate/converters/md-strip.js.map +1 -1
- package/dist/migrate/converters/md-to-kiro-steering.js +1 -1
- package/dist/migrate/converters/md-to-kiro-steering.js.map +1 -1
- package/dist/migrate/converters/md-to-mdc.js +1 -1
- package/dist/migrate/converters/md-to-mdc.js.map +1 -1
- package/dist/migrate/converters/md-to-toml.js +1 -1
- package/dist/migrate/converters/md-to-toml.js.map +1 -1
- package/dist/migrate/hooks/codex-features-flag.d.ts.map +1 -1
- package/dist/migrate/hooks/codex-features-flag.js +21 -6
- package/dist/migrate/hooks/codex-features-flag.js.map +1 -1
- package/dist/migrate/hooks/codex-hook-wrapper.js +1 -1
- package/dist/migrate/hooks/codex-mcp-installer.d.ts +9 -0
- package/dist/migrate/hooks/codex-mcp-installer.d.ts.map +1 -0
- package/dist/migrate/hooks/codex-mcp-installer.js +65 -0
- package/dist/migrate/hooks/codex-mcp-installer.js.map +1 -0
- package/dist/migrate/hooks/codex-toml-installer.d.ts.map +1 -1
- package/dist/migrate/hooks/codex-toml-installer.js +15 -6
- package/dist/migrate/hooks/codex-toml-installer.js.map +1 -1
- package/dist/migrate/hooks/hooks-settings-merger.d.ts.map +1 -1
- package/dist/migrate/hooks/hooks-settings-merger.js +5 -1
- package/dist/migrate/hooks/hooks-settings-merger.js.map +1 -1
- package/dist/migrate/migrate-orchestrator.d.ts.map +1 -1
- package/dist/migrate/migrate-orchestrator.js +86 -9
- package/dist/migrate/migrate-orchestrator.js.map +1 -1
- package/dist/migrate/migrate-ui-summary.d.ts +2 -0
- package/dist/migrate/migrate-ui-summary.d.ts.map +1 -1
- package/dist/migrate/migrate-ui-summary.js +26 -0
- package/dist/migrate/migrate-ui-summary.js.map +1 -1
- package/dist/migrate/portability-policy.d.ts +3 -1
- package/dist/migrate/portability-policy.d.ts.map +1 -1
- package/dist/migrate/portability-policy.js +5 -31
- package/dist/migrate/portability-policy.js.map +1 -1
- package/dist/migrate/portable-installer.d.ts +3 -0
- package/dist/migrate/portable-installer.d.ts.map +1 -1
- package/dist/migrate/portable-installer.js +67 -6
- package/dist/migrate/portable-installer.js.map +1 -1
- package/dist/migrate/provider-registry-utils.d.ts.map +1 -1
- package/dist/migrate/provider-registry-utils.js +5 -0
- package/dist/migrate/provider-registry-utils.js.map +1 -1
- package/dist/migrate/providers/codex/capabilities.d.ts +1 -1
- package/dist/migrate/providers/codex/capabilities.d.ts.map +1 -1
- package/dist/migrate/providers/codex/capabilities.js +56 -0
- package/dist/migrate/providers/codex/capabilities.js.map +1 -1
- package/dist/migrate/providers/codex/config.d.ts.map +1 -1
- package/dist/migrate/providers/codex/config.js +21 -8
- package/dist/migrate/providers/codex/config.js.map +1 -1
- package/dist/migrate/providers/codex/contract.d.ts.map +1 -1
- package/dist/migrate/providers/codex/contract.js +4 -3
- package/dist/migrate/providers/codex/contract.js.map +1 -1
- package/dist/migrate/providers/provider-config-types.d.ts +1 -1
- package/dist/migrate/providers/provider-config-types.d.ts.map +1 -1
- package/dist/migrate/reconcile/portable-manifest.d.ts +12 -12
- package/dist/migrate/reconcile/portable-registry.d.ts +24 -24
- package/dist/migrate/reconcile/process-lock.d.ts.map +1 -1
- package/dist/migrate/reconcile/process-lock.js +10 -1
- package/dist/migrate/reconcile/process-lock.js.map +1 -1
- package/dist/migrate/references/codex-command-skill-path.d.ts +12 -0
- package/dist/migrate/references/codex-command-skill-path.d.ts.map +1 -0
- package/dist/migrate/references/codex-command-skill-path.js +27 -0
- package/dist/migrate/references/codex-command-skill-path.js.map +1 -0
- package/dist/migrate/references/fence-aware-reference-rewriter.d.ts +30 -0
- package/dist/migrate/references/fence-aware-reference-rewriter.d.ts.map +1 -0
- package/dist/migrate/references/fence-aware-reference-rewriter.js +182 -0
- package/dist/migrate/references/fence-aware-reference-rewriter.js.map +1 -0
- package/dist/migrate/references/reference-classifier.d.ts +12 -0
- package/dist/migrate/references/reference-classifier.d.ts.map +1 -0
- package/dist/migrate/references/reference-classifier.js +144 -0
- package/dist/migrate/references/reference-classifier.js.map +1 -0
- package/dist/migrate/references/reference-target-registry.d.ts +42 -0
- package/dist/migrate/references/reference-target-registry.d.ts.map +1 -0
- package/dist/migrate/references/reference-target-registry.js +100 -0
- package/dist/migrate/references/reference-target-registry.js.map +1 -0
- package/dist/migrate/references/reference-types.d.ts +23 -0
- package/dist/migrate/references/reference-types.d.ts.map +1 -0
- package/dist/migrate/references/reference-types.js +5 -0
- package/dist/migrate/references/reference-types.js.map +1 -0
- package/dist/migrate/runtime-compat-audit.d.ts +2 -1
- package/dist/migrate/runtime-compat-audit.d.ts.map +1 -1
- package/dist/migrate/runtime-compat-audit.js +2 -2
- package/dist/migrate/runtime-compat-audit.js.map +1 -1
- package/dist/migrate/runtime-coupling-patterns.d.ts +2 -1
- package/dist/migrate/runtime-coupling-patterns.d.ts.map +1 -1
- package/dist/migrate/runtime-coupling-patterns.js +18 -3
- package/dist/migrate/runtime-coupling-patterns.js.map +1 -1
- package/dist/migrate/skill-directory-audit.d.ts +3 -0
- package/dist/migrate/skill-directory-audit.d.ts.map +1 -1
- package/dist/migrate/skill-directory-audit.js +2 -1
- package/dist/migrate/skill-directory-audit.js.map +1 -1
- package/dist/migrate/skill-directory-installer.d.ts +2 -0
- package/dist/migrate/skill-directory-installer.d.ts.map +1 -1
- package/dist/migrate/skill-directory-installer.js +17 -8
- package/dist/migrate/skill-directory-installer.js.map +1 -1
- package/dist/migrate/types.d.ts +20 -10
- package/dist/migrate/types.d.ts.map +1 -1
- package/dist/migrate/types.js +4 -0
- package/dist/migrate/types.js.map +1 -1
- package/dist/migrate/validation/migrate-conversion-report.d.ts +20 -0
- package/dist/migrate/validation/migrate-conversion-report.d.ts.map +1 -0
- package/dist/migrate/validation/migrate-conversion-report.js +105 -0
- package/dist/migrate/validation/migrate-conversion-report.js.map +1 -0
- package/dist/migrate/validation/unresolved-reference-scanner.d.ts +18 -0
- package/dist/migrate/validation/unresolved-reference-scanner.d.ts.map +1 -0
- package/dist/migrate/validation/unresolved-reference-scanner.js +47 -0
- package/dist/migrate/validation/unresolved-reference-scanner.js.map +1 -0
- package/dist/wiki/application/ports.d.ts +8 -0
- package/dist/wiki/application/ports.d.ts.map +1 -1
- package/dist/wiki/handoff/domain.d.ts +107 -0
- package/dist/wiki/handoff/domain.d.ts.map +1 -0
- package/dist/wiki/handoff/domain.js +31 -0
- package/dist/wiki/handoff/domain.js.map +1 -0
- package/dist/wiki/handoff/profile-factory.d.ts +26 -0
- package/dist/wiki/handoff/profile-factory.d.ts.map +1 -0
- package/dist/wiki/handoff/profile-factory.js +65 -0
- package/dist/wiki/handoff/profile-factory.js.map +1 -0
- package/dist/wiki/handoff/profiles/external.d.ts +3 -0
- package/dist/wiki/handoff/profiles/external.d.ts.map +1 -0
- package/dist/wiki/handoff/profiles/external.js +27 -0
- package/dist/wiki/handoff/profiles/external.js.map +1 -0
- package/dist/wiki/handoff/profiles/framework.d.ts +3 -0
- package/dist/wiki/handoff/profiles/framework.d.ts.map +1 -0
- package/dist/wiki/handoff/profiles/framework.js +83 -0
- package/dist/wiki/handoff/profiles/framework.js.map +1 -0
- package/dist/wiki/handoff/profiles/lifecycle.d.ts +3 -0
- package/dist/wiki/handoff/profiles/lifecycle.d.ts.map +1 -0
- package/dist/wiki/handoff/profiles/lifecycle.js +30 -0
- package/dist/wiki/handoff/profiles/lifecycle.js.map +1 -0
- package/dist/wiki/handoff/profiles/research.d.ts +3 -0
- package/dist/wiki/handoff/profiles/research.d.ts.map +1 -0
- package/dist/wiki/handoff/profiles/research.js +31 -0
- package/dist/wiki/handoff/profiles/research.js.map +1 -0
- package/dist/wiki/handoff/profiles/review.d.ts +3 -0
- package/dist/wiki/handoff/profiles/review.d.ts.map +1 -0
- package/dist/wiki/handoff/profiles/review.js +19 -0
- package/dist/wiki/handoff/profiles/review.js.map +1 -0
- package/dist/wiki/handoff/profiles/security.d.ts +3 -0
- package/dist/wiki/handoff/profiles/security.d.ts.map +1 -0
- package/dist/wiki/handoff/profiles/security.js +19 -0
- package/dist/wiki/handoff/profiles/security.js.map +1 -0
- package/dist/wiki/handoff/profiles.d.ts +13 -0
- package/dist/wiki/handoff/profiles.d.ts.map +1 -0
- package/dist/wiki/handoff/profiles.js +54 -0
- package/dist/wiki/handoff/profiles.js.map +1 -0
- package/dist/wiki/handoff/service.d.ts +49 -0
- package/dist/wiki/handoff/service.d.ts.map +1 -0
- package/dist/wiki/handoff/service.js +142 -0
- package/dist/wiki/handoff/service.js.map +1 -0
- package/dist/wiki/infrastructure/markdown-repository.d.ts +6 -1
- package/dist/wiki/infrastructure/markdown-repository.d.ts.map +1 -1
- package/dist/wiki/infrastructure/markdown-repository.js +5 -0
- package/dist/wiki/infrastructure/markdown-repository.js.map +1 -1
- package/dist/wiki/infrastructure/wiki-ingest.d.ts +2 -0
- package/dist/wiki/infrastructure/wiki-ingest.d.ts.map +1 -1
- package/dist/wiki/infrastructure/wiki-ingest.js +21 -1
- package/dist/wiki/infrastructure/wiki-ingest.js.map +1 -1
- package/dist/wiki/infrastructure/wiki-query.d.ts +4 -3
- package/dist/wiki/infrastructure/wiki-query.d.ts.map +1 -1
- package/dist/wiki/infrastructure/wiki-query.js +26 -11
- package/dist/wiki/infrastructure/wiki-query.js.map +1 -1
- package/dist/wiki/infrastructure/wiki-schema.d.ts +1 -0
- package/dist/wiki/infrastructure/wiki-schema.d.ts.map +1 -1
- package/dist/wiki/infrastructure/wiki-schema.js +17 -0
- package/dist/wiki/infrastructure/wiki-schema.js.map +1 -1
- package/dist/wiki/interface/cli.d.ts.map +1 -1
- package/dist/wiki/interface/cli.js +159 -8
- package/dist/wiki/interface/cli.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { ProviderType } from "../types.js";
|
|
2
|
+
/** Portable-type keys that have a per-provider target path */
|
|
3
|
+
export type ReferenceTargetType = "agents" | "commands" | "skills" | "rules" | "config" | "hooks";
|
|
4
|
+
export type ReferenceScope = "project" | "global";
|
|
5
|
+
export interface ReferenceTarget {
|
|
6
|
+
/** Normalized target path; ends with "/" when it is a directory */
|
|
7
|
+
path: string;
|
|
8
|
+
isDirectory: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface ReferenceRewriteRule {
|
|
11
|
+
type: ReferenceTargetType;
|
|
12
|
+
/** Source path prefix this rule matches (e.g. ".claude/agents/") */
|
|
13
|
+
sourcePrefix: string;
|
|
14
|
+
/** Resolved provider target, or null when the provider has no such surface */
|
|
15
|
+
target: ReferenceTarget | null;
|
|
16
|
+
/** Special-case suffix mapping (e.g. Codex command → skill directory filename) */
|
|
17
|
+
resolveSuffix?: (suffix: string) => string;
|
|
18
|
+
}
|
|
19
|
+
/** Root of the source runtime tree. The only place this literal may appear. */
|
|
20
|
+
export declare const SOURCE_ROOT = ".claude/";
|
|
21
|
+
/** Source config filename token */
|
|
22
|
+
export declare const SOURCE_CONFIG_TOKEN = "CLAUDE.md";
|
|
23
|
+
export declare function sourcePrefixForType(type: ReferenceTargetType): string;
|
|
24
|
+
/**
|
|
25
|
+
* Resolve the provider target for one portable type. Mirrors the historical
|
|
26
|
+
* md-strip resolution exactly: prefer the scope's path, fall back to the other.
|
|
27
|
+
*/
|
|
28
|
+
export declare function getReferenceTarget(provider: ProviderType | undefined, type: ReferenceTargetType, scope?: ReferenceScope): ReferenceTarget | null;
|
|
29
|
+
/** Build the full rewrite table for one provider (one rule per portable type). */
|
|
30
|
+
export declare function buildReferenceRewriteTable(provider: ProviderType | undefined, scope?: ReferenceScope): ReferenceRewriteRule[];
|
|
31
|
+
/**
|
|
32
|
+
* Resolve one source path (e.g. ".claude/skills/x/run.py") against a rewrite
|
|
33
|
+
* table. Returns the rewritten target path, or null when unmapped.
|
|
34
|
+
*/
|
|
35
|
+
export declare function resolveReferenceTarget(table: ReferenceRewriteRule[], sourcePath: string): string | null;
|
|
36
|
+
/** Any `.claude/<path>` reference, longest path-like run captured */
|
|
37
|
+
export declare function sourceReferencePattern(): RegExp;
|
|
38
|
+
/** Line filter used when the provider has no hooks surface */
|
|
39
|
+
export declare function sourceHooksLinePattern(): RegExp;
|
|
40
|
+
/** The `CLAUDE.md` token in prose */
|
|
41
|
+
export declare function sourceConfigTokenPattern(): RegExp;
|
|
42
|
+
//# sourceMappingURL=reference-target-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reference-target-registry.d.ts","sourceRoot":"","sources":["../../../src/migrate/references/reference-target-registry.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,8DAA8D;AAC9D,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAElG,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,CAAC;AAElD,MAAM,WAAW,eAAe;IAC/B,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACpC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,oEAAoE;IACpE,YAAY,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/B,kFAAkF;IAClF,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CAC3C;AAED,+EAA+E;AAC/E,eAAO,MAAM,WAAW,aAAa,CAAC;AAEtC,mCAAmC;AACnC,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAI/C,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAErE;AAQD;;;GAGG;AACH,wBAAgB,kBAAkB,CACjC,QAAQ,EAAE,YAAY,GAAG,SAAS,EAClC,IAAI,EAAE,mBAAmB,EACzB,KAAK,GAAE,cAA0B,GAC/B,eAAe,GAAG,IAAI,CAoBxB;AAED,kFAAkF;AAClF,wBAAgB,0BAA0B,CACzC,QAAQ,EAAE,YAAY,GAAG,SAAS,EAClC,KAAK,GAAE,cAA0B,GAC/B,oBAAoB,EAAE,CAcxB;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,oBAAoB,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgBvG;AAMD,qEAAqE;AACrE,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED,8DAA8D;AAC9D,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED,qCAAqC;AACrC,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
// Single source of truth for rewriting source-runtime references
|
|
2
|
+
// (`.claude/<type>/...`, `CLAUDE.md`) to provider target paths. All mapping
|
|
3
|
+
// strings and source patterns live HERE — converters must consume this module
|
|
4
|
+
// instead of holding their own literals (guarded by a unit test).
|
|
5
|
+
import { homedir } from "node:os";
|
|
6
|
+
import { providers } from "../provider-registry.js";
|
|
7
|
+
import { codexCommandSkillRelativePath } from "./codex-command-skill-path.js";
|
|
8
|
+
/** Root of the source runtime tree. The only place this literal may appear. */
|
|
9
|
+
export const SOURCE_ROOT = ".claude/";
|
|
10
|
+
/** Source config filename token */
|
|
11
|
+
export const SOURCE_CONFIG_TOKEN = "CLAUDE.md";
|
|
12
|
+
const DIRECTORY_TYPES = ["agents", "commands", "skills", "rules", "hooks"];
|
|
13
|
+
export function sourcePrefixForType(type) {
|
|
14
|
+
return type === "config" ? SOURCE_CONFIG_TOKEN : `${SOURCE_ROOT}${type}/`;
|
|
15
|
+
}
|
|
16
|
+
function normalizeTargetPath(path) {
|
|
17
|
+
const normalized = path.replace(/\\/g, "/").replace(/^\.\//, "");
|
|
18
|
+
const home = homedir().replace(/\\/g, "/");
|
|
19
|
+
return normalized.startsWith(home) ? normalized.replace(home, "~") : normalized;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Resolve the provider target for one portable type. Mirrors the historical
|
|
23
|
+
* md-strip resolution exactly: prefer the scope's path, fall back to the other.
|
|
24
|
+
*/
|
|
25
|
+
export function getReferenceTarget(provider, type, scope = "project") {
|
|
26
|
+
if (!provider)
|
|
27
|
+
return null;
|
|
28
|
+
const pathConfig = providers[provider][type];
|
|
29
|
+
if (!pathConfig)
|
|
30
|
+
return null;
|
|
31
|
+
const resolvedPath = scope === "global"
|
|
32
|
+
? (pathConfig.globalPath ?? pathConfig.projectPath)
|
|
33
|
+
: (pathConfig.projectPath ?? pathConfig.globalPath);
|
|
34
|
+
if (!resolvedPath)
|
|
35
|
+
return null;
|
|
36
|
+
const normalized = normalizeTargetPath(resolvedPath);
|
|
37
|
+
const isDirectory = pathConfig.writeStrategy === "per-file" ||
|
|
38
|
+
pathConfig.writeStrategy === "yaml-merge" ||
|
|
39
|
+
pathConfig.writeStrategy === "json-merge";
|
|
40
|
+
return {
|
|
41
|
+
path: isDirectory && !normalized.endsWith("/") ? `${normalized}/` : normalized,
|
|
42
|
+
isDirectory,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/** Build the full rewrite table for one provider (one rule per portable type). */
|
|
46
|
+
export function buildReferenceRewriteTable(provider, scope = "project") {
|
|
47
|
+
const types = [...DIRECTORY_TYPES, "config"];
|
|
48
|
+
return types.map((type) => {
|
|
49
|
+
const rule = {
|
|
50
|
+
type,
|
|
51
|
+
sourcePrefix: sourcePrefixForType(type),
|
|
52
|
+
target: getReferenceTarget(provider, type, scope),
|
|
53
|
+
};
|
|
54
|
+
// Commands that install as Agent Skills live in one directory per command.
|
|
55
|
+
if (type === "commands" && provider && providers[provider].commands?.format === "command-to-codex-skill") {
|
|
56
|
+
rule.resolveSuffix = (suffix) => codexCommandSkillRelativePath(suffix);
|
|
57
|
+
}
|
|
58
|
+
return rule;
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Resolve one source path (e.g. ".claude/skills/x/run.py") against a rewrite
|
|
63
|
+
* table. Returns the rewritten target path, or null when unmapped.
|
|
64
|
+
*/
|
|
65
|
+
export function resolveReferenceTarget(table, sourcePath) {
|
|
66
|
+
const normalized = sourcePath.replace(/\\/g, "/");
|
|
67
|
+
for (const rule of table) {
|
|
68
|
+
if (rule.type === "config") {
|
|
69
|
+
if (normalized === rule.sourcePrefix)
|
|
70
|
+
return rule.target?.path ?? null;
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
if (!normalized.toLowerCase().startsWith(rule.sourcePrefix.toLowerCase()))
|
|
74
|
+
continue;
|
|
75
|
+
if (!rule.target)
|
|
76
|
+
return null;
|
|
77
|
+
const suffix = normalized.slice(rule.sourcePrefix.length);
|
|
78
|
+
if (rule.resolveSuffix && rule.target.isDirectory && suffix) {
|
|
79
|
+
return `${rule.target.path}${rule.resolveSuffix(suffix)}`;
|
|
80
|
+
}
|
|
81
|
+
return rule.target.isDirectory ? `${rule.target.path}${suffix}` : rule.target.path;
|
|
82
|
+
}
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
85
|
+
// --- Source patterns ------------------------------------------------------
|
|
86
|
+
// Regexes matching source references. Kept as factory functions so every
|
|
87
|
+
// caller gets fresh lastIndex state for the global flags.
|
|
88
|
+
/** Any `.claude/<path>` reference, longest path-like run captured */
|
|
89
|
+
export function sourceReferencePattern() {
|
|
90
|
+
return /\.claude\/[a-zA-Z0-9_./-]*/gi;
|
|
91
|
+
}
|
|
92
|
+
/** Line filter used when the provider has no hooks surface */
|
|
93
|
+
export function sourceHooksLinePattern() {
|
|
94
|
+
return /\.claude\/hooks\//i;
|
|
95
|
+
}
|
|
96
|
+
/** The `CLAUDE.md` token in prose */
|
|
97
|
+
export function sourceConfigTokenPattern() {
|
|
98
|
+
return /\bCLAUDE\.md\b/g;
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=reference-target-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reference-target-registry.js","sourceRoot":"","sources":["../../../src/migrate/references/reference-target-registry.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,4EAA4E;AAC5E,8EAA8E;AAC9E,kEAAkE;AAElE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAwB9E,+EAA+E;AAC/E,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;AAEtC,mCAAmC;AACnC,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC;AAE/C,MAAM,eAAe,GAA0B,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAElG,MAAM,UAAU,mBAAmB,CAAC,IAAyB;IAC5D,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,IAAI,GAAG,CAAC;AAC3E,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC3C,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;AACjF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CACjC,QAAkC,EAClC,IAAyB,EACzB,QAAwB,SAAS;IAEjC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAC7B,MAAM,YAAY,GACjB,KAAK,KAAK,QAAQ;QACjB,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,WAAW,CAAC;QACnD,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;IACtD,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAE/B,MAAM,UAAU,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;IACrD,MAAM,WAAW,GAChB,UAAU,CAAC,aAAa,KAAK,UAAU;QACvC,UAAU,CAAC,aAAa,KAAK,YAAY;QACzC,UAAU,CAAC,aAAa,KAAK,YAAY,CAAC;IAE3C,OAAO;QACN,IAAI,EAAE,WAAW,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,UAAU;QAC9E,WAAW;KACX,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,0BAA0B,CACzC,QAAkC,EAClC,QAAwB,SAAS;IAEjC,MAAM,KAAK,GAA0B,CAAC,GAAG,eAAe,EAAE,QAAQ,CAAC,CAAC;IACpE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACzB,MAAM,IAAI,GAAyB;YAClC,IAAI;YACJ,YAAY,EAAE,mBAAmB,CAAC,IAAI,CAAC;YACvC,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC;SACjD,CAAC;QACF,2EAA2E;QAC3E,IAAI,IAAI,KAAK,UAAU,IAAI,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,wBAAwB,EAAE,CAAC;YAC1G,IAAI,CAAC,aAAa,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAA6B,EAAE,UAAkB;IACvF,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,UAAU,KAAK,IAAI,CAAC,YAAY;gBAAE,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC;YACvE,SAAS;QACV,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;YAAE,SAAS;QACpF,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAC9B,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,EAAE,CAAC;YAC7D,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IACpF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,6EAA6E;AAC7E,yEAAyE;AACzE,0DAA0D;AAE1D,qEAAqE;AACrE,MAAM,UAAU,sBAAsB;IACrC,OAAO,8BAA8B,CAAC;AACvC,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,sBAAsB;IACrC,OAAO,oBAAoB,CAAC;AAC7B,CAAC;AAED,qCAAqC;AACrC,MAAM,UAAU,wBAAwB;IACvC,OAAO,iBAAiB,CAAC;AAC1B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Markdown span the occurrence was found in */
|
|
2
|
+
export type ReferenceSpan = "frontmatter" | "fenced" | "inline-code" | "prose";
|
|
3
|
+
/** What the reference points at */
|
|
4
|
+
export type ReferenceKind = "mapped-asset" | "unmapped-runtime" | "citation" | "brand" | "env" | "slash-command";
|
|
5
|
+
/** What the rewriter decided to do with the occurrence */
|
|
6
|
+
export type RewriteDecision = "rewrite" | "preserve" | "preserve-warn";
|
|
7
|
+
/** One classified occurrence, emitted so the report layer can surface every decision */
|
|
8
|
+
export interface ReferenceOccurrence {
|
|
9
|
+
/** File the occurrence belongs to (target-relative filename or source path) */
|
|
10
|
+
file: string;
|
|
11
|
+
/** 1-based line number in the scanned content */
|
|
12
|
+
line: number;
|
|
13
|
+
span: ReferenceSpan;
|
|
14
|
+
kind: ReferenceKind;
|
|
15
|
+
decision: RewriteDecision;
|
|
16
|
+
/** The matched source text */
|
|
17
|
+
original: string;
|
|
18
|
+
/** Present when decision === "rewrite" */
|
|
19
|
+
rewrittenTo?: string;
|
|
20
|
+
/** Human-readable reason for preserve-warn decisions */
|
|
21
|
+
reason?: string;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=reference-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reference-types.d.ts","sourceRoot":"","sources":["../../../src/migrate/references/reference-types.ts"],"names":[],"mappings":"AAIA,gDAAgD;AAChD,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,CAAC;AAE/E,mCAAmC;AACnC,MAAM,MAAM,aAAa,GACtB,cAAc,GACd,kBAAkB,GAClB,UAAU,GACV,OAAO,GACP,KAAK,GACL,eAAe,CAAC;AAEnB,0DAA0D;AAC1D,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,UAAU,GAAG,eAAe,CAAC;AAEvE,wFAAwF;AACxF,MAAM,WAAW,mBAAmB;IACnC,+EAA+E;IAC/E,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;IAC1B,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// Shared types for source-reference classification and rewriting.
|
|
2
|
+
// A "reference" is any occurrence of a source-runtime path (`.claude/...`) or
|
|
3
|
+
// the source config token (`CLAUDE.md`) inside migrated content.
|
|
4
|
+
export {};
|
|
5
|
+
//# sourceMappingURL=reference-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reference-types.js","sourceRoot":"","sources":["../../../src/migrate/references/reference-types.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,8EAA8E;AAC9E,iEAAiE"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { PortableItem, ProviderType } from "./types.js";
|
|
2
|
+
import type { ReferenceOccurrence } from "./references/reference-types.js";
|
|
2
3
|
export interface RuntimeCompatAuditResult {
|
|
3
4
|
errors: string[];
|
|
4
5
|
}
|
|
5
|
-
export declare function auditRuntimeCompatibility(content: string, item: Pick<PortableItem, "name" | "type">, targetProvider: ProviderType): RuntimeCompatAuditResult;
|
|
6
|
+
export declare function auditRuntimeCompatibility(content: string, item: Pick<PortableItem, "name" | "type">, targetProvider: ProviderType, occurrences?: ReferenceOccurrence[]): RuntimeCompatAuditResult;
|
|
6
7
|
//# sourceMappingURL=runtime-compat-audit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-compat-audit.d.ts","sourceRoot":"","sources":["../../src/migrate/runtime-compat-audit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAgB,YAAY,EAAE,MAAM,YAAY,CAAC;AAG3E,MAAM,WAAW,wBAAwB;IACxC,MAAM,EAAE,MAAM,EAAE,CAAC;CACjB;AAID,wBAAgB,yBAAyB,CACxC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,EACzC,cAAc,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"runtime-compat-audit.d.ts","sourceRoot":"","sources":["../../src/migrate/runtime-compat-audit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAgB,YAAY,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAG3E,MAAM,WAAW,wBAAwB;IACxC,MAAM,EAAE,MAAM,EAAE,CAAC;CACjB;AAID,wBAAgB,yBAAyB,CACxC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,EACzC,cAAc,EAAE,YAAY,EAC5B,WAAW,GAAE,mBAAmB,EAAO,GACrC,wBAAwB,CAU1B"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { findRuntimeCouplingMatches } from "./runtime-coupling-patterns.js";
|
|
2
2
|
const AUDITED_TYPES = new Set(["agent", "command", "config", "rules", "hooks"]);
|
|
3
|
-
export function auditRuntimeCompatibility(content, item, targetProvider) {
|
|
3
|
+
export function auditRuntimeCompatibility(content, item, targetProvider, occurrences = []) {
|
|
4
4
|
if (targetProvider === "claude-code")
|
|
5
5
|
return { errors: [] };
|
|
6
6
|
if (!AUDITED_TYPES.has(item.type))
|
|
7
7
|
return { errors: [] };
|
|
8
8
|
const errors = [];
|
|
9
|
-
for (const match of findRuntimeCouplingMatches(content)) {
|
|
9
|
+
for (const match of findRuntimeCouplingMatches(content, occurrences)) {
|
|
10
10
|
errors.push(`${item.type}/${item.name} ${match.message}`);
|
|
11
11
|
}
|
|
12
12
|
return { errors };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-compat-audit.js","sourceRoot":"","sources":["../../src/migrate/runtime-compat-audit.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtime-compat-audit.js","sourceRoot":"","sources":["../../src/migrate/runtime-compat-audit.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAM5E,MAAM,aAAa,GAAG,IAAI,GAAG,CAAe,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAE9F,MAAM,UAAU,yBAAyB,CACxC,OAAe,EACf,IAAyC,EACzC,cAA4B,EAC5B,cAAqC,EAAE;IAEvC,IAAI,cAAc,KAAK,aAAa;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC5D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAEzD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,0BAA0B,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC;QACtE,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAC;AACnB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ReferenceOccurrence } from "./references/reference-types.js";
|
|
1
2
|
export interface RuntimeCouplingMatch {
|
|
2
3
|
message: string;
|
|
3
4
|
}
|
|
@@ -5,5 +6,5 @@ export declare const RUNTIME_COUPLING_PATTERNS: Array<{
|
|
|
5
6
|
pattern: RegExp;
|
|
6
7
|
message: string;
|
|
7
8
|
}>;
|
|
8
|
-
export declare function findRuntimeCouplingMatches(content: string): RuntimeCouplingMatch[];
|
|
9
|
+
export declare function findRuntimeCouplingMatches(content: string, occurrences?: ReferenceOccurrence[]): RuntimeCouplingMatch[];
|
|
9
10
|
//# sourceMappingURL=runtime-coupling-patterns.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-coupling-patterns.d.ts","sourceRoot":"","sources":["../../src/migrate/runtime-coupling-patterns.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtime-coupling-patterns.d.ts","sourceRoot":"","sources":["../../src/migrate/runtime-coupling-patterns.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAKjF,CAAC;AAUF,wBAAgB,0BAA0B,CACzC,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,mBAAmB,EAAO,GACrC,oBAAoB,EAAE,CAcxB"}
|
|
@@ -1,17 +1,32 @@
|
|
|
1
|
+
import { isExplainedReference } from "./validation/unresolved-reference-scanner.js";
|
|
2
|
+
import { sourceConfigTokenPattern, sourceReferencePattern } from "./references/reference-target-registry.js";
|
|
1
3
|
export const RUNTIME_COUPLING_PATTERNS = [
|
|
2
|
-
{ pattern: /\.claude\//i, message: "contains a .claude/ path reference" },
|
|
3
|
-
{ pattern: /\bCLAUDE\.md\b/, message: "contains a CLAUDE.md reference" },
|
|
4
4
|
{ pattern: /\$CLAUDE_[A-Z0-9_]+\b/, message: "contains a Claude-specific environment variable" },
|
|
5
5
|
{ pattern: /\$ANTHROPIC_[A-Z0-9_]+\b/, message: "contains an Anthropic-specific environment variable" },
|
|
6
6
|
{ pattern: /\bnpx\s+claude\b/i, message: "contains a Claude Code command assumption" },
|
|
7
7
|
{ pattern: /\bclaude\s+(?:--|mcp|doctor|update)\b/i, message: "contains a Claude Code command assumption" },
|
|
8
8
|
];
|
|
9
|
-
|
|
9
|
+
// Source references are only coupling errors when the fence-aware classifier
|
|
10
|
+
// did NOT deliberately decide to keep them (citation, fenced runtime command,
|
|
11
|
+
// merged/non-directory target). Unexplained ones still hard-fail.
|
|
12
|
+
const SOURCE_REFERENCE_CHECKS = [
|
|
13
|
+
{ makePattern: sourceReferencePattern, message: "contains a .claude/ path reference" },
|
|
14
|
+
{ makePattern: sourceConfigTokenPattern, message: "contains a CLAUDE.md reference" },
|
|
15
|
+
];
|
|
16
|
+
export function findRuntimeCouplingMatches(content, occurrences = []) {
|
|
10
17
|
const matches = [];
|
|
11
18
|
for (const rule of RUNTIME_COUPLING_PATTERNS) {
|
|
12
19
|
if (rule.pattern.test(content))
|
|
13
20
|
matches.push({ message: rule.message });
|
|
14
21
|
}
|
|
22
|
+
for (const check of SOURCE_REFERENCE_CHECKS) {
|
|
23
|
+
for (const match of content.matchAll(check.makePattern())) {
|
|
24
|
+
if (!isExplainedReference(match[0], occurrences)) {
|
|
25
|
+
matches.push({ message: check.message });
|
|
26
|
+
break;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
15
30
|
return matches;
|
|
16
31
|
}
|
|
17
32
|
//# sourceMappingURL=runtime-coupling-patterns.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-coupling-patterns.js","sourceRoot":"","sources":["../../src/migrate/runtime-coupling-patterns.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtime-coupling-patterns.js","sourceRoot":"","sources":["../../src/migrate/runtime-coupling-patterns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAO7G,MAAM,CAAC,MAAM,yBAAyB,GAAgD;IACrF,EAAE,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,iDAAiD,EAAE;IAChG,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,qDAAqD,EAAE;IACvG,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,2CAA2C,EAAE;IACtF,EAAE,OAAO,EAAE,wCAAwC,EAAE,OAAO,EAAE,2CAA2C,EAAE;CAC3G,CAAC;AAEF,6EAA6E;AAC7E,8EAA8E;AAC9E,kEAAkE;AAClE,MAAM,uBAAuB,GAA0D;IACtF,EAAE,WAAW,EAAE,sBAAsB,EAAE,OAAO,EAAE,oCAAoC,EAAE;IACtF,EAAE,WAAW,EAAE,wBAAwB,EAAE,OAAO,EAAE,gCAAgC,EAAE;CACpF,CAAC;AAEF,MAAM,UAAU,0BAA0B,CACzC,OAAe,EACf,cAAqC,EAAE;IAEvC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,IAAI,IAAI,yBAAyB,EAAE,CAAC;QAC9C,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,uBAAuB,EAAE,CAAC;QAC7C,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC;gBAClD,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACzC,MAAM;YACP,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ReferenceOccurrence } from "./references/reference-types.js";
|
|
1
2
|
import type { ProviderType } from "./types.js";
|
|
2
3
|
export interface SkillDirectoryAuditIssue {
|
|
3
4
|
filePath: string;
|
|
@@ -8,6 +9,8 @@ export interface SkillDirectoryAuditResult {
|
|
|
8
9
|
}
|
|
9
10
|
export interface SkillDirectoryAuditOptions {
|
|
10
11
|
ignoreRewriteableMarkdown?: boolean;
|
|
12
|
+
/** Classifier decisions per rewritten markdown file (relative path) */
|
|
13
|
+
occurrencesByFile?: Map<string, ReferenceOccurrence[]>;
|
|
11
14
|
}
|
|
12
15
|
export declare function auditSkillDirectory(rootDir: string, provider: ProviderType, skillName: string, options?: SkillDirectoryAuditOptions): Promise<SkillDirectoryAuditResult>;
|
|
13
16
|
//# sourceMappingURL=skill-directory-audit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-directory-audit.d.ts","sourceRoot":"","sources":["../../src/migrate/skill-directory-audit.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,wBAAwB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACzC,MAAM,EAAE,wBAAwB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,0BAA0B;IAC1C,yBAAyB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"skill-directory-audit.d.ts","sourceRoot":"","sources":["../../src/migrate/skill-directory-audit.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,wBAAwB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACzC,MAAM,EAAE,wBAAwB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,0BAA0B;IAC1C,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,uEAAuE;IACvE,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAC;CACvD;AAuDD,wBAAsB,mBAAmB,CACxC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,0BAA+B,GACtC,OAAO,CAAC,yBAAyB,CAAC,CA0BpC"}
|
|
@@ -67,7 +67,8 @@ export async function auditSkillDirectory(rootDir, provider, skillName, options
|
|
|
67
67
|
const relativePath = relative(rootDir, filePath).replace(/\\/g, "/");
|
|
68
68
|
if (options.ignoreRewriteableMarkdown && isMarkdownFile(relativePath))
|
|
69
69
|
continue;
|
|
70
|
-
|
|
70
|
+
const occurrences = options.occurrencesByFile?.get(relativePath) ?? [];
|
|
71
|
+
for (const match of findRuntimeCouplingMatches(content, occurrences)) {
|
|
71
72
|
const severity = isHighRiskFile(relativePath) ? "high-risk" : "runtime-coupled";
|
|
72
73
|
errors.push({
|
|
73
74
|
filePath: relativePath,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-directory-audit.js","sourceRoot":"","sources":["../../src/migrate/skill-directory-audit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"skill-directory-audit.js","sourceRoot":"","sources":["../../src/migrate/skill-directory-audit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type ReferenceIntegrityIndex } from "./references/fence-aware-reference-rewriter.js";
|
|
1
2
|
import { type InstalledBackRef } from "../core/install-metadata-backref.js";
|
|
2
3
|
import type { ProviderType, SkillInfo } from "./types.js";
|
|
3
4
|
export interface SkillInstallResult {
|
|
@@ -15,6 +16,7 @@ export interface SkillInstallResult {
|
|
|
15
16
|
export declare function installSkillDirectory(skill: SkillInfo, provider: ProviderType, options: {
|
|
16
17
|
global: boolean;
|
|
17
18
|
installedBackRef?: InstalledBackRef | null;
|
|
19
|
+
migratedRefs?: ReferenceIntegrityIndex | null;
|
|
18
20
|
}): Promise<SkillInstallResult>;
|
|
19
21
|
/**
|
|
20
22
|
* Compute the install path for a skill on a target provider (used by reconciler/dry-run).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-directory-installer.d.ts","sourceRoot":"","sources":["../../src/migrate/skill-directory-installer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"skill-directory-installer.d.ts","sourceRoot":"","sources":["../../src/migrate/skill-directory-installer.ts"],"names":[],"mappings":"AAOA,OAAO,EAGN,KAAK,uBAAuB,EAC5B,MAAM,gDAAgD,CAAC;AAMxD,OAAO,EAA2B,KAAK,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAErG,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAoDD;;;;GAIG;AACH,wBAAsB,qBAAqB,CAC1C,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE;IACR,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC3C,YAAY,CAAC,EAAE,uBAAuB,GAAG,IAAI,CAAC;CAC9C,GACC,OAAO,CAAC,kBAAkB,CAAC,CAiG7B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAClC,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GAC1B,MAAM,GAAG,IAAI,CAGf"}
|
|
@@ -4,6 +4,7 @@ import { existsSync } from "node:fs";
|
|
|
4
4
|
import { cp, mkdir, readdir, readFile, realpath, rename, rm, writeFile } from "node:fs/promises";
|
|
5
5
|
import { dirname, join, resolve } from "node:path";
|
|
6
6
|
import { stripClaudeRefs } from "./converters/index.js";
|
|
7
|
+
import { combineIntegrityIndexes, createReferenceIntegrityIndex, } from "./references/fence-aware-reference-rewriter.js";
|
|
7
8
|
import { providers } from "./provider-registry.js";
|
|
8
9
|
import { getPortableInstallPath } from "./provider-registry-utils.js";
|
|
9
10
|
import { sanitizeSkillName } from "./discovery/skills-discovery.js";
|
|
@@ -31,23 +32,27 @@ async function canonicalize(path) {
|
|
|
31
32
|
}
|
|
32
33
|
}
|
|
33
34
|
}
|
|
34
|
-
async function rewriteMarkdownFilesForProvider(rootDir, provider) {
|
|
35
|
+
async function rewriteMarkdownFilesForProvider(rootDir, provider, migratedRefs, occurrencesByFile, baseDir = rootDir) {
|
|
35
36
|
const entries = await readdir(rootDir, { withFileTypes: true });
|
|
36
37
|
for (const entry of entries) {
|
|
37
38
|
const fullPath = join(rootDir, entry.name);
|
|
38
39
|
if (entry.isDirectory()) {
|
|
39
|
-
await rewriteMarkdownFilesForProvider(fullPath, provider);
|
|
40
|
+
await rewriteMarkdownFilesForProvider(fullPath, provider, migratedRefs, occurrencesByFile, baseDir);
|
|
40
41
|
continue;
|
|
41
42
|
}
|
|
42
43
|
if (!entry.isFile() || !entry.name.toLowerCase().endsWith(".md"))
|
|
43
44
|
continue;
|
|
44
45
|
const original = await readFile(fullPath, "utf-8");
|
|
45
|
-
const
|
|
46
|
+
const stripped = stripClaudeRefs(original, {
|
|
46
47
|
provider,
|
|
47
48
|
targetName: providers[provider].displayName,
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
file: entry.name,
|
|
50
|
+
migratedRefs,
|
|
51
|
+
});
|
|
52
|
+
const relPath = fullPath.slice(baseDir.length + 1).replace(/\\/g, "/");
|
|
53
|
+
occurrencesByFile.set(relPath, stripped.occurrences);
|
|
54
|
+
if (stripped.content !== original) {
|
|
55
|
+
await writeFile(fullPath, stripped.content, "utf-8");
|
|
51
56
|
}
|
|
52
57
|
}
|
|
53
58
|
}
|
|
@@ -90,8 +95,12 @@ export async function installSkillDirectory(skill, provider, options) {
|
|
|
90
95
|
try {
|
|
91
96
|
await cp(skill.sourcePath, targetDir, { recursive: true, force: true, errorOnExist: false });
|
|
92
97
|
copied = true;
|
|
93
|
-
|
|
94
|
-
|
|
98
|
+
// The skill being installed is definitionally part of the migration set,
|
|
99
|
+
// so its own fenced self-references always pass the integrity check.
|
|
100
|
+
const selfIndex = createReferenceIntegrityIndex([`.claude/skills/${skill.dirName}/`]);
|
|
101
|
+
const occurrencesByFile = new Map();
|
|
102
|
+
await rewriteMarkdownFilesForProvider(targetDir, provider, combineIntegrityIndexes(selfIndex, options.migratedRefs), occurrencesByFile);
|
|
103
|
+
const audit = await auditSkillDirectory(targetDir, provider, skill.name, { occurrencesByFile });
|
|
95
104
|
if (audit.errors.length > 0) {
|
|
96
105
|
throw new Error(`Skill runtime compatibility audit failed: ${audit.errors.map((e) => e.message).join("; ")}`);
|
|
97
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-directory-installer.js","sourceRoot":"","sources":["../../src/migrate/skill-directory-installer.ts"],"names":[],"mappings":"AAAA,oGAAoG;AACpG,kGAAkG;AAElG,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAyB,MAAM,qCAAqC,CAAC;AACrG,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAWjE,KAAK,UAAU,YAAY,CAAC,IAAY;IACvC,IAAI,CAAC;QACJ,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACR,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC;YACJ,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC9B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3D,OAAO,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACR,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;IACF,CAAC;AACF,CAAC;AAED,KAAK,UAAU,+BAA+B,
|
|
1
|
+
{"version":3,"file":"skill-directory-installer.js","sourceRoot":"","sources":["../../src/migrate/skill-directory-installer.ts"],"names":[],"mappings":"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"}
|
package/dist/migrate/types.d.ts
CHANGED
|
@@ -54,6 +54,8 @@ export interface ConversionResult {
|
|
|
54
54
|
filename: string;
|
|
55
55
|
warnings: string[];
|
|
56
56
|
error?: string;
|
|
57
|
+
/** Classified source-reference decisions made while converting (report layer input) */
|
|
58
|
+
occurrences?: import("./references/reference-types.js").ReferenceOccurrence[];
|
|
57
59
|
}
|
|
58
60
|
/** Result of installing a portable item to a provider */
|
|
59
61
|
export interface PortableInstallResult {
|
|
@@ -111,44 +113,52 @@ export declare const MigrateOptionsSchema: z.ZodObject<{
|
|
|
111
113
|
respectDeletions: z.ZodOptional<z.ZodBoolean>;
|
|
112
114
|
sourceVersion: z.ZodOptional<z.ZodString>;
|
|
113
115
|
providers: z.ZodOptional<z.ZodBoolean>;
|
|
116
|
+
/** Merge ALL rules into the provider instruction file, bypassing the portability filter */
|
|
117
|
+
allRules: z.ZodOptional<z.ZodBoolean>;
|
|
118
|
+
/** Opt-in: convert .mcp.json server definitions into the provider MCP config */
|
|
119
|
+
includeMcp: z.ZodOptional<z.ZodBoolean>;
|
|
114
120
|
}, "strip", z.ZodTypeAny, {
|
|
115
|
-
|
|
121
|
+
providers?: boolean | undefined;
|
|
122
|
+
source?: string | undefined;
|
|
116
123
|
tool?: string | undefined;
|
|
117
|
-
|
|
124
|
+
global?: boolean | undefined;
|
|
118
125
|
tools?: string[] | undefined;
|
|
119
126
|
all?: boolean | undefined;
|
|
120
|
-
global?: boolean | undefined;
|
|
121
127
|
yes?: boolean | undefined;
|
|
122
128
|
dryRun?: boolean | undefined;
|
|
123
|
-
|
|
129
|
+
force?: boolean | undefined;
|
|
124
130
|
only?: string | undefined;
|
|
125
131
|
skipConfig?: boolean | undefined;
|
|
126
132
|
skipRules?: boolean | undefined;
|
|
127
133
|
skipHooks?: boolean | undefined;
|
|
134
|
+
install?: boolean | undefined;
|
|
128
135
|
reconcile?: boolean | undefined;
|
|
129
136
|
reinstallEmptyDirs?: boolean | undefined;
|
|
130
137
|
respectDeletions?: boolean | undefined;
|
|
131
138
|
sourceVersion?: string | undefined;
|
|
132
|
-
|
|
139
|
+
allRules?: boolean | undefined;
|
|
140
|
+
includeMcp?: boolean | undefined;
|
|
133
141
|
}, {
|
|
134
|
-
|
|
142
|
+
providers?: boolean | undefined;
|
|
143
|
+
source?: string | undefined;
|
|
135
144
|
tool?: string | undefined;
|
|
136
|
-
|
|
145
|
+
global?: boolean | undefined;
|
|
137
146
|
tools?: string[] | undefined;
|
|
138
147
|
all?: boolean | undefined;
|
|
139
|
-
global?: boolean | undefined;
|
|
140
148
|
yes?: boolean | undefined;
|
|
141
149
|
dryRun?: boolean | undefined;
|
|
142
|
-
|
|
150
|
+
force?: boolean | undefined;
|
|
143
151
|
only?: string | undefined;
|
|
144
152
|
skipConfig?: boolean | undefined;
|
|
145
153
|
skipRules?: boolean | undefined;
|
|
146
154
|
skipHooks?: boolean | undefined;
|
|
155
|
+
install?: boolean | undefined;
|
|
147
156
|
reconcile?: boolean | undefined;
|
|
148
157
|
reinstallEmptyDirs?: boolean | undefined;
|
|
149
158
|
respectDeletions?: boolean | undefined;
|
|
150
159
|
sourceVersion?: string | undefined;
|
|
151
|
-
|
|
160
|
+
allRules?: boolean | undefined;
|
|
161
|
+
includeMcp?: boolean | undefined;
|
|
152
162
|
}>;
|
|
153
163
|
export type MigrateOptions = z.infer<typeof MigrateOptionsSchema>;
|
|
154
164
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/migrate/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,4BAA4B;AAC5B,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;AAExF,kDAAkD;AAClD,eAAO,MAAM,YAAY,4LAiBvB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,kBAAkB,GAAG,eAAe,CAAC;AAChF,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEpD,MAAM,WAAW,sBAAsB;IACtC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;QACzB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;KACzB,CAAC;IACF,QAAQ,CAAC,EAAE;QACV,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;QAC1B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;KACf,CAAC;IACF,WAAW,CAAC,EAAE,WAAW,CAAC;CAC1B;AAKD,YAAY,EACX,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,cAAc,GACd,MAAM,sCAAsC,CAAC;AAE9C,iDAAiD;AACjD,MAAM,WAAW,iBAAiB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB;AAED,oCAAoC;AACpC,MAAM,WAAW,sBAAsB;IACtC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,kFAAkF;AAClF,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,iEAAiE;AACjE,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/migrate/types.ts"],"names":[],"mappings":"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"}
|
package/dist/migrate/types.js
CHANGED
|
@@ -41,5 +41,9 @@ export const MigrateOptionsSchema = z.object({
|
|
|
41
41
|
respectDeletions: z.boolean().optional(),
|
|
42
42
|
sourceVersion: z.string().optional(),
|
|
43
43
|
providers: z.boolean().optional(),
|
|
44
|
+
/** Merge ALL rules into the provider instruction file, bypassing the portability filter */
|
|
45
|
+
allRules: z.boolean().optional(),
|
|
46
|
+
/** Opt-in: convert .mcp.json server definitions into the provider MCP config */
|
|
47
|
+
includeMcp: z.boolean().optional(),
|
|
44
48
|
});
|
|
45
49
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/migrate/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,oFAAoF;AACpF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,kDAAkD;AAClD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,aAAa;IACb,QAAQ;IACR,OAAO;IACP,OAAO;IACP,UAAU;IACV,OAAO;IACP,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,UAAU;IACV,OAAO;IACP,WAAW;CACX,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/migrate/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,oFAAoF;AACpF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,kDAAkD;AAClD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,aAAa;IACb,QAAQ;IACR,OAAO;IACP,OAAO;IACP,UAAU;IACV,OAAO;IACP,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,UAAU;IACV,OAAO;IACP,WAAW;CACX,CAAC,CAAC;AA8GH,yCAAyC;AACzC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,+FAA+F;IAC/F,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACrC,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC3B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC3B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAClC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC1C,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACxC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,2FAA2F;IAC3F,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,gFAAgF;IAChF,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type ReferenceIntegrityIndex } from "../references/fence-aware-reference-rewriter.js";
|
|
2
|
+
import type { ReconcileAction } from "../reconcile/reconcile-types.js";
|
|
3
|
+
import type { PortableItem, PortableType, ProviderType, SkillInfo } from "../types.js";
|
|
4
|
+
export interface ConversionReport {
|
|
5
|
+
/** Preserved-with-warning references: "file:line — ref (reason)" */
|
|
6
|
+
warnedReferences: string[];
|
|
7
|
+
/** Unique converter warnings (unsupported concepts, manual adaptations, ...) */
|
|
8
|
+
conversionWarnings: string[];
|
|
9
|
+
/** Projected merged-instruction-file budget status lines */
|
|
10
|
+
budgetLines: string[];
|
|
11
|
+
/** Internal invariant violations from the unresolved-reference scanner */
|
|
12
|
+
validationErrors: string[];
|
|
13
|
+
}
|
|
14
|
+
export declare function buildConversionReport(input: {
|
|
15
|
+
actions: ReconcileAction[];
|
|
16
|
+
itemsByType: Record<PortableType, PortableItem[]>;
|
|
17
|
+
skillsByProvider: Map<ProviderType, SkillInfo[]>;
|
|
18
|
+
migratedRefs: ReferenceIntegrityIndex;
|
|
19
|
+
}): ConversionReport;
|
|
20
|
+
//# sourceMappingURL=migrate-conversion-report.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate-conversion-report.d.ts","sourceRoot":"","sources":["../../../src/migrate/validation/migrate-conversion-report.ts"],"names":[],"mappings":"AASA,OAAO,EAIN,KAAK,uBAAuB,EAC5B,MAAM,iDAAiD,CAAC;AAEzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGvF,MAAM,WAAW,gBAAgB;IAChC,oEAAoE;IACpE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,gFAAgF;IAChF,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,4DAA4D;IAC5D,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,0EAA0E;IAC1E,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC3B;AAqBD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC5C,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC,YAAY,EAAE,YAAY,EAAE,CAAC,CAAC;IAClD,gBAAgB,EAAE,GAAG,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC;IACjD,YAAY,EAAE,uBAAuB,CAAC;CACtC,GAAG,gBAAgB,CA2EnB"}
|