@o3r/mcp 14.0.0-next.9 → 14.0.0-prerelease.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@o3r/mcp",
3
- "version": "14.0.0-next.9",
3
+ "version": "14.0.0-prerelease.2",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -22,62 +22,64 @@
22
22
  "compile": "tsc -b ./tsconfig.build.json && yarn copy:resources && yarn cpy package.json dist && patch-package-json-main"
23
23
  },
24
24
  "dependencies": {
25
- "@ama-mcp/angular": "^14.0.0-next.9",
26
- "@ama-mcp/core": "^14.0.0-next.9",
27
- "@ama-mcp/github": "^14.0.0-next.9",
28
- "@ama-mcp/otter": "^14.0.0-next.9",
25
+ "@ama-mcp/angular": "^14.0.0-prerelease.2",
26
+ "@ama-mcp/core": "^14.0.0-prerelease.2",
27
+ "@ama-mcp/github": "^14.0.0-prerelease.2",
28
+ "@ama-mcp/otter": "^14.0.0-prerelease.2",
29
29
  "@modelcontextprotocol/sdk": "~1.25.0",
30
- "@o3r/telemetry": "~14.0.0-next.9",
30
+ "@o3r/telemetry": "~14.0.0-prerelease.2",
31
31
  "@octokit/rest": "~22.0.0",
32
32
  "tslib": "^2.6.2",
33
33
  "zod": "~4.1.0"
34
34
  },
35
35
  "devDependencies": {
36
- "@angular-devkit/architect": "0.2003.13",
37
- "@angular-devkit/schematics": "~20.3.13",
38
- "@angular/common": "~20.3.15",
39
- "@angular/compiler": "~20.3.15",
40
- "@angular/compiler-cli": "~20.3.15",
41
- "@angular/core": "~20.3.15",
42
- "@angular/platform-browser": "~20.3.15",
43
- "@angular/platform-browser-dynamic": "~20.3.15",
36
+ "@angular-devkit/architect": "~0.2100.2",
37
+ "@angular-devkit/schematics": "~21.0.2",
38
+ "@angular/common": "~21.0.3",
39
+ "@angular/compiler": "~21.0.3",
40
+ "@angular/compiler-cli": "~21.0.3",
41
+ "@angular/core": "~21.0.3",
42
+ "@angular/platform-browser": "~21.0.3",
43
+ "@angular/platform-browser-dynamic": "~21.0.3",
44
44
  "@eslint-community/eslint-plugin-eslint-comments": "^4.4.0",
45
- "@nx/eslint": "~21.6.0",
46
- "@nx/eslint-plugin": "~21.6.0",
47
- "@nx/jest": "~21.6.0",
48
- "@nx/js": "~21.6.0",
49
- "@o3r/build-helpers": "~14.0.0-next.9",
50
- "@o3r/eslint-config": "~14.0.0-next.9",
51
- "@o3r/eslint-plugin": "~14.0.0-next.9",
52
- "@o3r/test-helpers": "~14.0.0-next.9",
45
+ "@nx/eslint": "~22.3.3",
46
+ "@nx/eslint-plugin": "~22.3.3",
47
+ "@nx/jest": "~22.3.3",
48
+ "@nx/js": "~22.3.3",
49
+ "@o3r/build-helpers": "~14.0.0-prerelease.2",
50
+ "@o3r/eslint-config": "~14.0.0-prerelease.2",
51
+ "@o3r/eslint-plugin": "~14.0.0-prerelease.2",
52
+ "@o3r/test-helpers": "~14.0.0-prerelease.2",
53
53
  "@stylistic/eslint-plugin": "~5.6.0",
54
54
  "@types/jest": "~30.0.0",
55
55
  "@types/node": "~24.10.0",
56
- "@typescript-eslint/parser": "~8.51.0",
57
- "angular-eslint": "~20.6.0",
56
+ "@typescript-eslint/parser": "~8.52.0",
57
+ "angular-eslint": "~21.0.1",
58
58
  "cpy-cli": "^6.0.0",
59
59
  "eslint": "~9.39.0",
60
60
  "eslint-import-resolver-node": "~0.3.9",
61
61
  "eslint-import-resolver-typescript": "~4.4.0",
62
62
  "eslint-plugin-import": "~2.32.0",
63
63
  "eslint-plugin-import-newlines": "~1.4.0",
64
- "eslint-plugin-jest": "~29.11.0",
64
+ "eslint-plugin-jest": "~29.12.0",
65
65
  "eslint-plugin-jsdoc": "~61.5.0",
66
66
  "eslint-plugin-prefer-arrow": "~1.2.3",
67
67
  "eslint-plugin-unicorn": "~62.0.0",
68
68
  "eslint-plugin-unused-imports": "~4.3.0",
69
69
  "globals": "^16.0.0",
70
70
  "jest": "~30.2.0",
71
+ "jest-environment-jsdom": "~30.2.0",
71
72
  "jest-junit": "~16.0.0",
73
+ "jest-preset-angular": "~16.0.0",
72
74
  "jest-util": "~30.2.0",
75
+ "jsdom": "~27.3.0",
73
76
  "jsonc-eslint-parser": "~2.4.0",
74
- "nx": "~21.6.0",
77
+ "nx": "~22.3.3",
75
78
  "rxjs": "^7.8.1",
76
79
  "ts-jest": "~29.4.0",
77
80
  "type-fest": "^5.3.1",
78
81
  "typescript": "~5.9.2",
79
- "typescript-eslint": "~8.51.0",
80
- "zone.js": "~0.15.0"
82
+ "typescript-eslint": "~8.52.0"
81
83
  },
