changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "description": "Coverage-first envelope: coverage and context describe the answer, result carries it.",
+ "properties": {
+ "context": {
+ "description": "Canonical context the answer belongs to (variant, format, stacks, positions, board, path). Null when the request is unsupported.",
+ "type": [
+ "object",
+ "null"
+ ]
+ },
+ "coverage": {
+ "description": "Whether the request was answered exactly, aggregated, or refused as out of coverage.",
+ "properties": {
+ "analyzedBoards": {
+ "description": "Boards actually read at the requested path.",
+ "type": "integer"
+ },
+ "available": {
+ "description": "What is published instead.",
+ "type": "string"
+ },
+ "dataClass": {
+ "description": "\"solver\", \"solver_aggregate\", or \"solver_comparison\".",
+ "type": "string"
+ },
+ "generatedAt": {
+ "description": "When the pack was generated.",
+ "type": "string"
+ },
+ "hasEv": {
+ "description": "Whether the pack ships per-combo EV.",
+ "type": "boolean"
+ },
+ "matchingBoards": {
+ "description": "Boards matching the texture filters.",
+ "type": "integer"
+ },
+ "objective": {
+ "description": "\"solver_ev\", \"cash_game_ev\", or \"chip_ev\".",
+ "type": "string"
+ },
+ "omittedByLimit": {
+ "description": "Matching boards dropped by boardLimit.",
+ "type": "integer"
+ },
+ "reason": {
+ "description": "Why the request is out of coverage.",
+ "type": "string"
+ },
+ "requested": {
+ "description": "The format, objective, ante, or pack that was asked for.",
+ "type": "object"
+ },
+ "solveQuality": {
+ "description": "Published exploitability and iteration counts. Omitted, never estimated, when the pack does not publish them.",
+ "type": "object"
+ },
+ "source": {
+ "description": "Pack, board, path, generation time, and solve quality.",
+ "type": "object"
+ },
+ "status": {
+ "description": "\"exact\", \"aggregated_report\", or \"unsupported\". Treat \"unsupported\" as a hard stop.",
+ "type": "string"
+ },
+ "unavailableAtPath": {
+ "description": "Selected boards with no node at the path.",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "result": {
+ "description": "Recommendation, made-hand and draw classification, blockers, the exact action mix with EV, and same-rank-class suit comparisons. Null when the request is unsupported.",
+ "type": [
+ "object",
+ "null"
+ ]
+ },
+ "schemaVersion": {
+ "description": "Envelope version, currently \"1.0\".",
+ "type": "string"
+ },
+ "warnings": {
+ "description": "Caveats that must survive into any answer built on this result.",
+ "items": {
+ "description": "One caveat about how the result may be used.",
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+}