Minotaur Project Structure Analysis and Renaming Recommendations

Advanced Compiler-Compiler Platform

Minotaur Project Structure Analysis and Renaming Recommendations

Current Issues Identified

1. Pipeline Naming ✅ FIXED

2. Project Naming Misalignment

3. Non-Descriptive Folder Names

Detailed Structure Analysis

Current Structure:

src/
├── GolemCognitiveGraph/           # ❌ Wrong project name
│   ├── Advanced/                  # ❌ Non-descriptive
│   │   └── ContextAwareEditor.cs  # Context-aware editing capabilities
│   ├── Core/                      # ✅ Good
│   │   ├── CognitiveGraphNode.cs
│   │   └── ConcreteNodes.cs
│   ├── Editor/                    # ✅ Good
│   │   ├── EditOperation.cs
│   │   └── GraphEditor.cs
│   ├── Parser/                    # ✅ Good
│   │   └── StepParserIntegration.cs
│   ├── Plugins/                   # ✅ Good
│   │   ├── BuiltInLanguagePlugins.cs
│   │   ├── ILanguagePlugin.cs
│   │   ├── LanguagePluginManager.cs
│   │   └── LanguageUnparseVisitors.cs
│   ├── Projects/                  # ✅ Good
│   │   ├── IProjectLoader.cs
│   │   ├── ProjectLoader.cs
│   │   └── ProjectModels.cs
│   ├── Unparser/                  # ✅ Good
│   │   ├── GraphUnparser.cs
│   │   └── IUnparseStrategy.cs
│   ├── Visitors/                  # ✅ Good (assumed based on structure)
│   └── GolemCognitiveGraph.csproj # ❌ Wrong project name
├── GolemCognitiveGraph.Demo/      # ❌ Wrong project name
├── GolemCognitiveGraph.Tests/     # ❌ Wrong project name
└── Minotaur.sln                   # ✅ Correct name

1. High Priority: Project and Namespace Renaming

A. Main Project Directory

CURRENT:  src/GolemCognitiveGraph/
PROPOSED: src/Minotaur/
REASON:   Aligns with project name - GolemCognitiveGraph should simply be Minotaur

B. Support Projects

CURRENT:  src/GolemCognitiveGraph.Demo/
PROPOSED: src/Minotaur.Demo/

CURRENT:  src/GolemCognitiveGraph.Tests/
PROPOSED: src/Minotaur.Tests/

C. Main Project File

CURRENT:  GolemCognitiveGraph.csproj
PROPOSED: Minotaur.csproj

2. Medium Priority: Folder Structure Improvements

A. Context-Aware Features

CURRENT:  Advanced/
PROPOSED: ContextAware/
REASON:   Clearly indicates context-aware editing functionality
CONTENTS: ContextAwareEditor.cs and related context-aware features

3. Namespace Updates Required

All C# files would need namespace updates:

// CURRENT
namespace GolemCognitiveGraph.Advanced;
namespace GolemCognitiveGraph.Core;
namespace GolemCognitiveGraph.Editor;
// etc.

// PROPOSED  
namespace Minotaur.ContextAware;
namespace Minotaur.Core;
namespace Minotaur.Editor;
// etc.

Functionality Analysis vs NuGet Dependencies

Current NuGet Dependencies:

Functionality That Could Be External:

1. Core Graph Functionality ⚠️ ALREADY EXTERNAL

2. Parsing Integration ✅ APPROPRIATE HERE

3. Plugin System Management ✅ APPROPRIATE HERE

4. Project Loading ❓ COULD BE EXTERNAL

Implementation Impact Assessment

Breaking Changes: HIGH

Migration Effort: MEDIUM-HIGH

Risk Level: MEDIUM

Recommendations Summary

Immediate Actions (This PR):

  1. ✅ Fix pipeline name (completed)
  2. ✅ Rename Advanced/ to ContextAware/ (completed)
  3. ✅ Update documentation to reflect correct naming (completed)
  4. ✅ Rename GolemCognitiveGraph to Minotaur (IMPLEMENTING NOW)
  5. ✅ Update all namespaces (IMPLEMENTING NOW)
  6. ✅ Update project files and solution (IMPLEMENTING NOW)
  7. ✅ Update CI/CD paths and references (IMPLEMENTING NOW)

Future Major Refactoring (Separate PR):

  1. 🏗️ Rename GolemCognitiveGraph to Minotaur
  2. 🔧 Update all namespaces
  3. 📦 Update project files and solution
  4. 🔄 Update CI/CD paths and references

Analysis Recommendations:

  1. 🔍 Review overlap with DevelApp.CognitiveGraph package
  2. 📊 Assess if Projects/ functionality should be external
  3. 📝 Document clear separation between core functionality and Minotaur-specific features

Conclusion

The current structure has significant naming inconsistencies that create confusion. The “GolemCognitiveGraph” naming appears to be legacy from a previous project iteration, while “Minotaur” is the current project identity. A phased approach is recommended:

  1. Phase 1 (Current): Complete project renaming and namespace restructuring - IMPLEMENTING NOW
  2. Phase 2 (Future): Evaluate external package consolidation opportunities
  3. Phase 3 (Analysis): Document clear separation between core functionality and Minotaur-specific features