@context-forge/core 0.9.2 → 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.
- package/dist/config/ConfigKeys.d.ts +6 -0
- package/dist/config/ConfigKeys.d.ts.map +1 -1
- package/dist/config/ConfigKeys.js +18 -0
- package/dist/config/ConfigKeys.js.map +1 -1
- package/dist/config/ConfigManager.d.ts +31 -1
- package/dist/config/ConfigManager.d.ts.map +1 -1
- package/dist/config/ConfigManager.js +118 -6
- package/dist/config/ConfigManager.js.map +1 -1
- package/dist/config/configPaths.d.ts +2 -0
- package/dist/config/configPaths.d.ts.map +1 -1
- package/dist/config/configPaths.js +4 -0
- package/dist/config/configPaths.js.map +1 -1
- package/dist/config/index.d.ts +2 -2
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +2 -2
- package/dist/config/index.js.map +1 -1
- package/dist/guides/GuideManager.d.ts +3 -1
- package/dist/guides/GuideManager.d.ts.map +1 -1
- package/dist/guides/GuideManager.js +9 -1
- package/dist/guides/GuideManager.js.map +1 -1
- package/dist/guides/branchGuard.d.ts +39 -0
- package/dist/guides/branchGuard.d.ts.map +1 -0
- package/dist/guides/branchGuard.js +91 -0
- package/dist/guides/branchGuard.js.map +1 -0
- package/dist/guides/index.d.ts +1 -0
- package/dist/guides/index.d.ts.map +1 -1
- package/dist/guides/index.js +1 -0
- package/dist/guides/index.js.map +1 -1
- package/dist/introspection/ConsistencyChecker.d.ts +9 -0
- package/dist/introspection/ConsistencyChecker.d.ts.map +1 -1
- package/dist/introspection/ConsistencyChecker.js +35 -0
- package/dist/introspection/ConsistencyChecker.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,13 @@
|
|
|
1
|
+
export declare const ConfigScope: {
|
|
2
|
+
readonly Shared: "shared";
|
|
3
|
+
readonly Personal: "personal";
|
|
4
|
+
};
|
|
5
|
+
export type ConfigScope = (typeof ConfigScope)[keyof typeof ConfigScope];
|
|
1
6
|
export interface ConfigKeyDefinition {
|
|
2
7
|
type: 'string' | 'boolean' | 'number';
|
|
3
8
|
default: string | boolean | number;
|
|
4
9
|
description: string;
|
|
10
|
+
scope: ConfigScope;
|
|
5
11
|
enum?: string[];
|
|
6
12
|
validate?: (value: string | boolean | number) => string | null;
|
|
7
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigKeys.d.ts","sourceRoot":"","sources":["../../src/config/ConfigKeys.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAChE;AAED,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"ConfigKeys.d.ts","sourceRoot":"","sources":["../../src/config/ConfigKeys.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;CAGd,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAChE;AAED,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAqH3D,CAAC"}
|
|
@@ -1,75 +1,92 @@
|
|
|
1
|
+
export const ConfigScope = {
|
|
2
|
+
Shared: 'shared',
|
|
3
|
+
Personal: 'personal',
|
|
4
|
+
};
|
|
1
5
|
export const CONFIG_KEYS = {
|
|
2
6
|
'guide.auto_update': {
|
|
3
7
|
type: 'boolean',
|
|
4
8
|
default: false,
|
|
5
9
|
description: 'Whether to automatically update the AI project guide',
|
|
10
|
+
scope: ConfigScope.Shared,
|
|
6
11
|
},
|
|
7
12
|
'guide.source': {
|
|
8
13
|
type: 'string',
|
|
9
14
|
default: '',
|
|
10
15
|
description: 'URL or path to the AI project guide source',
|
|
16
|
+
scope: ConfigScope.Shared,
|
|
11
17
|
},
|
|
12
18
|
'guide.git_strategy': {
|
|
13
19
|
type: 'string',
|
|
14
20
|
default: 'submodule',
|
|
15
21
|
description: 'Strategy for managing the AI project guide via git',
|
|
16
22
|
enum: ['submodule', 'clone', 'manual'],
|
|
23
|
+
scope: ConfigScope.Shared,
|
|
17
24
|
},
|
|
18
25
|
'workflow.auto_advance': {
|
|
19
26
|
type: 'boolean',
|
|
20
27
|
default: false,
|
|
21
28
|
description: 'Auto-advance to next slice when current is complete',
|
|
29
|
+
scope: ConfigScope.Shared,
|
|
22
30
|
},
|
|
23
31
|
'workflow.auto_fix': {
|
|
24
32
|
type: 'boolean',
|
|
25
33
|
default: false,
|
|
26
34
|
description: 'Automatically apply non-destructive corrections when running consistency checks',
|
|
35
|
+
scope: ConfigScope.Shared,
|
|
27
36
|
},
|
|
28
37
|
'workflow.review_enabled': {
|
|
29
38
|
type: 'boolean',
|
|
30
39
|
default: false,
|
|
31
40
|
description: 'Enable review gating in the workflow navigator (off by default; no behavior change when false)',
|
|
41
|
+
scope: ConfigScope.Shared,
|
|
32
42
|
},
|
|
33
43
|
'workflow.review_threshold': {
|
|
34
44
|
type: 'string',
|
|
35
45
|
default: 'concerns',
|
|
36
46
|
description: 'Verdict floor that clears a review gate: "pass" requires PASS; "concerns" clears on PASS or CONCERNS',
|
|
37
47
|
enum: ['pass', 'concerns'],
|
|
48
|
+
scope: ConfigScope.Shared,
|
|
38
49
|
},
|
|
39
50
|
'workflow.review_unknown_as': {
|
|
40
51
|
type: 'string',
|
|
41
52
|
default: 'fail',
|
|
42
53
|
description: 'How to treat an UNKNOWN/absent/unparseable verdict: "fail" blocks, "concerns" treats as CONCERNS, "pass" clears',
|
|
43
54
|
enum: ['fail', 'concerns', 'pass'],
|
|
55
|
+
scope: ConfigScope.Shared,
|
|
44
56
|
},
|
|
45
57
|
'workflow.review_gates.code.threshold': {
|
|
46
58
|
type: 'string',
|
|
47
59
|
default: '',
|
|
48
60
|
description: 'Per-gate override: verdict floor for the code (pre-advance) review gate (empty = use workflow.review_threshold)',
|
|
49
61
|
enum: ['', 'pass', 'concerns'],
|
|
62
|
+
scope: ConfigScope.Shared,
|
|
50
63
|
},
|
|
51
64
|
'workflow.review_gates.arch.threshold': {
|
|
52
65
|
type: 'string',
|
|
53
66
|
default: '',
|
|
54
67
|
description: 'Per-gate override: verdict floor for the arch (pre-slice-plan) review gate (empty = use workflow.review_threshold)',
|
|
55
68
|
enum: ['', 'pass', 'concerns'],
|
|
69
|
+
scope: ConfigScope.Shared,
|
|
56
70
|
},
|
|
57
71
|
'workflow.review_gates.slice.threshold': {
|
|
58
72
|
type: 'string',
|
|
59
73
|
default: '',
|
|
60
74
|
description: 'Per-gate override: verdict floor for the slice (pre-tasks) review gate (empty = use workflow.review_threshold)',
|
|
61
75
|
enum: ['', 'pass', 'concerns'],
|
|
76
|
+
scope: ConfigScope.Shared,
|
|
62
77
|
},
|
|
63
78
|
'workflow.review_gates.tasks.threshold': {
|
|
64
79
|
type: 'string',
|
|
65
80
|
default: '',
|
|
66
81
|
description: 'Per-gate override: verdict floor for the tasks (pre-implementation) review gate (empty = use workflow.review_threshold)',
|
|
67
82
|
enum: ['', 'pass', 'concerns'],
|
|
83
|
+
scope: ConfigScope.Shared,
|
|
68
84
|
},
|
|
69
85
|
'workflow.review_gate_effective_date': {
|
|
70
86
|
type: 'string',
|
|
71
87
|
default: '',
|
|
72
88
|
description: 'Grandfathers slices/architecture designed before this date (YYYYMMDD, compared against the artifact\'s own dateCreated) out of every review gate boundary. Empty (default) applies no cutoff — every slice is subject to gating. Lets a project turn on review_enabled without retroactively demanding reviews for work completed before the gate existed.',
|
|
89
|
+
scope: ConfigScope.Shared,
|
|
73
90
|
validate: (value) => {
|
|
74
91
|
if (typeof value !== 'string')
|
|
75
92
|
return 'must be a string';
|
|
@@ -84,6 +101,7 @@ export const CONFIG_KEYS = {
|
|
|
84
101
|
type: 'string',
|
|
85
102
|
default: '',
|
|
86
103
|
description: 'Optional long-lived integration branch that work branches fork from and merge into instead of main (e.g. "dev/erik" yields "dev/erik/910-slice.foo", forked from and merged into "dev/erik"). Empty means no integration branch — work branches fork from and merge into main directly. Relative and contained: must not be absolute or escape via "..".',
|
|
104
|
+
scope: ConfigScope.Personal,
|
|
87
105
|
validate: (value) => {
|
|
88
106
|
if (typeof value !== 'string')
|
|
89
107
|
return 'must be a string';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigKeys.js","sourceRoot":"","sources":["../../src/config/ConfigKeys.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ConfigKeys.js","sourceRoot":"","sources":["../../src/config/ConfigKeys.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAaX,MAAM,CAAC,MAAM,WAAW,GAAwC;IAC9D,mBAAmB,EAAE;QACnB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,sDAAsD;QACnE,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,cAAc,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,4CAA4C;QACzD,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,oBAAoB,EAAE;QACpB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,WAAW;QACpB,WAAW,EAAE,oDAAoD;QACjE,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC;QACtC,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,uBAAuB,EAAE;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,qDAAqD;QAClE,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,iFAAiF;QAC9F,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,yBAAyB,EAAE;QACzB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,gGAAgG;QAC7G,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,2BAA2B,EAAE;QAC3B,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,UAAU;QACnB,WAAW,EACT,sGAAsG;QACxG,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;QAC1B,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,4BAA4B,EAAE;QAC5B,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,MAAM;QACf,WAAW,EACT,iHAAiH;QACnH,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC;QAClC,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,sCAAsC,EAAE;QACtC,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EACT,iHAAiH;QACnH,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC;QAC9B,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,sCAAsC,EAAE;QACtC,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EACT,oHAAoH;QACtH,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC;QAC9B,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,uCAAuC,EAAE;QACvC,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EACT,gHAAgH;QAClH,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC;QAC9B,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,uCAAuC,EAAE;QACvC,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EACT,yHAAyH;QAC3H,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC;QAC9B,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B;IACD,qCAAqC,EAAE;QACrC,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EACT,4VAA4V;QAC9V,KAAK,EAAE,WAAW,CAAC,MAAM;QACzB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YAClB,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,OAAO,kBAAkB,CAAC;YACzD,IAAI,KAAK,KAAK,EAAE;gBAAE,OAAO,IAAI,CAAC,CAAC,uCAAuC;YACtE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,OAAO,8CAA8C,CAAC;YAClF,OAAO,IAAI,CAAC;QACd,CAAC;KACF;IACD,wBAAwB,EAAE;QACxB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EACT,0VAA0V;QAC5V,KAAK,EAAE,WAAW,CAAC,QAAQ;QAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YAClB,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,OAAO,kBAAkB,CAAC;YACzD,IAAI,KAAK,KAAK,EAAE;gBAAE,OAAO,IAAI,CAAC,CAAC,uCAAuC;YACtE,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,gCAAgC,CAAC;YACnE,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvD,OAAO,gDAAgD,CAAC;YAC1D,CAAC;YACD,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,OAAO,gCAAgC,CAAC;YACjF,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,OAAO,gCAAgC,CAAC;YACzF,OAAO,IAAI,CAAC;QACd,CAAC;KACF;CACF,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export interface ConfigResult {
|
|
2
2
|
key: string;
|
|
3
3
|
value: string | boolean | number;
|
|
4
|
-
source: 'project' | 'user' | 'default';
|
|
4
|
+
source: 'project-personal' | 'project' | 'user' | 'default';
|
|
5
5
|
description: string;
|
|
6
6
|
}
|
|
7
7
|
export interface ConfigListEntry extends ConfigResult {
|
|
@@ -13,6 +13,36 @@ export declare class ConfigManager {
|
|
|
13
13
|
constructor(projectPath?: string);
|
|
14
14
|
get(key: string): Promise<ConfigResult>;
|
|
15
15
|
set(key: string, value: string | boolean | number, scope: 'user' | 'project'): Promise<void>;
|
|
16
|
+
delete(key: string, scope: 'user' | 'project'): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Resolves the physical file for a `set`/`delete` call. `scope: 'user'` always
|
|
19
|
+
* targets the user config file regardless of the key's own classification —
|
|
20
|
+
* only `scope: 'project'` is routed further, to the personal or shared project
|
|
21
|
+
* file based on `def.scope`.
|
|
22
|
+
*/
|
|
23
|
+
private resolveProjectScopeFilePath;
|
|
24
|
+
/**
|
|
25
|
+
* Reads a key's raw value directly from each project-scope file, bypassing the
|
|
26
|
+
* fallback-merged result `get()` returns. Used where a caller must distinguish
|
|
27
|
+
* "absent from personal" vs. "present in shared" independently — e.g. the
|
|
28
|
+
* personal-config-in-shared-file consistency check and `cf config migrate-personal`,
|
|
29
|
+
* both of which need to know what each file actually contains, not just the
|
|
30
|
+
* precedence-resolved value.
|
|
31
|
+
*/
|
|
32
|
+
getRawProjectFileValues(key: string): Promise<{
|
|
33
|
+
personal: string | boolean | number | undefined;
|
|
34
|
+
shared: string | boolean | number | undefined;
|
|
35
|
+
}>;
|
|
36
|
+
/**
|
|
37
|
+
* Deletes a key from the shared project file specifically, bypassing the
|
|
38
|
+
* scope-based routing `delete()` applies. Needed by `cf config migrate-personal`:
|
|
39
|
+
* that command's whole purpose is to remove a personal-scope key from the
|
|
40
|
+
* *shared* file once it's confirmed safe to do so (identical value already in
|
|
41
|
+
* the personal file, or successfully copied there) — routed `delete()` would
|
|
42
|
+
* send a personal key's deletion to the personal file instead, deleting the
|
|
43
|
+
* very value the migration just confirmed or wrote.
|
|
44
|
+
*/
|
|
45
|
+
deleteFromSharedProjectFile(key: string): Promise<void>;
|
|
16
46
|
list(): Promise<ConfigListEntry[]>;
|
|
17
47
|
}
|
|
18
48
|
//# sourceMappingURL=ConfigManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigManager.d.ts","sourceRoot":"","sources":["../../src/config/ConfigManager.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACjC,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfigManager.d.ts","sourceRoot":"","sources":["../../src/config/ConfigManager.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACjC,MAAM,EAAE,kBAAkB,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5D,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IACtC,YAAY,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;CACzC;AAiGD,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;gBAErC,WAAW,CAAC,EAAE,MAAM;IAI1B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA2DvC,GAAG,CACP,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,EAChC,KAAK,EAAE,MAAM,GAAG,SAAS,GACxB,OAAO,CAAC,IAAI,CAAC;IAkBV,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBnE;;;;;OAKG;IACH,OAAO,CAAC,2BAA2B;IAYnC;;;;;;;OAOG;IACG,uBAAuB,CAC3B,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;IAe9G;;;;;;;;OAQG;IACG,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvD,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;CAYzC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { readFile, writeFile, mkdir } from 'fs/promises';
|
|
2
2
|
import { dirname } from 'path';
|
|
3
3
|
import { parse, stringify } from 'smol-toml';
|
|
4
|
-
import { CONFIG_KEYS } from './ConfigKeys.js';
|
|
5
|
-
import { getUserConfigPath, getProjectConfigPath } from './configPaths.js';
|
|
4
|
+
import { CONFIG_KEYS, ConfigScope } from './ConfigKeys.js';
|
|
5
|
+
import { getUserConfigPath, getProjectConfigPath, getProjectPersonalConfigPath } from './configPaths.js';
|
|
6
6
|
async function readToml(filePath) {
|
|
7
7
|
try {
|
|
8
8
|
const content = await readFile(filePath, 'utf-8');
|
|
@@ -41,6 +41,36 @@ function setKey(obj, key, value) {
|
|
|
41
41
|
}
|
|
42
42
|
current[parts[parts.length - 1]] = value;
|
|
43
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Removes the leaf key at the dotted path, then prunes any now-empty parent
|
|
46
|
+
* tables left behind so `stringify` doesn't emit a dangling `[section]`
|
|
47
|
+
* header. No-op if the key or an intermediate table doesn't exist.
|
|
48
|
+
*/
|
|
49
|
+
function deleteKey(obj, key) {
|
|
50
|
+
const parts = key.split('.');
|
|
51
|
+
const chain = [obj];
|
|
52
|
+
let current = obj;
|
|
53
|
+
for (let i = 0; i < parts.length - 1; i++) {
|
|
54
|
+
const part = parts[i];
|
|
55
|
+
if (!(part in current) || typeof current[part] !== 'object' || current[part] === null) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
current = current[part];
|
|
59
|
+
chain.push(current);
|
|
60
|
+
}
|
|
61
|
+
const leaf = parts[parts.length - 1];
|
|
62
|
+
if (!(leaf in current))
|
|
63
|
+
return;
|
|
64
|
+
delete current[leaf];
|
|
65
|
+
// Walk back up, pruning any table left empty by the deletion above.
|
|
66
|
+
for (let i = chain.length - 1; i > 0; i--) {
|
|
67
|
+
const table = chain[i];
|
|
68
|
+
if (Object.keys(table).length > 0)
|
|
69
|
+
break;
|
|
70
|
+
const parent = chain[i - 1];
|
|
71
|
+
delete parent[parts[i - 1]];
|
|
72
|
+
}
|
|
73
|
+
}
|
|
44
74
|
function validateValue(key, value, def) {
|
|
45
75
|
if (typeof value !== def.type) {
|
|
46
76
|
throw new Error(`Config key "${key}" expects type "${def.type}", got "${typeof value}"`);
|
|
@@ -65,8 +95,25 @@ export class ConfigManager {
|
|
|
65
95
|
if (!def) {
|
|
66
96
|
throw new Error(`Unknown config key: "${key}"`);
|
|
67
97
|
}
|
|
68
|
-
// Check project config first
|
|
98
|
+
// Check project config first (personal file before shared file, for personal-scope keys)
|
|
69
99
|
if (this.projectPath) {
|
|
100
|
+
if (def.scope === ConfigScope.Personal) {
|
|
101
|
+
const personalConfig = await readToml(getProjectPersonalConfigPath(this.projectPath));
|
|
102
|
+
const personalValue = resolveKey(personalConfig, key);
|
|
103
|
+
if (personalValue !== undefined) {
|
|
104
|
+
return {
|
|
105
|
+
key,
|
|
106
|
+
// resolveKey returns unknown (parsed TOML); safe to assert here because
|
|
107
|
+
// `key` is validated against CONFIG_KEYS above, whose values are all
|
|
108
|
+
// string | boolean | number.
|
|
109
|
+
value: personalValue,
|
|
110
|
+
source: 'project-personal',
|
|
111
|
+
description: def.description,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
// Shared project file — normal case for shared keys, and the pre-migration
|
|
116
|
+
// fallback for a personal key that still lives in the shared file.
|
|
70
117
|
const projectConfig = await readToml(getProjectConfigPath(this.projectPath));
|
|
71
118
|
const projectValue = resolveKey(projectConfig, key);
|
|
72
119
|
if (projectValue !== undefined) {
|
|
@@ -106,13 +153,78 @@ export class ConfigManager {
|
|
|
106
153
|
throw new Error(`Cannot set project-scoped config: no projectPath provided`);
|
|
107
154
|
}
|
|
108
155
|
validateValue(key, value, def);
|
|
109
|
-
const filePath = scope
|
|
110
|
-
? getProjectConfigPath(this.projectPath)
|
|
111
|
-
: getUserConfigPath();
|
|
156
|
+
const filePath = this.resolveProjectScopeFilePath(def, scope);
|
|
112
157
|
const existing = await readToml(filePath);
|
|
113
158
|
setKey(existing, key, value);
|
|
114
159
|
await writeToml(filePath, existing);
|
|
115
160
|
}
|
|
161
|
+
async delete(key, scope) {
|
|
162
|
+
const def = CONFIG_KEYS[key];
|
|
163
|
+
if (!def) {
|
|
164
|
+
throw new Error(`Unknown config key: "${key}"`);
|
|
165
|
+
}
|
|
166
|
+
if (scope === 'project' && !this.projectPath) {
|
|
167
|
+
throw new Error(`Cannot unset project-scoped config: no projectPath provided`);
|
|
168
|
+
}
|
|
169
|
+
const filePath = this.resolveProjectScopeFilePath(def, scope);
|
|
170
|
+
const existing = await readToml(filePath);
|
|
171
|
+
deleteKey(existing, key);
|
|
172
|
+
await writeToml(filePath, existing);
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Resolves the physical file for a `set`/`delete` call. `scope: 'user'` always
|
|
176
|
+
* targets the user config file regardless of the key's own classification —
|
|
177
|
+
* only `scope: 'project'` is routed further, to the personal or shared project
|
|
178
|
+
* file based on `def.scope`.
|
|
179
|
+
*/
|
|
180
|
+
resolveProjectScopeFilePath(def, scope) {
|
|
181
|
+
if (scope === 'user') {
|
|
182
|
+
return getUserConfigPath();
|
|
183
|
+
}
|
|
184
|
+
return def.scope === ConfigScope.Personal
|
|
185
|
+
? getProjectPersonalConfigPath(this.projectPath)
|
|
186
|
+
: getProjectConfigPath(this.projectPath);
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Reads a key's raw value directly from each project-scope file, bypassing the
|
|
190
|
+
* fallback-merged result `get()` returns. Used where a caller must distinguish
|
|
191
|
+
* "absent from personal" vs. "present in shared" independently — e.g. the
|
|
192
|
+
* personal-config-in-shared-file consistency check and `cf config migrate-personal`,
|
|
193
|
+
* both of which need to know what each file actually contains, not just the
|
|
194
|
+
* precedence-resolved value.
|
|
195
|
+
*/
|
|
196
|
+
async getRawProjectFileValues(key) {
|
|
197
|
+
if (!this.projectPath) {
|
|
198
|
+
throw new Error('Cannot read project-scoped config: no projectPath provided');
|
|
199
|
+
}
|
|
200
|
+
const personalConfig = await readToml(getProjectPersonalConfigPath(this.projectPath));
|
|
201
|
+
const sharedConfig = await readToml(getProjectConfigPath(this.projectPath));
|
|
202
|
+
// resolveKey returns unknown (parsed TOML); safe to assert here because `key`
|
|
203
|
+
// is expected to be a CONFIG_KEYS entry, whose values are all
|
|
204
|
+
// string | boolean | number (or absent, hence the trailing `| undefined`).
|
|
205
|
+
return {
|
|
206
|
+
personal: resolveKey(personalConfig, key),
|
|
207
|
+
shared: resolveKey(sharedConfig, key),
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Deletes a key from the shared project file specifically, bypassing the
|
|
212
|
+
* scope-based routing `delete()` applies. Needed by `cf config migrate-personal`:
|
|
213
|
+
* that command's whole purpose is to remove a personal-scope key from the
|
|
214
|
+
* *shared* file once it's confirmed safe to do so (identical value already in
|
|
215
|
+
* the personal file, or successfully copied there) — routed `delete()` would
|
|
216
|
+
* send a personal key's deletion to the personal file instead, deleting the
|
|
217
|
+
* very value the migration just confirmed or wrote.
|
|
218
|
+
*/
|
|
219
|
+
async deleteFromSharedProjectFile(key) {
|
|
220
|
+
if (!this.projectPath) {
|
|
221
|
+
throw new Error('Cannot delete project-scoped config: no projectPath provided');
|
|
222
|
+
}
|
|
223
|
+
const filePath = getProjectConfigPath(this.projectPath);
|
|
224
|
+
const existing = await readToml(filePath);
|
|
225
|
+
deleteKey(existing, key);
|
|
226
|
+
await writeToml(filePath, existing);
|
|
227
|
+
}
|
|
116
228
|
async list() {
|
|
117
229
|
const results = [];
|
|
118
230
|
for (const [key, def] of Object.entries(CONFIG_KEYS)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigManager.js","sourceRoot":"","sources":["../../src/config/ConfigManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,WAAW,EAA4B,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfigManager.js","sourceRoot":"","sources":["../../src/config/ConfigManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,4 +2,6 @@
|
|
|
2
2
|
export declare function getUserConfigPath(): string;
|
|
3
3
|
/** Returns the project-level config file path: {projectPath}/.context-forge.toml */
|
|
4
4
|
export declare function getProjectConfigPath(projectPath: string): string;
|
|
5
|
+
/** Returns the project-level personal config file path: {projectPath}/.context-forge.local.toml */
|
|
6
|
+
export declare function getProjectPersonalConfigPath(projectPath: string): string;
|
|
5
7
|
//# sourceMappingURL=configPaths.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configPaths.d.ts","sourceRoot":"","sources":["../../src/config/configPaths.ts"],"names":[],"mappings":"AAGA,yEAAyE;AACzE,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,oFAAoF;AACpF,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEhE"}
|
|
1
|
+
{"version":3,"file":"configPaths.d.ts","sourceRoot":"","sources":["../../src/config/configPaths.ts"],"names":[],"mappings":"AAGA,yEAAyE;AACzE,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,oFAAoF;AACpF,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,mGAAmG;AACnG,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAExE"}
|
|
@@ -8,4 +8,8 @@ export function getUserConfigPath() {
|
|
|
8
8
|
export function getProjectConfigPath(projectPath) {
|
|
9
9
|
return join(projectPath, '.context-forge.toml');
|
|
10
10
|
}
|
|
11
|
+
/** Returns the project-level personal config file path: {projectPath}/.context-forge.local.toml */
|
|
12
|
+
export function getProjectPersonalConfigPath(projectPath) {
|
|
13
|
+
return join(projectPath, '.context-forge.local.toml');
|
|
14
|
+
}
|
|
11
15
|
//# sourceMappingURL=configPaths.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configPaths.js","sourceRoot":"","sources":["../../src/config/configPaths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,yEAAyE;AACzE,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,aAAa,CAAC,CAAC;AAC/C,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,oBAAoB,CAAC,WAAmB;IACtD,OAAO,IAAI,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;AAClD,CAAC"}
|
|
1
|
+
{"version":3,"file":"configPaths.js","sourceRoot":"","sources":["../../src/config/configPaths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,yEAAyE;AACzE,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,aAAa,CAAC,CAAC;AAC/C,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,oBAAoB,CAAC,WAAmB;IACtD,OAAO,IAAI,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;AAClD,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,4BAA4B,CAAC,WAAmB;IAC9D,OAAO,IAAI,CAAC,WAAW,EAAE,2BAA2B,CAAC,CAAC;AACxD,CAAC"}
|
package/dist/config/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ConfigKeyDefinition, CONFIG_KEYS } from './ConfigKeys.js';
|
|
1
|
+
export { ConfigKeyDefinition, ConfigScope, CONFIG_KEYS } from './ConfigKeys.js';
|
|
2
2
|
export { ConfigResult, ConfigListEntry, ConfigManager } from './ConfigManager.js';
|
|
3
|
-
export { getUserConfigPath, getProjectConfigPath } from './configPaths.js';
|
|
3
|
+
export { getUserConfigPath, getProjectConfigPath, getProjectPersonalConfigPath } from './configPaths.js';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/config/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { CONFIG_KEYS } from './ConfigKeys.js';
|
|
1
|
+
export { ConfigScope, CONFIG_KEYS } from './ConfigKeys.js';
|
|
2
2
|
export { ConfigManager } from './ConfigManager.js';
|
|
3
|
-
export { getUserConfigPath, getProjectConfigPath } from './configPaths.js';
|
|
3
|
+
export { getUserConfigPath, getProjectConfigPath, getProjectPersonalConfigPath } from './configPaths.js';
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,WAAW,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAiC,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -11,7 +11,9 @@ export declare class GuideManager {
|
|
|
11
11
|
/** Install the guide into the project */
|
|
12
12
|
install(strategyOverride?: GuideMethod, sourceOverride?: string): Promise<InstallResult>;
|
|
13
13
|
/** Update an existing guide installation */
|
|
14
|
-
update(
|
|
14
|
+
update(opts?: {
|
|
15
|
+
confirmed?: boolean;
|
|
16
|
+
}): Promise<UpdateResult>;
|
|
15
17
|
/** Uninstall the guide from the project */
|
|
16
18
|
uninstall(): Promise<UninstallResult>;
|
|
17
19
|
/** Sync guide submodule checkout in multiple worktrees */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GuideManager.d.ts","sourceRoot":"","sources":["../../src/guides/GuideManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAmB,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"GuideManager.d.ts","sourceRoot":"","sources":["../../src/guides/GuideManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAmB,UAAU,EAAE,MAAM,YAAY,CAAC;AAQpI,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAS;gBAE5B,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,EAAE,MAAM;IAOtF,4CAA4C;IACtC,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC;IAKlC,yCAAyC;IACnC,OAAO,CAAC,gBAAgB,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAsB9F,4CAA4C;IACtC,MAAM,CAAC,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IA+BnE,2CAA2C;IACrC,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;IAuD3C,0DAA0D;IACpD,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAwBnE,gDAAgD;YAClC,aAAa;IAc3B,8CAA8C;YAChC,eAAe;IAc7B,2DAA2D;IAC3D,OAAO,CAAC,qBAAqB;IAa7B,2CAA2C;IAC3C,OAAO,CAAC,WAAW;CAUpB"}
|
|
@@ -6,6 +6,7 @@ import { GuideDetector } from './GuideDetector.js';
|
|
|
6
6
|
import { SubmoduleStrategy } from './strategies/SubmoduleStrategy.js';
|
|
7
7
|
import { CloneStrategy } from './strategies/CloneStrategy.js';
|
|
8
8
|
import { TarballStrategy } from './strategies/TarballStrategy.js';
|
|
9
|
+
import { evaluateBranchGuard, BranchGuardBlockedError, BranchGuardWarnError } from './branchGuard.js';
|
|
9
10
|
export class GuideManager {
|
|
10
11
|
projectPath;
|
|
11
12
|
configManager;
|
|
@@ -39,13 +40,20 @@ export class GuideManager {
|
|
|
39
40
|
return result;
|
|
40
41
|
}
|
|
41
42
|
/** Update an existing guide installation */
|
|
42
|
-
async update() {
|
|
43
|
+
async update(opts) {
|
|
43
44
|
const source = await this.resolveSource();
|
|
44
45
|
const targetDir = join(this.projectPath, GUIDE_RELATIVE_PATH);
|
|
45
46
|
const info = await this.detector.detect(this.projectPath, source);
|
|
46
47
|
if (!info.installed || !info.method) {
|
|
47
48
|
throw new Error('Guide is not installed. Use guide_install (or cf guides install) to install it first.');
|
|
48
49
|
}
|
|
50
|
+
const verdict = await evaluateBranchGuard(this.projectPath, this.configManager);
|
|
51
|
+
if (verdict.outcome === 'block') {
|
|
52
|
+
throw new BranchGuardBlockedError(verdict.trunk, verdict.current);
|
|
53
|
+
}
|
|
54
|
+
if (verdict.outcome === 'warn' && opts?.confirmed !== true) {
|
|
55
|
+
throw new BranchGuardWarnError(verdict.trunk, verdict.current, verdict.ancestry);
|
|
56
|
+
}
|
|
49
57
|
const strategy = this.getStrategy(info.method);
|
|
50
58
|
const result = await strategy.update(this.projectPath, targetDir);
|
|
51
59
|
// Sync the worktree's submodule checkout if operating from a non-default worktree
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GuideManager.js","sourceRoot":"","sources":["../../src/guides/GuideManager.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAGnD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"GuideManager.js","sourceRoot":"","sources":["../../src/guides/GuideManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { ConfigManager } from '../config/ConfigManager.js';
|
|
2
|
+
export type BranchGuardVerdict = {
|
|
3
|
+
outcome: 'proceed';
|
|
4
|
+
} | {
|
|
5
|
+
outcome: 'block';
|
|
6
|
+
trunk: string;
|
|
7
|
+
current: string;
|
|
8
|
+
} | {
|
|
9
|
+
outcome: 'warn';
|
|
10
|
+
trunk: string;
|
|
11
|
+
current: string;
|
|
12
|
+
ancestry: 'descends' | 'unrelated';
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Checks whether `trunk` is an ancestor of HEAD via `git merge-base --is-ancestor`,
|
|
16
|
+
* whose exit code is its actual return value (0 = true, 1 = false, >1 = error) rather
|
|
17
|
+
* than a uniform success/failure signal — so this bypasses gitExec's throw-on-nonzero
|
|
18
|
+
* contract with a standalone execFile call instead of changing that contract for every
|
|
19
|
+
* other caller.
|
|
20
|
+
*/
|
|
21
|
+
export declare function isAncestor(trunk: string, cwd: string): Promise<boolean>;
|
|
22
|
+
export declare class BranchGuardBlockedError extends Error {
|
|
23
|
+
readonly trunk: string;
|
|
24
|
+
readonly current: string;
|
|
25
|
+
constructor(trunk: string, current: string);
|
|
26
|
+
}
|
|
27
|
+
export declare class BranchGuardWarnError extends Error {
|
|
28
|
+
readonly trunk: string;
|
|
29
|
+
readonly current: string;
|
|
30
|
+
readonly ancestry: 'descends' | 'unrelated';
|
|
31
|
+
constructor(trunk: string, current: string, ancestry: 'descends' | 'unrelated');
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Resolves the configured trunk branch and the current branch, then applies the
|
|
35
|
+
* guard decision table to determine whether a guide-update commit should proceed,
|
|
36
|
+
* block, or require confirmation.
|
|
37
|
+
*/
|
|
38
|
+
export declare function evaluateBranchGuard(projectPath: string, configManager?: ConfigManager): Promise<BranchGuardVerdict>;
|
|
39
|
+
//# sourceMappingURL=branchGuard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"branchGuard.d.ts","sourceRoot":"","sources":["../../src/guides/branchGuard.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAGhE,MAAM,MAAM,kBAAkB,GAC1B;IAAE,OAAO,EAAE,SAAS,CAAA;CAAE,GACtB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,UAAU,GAAG,WAAW,CAAA;CAAE,CAAC;AAE5F;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAmBvE;AAED,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEb,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAU3C;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,UAAU,GAAG,WAAW,CAAC;gBAEhC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,WAAW;CAW/E;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,kBAAkB,CAAC,CAgC7B"}
|
|
@@ -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":"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"}
|
package/dist/guides/index.d.ts
CHANGED
|
@@ -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"}
|
package/dist/guides/index.js
CHANGED
|
@@ -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
|
package/dist/guides/index.js.map
CHANGED
|
@@ -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;
|
|
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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"}
|
package/package.json
CHANGED