gmodules1 Consolidation Progress
Overview
gmodules1 (gograb-modules monorepo) contains module generation tools, mock APIs, and configuration systems. Per Session 136, the best work is being absorbed into gspace1 (this monorepo) with updates to use our real APIs. gmodules1 code remains untouched.
Library Comparison Results
mock-api (libs/core/mock-api)
| Aspect |
gspace1 |
gmodules1 |
Winner |
| HTTP interceptor |
Identical |
Identical |
Tie |
| Data generators |
Identical |
Identical |
Tie |
| Persistence |
IndexedDB/LS/Memory |
IndexedDB/LS/Memory |
Tie |
generateId() |
substring() (modern) |
substr() (deprecated) |
gspace1 |
| Error handling |
Better (randomElement validation) |
No validation |
gspace1 |
Decision: Keep gspace1 version. It uses modern APIs and has better error handling.
module-config (libs/core/module-config)
| Aspect |
gspace1 |
gmodules1 |
Winner |
| AppUiConfiguration |
Basic (6 fields) |
Extended (10+ fields with scenario, pages, modules, theme) |
gmodules1 |
| Signals |
4 signals |
9 signals (adds pagesConfig, enabledModules, themeConfig, scenarioConfig) |
gmodules1 |
| RBAC filtering |
Identical |
Identical |
Tie |
| Tenant customization |
Identical |
Identical |
Tie |
| API validation |
None |
isConfigurationUsable() validates before using |
gmodules1 |
| Fallback logic |
None |
Enrichment methods (nav/dashboard/modules from registry) |
gmodules1 |
| Widget resolution |
None |
resolveWidgetComponentTypes() |
gmodules1 |
| AI generation tracking |
None |
generatedFrom?: AIGenerationMetadata |
gmodules1 |
Decision: Port gmodules1's extended features into gspace1's module-config. Key additions:
- Extended
AppUiConfiguration interface (scenario, pages, modules, theme)
- Additional signals (pagesConfig, enabledModules, themeConfig, scenarioConfig)
- API config validation (
isConfigurationUsable)
- Enrichment fallback methods
- Widget component type resolution
App Disposition
| gmodules1 App |
Status |
Notes |
ai-gateway |
Skip (absorb patterns into backend-vitto-api) |
Phase 7 |
gograb-admin |
Skip |
Covered by gspace1's gograb-space and gograb-admin apps |
gograb-mcp-server |
Skip |
Covered by gspace1's MCP infrastructure |
gograb-admin-e2e |
Skip |
E2E tests for skipped app |
claude-agent-mcp |
Skip |
Evaluate if any capabilities are needed |
Patterns to Port (into backend-vitto-api, Phase 7)
| Pattern |
Source |
Target |
Status |
| Template registry system |
ai-gateway/templates/ |
backend-vitto-api/module-generation/ |
Pending (Phase 7) |
| Phase-based workflow |
ai-gateway/modules.service.ts |
backend-vitto-api/module-generation/ |
Pending (Phase 7) |
| Multi-provider LLM abstraction |
ai-gateway/providers/ |
Evaluate if backend-ai-api needs this |
Pending (Phase 7) |
| Checkpoint/recovery system |
ai-gateway/context/ |
backend-vitto-api/module-generation/ |
Pending (Phase 7) |
Demo Modules to Port (as test fixtures)
| Module |
Source |
Target |
Status |
restaurant-core |
gmodules1/modules/restaurant-core/ |
gspace1/libs/modules/examples/ |
Pending |
menu-management |
gmodules1/modules/menu-management/ |
gspace1/libs/modules/examples/ |
Pending |
order-management |
gmodules1/modules/order-management/ |
gspace1/libs/modules/examples/ |
Pending |
reservation-system |
gmodules1/modules/reservation-system/ |
gspace1/libs/modules/examples/ |
Pending |
billing-system |
gmodules1/modules/billing-system/ |
gspace1/libs/modules/examples/ |
Pending |
Core Library Disposition
| gmodules1 Library |
Action |
Notes |
mock-api |
Keep gspace1 version |
gspace1 is more modern |
module-config |
Port gmodules1 features to gspace1 |
Extended AppUiConfiguration |
module-base |
Keep gspace1 version (73 files, tests) |
gspace1 is more mature |
module-integrator |
Keep gspace1 version (8-layer architecture) |
gspace1 is more mature |
action-registry |
Keep gspace1 version |
Identical |
data-access |
Keep gspace1 version |
Identical |
data-binding |
Keep gspace1 version |
Identical |
event-system |
Keep gspace1 version |
Identical |
log-system |
Keep gspace1 version |
Identical |
security |
Keep gspace1 version |
gspace1 has real auth |
shared-models |
Keep gspace1 version |
Identical |
ui-framework |
Keep gspace1 version |
gspace1 has @libs-ux |
utilities |
Keep gspace1 version |
Identical |
user-management |
Skip |
gspace1 has real user management via backend-api |
widget-system |
Skip |
gspace1 has @libs-widgets |
storage-system |
Keep gspace1 version |
gspace1 has @storage-system |