OverviewFilesCommitsIssuesDocsReleasesPeers

P2P-Hiverelay / test / fixtures / relaykernel-profile / relaykernel-meta-profile-v1-reserved-namespace-reject.json

159 lines · json ref:
{
  "name": "relaykernel-meta-profile-v1-reserved-namespace-reject",
  "description": "Rejects layer-2 app capabilities that squat on RelayKernel, HiveRelay, or HiveMesh-reserved channel namespaces.",
  "input": {
    "relayPubkey": "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
    "appCapabilities": [
      {
        "name": "rk-wallet",
        "channel": "wallet-v1",
        "version": 1,
        "owner": "wallet-app"
      },
      {
        "name": "seed-request-v1",
        "channel": "wallet-v2",
        "version": 1,
        "owner": "wallet-app"
      },
      {
        "name": "vault-v1",
        "channel": "hiverelay-forward",
        "version": 1,
        "owner": "vault-app"
      },
      {
        "name": "witness-v1",
        "channel": "t2-witness",
        "version": 1,
        "owner": "witness-app"
      }
    ]
  },
  "profile": {
    "kind": "relaykernel-meta-profile",
    "version": 1,
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "patch": 0
    },
    "relayPubkey": "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
    "source": {
      "capabilityDocSigned": false,
      "capabilitySchemaVersion": null
    },
    "meta": {
      "kernelChannels": [
        "rk-seed",
        "rk-proof",
        "rk-circuit",
        "rk-meta",
        "rk-accounting"
      ],
      "appCapabilities": [
        {
          "name": "rk-wallet",
          "channel": "wallet-v1",
          "version": 1,
          "owner": "wallet-app",
          "discovery": "per-app"
        },
        {
          "name": "seed-request-v1",
          "channel": "wallet-v2",
          "version": 1,
          "owner": "wallet-app",
          "discovery": "per-app"
        },
        {
          "name": "vault-v1",
          "channel": "hiverelay-forward",
          "version": 1,
          "owner": "vault-app",
          "discovery": "per-app"
        },
        {
          "name": "witness-v1",
          "channel": "t2-witness",
          "version": 1,
          "owner": "witness-app",
          "discovery": "per-app"
        }
      ],
      "advertisedCapabilities": [
        "rk-seed",
        "rk-proof",
        "rk-circuit",
        "rk-meta",
        "rk-accounting",
        "rk-wallet",
        "seed-request-v1",
        "vault-v1",
        "witness-v1"
      ],
      "reservedAppCapabilityPrefixes": [
        "rk",
        "rk1",
        "rk2",
        "rk3",
        "rkp",
        "rkv",
        "rkc",
        "t1",
        "t2",
        "t3",
        "hiverelay",
        "relaykernel"
      ],
      "reservedAppCapabilities": [
        "rk-seed",
        "rk-proof",
        "rk-circuit",
        "rk-meta",
        "rk-accounting",
        "seed-request-v1",
        "relay-circuit-v1",
        "hiverelay-proof",
        "hiverelay-forward",
        "hiverelay-publish",
        "hiverelay-custody",
        "hiverelay-accounting",
        "circuit-relay",
        "proof-of-retrievability",
        "capability-meta",
        "os-accounting"
      ],
      "layer2CapabilitiesSeparated": false,
      "capLimits": {
        "maxConcurrentLeases": 256,
        "maxStorageCap": 4294967296,
        "maxRetainHorizonSeconds": 7776000,
        "heartbeatIntervalSeconds": 300,
        "nonceWindowSeconds": 3600
      }
    },
    "directory": {
      "optIn": false,
      "topic": null,
      "publicEnumerable": false,
      "rateLimitSeconds": 600,
      "record": null,
      "providedRecordIgnored": false
    }
  },
  "verdict": {
    "valid": false,
    "errors": [
      "app capability name uses reserved kernel namespace: rk-wallet",
      "app capability name uses reserved kernel namespace: seed-request-v1",
      "app capability channel uses reserved kernel namespace: hiverelay-forward",
      "app capability channel uses reserved kernel namespace: t2-witness",
      "layer-2 capabilities are not separated from kernel channels"
    ],
    "warnings": [
      "capability document is not signed"
    ]
  }
}