@context-forge/core 0.9.1 → 0.10.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.
Files changed (39) hide show
  1. package/dist/config/ConfigKeys.d.ts +6 -0
  2. package/dist/config/ConfigKeys.d.ts.map +1 -1
  3. package/dist/config/ConfigKeys.js +18 -0
  4. package/dist/config/ConfigKeys.js.map +1 -1
  5. package/dist/config/ConfigManager.d.ts +31 -1
  6. package/dist/config/ConfigManager.d.ts.map +1 -1
  7. package/dist/config/ConfigManager.js +118 -6
  8. package/dist/config/ConfigManager.js.map +1 -1
  9. package/dist/config/configPaths.d.ts +2 -0
  10. package/dist/config/configPaths.d.ts.map +1 -1
  11. package/dist/config/configPaths.js +4 -0
  12. package/dist/config/configPaths.js.map +1 -1
  13. package/dist/config/index.d.ts +2 -2
  14. package/dist/config/index.d.ts.map +1 -1
  15. package/dist/config/index.js +2 -2
  16. package/dist/config/index.js.map +1 -1
  17. package/dist/guides/GuideManager.d.ts +3 -1
  18. package/dist/guides/GuideManager.d.ts.map +1 -1
  19. package/dist/guides/GuideManager.js +9 -1
  20. package/dist/guides/GuideManager.js.map +1 -1
  21. package/dist/guides/branchGuard.d.ts +39 -0
  22. package/dist/guides/branchGuard.d.ts.map +1 -0
  23. package/dist/guides/branchGuard.js +91 -0
  24. package/dist/guides/branchGuard.js.map +1 -0
  25. package/dist/guides/index.d.ts +1 -0
  26. package/dist/guides/index.d.ts.map +1 -1
  27. package/dist/guides/index.js +1 -0
  28. package/dist/guides/index.js.map +1 -1
  29. package/dist/introspection/ConsistencyChecker.d.ts +9 -0
  30. package/dist/introspection/ConsistencyChecker.d.ts.map +1 -1
  31. package/dist/introspection/ConsistencyChecker.js +35 -0
  32. package/dist/introspection/ConsistencyChecker.js.map +1 -1
  33. package/dist/introspection/WorkflowNavigator.d.ts +16 -1
  34. package/dist/introspection/WorkflowNavigator.d.ts.map +1 -1
  35. package/dist/introspection/WorkflowNavigator.js +51 -16
  36. package/dist/introspection/WorkflowNavigator.js.map +1 -1
  37. package/dist/introspection/types.d.ts +14 -1
  38. package/dist/introspection/types.d.ts.map +1 -1
  39. package/package.json +1 -1
