@warpgogol/forge 5.3.1 → 5.3.3

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.
@@ -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;AAmC7D,eAAO,MAAM,kBAAkB,EAAE,WAoPhC,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
- <history>RFC-0374</history>
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":"AAAA;;;;;;;;;;;;;;;;;EAiBE;AAIF,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AACpG,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAE1E,MAAM,gBAAgB,GAAG;IACvB,QAAQ,EAAE;QACR,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,wEAAwE;KACtF;IACD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,0DAA0D;KACxE;IACD,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,WAAW,EACT,+FAA+F;KAClG;CACsC,CAAC;AAE1C,iFAAiF;AACjF,MAAM,eAAe,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,mFAAmF;CACzE,CAAC;AAE1B,MAAM,CAAC,MAAM,kBAAkB,GAAgB;IAC7C,IAAI,EAAE,eAAe;IACrB,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,YAAY;IACrB,YAAY,EAAE,EAAE;IAChB,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,mBAAmB;YACzB,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,mEAAmE;YAChF,KAAK,EAAE,WAAW;YAClB,gBAAgB,EAAE,IAAI;YACtB,KAAK,EAAE,EAAE,GAAG,gBAAgB,EAAE;YAC9B,KAAK,EAAE;gBACL,4DAA4D;gBAC5D,wDAAwD;gBACxD,4DAA4D;aAC7D;YACD,OAAO,EAAE,mBAAmB;SAC7B;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,YAAY,EAAE,KAAK;YACnB,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,EAAE;YACT,WAAW,EACT,kFAAkF;YACpF,KAAK,EAAE,WAAW;YAClB,gBAAgB,EAAE,IAAI;YACtB,KAAK,EAAE,EAAE,GAAG,gBAAgB,EAAE,IAAI,EAAE,eAAe,EAAE;YACrD,KAAK,EAAE;gBACL,4DAA4D;gBAC5D,wDAAwD;gBACxD,4DAA4D;gBAC5D,wBAAwB;aACzB;YACD,OAAO,EAAE,oBAAoB;SAC9B;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,WAAW,EACT,oOAAoO;YACtO,KAAK,EAAE,WAAW;YAClB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE;gBACN,wDAAwD;gBACxD,4DAA4D;gBAC5D,sDAAsD;aACvD;YACD,SAAS,EAAE,EAAE;YACb,KAAK,EAAE;gBACL,4DAA4D;gBAC5D,wDAAwD;gBACxD,4DAA4D;aAC7D;YACD,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE;gBACL,GAAG,gBAAgB;gBACnB,EAAE,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,oDAAoD;iBAClE;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,UAAU;oBAChB,WAAW,EACT,+HAA+H;iBAClI;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,sGAAsG;iBACzG;aACF;YACD,OAAO,EAAE,uBAAuB;SACjC;QACD;YACE,IAAI,EAAE,sBAAsB;YAC5B,WAAW,EACT,qJAAqJ;YACvJ,KAAK,EAAE,WAAW;YAClB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE;gBACN,wDAAwD;gBACxD,4DAA4D;gBAC5D,sDAAsD;aACvD;YACD,SAAS,EAAE,EAAE;YACb,KAAK,EAAE;gBACL,4DAA4D;gBAC5D,wDAAwD;gBACxD,4DAA4D;aAC7D;YACD,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE;gBACL,GAAG,gBAAgB;gBACnB,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uEAAuE;iBACrF;aACF;YACD,OAAO,EAAE,qBAAqB;SAC/B;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,WAAW,EACT,2PAA2P;YAC7P,KAAK,EAAE,WAAW;YAClB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE;gBACN,wDAAwD;gBACxD,4DAA4D;gBAC5D,sDAAsD;aACvD;YACD,SAAS,EAAE,EAAE;YACb,KAAK,EAAE;gBACL,4DAA4D;gBAC5D,wDAAwD;gBACxD,4DAA4D;aAC7D;YACD,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE;gBACL,GAAG,gBAAgB;gBACnB,KAAK,EAAE;oBACL,IAAI,EAAE,UAAU;oBAChB,WAAW,EAAE,2EAA2E;iBACzF;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,qDAAqD;iBACnE;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,kCAAkC;iBAChD;aACF;YACD,OAAO,EAAE,iBAAiB;SAC3B;QACD;YACE,IAAI,EAAE,oBAAoB;YAC1B,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,IAAI;YACpB,WAAW,EACT,uJAAuJ;YACzJ,KAAK,EAAE,WAAW;YAClB,gBAAgB,EAAE,IAAI;YACtB,KAAK,EAAE;gBACL,GAAG,gBAAgB;gBACnB,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oDAAoD;iBAClE;aACF;YACD,KAAK,EAAE;gBACL,4DAA4D;gBAC5D,wDAAwD;gBACxD,4DAA4D;gBAC5D,0CAA0C;aAC3C;YACD,OAAO,EAAE,mBAAmB;SAC7B;QACD;YACE,IAAI,EAAE,sBAAsB;YAC5B,UAAU,EAAE,6CAA6C;YACzD,WAAW,EACT,8IAA8I;YAChJ,KAAK,EAAE,WAAW;YAClB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,CAAC,0CAA0C,CAAC;YACpD,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,0CAA0C,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YACrF,KAAK,EAAE,CAAC,0CAA0C,CAAC;YACnD,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE;gBACL,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,8BAA8B,EAAE;gBACrF,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,6CAA6C;iBAC3D;gBACD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE;aAClF;YACD,OAAO,EAAE,qBAAqB;SAC/B;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,UAAU,EAAE,6CAA6C;YACzD,WAAW,EACT,qIAAqI;YACvI,KAAK,EAAE,WAAW;YAClB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,CAAC,0CAA0C,CAAC;YACpD,yEAAyE;YACzE,6EAA6E;YAC7E,SAAS,EAAE,EAAE;YACb,KAAK,EAAE;gBACL,4DAA4D;gBAC5D,wDAAwD;gBACxD,4DAA4D;aAC7D;YACD,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,EAAE,GAAG,gBAAgB,EAAE;YAC9B,OAAO,EAAE,uBAAuB;SACjC;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,IAAI;YACpB,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,EAAE;YACT,WAAW,EACT,+HAA+H;YACjI,KAAK,EAAE,WAAW;YAClB,gBAAgB,EAAE,IAAI;YACtB,KAAK,EAAE;gBACL,GAAG,gBAAgB;gBACnB,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,mDAAmD;iBACjE;aACF;YACD,KAAK,EAAE;gBACL,4DAA4D;gBAC5D,wDAAwD;gBACxD,4DAA4D;gBAC5D,0CAA0C;aAC3C;YACD,OAAO,EAAE,uBAAuB;YAChC,IAAI,EAAE;gBACJ,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE;oBACX,IAAI,EAAE,MAAM;oBACZ,GAAG,EAAE,UAAU;oBACf,WAAW,EAAE,uCAAuC;iBACrD;aACF;SACF;KACF;IACD,SAAS,EAAE,EAAE;CACd,CAAC"}
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,EACV,UAAU,EACV,sBAAsB,EACtB,aAAa,EACb,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB;;;;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,CAgDA;AAqGD;;;;;;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"}
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"}
@@ -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 [flagName, inlineValue] = withoutPrefix.split("=", 2);
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 [flagName, inlineValue] = withoutPrefix.split("=", 2);
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":"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"}
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
- <history>RFC-0374</history>
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@warpgogol/forge",
3
- "version": "5.3.1",
3
+ "version": "5.3.3",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -34,7 +34,7 @@ See `_shared/fo-pipeline-conventions.md` §Language policy.
34
34
 
