@warpgogol/forge 5.3.1 → 5.3.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/dist/os/compass/compass.module.d.ts.map +1 -1
- package/dist/os/compass/compass.module.js +6 -2
- package/dist/os/compass/compass.module.js.map +1 -1
- package/dist/src/cli-flags.d.ts.map +1 -1
- package/dist/src/cli-flags.js +7 -3
- package/dist/src/cli-flags.js.map +1 -1
- package/os/compass/compass.module.ts +7 -2
- package/package.json +1 -1
- package/src/cli-flags.ts +8 -9
- package/src/tests/cli-flags.test.ts +6 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compass.module.d.ts","sourceRoot":"","sources":["../../../os/compass/compass.module.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"compass.module.d.ts","sourceRoot":"","sources":["../../../os/compass/compass.module.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAwC7D,eAAO,MAAM,kBAAkB,EAAE,WAoPhC,CAAC"}
|
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
</non-goals>
|
|
7
7
|
</MODULE_CONTRACT>
|
|
8
8
|
<CHANGE_SUMMARY>
|
|
9
|
-
<item>RFC-0538: renamed compass.changesummary.tidy to compass.summary.trim, removed compass.annotate, compass.clear, compass.markup.migrate, compass.invariant.add.</item>
|
|
10
9
|
<item>RFC-0556: removed dynamic import of @warpgogol/site-kernel-checks, all handlers now inlined in forge/os/compass/handlers/.</item>
|
|
11
10
|
<item>RFC-1095: compass.summary.record, trim repair rewrite, commit integration</item>
|
|
12
11
|
<item>RFC-1097: steps 1-4 — compass.migrate codemod
|
|
13
12
|
|
|
14
13
|
Add the v1 to v2 Compass header codemod: migrateFile pure transform (collapse, strip, seed, reorder, purpose-flag actions), migrateWorkspace walker, runCompassMigrate handler with dirty-tree refusal and --force/--files/--dry-run flags, module registration, and 15 unit tests.</item>
|
|
15
14
|
<item>RFC-1173: declare mutatesState on all kernel commands — collectDeclarationDiagnostics emits error-severity MUTATES-STATE-DECLARED, command.manifest.validate is the blocking consumer in packages.check, sweep declares the flag on every command definition (factories hardcode false for read-only check specs)</item>
|
|
16
|
-
<
|
|
15
|
+
<item>Declare compass --root as kind "string[]" — resolveScanRoots reads it as multi-value via getFlagValues, so repeated --root stays legal now that repeated kind-"string" flags are rejected at flag resolution.</item>
|
|
16
|
+
<history>RFC-0374, RFC-0538</history>
|
|
17
17
|
</CHANGE_SUMMARY>
|
|
18
18
|
*/
|
|
19
19
|
import { runCompassInventory, runCompassValidation } from "./handlers/compass-inventory-handler.js";
|
|
@@ -34,6 +34,10 @@ const compassScanFlags = {
|
|
|
34
34
|
kind: "string",
|
|
35
35
|
description: "Scan a mission workpiece directory (RFC-0617). Mutually exclusive with --packages and --site.",
|
|
36
36
|
},
|
|
37
|
+
root: {
|
|
38
|
+
kind: "string[]",
|
|
39
|
+
description: "Scan root directory (repeatable — overrides the universal --root workspace override on scan commands).",
|
|
40
|
+
},
|
|
37
41
|
};
|
|
38
42
|
// RFC-1094: --mode governs v2 rule severity on the two validating commands only.
|
|
39
43
|
const compassModeFlag = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compass.module.js","sourceRoot":"","sources":["../../../os/compass/compass.module.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"compass.module.js","sourceRoot":"","sources":["../../../os/compass/compass.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-flags.d.ts","sourceRoot":"","sources":["../../src/cli-flags.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"cli-flags.d.ts","sourceRoot":"","sources":["../../src/cli-flags.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEpG;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAU7D,CAAC;AAyEF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IAC5C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtC,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B,CAkDA;AAuGD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,sBAAsB,GAC9B;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAAC,WAAW,EAAE,UAAU,EAAE,CAAA;CAAE,CAKtE"}
|
package/dist/src/cli-flags.js
CHANGED
|
@@ -11,7 +11,7 @@ with `TypeError: targetId.toLowerCase is not a function`.</purpose>
|
|
|
11
11
|
</non-goals>
|
|
12
12
|
</MODULE_CONTRACT>
|
|
13
13
|
<CHANGE_SUMMARY>
|
|
14
|
-
<item>Standalone port of kernel argv resolution for the forge CLI: strict KERNEL-FLAG-01/02/03 + KERNEL-ARG-01 diagnostics for schema-carrying commands, legacy heuristic parse (with KERNEL-ARG-01) for schema-less commands; repeated single-value string flags diagnose instead of silently promoting to an array that crashes handlers.</item>
|
|
14
|
+
<item>Standalone port of kernel argv resolution for the forge CLI (RFC-0260 lineage): strict KERNEL-FLAG-01/02/03 + KERNEL-ARG-01 diagnostics for schema-carrying commands, legacy heuristic parse (with KERNEL-ARG-01) for schema-less commands; repeated single-value string flags diagnose instead of silently promoting to an array that crashes handlers; indexOf-based inline-value split preserves values containing "=" that split("=", 2) silently truncated.</item>
|
|
15
15
|
</CHANGE_SUMMARY>
|
|
16
16
|
*/
|
|
17
17
|
/**
|
|
@@ -113,7 +113,9 @@ export function parseCliArgs(argv) {
|
|
|
113
113
|
continue;
|
|
114
114
|
}
|
|
115
115
|
const withoutPrefix = entry.slice(2);
|
|
116
|
-
const
|
|
116
|
+
const eqIndex = withoutPrefix.indexOf("=");
|
|
117
|
+
const flagName = eqIndex === -1 ? withoutPrefix : withoutPrefix.slice(0, eqIndex);
|
|
118
|
+
const inlineValue = eqIndex === -1 ? undefined : withoutPrefix.slice(eqIndex + 1);
|
|
117
119
|
if (!flagName)
|
|
118
120
|
continue;
|
|
119
121
|
if (inlineValue !== undefined) {
|
|
@@ -158,7 +160,9 @@ function resolveStrict(rawArgv, command) {
|
|
|
158
160
|
continue;
|
|
159
161
|
}
|
|
160
162
|
const withoutPrefix = entry.slice(2);
|
|
161
|
-
const
|
|
163
|
+
const eqIndex = withoutPrefix.indexOf("=");
|
|
164
|
+
const flagName = eqIndex === -1 ? withoutPrefix : withoutPrefix.slice(0, eqIndex);
|
|
165
|
+
const inlineValue = eqIndex === -1 ? undefined : withoutPrefix.slice(eqIndex + 1);
|
|
162
166
|
if (!flagName)
|
|
163
167
|
continue;
|
|
164
168
|
const spec = schema[flagName];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-flags.js","sourceRoot":"","sources":["../../src/cli-flags.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;EAeE;
|
|
1
|
+
{"version":3,"file":"cli-flags.js","sourceRoot":"","sources":["../../src/cli-flags.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
</non-goals>
|
|
7
7
|
</MODULE_CONTRACT>
|
|
8
8
|
<CHANGE_SUMMARY>
|
|
9
|
-
<item>RFC-0538: renamed compass.changesummary.tidy to compass.summary.trim, removed compass.annotate, compass.clear, compass.markup.migrate, compass.invariant.add.</item>
|
|
10
9
|
<item>RFC-0556: removed dynamic import of @warpgogol/site-kernel-checks, all handlers now inlined in forge/os/compass/handlers/.</item>
|
|
11
10
|
<item>RFC-1095: compass.summary.record, trim repair rewrite, commit integration</item>
|
|
12
11
|
<item>RFC-1097: steps 1-4 — compass.migrate codemod
|
|
13
12
|
|
|
14
13
|
Add the v1 to v2 Compass header codemod: migrateFile pure transform (collapse, strip, seed, reorder, purpose-flag actions), migrateWorkspace walker, runCompassMigrate handler with dirty-tree refusal and --force/--files/--dry-run flags, module registration, and 15 unit tests.</item>
|
|
15
14
|
<item>RFC-1173: declare mutatesState on all kernel commands — collectDeclarationDiagnostics emits error-severity MUTATES-STATE-DECLARED, command.manifest.validate is the blocking consumer in packages.check, sweep declares the flag on every command definition (factories hardcode false for read-only check specs)</item>
|
|
16
|
-
<
|
|
15
|
+
<item>Declare compass --root as kind "string[]" — resolveScanRoots reads it as multi-value via getFlagValues, so repeated --root stays legal now that repeated kind-"string" flags are rejected at flag resolution.</item>
|
|
16
|
+
<history>RFC-0374, RFC-0538</history>
|
|
17
17
|
</CHANGE_SUMMARY>
|
|
18
18
|
*/
|
|
19
19
|
|
|
@@ -44,6 +44,11 @@ const compassScanFlags = {
|
|
|
44
44
|
description:
|
|
45
45
|
"Scan a mission workpiece directory (RFC-0617). Mutually exclusive with --packages and --site.",
|
|
46
46
|
},
|
|
47
|
+
root: {
|
|
48
|
+
kind: "string[]",
|
|
49
|
+
description:
|
|
50
|
+
"Scan root directory (repeatable — overrides the universal --root workspace override on scan commands).",
|
|
51
|
+
},
|
|
47
52
|
} satisfies Record<string, ForgeFlagSpec>;
|
|
48
53
|
|
|
49
54
|
// RFC-1094: --mode governs v2 rule severity on the two validating commands only.
|
package/package.json
CHANGED
package/src/cli-flags.ts
CHANGED
|
@@ -11,16 +11,11 @@ with `TypeError: targetId.toLowerCase is not a function`.</purpose>
|
|
|
11
11
|
</non-goals>
|
|
12
12
|
</MODULE_CONTRACT>
|
|
13
13
|
<CHANGE_SUMMARY>
|
|
14
|
-
<item>Standalone port of kernel argv resolution for the forge CLI: strict KERNEL-FLAG-01/02/03 + KERNEL-ARG-01 diagnostics for schema-carrying commands, legacy heuristic parse (with KERNEL-ARG-01) for schema-less commands; repeated single-value string flags diagnose instead of silently promoting to an array that crashes handlers.</item>
|
|
14
|
+
<item>Standalone port of kernel argv resolution for the forge CLI (RFC-0260 lineage): strict KERNEL-FLAG-01/02/03 + KERNEL-ARG-01 diagnostics for schema-carrying commands, legacy heuristic parse (with KERNEL-ARG-01) for schema-less commands; repeated single-value string flags diagnose instead of silently promoting to an array that crashes handlers; indexOf-based inline-value split preserves values containing "=" that split("=", 2) silently truncated.</item>
|
|
15
15
|
</CHANGE_SUMMARY>
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
-
import type {
|
|
19
|
-
Diagnostic,
|
|
20
|
-
ForgeCommandDefinition,
|
|
21
|
-
ForgeFlagSpec,
|
|
22
|
-
ForgeFlagValue,
|
|
23
|
-
} from "./types.ts";
|
|
18
|
+
import type { Diagnostic, ForgeCommandDefinition, ForgeFlagSpec, ForgeFlagValue } from "./types.ts";
|
|
24
19
|
|
|
25
20
|
/**
|
|
26
21
|
* Flags every CLI command accepts regardless of its own declared schema —
|
|
@@ -142,7 +137,9 @@ export function parseCliArgs(argv: string[]): {
|
|
|
142
137
|
}
|
|
143
138
|
|
|
144
139
|
const withoutPrefix = entry.slice(2);
|
|
145
|
-
const
|
|
140
|
+
const eqIndex = withoutPrefix.indexOf("=");
|
|
141
|
+
const flagName = eqIndex === -1 ? withoutPrefix : withoutPrefix.slice(0, eqIndex);
|
|
142
|
+
const inlineValue = eqIndex === -1 ? undefined : withoutPrefix.slice(eqIndex + 1);
|
|
146
143
|
if (!flagName) continue;
|
|
147
144
|
|
|
148
145
|
if (inlineValue !== undefined) {
|
|
@@ -200,7 +197,9 @@ function resolveStrict(
|
|
|
200
197
|
}
|
|
201
198
|
|
|
202
199
|
const withoutPrefix = entry.slice(2);
|
|
203
|
-
const
|
|
200
|
+
const eqIndex = withoutPrefix.indexOf("=");
|
|
201
|
+
const flagName = eqIndex === -1 ? withoutPrefix : withoutPrefix.slice(0, eqIndex);
|
|
202
|
+
const inlineValue = eqIndex === -1 ? undefined : withoutPrefix.slice(eqIndex + 1);
|
|
204
203
|
if (!flagName) continue;
|
|
205
204
|
|
|
206
205
|
const spec = schema[flagName];
|
|
@@ -57,6 +57,12 @@ describe("resolveCliFlags — strict (schema-carrying) path", () => {
|
|
|
57
57
|
}
|
|
58
58
|
});
|
|
59
59
|
|
|
60
|
+
test("inline value containing = is preserved verbatim", () => {
|
|
61
|
+
const { flags, diagnostics } = resolveCliFlags(["--id=RFC=0609"], rfcValidate);
|
|
62
|
+
expect(flags["id"]).toBe("RFC=0609");
|
|
63
|
+
expect(errorRuleIds(diagnostics)).toEqual([]);
|
|
64
|
+
});
|
|
65
|
+
|
|
60
66
|
test("repeated single-value string flag errors instead of promoting to an array", () => {
|
|
61
67
|
const { flags, diagnostics } = resolveCliFlags(["--id", "RFC-1", "--id", "RFC-2"], rfcValidate);
|
|
62
68
|
expect(errorRuleIds(diagnostics)).toEqual(["KERNEL-FLAG-02"]);
|