Skip to content

M-1: Manage Omniverse #13

@spuentesp

Description

@spuentesp

Category: manage | Epic: 1 | Priority: high

Summary

Initialize and manage the root Omniverse node that serves as the top-level
container for all Multiverses. The Omniverse is typically a singleton created
on first run. Provides view and basic configuration for the root node.

Acceptance Criteria

  • System auto-creates Omniverse on first run if not exists
  • neo4j_get_omniverse returns the singleton Omniverse node
  • neo4j_ensure_omniverse creates node only if missing
  • Omniverse displays count of child Multiverses
  • User can edit Omniverse name and description
  • Only one Omniverse can exist (singleton enforced)
  • Unit tests cover initialization and retrieval

Dependencies

This use case depends on:

  • DL-1

Blocks

This use case blocks:

  • M-2
  • M-3

Implementation

Layer: 3

Files to create:

  • packages/cli/src/monitor_cli/commands/manage/omniverse.py
    Files to modify:
  • packages/cli/src/monitor_cli/commands/manage/__init__.py
  • packages/agents/src/monitor_agents/orchestrator.py

NEO4J Operations:

  • neo4j_get_omniverse (authority: *)
  • neo4j_ensure_omniverse (authority: CanonKeeper)
  • neo4j_update_omniverse (authority: CanonKeeper)

Notes:

  • Omniverse is created automatically on first system run
  • Should be a singleton - enforce at database level with constraint
  • Consider adding neo4j_ensure_omniverse to system startup

Testing Requirements

Minimum coverage: 80%

Unit tests:

  • test_get_omniverse_exists: returns existing omniverse
  • test_ensure_omniverse_creates: creates if missing
  • test_ensure_omniverse_noop: does nothing if exists
  • test_update_omniverse: updates name/description

Integration tests:

  • test_omniverse_singleton: only one can exist
  • test_omniverse_cli: CLI commands work correctly

References

Documentation:


Generated from /home/sebas/monitor2/docs/use-cases/manage/M-1.yml

Metadata

Metadata

Assignees

No one assigned

    Labels

    manageWorld administration (M-*)readyAll dependencies satisfied, ready to work

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions