empathy-framework 4.6.6__py3-none-any.whl → 4.7.0__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.
- {empathy_framework-4.6.6.dist-info → empathy_framework-4.7.0.dist-info}/METADATA +7 -6
- empathy_framework-4.7.0.dist-info/RECORD +354 -0
- {empathy_framework-4.6.6.dist-info → empathy_framework-4.7.0.dist-info}/top_level.txt +0 -2
- empathy_healthcare_plugin/monitors/monitoring/__init__.py +9 -9
- empathy_llm_toolkit/agent_factory/__init__.py +6 -6
- empathy_llm_toolkit/agent_factory/adapters/wizard_adapter.py +7 -10
- empathy_llm_toolkit/agents_md/__init__.py +22 -0
- empathy_llm_toolkit/agents_md/loader.py +218 -0
- empathy_llm_toolkit/agents_md/parser.py +271 -0
- empathy_llm_toolkit/agents_md/registry.py +307 -0
- empathy_llm_toolkit/commands/__init__.py +51 -0
- empathy_llm_toolkit/commands/context.py +375 -0
- empathy_llm_toolkit/commands/loader.py +301 -0
- empathy_llm_toolkit/commands/models.py +231 -0
- empathy_llm_toolkit/commands/parser.py +371 -0
- empathy_llm_toolkit/commands/registry.py +429 -0
- empathy_llm_toolkit/config/__init__.py +8 -8
- empathy_llm_toolkit/config/unified.py +3 -7
- empathy_llm_toolkit/context/__init__.py +22 -0
- empathy_llm_toolkit/context/compaction.py +455 -0
- empathy_llm_toolkit/context/manager.py +434 -0
- empathy_llm_toolkit/hooks/__init__.py +24 -0
- empathy_llm_toolkit/hooks/config.py +306 -0
- empathy_llm_toolkit/hooks/executor.py +289 -0
- empathy_llm_toolkit/hooks/registry.py +302 -0
- empathy_llm_toolkit/hooks/scripts/__init__.py +39 -0
- empathy_llm_toolkit/hooks/scripts/evaluate_session.py +201 -0
- empathy_llm_toolkit/hooks/scripts/first_time_init.py +285 -0
- empathy_llm_toolkit/hooks/scripts/pre_compact.py +207 -0
- empathy_llm_toolkit/hooks/scripts/session_end.py +183 -0
- empathy_llm_toolkit/hooks/scripts/session_start.py +163 -0
- empathy_llm_toolkit/hooks/scripts/suggest_compact.py +225 -0
- empathy_llm_toolkit/learning/__init__.py +30 -0
- empathy_llm_toolkit/learning/evaluator.py +438 -0
- empathy_llm_toolkit/learning/extractor.py +514 -0
- empathy_llm_toolkit/learning/storage.py +560 -0
- empathy_llm_toolkit/providers.py +4 -11
- empathy_llm_toolkit/security/__init__.py +17 -17
- empathy_llm_toolkit/utils/tokens.py +2 -5
- empathy_os/__init__.py +202 -70
- empathy_os/cache_monitor.py +5 -3
- empathy_os/cli/__init__.py +11 -55
- empathy_os/cli/__main__.py +29 -15
- empathy_os/cli/commands/inspection.py +21 -12
- empathy_os/cli/commands/memory.py +4 -12
- empathy_os/cli/commands/profiling.py +198 -0
- empathy_os/cli/commands/utilities.py +27 -7
- empathy_os/cli.py +28 -57
- empathy_os/cli_unified.py +525 -1164
- empathy_os/cost_tracker.py +9 -3
- empathy_os/dashboard/server.py +200 -2
- empathy_os/hot_reload/__init__.py +7 -7
- empathy_os/hot_reload/config.py +6 -7
- empathy_os/hot_reload/integration.py +35 -35
- empathy_os/hot_reload/reloader.py +57 -57
- empathy_os/hot_reload/watcher.py +28 -28
- empathy_os/hot_reload/websocket.py +2 -2
- empathy_os/memory/__init__.py +11 -4
- empathy_os/memory/claude_memory.py +1 -1
- empathy_os/memory/cross_session.py +8 -12
- empathy_os/memory/edges.py +6 -6
- empathy_os/memory/file_session.py +770 -0
- empathy_os/memory/graph.py +30 -30
- empathy_os/memory/nodes.py +6 -6
- empathy_os/memory/short_term.py +15 -9
- empathy_os/memory/unified.py +606 -140
- empathy_os/meta_workflows/agent_creator.py +3 -9
- empathy_os/meta_workflows/cli_meta_workflows.py +113 -53
- empathy_os/meta_workflows/form_engine.py +6 -18
- empathy_os/meta_workflows/intent_detector.py +64 -24
- empathy_os/meta_workflows/models.py +3 -1
- empathy_os/meta_workflows/pattern_learner.py +13 -31
- empathy_os/meta_workflows/plan_generator.py +55 -47
- empathy_os/meta_workflows/session_context.py +2 -3
- empathy_os/meta_workflows/workflow.py +20 -51
- empathy_os/models/cli.py +2 -2
- empathy_os/models/tasks.py +1 -2
- empathy_os/models/telemetry.py +4 -1
- empathy_os/models/token_estimator.py +3 -1
- empathy_os/monitoring/alerts.py +938 -9
- empathy_os/monitoring/alerts_cli.py +346 -183
- empathy_os/orchestration/execution_strategies.py +12 -29
- empathy_os/orchestration/pattern_learner.py +20 -26
- empathy_os/orchestration/real_tools.py +6 -15
- empathy_os/platform_utils.py +2 -1
- empathy_os/plugins/__init__.py +2 -2
- empathy_os/plugins/base.py +64 -64
- empathy_os/plugins/registry.py +32 -32
- empathy_os/project_index/index.py +49 -15
- empathy_os/project_index/models.py +1 -2
- empathy_os/project_index/reports.py +1 -1
- empathy_os/project_index/scanner.py +1 -0
- empathy_os/redis_memory.py +10 -7
- empathy_os/resilience/__init__.py +1 -1
- empathy_os/resilience/health.py +10 -10
- empathy_os/routing/__init__.py +7 -7
- empathy_os/routing/chain_executor.py +37 -37
- empathy_os/routing/classifier.py +36 -36
- empathy_os/routing/smart_router.py +40 -40
- empathy_os/routing/{wizard_registry.py → workflow_registry.py} +47 -47
- empathy_os/scaffolding/__init__.py +8 -8
- empathy_os/scaffolding/__main__.py +1 -1
- empathy_os/scaffolding/cli.py +28 -28
- empathy_os/socratic/__init__.py +3 -19
- empathy_os/socratic/ab_testing.py +25 -36
- empathy_os/socratic/blueprint.py +38 -38
- empathy_os/socratic/cli.py +34 -20
- empathy_os/socratic/collaboration.py +30 -28
- empathy_os/socratic/domain_templates.py +9 -1
- empathy_os/socratic/embeddings.py +17 -13
- empathy_os/socratic/engine.py +135 -70
- empathy_os/socratic/explainer.py +70 -60
- empathy_os/socratic/feedback.py +24 -19
- empathy_os/socratic/forms.py +15 -10
- empathy_os/socratic/generator.py +51 -35
- empathy_os/socratic/llm_analyzer.py +25 -23
- empathy_os/socratic/mcp_server.py +99 -159
- empathy_os/socratic/session.py +19 -13
- empathy_os/socratic/storage.py +98 -67
- empathy_os/socratic/success.py +38 -27
- empathy_os/socratic/visual_editor.py +51 -39
- empathy_os/socratic/web_ui.py +99 -66
- empathy_os/telemetry/cli.py +3 -1
- empathy_os/telemetry/usage_tracker.py +1 -3
- empathy_os/test_generator/__init__.py +3 -3
- empathy_os/test_generator/cli.py +28 -28
- empathy_os/test_generator/generator.py +64 -66
- empathy_os/test_generator/risk_analyzer.py +11 -11
- empathy_os/vscode_bridge.py +173 -0
- empathy_os/workflows/__init__.py +212 -120
- empathy_os/workflows/batch_processing.py +8 -24
- empathy_os/workflows/bug_predict.py +1 -1
- empathy_os/workflows/code_review.py +20 -5
- empathy_os/workflows/code_review_pipeline.py +13 -8
- empathy_os/workflows/keyboard_shortcuts/workflow.py +6 -2
- empathy_os/workflows/manage_documentation.py +1 -0
- empathy_os/workflows/orchestrated_health_check.py +6 -11
- empathy_os/workflows/orchestrated_release_prep.py +3 -3
- empathy_os/workflows/pr_review.py +18 -10
- empathy_os/workflows/progressive/__init__.py +2 -12
- empathy_os/workflows/progressive/cli.py +14 -37
- empathy_os/workflows/progressive/core.py +12 -12
- empathy_os/workflows/progressive/orchestrator.py +166 -144
- empathy_os/workflows/progressive/reports.py +22 -31
- empathy_os/workflows/progressive/telemetry.py +8 -14
- empathy_os/workflows/progressive/test_gen.py +29 -48
- empathy_os/workflows/progressive/workflow.py +31 -70
- empathy_os/workflows/release_prep.py +21 -6
- empathy_os/workflows/release_prep_crew.py +1 -0
- empathy_os/workflows/secure_release.py +13 -6
- empathy_os/workflows/security_audit.py +8 -3
- empathy_os/workflows/test_coverage_boost_crew.py +3 -2
- empathy_os/workflows/test_maintenance_crew.py +1 -0
- empathy_os/workflows/test_runner.py +16 -12
- empathy_software_plugin/SOFTWARE_PLUGIN_README.md +25 -703
- empathy_software_plugin/cli.py +0 -122
- coach_wizards/__init__.py +0 -45
- coach_wizards/accessibility_wizard.py +0 -91
- coach_wizards/api_wizard.py +0 -91
- coach_wizards/base_wizard.py +0 -209
- coach_wizards/cicd_wizard.py +0 -91
- coach_wizards/code_reviewer_README.md +0 -60
- coach_wizards/code_reviewer_wizard.py +0 -180
- coach_wizards/compliance_wizard.py +0 -91
- coach_wizards/database_wizard.py +0 -91
- coach_wizards/debugging_wizard.py +0 -91
- coach_wizards/documentation_wizard.py +0 -91
- coach_wizards/generate_wizards.py +0 -347
- coach_wizards/localization_wizard.py +0 -173
- coach_wizards/migration_wizard.py +0 -91
- coach_wizards/monitoring_wizard.py +0 -91
- coach_wizards/observability_wizard.py +0 -91
- coach_wizards/performance_wizard.py +0 -91
- coach_wizards/prompt_engineering_wizard.py +0 -661
- coach_wizards/refactoring_wizard.py +0 -91
- coach_wizards/scaling_wizard.py +0 -90
- coach_wizards/security_wizard.py +0 -92
- coach_wizards/testing_wizard.py +0 -91
- empathy_framework-4.6.6.dist-info/RECORD +0 -410
- empathy_llm_toolkit/wizards/__init__.py +0 -43
- empathy_llm_toolkit/wizards/base_wizard.py +0 -364
- empathy_llm_toolkit/wizards/customer_support_wizard.py +0 -190
- empathy_llm_toolkit/wizards/healthcare_wizard.py +0 -378
- empathy_llm_toolkit/wizards/patient_assessment_README.md +0 -64
- empathy_llm_toolkit/wizards/patient_assessment_wizard.py +0 -193
- empathy_llm_toolkit/wizards/technology_wizard.py +0 -209
- empathy_os/wizard_factory_cli.py +0 -170
- empathy_software_plugin/wizards/__init__.py +0 -42
- empathy_software_plugin/wizards/advanced_debugging_wizard.py +0 -395
- empathy_software_plugin/wizards/agent_orchestration_wizard.py +0 -511
- empathy_software_plugin/wizards/ai_collaboration_wizard.py +0 -503
- empathy_software_plugin/wizards/ai_context_wizard.py +0 -441
- empathy_software_plugin/wizards/ai_documentation_wizard.py +0 -503
- empathy_software_plugin/wizards/base_wizard.py +0 -288
- empathy_software_plugin/wizards/book_chapter_wizard.py +0 -519
- empathy_software_plugin/wizards/code_review_wizard.py +0 -604
- empathy_software_plugin/wizards/debugging/__init__.py +0 -50
- empathy_software_plugin/wizards/debugging/bug_risk_analyzer.py +0 -414
- empathy_software_plugin/wizards/debugging/config_loaders.py +0 -446
- empathy_software_plugin/wizards/debugging/fix_applier.py +0 -469
- empathy_software_plugin/wizards/debugging/language_patterns.py +0 -385
- empathy_software_plugin/wizards/debugging/linter_parsers.py +0 -470
- empathy_software_plugin/wizards/debugging/verification.py +0 -369
- empathy_software_plugin/wizards/enhanced_testing_wizard.py +0 -537
- empathy_software_plugin/wizards/memory_enhanced_debugging_wizard.py +0 -816
- empathy_software_plugin/wizards/multi_model_wizard.py +0 -501
- empathy_software_plugin/wizards/pattern_extraction_wizard.py +0 -422
- empathy_software_plugin/wizards/pattern_retriever_wizard.py +0 -400
- empathy_software_plugin/wizards/performance/__init__.py +0 -9
- empathy_software_plugin/wizards/performance/bottleneck_detector.py +0 -221
- empathy_software_plugin/wizards/performance/profiler_parsers.py +0 -278
- empathy_software_plugin/wizards/performance/trajectory_analyzer.py +0 -429
- empathy_software_plugin/wizards/performance_profiling_wizard.py +0 -305
- empathy_software_plugin/wizards/prompt_engineering_wizard.py +0 -425
- empathy_software_plugin/wizards/rag_pattern_wizard.py +0 -461
- empathy_software_plugin/wizards/security/__init__.py +0 -32
- empathy_software_plugin/wizards/security/exploit_analyzer.py +0 -290
- empathy_software_plugin/wizards/security/owasp_patterns.py +0 -241
- empathy_software_plugin/wizards/security/vulnerability_scanner.py +0 -604
- empathy_software_plugin/wizards/security_analysis_wizard.py +0 -322
- empathy_software_plugin/wizards/security_learning_wizard.py +0 -740
- empathy_software_plugin/wizards/tech_debt_wizard.py +0 -726
- empathy_software_plugin/wizards/testing/__init__.py +0 -27
- empathy_software_plugin/wizards/testing/coverage_analyzer.py +0 -459
- empathy_software_plugin/wizards/testing/quality_analyzer.py +0 -525
- empathy_software_plugin/wizards/testing/test_suggester.py +0 -533
- empathy_software_plugin/wizards/testing_wizard.py +0 -274
- wizards/__init__.py +0 -82
- wizards/admission_assessment_wizard.py +0 -644
- wizards/care_plan.py +0 -321
- wizards/clinical_assessment.py +0 -769
- wizards/discharge_planning.py +0 -77
- wizards/discharge_summary_wizard.py +0 -468
- wizards/dosage_calculation.py +0 -497
- wizards/incident_report_wizard.py +0 -454
- wizards/medication_reconciliation.py +0 -85
- wizards/nursing_assessment.py +0 -171
- wizards/patient_education.py +0 -654
- wizards/quality_improvement.py +0 -705
- wizards/sbar_report.py +0 -324
- wizards/sbar_wizard.py +0 -608
- wizards/shift_handoff_wizard.py +0 -535
- wizards/soap_note_wizard.py +0 -679
- wizards/treatment_plan.py +0 -15
- {empathy_framework-4.6.6.dist-info → empathy_framework-4.7.0.dist-info}/WHEEL +0 -0
- {empathy_framework-4.6.6.dist-info → empathy_framework-4.7.0.dist-info}/entry_points.txt +0 -0
- {empathy_framework-4.6.6.dist-info → empathy_framework-4.7.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,503 +0,0 @@
|
|
|
1
|
-
"""AI Collaboration Pattern Wizard - Level 4 Anticipatory Empathy
|
|
2
|
-
|
|
3
|
-
Alerts developers when their AI integration patterns will become problematic.
|
|
4
|
-
|
|
5
|
-
In our experience developing the Empathy Framework itself, we discovered
|
|
6
|
-
that the WAY you collaborate with AI matters as much as WHAT you ask it to do.
|
|
7
|
-
This wizard learned to recognize when reactive patterns will limit effectiveness.
|
|
8
|
-
|
|
9
|
-
Copyright 2025 Smart AI Memory, LLC
|
|
10
|
-
Licensed under Fair Source 0.9
|
|
11
|
-
"""
|
|
12
|
-
|
|
13
|
-
import os
|
|
14
|
-
import sys
|
|
15
|
-
from typing import Any
|
|
16
|
-
|
|
17
|
-
sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "..", "src"))
|
|
18
|
-
|
|
19
|
-
from empathy_os.plugins import BaseWizard
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
class AICollaborationWizard(BaseWizard):
|
|
23
|
-
"""Level 4 Anticipatory: Analyzes HOW developers work with AI.
|
|
24
|
-
|
|
25
|
-
Meta-insight: This wizard applies the Empathy Framework to itself.
|
|
26
|
-
It helps developers progress from Level 1 (reactive AI usage) to
|
|
27
|
-
Level 4 (anticipatory AI partnership).
|
|
28
|
-
|
|
29
|
-
What We Learned Building This Framework:
|
|
30
|
-
- Most developers start at Level 1 (ask AI, get answer, done)
|
|
31
|
-
- Level 3 patterns (proactive AI) require structural changes
|
|
32
|
-
- Level 4 patterns (anticipatory AI) transform productivity
|
|
33
|
-
- Early pattern adoption prevents later refactoring
|
|
34
|
-
"""
|
|
35
|
-
|
|
36
|
-
def __init__(self):
|
|
37
|
-
super().__init__(
|
|
38
|
-
name="AI Collaboration Pattern Wizard",
|
|
39
|
-
domain="software",
|
|
40
|
-
empathy_level=4,
|
|
41
|
-
category="ai_development",
|
|
42
|
-
)
|
|
43
|
-
|
|
44
|
-
def get_required_context(self) -> list[str]:
|
|
45
|
-
"""Required context for analysis"""
|
|
46
|
-
return [
|
|
47
|
-
"ai_integration_files", # Files with AI API calls
|
|
48
|
-
"project_path", # Project root
|
|
49
|
-
"ai_usage_patterns", # How AI is currently used
|
|
50
|
-
]
|
|
51
|
-
|
|
52
|
-
async def analyze(self, context: dict[str, Any]) -> dict[str, Any]:
|
|
53
|
-
"""Analyze AI collaboration patterns and predict limitations.
|
|
54
|
-
|
|
55
|
-
Meta: This wizard helps developers build systems like the
|
|
56
|
-
Empathy Framework itself - systems that transcend reactive AI.
|
|
57
|
-
"""
|
|
58
|
-
self.validate_context(context)
|
|
59
|
-
|
|
60
|
-
integration_files = context["ai_integration_files"]
|
|
61
|
-
usage_patterns = context.get("ai_usage_patterns", [])
|
|
62
|
-
|
|
63
|
-
# Analyze current patterns
|
|
64
|
-
issues = await self._analyze_collaboration_maturity(integration_files, usage_patterns)
|
|
65
|
-
|
|
66
|
-
# Level 4: Predict when current patterns will limit growth
|
|
67
|
-
predictions = await self._predict_collaboration_bottlenecks(
|
|
68
|
-
integration_files,
|
|
69
|
-
usage_patterns,
|
|
70
|
-
context,
|
|
71
|
-
)
|
|
72
|
-
|
|
73
|
-
recommendations = self._generate_recommendations(issues, predictions)
|
|
74
|
-
patterns = self._extract_patterns(issues, predictions)
|
|
75
|
-
|
|
76
|
-
return {
|
|
77
|
-
"issues": issues,
|
|
78
|
-
"predictions": predictions,
|
|
79
|
-
"recommendations": recommendations,
|
|
80
|
-
"patterns": patterns,
|
|
81
|
-
"confidence": 0.90, # High confidence - we lived this
|
|
82
|
-
"metadata": {
|
|
83
|
-
"wizard": self.name,
|
|
84
|
-
"empathy_level": self.empathy_level,
|
|
85
|
-
"current_maturity_level": self._assess_maturity_level(issues),
|
|
86
|
-
"files_analyzed": len(integration_files),
|
|
87
|
-
},
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
async def _analyze_collaboration_maturity(
|
|
91
|
-
self,
|
|
92
|
-
integration_files: list[str],
|
|
93
|
-
usage_patterns: list[dict],
|
|
94
|
-
) -> list[dict[str, Any]]:
|
|
95
|
-
"""Assess current AI collaboration maturity level.
|
|
96
|
-
|
|
97
|
-
Maps observed patterns to Empathy Framework levels 1-5.
|
|
98
|
-
"""
|
|
99
|
-
issues = []
|
|
100
|
-
|
|
101
|
-
# Check for Level 1 patterns (Reactive)
|
|
102
|
-
reactive_patterns = self._detect_reactive_patterns(integration_files)
|
|
103
|
-
if reactive_patterns > len(integration_files) * 0.7:
|
|
104
|
-
issues.append(
|
|
105
|
-
{
|
|
106
|
-
"severity": "info",
|
|
107
|
-
"type": "level_1_reactive",
|
|
108
|
-
"message": (
|
|
109
|
-
f"{reactive_patterns}/{len(integration_files)} AI integrations "
|
|
110
|
-
"are purely reactive (Level 1). In our experience, this limits "
|
|
111
|
-
"AI to being a Q&A tool rather than a collaborative partner."
|
|
112
|
-
),
|
|
113
|
-
"current_level": 1,
|
|
114
|
-
"suggestion": (
|
|
115
|
-
"Consider Level 2 (Guided): Use calibrated questions to refine "
|
|
116
|
-
"AI understanding before generating responses"
|
|
117
|
-
),
|
|
118
|
-
},
|
|
119
|
-
)
|
|
120
|
-
|
|
121
|
-
# Check for missing context accumulation (Level 2 → 3 transition)
|
|
122
|
-
if not self._has_context_accumulation(integration_files):
|
|
123
|
-
issues.append(
|
|
124
|
-
{
|
|
125
|
-
"severity": "warning",
|
|
126
|
-
"type": "no_context_accumulation",
|
|
127
|
-
"message": (
|
|
128
|
-
"AI calls don't accumulate context across interactions. "
|
|
129
|
-
"In our experience, this prevents progression to Level 3 "
|
|
130
|
-
"(Proactive) patterns where AI learns from history."
|
|
131
|
-
),
|
|
132
|
-
"current_level": 1,
|
|
133
|
-
"suggestion": (
|
|
134
|
-
"Implement CollaborationState tracking: trust levels, patterns, "
|
|
135
|
-
"shared context (see Empathy Framework core)"
|
|
136
|
-
),
|
|
137
|
-
},
|
|
138
|
-
)
|
|
139
|
-
|
|
140
|
-
# Check for pattern detection capability (Level 3 requirement)
|
|
141
|
-
if not self._has_pattern_detection(integration_files):
|
|
142
|
-
issues.append(
|
|
143
|
-
{
|
|
144
|
-
"severity": "info",
|
|
145
|
-
"type": "no_pattern_detection",
|
|
146
|
-
"message": (
|
|
147
|
-
"No pattern detection found. Level 3 (Proactive) AI requires "
|
|
148
|
-
"recognizing user patterns to act before being asked."
|
|
149
|
-
),
|
|
150
|
-
"current_level": 2,
|
|
151
|
-
"suggestion": (
|
|
152
|
-
"Add pattern library: track user workflows, detect sequences, "
|
|
153
|
-
"enable proactive suggestions"
|
|
154
|
-
),
|
|
155
|
-
},
|
|
156
|
-
)
|
|
157
|
-
|
|
158
|
-
# Check for trajectory analysis (Level 4 requirement)
|
|
159
|
-
if not self._has_trajectory_analysis(integration_files):
|
|
160
|
-
issues.append(
|
|
161
|
-
{
|
|
162
|
-
"severity": "info",
|
|
163
|
-
"type": "no_trajectory_analysis",
|
|
164
|
-
"message": (
|
|
165
|
-
"No system trajectory analysis detected. Level 4 (Anticipatory) "
|
|
166
|
-
"requires analyzing where the system is headed, not just where it is."
|
|
167
|
-
),
|
|
168
|
-
"current_level": 3,
|
|
169
|
-
"suggestion": (
|
|
170
|
-
"Implement trajectory analysis: growth rates, bottleneck prediction, "
|
|
171
|
-
"leverage point identification"
|
|
172
|
-
),
|
|
173
|
-
},
|
|
174
|
-
)
|
|
175
|
-
|
|
176
|
-
return issues
|
|
177
|
-
|
|
178
|
-
async def _predict_collaboration_bottlenecks(
|
|
179
|
-
self,
|
|
180
|
-
integration_files: list[str],
|
|
181
|
-
usage_patterns: list[dict],
|
|
182
|
-
full_context: dict[str, Any],
|
|
183
|
-
) -> list[dict[str, Any]]:
|
|
184
|
-
"""Level 4: Predict when current collaboration patterns will limit growth.
|
|
185
|
-
|
|
186
|
-
This is meta-Level 4: using anticipatory empathy to help developers
|
|
187
|
-
build anticipatory empathy systems.
|
|
188
|
-
"""
|
|
189
|
-
predictions = []
|
|
190
|
-
|
|
191
|
-
current_level = self._assess_maturity_level_numeric(integration_files)
|
|
192
|
-
|
|
193
|
-
# Pattern 1: Stuck at Level 1 (Reactive)
|
|
194
|
-
if current_level == 1 and len(integration_files) > 5:
|
|
195
|
-
predictions.append(
|
|
196
|
-
{
|
|
197
|
-
"type": "reactive_pattern_limitation",
|
|
198
|
-
"alert": (
|
|
199
|
-
f"You have {len(integration_files)} AI integrations, all at Level 1 "
|
|
200
|
-
"(Reactive). In our experience building the Empathy Framework, "
|
|
201
|
-
"reactive AI becomes a burden as integration grows. Alert: Design "
|
|
202
|
-
"for higher levels now, before you have dozens of integrations to refactor."
|
|
203
|
-
),
|
|
204
|
-
"probability": "high",
|
|
205
|
-
"impact": "high",
|
|
206
|
-
"prevention_steps": [
|
|
207
|
-
"Start with Level 2 for new integrations (add calibrated questions)",
|
|
208
|
-
"Implement CollaborationState tracking (trust, context, patterns)",
|
|
209
|
-
"Design pattern library for cross-integration learning",
|
|
210
|
-
"Create abstraction layer (makes refactoring easier later)",
|
|
211
|
-
],
|
|
212
|
-
"reasoning": (
|
|
213
|
-
"We refactored from Level 1 to Level 4 mid-project. "
|
|
214
|
-
"It took 2 months. Starting with Level 2-3 architecture "
|
|
215
|
-
"would have saved significant rework."
|
|
216
|
-
),
|
|
217
|
-
"personal_experience": (
|
|
218
|
-
"When we built our 16th Coach wizard, we realized we weren't "
|
|
219
|
-
"writing wizards anymore - we were teaching the system to recognize "
|
|
220
|
-
"patterns. That shift only happened because we'd built the "
|
|
221
|
-
"infrastructure for higher-level collaboration."
|
|
222
|
-
),
|
|
223
|
-
},
|
|
224
|
-
)
|
|
225
|
-
|
|
226
|
-
# Pattern 2: No feedback loops
|
|
227
|
-
if not self._has_feedback_loops(integration_files):
|
|
228
|
-
predictions.append(
|
|
229
|
-
{
|
|
230
|
-
"type": "missing_feedback_loops",
|
|
231
|
-
"alert": (
|
|
232
|
-
"No feedback loops detected between AI outputs and system state. "
|
|
233
|
-
"In our experience, this prevents AI from learning and improving. "
|
|
234
|
-
"Alert: Design feedback mechanisms before AI quality plateaus."
|
|
235
|
-
),
|
|
236
|
-
"probability": "medium-high",
|
|
237
|
-
"impact": "high",
|
|
238
|
-
"prevention_steps": [
|
|
239
|
-
"Track AI output quality (user accepts/rejects/modifies)",
|
|
240
|
-
"Implement trust building (successful outputs increase confidence)",
|
|
241
|
-
"Add pattern reinforcement (reward accurate predictions)",
|
|
242
|
-
"Create quality metrics dashboard",
|
|
243
|
-
],
|
|
244
|
-
"reasoning": (
|
|
245
|
-
"Feedback loops enable self-improvement. Without them, "
|
|
246
|
-
"AI quality is static. We've seen quality improve 2-3x "
|
|
247
|
-
"with proper feedback integration."
|
|
248
|
-
),
|
|
249
|
-
},
|
|
250
|
-
)
|
|
251
|
-
|
|
252
|
-
# Pattern 3: No cross-integration learning
|
|
253
|
-
if len(integration_files) > 3 and not self._has_pattern_sharing(integration_files):
|
|
254
|
-
predictions.append(
|
|
255
|
-
{
|
|
256
|
-
"type": "siloed_ai_integrations",
|
|
257
|
-
"alert": (
|
|
258
|
-
f"You have {len(integration_files)} AI integrations with no pattern "
|
|
259
|
-
"sharing. In our experience, this is a missed opportunity. "
|
|
260
|
-
"Alert: Implement Level 5 (Systems) pattern library before "
|
|
261
|
-
"you miss cross-domain insights."
|
|
262
|
-
),
|
|
263
|
-
"probability": "medium",
|
|
264
|
-
"impact": "medium",
|
|
265
|
-
"prevention_steps": [
|
|
266
|
-
"Create shared PatternLibrary (see Empathy Framework)",
|
|
267
|
-
"Enable cross-integration pattern discovery",
|
|
268
|
-
"Implement pattern abstraction (domain-agnostic patterns)",
|
|
269
|
-
"Add pattern contribution hooks to all AI integrations",
|
|
270
|
-
],
|
|
271
|
-
"reasoning": (
|
|
272
|
-
"Pattern from software development: 'testing bottleneck'. "
|
|
273
|
-
"Same pattern applies to healthcare documentation burden. "
|
|
274
|
-
"Shared pattern library enables this insight."
|
|
275
|
-
),
|
|
276
|
-
"personal_experience": (
|
|
277
|
-
"We discovered the 'growth trajectory alert' pattern in software "
|
|
278
|
-
"testing, then applied it to healthcare compliance. Same pattern, "
|
|
279
|
-
"different domain. That only worked because we'd built Level 5 "
|
|
280
|
-
"cross-domain learning."
|
|
281
|
-
),
|
|
282
|
-
},
|
|
283
|
-
)
|
|
284
|
-
|
|
285
|
-
# Pattern 4: AI as tool, not partner
|
|
286
|
-
if self._ai_used_as_tool(integration_files):
|
|
287
|
-
predictions.append(
|
|
288
|
-
{
|
|
289
|
-
"type": "ai_tool_mindset",
|
|
290
|
-
"alert": (
|
|
291
|
-
"AI is being used as a tool (call, get response, done) rather than "
|
|
292
|
-
"a collaborative partner. In our experience, this mental model "
|
|
293
|
-
"prevents breakthrough productivity gains. Alert: Shift to partnership "
|
|
294
|
-
"model before you plateau."
|
|
295
|
-
),
|
|
296
|
-
"probability": "medium",
|
|
297
|
-
"impact": "high",
|
|
298
|
-
"prevention_steps": [
|
|
299
|
-
"Implement persistent AI context (conversation memory)",
|
|
300
|
-
"Add AI initiative (proactive suggestions)",
|
|
301
|
-
"Design for AI-driven insights (not just AI-answered questions)",
|
|
302
|
-
"Create bidirectional feedback (AI learns from you, you learn from AI)",
|
|
303
|
-
],
|
|
304
|
-
"reasoning": (
|
|
305
|
-
"Mental model shift: Tool → Partner. "
|
|
306
|
-
"This unlocks anticipatory capabilities. "
|
|
307
|
-
"In our experience, the impact was more profound than anticipated."
|
|
308
|
-
),
|
|
309
|
-
"personal_experience": (
|
|
310
|
-
"I had a theory: AI collaboration through empathy levels. "
|
|
311
|
-
"When it worked, the impact exceeded expectations. "
|
|
312
|
-
"Not because AI wrote more code, but because it anticipated "
|
|
313
|
-
"structural issues before they became costly."
|
|
314
|
-
),
|
|
315
|
-
},
|
|
316
|
-
)
|
|
317
|
-
|
|
318
|
-
# Pattern 5: No architecture for growth
|
|
319
|
-
if len(integration_files) > 2 and not self._has_collaboration_architecture(
|
|
320
|
-
integration_files,
|
|
321
|
-
):
|
|
322
|
-
predictions.append(
|
|
323
|
-
{
|
|
324
|
-
"type": "collaboration_architecture_gap",
|
|
325
|
-
"alert": (
|
|
326
|
-
"Multiple AI integrations without unified collaboration architecture. "
|
|
327
|
-
"In our experience, this leads to inconsistent AI quality and "
|
|
328
|
-
"difficult maintenance. Alert: Design collaboration framework "
|
|
329
|
-
"before technical debt compounds."
|
|
330
|
-
),
|
|
331
|
-
"probability": "high",
|
|
332
|
-
"impact": "high",
|
|
333
|
-
"prevention_steps": [
|
|
334
|
-
"Adopt or design collaboration framework (like Empathy Framework)",
|
|
335
|
-
"Create standard abstractions (EmpathyOS, CollaborationState, etc.)",
|
|
336
|
-
"Implement consistent empathy levels across integrations",
|
|
337
|
-
"Build pattern library infrastructure",
|
|
338
|
-
],
|
|
339
|
-
"reasoning": (
|
|
340
|
-
"Ad-hoc AI integration scales poorly. "
|
|
341
|
-
"Framework-based approach scales well. "
|
|
342
|
-
"We learned this by building both ways."
|
|
343
|
-
),
|
|
344
|
-
},
|
|
345
|
-
)
|
|
346
|
-
|
|
347
|
-
return predictions
|
|
348
|
-
|
|
349
|
-
def _generate_recommendations(self, issues: list[dict], predictions: list[dict]) -> list[str]:
|
|
350
|
-
"""Generate actionable recommendations"""
|
|
351
|
-
recommendations = []
|
|
352
|
-
|
|
353
|
-
# Start with maturity assessment
|
|
354
|
-
current_level = self._assess_maturity_level(issues)
|
|
355
|
-
recommendations.append(f"Current AI Collaboration Maturity: Level {current_level}")
|
|
356
|
-
recommendations.append("")
|
|
357
|
-
|
|
358
|
-
# High-impact predictions
|
|
359
|
-
for pred in predictions:
|
|
360
|
-
if pred.get("impact") == "high":
|
|
361
|
-
recommendations.append(f"[ALERT] {pred['alert']}")
|
|
362
|
-
recommendations.append("")
|
|
363
|
-
recommendations.append("Recommended path forward:")
|
|
364
|
-
for i, step in enumerate(pred["prevention_steps"], 1):
|
|
365
|
-
recommendations.append(f" {i}. {step}")
|
|
366
|
-
|
|
367
|
-
# Add personal experience if available
|
|
368
|
-
if "personal_experience" in pred:
|
|
369
|
-
recommendations.append("")
|
|
370
|
-
recommendations.append(f"Experience: {pred['personal_experience']}")
|
|
371
|
-
recommendations.append("")
|
|
372
|
-
|
|
373
|
-
# Growth path
|
|
374
|
-
recommendations.append("Growth Path:")
|
|
375
|
-
if current_level < 2:
|
|
376
|
-
recommendations.append(" Next: Implement Level 2 (Guided) - Add calibrated questions")
|
|
377
|
-
elif current_level < 3:
|
|
378
|
-
recommendations.append(" Next: Implement Level 3 (Proactive) - Add pattern detection")
|
|
379
|
-
elif current_level < 4:
|
|
380
|
-
recommendations.append(
|
|
381
|
-
" Next: Implement Level 4 (Anticipatory) - Add trajectory analysis",
|
|
382
|
-
)
|
|
383
|
-
else:
|
|
384
|
-
recommendations.append(
|
|
385
|
-
" Next: Implement Level 5 (Systems) - Add cross-domain learning",
|
|
386
|
-
)
|
|
387
|
-
|
|
388
|
-
return recommendations
|
|
389
|
-
|
|
390
|
-
def _extract_patterns(
|
|
391
|
-
self,
|
|
392
|
-
issues: list[dict],
|
|
393
|
-
predictions: list[dict],
|
|
394
|
-
) -> list[dict[str, Any]]:
|
|
395
|
-
"""Extract cross-domain patterns"""
|
|
396
|
-
return [
|
|
397
|
-
{
|
|
398
|
-
"pattern_type": "collaboration_maturity_model",
|
|
399
|
-
"description": (
|
|
400
|
-
"Systems that progress through collaboration maturity levels "
|
|
401
|
-
"(Reactive → Guided → Proactive → Anticipatory → Systems) "
|
|
402
|
-
"achieve exponential gains in effectiveness"
|
|
403
|
-
),
|
|
404
|
-
"domain_agnostic": True,
|
|
405
|
-
"applicable_to": [
|
|
406
|
-
"AI-human collaboration",
|
|
407
|
-
"Team collaboration",
|
|
408
|
-
"Tool adoption",
|
|
409
|
-
"Process improvement",
|
|
410
|
-
"Learning systems",
|
|
411
|
-
],
|
|
412
|
-
"levels": [
|
|
413
|
-
"1: Reactive (help after asked)",
|
|
414
|
-
"2: Guided (collaborative exploration)",
|
|
415
|
-
"3: Proactive (act before asked)",
|
|
416
|
-
"4: Anticipatory (predict and design relief)",
|
|
417
|
-
"5: Systems (build scalable structures)",
|
|
418
|
-
],
|
|
419
|
-
},
|
|
420
|
-
]
|
|
421
|
-
|
|
422
|
-
# Assessment methods
|
|
423
|
-
|
|
424
|
-
def _assess_maturity_level(self, issues: list[dict]) -> int:
|
|
425
|
-
"""Assess overall maturity level from issues"""
|
|
426
|
-
levels = [issue.get("current_level", 1) for issue in issues]
|
|
427
|
-
return max(levels) if levels else 1
|
|
428
|
-
|
|
429
|
-
def _assess_maturity_level_numeric(self, integration_files: list[str]) -> int:
|
|
430
|
-
"""Assess maturity level numerically"""
|
|
431
|
-
if self._has_trajectory_analysis(integration_files):
|
|
432
|
-
return 4
|
|
433
|
-
if self._has_pattern_detection(integration_files):
|
|
434
|
-
return 3
|
|
435
|
-
if self._has_context_accumulation(integration_files):
|
|
436
|
-
return 2
|
|
437
|
-
return 1
|
|
438
|
-
|
|
439
|
-
# Detection helper methods
|
|
440
|
-
|
|
441
|
-
def _detect_reactive_patterns(self, files: list[str]) -> int:
|
|
442
|
-
"""Count files with purely reactive AI patterns"""
|
|
443
|
-
reactive_count = 0
|
|
444
|
-
for filepath in files:
|
|
445
|
-
try:
|
|
446
|
-
with open(filepath) as f:
|
|
447
|
-
content = f.read()
|
|
448
|
-
# Simple heuristic: one-off AI calls with no context
|
|
449
|
-
if "ai.generate" in content or "openai." in content or "anthropic." in content:
|
|
450
|
-
if "context" not in content.lower() and "history" not in content.lower():
|
|
451
|
-
reactive_count += 1
|
|
452
|
-
except OSError:
|
|
453
|
-
pass
|
|
454
|
-
return reactive_count
|
|
455
|
-
|
|
456
|
-
def _has_context_accumulation(self, files: list[str]) -> bool:
|
|
457
|
-
"""Check if codebase accumulates context"""
|
|
458
|
-
keywords = ["CollaborationState", "context_history", "conversation_memory", "session_state"]
|
|
459
|
-
return self._has_any_keyword(files, keywords)
|
|
460
|
-
|
|
461
|
-
def _has_pattern_detection(self, files: list[str]) -> bool:
|
|
462
|
-
"""Check if codebase has pattern detection"""
|
|
463
|
-
keywords = ["PatternLibrary", "pattern_detection", "detect_patterns", "pattern_analysis"]
|
|
464
|
-
return self._has_any_keyword(files, keywords)
|
|
465
|
-
|
|
466
|
-
def _has_trajectory_analysis(self, files: list[str]) -> bool:
|
|
467
|
-
"""Check if codebase analyzes trajectory"""
|
|
468
|
-
keywords = ["trajectory", "growth_rate", "predict_bottleneck", "anticipatory"]
|
|
469
|
-
return self._has_any_keyword(files, keywords)
|
|
470
|
-
|
|
471
|
-
def _has_feedback_loops(self, files: list[str]) -> bool:
|
|
472
|
-
"""Check for feedback loop implementation"""
|
|
473
|
-
keywords = ["feedback", "trust_level", "quality_metric", "outcome_tracking"]
|
|
474
|
-
return self._has_any_keyword(files, keywords)
|
|
475
|
-
|
|
476
|
-
def _has_pattern_sharing(self, files: list[str]) -> bool:
|
|
477
|
-
"""Check for cross-integration pattern sharing"""
|
|
478
|
-
keywords = ["PatternLibrary", "shared_patterns", "cross_domain", "contribute_patterns"]
|
|
479
|
-
return self._has_any_keyword(files, keywords)
|
|
480
|
-
|
|
481
|
-
def _ai_used_as_tool(self, files: list[str]) -> bool:
|
|
482
|
-
"""Check if AI is used as tool vs partner"""
|
|
483
|
-
# Heuristic: tool usage has no context, no feedback, one-shot calls
|
|
484
|
-
has_context = self._has_context_accumulation(files)
|
|
485
|
-
has_feedback = self._has_feedback_loops(files)
|
|
486
|
-
return not (has_context and has_feedback)
|
|
487
|
-
|
|
488
|
-
def _has_collaboration_architecture(self, files: list[str]) -> bool:
|
|
489
|
-
"""Check for unified collaboration architecture"""
|
|
490
|
-
keywords = ["EmpathyOS", "CollaborationFramework", "AIOrchestrator", "BaseWizard"]
|
|
491
|
-
return self._has_any_keyword(files, keywords)
|
|
492
|
-
|
|
493
|
-
def _has_any_keyword(self, files: list[str], keywords: list[str]) -> bool:
|
|
494
|
-
"""Check if any file contains any keyword"""
|
|
495
|
-
for filepath in files:
|
|
496
|
-
try:
|
|
497
|
-
with open(filepath) as f:
|
|
498
|
-
content = f.read()
|
|
499
|
-
if any(kw in content for kw in keywords):
|
|
500
|
-
return True
|
|
501
|
-
except OSError:
|
|
502
|
-
pass
|
|
503
|
-
return False
|