empathy-framework 3.9.0__py3-none-any.whl → 3.9.2__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 (45) hide show
  1. {empathy_framework-3.9.0.dist-info → empathy_framework-3.9.2.dist-info}/METADATA +44 -3
  2. {empathy_framework-3.9.0.dist-info → empathy_framework-3.9.2.dist-info}/RECORD +42 -45
  3. empathy_healthcare_plugin/monitors/monitoring/__init__.py +9 -9
  4. empathy_llm_toolkit/agent_factory/__init__.py +6 -6
  5. empathy_llm_toolkit/agent_factory/adapters/crewai_adapter.py +4 -1
  6. empathy_llm_toolkit/agent_factory/framework.py +2 -1
  7. empathy_llm_toolkit/config/__init__.py +8 -8
  8. empathy_llm_toolkit/security/__init__.py +17 -17
  9. empathy_os/adaptive/__init__.py +3 -3
  10. empathy_os/cli.py +5 -8
  11. empathy_os/cli_unified.py +1 -1
  12. empathy_os/memory/__init__.py +30 -30
  13. empathy_os/memory/control_panel.py +3 -1
  14. empathy_os/memory/long_term.py +3 -1
  15. empathy_os/models/__init__.py +48 -48
  16. empathy_os/monitoring/__init__.py +7 -7
  17. empathy_os/optimization/__init__.py +3 -3
  18. empathy_os/pattern_library.py +2 -7
  19. empathy_os/plugins/__init__.py +6 -6
  20. empathy_os/resilience/__init__.py +5 -5
  21. empathy_os/scaffolding/cli.py +1 -1
  22. empathy_os/telemetry/cli.py +56 -13
  23. empathy_os/telemetry/usage_tracker.py +2 -5
  24. empathy_os/test_generator/generator.py +1 -0
  25. empathy_os/tier_recommender.py +36 -76
  26. empathy_os/trust/__init__.py +7 -7
  27. empathy_os/validation/__init__.py +3 -3
  28. empathy_os/workflow_patterns/output.py +1 -1
  29. empathy_os/workflow_patterns/structural.py +4 -4
  30. empathy_os/workflows/base.py +4 -1
  31. empathy_os/workflows/code_review_pipeline.py +1 -5
  32. empathy_os/workflows/dependency_check.py +1 -5
  33. empathy_os/workflows/keyboard_shortcuts/__init__.py +5 -5
  34. empathy_os/workflows/tier_tracking.py +39 -29
  35. empathy_software_plugin/cli.py +1 -3
  36. empathy_software_plugin/wizards/code_review_wizard.py +1 -3
  37. empathy_software_plugin/wizards/debugging/__init__.py +4 -4
  38. empathy_software_plugin/wizards/security/__init__.py +6 -6
  39. empathy_os/.empathy/costs.json +0 -60
  40. empathy_os/.empathy/discovery_stats.json +0 -15
  41. empathy_os/.empathy/workflow_runs.json +0 -45
  42. {empathy_framework-3.9.0.dist-info → empathy_framework-3.9.2.dist-info}/WHEEL +0 -0
  43. {empathy_framework-3.9.0.dist-info → empathy_framework-3.9.2.dist-info}/entry_points.txt +0 -0
  44. {empathy_framework-3.9.0.dist-info → empathy_framework-3.9.2.dist-info}/licenses/LICENSE +0 -0
  45. {empathy_framework-3.9.0.dist-info → empathy_framework-3.9.2.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: empathy-framework
3
- Version: 3.9.0
3
+ Version: 3.9.2
4
4
  Summary: AI collaboration framework with intelligent caching (up to 57% cache hit rate), tier routing (34-86% cost savings depending on task complexity), XML-enhanced prompts, persistent memory, CrewAI integration, and multi-agent orchestration. Includes HIPAA-compliant healthcare wizards.
5
5
  Author-email: Patrick Roebuck <admin@smartaimemory.com>
6
6
  Maintainer-email: Smart-AI-Memory <admin@smartaimemory.com>
@@ -368,7 +368,48 @@ Dynamic: license-file
368
368
  pip install empathy-framework[developer] # Lightweight for individual developers
369
369
  ```
370
370
 
371
- ## What's New in v3.8.3 (Current Release)
371
+ ## What's New in v3.9.0 (Current Release)
372
+
373
+ ### 🔒 **Security Hardening: 174 Security Tests (Up from 14)**
374
+
375
+ **Production-ready security with comprehensive file path validation across the entire framework.**
376
+
377
+ - ✅ **6 modules secured** with Pattern 6 (File Path Validation)
378
+ - ✅ **13 file write operations** validated to prevent path traversal (CWE-22)
379
+ - ✅ **174 security tests** (100% passing) - up from 14 tests (+1143% increase)
380
+ - ✅ **Zero blind exception handlers** - all errors now properly typed and logged
381
+
382
+ ```python
383
+ # All file writes now validated for security
384
+ from empathy_os.config import EmpathyConfig
385
+
386
+ config = EmpathyConfig(user_id="alice")
387
+ config.to_yaml("/etc/passwd") # ❌ ValueError: Cannot write to system directory
388
+ config.to_yaml("./empathy.yml") # ✅ Safe write
389
+ ```
390
+
391
+ **Attack vectors blocked:**
392
+
393
+ - Path traversal: `../../../etc/passwd` → `ValueError`
394
+ - Null byte injection: `config\x00.json` → `ValueError`
395
+ - System directory writes: `/etc`, `/sys`, `/proc`, `/dev` → All blocked
396
+
397
+ See [SECURITY.md](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/SECURITY.md) for complete security documentation.
398
+
399
+ ### 🛡️ **Exception Handling Improvements**
400
+
401
+ **Better error messages with graceful degradation.**
402
+
403
+ - Fixed 8 blind `except Exception:` handlers in workflow base
404
+ - Specific exception types for better debugging
405
+ - Enhanced error logging while maintaining graceful degradation
406
+ - All intentional broad catches documented with design rationale
407
+
408
+ ---
409
+
410
+ ### Previous Releases
411
+
412
+ #### v3.8.3
372
413
 
373
414
  ### 🎯 **Transparent Cost Claims: Honest Role-Based Savings (34-86%)**
374
415
 
@@ -413,7 +454,7 @@ empathy telemetry export --format csv --output usage.csv
413
454
 
414
455
  ---
415
456
 
416
- ### Previous Release: v3.7.0
457
+ #### v3.7.0
417
458
 
418
459
  #### 🚀 **XML-Enhanced Prompting: 15-35% Token Reduction + Graceful Validation**
419
460
 
@@ -20,11 +20,11 @@ coach_wizards/refactoring_wizard.py,sha256=X0MTx3BHpOlOMAYDow-3HX5GyryY70JGAF5vA
20
20
  coach_wizards/scaling_wizard.py,sha256=n1RLtpWmj1RSEGSWssMiUPwCdpskO3z2Z3yhLlTdXro,2598
21
21
  coach_wizards/security_wizard.py,sha256=19SOClSxo6N-QqUc_QsFXOE7yEquiZF4kLi7jRomA7g,2605
22
22
  coach_wizards/testing_wizard.py,sha256=vKFgFG4uJfAVFmCIQbkrWNvZhIfLC6ve_XbvWZKrPg4,2563
23
- empathy_framework-3.9.0.dist-info/licenses/LICENSE,sha256=IJ9eeI5KSrD5P7alsn7sI_6_1bDihxBA5S4Sen4jf2k,4937
23
+ empathy_framework-3.9.2.dist-info/licenses/LICENSE,sha256=IJ9eeI5KSrD5P7alsn7sI_6_1bDihxBA5S4Sen4jf2k,4937
24
24
  empathy_healthcare_plugin/__init__.py,sha256=4NioL1_86UXzkd-QNkQZUSZ8rKTQGSP0TC9VXP32kQs,295
25
25
  empathy_healthcare_plugin/monitors/__init__.py,sha256=Udp8qfZR504QAq5_eQjvtIaE7v06Yguc7nuF40KllQc,196
26
26
  empathy_healthcare_plugin/monitors/clinical_protocol_monitor.py,sha256=GkNh2Yuw9cvuKuPh3mriWtKJZFq_sTxBD7Ci8lFV9gQ,11620
27
- empathy_healthcare_plugin/monitors/monitoring/__init__.py,sha256=UW9f-n0T_ra8HRiY5Vh8AlSVOlaZrC0KHT3ssghwAX4,1295
27
+ empathy_healthcare_plugin/monitors/monitoring/__init__.py,sha256=7sYYoXqKXxCNK00bXRPjWNMuZZpAgD8b5VLz-QubOlc,1052
28
28
  empathy_healthcare_plugin/monitors/monitoring/protocol_checker.py,sha256=u6ASfirDB4d5hUq2lEqgvdQBjZdQzEFjR4g4UuJUeFM,9635
29
29
  empathy_healthcare_plugin/monitors/monitoring/protocol_loader.py,sha256=BXj5vDB3tGDlIbaKEnlIHDl2q4hPxoNNhycMCZyQ54I,6443
30
30
  empathy_healthcare_plugin/monitors/monitoring/sensor_parsers.py,sha256=q3GWA4wGEeZF8FhShv7b0-LNNCPiKy6YR3xXecQet7A,9485
@@ -47,16 +47,16 @@ empathy_llm_toolkit/pattern_summary.py,sha256=gA_rCXgfOT1Kp6FP5f1UZqXPp8_mkYXlAf
47
47
  empathy_llm_toolkit/providers.py,sha256=K5Oz4DOrVIVQZcnjfE2M4d9FmFFZyA8zvAembaRy4bI,19752
48
48
  empathy_llm_toolkit/session_status.py,sha256=a8QPYf8Sp7jnzHkeRNOyXqoj0QwwoVwkvxPXW9qdvgc,25722
49
49
  empathy_llm_toolkit/state.py,sha256=diLXx8QKzfucVDhbKNWej40JXQFmIeM1Qvvzg92pmjU,8030
50
- empathy_llm_toolkit/agent_factory/__init__.py,sha256=JlusqsYjl_1FqW75h-Uikw2al6v56FAfGSHmQ6gMOk0,1759
50
+ empathy_llm_toolkit/agent_factory/__init__.py,sha256=Fxy-z9myQLTpn3fw2cDENItjzfq6SHuFK1PJ1lo9PaI,1471
51
51
  empathy_llm_toolkit/agent_factory/base.py,sha256=LPDM7vftBaqAWGm_06TVed8ww7eu5tH91hBvFerRl6M,8951
52
52
  empathy_llm_toolkit/agent_factory/decorators.py,sha256=sp81P4TqaDUJpZV-WeXgwI-RAGz80BKxodc7NPV6dKY,8691
53
53
  empathy_llm_toolkit/agent_factory/factory.py,sha256=lUzqdZSqv41CX48bmk7tKxkcLVMYTX7a4gvk6Wciprg,18312
54
- empathy_llm_toolkit/agent_factory/framework.py,sha256=nkZfrsfR4U8j2Qo84nwe0sf9X-B_1bVcqG0AZIiGW3U,5967
54
+ empathy_llm_toolkit/agent_factory/framework.py,sha256=cgDJpwlk3WiBCj8PEdCdz1MBTRFsmN9lpdht5D_HApo,6073
55
55
  empathy_llm_toolkit/agent_factory/memory_integration.py,sha256=2dCjdN8mnKT8CmOPOE-ZMrnh1nChbhVEtlT72JvtDuM,11303
56
56
  empathy_llm_toolkit/agent_factory/resilient.py,sha256=WzXv1gW6GntyyzxguaXHTGz3FcJC9Gt5a__3vNEDfTk,10942
57
57
  empathy_llm_toolkit/agent_factory/adapters/__init__.py,sha256=VCyzcH0fX26-73MORFU-5oSYHVWPcLrrOjZ_RTL6QDk,2385
58
58
  empathy_llm_toolkit/agent_factory/adapters/autogen_adapter.py,sha256=8dmY1QpBLVNpv6rSFTVER4yZigH6yxw1v0ABin7IFzk,10951
59
- empathy_llm_toolkit/agent_factory/adapters/crewai_adapter.py,sha256=Ood-03g3_WqtcsnlsuHcq6QOdyUA_eVxmZNZ5xhUIM0,16056
59
+ empathy_llm_toolkit/agent_factory/adapters/crewai_adapter.py,sha256=VtcdrFZds29NTVhFZotPlkyy5XlmYlKU9ZbZ5sRuBjU,16302
60
60
  empathy_llm_toolkit/agent_factory/adapters/haystack_adapter.py,sha256=dtZaSzs_aUyt6Ik2MFlCIzpZpXUG6quUN5QRPUiivsM,10228
61
61
  empathy_llm_toolkit/agent_factory/adapters/langchain_adapter.py,sha256=wGs61xLpS8rU5hdzctj4hiMee2HSZGYTo1OJE_2df9A,13225
62
62
  empathy_llm_toolkit/agent_factory/adapters/langgraph_adapter.py,sha256=9KWbe572uXcg1djs1FbIaPcBV-H9mIjEEGLas8SH72M,11553
@@ -69,7 +69,7 @@ empathy_llm_toolkit/agent_factory/crews/refactoring.py,sha256=kt-PtUxOr4EGa8psna
69
69
  empathy_llm_toolkit/agent_factory/crews/security_audit.py,sha256=Fuv98e-zDNzqqmGGwtEiSYgyBIj3YxdBGL8zui28X1M,36527
70
70
  empathy_llm_toolkit/cli/__init__.py,sha256=-U-ESXUHamUV1vL-4aBfPFdyBysd4PzeiS1W65bDv2U,177
71
71
  empathy_llm_toolkit/cli/sync_claude.py,sha256=4URwY9Sbj3Rixf3RFzI42IuNatkcn8rjnugBWTkbVRM,15647
72
- empathy_llm_toolkit/config/__init__.py,sha256=p1lX8VVKJFDPxmc5uAmbudPkKyGCUj9dwtMZYG41oqg,943
72
+ empathy_llm_toolkit/config/__init__.py,sha256=0aVXpc0O4E8-_CshWxAIl2tyq5nU2NYzjM74b8yUK8w,591
73
73
  empathy_llm_toolkit/config/unified.py,sha256=GWay8ds49Y0mY9Ac0iDXm-9XDDXiFplcsdwIP9VCJjE,9358
74
74
  empathy_llm_toolkit/routing/__init__.py,sha256=Nb8_VUxzWKL7XWnW8OeX91W3WxLf-cbeB1mWeRdslKk,1014
75
75
  empathy_llm_toolkit/routing/model_router.py,sha256=AqpiXHGbmTvHKVgK56sW7FtPkZfW2YYU_PCZVsUwB2U,11033
@@ -78,7 +78,7 @@ empathy_llm_toolkit/security/PHASE2_COMPLETE.md,sha256=o7b0rbhQJCH5IlZOgUzTdCNN1
78
78
  empathy_llm_toolkit/security/PHASE2_SECRETS_DETECTOR_COMPLETE.md,sha256=n8b4EhPM3Pj0WrVlRIWa23ig7SaO8HWTDik6WO1O3NI,10109
79
79
  empathy_llm_toolkit/security/QUICK_REFERENCE.md,sha256=TfeaFYcD83_Z9rIwX-SYBmurlJoGfETjXUfGCeCr3jk,7683
80
80
  empathy_llm_toolkit/security/README.md,sha256=9U3jgB6P7FLnAbmpwRYHWhPte1K-jivbmc2OR2m54KE,7445
81
- empathy_llm_toolkit/security/__init__.py,sha256=ww4X97QNdDU2h5mFF38vywBpoWUG_G0BCwNV7Ubpj_M,2148
81
+ empathy_llm_toolkit/security/__init__.py,sha256=_aL_Nmn7sDQNJaRl9tVaXVnP684XyMG-2-ofVDzyTQU,1519
82
82
  empathy_llm_toolkit/security/audit_logger.py,sha256=pSZEDukI1vFnefe7F48xQ63HpvM1slWrrl1BPhoi_kY,33956
83
83
  empathy_llm_toolkit/security/audit_logger_example.py,sha256=jEtwM1i_dZ73ypKkdVumAB2yDOziQN41xrOrtu8OXF4,5009
84
84
  empathy_llm_toolkit/security/pii_scrubber.py,sha256=ucPdE_ZEObR3T8hPK--tabdzLDumZQV4YUfislELvCc,21563
@@ -95,8 +95,8 @@ empathy_llm_toolkit/wizards/patient_assessment_wizard.py,sha256=dsvoOq0AYCBigmn6
95
95
  empathy_llm_toolkit/wizards/technology_wizard.py,sha256=8hQirzzGQp7UVtj1hFCoaoLLtqAtx9HFf4mdUWV1xH0,7533
96
96
  empathy_os/__init__.py,sha256=29Xhv1VoZUwu7HTEHeVzjMtkWbyHaAcbUh4eZSQKJnU,5896
97
97
  empathy_os/agent_monitoring.py,sha256=s4seLC_J4AtQ3PYWrRPO8YHM-Fbm0Q36kPEdlTHf2HI,13375
98
- empathy_os/cli.py,sha256=3QAhea4j2ISKq9mjd4XmY2sHSHtz4ZprOwf-_bfzKy0,110301
99
- empathy_os/cli_unified.py,sha256=Ab96NmQWbX53Uilc9u_8vFvtC3lunkyHceoXGdDwckM,23540
98
+ empathy_os/cli.py,sha256=wT131LYtNskfOu8thDjrv724UXyjaRUuuFmylZqr_YM,110271
99
+ empathy_os/cli_unified.py,sha256=i8tEnXmMyqegLJ4Yggd_GU9XO3AAyPQuV5i_DT1F6M8,23539
100
100
  empathy_os/config.py,sha256=nMzv4MJa4AiasMsip4z2zf11Dt-XigwHnXmyskUFbio,16172
101
101
  empathy_os/coordination.py,sha256=E2HvHxKk1xbYswtgxhnVKB6DRxfXUV5pCt-XWHOvNKM,28509
102
102
  empathy_os/core.py,sha256=PvrPs8JQPwQjPZZQj6zy6xQTFGHKziaeRxCIlIs3iHA,52951
@@ -108,20 +108,17 @@ empathy_os/feedback_loops.py,sha256=MjraZ_f2JpuYLRUYtC2XQH2cZelE7_OsklrEcwJqmkY,
108
108
  empathy_os/levels.py,sha256=KsdNdRURRl1UtCnduWSunzktP_qsFT4lemSPKgWdmXw,19131
109
109
  empathy_os/leverage_points.py,sha256=LVYtvd260bjt-j4IuZRyhE7z1pX4P3D0ocWIDOGC1V4,16717
110
110
  empathy_os/logging_config.py,sha256=HecUoSF0QCgtr3_1czz9EoedcG0gAYNmq7Hc8lDxG1Y,8102
111
- empathy_os/pattern_library.py,sha256=7pdrB6E13idBtARxqVU3dHgDpb9x1DBvBi_LYr1jSks,16602
111
+ empathy_os/pattern_library.py,sha256=eL7hmOrUfxLCyBAGd1jkDqchNvcblpnLKxdUEVVRIKE,16548
112
112
  empathy_os/persistence.py,sha256=ooW-Nu-vANpJn4AQGpRGapIIIoFbgwohUvNrpozSA-M,17547
113
113
  empathy_os/platform_utils.py,sha256=VXv3IgK0ykKCBJlsxB4xSwJQteKu3Ds-1UDmHl9fHmo,7256
114
114
  empathy_os/redis_config.py,sha256=6khRnNSA3gljmrH4w38h5nrVUfA8DvXRFbDXAJVzl6o,9754
115
115
  empathy_os/redis_memory.py,sha256=e8cqZtcnVGLCAI4sgv5zzoZB9xo-UPwJQ8gzbEKWnwM,23119
116
116
  empathy_os/templates.py,sha256=uSJQbHE55R8kuuvEyPLxTxFPXstybrsKvGOhhiy93sE,17047
117
- empathy_os/tier_recommender.py,sha256=zmZjO4PoIKf_oPFhrJTbGMcjLJiOc4aYfTPVquhCjPY,14570
117
+ empathy_os/tier_recommender.py,sha256=bo69PuKO_3OxafX3-alPWhOuqY03NifrL6jPWPaAXM4,14144
118
118
  empathy_os/trust_building.py,sha256=plCmSQSzgU2ryMMmJqawQ4l7fIoFmwsx53BDYQv4jhU,18836
119
119
  empathy_os/wizard_factory_cli.py,sha256=BMOOTIKf9bAVOuvtHi_HgkIBqnLpLBCkuvA51kxV9iI,4756
120
120
  empathy_os/workflow_commands.py,sha256=PqzpsXVB7Vk2raMbSYTDICETb1PZJ4u7IXb7HQdKSYo,25174
121
- empathy_os/.empathy/costs.json,sha256=wiADvArdcJW4OwTIYpwbo1NePyT3AOl5cwEyuYmA2zs,1617
122
- empathy_os/.empathy/discovery_stats.json,sha256=oaG4L2x0oPgrVqlXV5Kpsq_MngF2FWE6JysSvzvNUFM,310
123
- empathy_os/.empathy/workflow_runs.json,sha256=G1pnaYJeQJTZcs6IqcAX1IxXVGjA9PvSP60YWRhcYJc,972
124
- empathy_os/adaptive/__init__.py,sha256=slgz00rOK-9bTENJod7fu5mxNiAc8eOJaBN6hQmAnZo,477
121
+ empathy_os/adaptive/__init__.py,sha256=07m_Gsdxmm9mDBjJRFz7a8wZK-Tdd2QFRQOUw6yCc1w,342
125
122
  empathy_os/adaptive/task_complexity.py,sha256=XhQgubrTxqV2V6CBD4kKZ_0kPCjchzg94HaUFIY6Q3c,3783
126
123
  empathy_os/cache/__init__.py,sha256=nKHyWnQmyBU6f24UOq5iZ4ULUFys5Dhl6dFZlU0jlHU,3232
127
124
  empathy_os/cache/base.py,sha256=1waj2OZ_5gRhwYhSfsSfgQs1N_ftZcAq6UAV9RctSek,3968
@@ -140,13 +137,13 @@ empathy_os/hot_reload/integration.py,sha256=R-gRov0aqbnyAOE4Zcy-L8mPkFK4-riUy2kI
140
137
  empathy_os/hot_reload/reloader.py,sha256=akqz5t9nn5kc-yj1Dj2NuyPO1p1cWaAhUf-CVlr0XRE,9365
141
138
  empathy_os/hot_reload/watcher.py,sha256=zmfemQzA94IrO86A6tjYm-Skg5rBAz0mnX8t1hTBbao,4978
142
139
  empathy_os/hot_reload/websocket.py,sha256=YjqmzGfQHtBwnXqgc5dz3sXHFvcts51KGW8qxqf5dQE,5027
143
- empathy_os/memory/__init__.py,sha256=hPilu3_MoxAcwYkNGLuG9OOUkNLQIkZcxh7EYEyC8UQ,5418
140
+ empathy_os/memory/__init__.py,sha256=QwxOpVux5AKBBEZRHs7FoE39JVdWlJQ6WCAm00Cy3C8,4908
144
141
  empathy_os/memory/claude_memory.py,sha256=IIwm3su_vyyyoLy4NrpwVk96KLnIgq1A_TfBhjcUZk4,14878
145
142
  empathy_os/memory/config.py,sha256=EoBBZLgyY5sHT3kLeyWjyI4b6hRA3Xiaoo3xdMLLGos,6380
146
- empathy_os/memory/control_panel.py,sha256=PfFqeWzRu3txZoNn9QUeJJtkna-MiRafdK6rjzqXlrk,47302
143
+ empathy_os/memory/control_panel.py,sha256=ylU2RODUIXQSMhBLcqPI5KkOAOpcmuABVcd2AleeSaw,47334
147
144
  empathy_os/memory/edges.py,sha256=ljku2CYeetJ7qDnQUJobrPZdBaYFxkn_PfGSNa9sVDE,5891
148
145
  empathy_os/memory/graph.py,sha256=Up4PCG8BbK5fmGym7rNEPZsCNjS7TQ3_F9-S6-mS2L4,18820
149
- empathy_os/memory/long_term.py,sha256=df133XF3HjOmPhw4XbfJyKq-jgsEil46v5PK-Q5vvUk,41709
146
+ empathy_os/memory/long_term.py,sha256=b3U8FcYbUOOxWMabeixuoaPX8QdcaF3UqscjRv2eVv0,41747
150
147
  empathy_os/memory/nodes.py,sha256=lVLN9pp8cFSBrO2Nh8d0zTOglM3QBaYCtwfO5P8dryc,4752
151
148
  empathy_os/memory/redis_bootstrap.py,sha256=G71loEE2LTcn0BCp_mN96Bk37ygFz1ImORiLoEmg9jA,16508
152
149
  empathy_os/memory/short_term.py,sha256=z_-p9dkGsDdXf1PE_ep6vSOC1rDvmlSP5XfWv4PKZJc,71310
@@ -159,7 +156,7 @@ empathy_os/memory/security/secrets_detector.py,sha256=bJsXTD95yEnfShDMxvCndzF8X7
159
156
  empathy_os/memory/storage/__init__.py,sha256=sPLdecYJ1z6nZTIl8gmbozjdCPp0SZLKsKoi8L1xhcE,480
160
157
  empathy_os/metrics/__init__.py,sha256=b0lkly5Fz89AvvGqV6lLYx8hWlmttL1ZCPuWlHjwXxY,369
161
158
  empathy_os/metrics/prompt_metrics.py,sha256=9ZUxM5zJX7v9MxKbDfuP4zWdFKy2sNZO6zRdSELZgTo,6315
162
- empathy_os/models/__init__.py,sha256=eiye4bxpomWLrsVO-p7-WvH2p49MruuYLFgfCxqks7o,3948
159
+ empathy_os/models/__init__.py,sha256=Mx1U5FLOxZIOT9yATZ7YxBgfXxCwDtvY-_cINYLwyNA,3036
163
160
  empathy_os/models/__main__.py,sha256=V7uZJ_XT__ROZsmnEI4-U7hNsOH1oqzfnWb2o6xJ0g4,296
164
161
  empathy_os/models/cli.py,sha256=15dEhizw9W7cjQhHguOmmP1gE8vB-JhK4iy7lpmnhD0,22212
165
162
  empathy_os/models/empathy_executor.py,sha256=8SBygcB1NlLI89DYjAJqbumcscIwK_noArm7_yjwQ2U,12709
@@ -171,17 +168,17 @@ empathy_os/models/tasks.py,sha256=XyS0IN6kadLpyC26sMiX9FEXgfP2j57AYPJO2oH4sKU,86
171
168
  empathy_os/models/telemetry.py,sha256=BLtmbs90tO59WQhA_AKeL4saQZqbjhVZdfQLJB92oxY,16653
172
169
  empathy_os/models/token_estimator.py,sha256=hUeWH0oJvp2UbYRLMsgDBGQRzICfLQxzPi_rsqP6fkE,12576
173
170
  empathy_os/models/validation.py,sha256=K7Pki8jKmQ3zKG2CSJtx4Bv7cfn9l5g6aIxXWdMA4cs,8925
174
- empathy_os/monitoring/__init__.py,sha256=QvLHi0_HeTsKEDTM4VS8U6MMuMy0KT_FBK55FOBJ_6c,1766
171
+ empathy_os/monitoring/__init__.py,sha256=efAzUX0DYeUTGEES-MV6jI4iUYmhH-RkQYnVLnjSl-M,1507
175
172
  empathy_os/monitoring/alerts.py,sha256=zY6vNaY5zSLi_yNfjBgXWkYL3HTQiPv7p-IHwK3usVE,663
176
173
  empathy_os/monitoring/alerts_cli.py,sha256=AmKKr8o5e6x1jMSVWYCOn-Javwmjx61Cos8Fq05KkNo,7714
177
174
  empathy_os/monitoring/multi_backend.py,sha256=3w8TYUezwUtcieA9p4lWrsyIp_jVYAsPaYJ8fiNQMCc,8472
178
175
  empathy_os/monitoring/otel_backend.py,sha256=SwqZmEvSMJuhbNBeupGpYp9YrtUeq4KdWiXt7BMxmSw,13602
179
- empathy_os/optimization/__init__.py,sha256=wyZ-tjxxqidiUtOr2ZLR1UG8zZ_c6Kh11TrsDb9hxV4,575
176
+ empathy_os/optimization/__init__.py,sha256=p9dPGmci7MIASss38ctLpKTl_tV8ApkcyPZovE1EUMA,422
180
177
  empathy_os/optimization/context_optimizer.py,sha256=lPWXuG7K1OMVNZKOdQT2SlZhLfjMREKSp5pCPQibXpk,8048
181
178
  empathy_os/patterns/refactoring_memory.json,sha256=nk7Bh2QE8Zm4iz3nxzARYiqzBWqZrKXhypDHPC63f_U,2995
182
179
  empathy_os/patterns/debugging/all_patterns.json,sha256=0nxtlmJzqAn2fV162OgoTWtWXiJNzcZ04_uIRaUqC6U,2283
183
180
  empathy_os/patterns/debugging/workflow_20260107_1770825e.json,sha256=hfXZX3baBGXrVfESgze6JcIDL60TCQdE8k_4uZ0fKcw,1951
184
- empathy_os/plugins/__init__.py,sha256=sakFxwIP_qaKQdBQBgCpicDU3R056jO_09DhI485Yr0,672
181
+ empathy_os/plugins/__init__.py,sha256=WGiW5Ey82ZvJNz6_SqORIShqJFGv_sfaPvkbN9F1Czo,582
185
182
  empathy_os/plugins/base.py,sha256=jb53WyS8LHPLVaMTs8eaSCRxky2r8N3zqxQha5sXguc,13001
186
183
  empathy_os/plugins/registry.py,sha256=3MfS618FpmzKw6Xtiib1VX7Jt7I6Pyj_ZgCsvaVTDD0,8055
187
184
  empathy_os/project_index/__init__.py,sha256=A5hb18Y0DtQUY-XFC8O5Y6o-Ao0fYluT93SR5DzycLM,732
@@ -197,7 +194,7 @@ empathy_os/prompts/context.py,sha256=W6u6P5oXrZb3a0vBaAkQovQh9SpPSIzZLNmw_ADqFUw
197
194
  empathy_os/prompts/parser.py,sha256=tcv7Rnk2CLs9HzrP2ivSa4INcG1O_hcGu8Mz_CajFtU,9511
198
195
  empathy_os/prompts/registry.py,sha256=njqiDhtifdtNpAQQLx4W3KGCY4SyHFJ7D39dvdWs3U0,9675
199
196
  empathy_os/prompts/templates.py,sha256=hxW1tiswqdYABITFc3UHwEz9FzYQ0Y961svZLcEFjnk,6231
200
- empathy_os/resilience/__init__.py,sha256=sXvVD6GzTRGo2P_2oMOBPOmHlIuQWMXkqbEfol6VnG0,1469
197
+ empathy_os/resilience/__init__.py,sha256=tovO6t1rTj-CuCbeNFoh5Wl_O6qkr2meYB7X-r42IyI,1339
201
198
  empathy_os/resilience/circuit_breaker.py,sha256=J027bGta111L45G1G_9zgy8Vz7bSjgH0JX5dt_-t30E,8865
202
199
  empathy_os/resilience/fallback.py,sha256=A556PAVsfc1q3g-__gCNjnLdH0PpNKg9EukLk2FP3Ik,5664
203
200
  empathy_os/resilience/health.py,sha256=btBhdAv7Wat46opmh-WSWYf9nZyqNBBYN1RZEbjuHdA,9308
@@ -211,33 +208,33 @@ empathy_os/routing/wizard_registry.py,sha256=gXg-HfDhR0UXYvth92f-FHSdLtvVEfwgrgj
211
208
  empathy_os/scaffolding/README.md,sha256=VwSG36Cr0WH8Gep1-Dd9tPEzRLCra1KhqsNJQnjbll4,15949
212
209
  empathy_os/scaffolding/__init__.py,sha256=-fqOQ0E3lb--D-0vic8d_1I1xiHeJiyKEHWpZvhz-Rk,977
213
210
  empathy_os/scaffolding/__main__.py,sha256=r-lWXicNLuTgliqw28yDV3PxX8SdX8fg4jm55RxmElo,280
214
- empathy_os/scaffolding/cli.py,sha256=LGqQnrFqwWZPz196bDtuDzLoc8IAvTM49JF2fcfpTuA,6714
211
+ empathy_os/scaffolding/cli.py,sha256=2UxU_JUgtAuCkMXe9f2zYFbkMMtjk5DIOae5NjPC3yo,6700
215
212
  empathy_os/telemetry/__init__.py,sha256=6ZFO0r4I-WIE9BByVsKwyGFsGg-UEy3-OZNofHSr54A,263
216
- empathy_os/telemetry/cli.py,sha256=t-0E7GXwP1YE_df-kwXth-F7_iQ8Oea2UhXQAApjJxo,16414
217
- empathy_os/telemetry/usage_tracker.py,sha256=acRhJyovJDoWXGsRFzwQcN83MnCS_gL4mH4hv2ncAeM,16714
213
+ empathy_os/telemetry/cli.py,sha256=sPYTUUkAvnNBu5RMn-jbMsTr7nFx9P_0sGHWOWTrIls,16903
214
+ empathy_os/telemetry/usage_tracker.py,sha256=qym1FzvWmUi-61kugASITAUR7Fbjoxi1zQGNz8ZHkrI,16678
218
215
  empathy_os/test_generator/__init__.py,sha256=d7grN2uxoRqcTsiZAC-kgEad48Z9rDunOZ6TycS3fy4,913
219
216
  empathy_os/test_generator/__main__.py,sha256=YY_HE1xg4zKZkHHAd6sSzWvJCvLFOtmpawCrNlGjWAc,345
220
217
  empathy_os/test_generator/cli.py,sha256=u8WL1X3reqSYfVGjYiET7fmxqQDIIOzAE5HMQquhl7M,6862
221
- empathy_os/test_generator/generator.py,sha256=uDvG01hJUxbfI-eBIB4SsCxPZnWoNYqSMB3rZt0zem0,9692
218
+ empathy_os/test_generator/generator.py,sha256=w0BXCZg_BphJ4kaA3FkbBC2uZK2xamN4XfWTtlvWdgc,9791
222
219
  empathy_os/test_generator/risk_analyzer.py,sha256=5vEncQDmxUXglZBX9-DdCcsz4yjvuY9IhJGjIfTH9fE,7486
223
- empathy_os/trust/__init__.py,sha256=ou4rlQ3smvivC8b-z-1E0vbqyGnLveRcggf270pTa_E,833
220
+ empathy_os/trust/__init__.py,sha256=tJj5h5mYsfdWg_xmnHPonKZfTycYI3QlXDUQSjRLEtE,651
224
221
  empathy_os/trust/circuit_breaker.py,sha256=VMuVmH_lZ_RB0E-tjE150Qtbk7WnkLQXc-fp_8NR5AQ,20716
225
- empathy_os/validation/__init__.py,sha256=3Mi5H0uzEelapCdbsHskTDPGSTkQXLvxBpfFhrIWfKw,514
222
+ empathy_os/validation/__init__.py,sha256=RXAQL4Ty4zb57zPFk1Ts5duZ_OVrhsKncePDQBe7nYI,379
226
223
  empathy_os/validation/xml_validator.py,sha256=aOr6AZKfjBq-tOKzBSGEl5WU0Ca8S5ewz7Xvcwiy-UQ,8773
227
224
  empathy_os/workflow_patterns/__init__.py,sha256=_-WBXqz2Fhh5lakUFtIDD8ikaxvwugiaicHRf50pIUs,956
228
225
  empathy_os/workflow_patterns/behavior.py,sha256=faYRxqTqRliFBqYP08OptBsJga21n9D8BHAs8B3HK18,8418
229
226
  empathy_os/workflow_patterns/core.py,sha256=H52xnB4IqMdzJpOoySk5s7XcuKNTsqAt1RKpbdz_cyw,2607
230
- empathy_os/workflow_patterns/output.py,sha256=ArpR4D_z5MtRlWCKlKUmSWfXlMw-nkBukM3bYM98-XA,3106
227
+ empathy_os/workflow_patterns/output.py,sha256=EyioUYeXGQWllZdJXHXv2mLwl7fMwihrEb8D1SG6MxE,3090
231
228
  empathy_os/workflow_patterns/registry.py,sha256=0U_XT0hdQ5fLHuEJlrvzjaCBUyeWDA675_hEyvHxT0o,7461
232
- empathy_os/workflow_patterns/structural.py,sha256=nDwWuZYnXbm21Gsr0yMoMQiOcU07VuNlpsUGPyZ2efk,9470
229
+ empathy_os/workflow_patterns/structural.py,sha256=v1wbBU0pCQQKdNhPXM_fuPO8ptQCbEC_8X-OKgfhrk8,9432
233
230
  empathy_os/workflows/__init__.py,sha256=UYXKvpkaLEAGqnMpUHrdR8TZiqmR8k47lpdEs2cs9B0,12022
234
- empathy_os/workflows/base.py,sha256=bDFuKnGxeQYMjkd5FgZeKXsGe9eRnrhcbXXsznnyS1k,66281
231
+ empathy_os/workflows/base.py,sha256=fnKeZXaFfPk6SUKbqV1P7aJVGueFJSd0O32PPoquWG8,66320
235
232
  empathy_os/workflows/bug_predict.py,sha256=Td2XtawwTSqBOOIqlziNXcOt4YRMMeya2W1tFOJKytY,35726
236
233
  empathy_os/workflows/code_review.py,sha256=SWNXSuJ2v4to8sZiHSQ2Z06gVCJ10L1LQr77Jf1SUyM,35647
237
234
  empathy_os/workflows/code_review_adapters.py,sha256=9aGUDAgE1B1EUJ-Haz2Agwo4RAwY2aqHtNYKEbJq2yc,11065
238
- empathy_os/workflows/code_review_pipeline.py,sha256=hJn3tswl5wgGVbhaFZGEKLowiB-eQ-SxqiWsIGJp2AE,24295
235
+ empathy_os/workflows/code_review_pipeline.py,sha256=FQyeb__MmNkYggTQEMzrmUSr_CLg-CbmgVZfdtAiTkE,24263
239
236
  empathy_os/workflows/config.py,sha256=qahi2OOs-5ahaZd4LWkH2uX0N8YV9KxY-o6popeS4Io,22865
240
- empathy_os/workflows/dependency_check.py,sha256=HvVmwzhNHXqmsIBFc75Y6fpWE8UlGz2x5z8BEtON5Do,23500
237
+ empathy_os/workflows/dependency_check.py,sha256=zWwSCAWThnAUkOqEUx2GTl5Vgf2fW9P5HRqwWhYZXlc,23452
241
238
  empathy_os/workflows/document_gen.py,sha256=z9jVtGYCvl01oNk2JfelQs4CfFMw35t1vo9IIeC6sWQ,39135
242
239
  empathy_os/workflows/documentation_orchestrator.py,sha256=sSzTsLJPkSlHcE_o-pfM-27DVAVpwPcmxPZT71GYfeo,43013
243
240
  empathy_os/workflows/health_check.py,sha256=1yxNPV4wpLNEoMlbTm_S9Dlbp7q4L3WZM5kL_1LKVDQ,24633
@@ -262,9 +259,9 @@ empathy_os/workflows/test_lifecycle.py,sha256=c6UDSd6kOQdCHmaJviwAnUVceVQuSdLNQ9
262
259
  empathy_os/workflows/test_maintenance.py,sha256=jiMeYX7Qg3CnRU5xW8LuOXnARxV7uqfygDKkIsEgL0s,22941
263
260
  empathy_os/workflows/test_maintenance_cli.py,sha256=U8t-1uK9iqEg9RoVXbS27KbhqvbXm30anQH4GbCvKBM,17879
264
261
  empathy_os/workflows/test_maintenance_crew.py,sha256=mzV45WZ9ABVgDQk4lWglMBhOCop5c5TzG16cJkWZAV8,28709
265
- empathy_os/workflows/tier_tracking.py,sha256=OpLlb0t3HHJ58Hc8hRbQPSkm6JoqrYl4Z32LtqLKbbU,13923
262
+ empathy_os/workflows/tier_tracking.py,sha256=aSTuRpY1UhDiGbUinYTwsLph5_4xdF4iivTLjQGtjZQ,14027
266
263
  empathy_os/workflows/xml_enhanced_crew.py,sha256=SnPb-LdUNn3MWlm5c_6OB1IWKV_D6XjCsgmi_hRFhuk,9000
267
- empathy_os/workflows/keyboard_shortcuts/__init__.py,sha256=KbYtNKu0k-4wQTaH_U79tBzVhM_lYVTeA5fMBuAZJCU,1221
264
+ empathy_os/workflows/keyboard_shortcuts/__init__.py,sha256=zPY6KTepKXmLF0xUsqxbH9qztHdVdsCzyY-_PiSnuxk,1116
268
265
  empathy_os/workflows/keyboard_shortcuts/generators.py,sha256=qjKU3FPHWYaMP3Pi_HgKaXDUm1wV2dm8W-1ThsAbc7o,12599
269
266
  empathy_os/workflows/keyboard_shortcuts/parsers.py,sha256=CUwTlOwS6k4GIgHEBlHCvTyqkxXbzVF_w1Inn9ELPB4,14656
270
267
  empathy_os/workflows/keyboard_shortcuts/prompts.py,sha256=gcV2F2bAMjZUrbB13lOI4ixXzXm2TNWEZ4VbPhC7ITw,9164
@@ -272,7 +269,7 @@ empathy_os/workflows/keyboard_shortcuts/schema.py,sha256=MwvM63J9WTO6nqtwes5A04H
272
269
  empathy_os/workflows/keyboard_shortcuts/workflow.py,sha256=6fyWSlFRc2uLte05md7zvXMtBAtmUfk8uhGSFYOpUAQ,17372
273
270
  empathy_software_plugin/SOFTWARE_PLUGIN_README.md,sha256=RXIOB9Mt-8JrfGAA3ZUuRPT34sThubrwUgg5iNcSKIc,22591
274
271
  empathy_software_plugin/__init__.py,sha256=OceDhLoQrjD0jTPlI4418608l97OT48u4SCL5yEDPQc,309
275
- empathy_software_plugin/cli.py,sha256=SDL11gG1d8Jqk6I8bDT5sAWD1dHep3lW9QMsk8bkZYU,22730
272
+ empathy_software_plugin/cli.py,sha256=kp7jZni94Bv6_0D7hdk4gT10NT6HsemFLJkWKAVMHj0,22682
276
273
  empathy_software_plugin/plugin.py,sha256=jjIrGOtitOUzmLqfsgML5lsGx7bXaI9WURgucPY7rb0,6676
277
274
  empathy_software_plugin/cli/__init__.py,sha256=YM3lWC69nzp07a7_PoRZ3yqkh-109PzLpwWLacL0YZs,4233
278
275
  empathy_software_plugin/cli/inspect.py,sha256=Z1f2bV0TtAUY0uODMjEmoM2zryAsM2mwQEAyRMlmhOE,9413
@@ -284,7 +281,7 @@ empathy_software_plugin/wizards/ai_context_wizard.py,sha256=T-LWkozjpZMznlH5fgO1
284
281
  empathy_software_plugin/wizards/ai_documentation_wizard.py,sha256=CL0e48p-Ph457RqS9GE8c1QT7SmFCXGwZEZUlEDVjeQ,21793
285
282
  empathy_software_plugin/wizards/base_wizard.py,sha256=d64kDIE65ON5VeUPhtQZ31mEoJUlNpJMrCrrwXazoJU,8665
286
283
  empathy_software_plugin/wizards/book_chapter_wizard.py,sha256=u4Y4IpOFRYnBmvwnMhgK8FVIeLsFWIxT7V1NGNol4v8,17699
287
- empathy_software_plugin/wizards/code_review_wizard.py,sha256=x00c99SQ3QS493Sga2BE_CQ-GWUb7bMKbItRl_7FLy8,21700
284
+ empathy_software_plugin/wizards/code_review_wizard.py,sha256=x_uQCVgS5YQ2j_GJ_kxaLKOLcloCxSpQLOrusv1wZgU,21668
288
285
  empathy_software_plugin/wizards/enhanced_testing_wizard.py,sha256=9u_AckqG4S-dAsbD7p4_cZJC9nll2eIGznVcZ6LEP7Q,19810
289
286
  empathy_software_plugin/wizards/memory_enhanced_debugging_wizard.py,sha256=IqSpWZfEWZedsi05PkMc5qbxGiAYeEv4zWyEkJ2OIx4,29715
290
287
  empathy_software_plugin/wizards/multi_model_wizard.py,sha256=1l-rr9yjpDge4P7PEzXVY92FryDgkmzlrwr8JiA3GwM,20709
@@ -297,7 +294,7 @@ empathy_software_plugin/wizards/security_analysis_wizard.py,sha256=2d9wYP-3oHvj9
297
294
  empathy_software_plugin/wizards/security_learning_wizard.py,sha256=KLGurDpwMw7tqPRlfnsptd9Hc0xOdVLXiS8Og2Hlv-4,27947
298
295
  empathy_software_plugin/wizards/tech_debt_wizard.py,sha256=6cwJrSHfQdkudY2bLhthgQ1kF3OEqAdLL2WZLcgl-Kk,26535
299
296
  empathy_software_plugin/wizards/testing_wizard.py,sha256=evDrQW90p2Lt3SBdTPjPNDW3K6l2syzNAkzlkFmjU2k,9686
300
- empathy_software_plugin/wizards/debugging/__init__.py,sha256=rpYEwAOf9yD-L_NB5PjcTR2iYQC0TYjXHGJ_vDJHfM4,1475
297
+ empathy_software_plugin/wizards/debugging/__init__.py,sha256=5psc3AIKldwSaD2ymeqAr88I7GjE42_lgcnM5Q3ObSU,1387
301
298
  empathy_software_plugin/wizards/debugging/bug_risk_analyzer.py,sha256=BMjTHE6--nuzWKg8Rz6avNFm1LCTbrlLxpEfGPyaW6M,15770
302
299
  empathy_software_plugin/wizards/debugging/config_loaders.py,sha256=OtFaDZX9kAfXER-0FaKqPK7Nao6O9nqvj6KPKBtW7Q4,13412
303
300
  empathy_software_plugin/wizards/debugging/fix_applier.py,sha256=dmLBoWLkANBE7GlPKaX0ROS5cQ5EMGD1ecoOCnJ277o,14849
@@ -308,7 +305,7 @@ empathy_software_plugin/wizards/performance/__init__.py,sha256=Jsnj_O6ln7lwrpWGq
308
305
  empathy_software_plugin/wizards/performance/bottleneck_detector.py,sha256=rkSkq4MNJ3q3EVD2sINyhYTHaEkntQcmbwIPcP2ukUg,8144
309
306
  empathy_software_plugin/wizards/performance/profiler_parsers.py,sha256=H8Q35mrV_s4_TWLHRV06hbBeNSMx7Sph3ShjudtnxiE,8889
310
307
  empathy_software_plugin/wizards/performance/trajectory_analyzer.py,sha256=CONUG3WRUX8-jZdOKJSGXZiRNtHrvkXydaSXmC29naE,15846
311
- empathy_software_plugin/wizards/security/__init__.py,sha256=2zzS_RYXr6D8t4zcNCTLDbnUVQtJAbdH-awJV4MnZR8,915
308
+ empathy_software_plugin/wizards/security/__init__.py,sha256=faXGfP8VmcVFg_4xWRKFQ_30c-QxbHQk4-gQKTzQFIY,723
312
309
  empathy_software_plugin/wizards/security/exploit_analyzer.py,sha256=K-V0ycsMRLLTsRiG2ojwzbLIHAZwyIedY6doHGLZHQo,9681
313
310
  empathy_software_plugin/wizards/security/owasp_patterns.py,sha256=MARl4_D_r0KQU8Cysft-8OGuxXrbDN1ReTF6kWbcEW4,10234
314
311
  empathy_software_plugin/wizards/security/vulnerability_scanner.py,sha256=rbYcUU6Kdc6TkOFPgP5CHgfnfOCLSvI4c4NbtDUV4ww,23664
@@ -337,8 +334,8 @@ workflow_scaffolding/__init__.py,sha256=UpX5vjjjPjIaAKyIV1D4GxJzLUZy5DzdzgSkePYM
337
334
  workflow_scaffolding/__main__.py,sha256=0qspuNoadTDqyskXTlT8Sahqau-XIxN35NHTSGVW6z4,236
338
335
  workflow_scaffolding/cli.py,sha256=R4rCTDENRMil2c3v32MnisqteFRDfilS6RHBNlYV39Q,6752
339
336
  workflow_scaffolding/generator.py,sha256=whWbBmWEA0rN3M3X9EzTjfbwBxHcF40Jin8-nbj0S0E,8858
340
- empathy_framework-3.9.0.dist-info/METADATA,sha256=D8RjLJ4FEGvvTwAqYlpqycoV91b7hyJkCps5DNPjjxg,48626
341
- empathy_framework-3.9.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
342
- empathy_framework-3.9.0.dist-info/entry_points.txt,sha256=zMu7sKCiLndbEEXjTecltS-1P_JZoEUKrifuRBBbroc,1268
343
- empathy_framework-3.9.0.dist-info/top_level.txt,sha256=wrNU1aVMutVDACer58H-udv0P_171Dv6z_42sZtZ-xM,124
344
- empathy_framework-3.9.0.dist-info/RECORD,,
337
+ empathy_framework-3.9.2.dist-info/METADATA,sha256=tkHSoLo3cUA_OP4nhZTj03rBQpeaKxlOgzfIsgx9Cik,50099
338
+ empathy_framework-3.9.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
339
+ empathy_framework-3.9.2.dist-info/entry_points.txt,sha256=zMu7sKCiLndbEEXjTecltS-1P_JZoEUKrifuRBBbroc,1268
340
+ empathy_framework-3.9.2.dist-info/top_level.txt,sha256=wrNU1aVMutVDACer58H-udv0P_171Dv6z_42sZtZ-xM,124
341
+ empathy_framework-3.9.2.dist-info/RECORD,,
@@ -5,17 +5,17 @@ Licensed under Fair Source 0.9
5
5
  """
6
6
 
7
7
  from .protocol_checker import (
8
- ComplianceStatus,
9
- ProtocolChecker,
10
- ProtocolCheckResult,
11
- ProtocolDeviation,
8
+ ComplianceStatus,
9
+ ProtocolChecker,
10
+ ProtocolCheckResult,
11
+ ProtocolDeviation,
12
12
  )
13
13
  from .protocol_loader import (
14
- ClinicalProtocol,
15
- ProtocolCriterion,
16
- ProtocolIntervention,
17
- ProtocolLoader,
18
- load_protocol,
14
+ ClinicalProtocol,
15
+ ProtocolCriterion,
16
+ ProtocolIntervention,
17
+ ProtocolLoader,
18
+ load_protocol,
19
19
  )
20
20
  from .sensor_parsers import VitalSignReading, VitalSignType, normalize_vitals, parse_sensor_data
21
21
  from .trajectory_analyzer import TrajectoryAnalyzer, TrajectoryPrediction, VitalTrend
@@ -31,12 +31,12 @@ Licensed under Fair Source License 0.9
31
31
  """
32
32
 
33
33
  from empathy_llm_toolkit.agent_factory.base import (
34
- AgentCapability,
35
- AgentConfig,
36
- AgentRole,
37
- BaseAdapter,
38
- BaseAgent,
39
- WorkflowConfig,
34
+ AgentCapability,
35
+ AgentConfig,
36
+ AgentRole,
37
+ BaseAdapter,
38
+ BaseAgent,
39
+ WorkflowConfig,
40
40
  )
41
41
  from empathy_llm_toolkit.agent_factory.factory import AgentFactory
42
42
  from empathy_llm_toolkit.agent_factory.framework import Framework
@@ -40,7 +40,10 @@ def _check_crewai():
40
40
  import crewai # noqa: F401
41
41
 
42
42
  _crewai_available = True
43
- except ImportError:
43
+ except (ImportError, AttributeError):
44
+ # INTENTIONAL: Catch AttributeError for CrewAI 0.203.x RAG module import issues
45
+ # ImportError: CrewAI not installed
46
+ # AttributeError: CrewAI 0.203.x has RAG module attribute protection issues
44
47
  _crewai_available = False
45
48
  return _crewai_available
46
49
 
@@ -97,7 +97,8 @@ def detect_installed_frameworks() -> list[Framework]:
97
97
  import crewai # noqa: F401
98
98
 
99
99
  installed.append(Framework.CREWAI)
100
- except ImportError:
100
+ except (ImportError, AttributeError, ImportWarning):
101
+ # INTENTIONAL: Catch import-time errors from CrewAI dependencies
101
102
  pass
102
103
 
103
104
  return installed
@@ -7,14 +7,14 @@ Licensed under Fair Source License 0.9
7
7
  """
8
8
 
9
9
  from empathy_llm_toolkit.config.unified import (
10
- AgentOperationError,
11
- BookProductionConfig,
12
- MemDocsConfig,
13
- ModelTier,
14
- Provider,
15
- RedisConfig,
16
- UnifiedAgentConfig,
17
- WorkflowMode,
10
+ AgentOperationError,
11
+ BookProductionConfig,
12
+ MemDocsConfig,
13
+ ModelTier,
14
+ Provider,
15
+ RedisConfig,
16
+ UnifiedAgentConfig,
17
+ WorkflowMode,
18
18
  )
19
19
 
20
20
  __all__ = [
@@ -16,25 +16,25 @@ License: Fair Source 0.9
16
16
 
17
17
  # Re-export from consolidated memory module for backwards compatibility
18
18
  from empathy_os.memory.long_term import (
19
- Classification,
20
- ClassificationRules,
21
- EncryptionManager,
22
- PatternMetadata,
23
- SecureMemDocsIntegration,
24
- SecurityError,
19
+ Classification,
20
+ ClassificationRules,
21
+ EncryptionManager,
22
+ PatternMetadata,
23
+ SecureMemDocsIntegration,
24
+ SecurityError,
25
25
  )
26
26
  from empathy_os.memory.security import (
27
- AuditEvent,
28
- AuditLogger,
29
- PIIDetection,
30
- PIIPattern,
31
- PIIScrubber,
32
- SecretDetection,
33
- SecretsDetector,
34
- SecretType,
35
- SecurityViolation,
36
- Severity,
37
- detect_secrets,
27
+ AuditEvent,
28
+ AuditLogger,
29
+ PIIDetection,
30
+ PIIPattern,
31
+ PIIScrubber,
32
+ SecretDetection,
33
+ SecretsDetector,
34
+ SecretType,
35
+ SecurityViolation,
36
+ Severity,
37
+ detect_secrets,
38
38
  )
39
39
 
40
40
  __all__ = [
@@ -5,9 +5,9 @@ Licensed under Fair Source License 0.9
5
5
  """
6
6
 
7
7
  from empathy_os.adaptive.task_complexity import (
8
- ComplexityScore,
9
- TaskComplexity,
10
- TaskComplexityScorer,
8
+ ComplexityScore,
9
+ TaskComplexity,
10
+ TaskComplexityScorer,
11
11
  )
12
12
 
13
13
  __all__ = ["TaskComplexity", "ComplexityScore", "TaskComplexityScorer"]
empathy_os/cli.py CHANGED
@@ -47,6 +47,7 @@ try:
47
47
  cmd_telemetry_savings,
48
48
  cmd_telemetry_show,
49
49
  )
50
+
50
51
  TELEMETRY_CLI_AVAILABLE = True
51
52
  except ImportError:
52
53
  TELEMETRY_CLI_AVAILABLE = False
@@ -676,7 +677,7 @@ def cmd_tier_recommend(args):
676
677
  result = recommender.recommend(
677
678
  bug_description=args.description,
678
679
  files_affected=args.files.split(",") if args.files else None,
679
- complexity_hint=args.complexity
680
+ complexity_hint=args.complexity,
680
681
  )
681
682
 
682
683
  # Display results
@@ -692,14 +693,14 @@ def cmd_tier_recommend(args):
692
693
  print(f" 💰 Expected Cost: ${result.expected_cost:.3f}")
693
694
  print(f" 🔄 Expected Attempts: {result.expected_attempts:.1f}")
694
695
  print()
695
- print(f" 📊 Reasoning:")
696
+ print(" 📊 Reasoning:")
696
697
  print(f" {result.reasoning}")
697
698
  print()
698
699
 
699
700
  if result.similar_patterns_count > 0:
700
701
  print(f" ✅ Based on {result.similar_patterns_count} similar patterns")
701
702
  else:
702
- print(f" ⚠️ No historical data - using conservative default")
703
+ print(" ⚠️ No historical data - using conservative default")
703
704
 
704
705
  if result.fallback_used:
705
706
  print()
@@ -748,11 +749,7 @@ def cmd_tier_stats(args):
748
749
 
749
750
  print(" BUG TYPE DISTRIBUTION")
750
751
  print(" " + "-" * 40)
751
- sorted_types = sorted(
752
- stats["bug_type_distribution"].items(),
753
- key=lambda x: x[1],
754
- reverse=True
755
- )
752
+ sorted_types = sorted(stats["bug_type_distribution"].items(), key=lambda x: x[1], reverse=True)
756
753
  for bug_type, count in sorted_types[:10]:
757
754
  percent = (count / stats["total_patterns"]) * 100
758
755
  print(f" {bug_type:20} {count:3} ({percent:5.1f}%)")
empathy_os/cli_unified.py CHANGED
@@ -552,7 +552,7 @@ def tier_recommend(
552
552
  console.print(f" 💰 [bold]Expected Cost:[/bold] ${result.expected_cost:.3f}")
553
553
  console.print(f" 🔄 [bold]Expected Attempts:[/bold] {result.expected_attempts:.1f}")
554
554
  console.print()
555
- console.print(f" 📊 [bold]Reasoning:[/bold]")
555
+ console.print(" 📊 [bold]Reasoning:[/bold]")
556
556
  console.print(f" {result.reasoning}")
557
557
  console.print()
558
558
 
@@ -73,48 +73,48 @@ from .graph import MemoryGraph
73
73
 
74
74
  # Long-term memory (Persistent patterns)
75
75
  from .long_term import (
76
- Classification,
77
- ClassificationRules,
78
- EncryptionManager,
79
- MemDocsStorage,
80
- PatternMetadata,
81
- SecureMemDocsIntegration,
82
- SecurePattern,
83
- SecurityError,
76
+ Classification,
77
+ ClassificationRules,
78
+ EncryptionManager,
79
+ MemDocsStorage,
80
+ PatternMetadata,
81
+ SecureMemDocsIntegration,
82
+ SecurePattern,
83
+ SecurityError,
84
84
  )
85
85
  from .long_term import PermissionError as MemoryPermissionError
86
86
  from .nodes import BugNode, Node, NodeType, PatternNode, PerformanceNode, VulnerabilityNode
87
87
 
88
88
  # Redis Bootstrap
89
89
  from .redis_bootstrap import (
90
- RedisStartMethod,
91
- RedisStatus,
92
- ensure_redis,
93
- get_redis_or_mock,
94
- stop_redis,
90
+ RedisStartMethod,
91
+ RedisStatus,
92
+ ensure_redis,
93
+ get_redis_or_mock,
94
+ stop_redis,
95
95
  )
96
96
 
97
97
  # Security components
98
98
  from .security import ( # Audit Logging; PII Scrubbing; Secrets Detection
99
- AuditEvent,
100
- AuditLogger,
101
- PIIDetection,
102
- PIIPattern,
103
- PIIScrubber,
104
- SecretDetection,
105
- SecretsDetector,
106
- SecretType,
107
- SecurityViolation,
108
- Severity,
109
- detect_secrets,
99
+ AuditEvent,
100
+ AuditLogger,
101
+ PIIDetection,
102
+ PIIPattern,
103
+ PIIScrubber,
104
+ SecretDetection,
105
+ SecretsDetector,
106
+ SecretType,
107
+ SecurityViolation,
108
+ Severity,
109
+ detect_secrets,
110
110
  )
111
111
  from .short_term import (
112
- AccessTier,
113
- AgentCredentials,
114
- ConflictContext,
115
- RedisShortTermMemory,
116
- StagedPattern,
117
- TTLStrategy,
112
+ AccessTier,
113
+ AgentCredentials,
114
+ ConflictContext,
115
+ RedisShortTermMemory,
116
+ StagedPattern,
117
+ TTLStrategy,
118
118
  )
119
119
 
120
120
  # Conversation Summary Index
@@ -560,7 +560,9 @@ class MemoryControlPanel:
560
560
  return long_term.delete_pattern(pattern_id, user_id)
561
561
  except Exception as e:
562
562
  logger.error("delete_pattern_failed", pattern_id=pattern_id, error=str(e))
563
- return False # Graceful degradation - validation errors raise, storage errors return False
563
+ return (
564
+ False # Graceful degradation - validation errors raise, storage errors return False
565
+ )
564
566
 
565
567
  def clear_short_term(self, agent_id: str = "admin") -> int:
566
568
  """Clear all short-term memory for an agent.