159 lines
4.3 KiB
JSON
159 lines
4.3 KiB
JSON
{
|
|
"schemaVersion": 1,
|
|
"registries": [
|
|
{
|
|
"registryId": "FE-REG-ROUTE",
|
|
"path": "src/contracts/routes.js",
|
|
"exportName": "ROUTE_REGISTRY",
|
|
"owner": "feature-routing-navigation-guard-contract",
|
|
"requiredFields": [
|
|
"routeId",
|
|
"path",
|
|
"paramsSchema",
|
|
"searchSchema",
|
|
"access",
|
|
"loadingSurface",
|
|
"errorSurface",
|
|
"chunkId"
|
|
]
|
|
},
|
|
{
|
|
"registryId": "FE-REG-API",
|
|
"path": "src/contracts/api-operations.js",
|
|
"exportName": "API_OPERATIONS",
|
|
"owner": "feature-api-client-response-envelope-contract",
|
|
"requiredFields": [
|
|
"method",
|
|
"path",
|
|
"operationId",
|
|
"auth",
|
|
"timeoutMs",
|
|
"idempotency",
|
|
"requestSchema",
|
|
"responseSchema",
|
|
"owner"
|
|
]
|
|
},
|
|
{
|
|
"registryId": "FE-REG-ENV",
|
|
"path": "src/contracts/env.js",
|
|
"exportName": "ENV_REGISTRY",
|
|
"owner": "feature-frontend-env-runtime-config-contract",
|
|
"requiredFields": ["phase", "classification", "required", "defaultValue"]
|
|
},
|
|
{
|
|
"registryId": "FE-REG-STORAGE",
|
|
"path": "src/contracts/storage-keys.js",
|
|
"exportName": "STORAGE_REGISTRY",
|
|
"owner": "feature-frontend-storage-registry-contract",
|
|
"requiredFields": [
|
|
"logicalName",
|
|
"physicalKey",
|
|
"backend",
|
|
"classification",
|
|
"schemaVersion",
|
|
"ttl",
|
|
"migration",
|
|
"quotaFallback"
|
|
]
|
|
},
|
|
{
|
|
"registryId": "FE-REG-ERROR",
|
|
"path": "src/contracts/errors.js",
|
|
"exportName": "ERROR_REGISTRY",
|
|
"owner": "feature-frontend-error-classification-boundary-contract",
|
|
"requiredFields": [
|
|
"kind",
|
|
"defaultRetryable",
|
|
"severity",
|
|
"userMessageKey",
|
|
"action",
|
|
"telemetryEvent",
|
|
"redaction"
|
|
]
|
|
},
|
|
{
|
|
"registryId": "FE-REG-QUERY",
|
|
"path": "src/contracts/query-keys.js",
|
|
"exportName": "QUERY_REGISTRY",
|
|
"owner": "feature-server-state-caching-contract",
|
|
"requiredFields": [
|
|
"namespace",
|
|
"serialization",
|
|
"identity",
|
|
"invalidation",
|
|
"version",
|
|
"persistence"
|
|
]
|
|
},
|
|
{
|
|
"registryId": "FE-REG-TELEMETRY",
|
|
"path": "src/contracts/telemetry.js",
|
|
"exportName": "TELEMETRY_REGISTRY",
|
|
"owner": "feature-frontend-observability-logging-trace-contract",
|
|
"requiredFields": [
|
|
"eventName",
|
|
"trigger",
|
|
"requiredAttributes",
|
|
"optionalAttributes",
|
|
"forbiddenAttributes",
|
|
"sampling",
|
|
"delivery"
|
|
]
|
|
},
|
|
{
|
|
"registryId": "FE-REG-RELEASE",
|
|
"path": "src/contracts/release-tokens.js",
|
|
"exportName": "RELEASE_TOKEN_REGISTRY",
|
|
"owner": "feature-frontend-release-cache-rollback-contract",
|
|
"requiredFields": ["token", "source", "compatibilityRole"],
|
|
"declaredRows": {
|
|
"appVersion": {
|
|
"token": "appVersion",
|
|
"source": "manifest",
|
|
"compatibilityRole": "human release label"
|
|
},
|
|
"buildId": {
|
|
"token": "buildId",
|
|
"source": "CI build",
|
|
"compatibilityRole": "asset and HTML coherence"
|
|
},
|
|
"commitSha": {
|
|
"token": "commitSha",
|
|
"source": "VCS",
|
|
"compatibilityRole": "source traceability"
|
|
},
|
|
"configSchemaVersion": {
|
|
"token": "configSchemaVersion",
|
|
"source": "runtime config schema",
|
|
"compatibilityRole": "boot compatibility"
|
|
},
|
|
"apiContractVersion": {
|
|
"token": "apiContractVersion",
|
|
"source": "frontend/backend agreement",
|
|
"compatibilityRole": "schema compatibility"
|
|
},
|
|
"assetManifestHash": {
|
|
"token": "assetManifestHash",
|
|
"source": "build output",
|
|
"compatibilityRole": "chunk integrity"
|
|
},
|
|
"releaseId": {
|
|
"token": "releaseId",
|
|
"source": "deploy system",
|
|
"compatibilityRole": "rollback target"
|
|
},
|
|
"builtAt": {
|
|
"token": "builtAt",
|
|
"source": "CI",
|
|
"compatibilityRole": "diagnostics only"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"compatibilityImpact": {
|
|
"allowed": ["none", "additive", "behavior-change", "breaking"],
|
|
"current": "additive"
|
|
}
|
|
}
|