x-ipe 1.0.24__py3-none-any.whl → 1.0.25__py3-none-any.whl

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 (139) hide show
  1. x_ipe/app.py +25 -3
  2. x_ipe/handlers/terminal_handlers.py +6 -0
  3. x_ipe/handlers/voice_handlers.py +5 -0
  4. x_ipe/resources/copilot-instructions.md +19 -6
  5. x_ipe/resources/skills/lesson-learned/SKILL.md +208 -0
  6. x_ipe/resources/skills/lesson-learned/references/examples.md +238 -0
  7. x_ipe/resources/skills/project-quality-board-management/SKILL.md +135 -298
  8. x_ipe/resources/skills/project-quality-board-management/references/evaluation-principles.md +213 -0
  9. x_ipe/resources/skills/project-quality-board-management/references/evaluation-procedures.md +214 -0
  10. x_ipe/resources/skills/project-quality-board-management/templates/quality-report.md +70 -18
  11. x_ipe/resources/skills/task-execution-guideline/SKILL.md +2 -2
  12. x_ipe/resources/skills/task-execution-guideline/templates/task-record.yaml +1 -1
  13. x_ipe/resources/skills/task-type-code-implementation/SKILL.md +72 -270
  14. x_ipe/resources/skills/task-type-code-implementation/references/implementation-guidelines.md +432 -0
  15. x_ipe/resources/skills/task-type-code-refactor-v2/SKILL.md +127 -353
  16. x_ipe/resources/skills/task-type-code-refactor-v2/references/refactoring-techniques.md +373 -0
  17. x_ipe/resources/skills/task-type-feature-breakdown/SKILL.md +31 -243
  18. x_ipe/resources/skills/task-type-feature-breakdown/references/breakdown-guidelines.md +330 -0
  19. x_ipe/resources/skills/task-type-feature-refinement/SKILL.md +27 -180
  20. x_ipe/resources/skills/task-type-feature-refinement/references/specification-writing-guide.md +267 -0
  21. x_ipe/resources/skills/task-type-idea-mockup/SKILL.md +38 -276
  22. x_ipe/resources/skills/task-type-idea-mockup/references/mockup-guidelines.md +299 -0
  23. x_ipe/resources/skills/task-type-idea-to-architecture/SKILL.md +20 -218
  24. x_ipe/resources/skills/task-type-idea-to-architecture/references/architecture-patterns.md +342 -0
  25. x_ipe/resources/skills/task-type-ideation/SKILL.md +10 -266
  26. x_ipe/resources/skills/task-type-ideation/references/folder-naming-guide.md +55 -0
  27. x_ipe/resources/skills/task-type-ideation/references/tool-usage-guide.md +236 -0
  28. x_ipe/resources/skills/task-type-ideation-v2/SKILL.md +488 -0
  29. x_ipe/resources/skills/task-type-ideation-v2/references/examples.md +377 -0
  30. x_ipe/resources/skills/task-type-ideation-v2/references/folder-naming-guide.md +74 -0
  31. x_ipe/resources/skills/task-type-ideation-v2/references/tool-usage-guide.md +145 -0
  32. x_ipe/resources/skills/task-type-ideation-v2/references/visualization-guide.md +160 -0
  33. x_ipe/resources/skills/task-type-ideation-v2/templates/idea-summary.md +86 -0
  34. x_ipe/resources/skills/task-type-refactoring-analysis/SKILL.md +83 -145
  35. x_ipe/resources/skills/task-type-refactoring-analysis/references/output-schema.md +172 -0
  36. x_ipe/resources/skills/task-type-technical-design/SKILL.md +28 -214
  37. x_ipe/resources/skills/task-type-technical-design/references/design-templates.md +422 -0
  38. x_ipe/resources/skills/task-type-test-generation/SKILL.md +47 -332
  39. x_ipe/resources/skills/task-type-test-generation/references/test-patterns.md +368 -0
  40. x_ipe/resources/skills/tool-tracing-creator/SKILL.md +312 -0
  41. x_ipe/resources/skills/tool-tracing-creator/references/examples.md +324 -0
  42. x_ipe/resources/skills/tool-tracing-instrumentation/SKILL.md +373 -0
  43. x_ipe/resources/skills/tool-tracing-instrumentation/references/examples.md +264 -0
  44. x_ipe/resources/skills/x-ipe-skill-creator-v3/SKILL.md +486 -0
  45. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/10. example-gate-conditions.md +73 -0
  46. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/11. reference-quality-standards.md +127 -0
  47. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/2. reference-section-order.md +127 -0
  48. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/3. example-step-based-code-review.md +84 -0
  49. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/4. example-step-based-feature-implementation.md +113 -0
  50. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/5. example-function-based-validation.md +73 -0
  51. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/6. example-function-based-analysis.md +94 -0
  52. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/7. example-task-io-code-implementation.md +36 -0
  53. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/8. example-structured-summary.md +43 -0
  54. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/9. example-dor-dod.md +77 -0
  55. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/examples.md +429 -0
  56. x_ipe/resources/skills/x-ipe-skill-creator-v3/references/skill-general-guidelines-v2.md +611 -0
  57. x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/skill-meta-x-ipe-meta.md +153 -0
  58. x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/skill-meta-x-ipe-task-based.md +324 -0
  59. x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/skill-meta-x-ipe-task-category.md +109 -0
  60. x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/skill-meta-x-ipe-tool.md +205 -0
  61. x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/x-ipe-meta.md +334 -0
  62. x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/x-ipe-task-based.md +279 -0
  63. x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/x-ipe-tool.md +175 -0
  64. x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/x-ipe-workflow-orchestration.md +329 -0
  65. x_ipe/resources/skills/x-ipe-task-based-ideation/SKILL.md +487 -0
  66. x_ipe/resources/skills/x-ipe-task-based-ideation/references/examples.md +377 -0
  67. x_ipe/resources/skills/x-ipe-task-based-ideation/references/folder-naming-guide.md +74 -0
  68. x_ipe/resources/skills/x-ipe-task-based-ideation/references/tool-usage-guide.md +145 -0
  69. x_ipe/resources/skills/x-ipe-task-based-ideation/references/visualization-guide.md +160 -0
  70. x_ipe/resources/skills/x-ipe-task-based-ideation/templates/idea-summary.md +86 -0
  71. x_ipe/routes/__init__.py +2 -0
  72. x_ipe/routes/ideas_routes.py +17 -0
  73. x_ipe/routes/kb_routes.py +80 -0
  74. x_ipe/routes/main_routes.py +18 -0
  75. x_ipe/routes/project_routes.py +7 -0
  76. x_ipe/routes/proxy_routes.py +2 -0
  77. x_ipe/routes/quality_evaluation_routes.py +193 -0
  78. x_ipe/routes/settings_routes.py +6 -0
  79. x_ipe/routes/tools_routes.py +6 -0
  80. x_ipe/routes/tracing_routes.py +232 -0
  81. x_ipe/routes/uiux_feedback_routes.py +30 -0
  82. x_ipe/services/__init__.py +5 -0
  83. x_ipe/services/config_service.py +6 -0
  84. x_ipe/services/file_service.py +20 -0
  85. x_ipe/services/homepage_service.py +160 -0
  86. x_ipe/services/ideas_service.py +19 -0
  87. x_ipe/services/kb_service.py +378 -0
  88. x_ipe/services/proxy_service.py +4 -0
  89. x_ipe/services/settings_service.py +13 -0
  90. x_ipe/services/skills_service.py +4 -0
  91. x_ipe/services/terminal_service.py +24 -0
  92. x_ipe/services/themes_service.py +4 -0
  93. x_ipe/services/tools_config_service.py +4 -0
  94. x_ipe/services/tracing_service.py +333 -0
  95. x_ipe/services/uiux_feedback_service.py +32 -0
  96. x_ipe/services/voice_input_service_v2.py +11 -0
  97. x_ipe/static/css/base.css +7 -0
  98. x_ipe/static/css/homepage-infinity.css +330 -0
  99. x_ipe/static/css/kb-core.css +301 -0
  100. x_ipe/static/css/quality-evaluation.css +345 -0
  101. x_ipe/static/css/sidebar.css +14 -4
  102. x_ipe/static/css/terminal.css +1 -0
  103. x_ipe/static/css/tracing-dashboard.css +796 -0
  104. x_ipe/static/css/workplace.css +20 -0
  105. x_ipe/static/img/homepage-infinity-loop.png +0 -0
  106. x_ipe/static/js/features/homepage-infinity.js +314 -0
  107. x_ipe/static/js/features/kb-core.js +371 -0
  108. x_ipe/static/js/features/quality-evaluation.js +387 -0
  109. x_ipe/static/js/features/sidebar.js +255 -12
  110. x_ipe/static/js/features/tracing-dashboard.js +855 -0
  111. x_ipe/static/js/features/tracing-graph.js +1031 -0
  112. x_ipe/static/js/features/tree-search.js +6 -2
  113. x_ipe/static/js/features/workplace.js +200 -6
  114. x_ipe/static/js/init.js +76 -0
  115. x_ipe/static/js/uiux-feedback.js +18 -2
  116. x_ipe/templates/base.html +19 -0
  117. x_ipe/templates/index.html +7 -1
  118. x_ipe/templates/knowledge-base.html +110 -0
  119. x_ipe/templates/workplace.html +4 -0
  120. x_ipe/tracing/__init__.py +37 -0
  121. x_ipe/tracing/buffer.py +135 -0
  122. x_ipe/tracing/context.py +125 -0
  123. x_ipe/tracing/decorator.py +288 -0
  124. x_ipe/tracing/middleware.py +197 -0
  125. x_ipe/tracing/parser.py +235 -0
  126. x_ipe/tracing/redactor.py +111 -0
  127. x_ipe/tracing/writer.py +122 -0
  128. {x_ipe-1.0.24.dist-info → x_ipe-1.0.25.dist-info}/METADATA +2 -2
  129. {x_ipe-1.0.24.dist-info → x_ipe-1.0.25.dist-info}/RECORD +132 -62
  130. x_ipe/resources/skills/x-ipe-skill-creator/SKILL.md +0 -329
  131. x_ipe/resources/skills/x-ipe-skill-creator/references/output-patterns.md +0 -169
  132. x_ipe/resources/skills/x-ipe-skill-creator/references/skill-structure.md +0 -162
  133. x_ipe/resources/skills/x-ipe-skill-creator/references/workflows.md +0 -110
  134. x_ipe/resources/skills/x-ipe-skill-creator/templates/references/examples.md +0 -113
  135. x_ipe/resources/skills/x-ipe-skill-creator/templates/skill-category-skill.md +0 -296
  136. x_ipe/resources/skills/x-ipe-skill-creator/templates/task-type-skill.md +0 -269
  137. {x_ipe-1.0.24.dist-info → x_ipe-1.0.25.dist-info}/WHEEL +0 -0
  138. {x_ipe-1.0.24.dist-info → x_ipe-1.0.25.dist-info}/entry_points.txt +0 -0
  139. {x_ipe-1.0.24.dist-info → x_ipe-1.0.25.dist-info}/licenses/LICENSE +0 -0
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: project-quality-board-management
3
- description: Generate and manage project quality evaluation reports from feature perspective. Evaluates requirements, features, test coverage, and code alignment status with gap analysis. Generates consistent markdown reports to x-ipe-docs/planning folder. Triggers on requests like "evaluate project quality", "generate quality report", "assess code alignment".
3
+ description: Generate and manage project quality evaluation reports from feature perspective. Evaluates requirements, features, test coverage, and code alignment status with gap analysis. Generates consistent markdown reports to x-ipe-docs/quality-evaluation folder. Triggers on requests like "evaluate project quality", "generate quality report", "assess code alignment".
4
4
  ---
