Files
git.stella-ops.org/docs-archived/modules/cartographer/README.md
master 7bafcc3eef fix: filter domain assembly scans to Default ALC to prevent type identity mismatches
Plugin assemblies loaded via PluginHost into isolated AssemblyLoadContexts
produce distinct types even from the same DLL. When AppDomain.GetAssemblies()
returns both Default and plugin-ALC copies, DI registration and IOptions<T>
resolution silently fail (e.g. ValkeyTransportOptions defaulting to localhost).

Applied AssemblyLoadContext.Default filter to all 7 assembly discovery sites:
- MessagingServiceCollectionExtensions (transport plugin scan)
- StellaRouterIntegrationHelper (transport plugin loader)
- Gateway.WebService Program.cs (startup transport scan)
- GeneratedEndpointDiscoveryProvider (endpoint provider scan)
- ReflectionEndpointDiscoveryProvider (endpoint attribute scan)
- ServiceCollectionExtensions (schema provider scan)
- MigrationModulePluginDiscovery (migration plugin scan)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 14:01:12 +02:00

2.2 KiB

Cartographer Module

Status: Implemented Source: src/Cartographer/

Purpose

The Cartographer service materializes immutable SBOM property graphs, precomputes layout tiles, and hydrates policy and VEX overlays so other services (API, UI, CLI) can navigate and reason about dependency relationships with context.

Boundary note: Cartographer is not the source of truth for environment topology or promotion lanes; those are owned by Release Orchestrator ENVMGR/PROMOT.

Components

Services:

  • StellaOps.Cartographer - Core graph materialization, overlay management, and tile serving

Key Features

  • Graph Materialization - Convert normalized SBOMs (CycloneDX/SPDX) into immutable, versioned graph snapshots
  • Property Graph Generation - Build dependency relationship graphs with context-aware nodes and edges
  • Overlay Hydration - Merge Policy Engine findings and VEX metadata onto graph nodes and edges
  • Layout Tiles - Precomputed viewport tiles for efficient UI navigation
  • Path Relevance - Compute path importance within the dependency graph
  • Graph Diffing - Compare SBOM versions to track changes
  • Tenant-Aware Storage - Per-tenant graph isolation and versioning

API Capabilities

  • Viewport tile serving for large graphs (≥50k nodes)
  • Path exploration and filtering
  • Graph export and simulation overlays
  • RBAC-enforced access control via Authority

Dependencies

  • PostgreSQL - Graph and overlay storage
  • Policy Engine - Effective findings computation
  • SBom Service - Normalized SBOM projections
  • Excititor - VEX metadata ingestion
  • Authority - Authentication and RBAC enforcement (scopes: graph:*, sbom:read, findings:read)
  • Scheduler - Overlay update coordination
  • Architecture Charter: See src/Cartographer/StellaOps.Cartographer/AGENTS.md for charter and responsibilities
  • Sprint Plan: Check docs/implplan/SPRINT_*.md for current development status
  • Tasks: Completed tasks documented in src/Cartographer/StellaOps.Cartographer/TASKS.completed.md

Current Status

Active development. Materializes immutable SBOM property graphs with overlay hydration, deterministic snapshots, and optimized tile serving for dependency navigation.