{
  "@context": "https://spdx.org/rdf/3.0.1/spdx-context.jsonld",
  "@graph": [
    {
      "@id": "_:creationInfo_1",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd2"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/additionalToolSPDXRef-gnrtd3"
      ],
      "created": "2026-10-03T17:54:22Z"
    },
    {
      "@id": "_:creationInfo_0",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd0"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/additionalToolSPDXRef-gnrtd1"
      ],
      "created": "2026-10-03T17:54:22Z"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30615",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30616"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30564",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30585",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30586"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30576",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30570",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30571"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30566",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30573",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30574"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30566",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30582",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30583"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30576",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30610",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30611"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30588",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30612",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30613"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30564",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30607",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30608"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30588",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30565",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30566"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30564",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30575",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30576"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30564",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30587",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30588"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30564",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30611",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Mulan PSL v2",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30608",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Mulan PSL v2",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30586",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Mulan PSL v2",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30574",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Mulan PSL v2",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30616",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Mulan PSL v2",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30613",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Mulan PSL v2",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30571",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Mulan PSL v2",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30583",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Mulan PSL v2",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30609",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30572",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30584",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30614",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30566",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30572",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Management subpackage for witty-ub: install/uninstall, start/stop, clean, logs",
      "software_packageVersion": "0:1.0.4-6.oe2403sp3",
      "description": "witty-ub-manager provides interactive management operations for witty-ub,\nmirroring the deploy/host/ scripts: init PostgreSQL (deploy_pg.sh\nequivalent), sync PG credentials, enable/disable systemd units\n(witty-ub-web.service, witty-ub-latency.service), start/stop/restart\nservices, view status/logs (journalctl), and wipe data (PG tables +\n/var/witty-ub/data). Installed automatically with witty-ub-backend and\nwitty-ub-web; invoke via `witty-ub manager`. PostgreSQL server is pulled\nin by witty-ub-backend (only the backend role needs it).",
      "name": "witty-ub-manager",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/6b442e6fbc2323ec8a4b396a14446d54a4e3d868022704ff88acfb05ddcafc99-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/witty-ub-manager@1.0.4-6.oe2403sp3?arch=x86_64&epoch=0&upstream=witty-ub-1.0.4-6.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30576",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30584",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Frontend subpackage for witty-ub: Vue web UI + Nginx config",
      "software_packageVersion": "0:1.0.4-6.oe2403sp3",
      "description": "witty-ub-web ships the prebuilt Vue frontend and the\nwitty-ub-web.conf.template that witty-ub manager renders into\n/etc/witty-ub/web/nginx.conf during deployment.",
      "name": "witty-ub-web",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/6b442e6fbc2323ec8a4b396a14446d54a4e3d868022704ff88acfb05ddcafc99-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/witty-ub-web@1.0.4-6.oe2403sp3?arch=x86_64&epoch=0&upstream=witty-ub-1.0.4-6.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30564",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30614",
      "software_downloadLocation": "NOASSERTION",
      "summary": "The witty-ub is a tool designed for fault localization in superpods with Lingqu(UB) architecture.",
      "software_packageVersion": "0:1.0.4-6.oe2403sp3",
      "description": "The witty-ub is a tool designed for fault localization in superpods with Lingqu(UB) architecture,\nsupporting memory borrowing and URMA communication on superpods.\n\nThis meta-package pulls in witty-ub-backend, witty-ub-web and witty-ub-manager\nfor single-machine all-in-one deployments. For split deployment install only\nwitty-ub-backend (backend node) or witty-ub-web (frontend node); each\nauto-pulls witty-ub-manager.",
      "name": "witty-ub",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/6b442e6fbc2323ec8a4b396a14446d54a4e3d868022704ff88acfb05ddcafc99-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/witty-ub@1.0.4-6.oe2403sp3?arch=x86_64&epoch=0&upstream=witty-ub-1.0.4-6.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30588",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/SPDXRef-gnrtd30609",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Backend subpackage for witty-ub: KVCache/BRPC diagnosis binaries, latency plugin, Agent bundle",
      "software_packageVersion": "0:1.0.4-6.oe2403sp3",
      "description": "witty-ub-backend contains the KVCache/BRPC diagnosis binaries\n(witty-ub-diag-tool, witty-ub-brpc-diag), the Python latency plugin\n(FastAPI backend on port 9772), the witty_ub_diagnostician Agent bundle\nand the failure-mode data tree. Pair with witty-ub-manager to provision\nPostgreSQL and start the witty-ub-latency systemd service via\n`witty-ub manager deploy`.",
      "name": "witty-ub-backend",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/6b442e6fbc2323ec8a4b396a14446d54a4e3d868022704ff88acfb05ddcafc99-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/witty-ub-backend@1.0.4-6.oe2403sp3?arch=x86_64&epoch=0&upstream=witty-ub-1.0.4-6.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/additionalToolSPDXRef-gnrtd1",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-01d6793c-64f3-44fe-b5ca-f8630ee23307-specv3/additionalToolSPDXRef-gnrtd3",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_1"
    }
  ]
}