35
35
  A multi-persona design review for complex RFCs. The summit simulates five professional perspectives — Architect, Security Engineer, QA Engineer, Product Manager, and Developer Advocate — to surface issues that a single-perspective review misses. Each persona reviews the RFC from its professional lens and raises concerns. The operator sees all perspectives and makes the final decision.
36
36
 
37
- The summit is **optional** — invoked manually by the operator or suggested by `fo-idea-plan` for RFCs that meet complexity criteria. It is not part of the default pipeline.
37
+ The summit is **optional** — invoked manually by the operator or auto-invoked by `fo-idea-plan` (step 5b) when the planning agent judges multi-perspective review genuinely useful. It is not part of the default pipeline.
38
38
 
39
39
  The summit is `concern: document-only` — it writes a summit report to `docs/summits/` and does not modify the RFC or any source code.
40
40
 
@@ -229,7 +229,7 @@ Do not modify the RFC or any other file. Do not run `/fo-idea-enhance` or `/fo-i
229
229
 
230
230
  ## Invocation criteria
231
231
 
232
- `fo-design-summit` is invoked explicitly by the operator or suggested by `fo-idea-plan` when the RFC meets **any** of these criteria:
232
+ `fo-design-summit` is invoked explicitly by the operator or auto-invoked by `fo-idea-plan` (step 5b). The criteria below are eligibility gates, not triggers — `fo-idea-plan` runs the summit only when it also judges multi-perspective review genuinely useful, without asking the operator:
233
233
 
234
234
  - `kind: architecture` AND `scope: workspace`
235
235
  - `satisfies[]` includes 2+ DNA invariants
@@ -241,7 +241,7 @@ Do not modify the RFC or any other file. Do not run `/fo-idea-enhance` or `/fo-i
241
241
 
