@uoyo/mvtt 2.1.0 → 2.2.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/dist/cli.js +2 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/update.d.ts +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +18 -1
- package/dist/commands/update.js.map +1 -1
- package/dist/fs/core-manifest.d.ts +4 -3
- package/dist/fs/core-manifest.d.ts.map +1 -1
- package/dist/fs/core-manifest.js +5 -4
- package/dist/fs/core-manifest.js.map +1 -1
- package/dist/fs/materialize.d.ts +2 -0
- package/dist/fs/materialize.d.ts.map +1 -1
- package/dist/fs/materialize.js +3 -3
- package/dist/fs/materialize.js.map +1 -1
- package/dist/fs/registry-merge.d.ts +4 -3
- package/dist/fs/registry-merge.d.ts.map +1 -1
- package/dist/fs/registry-merge.js +5 -4
- package/dist/fs/registry-merge.js.map +1 -1
- package/dist/scripts/epic-update.cjs +54 -1
- package/dist/scripts/plan-update.cjs +21 -7
- package/dist/scripts/plan-update.md +9 -0
- package/dist/scripts/session-update.cjs +44 -1
- package/package.json +1 -1
- package/sources/scripts/epic-update.js +70 -1
- package/sources/scripts/plan-update.js +26 -8
- package/sources/scripts/plan-update.md +9 -0
- package/sources/scripts/session-update.js +61 -1
- package/sources/sections/activation-protocol.md +46 -0
- package/sources/sections/role-header.md +1 -1
- package/sources/sections/session-update.md +7 -1
- package/sources/skills/mvt-analyze/manifest.yaml +6 -9
- package/sources/skills/mvt-analyze-code/business.md +3 -0
- package/sources/skills/mvt-analyze-code/manifest.yaml +4 -8
- package/sources/skills/mvt-bug-detect/manifest.yaml +3 -4
- package/sources/skills/mvt-check-context/business.md +2 -2
- package/sources/skills/mvt-check-context/manifest.yaml +3 -6
- package/sources/skills/mvt-cleanup/business.md +40 -13
- package/sources/skills/mvt-cleanup/manifest.yaml +7 -8
- package/sources/skills/mvt-config/business.md +44 -49
- package/sources/skills/mvt-config/manifest.yaml +20 -25
- package/sources/skills/mvt-create-skill/business.md +15 -11
- package/sources/skills/mvt-create-skill/manifest.yaml +6 -9
- package/sources/skills/mvt-decompose/business.md +3 -0
- package/sources/skills/mvt-decompose/manifest.yaml +8 -10
- package/sources/skills/mvt-design/business.md +1 -1
- package/sources/skills/mvt-design/manifest.yaml +6 -8
- package/sources/skills/mvt-fix/business.md +7 -1
- package/sources/skills/mvt-fix/manifest.yaml +5 -9
- package/sources/skills/mvt-help/business.md +1 -0
- package/sources/skills/mvt-help/manifest.yaml +4 -4
- package/sources/skills/mvt-implement/business.md +1 -1
- package/sources/skills/mvt-implement/manifest.yaml +4 -7
- package/sources/skills/mvt-init/manifest.yaml +6 -9
- package/sources/skills/mvt-manage-context/business.md +4 -2
- package/sources/skills/mvt-manage-context/manifest.yaml +3 -6
- package/sources/skills/mvt-plan-dev/business.md +8 -6
- package/sources/skills/mvt-plan-dev/manifest.yaml +6 -10
- package/sources/skills/mvt-quick-dev/business.md +1 -1
- package/sources/skills/mvt-quick-dev/manifest.yaml +3 -4
- package/sources/skills/mvt-refactor/business.md +1 -1
- package/sources/skills/mvt-refactor/manifest.yaml +3 -4
- package/sources/skills/mvt-resume/business.md +3 -3
- package/sources/skills/mvt-resume/manifest.yaml +7 -10
- package/sources/skills/mvt-review/business.md +10 -3
- package/sources/skills/mvt-review/manifest.yaml +10 -11
- package/sources/skills/mvt-status/business.md +10 -9
- package/sources/skills/mvt-status/manifest.yaml +4 -7
- package/sources/skills/mvt-sync-context/business.md +19 -17
- package/sources/skills/mvt-sync-context/manifest.yaml +5 -9
- package/sources/skills/mvt-template/business.md +5 -5
- package/sources/skills/mvt-template/manifest.yaml +3 -6
- package/sources/skills/mvt-test/business.md +10 -2
- package/sources/skills/mvt-test/manifest.yaml +8 -11
- package/sources/skills/mvt-update-plan/business.md +6 -2
- package/sources/skills/mvt-update-plan/manifest.yaml +6 -10
- package/sources/sections/activation-load-config.md +0 -8
- package/sources/sections/activation-load-context.md +0 -49
- package/sources/sections/activation-preflight.md +0 -14
package/dist/cli.js
CHANGED
|
@@ -28,8 +28,8 @@ export async function run(argv) {
|
|
|
28
28
|
.command("update")
|
|
29
29
|
.description(bilingual("Update MVTT to latest version", "将 MVTT 更新到最新版本"))
|
|
30
30
|
.option("--check", bilingual("Only report version diff, do not modify", "仅报告版本差异,不实际修改"))
|
|
31
|
-
.action((opts) => {
|
|
32
|
-
updateCommand(opts);
|
|
31
|
+
.action(async (opts) => {
|
|
32
|
+
await updateCommand(opts);
|
|
33
33
|
});
|
|
34
34
|
program
|
|
35
35
|
.command("doctor")
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAc;IACtC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CACtB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,MAAM,CACvF,CAAC;IACF,IAAI,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACnC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAC1B,SAAS,OAAO,yBAAyB,EACzC,SAAS,OAAO,aAAa,CAC9B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAE9B,OAAO;SACJ,IAAI,CAAC,MAAM,CAAC;SACZ,WAAW,CAAC,SAAS,CAAC,0BAA0B,EAAE,4BAA4B,CAAC,CAAC;SAChF,OAAO,CAAC,UAAU,EAAE,EAAE,eAAe,CAAC,CAAC;IAE1C,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,SAAS,CAAC,mCAAmC,EAAE,gBAAgB,CAAC,CAAC;SAC7E,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,cAAc,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,SAAS,CAAC,+BAA+B,EAAE,gBAAgB,CAAC,CAAC;SACzE,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,yCAAyC,EAAE,eAAe,CAAC,CAAC;SACxF,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAc;IACtC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CACtB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,MAAM,CACvF,CAAC;IACF,IAAI,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACnC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAC1B,SAAS,OAAO,yBAAyB,EACzC,SAAS,OAAO,aAAa,CAC9B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAE9B,OAAO;SACJ,IAAI,CAAC,MAAM,CAAC;SACZ,WAAW,CAAC,SAAS,CAAC,0BAA0B,EAAE,4BAA4B,CAAC,CAAC;SAChF,OAAO,CAAC,UAAU,EAAE,EAAE,eAAe,CAAC,CAAC;IAE1C,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,SAAS,CAAC,mCAAmC,EAAE,gBAAgB,CAAC,CAAC;SAC7E,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,cAAc,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,SAAS,CAAC,+BAA+B,EAAE,gBAAgB,CAAC,CAAC;SACzE,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,yCAAyC,EAAE,eAAe,CAAC,CAAC;SACxF,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,SAAS,CAAC,2BAA2B,EAAE,UAAU,CAAC,CAAC;SAC/D,MAAM,CAAC,GAAG,EAAE;QACX,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,SAAS,CAAC,6BAA6B,EAAE,eAAe,CAAC,CAAC;SACtE,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,gBAAgB,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEL,MAAM,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;AACnD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,aAAa,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmH9E"}
|
package/dist/commands/update.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { existsSync, rmSync, readdirSync } from "node:fs";
|
|
2
2
|
import path from "node:path";
|
|
3
|
+
import * as p from "@clack/prompts";
|
|
3
4
|
import { materializeProject } from "../fs/materialize.js";
|
|
4
5
|
import { readInstallationManifest, readInstalledPlatforms, writeInstallationManifest, } from "../fs/install-manifest.js";
|
|
5
6
|
import { hashFile } from "../fs/hash.js";
|
|
6
7
|
import { getPackageRoot, getVersion } from "./shared.js";
|
|
7
8
|
import { bilingual } from "../util/bilingual.js";
|
|
8
9
|
import { startSpinner } from "../util/spinner.js";
|
|
9
|
-
export function updateCommand(options = {}) {
|
|
10
|
+
export async function updateCommand(options = {}) {
|
|
10
11
|
const projectRoot = process.cwd();
|
|
11
12
|
const packageRoot = getPackageRoot();
|
|
12
13
|
const version = getVersion();
|
|
@@ -49,6 +50,21 @@ export function updateCommand(options = {}) {
|
|
|
49
50
|
console.warn(` - ${f}`);
|
|
50
51
|
console.warn(bilingual("These changes will be OVERWRITTEN by update.\n", "更新时将覆盖这些修改。\n"));
|
|
51
52
|
}
|
|
53
|
+
// Backing up the existing registry / core-manifest is optional. In an
|
|
54
|
+
// interactive terminal, let the user decide (defaults to yes); in a non-TTY
|
|
55
|
+
// context (CI, pipes) there is no one to prompt, so fall back to backing up.
|
|
56
|
+
let backup = true;
|
|
57
|
+
if (process.stdout.isTTY) {
|
|
58
|
+
const response = await p.confirm({
|
|
59
|
+
message: bilingual("Back up the existing registry and core-manifest to .ai-agents/.backup/ before updating?", "更新前是否将现有的 registry 和 core-manifest 备份到 .ai-agents/.backup/?"),
|
|
60
|
+
initialValue: true,
|
|
61
|
+
});
|
|
62
|
+
if (p.isCancel(response)) {
|
|
63
|
+
console.log(bilingual("Update cancelled.", "已取消更新。"));
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
backup = response;
|
|
67
|
+
}
|
|
52
68
|
console.log(bilingual(`Updating MVTT from v${existing.mvtt_version} to v${version}...`, `正在将 MVTT 从 v${existing.mvtt_version} 更新到 v${version}...`));
|
|
53
69
|
const platforms = readInstalledPlatforms(existing);
|
|
54
70
|
const spinner = startSpinner(bilingual(`Materializing ${platforms.length} platform(s)...`, `正在生成 ${platforms.length} 个平台的文件...`));
|
|
@@ -59,6 +75,7 @@ export function updateCommand(options = {}) {
|
|
|
59
75
|
projectRoot,
|
|
60
76
|
platforms,
|
|
61
77
|
overwriteCreateOnce: false,
|
|
78
|
+
backup,
|
|
62
79
|
});
|
|
63
80
|
spinner.succeed();
|
|
64
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,MAAM,UAAU,aAAa,CAAC,UAAyB,EAAE;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,10 +5,11 @@
|
|
|
5
5
|
* - All entries with origin: "user" in the existing user manifest are preserved.
|
|
6
6
|
* - Any other entries (legacy or malformed) are dropped.
|
|
7
7
|
*
|
|
8
|
-
* The user manifest at projectRoot is rewritten with the merged result.
|
|
9
|
-
* of the previous user manifest (if
|
|
8
|
+
* The user manifest at projectRoot is rewritten with the merged result. When
|
|
9
|
+
* `backup` is true (the default), a backup of the previous user manifest (if
|
|
10
|
+
* any) is written to .ai-agents/.backup/.
|
|
10
11
|
*/
|
|
11
|
-
export declare function updateCoreManifest(projectRoot: string, packageRoot: string): {
|
|
12
|
+
export declare function updateCoreManifest(projectRoot: string, packageRoot: string, createBackup?: boolean): {
|
|
12
13
|
written: boolean;
|
|
13
14
|
backup: string | null;
|
|
14
15
|
frameworkCount: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-manifest.d.ts","sourceRoot":"","sources":["../../src/fs/core-manifest.ts"],"names":[],"mappings":"AAoCA
|
|
1
|
+
{"version":3,"file":"core-manifest.d.ts","sourceRoot":"","sources":["../../src/fs/core-manifest.ts"],"names":[],"mappings":"AAoCA;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,YAAY,UAAO,GAClB;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB,CA6CA"}
|
package/dist/fs/core-manifest.js
CHANGED
|
@@ -32,10 +32,11 @@ function backupUserManifest(projectRoot, sourcePath) {
|
|
|
32
32
|
* - All entries with origin: "user" in the existing user manifest are preserved.
|
|
33
33
|
* - Any other entries (legacy or malformed) are dropped.
|
|
34
34
|
*
|
|
35
|
-
* The user manifest at projectRoot is rewritten with the merged result.
|
|
36
|
-
* of the previous user manifest (if
|
|
35
|
+
* The user manifest at projectRoot is rewritten with the merged result. When
|
|
36
|
+
* `backup` is true (the default), a backup of the previous user manifest (if
|
|
37
|
+
* any) is written to .ai-agents/.backup/.
|
|
37
38
|
*/
|
|
38
|
-
export function updateCoreManifest(projectRoot, packageRoot) {
|
|
39
|
+
export function updateCoreManifest(projectRoot, packageRoot, createBackup = true) {
|
|
39
40
|
const frameworkPath = path.resolve(packageRoot, FRAMEWORK_MANIFEST_REL);
|
|
40
41
|
const userPath = path.resolve(projectRoot, USER_MANIFEST_REL);
|
|
41
42
|
const framework = readManifest(frameworkPath);
|
|
@@ -61,7 +62,7 @@ export function updateCoreManifest(projectRoot, packageRoot) {
|
|
|
61
62
|
],
|
|
62
63
|
};
|
|
63
64
|
let backup = null;
|
|
64
|
-
if (existsSync(userPath)) {
|
|
65
|
+
if (createBackup && existsSync(userPath)) {
|
|
65
66
|
backup = backupUserManifest(projectRoot, userPath);
|
|
66
67
|
}
|
|
67
68
|
mkdirSync(path.dirname(userPath), { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-manifest.js","sourceRoot":"","sources":["../../src/fs/core-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,UAAU,EACV,SAAS,EACT,YAAY,EACZ,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAGtE,MAAM,sBAAsB,GAAG,sCAAsC,CAAC;AACtE,MAAM,iBAAiB,GAAG,yCAAyC,CAAC;AACpE,MAAM,cAAc,GAAG,oBAAoB,CAAC;AAE5C,SAAS,YAAY,CAAC,QAAgB;IACpC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,MAAM,GAAG,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAiC,CAAC;IAC9D,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvD,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,MAAM;QACvB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,QAAQ;QAC7B,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,KAA4B,CAAC,CAAC,CAAC,EAAE;KAC/E,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,WAAmB,EAAE,UAAkB;IACjE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC5D,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC;IACvE,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACrC,OAAO,UAAU,CAAC;AACpB,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"core-manifest.js","sourceRoot":"","sources":["../../src/fs/core-manifest.ts"],"names":[],"mappings":"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"}
|
package/dist/fs/materialize.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ export interface MaterializeOptions {
|
|
|
11
11
|
timestamp?: string;
|
|
12
12
|
overwriteCreateOnce?: boolean;
|
|
13
13
|
platforms?: PlatformId[];
|
|
14
|
+
/** Back up the existing user registry/core-manifest before rewriting them. Defaults to true. */
|
|
15
|
+
backup?: boolean;
|
|
14
16
|
}
|
|
15
17
|
export declare function materializeProject(options: MaterializeOptions): MaterializedFile[];
|
|
16
18
|
//# sourceMappingURL=materialize.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"materialize.d.ts","sourceRoot":"","sources":["../../src/fs/materialize.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAOvD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,GAAG,aAAa,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"materialize.d.ts","sourceRoot":"","sources":["../../src/fs/materialize.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAOvD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,GAAG,aAAa,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC;IACzB,gGAAgG;IAChG,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAyCD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,GAAG,gBAAgB,EAAE,CA+JlF"}
|
package/dist/fs/materialize.js
CHANGED
|
@@ -36,7 +36,7 @@ function copyRecursive(srcDir, destDir, collected, projectRoot, shouldSkip, base
|
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
export function materializeProject(options) {
|
|
39
|
-
const { packageRoot, projectRoot, overwriteCreateOnce = false } = options;
|
|
39
|
+
const { packageRoot, projectRoot, overwriteCreateOnce = false, backup = true } = options;
|
|
40
40
|
const selectedPlatforms = options.platforms ?? DEFAULT_PLATFORMS;
|
|
41
41
|
const timestamp = options.timestamp ?? new Date().toISOString();
|
|
42
42
|
const sourcesDir = path.resolve(packageRoot, "sources");
|
|
@@ -101,7 +101,7 @@ export function materializeProject(options) {
|
|
|
101
101
|
const knowledgeDest = path.resolve(projectRoot, ".ai-agents/knowledge");
|
|
102
102
|
copyRecursive(knowledgeSrc, knowledgeDest, materialized, projectRoot, (relPath) => relPath === "core/manifest.yaml");
|
|
103
103
|
const coreManifestDest = path.resolve(projectRoot, ".ai-agents/knowledge/core/manifest.yaml");
|
|
104
|
-
updateCoreManifest(projectRoot, packageRoot);
|
|
104
|
+
updateCoreManifest(projectRoot, packageRoot, backup);
|
|
105
105
|
materialized.push({
|
|
106
106
|
absPath: coreManifestDest,
|
|
107
107
|
relPath: ".ai-agents/knowledge/core/manifest.yaml",
|
|
@@ -113,7 +113,7 @@ export function materializeProject(options) {
|
|
|
113
113
|
// /mvt-manage-context must survive `mvtt update`. Treated as create_once
|
|
114
114
|
// (like core/manifest.yaml) so the modified-files guard does not flag it.
|
|
115
115
|
const registryDest = path.resolve(projectRoot, ".ai-agents/registry.yaml");
|
|
116
|
-
updateRegistry(projectRoot, packageRoot);
|
|
116
|
+
updateRegistry(projectRoot, packageRoot, backup);
|
|
117
117
|
materialized.push({
|
|
118
118
|
absPath: registryDest,
|
|
119
119
|
relPath: ".ai-agents/registry.yaml",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"materialize.js","sourceRoot":"","sources":["../../src/fs/materialize.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAG1C,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"materialize.js","sourceRoot":"","sources":["../../src/fs/materialize.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,8 +12,9 @@ export interface RegistryMergeResult {
|
|
|
12
12
|
*
|
|
13
13
|
* On a fresh install (no existing user registry) the framework file is copied
|
|
14
14
|
* verbatim so its documentation comments survive. When a user registry already
|
|
15
|
-
* exists it is
|
|
16
|
-
*
|
|
15
|
+
* exists it is rewritten with the merged result; when `createBackup` is true
|
|
16
|
+
* (the default) the previous user registry is first backed up to
|
|
17
|
+
* `.ai-agents/.backup/`.
|
|
17
18
|
*/
|
|
18
|
-
export declare function updateRegistry(projectRoot: string, packageRoot: string): RegistryMergeResult;
|
|
19
|
+
export declare function updateRegistry(projectRoot: string, packageRoot: string, createBackup?: boolean): RegistryMergeResult;
|
|
19
20
|
//# sourceMappingURL=registry-merge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry-merge.d.ts","sourceRoot":"","sources":["../../src/fs/registry-merge.ts"],"names":[],"mappings":"AA0BA,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAkMD
|
|
1
|
+
{"version":3,"file":"registry-merge.d.ts","sourceRoot":"","sources":["../../src/fs/registry-merge.ts"],"names":[],"mappings":"AA0BA,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAkMD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,YAAY,UAAO,GAClB,mBAAmB,CA2CrB"}
|
|
@@ -178,10 +178,11 @@ function mergeRegistry(framework, user) {
|
|
|
178
178
|
*
|
|
179
179
|
* On a fresh install (no existing user registry) the framework file is copied
|
|
180
180
|
* verbatim so its documentation comments survive. When a user registry already
|
|
181
|
-
* exists it is
|
|
182
|
-
*
|
|
181
|
+
* exists it is rewritten with the merged result; when `createBackup` is true
|
|
182
|
+
* (the default) the previous user registry is first backed up to
|
|
183
|
+
* `.ai-agents/.backup/`.
|
|
183
184
|
*/
|
|
184
|
-
export function updateRegistry(projectRoot, packageRoot) {
|
|
185
|
+
export function updateRegistry(projectRoot, packageRoot, createBackup = true) {
|
|
185
186
|
const frameworkPath = path.resolve(packageRoot, FRAMEWORK_REGISTRY_REL);
|
|
186
187
|
const userPath = path.resolve(projectRoot, USER_REGISTRY_REL);
|
|
187
188
|
const frameworkRaw = existsSync(frameworkPath) ? readFileSync(frameworkPath, "utf-8") : null;
|
|
@@ -201,7 +202,7 @@ export function updateRegistry(projectRoot, packageRoot) {
|
|
|
201
202
|
// produce byte-identical output (no verbatim-copy vs re-serialize drift).
|
|
202
203
|
const existingUser = readRegistry(userPath) ?? {};
|
|
203
204
|
let backup = null;
|
|
204
|
-
if (existsSync(userPath)) {
|
|
205
|
+
if (createBackup && existsSync(userPath)) {
|
|
205
206
|
backup = backupRegistry(projectRoot, userPath);
|
|
206
207
|
}
|
|
207
208
|
const { merged, result } = mergeRegistry(framework, existingUser);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry-merge.js","sourceRoot":"","sources":["../../src/fs/registry-merge.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"registry-merge.js","sourceRoot":"","sources":["../../src/fs/registry-merge.ts"],"names":[],"mappings":"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"}
|
|
@@ -7683,6 +7683,59 @@ function main() {
|
|
|
7683
7683
|
process.stderr.write(ERRORS.EPIC_WRITE_FAILED(e.message) + "\n");
|
|
7684
7684
|
process.exit(1);
|
|
7685
7685
|
}
|
|
7686
|
-
|
|
7686
|
+
let sessionSync = null;
|
|
7687
|
+
if (epic.status === "done") {
|
|
7688
|
+
sessionSync = syncSessionOnEpicClose(epic, epicPath, now);
|
|
7689
|
+
}
|
|
7690
|
+
process.stdout.write(
|
|
7691
|
+
JSON.stringify({ ok: true, ...result, session_sync: sessionSync }) + "\n"
|
|
7692
|
+
);
|
|
7693
|
+
}
|
|
7694
|
+
function syncSessionOnEpicClose(epic, epicPath, now) {
|
|
7695
|
+
const projectRoot = findProjectRootFromPath(epicPath);
|
|
7696
|
+
if (!projectRoot) {
|
|
7697
|
+
return { ok: false, reason: "no-project-root" };
|
|
7698
|
+
}
|
|
7699
|
+
const sessionPath = (0, import_node_path.join)(projectRoot, ".ai-agents", "workspace", "session.yaml");
|
|
7700
|
+
if (!(0, import_node_fs.existsSync)(sessionPath)) {
|
|
7701
|
+
return { ok: false, reason: "session-missing" };
|
|
7702
|
+
}
|
|
7703
|
+
let session;
|
|
7704
|
+
try {
|
|
7705
|
+
session = (0, import_yaml.parse)((0, import_node_fs.readFileSync)(sessionPath, "utf-8"));
|
|
7706
|
+
} catch (e) {
|
|
7707
|
+
return { ok: false, reason: "parse-failed", detail: e.message };
|
|
7708
|
+
}
|
|
7709
|
+
if (!session || typeof session !== "object") {
|
|
7710
|
+
return { ok: false, reason: "session-not-object" };
|
|
7711
|
+
}
|
|
7712
|
+
const epicId = epic.epic_id;
|
|
7713
|
+
if (session.active_epic?.id !== epicId) {
|
|
7714
|
+
return { ok: true, applied: false, reason: "active_epic-not-matching" };
|
|
7715
|
+
}
|
|
7716
|
+
session.epics = session.epics || [];
|
|
7717
|
+
const epicIdx = session.epics.findIndex((e) => e.id === epicId);
|
|
7718
|
+
if (epicIdx >= 0) {
|
|
7719
|
+
session.epics[epicIdx].status = "done";
|
|
7720
|
+
session.epics[epicIdx].updated_at = now;
|
|
7721
|
+
}
|
|
7722
|
+
session.active_epic = {
|
|
7723
|
+
id: "",
|
|
7724
|
+
title: "",
|
|
7725
|
+
created_at: "",
|
|
7726
|
+
epic_path: ""
|
|
7727
|
+
};
|
|
7728
|
+
const sessionTmp = sessionPath + ".tmp";
|
|
7729
|
+
try {
|
|
7730
|
+
(0, import_node_fs.writeFileSync)(sessionTmp, (0, import_yaml.stringify)(session, { lineWidth: 200 }), "utf-8");
|
|
7731
|
+
(0, import_node_fs.renameSync)(sessionTmp, sessionPath);
|
|
7732
|
+
} catch (e) {
|
|
7733
|
+
try {
|
|
7734
|
+
if ((0, import_node_fs.existsSync)(sessionTmp)) (0, import_node_fs.unlinkSync)(sessionTmp);
|
|
7735
|
+
} catch {
|
|
7736
|
+
}
|
|
7737
|
+
return { ok: false, reason: "write-failed", detail: e.message };
|
|
7738
|
+
}
|
|
7739
|
+
return { ok: true, applied: true, epic_id: epicId };
|
|
7687
7740
|
}
|
|
7688
7741
|
main();
|
|
@@ -7398,6 +7398,7 @@ function parseArgs(argv) {
|
|
|
7398
7398
|
return args2;
|
|
7399
7399
|
}
|
|
7400
7400
|
function validateArgs(args2) {
|
|
7401
|
+
if (args2.validate) return null;
|
|
7401
7402
|
if (!args2.plan || args2.plan === true) return ERRORS.MISSING_PLAN();
|
|
7402
7403
|
if (!args2.task || args2.task === true) return ERRORS.MISSING_TASK();
|
|
7403
7404
|
const hasStatus = args2.status && args2.status !== true;
|
|
@@ -7681,6 +7682,9 @@ function findCycleInSubgraph(tasks, taskIds) {
|
|
|
7681
7682
|
}
|
|
7682
7683
|
function main() {
|
|
7683
7684
|
const args2 = parseArgs(process.argv);
|
|
7685
|
+
if (args2.validate && args2.validate !== true && !args2.plan) {
|
|
7686
|
+
args2.plan = args2.validate;
|
|
7687
|
+
}
|
|
7684
7688
|
const argErr = validateArgs(args2);
|
|
7685
7689
|
if (argErr) {
|
|
7686
7690
|
process.stderr.write(argErr + "\n");
|
|
@@ -7701,20 +7705,30 @@ function main() {
|
|
|
7701
7705
|
process.stderr.write(ERRORS.PLAN_PARSE_FAILED("missing tasks[]") + "\n");
|
|
7702
7706
|
process.exit(1);
|
|
7703
7707
|
}
|
|
7704
|
-
if (!plan.tasks.some((t) => t.id === args2.task)) {
|
|
7705
|
-
process.stderr.write(
|
|
7706
|
-
ERRORS.TASK_NOT_FOUND(args2.task, plan.tasks.map((t) => t.id)) + "\n"
|
|
7707
|
-
);
|
|
7708
|
-
process.exit(1);
|
|
7709
|
-
}
|
|
7710
7708
|
let projectList = null;
|
|
7711
7709
|
if (args2.projects && args2.projects !== true) {
|
|
7712
7710
|
projectList = args2.projects.split(",").map((s) => s.trim()).filter(Boolean);
|
|
7713
7711
|
} else {
|
|
7714
7712
|
projectList = deriveProjectList(plan.tasks);
|
|
7715
7713
|
}
|
|
7714
|
+
if (args2.validate) {
|
|
7715
|
+
const validationErrors2 = validatePlan(plan, projectList);
|
|
7716
|
+
if (validationErrors2.length) {
|
|
7717
|
+
process.stderr.write(ERRORS.VALIDATION_FAILED(validationErrors2) + "\n");
|
|
7718
|
+
process.exit(1);
|
|
7719
|
+
}
|
|
7720
|
+
process.stdout.write(JSON.stringify({ ok: true, plan_status: plan.status, tasks: plan.tasks.length }) + "\n");
|
|
7721
|
+
return;
|
|
7722
|
+
}
|
|
7723
|
+
if (!plan.tasks.some((t) => t.id === args2.task)) {
|
|
7724
|
+
process.stderr.write(
|
|
7725
|
+
ERRORS.TASK_NOT_FOUND(args2.task, plan.tasks.map((t) => t.id)) + "\n"
|
|
7726
|
+
);
|
|
7727
|
+
process.exit(1);
|
|
7728
|
+
}
|
|
7716
7729
|
if (plan.current_task != null && (!plan.current_tasks || typeof plan.current_tasks !== "object")) {
|
|
7717
|
-
|
|
7730
|
+
const legacyProject = projectList.length === 1 ? projectList[0] : loadSoleProject(findProjectRootFromPath(args2.plan))?.[0] || "default";
|
|
7731
|
+
plan.current_tasks = { [legacyProject]: plan.current_task };
|
|
7718
7732
|
}
|
|
7719
7733
|
if ("current_task" in plan) {
|
|
7720
7734
|
delete plan.current_task;
|
|
@@ -17,6 +17,12 @@ node .ai-agents/scripts/plan-update.cjs \
|
|
|
17
17
|
[--mark-deliverable-stale <task_id>[,task_id2,...]]
|
|
18
18
|
```
|
|
19
19
|
|
|
20
|
+
Read-only validation mode:
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
node .ai-agents/scripts/plan-update.cjs --validate "<draft-plan-path>" [--projects "<comma,separated,project,names>"]
|
|
24
|
+
```
|
|
25
|
+
|
|
20
26
|
Include `--artifacts`, `--notes`, `--deliverables-pointer`, and `--mark-deliverable-stale` only when the skill's logic determines they apply; omit each flag otherwise.
|
|
21
27
|
|
|
22
28
|
## Argument values
|
|
@@ -31,6 +37,7 @@ Include `--artifacts`, `--notes`, `--deliverables-pointer`, and `--mark-delivera
|
|
|
31
37
|
| `--notes` | optional; overwrites the task's `notes` | `"blocked on API spec"` |
|
|
32
38
|
| `--deliverables-pointer` | optional; set to `current` to record that this task's deliverables section is written | `current` |
|
|
33
39
|
| `--mark-deliverable-stale` | optional; comma-separated downstream task ids whose deliverables are now stale | `"t3,t4"` |
|
|
40
|
+
| `--validate` | optional read-only validation target; accepts the plan path as its value | `".ai-agents/workspace/artifacts/chg-001/plan.yaml"` |
|
|
34
41
|
|
|
35
42
|
## Parameter semantics
|
|
36
43
|
|
|
@@ -41,6 +48,7 @@ Include `--artifacts`, `--notes`, `--deliverables-pointer`, and `--mark-delivera
|
|
|
41
48
|
| `--artifacts` | Task produced or touched files | Appends + de-duplicates paths into the task's `artifacts.files`; handles `artifacts: null`. |
|
|
42
49
|
| `--notes` | Task needs a free-form note | Overwrites the task's existing `notes`. |
|
|
43
50
|
| `--deliverables-pointer` + `--mark-deliverable-stale` | Task wrote its deliverables section (e.g. `/mvt-implement` Step 8) | Records the deliverables pointer on the task; marks the listed downstream tasks' deliverables as stale so `/mvt-resume` and `/mvt-status` surface a warning. Use both flags together in a single invocation. |
|
|
51
|
+
| `--validate` | `/mvt-plan-dev` has assembled a draft plan before final write | Parses and validates the plan, prints JSON on success, and never writes the file. |
|
|
44
52
|
|
|
45
53
|
## What the script does (deterministically)
|
|
46
54
|
|
|
@@ -57,3 +65,4 @@ Include `--artifacts`, `--notes`, `--deliverables-pointer`, and `--mark-delivera
|
|
|
57
65
|
```
|
|
58
66
|
Use these fields directly to render output. The file is already written — do NOT read it back to verify. If `warning` is non-null, surface it. If `project_switch` is non-null, note the project boundary crossing.
|
|
59
67
|
- **Exit 1**: failure. stderr carries the error (invalid status, task not found, validation failure, parse/write error). The file was **not** modified. Report the error to the user and do not fabricate a success summary.
|
|
68
|
+
- **Read-only validation**: exit 0 stdout is `{"ok":true,"plan_status":"...","tasks":N}`. Exit 1 stderr carries parse or validation errors; no file is modified.
|
|
@@ -7348,7 +7348,8 @@ var ERRORS = {
|
|
|
7348
7348
|
EPIC_ID_REQUIRED: () => "--new-epic requires --epic-id",
|
|
7349
7349
|
CLOSE_NEW_EPIC_CONFLICT: () => "--close-epic and --new-epic are mutually exclusive",
|
|
7350
7350
|
NO_ACTIVE_EPIC: (flag) => `${flag} requires an active epic (active_epic.id is empty)`,
|
|
7351
|
-
EPIC_ID_ORPHAN: () => "--epic-id (for sub-change) requires --new-change"
|
|
7351
|
+
EPIC_ID_ORPHAN: () => "--epic-id (for sub-change) requires --new-change",
|
|
7352
|
+
MISSING_REMOVE_VALUE: () => "--remove-change / --remove-epic requires a non-empty value"
|
|
7352
7353
|
};
|
|
7353
7354
|
var DEFAULT_LIMITS = {
|
|
7354
7355
|
history: 20,
|
|
@@ -7383,6 +7384,10 @@ function parseArgs(argv) {
|
|
|
7383
7384
|
}
|
|
7384
7385
|
return args;
|
|
7385
7386
|
}
|
|
7387
|
+
function parseIdList(value) {
|
|
7388
|
+
if (value == null) return [];
|
|
7389
|
+
return String(value).split(",").map((s) => s.trim()).filter(Boolean);
|
|
7390
|
+
}
|
|
7386
7391
|
function loadHistoryLimits(configPath) {
|
|
7387
7392
|
const limits = { ...DEFAULT_LIMITS };
|
|
7388
7393
|
if (!(0, import_node_fs.existsSync)(configPath)) return limits;
|
|
@@ -7413,6 +7418,12 @@ function validate(args) {
|
|
|
7413
7418
|
if (args["new-epic"] && !args["epic-id"]) return ERRORS.EPIC_ID_REQUIRED();
|
|
7414
7419
|
if (args["close-epic"] && args["new-epic"]) return ERRORS.CLOSE_NEW_EPIC_CONFLICT();
|
|
7415
7420
|
if (args["epic-id"] && !args["new-change"] && !args["new-epic"]) return ERRORS.EPIC_ID_ORPHAN();
|
|
7421
|
+
if (args["remove-change"] !== void 0 && (args["remove-change"] === true || !String(args["remove-change"]).trim())) {
|
|
7422
|
+
return ERRORS.MISSING_REMOVE_VALUE();
|
|
7423
|
+
}
|
|
7424
|
+
if (args["remove-epic"] !== void 0 && (args["remove-epic"] === true || !String(args["remove-epic"]).trim())) {
|
|
7425
|
+
return ERRORS.MISSING_REMOVE_VALUE();
|
|
7426
|
+
}
|
|
7416
7427
|
return null;
|
|
7417
7428
|
}
|
|
7418
7429
|
function main() {
|
|
@@ -7648,6 +7659,38 @@ function main() {
|
|
|
7648
7659
|
epic_path: ""
|
|
7649
7660
|
};
|
|
7650
7661
|
}
|
|
7662
|
+
if (args["remove-change"] !== void 0) {
|
|
7663
|
+
session.changes = session.changes || [];
|
|
7664
|
+
const rawIds = args["remove-change"];
|
|
7665
|
+
let removed = 0;
|
|
7666
|
+
for (const id of parseIdList(rawIds)) {
|
|
7667
|
+
const before = session.changes.length;
|
|
7668
|
+
session.changes = session.changes.filter((e) => e.id !== id);
|
|
7669
|
+
if (session.changes.length < before) removed++;
|
|
7670
|
+
}
|
|
7671
|
+
if (removed === 0) {
|
|
7672
|
+
process.stderr.write(
|
|
7673
|
+
`Warning: --remove-change requested ids [${rawIds}] not found; no entries removed.
|
|
7674
|
+
`
|
|
7675
|
+
);
|
|
7676
|
+
}
|
|
7677
|
+
}
|
|
7678
|
+
if (args["remove-epic"] !== void 0) {
|
|
7679
|
+
session.epics = session.epics || [];
|
|
7680
|
+
const rawIds = args["remove-epic"];
|
|
7681
|
+
let removed = 0;
|
|
7682
|
+
for (const id of parseIdList(rawIds)) {
|
|
7683
|
+
const before = session.epics.length;
|
|
7684
|
+
session.epics = session.epics.filter((e) => e.id !== id);
|
|
7685
|
+
if (session.epics.length < before) removed++;
|
|
7686
|
+
}
|
|
7687
|
+
if (removed === 0) {
|
|
7688
|
+
process.stderr.write(
|
|
7689
|
+
`Warning: --remove-epic requested ids [${rawIds}] not found; no entries removed.
|
|
7690
|
+
`
|
|
7691
|
+
);
|
|
7692
|
+
}
|
|
7693
|
+
}
|
|
7651
7694
|
const tmpPath = sessionPath + ".tmp";
|
|
7652
7695
|
try {
|
|
7653
7696
|
(0, import_node_fs.writeFileSync)(tmpPath, (0, import_yaml.stringify)(session, { lineWidth: 200 }), "utf-8");
|