5
5
 
6
6
  # Project Quality Board Management
@@ -34,9 +34,60 @@ AI Agents follow this skill to generate and manage project-wide quality evaluati
34
34
 
35
35
  ## Report Output Location
36
36
 
37
- Quality evaluation report is stored in:
37
+ Quality evaluation reports are stored in:
38
38
  ```
39
- x-ipe-docs/planning/project-quality-evaluation.md
39
+ x-ipe-docs/quality-evaluation/
40
+ ```
41
+
42
+ ### File Naming Convention (FEATURE-024 Integration)
43
+
44
+ The quality evaluation UI displays up to **5 most recent versions** with a timeline interface.
45
+
46
+ | File | Description |
47
+ |------|-------------|
48
+ | `project-quality-evaluation.md` | **Current/Latest** evaluation report |
49
+ | `project-quality-evaluation-v{N}.md` | Historical version N (v1, v2, v3, etc.) |
50
+
51
+ **Version Number Calculation:**
52
+ - Current version = `max(existing version numbers) + 1`
53
+ - Example: If v1, v2, v3 exist → current file displays as "v4"
54
+
55
+ ### Versioning Workflow
56
+
57
+ When generating a **new report**, follow this workflow:
58
+
59
+ ```
60
+ 1. CHECK if x-ipe-docs/quality-evaluation/ folder exists
61
+ - IF NOT: Create folder
62
+
63
+ 2. CHECK if project-quality-evaluation.md exists
64
+ - IF YES:
65
+ a. SCAN for existing versioned files (project-quality-evaluation-v*.md)
66
+ b. FIND max version number among existing files
67
+ c. RENAME current file to project-quality-evaluation-v{max+1}.md
68
+ d. IF more than 4 versioned files exist:
69
+ - DELETE the oldest versioned file (lowest version number)
70
+ - Keep only 4 historical + 1 current = 5 total
71
+
72
+ 3. CREATE new project-quality-evaluation.md with fresh evaluation
73
+
74
+ 4. VERIFY: Folder should contain at most:
75
+ - 1 current file: project-quality-evaluation.md
76
+ - Up to 4 historical: project-quality-evaluation-v{N}.md
77
+ ```
78
+
79
+ **Example:**
80
+ ```
81
+ Before generating new report:
82
+ project-quality-evaluation.md (current, displayed as v3)
83
+ project-quality-evaluation-v2.md (previous)
84
+ project-quality-evaluation-v1.md (oldest)
85
+
86
+ After generating new report:
87
+ project-quality-evaluation.md (NEW, displayed as v4)
88
+ project-quality-evaluation-v3.md (was current, now versioned)
89
+ project-quality-evaluation-v2.md (unchanged)
90
+ project-quality-evaluation-v1.md (unchanged)
40
91
  ```
