gitnexus 1.2.5 → 1.2.7

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,113 +1,113 @@
1
- ---
2
- name: gitnexus-refactoring
3
- description: Plan safe refactors using blast radius and dependency mapping
4
- ---
5
-
6
- # Refactoring with GitNexus
7
-
8
- ## When to Use
9
- - "Rename this function safely"
10
- - "Extract this into a module"
11
- - "Split this service"
12
- - "Move this to a new file"
13
- - Any task involving renaming, extracting, splitting, or restructuring code
14
-
15
- ## Workflow
16
-
17
- ```
18
- 1. gitnexus_impact({target: "X", direction: "upstream"}) → Map all dependents
19
- 2. gitnexus_query({query: "X"}) → Find execution flows involving X
20
- 3. gitnexus_context({name: "X"}) → See all incoming/outgoing refs
21
- 4. Plan update order: interfaces → implementations → callers → tests
22
- ```
23
-
24
- > If "Index is stale" → run `npx gitnexus analyze` in terminal.
25
-
26
- ## Checklists
27
-
28
- ### Rename Symbol
29
- ```
30
- - [ ] gitnexus_rename({symbol_name: "oldName", new_name: "newName", dry_run: true}) — preview all edits
31
- - [ ] Review graph edits (high confidence) and ast_search edits (review carefully)
32
- - [ ] If satisfied: gitnexus_rename({..., dry_run: false}) — apply edits
33
- - [ ] gitnexus_detect_changes() — verify only expected files changed
34
- - [ ] Run tests for affected processes
35
- ```
36
-
37
- ### Extract Module
38
- ```
39
- - [ ] gitnexus_context({name: target}) — see all incoming/outgoing refs
40
- - [ ] gitnexus_impact({target, direction: "upstream"}) — find all external callers
41
- - [ ] Define new module interface
42
- - [ ] Extract code, update imports
43
- - [ ] gitnexus_detect_changes() — verify affected scope
44
- - [ ] Run tests for affected processes
45
- ```
46
-
47
- ### Split Function/Service
48
- ```
49
- - [ ] gitnexus_context({name: target}) — understand all callees
50
- - [ ] Group callees by responsibility
51
- - [ ] gitnexus_impact({target, direction: "upstream"}) — map callers to update
52
- - [ ] Create new functions/services
53
- - [ ] Update callers
54
- - [ ] gitnexus_detect_changes() — verify affected scope
55
- - [ ] Run tests for affected processes
56
- ```
57
-
58
- ## Tools
59
-
60
- **gitnexus_rename** — automated multi-file rename:
61
- ```
62
- gitnexus_rename({symbol_name: "validateUser", new_name: "authenticateUser", dry_run: true})
63
- → 12 edits across 8 files
64
- → 10 graph edits (high confidence), 2 ast_search edits (review)
65
- → Changes: [{file_path, edits: [{line, old_text, new_text, confidence}]}]
66
- ```
67
-
68
- **gitnexus_impact** — map all dependents first:
69
- ```
70
- gitnexus_impact({target: "validateUser", direction: "upstream"})
71
- → d=1: loginHandler, apiMiddleware, testUtils
72
- → Affected Processes: LoginFlow, TokenRefresh
73
- ```
74
-
75
- **gitnexus_detect_changes** — verify your changes after refactoring:
76
- ```
77
- gitnexus_detect_changes({scope: "all"})
78
- → Changed: 8 files, 12 symbols
79
- → Affected processes: LoginFlow, TokenRefresh
80
- → Risk: MEDIUM
81
- ```
82
-
83
- **gitnexus_cypher** — custom reference queries:
84
- ```cypher
85
- MATCH (caller)-[:CodeRelation {type: 'CALLS'}]->(f:Function {name: "validateUser"})
86
- RETURN caller.name, caller.filePath ORDER BY caller.filePath
87
- ```
88
-
89
- ## Risk Rules
90
-
91
- | Risk Factor | Mitigation |
92
- |-------------|------------|
93
- | Many callers (>5) | Use gitnexus_rename for automated updates |
94
- | Cross-area refs | Use detect_changes after to verify scope |
95
- | String/dynamic refs | gitnexus_query to find them |
96
- | External/public API | Version and deprecate properly |
97
-
98
- ## Example: Rename `validateUser` to `authenticateUser`
99
-
100
- ```
101
- 1. gitnexus_rename({symbol_name: "validateUser", new_name: "authenticateUser", dry_run: true})
102
- → 12 edits: 10 graph (safe), 2 ast_search (review)
103
- → Files: validator.ts, login.ts, middleware.ts, config.json...
104
-
105
- 2. Review ast_search edits (config.json: dynamic reference!)
106
-
107
- 3. gitnexus_rename({symbol_name: "validateUser", new_name: "authenticateUser", dry_run: false})
108
- → Applied 12 edits across 8 files
109
-
110
- 4. gitnexus_detect_changes({scope: "all"})
111
- → Affected: LoginFlow, TokenRefresh
112
- → Risk: MEDIUM — run tests for these flows
113
- ```
1
+ ---
2
+ name: gitnexus-refactoring
3
+ description: Plan safe refactors using blast radius and dependency mapping
4
+ ---
5
+
6
+ # Refactoring with GitNexus
7
+
8
+ ## When to Use
9
+ - "Rename this function safely"
10
+ - "Extract this into a module"
11
+ - "Split this service"
12
+ - "Move this to a new file"
13
+ - Any task involving renaming, extracting, splitting, or restructuring code
14
+
15
+ ## Workflow
16
+
17
+ ```
18
+ 1. gitnexus_impact({target: "X", direction: "upstream"}) → Map all dependents
19
+ 2. gitnexus_query({query: "X"}) → Find execution flows involving X
20
+ 3. gitnexus_context({name: "X"}) → See all incoming/outgoing refs
21
+ 4. Plan update order: interfaces → implementations → callers → tests
22
+ ```
23
+
24
+ > If "Index is stale" → run `npx gitnexus analyze` in terminal.
25
+
26
+ ## Checklists
27
+
28
+ ### Rename Symbol
29
+ ```
30
+ - [ ] gitnexus_rename({symbol_name: "oldName", new_name: "newName", dry_run: true}) — preview all edits
31
+ - [ ] Review graph edits (high confidence) and ast_search edits (review carefully)
32
+ - [ ] If satisfied: gitnexus_rename({..., dry_run: false}) — apply edits
33
+ - [ ] gitnexus_detect_changes() — verify only expected files changed
34
+ - [ ] Run tests for affected processes
35
+ ```
36
+
37
+ ### Extract Module
38
+ ```
39
+ - [ ] gitnexus_context({name: target}) — see all incoming/outgoing refs
40
+ - [ ] gitnexus_impact({target, direction: "upstream"}) — find all external callers
41
+ - [ ] Define new module interface
42
+ - [ ] Extract code, update imports
43
+ - [ ] gitnexus_detect_changes() — verify affected scope
44
+ - [ ] Run tests for affected processes
45
+ ```
46
+
47
+ ### Split Function/Service
48
+ ```
49
+ - [ ] gitnexus_context({name: target}) — understand all callees
50
+ - [ ] Group callees by responsibility
51
+ - [ ] gitnexus_impact({target, direction: "upstream"}) — map callers to update
52
+ - [ ] Create new functions/services
53
+ - [ ] Update callers
54
+ - [ ] gitnexus_detect_changes() — verify affected scope
55
+ - [ ] Run tests for affected processes
56
+ ```
57
+
58
+ ## Tools
59
+
60
+ **gitnexus_rename** — automated multi-file rename:
61
+ ```
62
+ gitnexus_rename({symbol_name: "validateUser", new_name: "authenticateUser", dry_run: true})
63
+ → 12 edits across 8 files
64
+ → 10 graph edits (high confidence), 2 ast_search edits (review)
65
+ → Changes: [{file_path, edits: [{line, old_text, new_text, confidence}]}]
66
+ ```
67
+
68
+ **gitnexus_impact** — map all dependents first:
69
+ ```
70
+ gitnexus_impact({target: "validateUser", direction: "upstream"})
71
+ → d=1: loginHandler, apiMiddleware, testUtils
72
+ → Affected Processes: LoginFlow, TokenRefresh
73
+ ```
74
+
75
+ **gitnexus_detect_changes** — verify your changes after refactoring:
76
+ ```
77
+ gitnexus_detect_changes({scope: "all"})
78
+ → Changed: 8 files, 12 symbols
79
+ → Affected processes: LoginFlow, TokenRefresh
80
+ → Risk: MEDIUM
81
+ ```
82
+
83
+ **gitnexus_cypher** — custom reference queries:
84
+ ```cypher
85
+ MATCH (caller)-[:CodeRelation {type: 'CALLS'}]->(f:Function {name: "validateUser"})
86
+ RETURN caller.name, caller.filePath ORDER BY caller.filePath
87
+ ```
88
+
89
+ ## Risk Rules
90
+
91
+ | Risk Factor | Mitigation |
92
+ |-------------|------------|
93
+ | Many callers (>5) | Use gitnexus_rename for automated updates |
94
+ | Cross-area refs | Use detect_changes after to verify scope |
95
+ | String/dynamic refs | gitnexus_query to find them |
96
+ | External/public API | Version and deprecate properly |
97
+
98
+ ## Example: Rename `validateUser` to `authenticateUser`
99
+
100
+ ```
101
+ 1. gitnexus_rename({symbol_name: "validateUser", new_name: "authenticateUser", dry_run: true})
102
+ → 12 edits: 10 graph (safe), 2 ast_search (review)
103
+ → Files: validator.ts, login.ts, middleware.ts, config.json...
104
+
105
+ 2. Review ast_search edits (config.json: dynamic reference!)
106
+
107
+ 3. gitnexus_rename({symbol_name: "validateUser", new_name: "authenticateUser", dry_run: false})
108
+ → Applied 12 edits across 8 files
109
+
110
+ 4. gitnexus_detect_changes({scope: "all"})
111
+ → Affected: LoginFlow, TokenRefresh
112
+ → Risk: MEDIUM — run tests for these flows
113
+ ```