82
84
  "engines": {
83
85
  "node": "^20.19.0 || ^22.17.0 || ^24.0.0"
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/mcp-server.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,SAAS,EACV,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACb,MAAM,eAAe,CAAC;AAuBvB;;;GAGG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAkD9E"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/mcp-server.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,SAAS,EACV,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACb,MAAM,eAAe,CAAC;AA0BvB;;;GAGG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAmD9E"}
package/src/mcp-server.js CHANGED
@@ -10,6 +10,7 @@ const otter_1 = require("@ama-mcp/otter");
10
10
  const telemetry_1 = require("@o3r/telemetry");
11
11
  const best_practices_1 = require("./best-practices");
12
12
  const create_monorepo_with_app_1 = require("./create-monorepo-with-app");
13
+ const migrate_version_1 = require("./migrate-version");
13
14
  /**
14
15
  * Create an MCP server instance.
15
16
  * @param logger
@@ -27,6 +28,7 @@ async function createMcpServer(logger) {
27
28
  await Promise.allSettled([
28
29
  (0, best_practices_1.registerBestPracticesToolAndResources)(server, resourcesPath),
29
30
  (0, create_monorepo_with_app_1.registerCreateMonorepoWithAppTool)(server, resourcesPath),
31
+ Promise.resolve((0, migrate_version_1.registerMigrateVersionTool)(server)),
30
32
  Promise.resolve((0, angular_1.registerAngularSchematicsTool)(server, {})),
31
33
  ...(githubToken
32
34
  ? [
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/mcp-server.ts"],"names":[],"mappings":";;AA0CA,0CAkDC;AA5FD,+CAE0B;AAC1B,yCAGmB;AACnB,8CAE0B;AAI1B,wCAEuB;AACvB,4CAIyB;AACzB,0CAMwB;AACxB,8CAEwB;AACxB,qDAE0B;AAC1B,yEAEoC;AAEpC;;;GAGG;AACI,KAAK,UAAU,eAAe,CAAC,MAAiB;IACrD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAA,mBAAQ,EAAC,IAAA,gBAAI,EAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAsC,CAAC;IACzI,MAAM,MAAM,GAAG,IAAI,mBAAY,CAC7B,MAAM,EACN;QACE,IAAI;QACJ,OAAO;KACR,CACF,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;IACrD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,iBAAiB,CAAC;IAEzE,KAAK,IAAA,6CAAiC,EAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAE9E,MAAM,OAAO,CAAC,UAAU,CAAC;QACvB,IAAA,sDAAqC,EAAC,MAAM,EAAE,aAAa,CAAC;QAC5D,IAAA,4DAAiC,EAAC,MAAM,EAAE,aAAa,CAAC;QACxD,OAAO,CAAC,OAAO,CAAC,IAAA,uCAA6B,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1D,GAAG,CAAC,WAAW;YACb,CAAC,CAAC;gBACA,IAAA,gDAAuC,EAAC,MAAM,EAAE;oBAC9C,WAAW,EAAX,oBAAW;oBACX,MAAM,EAAE,2BAAY;oBACpB,WAAW;oBACX,aAAa,EAAE,IAAA,mBAAO,EAAC,YAAY,EAAE,wBAAwB,CAAC;oBAC9D,yBAAyB,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAsB,CAAC;iBAC/H,CAAC;gBACF,IAAA,sCAA6B,EAAC,MAAM,EAAE;oBACpC,WAAW;oBACX,KAAK,EAAL,oBAAK;oBACL,IAAI,EAAJ,8BAAI;oBACJ,WAAW,EAAX,oBAAW;iBACZ,CAAC;gBACF,IAAA,6BAAoB,EAAC,MAAM,EAAE;oBAC3B,WAAW;oBACX,KAAK,EAAL,oBAAK;oBACL,IAAI,EAAJ,8BAAI;oBACJ,WAAW,EAAX,oBAAW;oBACX,SAAS,EAAT,2BAAS;iBACV,CAAC;aACH;YACD,CAAC,CAAC;gBACA,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,oEAAoE,CAAC;aACzF,CAAC;KACL,CAAC,CAAC;IAEH,KAAK,IAAA,6CAAiC,EAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAE5E,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/mcp-server.ts"],"names":[],"mappings":";;AA6CA,0CAmDC;AAhGD,+CAE0B;AAC1B,yCAGmB;AACnB,8CAE0B;AAI1B,wCAEuB;AACvB,4CAIyB;AACzB,0CAMwB;AACxB,8CAEwB;AACxB,qDAE0B;AAC1B,yEAEoC;AACpC,uDAE2B;AAE3B;;;GAGG;AACI,KAAK,UAAU,eAAe,CAAC,MAAiB;IACrD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAA,mBAAQ,EAAC,IAAA,gBAAI,EAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAsC,CAAC;IACzI,MAAM,MAAM,GAAG,IAAI,mBAAY,CAC7B,MAAM,EACN;QACE,IAAI;QACJ,OAAO;KACR,CACF,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;IACrD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,iBAAiB,CAAC;IAEzE,KAAK,IAAA,6CAAiC,EAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAE9E,MAAM,OAAO,CAAC,UAAU,CAAC;QACvB,IAAA,sDAAqC,EAAC,MAAM,EAAE,aAAa,CAAC;QAC5D,IAAA,4DAAiC,EAAC,MAAM,EAAE,aAAa,CAAC;QACxD,OAAO,CAAC,OAAO,CAAC,IAAA,4CAA0B,EAAC,MAAM,CAAC,CAAC;QACnD,OAAO,CAAC,OAAO,CAAC,IAAA,uCAA6B,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1D,GAAG,CAAC,WAAW;YACb,CAAC,CAAC;gBACA,IAAA,gDAAuC,EAAC,MAAM,EAAE;oBAC9C,WAAW,EAAX,oBAAW;oBACX,MAAM,EAAE,2BAAY;oBACpB,WAAW;oBACX,aAAa,EAAE,IAAA,mBAAO,EAAC,YAAY,EAAE,wBAAwB,CAAC;oBAC9D,yBAAyB,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAsB,CAAC;iBAC/H,CAAC;gBACF,IAAA,sCAA6B,EAAC,MAAM,EAAE;oBACpC,WAAW;oBACX,KAAK,EAAL,oBAAK;oBACL,IAAI,EAAJ,8BAAI;oBACJ,WAAW,EAAX,oBAAW;iBACZ,CAAC;gBACF,IAAA,6BAAoB,EAAC,MAAM,EAAE;oBAC3B,WAAW;oBACX,KAAK,EAAL,oBAAK;oBACL,IAAI,EAAJ,8BAAI;oBACJ,WAAW,EAAX,oBAAW;oBACX,SAAS,EAAT,2BAAS;iBACV,CAAC;aACH;YACD,CAAC,CAAC;gBACA,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,oEAAoE,CAAC;aACzF,CAAC;KACL,CAAC,CAAC;IAEH,KAAK,IAAA,6CAAiC,EAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAE5E,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ /**
3
+ * Register the migrate version tool.
4
+ * @param server MCP server instance
5
+ */
6
+ export declare function registerMigrateVersionTool(server: McpServer): void;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/migrate-version/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,SAAS,EACV,MAAM,yCAAyC,CAAC;AAyEjD;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,QAuJ3D"}
@@ -0,0 +1,207 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerMigrateVersionTool = registerMigrateVersionTool;
4
+ const promises_1 = require("node:fs/promises");
5
+ const zod_1 = require("zod");
6
+ /**
7
+ * Extract Otter version from package.json.
8
+ * @param packageJsonPath Path to package.json
9
+ */
10
+ async function getCurrentOtterVersion(packageJsonPath) {
11
+ try {
12
+ const packageJson = JSON.parse(await (0, promises_1.readFile)(packageJsonPath, 'utf8'));
13
+ const dependencies = { ...packageJson.dependencies, ...packageJson.devDependencies };
14
+ for (const [pkg, version] of Object.entries(dependencies)) {
15
+ if (pkg.startsWith('@o3r/')) {
16
+ const versionMatch = version.match(/(\d+\.\d+)/);
17
+ if (versionMatch) {
18
+ return versionMatch[1];
19
+ }
20
+ }
21
+ }
22
+ return null;
23
+ }
24
+ catch {
25
+ return null;
26
+ }
27
+ }
28
+ /**
29
+ * Detect the package manager used in the project.
30
+ * @param packageJsonPath Path to package.json
31
+ */
32
+ async function detectPackageManager(packageJsonPath) {
33
+ try {
34
+ const packageJson = JSON.parse(await (0, promises_1.readFile)(packageJsonPath, 'utf8'));
35
+ return packageJson.packageManager?.startsWith('yarn') ? 'yarn' : 'npm';
36
+ }
37
+ catch {
38
+ return 'npm';
39
+ }
40
+ }
41
+ const OUTPUT_TEMPLATE = `
42
+ # Otter Version Migration
43
+
44
+ **Current version:** <currentVersion>
45
+
46
+ **Available releases:** <availableReleases>
47
+
48
+ ## Migration Instructions
49
+
50
+ <migrationInstructions>
51
+
52
+ ---
53
+
54
+ **Additional resources:**
55
+ - [Migration guides](https://github.com/AmadeusITGroup/otter/tree/main/migration-guides)
56
+ - [Release notes](https://github.com/AmadeusITGroup/otter/releases)
57
+ `;
58
+ const DESCRIPTION = `
59
+ Use this tool to help users migrate their Otter project to a newer version.
60
+
61
+ **Workflow:**
62
+ 1. Call this tool to get the current Otter version from the user's \`package.json\`
63
+ 2. If no target version is specified, call \`get_supported_releases_amadeusitgroup/otter\` to fetch available releases
64
+ 3. Compare the current version with available releases to identify newer versions
65
+ 4. Present the newer versions to the user and ask which one they want to migrate to
66
+ 5. Call this tool again with the target version to get migration instructions
67
+ `;
68
+ /**
69
+ * Register the migrate version tool.
70
+ * @param server MCP server instance
71
+ */
72
+ function registerMigrateVersionTool(server) {
73
+ server.registerPrompt('migrate_otter_version', {
74
+ title: 'Migrate Otter version'
75
+ }, () => ({
76
+ messages: [{
77
+ role: 'user',
78
+ content: {
79
+ type: 'text',
80
+ text: 'Migrate otter version using the tool `migrate_otter_version`'
81
+ }
82
+ }]
83
+ }));
84
+ server.registerTool('migrate_otter_version', {
85
+ title: 'Migrate Otter version',
86
+ description: DESCRIPTION,
87
+ inputSchema: {
88
+ packageJsonPath: zod_1.z
89
+ .string()
90
+ .describe('Absolute path to the package.json file in the user\'s project. Defaults to \'./package.json\' if not provided.')
91
+ .optional(),
92
+ targetVersion: zod_1.z
93
+ .string()
94
+ .describe('The target Otter version to migrate to (e.g., "11.0", "12.0", "13.0"). If not provided, the tool will list available versions.')
95
+ .optional()
96
+ }
97
+ }, async ({ packageJsonPath = './package.json', targetVersion }) => {
98
+ const currentVersion = await getCurrentOtterVersion(packageJsonPath);
99
+ if (!currentVersion) {
100
+ return {
101
+ content: [
102
+ {
103
+ type: 'text',
104
+ text: 'Could not detect Otter version in package.json. Make sure your project has @o3r/* packages installed.'
105
+ }
106
+ ]
107
+ };
108
+ }
109
+ if (!targetVersion) {
110
+ return {
111
+ content: [
112
+ {
113
+ type: 'text',
114
+ text: OUTPUT_TEMPLATE
115
+ .replace('<currentVersion>', currentVersion)
116
+ .replace('<availableReleases>', 'Use the `get_supported_releases_amadeusitgroup/otter` tool to see available releases.')
117
+ .replace('<migrationInstructions>', 'Please specify a target version to get migration instructions.')
118
+ }
119
+ ]
120
+ };
121
+ }
122
+ if (currentVersion === targetVersion) {
123
+ return {
124
+ content: [
125
+ {
126
+ type: 'text',
127
+ text: `Your project is already on Otter version ${currentVersion}. No migration needed.`
128
+ }
129
+ ]
130
+ };
131
+ }
132
+ // Compare versions
133
+ const [currentMajor] = currentVersion.split('.').map(Number);
134
+ const [targetMajor] = targetVersion.split('.').map(Number);
135
+ // Check if upgrading more than 1 major version
136
+ const majorVersionDiff = targetMajor - currentMajor;
137
+ if (majorVersionDiff > 1) {
138
+ const nextMajorVersion = `${currentMajor + 1}.0`;
139
+ return {
140
+ content: [
141
+ {
142
+ type: 'text',
143
+ text: [
144
+ `⚠️ **Cannot skip major versions**`,
145
+ '',
146
+ `You are trying to upgrade from **${currentVersion}** to **${targetVersion}**, which skips ${majorVersionDiff - 1} major version(s).`,
147
+ '',
148
+ 'Otter requires incremental major version upgrades to ensure proper migration of breaking changes.',
149
+ '',
150
+ `**Next step:** Migrate to version **${nextMajorVersion}** first.`,
151
+ '',
152
+ `After successfully migrating to ${nextMajorVersion}, you can then migrate to the next major version.`,
153
+ '',
154
+ 'Use `get_supported_releases_amadeusitgroup/otter` to see available versions.'
155
+ ].join('\n')
156
+ }
157
+ ]
158
+ };
159
+ }
160
+ // Instruct to validate the target version exists
161
+ const validationInstruction = [
162
+ `**Before proceeding with migration to ${targetVersion}:**`,
163
+ '',
164
+ '1. Call `get_supported_releases_amadeusitgroup/otter` to get the list of available releases',
165
+ `2. Verify that version **${targetVersion}** exists in the supported releases`,
166
+ '3. If the version does not exist, inform the user and ask them to choose a valid version',
167
+ '4. If the version exists, provide the migration instructions below',
168
+ ''
169
+ ].join('\n');
170
+ const packageManager = await detectPackageManager(packageJsonPath);
171
+ const migrationCommand = `${packageManager} ${packageManager === 'yarn' ? '' : 'exec '}ng update @o3r/core@~${targetVersion}`;
172
+ const migrationInstructions = `${validationInstruction}
173
+
174
+ ## Migration Instructions
175
+
176
+ To migrate from ${currentVersion} to ${targetVersion}:
177
+
178
+ 1. **Review the migration guide:**
179
+ - Check [migration-guides/${targetVersion}.md](https://github.com/AmadeusITGroup/otter/blob/main/migration-guides/${targetVersion}.md) for breaking changes
180
+
181
+ 2. **Run the migration command:**
182
+ \`\`\`bash
183
+ ${migrationCommand}
184
+ \`\`\`
185
+
186
+ 3. **Test your application:**
187
+ - Run tests: \`${packageManager} test\`
188
+ - Build: \`${packageManager} build\`
189
+ - Verify functionality in development
190
+
191
+ 4. **Commit the changes:**
192
+ - Review all changes made by the migration
193
+ - Commit with message: \`chore: migrate to Otter ${targetVersion}\``;
194
+ return {
195
+ content: [
196
+ {
197
+ type: 'text',
198
+ text: OUTPUT_TEMPLATE
199
+ .replace('<currentVersion>', currentVersion)
200
+ .replace('<availableReleases>', `Target version: ${targetVersion}`)
201
+ .replace('<migrationInstructions>', migrationInstructions)
202
+ }
203
+ ]
204
+ };
205
+ });
206
+ }
207
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/migrate-version/index.ts"],"names":[],"mappings":"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"}