41
92
 
42
93
  Report header includes:
@@ -60,42 +111,53 @@ QualityEvaluation:
60
111
  health_status: healthy | attention_needed | critical
61
112
 
62
113
  # Feature-Level Evaluations
114
+ # Each dimension scored 1-10 based on principle violations and importance
115
+ # Status derived: 8-10 = aligned, 6-7 = needs_attention, 1-5 = critical
63
116
  features:
64
117
  - feature_id: FEATURE-XXX
65
118
  feature_name: "<name>"
66
- status: aligned | needs_attention | critical | planned | not_evaluated
119
+ feature_score: <1-10>
120
+ status: aligned | needs_attention | critical | planned
67
121
 
68
122
  requirements_alignment:
69
- status: aligned | needs_update | not_found | planned
123
+ score: <1-10> # Calculated from violations × importance weights
124
+ status: aligned | needs_attention | critical | planned
70
125
  requirement_docs: [<paths>]
71
126
  gaps:
72
127
  - type: undocumented | unimplemented | deviated
73
128
  description: "<gap description>"
74
129
  severity: high | medium | low
130
+ importance_weight: <0.5-3> # Based on principle importance
75
131
 
76
132
  specification_alignment:
77
- status: aligned | needs_update | not_found | planned
133
+ score: <1-10>
134
+ status: aligned | needs_attention | critical | planned
78
135
  spec_doc: "<path>"