@@ -0,0 +1,91 @@
1
+ // Branch guard: decides whether a guide-update commit is safe to make on the current branch.
2
+ import { execFile } from 'child_process';
3
+ import { gitExec } from './gitExec.js';
4
+ /**
5
+ * Checks whether `trunk` is an ancestor of HEAD via `git merge-base --is-ancestor`,
6
+ * whose exit code is its actual return value (0 = true, 1 = false, >1 = error) rather
7
+ * than a uniform success/failure signal — so this bypasses gitExec's throw-on-nonzero
8
+ * contract with a standalone execFile call instead of changing that contract for every
9
+ * other caller.
10
+ */
11
+ export function isAncestor(trunk, cwd) {
12
+ const args = ['merge-base', '--is-ancestor', trunk, 'HEAD'];
13
+ return new Promise((resolve, reject) => {
14
+ execFile('git', args, { cwd }, (error, _stdout, stderr) => {
15
+ if (!error) {
16
+ resolve(true);
17
+ return;
18
+ }
19
+ if (typeof error.code === 'number' && error.code === 1) {
20
+ resolve(false);
21
+ return;
22
+ }
23
+ reject(new Error(`git ${args.join(' ')} failed in ${cwd}: ${stderr.trim() || error.message}`));
24
+ });
25
+ });
26
+ }
27
+ export class BranchGuardBlockedError extends Error {
28
+ trunk;
29
+ current;
30
+ constructor(trunk, current) {
31
+ const message = current === 'HEAD'
32
+ ? `Cannot update guide: currently in a detached HEAD state, not on any branch. Check out a branch before updating.`
33
+ : `Cannot update guide: currently on "${current}", but the configured integration branch is "${trunk}". Switch to "${trunk}" before updating, or unset git.integration_branch if that is not what you intended.`;
34
+ super(message);
35
+ this.name = 'BranchGuardBlockedError';
36
+ this.trunk = trunk;
37
+ this.current = current;
38
+ }
39
+ }
40
+ export class BranchGuardWarnError extends Error {
41
+ trunk;
42
+ current;
43
+ ancestry;
44
+ constructor(trunk, current, ancestry) {
45
+ const message = ancestry === 'descends'
46
+ ? `You are on "${current}", which descends from the integration branch "${trunk}". Guide update will commit on "${current}". Continue?`
47
+ : `You are on "${current}", which has no resolvable common ancestry with the integration branch "${trunk}". Guide update will commit on "${current}". Continue?`;
48
+ super(message);
49
+ this.name = 'BranchGuardWarnError';
50
+ this.trunk = trunk;
51
+ this.current = current;
52
+ this.ancestry = ancestry;
53
+ }
54
+ }
55
+ /**
56
+ * Resolves the configured trunk branch and the current branch, then applies the
57
+ * guard decision table to determine whether a guide-update commit should proceed,
58
+ * block, or require confirmation.
59
+ */
60
+ export async function evaluateBranchGuard(projectPath, configManager) {
61
+ let trunk = 'main';
62
+ if (configManager) {
63
+ try {
64
+ const result = await configManager.get('git.integration_branch');
65
+ if (result.value && typeof result.value === 'string' && result.value.length > 0) {
66
+ trunk = result.value;
67
+ }
68
+ }
69
+ catch {
70
+ // A config read failure here is non-fatal: git.integration_branch is genuinely
71
+ // optional, so degrading to the conventional default trunk ('main') is correct
72
+ // behavior, not a swallowed error — mirrors GuideManager's resolveSource()/
73
+ // resolveStrategy() fallback pattern for the same config source.
74
+ }
75
+ }
76
+ const { stdout: current } = await gitExec(['rev-parse', '--abbrev-ref', 'HEAD'], projectPath);
77
+ if (current === 'HEAD') {
78
+ return { outcome: 'block', trunk, current: 'HEAD' };
79
+ }
80
+ if (current === trunk) {
81
+ return { outcome: 'proceed' };
82
+ }
83
+ if (current === 'main' && trunk !== 'main') {
84
+ return { outcome: 'block', trunk, current };
85
+ }
86
+ const descends = await isAncestor(trunk, projectPath);
87
+ return descends
88
+ ? { outcome: 'warn', trunk, current, ancestry: 'descends' }
89
+ : { outcome: 'warn', trunk, current, ancestry: 'unrelated' };
90
+ }
91
+ //# sourceMappingURL=branchGuard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branchGuard.js","sourceRoot":"","sources":["../../src/guides/branchGuard.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAOvC;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa,EAAE,GAAW;IACnD,MAAM,IAAI,GAAG,CAAC,YAAY,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC5D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YACxD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YACD,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACvD,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,OAAO;YACT,CAAC;YACD,MAAM,CACJ,IAAI,KAAK,CACP,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE,CAC5E,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IACvC,KAAK,CAAS;IACd,OAAO,CAAS;IAEzB,YAAY,KAAa,EAAE,OAAe;QACxC,MAAM,OAAO,GACX,OAAO,KAAK,MAAM;YAChB,CAAC,CAAC,iHAAiH;YACnH,CAAC,CAAC,sCAAsC,OAAO,gDAAgD,KAAK,iBAAiB,KAAK,sFAAsF,CAAC;QACrN,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IACpC,KAAK,CAAS;IACd,OAAO,CAAS;IAChB,QAAQ,CAA2B;IAE5C,YAAY,KAAa,EAAE,OAAe,EAAE,QAAkC;QAC5E,MAAM,OAAO,GACX,QAAQ,KAAK,UAAU;YACrB,CAAC,CAAC,eAAe,OAAO,kDAAkD,KAAK,mCAAmC,OAAO,cAAc;YACvI,CAAC,CAAC,eAAe,OAAO,2EAA2E,KAAK,mCAAmC,OAAO,cAAc,CAAC;QACrK,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,WAAmB,EACnB,aAA6B;IAE7B,IAAI,KAAK,GAAG,MAAM,CAAC;IACnB,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;YACjE,IAAI,MAAM,CAAC,KAAK,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChF,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YACvB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,+EAA+E;YAC/E,+EAA+E;YAC/E,4EAA4E;YAC5E,iEAAiE;QACnE,CAAC;IACH,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC;IAE9F,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAChC,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAC9C,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACtD,OAAO,QAAQ;QACb,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE;QAC3D,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AACjE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export { GuideManager } from './GuideManager.js';
2
2
  export { GuideDetector } from './GuideDetector.js';
