10-backend/internal/relationships/artifact-manifest.json

{
  "manifestVersion": "1",
  "artifact": {
    "id": "IMPL-EP-RELATIONSHIP-MANAGEMENT-BACKEND",
    "type": "implementation-module",
    "name": "Relationship Management Backend",
    "status": "active"
  },
  "realizes": {
    "vision": [
      "MVP-001"
    ],
    "capabilities": [
      "CAP-004",
      "CAP-015",
      "CAP-024"
    ],
    "referenceBuildingBlocks": [
      "RBB-RELATIONSHIP-MANAGEMENT"
    ],
    "solutionBuildingBlocks": [
      "BB-EP-004"
    ],
    "requirements": [
      "REQ-MVP-REL-001",
      "REQ-MVP-AUD-001"
    ]
  },
  "implements": {
    "domainObjects": [
      "Relationship",
      "RelationshipRevision"
    ],
    "ports": [
      "RelationshipRepository"
    ],
    "runtimeComponents": [
      "engineering-platform-backend"
    ]
  },
  "documentation": {
    "solutionArchitecture": [
      "70-data/MVP-001-domain-model.md",
      "60-services/EP-001C-go-domain-repository-contract.md"
    ],
    "engineeringPlatform": [
      "10-backend/EP-001C-go-domain-repository.md"
    ]
  },
  "ownership": {
    "repository": "engineering-platform",
    "buildingBlock": "BB-EP-004",
    "modulePath": "10-backend/internal/relationships"
  },
  "quality": {
    "tests": [
      "10-backend/internal/relationships/domain"
    ],
    "requiredChecks": [
      "go-test",
      "traceability-validation",
      "repository-contract"
    ]
  },
  "verification": {
    "codeAreas": [
      {
        "path": "10-backend/internal/relationships/domain",
        "classification": "domain-logic",
        "status": "directly-verified",
        "evidence": [
          {
            "category": "unit-test",
            "path": "10-backend/internal/relationships/domain/relationship_test.go",
            "purpose": "prüft Mindestinvarianten vollständiger Beziehungen"
          }
        ]
      },
      {
        "path": "10-backend/internal/relationships/ports/repository.go",
        "classification": "declaration-only",
        "status": "indirectly-verified",
        "reason": "Repository-Port enthält nur den Vertrag.",
        "evidence": [
          {
            "category": "architecture-validation",
            "path": "10-backend/internal/relationships/artifact-manifest.json",
            "purpose": "weist Ownership und Port-Verantwortung aus"
          }
        ]
      },
      {
        "path": "10-backend/internal/relationships/adapters/mariadb",
        "classification": "adapter",
        "status": "verification-gap",
        "severity": "high",
        "reason": "MariaDB-Mapping und Fehlerpfade benötigen Integrationstests."
      }
    ]
  }
}