79
136
  gaps:
80
137
  - type: missing | outdated | incorrect
81
138
  description: "<gap description>"
82
139
  severity: high | medium | low
140
+ importance_weight: <0.5-3>
83
141
 
84
142
  test_coverage:
85
- status: sufficient | insufficient | no_tests
143
+ score: <1-10>
144
+ status: aligned | needs_attention | critical
86
145
  line_coverage: <XX%>
87
146
  branch_coverage: <XX%>
88
147
  critical_untested:
89
148
  - area: "<untested area>"
90
149
  risk: high | medium | low
150
+ importance_weight: <0.5-3>
91
151
 
92
152
  code_alignment:
93
- status: aligned | drifted | major_drift
153
+ score: <1-10>
154
+ status: aligned | needs_attention | critical
94
155
  implementation_files: [<paths>]
95
156
  gaps:
96
157
  - type: structure | behavior | interface
97
158
  description: "<gap description>"
98
159
  severity: high | medium | low
160
+ importance_weight: <0.5-3>
99
161
 
100
162
  # Aggregated Gaps
101
163
  priority_gaps:
@@ -183,16 +245,36 @@ QualityEvaluation:
183
245
  - Specification Violations section
184
246
  - Test Coverage Violations section
185
247
  - Code Alignment Violations section
248
+ - Tracing Coverage Violations section (FEATURE-023-D)
249
+ - Security Violations section
186
250
  e. Files Approaching Threshold
187
251
  f. Priority Gaps Summary
188
252
  g. Recommendations
189
253
  h. Appendix (detailed metrics)
190
254
 