3
3
  export { type GuideInfo, type GuideMethod, type InstallResult, type UpdateResult, type DetectionResult, type InstallStrategy, DEFAULT_SOURCE_GIT, DEFAULT_SOURCE_API, GUIDE_RELATIVE_PATH, VERSION_MARKER_FILE, } from './types.js';
4
+ export { type BranchGuardVerdict, evaluateBranchGuard, BranchGuardBlockedError, BranchGuardWarnError, } from './branchGuard.js';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/guides/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/guides/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,KAAK,kBAAkB,EACvB,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC"}
@@ -2,4 +2,5 @@
2
2
  export { GuideManager } from './GuideManager.js';
3
3
  export { GuideDetector } from './GuideDetector.js';
4
4
  export { DEFAULT_SOURCE_GIT, DEFAULT_SOURCE_API, GUIDE_RELATIVE_PATH, VERSION_MARKER_FILE, } from './types.js';
5
+ export { evaluateBranchGuard, BranchGuardBlockedError, BranchGuardWarnError, } from './branchGuard.js';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/guides/index.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAOL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/guides/index.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAOL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAEL,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC"}
@@ -76,6 +76,15 @@ export declare class ConsistencyChecker {
76
76
  private ruleInitiativePlanStatusVsEntries;
77
77
  /** Rule 10: Stale worktree paths — worktree path missing or not a git worktree */
78
78
  private ruleStaleWorktreePath;
79
+ /**
80
+ * Rule 15: personal-scope config keys present in the shared project file.
81
+ * Detects the pre-migration case (a personal key committed to
82
+ * .context-forge.toml before this classification existed, or set there by
83
+ * an older/buggy scope-resolution path). Not fixable here by design — the
84
+ * fix is a cross-file move (`cf config migrate-personal`), which doesn't
85
+ * fit the update-checkbox/update-frontmatter fixAction shape.
86
+ */
87
+ private rulePersonalConfigInSharedFile;
79
88
  /** Directories under project-documents/user/ to scan for methodology documents. */
80
89
  private static readonly DOC_SCAN_DIRS;
81
90
  /** Discover all .md documents across methodology directories. */
@@ -1 +1 @@
1
- {"version":3,"file":"ConsistencyChecker.d.ts","sourceRoot":"","sources":["../../src/introspection/ConsistencyChecker.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,KAAK,EAEV,sBAAsB,EACtB,oBAAoB,EAKrB,MAAM,YAAY,CAAC;AAIpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAmBhE;;;GAGG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;gBADP,YAAY,EAAE,qBAAqB,EACnC,MAAM,CAAC,EAAE,aAAa,YAAA;IAGzC;;OAEG;IACG,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAsBlE;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAwGrE;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAK9D;;;OAGG;IACG,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAKjE,oEAAoE;IAC9D,UAAU,CAAC,WAAW,EAAE,sBAAsB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAoCpF,gFAAgF;YAClE,UAAU;IA2CxB,sDAAsD;IACtD,OAAO,CAAC,cAAc;IAgEtB,oDAAoD;IACpD,OAAO,CAAC,yBAAyB;IAuEjC,gDAAgD;IAChD,OAAO,CAAC,oBAAoB;IAuC5B,yDAAyD;IACzD,OAAO,CAAC,qBAAqB;IAoD7B,wEAAwE;IACxE,OAAO,CAAC,kBAAkB;IAiD1B,wFAAwF;IACxF;;;;OAIG;YACW,gBAAgB;IA6B9B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;YA6BV,cAAc;IA4C5B,8CAA8C;IAC9C,OAAO,CAAC,kBAAkB;IA6B1B,mDAAmD;YACrC,uBAAuB;IAyDrC;;;;;OAKG;YACW,kBAAkB;IAqChC,yDAAyD;YAC3C,qBAAqB;IAsDnC,gFAAgF;YAClE,kBAAkB;IAIhC,kEAAkE;YACpD,yBAAyB;IA0FvC,0EAA0E;YAC5D,iCAAiC;IAuD/C,kFAAkF;YACpE,qBAAqB;IAqDnC,mFAAmF;IACnF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAOnC;IAEF,iEAAiE;YACnD,oBAAoB;IAqBlC,gEAAgE;YAClD,qBAAqB;IA8CnC,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,WAAW;IAoBnB,mEAAmE;YACrD,qBAAqB;IAanC,qEAAqE;YACvD,oBAAoB;IAalC,iFAAiF;IACjF,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAM/B;;;OAGG;YACW,qBAAqB;IA8CnC,OAAO,CAAC,oBAAoB;YAMd,mBAAmB;YAYnB,kBAAkB;YAalB,iBAAiB;YAajB,oBAAoB;YAYpB,4BAA4B;CAY3C"}
1
+ {"version":3,"file":"ConsistencyChecker.d.ts","sourceRoot":"","sources":["../../src/introspection/ConsistencyChecker.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,KAAK,EAEV,sBAAsB,EACtB,oBAAoB,EAKrB,MAAM,YAAY,CAAC;AAIpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAqBhE;;;GAGG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;gBADP,YAAY,EAAE,qBAAqB,EACnC,MAAM,CAAC,EAAE,aAAa,YAAA;IAGzC;;OAEG;IACG,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAsBlE;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA6GrE;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAK9D;;;OAGG;IACG,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAKjE,oEAAoE;IAC9D,UAAU,CAAC,WAAW,EAAE,sBAAsB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAoCpF,gFAAgF;YAClE,UAAU;IA2CxB,sDAAsD;IACtD,OAAO,CAAC,cAAc;IAgEtB,oDAAoD;IACpD,OAAO,CAAC,yBAAyB;IAuEjC,gDAAgD;IAChD,OAAO,CAAC,oBAAoB;IAuC5B,yDAAyD;IACzD,OAAO,CAAC,qBAAqB;IAoD7B,wEAAwE;IACxE,OAAO,CAAC,kBAAkB;IAiD1B,wFAAwF;IACxF;;;;OAIG;YACW,gBAAgB;IA6B9B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;YA6BV,cAAc;IA4C5B,8CAA8C;IAC9C,OAAO,CAAC,kBAAkB;IA6B1B,mDAAmD;YACrC,uBAAuB;IAyDrC;;;;;OAKG;YACW,kBAAkB;IAqChC,yDAAyD;YAC3C,qBAAqB;IAsDnC,gFAAgF;YAClE,kBAAkB;IAIhC,kEAAkE;YACpD,yBAAyB;IA0FvC,0EAA0E;YAC5D,iCAAiC;IAuD/C,kFAAkF;YACpE,qBAAqB;IAmDnC;;;;;;;OAOG;YACW,8BAA8B;IA4B5C,mFAAmF;IACnF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAOnC;IAEF,iEAAiE;YACnD,oBAAoB;IAqBlC,gEAAgE;YAClD,qBAAqB;IA8CnC,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,WAAW;IAoBnB,mEAAmE;YACrD,qBAAqB;IAanC,qEAAqE;YACvD,oBAAoB;IAalC,iFAAiF;IACjF,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAM/B;;;OAGG;YACW,qBAAqB;IA8CnC,OAAO,CAAC,oBAAoB;YAMd,mBAAmB;YAYnB,kBAAkB;YAalB,iBAAiB;YAajB,oBAAoB;YAYpB,4BAA4B;CAY3C"}
@@ -6,6 +6,8 @@ import { STATUS } from './types.js';
6
6
  import { resolveArtifactPath } from '../schema/resolveFileByIndex.js';
7
7
  import { updateCheckbox, updateFrontmatterField } from './writers/markdownWriter.js';
8
8
  import { resolveInitiativePlanPath } from './ArtifactIntrospector.js';
9
+ import { CONFIG_KEYS, ConfigScope } from '../config/ConfigKeys.js';
10
+ import { getProjectConfigPath, getProjectPersonalConfigPath } from '../config/configPaths.js';
9
11
  import { resolveGateConfig, evaluateReviewGate, positionToReviewType, } from './reviewGate.js';
10
12
  /**
11
13
  * Extract numeric slice index from a fileSlice value like "165-slice.workflow-navigator".
@@ -122,6 +124,8 @@ export class ConsistencyChecker {
122
124
  }
123
125
  // Rule 12: frontmatter schema validation across all documents
124
126
  allFindings.push(...await this.ruleFrontmatterSchema(projectPath, project.name));
127
+ // Rule 15: personal-scope config keys committed to the shared project file
128
+ allFindings.push(...await this.rulePersonalConfigInSharedFile(projectPath));
125
129
  return this.buildResult(projectPath, allFindings);
126
130
  }
127
131
  /**
@@ -829,6 +833,37 @@ export class ConsistencyChecker {
829
833
  }
830
834
  return findings;
831
835
  }
836
+ /**
837
+ * Rule 15: personal-scope config keys present in the shared project file.
838
+ * Detects the pre-migration case (a personal key committed to
839
+ * .context-forge.toml before this classification existed, or set there by
840
+ * an older/buggy scope-resolution path). Not fixable here by design — the
841
+ * fix is a cross-file move (`cf config migrate-personal`), which doesn't
842
+ * fit the update-checkbox/update-frontmatter fixAction shape.
843
+ */
844
+ async rulePersonalConfigInSharedFile(projectPath) {
845
+ if (!this.config)
846
+ return [];
847
+ const findings = [];
848
+ const sharedPath = getProjectConfigPath(projectPath);
849
+ const personalPath = getProjectPersonalConfigPath(projectPath);
850
+ for (const [key, def] of Object.entries(CONFIG_KEYS)) {
851
+ if (def.scope !== ConfigScope.Personal)
852
+ continue;
853
+ const { shared } = await this.config.getRawProjectFileValues(key);
854
+ if (shared === undefined)
855
+ continue;
856
+ findings.push({
857
+ rule: 'personal-config-in-shared-file',
858
+ severity: 'warning',
859
+ location: sharedPath,
860
+ description: `Personal-scope key "${key}" is present in the shared config file (${sharedPath}); it belongs in the personal config file (${personalPath})`,
861
+ suggestedFix: 'Run cf config migrate-personal to move it to the personal config file',
862
+ fixable: false,
863
+ });
864
+ }
865
+ return findings;
866
+ }
832
867
  // --- Document-wide rules ---
833
868
  /** Directories under project-documents/user/ to scan for methodology documents. */
834
869
  static DOC_SCAN_DIRS = [
@@ -1 +1 @@
1
- {"version":3,"file":"ConsistencyChecker.js","sourceRoot":"","sources":["../../src/introspection/ConsistencyChecker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConsistencyChecker.js","sourceRoot":"","sources":["../../src/introspection/ConsistencyChecker.ts"],"names":[],"mappings":"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"}
@@ -63,11 +63,26 @@ export declare class WorkflowNavigator {
63
63
  * slice design) is a normal `undefined` input to the lattice.
64
64
  */
65
65
  private resolveEntryStatus;
66
+ /**
67
+ * Resolve an entry's status, degrading rather than throwing on a per-entry
68
+ * resolution failure (TD-2a). The underlying resolution failure is still
69
+ * surfaced — as a pushed warning — rather than silently discarded; it just
70
+ * no longer aborts callers that must keep going across many entries (#62:
71
+ * one slice with an unrecognized frontmatter status must not take down
72
+ * `cf status`/`cf next` for the whole project).
73
+ */
74
+ private resolveEntryStatusSafe;
66
75
  /**
67
76
  * Find the first plan entry whose derived status is not complete/deprecated.
68
77
  * Replaces the old `entries.find((e) => !e.isChecked)` — the direct #56 fix:
69
78
  * a slice with all tasks complete but an unchecked plan checkbox is no
70
- * longer selected as "next unstarted".
79
+ * longer selected as "next unstarted". A degraded entry (TD-2a) counts as
80
+ * not-complete so it surfaces rather than being silently skipped.
81
+ *
82
+ * Reads the already-resolved `entry.status` (computed once by getStatus's
83
+ * parseSlicePlanSafe) rather than re-deriving via a second filesystem pass —
84
+ * avoids redundant I/O and, for a degraded entry, avoids pushing the same
85
+ * TD-2a warning into the caller's warnings list twice (#62).
71
86
  */
72
87
  private findFirstNotCompleteEntry;
73
88
  private parseSlicePlanSafe;
@@ -1 +1 @@
1
- {"version":3,"file":"WorkflowNavigator.d.ts","sourceRoot":"","sources":["../../src/introspection/WorkflowNavigator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAEV,cAAc,EACd,UAAU,EAKX,MAAM,YAAY,CAAC;AAWpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAGhE;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAI9E;AAmBD;;;GAGG;AACH,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAP,MAAM,CAAC,EAAE,aAAa,YAAA;IAEnD;;OAEG;IACG,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;IA2B9D;;;OAGG;IACG,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IA4R1D;;;;;SAKK;IACH,OAAO,CAAC,gBAAgB;IAOxB;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IA2H7B;;OAEG;YACW,iBAAiB;IAsF/B;;;;;OAKG;YACW,YAAY;IAS1B;;;;OAIG;YACW,iBAAiB;IAW/B;;;;;;;;;OASG;YACW,kBAAkB;IAkChC;;;;;OAKG;YACW,yBAAyB;YAazB,kBAAkB;IAyChC,OAAO,CAAC,YAAY;CA0BrB"}
1
+ {"version":3,"file":"WorkflowNavigator.d.ts","sourceRoot":"","sources":["../../src/introspection/WorkflowNavigator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAEV,cAAc,EACd,UAAU,EAOX,MAAM,YAAY,CAAC;AAWpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAGhE;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAI9E;AAmBD;;;GAGG;AACH,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAP,MAAM,CAAC,EAAE,aAAa,YAAA;IAEnD;;OAEG;IACG,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;IAgC9D;;;OAGG;IACG,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IA6R1D;;;;;SAKK;IACH,OAAO,CAAC,gBAAgB;IAOxB;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IA2H7B;;OAEG;YACW,iBAAiB;IAsF/B;;;;;OAKG;YACW,YAAY;IAS1B;;;;OAIG;YACW,iBAAiB;IAW/B;;;;;;;;;OASG;YACW,kBAAkB;IAkChC;;;;;;;OAOG;YACW,sBAAsB;IAcpC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,yBAAyB;YAWnB,kBAAkB;IA0ChC,OAAO,CAAC,YAAY;CA0BrB"}
@@ -63,8 +63,13 @@ export class WorkflowNavigator {
63
63
  }
64
64
  // Derive active slice status
65
65
  status.activeSlice = await this.deriveSliceStatus(project, projectPath);
66
- // Parse slice plan if set
67
- status.slicePlan = await this.parseSlicePlanSafe(project, projectPath);
66
+ // Parse slice plan if set. Per-entry resolution failures (TD-2a) are
67
+ // collected here rather than thrown — #62: cf status must keep running.
68
+ const warnings = [];
69
+ status.slicePlan = await this.parseSlicePlanSafe(project, projectPath, warnings);
70
+ if (warnings.length > 0) {
71
+ status.warnings = warnings;
72
+ }
68
73
  // Build summary
69
74
  status.summary = this.buildSummary(status);
70
75
  return status;
@@ -85,6 +90,10 @@ export class WorkflowNavigator {
85
90
  }
86
91
  const status = await this.getStatus(project);
87
92
  const slice = status.activeSlice;
93
+ // Seeded from getStatus()'s TD-2a resolution-failure warnings so cf next
94
+ // surfaces the same non-fatal degradations cf status does (#62), rather
95
+ // than re-deriving (and potentially double-warning) independently.
96
+ const navWarnings = status.warnings ? [...status.warnings] : [];
88
97
  // GUARD: no-active-slice
89
98
  if (!slice || slice.status === 'no-active-slice') {
90
99
  // Determine whether the arch file actually exists on disk
@@ -164,7 +173,8 @@ export class WorkflowNavigator {
164
173
  };
165
174
  }
166
175
  // Slice plan exists but no active slice — suggest first not-yet-complete entry
167
- const firstEntry = await this.findFirstNotCompleteEntry(project.projectPath, status.slicePlan.entries);
176
+ const firstResult = this.findFirstNotCompleteEntry(status.slicePlan.entries);
177
+ const firstEntry = firstResult?.entry;
168
178
  const sliceCmd = firstEntry ? `cf set slice ${firstEntry.index}` : 'cf set slice <index>';
169
179
  const sliceLabel = firstEntry ? `slice ${firstEntry.index}: ${firstEntry.name}` : 'your first slice';
170
180
  return {
@@ -172,10 +182,11 @@ export class WorkflowNavigator {
172
182
  rationale: 'Choose the first unchecked slice from your plan. Then advance your phase: cf set phase 4',
173
183
  suggestedCommand: sliceCmd,
174
184
  summary: `Pick ${sliceLabel} — then cf set phase 4`,
185
+ ...(navWarnings.length > 0 ? { warnings: navWarnings } : {}),
175
186
  };
176
187
  }
177
188
  // --- Compute warnings and arch-existence for active slice path ---
178
- const warnings = [];
189
+ const warnings = [...navWarnings];
179
190
  // Check if arch file exists on disk (reused below for recommendation override)
180
191
  const archRelPath = project.fileArch ? resolveArtifactPath('fileArch', project.fileArch) : null;
181
192
  const archFileExists = archRelPath !== null && project.projectPath
@@ -265,9 +276,10 @@ export class WorkflowNavigator {
265
276
  }
266
277
  // LIFECYCLE: complete-advance — slice complete → recommend next slice (not a phase)
267
278
  if (slice.status === 'complete' && status.slicePlan) {
268
- const nextEntry = await this.findFirstNotCompleteEntry(project.projectPath, status.slicePlan.entries);
279
+ const nextResult = this.findFirstNotCompleteEntry(status.slicePlan.entries);
280
+ const nextEntry = nextResult?.entry;
269
281
  if (nextEntry) {
270
- const nextDerived = await this.resolveEntryStatus(project.projectPath, nextEntry);
282
+ const nextDerived = nextResult.status;
271
283
  if (nextDerived === STATUS.InProgress) {
272
284
  return enrich({
273
285
  recommendation: `Continue slice ${nextEntry.index}: ${nextEntry.name}`,
@@ -573,22 +585,45 @@ export class WorkflowNavigator {
573
585
  isChecked: entry.isChecked,
574
586
  });
575
587
  }
588
+ /**
589
+ * Resolve an entry's status, degrading rather than throwing on a per-entry
590
+ * resolution failure (TD-2a). The underlying resolution failure is still
591
+ * surfaced — as a pushed warning — rather than silently discarded; it just
592
+ * no longer aborts callers that must keep going across many entries (#62:
593
+ * one slice with an unrecognized frontmatter status must not take down
594
+ * `cf status`/`cf next` for the whole project).
595
+ */
596
+ async resolveEntryStatusSafe(projectPath, entry, warnings) {
597
+ try {
598
+ return await this.resolveEntryStatus(projectPath, entry);
599
+ }
600
+ catch (err) {
601
+ const message = err instanceof Error ? err.message : String(err);
602
+ warnings.push(message);
603
+ return 'degraded';
604
+ }
605
+ }
576
606
  /**
577
607
  * Find the first plan entry whose derived status is not complete/deprecated.
578
608
  * Replaces the old `entries.find((e) => !e.isChecked)` — the direct #56 fix:
579
609
  * a slice with all tasks complete but an unchecked plan checkbox is no
580
- * longer selected as "next unstarted".
610
+ * longer selected as "next unstarted". A degraded entry (TD-2a) counts as
611
+ * not-complete so it surfaces rather than being silently skipped.
612
+ *
613
+ * Reads the already-resolved `entry.status` (computed once by getStatus's
614
+ * parseSlicePlanSafe) rather than re-deriving via a second filesystem pass —
615
+ * avoids redundant I/O and, for a degraded entry, avoids pushing the same
616
+ * TD-2a warning into the caller's warnings list twice (#62).
581
617
  */
582
- async findFirstNotCompleteEntry(projectPath, entries) {
618
+ findFirstNotCompleteEntry(entries) {
583
619
  for (const entry of entries) {
584
- const derived = await this.resolveEntryStatus(projectPath, entry);
585
- if (derived !== STATUS.Complete && derived !== STATUS.Deprecated) {
586
- return entry;
620
+ if (entry.status !== STATUS.Complete && entry.status !== STATUS.Deprecated) {
621
+ return { entry, status: entry.status };
587
622
  }
588
623
  }
589
624
  return undefined;
590
625
  }
591
- async parseSlicePlanSafe(project, projectPath) {
626
+ async parseSlicePlanSafe(project, projectPath, warnings) {
592
627
  if (!project.fileSlicePlan)
593
628
  return null;
594
629
  let result;
@@ -610,12 +645,12 @@ export class WorkflowNavigator {
610
645
  // Route each entry's status through the derivation lattice so this surface
611
646
  // (and workflow_status, which returns getStatus() verbatim) agrees with
612
647
  // cf list slices/getNext instead of showing the raw, checkbox-only
613
- // SlicePlanEntry.status (slice 911 MCP-parity fix). Deliberately NOT
614
- // wrapped in the try/catch above: a per-entry resolution failure (TD-2a)
615
- // must propagate, not be silently discarded along with the whole plan.
648
+ // SlicePlanEntry.status (slice 911 MCP-parity fix). A per-entry resolution
649
+ // failure (TD-2a) is surfaced as a warning rather than silently discarded,
650
+ // but must not abort the whole plan/command (#62) see resolveEntryStatusSafe.
616
651
  const entries = await Promise.all(result.entries.map(async (entry) => ({
617
652
  ...entry,
618
- status: await this.resolveEntryStatus(projectPath, entry),
653
+ status: await this.resolveEntryStatusSafe(projectPath, entry, warnings),
619
654
  })));
620
655
  return {
621
656
  name: planName,