242
242
  - **RFC not found:** The skill errors if the target RFC does not exist.
243
243
  - **Audit not run yet:** The skill proceeds without the audit report — persona findings may overlap with future audit findings. The skill notes this in the report.
244
- - **RFC is too small for a summit:** If the RFC body is less than 500 words, the skill warns that a summit may be overkill and proceeds only if the operator confirms.
244
+ - **RFC is too small for a summit:** If the RFC body is less than 500 words, the skill warns that a summit may be overkill. When invoked explicitly by the operator, it proceeds only on operator confirmation. When auto-invoked by `fo-idea-plan`, it stops without running — the caller proceeds to its next step.
245
245
  - **Persona findings overlap:** Multiple personas may raise the same concern. The synthesis step deduplicates and marks consensus findings.
246
246
 
247
247
  ## Constraints
@@ -182,15 +182,26 @@ The grilling checks:
182
182
 
183
183
  Address every concern the grilling raises by revising the draft. Do not persist until the grilling is satisfied.
184
184
 
185
- ### 5b. Summit suggestion
185
+ ### 5b. Summit decision (autonomous)
186
186
 
187
- If the RFC meets summit criteria (any of: `kind: architecture` AND `scope: workspace`, `satisfies[]` includes 2+ DNA invariants, introduces a new package/command/lifecycle, supersedes an implemented RFC), suggest using `fo-design-summit` before acceptance. Use `ask_user_question`:
187
+ Decide yourself whether to run `fo-design-summit` before persisting the plan. **Do not ask the operator** — the planning agent holds the full context and is best placed to judge. The operator can always request a summit explicitly.
188
188
 
189
- > "This RFC is complex (architecture, workspace scope, 2+ DNA invariants). Should I run a multi-persona design summit before acceptance?"
189
+ Eligibility — the RFC meets **any** of:
190
190
 
191
- Recommended option: "Run summit" — because complex RFCs benefit from multi-perspective review.
191
+ - `kind: architecture` AND `scope: workspace`
192
+ - `satisfies[]` includes 2+ DNA invariants
193
+ - Introduces a new package, command family, or lifecycle
194
+ - Supersedes an implemented RFC
192
195
 
193
- If the operator declines, proceed to step 6. If the operator accepts, invoke `fo-design-summit` via the `skill` tool, wait for it to complete, then proceed to step 6.
196
+ Eligibility alone is not sufficient — most RFCs meet at least one criterion mechanically. Run the summit only when multi-perspective review is likely to surface findings that the audit, enhance, and grilling steps did not:
197
+
198
+ - The design holds genuinely contested trade-offs or more than one viable architecture.
199
+ - There is cross-cutting risk a single-perspective pass misses (security or privacy surface, migration of already-implemented behavior, multi-workspace blast radius).
200
+ - Step 3 or the grilling left material questions unresolved.
201
+
202
+ Skip the summit when the change is additive, follows an established pattern, or the plan converged cleanly — meeting a criterion only technically (e.g. listing 2 DNA invariants on a routine change) is a skip. When in doubt, skip: a missed summit is recoverable, operator attention is not.
203
+
204
+ If you run it, announce in one line (`Running design summit — <reason>`), invoke `fo-design-summit` via the `skill` tool, wait for it to complete, then proceed to step 6. If you skip, emit one line (`Design summit skipped — <reason>`) and proceed directly to step 6.
194
205
 
195
206
  ### 6. Persist the plan
196
207
 
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 [flagName, inlineValue] = withoutPrefix.split("=", 2);
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 [flagName, inlineValue] = withoutPrefix.split("=", 2);
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"]);