191
- 6. SAVE report:
192
- - Save to x-ipe-docs/planning/project-quality-evaluation.md
193
- - Update version and evaluated date in header
194
-
195
- 7. RETURN evaluation summary
255
+ 6. SAVE report (with versioning):
256
+ a. ENSURE x-ipe-docs/quality-evaluation/ folder exists
257
+ b. IF project-quality-evaluation.md exists:
258
+ - SCAN for existing project-quality-evaluation-v*.md files
259
+ - FIND max version number N
260
+ - RENAME current to project-quality-evaluation-v{N+1}.md
261
+ - IF more than 4 versioned files: DELETE oldest (lowest version)
262
+ c. SAVE new report to x-ipe-docs/quality-evaluation/project-quality-evaluation.md
263
+ d. UPDATE evaluated date in header
264
+
265
+ 7. SELF-REVIEW report:
266
+ a. READ the generated report completely
267
+ b. CHECK for:
268
+ - Missing content or sections
269
+ - Inconsistencies between summary and details
270
+ - Features mentioned but not evaluated
271
+ - Gaps without proper severity assignment
272
+ - Recommendations that don't match identified gaps
273
+ c. IF problems found:
274
+ - FIX the issues in the report
275
+ - Note corrections made
276
+
277
+ 8. RETURN evaluation summary
196
278
  ```
197
279
 
198
280
  ### Report Structure Rules
@@ -205,17 +287,33 @@ RULE 1: Evaluation Principles section
205
287
 
206
288
  RULE 2: Violation Details section
207
289
  - MUST be organized by feature
208
- - EACH feature section MUST have 4 subsections:
290
+ - EACH feature section MUST have 6 subsections:
209
291
  - Requirements Violations
210
292
  - Specification Violations
211
293
  - Test Coverage Violations
212
294
  - Code Alignment Violations
295
+ - Tracing Coverage Violations (FEATURE-023-D)
296
+ - Security Violations
213
297
  - ONLY show features that have violations
214
298
  - Show "No violations" if a category is clean
215
299
 
216
300
  RULE 3: Separation of concerns
217
301
  - Principles = WHAT we evaluate and HOW (thresholds)
218
302
  - Violations = RESULTS of evaluation per feature
303
+
304
+ RULE 4: Tracing Coverage Evaluation (FEATURE-023-D)
305
+ - Threshold: ≥90% of public functions must have @x_ipe_tracing decorator
306
+ - Check: All sensitive parameters (password, token, secret, key) have redact=[]
307
+ - Levels: API endpoints = INFO, Business logic = INFO, Utilities = DEBUG
308
+ - Report: List untraced functions and unredacted sensitive params
309
+
310
+ RULE 5: Security Coverage Evaluation
311
+ - Check: Input validation on all user-facing endpoints
312
+ - Check: No hardcoded secrets, tokens, or credentials in code
313
+ - Check: Proper authentication/authorization on protected routes
314
+ - Check: SQL injection and XSS prevention measures
315
+ - Check: Secure handling of sensitive data (encryption, hashing)
316
+ - Report: List security violations with severity
219
317
  ```
220
318
 
221
319
  ### Operation 2: Update Existing Report
@@ -224,14 +322,13 @@ RULE 3: Separation of concerns
224
322
  **Input:** feature_ids to re-evaluate
225
323
 
226
324
  ```
227
- 1. LOAD latest report from quality-evaluation-latest.md
325
+ 1. LOAD latest report from x-ipe-docs/quality-evaluation/project-quality-evaluation.md
228
326
  2. FOR EACH feature_id:
229
327
  - RE-EVALUATE all 4 perspectives
230
328
  - UPDATE feature entry in report
231
329
  3. RE-CALCULATE aggregates (overall_score, health_status)
232
330
  4. UPDATE priority_gaps and recommendations
233
- 5. SAVE as new timestamped report
234
- 6. UPDATE quality-evaluation-latest.md
331
+ 5. SAVE using versioning workflow (see "Versioning Workflow" section above)
235
332
  ```
236
333
 
237
334
  ### Operation 3: Query Quality Status
@@ -240,7 +337,7 @@ RULE 3: Separation of concerns
240
337
  **Input:** feature_ids or query criteria
241
338
 
242
339
  ```
243
- 1. LOAD latest report
340
+ 1. LOAD latest report from x-ipe-docs/quality-evaluation/project-quality-evaluation.md
244
341
  2. FILTER features by criteria
245
342
  3. RETURN filtered evaluation data
246
343
  ```
@@ -248,10 +345,12 @@ RULE 3: Separation of concerns
248
345
  ### Operation 4: Compare Evaluations
249
346
 
250
347
  **When:** Need to track quality changes over time
251
- **Input:** Two evaluation_ids or "latest vs previous"
348
+ **Input:** Two version numbers (e.g., "v3 vs v4") or "latest vs previous"
252
349
 
