Route supported multi-request CP shared-KV extend allocation through request-local owner plans so downstream direct-write paths can trust flattened out_cache_loc owner lanes. Unsupported page plans now fail fast instead of falling back to legacy allocation. Include the normative govctl RFC and completed work-item trail in the tracked repository; keep transient superpowers planning outside the sglang branch. Constraint: RFC-0001 W2 requires no legacy multi_batch fallback for supported bs>1 owner-lane allocation Rejected: concatenating requests before owner planning | CP ownership is request-relative Rejected: committing only docs/superpowers plan | it omits the normative RFC and work-item trail Confidence: high Scope-risk: moderate Directive: Preserve flattened request order when changing CP shared-KV allocation; run govctl from the sglang repository root Tested: remote uv test_nsa_cp_utils.py 39 OK; remote uv test_cp_shared_kv_layout.py 34 OK; remote uv test_alloc_pages_with_owners.py 10 OK; govctl check; git diff --check Not-tested: CUDA ETE/perf paths beyond focused W1/W2 unit suites
121 lines
3.2 KiB
JSON
121 lines
3.2 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"title": "RFC Specification",
|
|
"description": "JSON Schema for RFC TOML artifacts with [govctl] metadata section",
|
|
"type": "object",
|
|
"required": ["govctl", "sections"],
|
|
"properties": {
|
|
"govctl": {
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"version",
|
|
"status",
|
|
"phase",
|
|
"owners",
|
|
"created"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"pattern": "^RFC-\\d{4}$"
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"version": {
|
|
"type": "string",
|
|
"pattern": "^\\d+\\.\\d+\\.\\d+$"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"enum": ["draft", "normative", "deprecated"]
|
|
},
|
|
"phase": {
|
|
"type": "string",
|
|
"enum": ["spec", "impl", "test", "stable"]
|
|
},
|
|
"owners": {
|
|
"type": "array",
|
|
"items": { "type": "string" },
|
|
"minItems": 1
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"updated": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"supersedes": {
|
|
"type": "string",
|
|
"pattern": "^RFC-\\d{4}$"
|
|
},
|
|
"refs": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"pattern": "^(RFC-\\d{4}(?::C-[A-Z][A-Z0-9-]*)?|ADR-\\d{4}|WI-\\d{4}-\\d{2}-\\d{2}-(?:[a-f0-9]{4}(?:-\\d{3})?|\\d{3}))$"
|
|
}
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"pattern": "^[a-z][a-z0-9-]*$"
|
|
}
|
|
},
|
|
"signature": {
|
|
"type": "string",
|
|
"pattern": "^[0-9a-f]{64}$"
|
|
},
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"sections": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["title"],
|
|
"properties": {
|
|
"title": { "type": "string" },
|
|
"clauses": {
|
|
"type": "array",
|
|
"items": { "type": "string" }
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"changelog": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["version", "date"],
|
|
"properties": {
|
|
"version": {
|
|
"type": "string",
|
|
"pattern": "^\\d+\\.\\d+\\.\\d+$"
|
|
},
|
|
"date": { "type": "string", "format": "date" },
|
|
"notes": { "type": "string" },
|
|
"added": { "type": "array", "items": { "type": "string" } },
|
|
"changed": { "type": "array", "items": { "type": "string" } },
|
|
"deprecated": { "type": "array", "items": { "type": "string" } },
|
|
"removed": { "type": "array", "items": { "type": "string" } },
|
|
"fixed": { "type": "array", "items": { "type": "string" } },
|
|
"security": { "type": "array", "items": { "type": "string" } }
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|