Files
whetstone_DSL/schemas/methods/runPipeline.schema.json
Bill c9d938f855 Sprint 7 Phase 7a: API documentation, schemas, and new RPC methods (Steps 202-206)
- Step 202: docs/AGENT_API.md — comprehensive JSON-RPC API reference with 23 methods
- Step 203: schemas/ — 20 JSON Schema files (8 types, 12 methods) for validation
- Step 204: Expose ContextAPI (getInScopeSymbols, getCallHierarchy, getDependencyGraph) and BatchMutationAPI (applyBatch) via WebSocket RPC
- Step 205: Expose Pipeline operations (runPipeline, parseSource, generateFromAST, projectLanguage) via WebSocket RPC
- Step 206: API schema validation tests — 51/51 assertions pass
- Updated PROGRESS.md with Sprint 5+6 completion, corrected summary table
- Updated FEATURE_REQUESTS.md to reflect implemented items
- Created sprint7_plan.md with 33 steps across 6 phases

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 07:31:01 -07:00

102 lines
3.2 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://whetstone-dsl.org/schemas/methods/runPipeline.schema.json",
"title": "runPipeline",
"description": "Run the full Whetstone pipeline from source to target language",
"type": "object",
"properties": {
"request": {
"type": "object",
"properties": {
"source": {
"type": "string",
"description": "The source code to process"
},
"sourceLanguage": {
"type": "string",
"description": "The source language (e.g., 'python', 'javascript')"
},
"targetLanguage": {
"type": "string",
"description": "The target language to generate (e.g., 'cpp', 'rust')"
}
},
"required": ["source", "sourceLanguage", "targetLanguage"],
"additionalProperties": false
},
"response": {
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Whether the pipeline completed successfully"
},
"generatedCode": {
"type": "string",
"description": "The generated code in the target language"
},
"ast": {
"type": "object",
"description": "The intermediate AST representation"
},
"parseDiagnostics": {
"type": "array",
"items": {
"$ref": "../types/ParseDiagnostic.schema.json"
},
"description": "Array of parse diagnostics"
},
"validationDiagnostics": {
"type": "array",
"items": {
"$ref": "../types/Diagnostic.schema.json"
},
"description": "Array of validation diagnostics"
},
"violations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "The type of violation"
},
"message": {
"type": "string",
"description": "The violation message"
},
"nodeId": {
"type": "string",
"description": "The node ID where the violation occurred"
}
},
"required": ["type", "message", "nodeId"]
},
"description": "Array of policy violations"
},
"suggestions": {
"type": "array",
"items": {
"$ref": "../types/Suggestion.schema.json"
},
"description": "Array of annotation suggestions"
},
"foldCount": {
"type": "integer",
"minimum": 0,
"description": "Number of constant folding optimizations applied"
},
"dceCount": {
"type": "integer",
"minimum": 0,
"description": "Number of dead code elimination optimizations applied"
}
},
"required": ["success", "generatedCode", "parseDiagnostics", "validationDiagnostics", "violations", "suggestions", "foldCount", "dceCount"],
"additionalProperties": false
}
},
"required": ["request", "response"]
}