253
350
  ```
254
- 1. LOAD both evaluation reports
351
+ 1. LOAD both evaluation reports:
352
+ - Latest: project-quality-evaluation.md
353
+ - Previous: project-quality-evaluation-v{N}.md
255
354
  2. FOR EACH feature in both:
256
355
  - COMPARE status changes
257
356
  - CALCULATE score deltas
@@ -268,289 +367,26 @@ RULE 3: Separation of concerns
268
367
 
269
368
  ## Evaluation Principles
270
369
 
271
- ### Requirements Evaluation Principles
272
-
273
- | Principle | Threshold | Description |
274
- |-----------|-----------|-------------|
275
- | Completeness | 100% | Every implemented feature must have documented requirements |
276
- | Traceability | Required | Requirements should trace to features and code |
277
- | Clarity | No ambiguity | Requirements should be specific and testable |
278
- | Currency | < 30 days | Requirements updated within 30 days of code changes |
279
-
280
- ### Specification Evaluation Principles
281
-
282
- | Principle | Threshold | Description |
283
- |-----------|-----------|-------------|
284
- | API Documentation | Required | All public APIs must be documented |
285
- | Behavior Specification | Required | Expected behaviors clearly defined |
286
- | Edge Cases | Documented | Error handling and edge cases specified |
287
- | Version Alignment | Match | Spec version should match implementation version |
288
-
289
- ### Test Coverage Evaluation Principles
290
-
291
- | Principle | Threshold | Description |
292
- |-----------|-----------|-------------|
293
- | Line Coverage | ≥ 80% | Minimum line coverage for production code |
294
- | Branch Coverage | ≥ 70% | Minimum branch/decision coverage |
295
- | Critical Path Coverage | 100% | Core business logic must be fully tested |
296
- | Error Handler Coverage | ≥ 90% | Exception and error paths tested |
297
- | Test Isolation | Required | Tests should not depend on external services |
298
- | Mock External APIs | Required | External API calls must be mocked in tests |
299
-
300
- ### Code Alignment Evaluation Principles
301
-
302
- | Principle | Threshold | Description |
303
- |-----------|-----------|-------------|
304
- | **File Size** | ≤ 800 lines | Single file should not exceed 800 lines |
305
- | **Function Size** | ≤ 50 lines | Single function should not exceed 50 lines |
306
- | **Class Size** | ≤ 500 lines | Single class should not exceed 500 lines |
307
- | **Cyclomatic Complexity** | ≤ 10 | Function complexity should be manageable |
308
- | **SRP (Single Responsibility)** | 1 reason to change | Each module/class has one responsibility |
309
- | **OCP (Open/Closed)** | Extensible | Open for extension, closed for modification |
310
- | **LSP (Liskov Substitution)** | Substitutable | Subtypes must be substitutable for base types |
311
- | **ISP (Interface Segregation)** | Focused | Clients shouldn't depend on unused interfaces |
312
- | **DIP (Dependency Inversion)** | Abstracted | Depend on abstractions, not concretions |
313
- | **DRY (Don't Repeat Yourself)** | No duplication | Avoid code duplication across modules |
314
- | **KISS (Keep It Simple)** | Simple solutions | Prefer simple over complex implementations |
315
- | **YAGNI** | No unused code | Don't implement features until needed |
316
- | **Modular Design** | Cohesive modules | Code organized into focused, reusable modules |
317
- | **Naming Conventions** | Consistent | Follow language-specific naming conventions |
318
- | **Import Organization** | Grouped | Imports organized by type (stdlib, external, internal) |
319
-
320
- ### KISS Principle Assessment
321
-
322
- | Check | Threshold | Description |
323
- |-------|-----------|-------------|
324
- | Avoid Over-Engineering | No unnecessary abstractions | Don't add layers without clear benefit |
325
- | Straightforward Logic | Linear flow preferred | Avoid convoluted control flow |
326
- | Minimal Dependencies | Only necessary imports | Don't import unused libraries |
327
- | Clear Intent | Self-documenting code | Code should express intent without excessive comments |
328
- | Simple Data Structures | Use built-in types | Avoid custom types when built-ins suffice |
329
-
330
- ### Modular Design Assessment
331
-
332
- | Check | Threshold | Description |
333
- |-------|-----------|-------------|
334
- | **Module Cohesion** | High cohesion | Related functions grouped in same module |
335
- | **Module Coupling** | Loose coupling | Modules minimize dependencies on each other |
336
- | **Single Entry Point** | One public API | Each module has clear public interface |
337
- | **Folder Structure** | Logical grouping | Files organized by feature or layer |
338
- | **Reusability** | Portable modules | Modules can be reused in different contexts |
339
- | **Testability** | Independently testable | Each module can be tested in isolation |
340
-
341
- **Modular Design Patterns:**
342
-
343
- | Pattern | When to Apply | Example |
344
- |---------|---------------|---------|
345
- | Feature Modules | Large files > 800 lines | Split `app.py` → `routes/api.py`, `routes/views.py` |
346
- | Service Layer | Business logic mixed with routes | Extract to `services/` folder |
347
- | Component Split | UI file > 500 lines | Split into sub-components |
348
- | Utility Extraction | Repeated helper functions | Create `utils/` or `lib/` folder |
349
-
350
- ### Code Smell Detection
351
-
352
- | Smell | Detection Rule | Severity |
353
- |-------|----------------|----------|
354
- | God Class | Class > 500 lines OR > 20 methods | High |
355
- | Long Method | Function > 50 lines | Medium |
356
- | Large File | File > 800 lines | Medium |
357
- | Deep Nesting | > 4 levels of indentation | Medium |
358
- | Too Many Parameters | Function > 5 parameters | Low |
359
- | Magic Numbers | Hardcoded values without constants | Low |
360
- | Dead Code | Unused functions/variables | Low |
361
- | Duplicate Code | Similar code blocks > 10 lines | Medium |
362
-
363
- ---
364
-
365
- ## Evaluation Procedures
370
+ See [references/evaluation-principles.md](references/evaluation-principles.md) for complete evaluation principles, thresholds, and score calculation formulas.
366
371
 
367
- ### Procedure: Evaluate Requirements Alignment
368
-
369
- ```
370
- 1. LOCATE requirement docs:
371
- - x-ipe-docs/requirements/requirement-summary.md
372
- - x-ipe-docs/requirements/requirement-details.md
373
- - Any docs referencing feature
374
-
375
- 2. FOR EACH requirement related to feature:
376
- a. CHECK if requirement is documented
377
- b. CHECK if requirement is implemented in code
378
- c. IDENTIFY deviations between doc and implementation
379
-
380
- 3. CLASSIFY gaps:
381
- - undocumented: Implemented but not in requirements
382
- - unimplemented: In requirements but not implemented
383
- - deviated: Implementation differs from requirement
384
-
385
- 4. ASSIGN severity:
386
- - high: Core functionality affected
387
- - medium: Secondary functionality affected
388
- - low: Minor/edge cases
389
- ```
390
-
391
- ### Procedure: Evaluate Specification Alignment
392
-
393
- ```
394
- 1. LOCATE specification:
395
- - x-ipe-docs/requirements/FEATURE-XXX/specification.md
396
-
397
- 2. IF specification exists:
398
- a. EXTRACT expected behaviors
399
- b. COMPARE with actual implementation
400
- c. IDENTIFY gaps (missing | outdated | incorrect)
401
-
402
- 3. IF specification missing (empty feature folder):
403
- a. CHECK if any related implementation exists in codebase
404
- b. IF no implementation found:
405
- - status: planned
406
- - NOT a gap - just indicates future work needed
407
- - Do NOT count as critical or high priority gap
408
- c. IF implementation exists without specification:
409
- - status: not_found
410
- - Add gap: "Implementation exists but specification missing"
411
- - severity: medium (documentation debt)
412
- ```
413
-
414
- ### Procedure: Evaluate Test Coverage
415
-
416
- ```
417
- 1. IDENTIFY test files for feature:
418
- - tests/**/test_*{feature_name}*
419
- - tests/**/*{feature_name}*_test.*
420
-
421
- 2. RUN coverage analysis:
422
- - Python: pytest --cov
423
- - Node.js: npm test -- --coverage
424
- - Go: go test -cover
425
-
426
- 3. EXTRACT metrics:
427
- - Line coverage %
428
- - Branch coverage %
429
- - Untested functions/areas
430
-
431
- 4. IDENTIFY critical untested areas:
432
- - Business logic paths
433
- - Error handlers
434
- - Edge cases
435
-
436
- 5. DETERMINE status:
437
- - sufficient: ≥80% line coverage, no critical gaps
438
- - insufficient: <80% or has critical gaps
439
- - no_tests: No test files found
440
- ```
441
-
442
- ### Procedure: Evaluate Code Alignment
443
-
444
- ```
445
- 1. LOCATE technical design:
446
- - x-ipe-docs/requirements/FEATURE-XXX/technical-design.md
447
-
448
- 2. IF technical design exists:
449
- a. EXTRACT expected:
450
- - File structure
451
- - Component interfaces
452
- - Data models
453
- b. COMPARE with actual implementation
454
- c. IDENTIFY gaps:
455
- - structure: File/folder organization differs
456
- - behavior: Logic differs from design
457
- - interface: API/interface differs
458
-
459
- 3. DETERMINE status:
460
- - aligned: No significant gaps
461
- - drifted: Minor gaps exist
462
- - major_drift: Critical gaps exist
463
- ```
464
-
465
- ### Procedure: Generate Refactoring Suggestions
466
-
467
- **Integrates with:** `task-type-refactoring-analysis` skill
468
-
469
- ```
470
- 1. ANALYZE gaps from all 4 perspectives:
471
- - Collect all gaps with severity high/medium
472
- - Group gaps by feature
473
-
474
- 2. FOR EACH feature with gaps:
475
- a. IDENTIFY applicable principles (from task-type-refactoring-analysis):
476
- - Large files/classes → SRP, SOLID
477
- - Duplicated code → DRY
478
- - Complex logic → KISS
479
- - Unused code → YAGNI
480
- - Mixed concerns → SoC (Separation of Concerns)
481
-
482
- b. FORMULATE goals based on gaps:
483
- - requirements gaps → Suggest documentation sync or code alignment
484
- - specification gaps → Suggest spec update or implementation fix
485
- - test coverage gaps → Suggest test-first approach
486
- - code alignment gaps → Suggest structural refactoring
487
-
488
- c. DEFINE target structure:
489
- - Describe desired code organization after fixes
490
- - Note key structural changes needed
491
-
492
- d. IDENTIFY constraints:
493
- - Backward compatibility requirements
494
- - API stability requirements
495
- - Dependencies to preserve
496
-
497
- 3. COMPILE refactoring_suggestion for feature:
498
- summary: "<derived from gap analysis>"
499
- goals:
500
- - goal: "<specific goal from gap>"
501
- priority: <based on gap severity>
502
- rationale: "<from gap description>"
503
- target_structure: "<desired end state>"
504
-
505
- principles:
506
- primary: [<principles with applications>]
507
- secondary: [<supporting principles>]
508
- constraints: [<identified constraints>]
509
-
510
- 4. IF no gaps found for feature:
511
- - Set has_suggestions: false for that feature
512
- - Skip suggestion generation
513
- ```
372
+ **Key Thresholds:**
373
+ - Test Line Coverage: ≥ 80%
374
+ - File Size: ≤ 800 lines
375
+ - Function Size: ≤ 50 lines
376
+ - Tracing Coverage: ≥ 90%
514
377
 
515
378
  ---
516
379
 
517
- ## Score Calculation
518
-
519
- ### Feature Score (1-10)
520
-
521
- ```
522
- feature_score = weighted_average(
523
- requirements_alignment: weight=0.25,
524
- specification_alignment: weight=0.25,
525
- test_coverage: weight=0.25,
526
- code_alignment: weight=0.25
527
- )
528
-
529
- Status to score mapping:
530
- - aligned/sufficient: 10
531
- - planned: N/A (exclude from scoring - future work)
532
- - needs_update/insufficient: 5
533
- - not_found/no_tests/major_drift: 2
534
- - critical: 1
535
-
536
- Note: Features with status "planned" (empty folder, no implementation)
537
- are EXCLUDED from overall score calculation as they represent future
538
- work, not quality issues.
539
- ```
540
-
541
- ### Overall Score (1-10)
542
-
543
- ```
544
- overall_score = average(all feature_scores WHERE status != "planned")
545
- ```
546
-
547
- ### Health Status
380
+ ## Evaluation Procedures
548
381
 
549
- ```
550
- IF overall_score >= 8: healthy
551
- ELSE IF overall_score >= 5: attention_needed
552
- ELSE: critical
553
- ```
382
+ See [references/evaluation-procedures.md](references/evaluation-procedures.md) for detailed step-by-step procedures for each evaluation perspective:
383
+ - Requirements Alignment
384
+ - Specification Alignment
385
+ - Test Coverage
386
+ - Code Alignment
387
+ - Tracing Coverage
388
+ - Security Evaluation
389
+ - Refactoring Suggestions
554
390
 
555
391
  ---
556
392
 
@@ -578,6 +414,7 @@ Template structure:
578
414
  | 4 | Overall score calculated | Yes |
579
415
  | 5 | Report generated in correct location | Yes |
580
416
  | 6 | Latest report link updated | Yes |
417
+ | 7 | Report self-review completed (check for problems or missing content) | Yes |
581
418
 
582
419
  ---
583
420