{
  "schemaVersion": "openpond.sdkFoundationOperationMatrix.v1",
  "scope": "83 existing client methods, including 14 tool-learning operations; the training estimate endpoint remains explicitly unsupported. Tool-learning identity seals use the existing Harness owner, not compact training hashes.",
  "mediaTypes": {
    "training": "application/vnd.openpond.training+json;version=2",
    "modelProjects": "application/vnd.openpond.model-project+json;version=2",
    "learning": "application/json"
  },
  "operations": [
    {
      "client": "createTrainingClient",
      "typescriptMethod": "capabilities",
      "pythonMethod": "capabilities",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "GET",
      "path": "/v1/training/capabilities",
      "requestSchema": null,
      "responseSchema": "TrainingCapabilitiesSchema",
      "responseUnwrap": "capabilities",
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "gpuCatalog",
      "pythonMethod": "gpu_catalog",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "GET",
      "path": "/v1/training/gpu-catalog",
      "requestSchema": null,
      "responseSchema": "TrainingGpuCatalogSchema",
      "responseUnwrap": "catalog",
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "stageArtifact",
      "pythonMethod": "stage_artifact",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "POST",
      "path": "/v1/training/artifacts",
      "requestSchema": "TrainingInputArtifactUploadSchema",
      "responseSchema": "TrainingInputArtifactSchema",
      "responseUnwrap": "artifact",
      "writeReplay": "never automatic",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "createJob",
      "pythonMethod": "create_job",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "POST",
      "path": "/v1/training/jobs",
      "requestSchema": "TrainingJobSubmissionSchema",
      "responseSchema": "TrainingJobSchema",
      "responseUnwrap": "job",
      "writeReplay": "never automatic",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "listJobs",
      "pythonMethod": "list_jobs",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs",
      "requestSchema": null,
      "responseSchema": "TrainingJobPageSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "getJob",
      "pythonMethod": "get_job",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs/{jobId}",
      "requestSchema": null,
      "responseSchema": "TrainingJobSchema",
      "responseUnwrap": "job",
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "cancelJob",
      "pythonMethod": "cancel_job",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "POST",
      "path": "/v1/training/jobs/{jobId}/cancel",
      "requestSchema": "TrainingJobControlRequestSchema",
      "responseSchema": "TrainingJobSchema",
      "responseUnwrap": "job",
      "writeReplay": "never automatic",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "stopAfterGroup",
      "pythonMethod": "stop_after_group",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "POST",
      "path": "/v1/training/jobs/{jobId}/stop-after-group",
      "requestSchema": "TrainingJobControlRequestSchema",
      "responseSchema": "TrainingJobSchema",
      "responseUnwrap": "job",
      "writeReplay": "never automatic",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "recoverCheckpoint",
      "pythonMethod": "recover_checkpoint",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "POST",
      "path": "/v1/training/jobs/{jobId}/recover",
      "requestSchema": "TrainingCheckpointRecoveryRequestSchema",
      "responseSchema": "TrainingJobSchema",
      "responseUnwrap": "job",
      "writeReplay": "never automatic",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "events",
      "pythonMethod": "events",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs/{jobId}/events",
      "requestSchema": null,
      "responseSchema": "TrainingJobEventSchema[]",
      "responseUnwrap": "events",
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "logs",
      "pythonMethod": "logs",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs/{jobId}/logs",
      "requestSchema": null,
      "responseSchema": "TrainingJobLogSchema[]",
      "responseUnwrap": "logs",
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "outputs",
      "pythonMethod": "outputs",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs/{jobId}/outputs",
      "requestSchema": null,
      "responseSchema": "TrainingJobOutputsSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "evaluationTasks",
      "pythonMethod": "evaluation_tasks",
      "source": "packages/sdk/src/training.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs/{jobId}/evaluations/{evaluationId}/tasks",
      "requestSchema": null,
      "responseSchema": "TrainingEvaluationTaskPageSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "prepareRun",
      "pythonMethod": "prepare_run",
      "source": "packages/sdk/src/training-preparations.ts",
      "httpMethod": "POST",
      "path": "/v1/training/preparations",
      "requestSchema": "TrainingPreparationRequestSchema",
      "responseSchema": "TrainingPreparationReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "preparations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "listPreparations",
      "pythonMethod": "list_preparations",
      "source": "packages/sdk/src/training-preparations.ts",
      "httpMethod": "GET",
      "path": "/v1/training/preparations",
      "requestSchema": "TrainingPreparationListQuerySchema",
      "responseSchema": "TrainingPreparationPageSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "preparations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "getPreparation",
      "pythonMethod": "get_preparation",
      "source": "packages/sdk/src/training-preparations.ts",
      "httpMethod": "GET",
      "path": "/v1/training/preparations/{id}",
      "requestSchema": null,
      "responseSchema": "TrainingPreparationReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "preparations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "startPreparation",
      "pythonMethod": "start_preparation",
      "source": "packages/sdk/src/training-preparations.ts",
      "httpMethod": "POST",
      "path": "/v1/training/preparations/{id}/start",
      "requestSchema": "TrainingPreparationControlSchema",
      "responseSchema": "TrainingPreparationReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "preparations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "cancelPreparation",
      "pythonMethod": "cancel_preparation",
      "source": "packages/sdk/src/training-preparations.ts",
      "httpMethod": "POST",
      "path": "/v1/training/preparations/{id}/cancel",
      "requestSchema": "TrainingPreparationControlSchema",
      "responseSchema": "TrainingPreparationReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "preparations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "estimate",
      "pythonMethod": "estimate",
      "source": "packages/sdk/src/training-estimates.ts",
      "httpMethod": "POST",
      "path": "/v1/training/estimates",
      "requestSchema": "TrainingEstimateRequestSchema",
      "responseSchema": "TrainingEstimateSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "estimate",
      "classification": "existing_client_with_verified_missing_hosted_endpoint",
      "proofState": "source_only_gap",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "acceptanceGroups",
      "pythonMethod": "acceptance_groups",
      "source": "packages/sdk/src/training-acceptance.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs/{jobId}/acceptance-groups",
      "requestSchema": "TrainingAcceptanceGroupQuerySchema",
      "responseSchema": "TrainingAcceptanceGroupPageSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "acceptanceGroup",
      "pythonMethod": "acceptance_group",
      "source": "packages/sdk/src/training-acceptance.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs/{jobId}/acceptance-groups/{groupId}",
      "requestSchema": null,
      "responseSchema": "AcceptanceGroupSnapshotSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "candidateDecision",
      "pythonMethod": "candidate_decision",
      "source": "packages/sdk/src/training-candidate-decisions.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs/{jobId}/candidates/{artifactId}/decision",
      "requestSchema": null,
      "responseSchema": "TrainingCandidateDecisionSchema",
      "responseUnwrap": "decision",
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "recordCandidateDecision",
      "pythonMethod": "record_candidate_decision",
      "source": "packages/sdk/src/training-candidate-decisions.ts",
      "httpMethod": "POST",
      "path": "/v1/training/jobs/{jobId}/candidates/{artifactId}/decision",
      "requestSchema": "TrainingCandidateDecisionRequestSchema",
      "responseSchema": "TrainingCandidateDecisionSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "publishHarnessSource",
      "pythonMethod": "publish_harness_source",
      "source": "packages/sdk/src/training-harness-sources.ts",
      "httpMethod": "PUT",
      "path": "/v1/training/harness-sources/{id}/{contentHash}",
      "requestSchema": "HarnessSourcePackageSchema|HarnessPolicySourcePackageSchema",
      "responseSchema": "TrainingHarnessSourcePublicationSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createTrainingClient",
      "typescriptMethod": "getHarnessSource",
      "pythonMethod": "get_harness_source",
      "source": "packages/sdk/src/training-harness-sources.ts",
      "httpMethod": "GET",
      "path": "/v1/training/harness-sources/{id}/{contentHash}",
      "requestSchema": null,
      "responseSchema": "HarnessSourcePackageSchema|HarnessPolicySourcePackageSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "training",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.training+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/training.ts:createTrainingClient.request default headers"
    },
    {
      "client": "createModelProjectsClient",
      "typescriptMethod": "configurationCandidates",
      "pythonMethod": "configuration_candidates",
      "source": "packages/sdk/src/model-projects.ts",
      "httpMethod": "GET",
      "path": "/v1/model-projects/configuration/candidates",
      "requestSchema": null,
      "responseSchema": "ModelProjectBaseModelCandidateSchema[]",
      "responseUnwrap": "candidates",
      "writeReplay": "bounded read retry only",
      "authorityDomain": "models",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/model-projects.ts:configurationCandidates/checkConfiguration/saveConfiguration explicit JSON overrides"
    },
    {
      "client": "createModelProjectsClient",
      "typescriptMethod": "checkConfiguration",
      "pythonMethod": "check_configuration",
      "source": "packages/sdk/src/model-projects.ts",
      "httpMethod": "POST",
      "path": "/v1/model-projects/configuration/check",
      "requestSchema": "ModelProjectSaveRequestSchema",
      "responseSchema": "ModelProjectConfigurationCheckSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "models",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/model-projects.ts:configurationCandidates/checkConfiguration/saveConfiguration explicit JSON overrides"
    },
    {
      "client": "createModelProjectsClient",
      "typescriptMethod": "saveConfiguration",
      "pythonMethod": "save_configuration",
      "source": "packages/sdk/src/model-projects.ts",
      "httpMethod": "POST",
      "path": "/v1/model-projects/configuration/save",
      "requestSchema": "ModelProjectSaveRequestSchema",
      "responseSchema": "HostedModelProjectSummarySchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "models",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/model-projects.ts:configurationCandidates/checkConfiguration/saveConfiguration explicit JSON overrides"
    },
    {
      "client": "createModelProjectsClient",
      "typescriptMethod": "upsert",
      "pythonMethod": "upsert",
      "source": "packages/sdk/src/model-projects.ts",
      "httpMethod": "PUT",
      "path": "/v1/model-projects/{portableProjectId}",
      "requestSchema": "HostedModelProjectSyncSchema",
      "responseSchema": "HostedModelProjectSummarySchema",
      "responseUnwrap": "project",
      "writeReplay": "never automatic",
      "authorityDomain": "models",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.model-project+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/model-projects.ts:createModelProjectsClient.request default headers"
    },
    {
      "client": "createModelProjectsClient",
      "typescriptMethod": "list",
      "pythonMethod": "list",
      "source": "packages/sdk/src/model-projects.ts",
      "httpMethod": "GET",
      "path": "/v1/model-projects",
      "requestSchema": null,
      "responseSchema": "HostedModelProjectSummarySchema[]",
      "responseUnwrap": "projects",
      "writeReplay": "bounded read retry only",
      "authorityDomain": "models",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.model-project+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/model-projects.ts:createModelProjectsClient.request default headers"
    },
    {
      "client": "createModelProjectsClient",
      "typescriptMethod": "get",
      "pythonMethod": "get",
      "source": "packages/sdk/src/model-projects.ts",
      "httpMethod": "GET",
      "path": "/v1/model-projects/{projectId}",
      "requestSchema": null,
      "responseSchema": "HostedModelProjectDetailSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "models",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/vnd.openpond.model-project+json;version=2",
      "requestMediaTypeAuthority": "packages/sdk/src/model-projects.ts:createModelProjectsClient.request default headers"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "command",
      "pythonMethod": "command",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/commands",
      "requestSchema": "LearningCommandRequestSchema",
      "responseSchema": "LearningOperationResultSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "get",
      "pythonMethod": "get",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/read",
      "requestSchema": "LearningReadRequestSchema",
      "responseSchema": "LearningResourceSchemas[kind]",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "list",
      "pythonMethod": "list",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/read",
      "requestSchema": "LearningReadRequestSchema",
      "responseSchema": "LearningResourcePage[kind]",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "inspectEvidence",
      "pythonMethod": "inspect_evidence",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/read",
      "requestSchema": "LearningReadRequestSchema",
      "responseSchema": "TaskEvidenceInspectionResultSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "inspectTaskQueue",
      "pythonMethod": "inspect_task_queue",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/read",
      "requestSchema": "LearningReadRequestSchema",
      "responseSchema": "LearningTaskQueueInspectionSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "inspectPolicy",
      "pythonMethod": "inspect_policy",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/read",
      "requestSchema": "LearningReadRequestSchema",
      "responseSchema": "LearningPolicyInspectionResultSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "createSourceCredential",
      "pythonMethod": "create_source_credential",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/credentials",
      "requestSchema": "LearningSourceCredentialRequestSchema",
      "responseSchema": "LearningSourceCredentialCreatedSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "listSourceCredentials",
      "pythonMethod": "list_source_credentials",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/credentials",
      "requestSchema": "LearningSourceCredentialRequestSchema",
      "responseSchema": "LearningSourceCredentialPageSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "revokeSourceCredential",
      "pythonMethod": "revoke_source_credential",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/credentials",
      "requestSchema": "LearningSourceCredentialRequestSchema",
      "responseSchema": "LearningSourceCredentialSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "sourceConfiguration",
      "pythonMethod": "source_configuration",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/source-config",
      "requestSchema": "LearningSourceConfigurationRequestSchema",
      "responseSchema": "LearningSourceConfigurationSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "publishBatch",
      "pythonMethod": "publish_batch",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/publish-batch",
      "requestSchema": "LearningBatchPublicationSchema",
      "responseSchema": "LearningBatchPublicationResultSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learningPublication",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "submitExample",
      "pythonMethod": "submit_example",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/commands",
      "requestSchema": "TaskExampleSubmissionSchema",
      "responseSchema": "LearningOperationResultSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondLearningClient",
      "typescriptMethod": "submitFeedback",
      "pythonMethod": "submit_feedback",
      "source": "packages/sdk/src/learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/learning/commands",
      "requestSchema": "TaskFeedbackSubmissionSchema",
      "responseSchema": "LearningOperationResultSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "createTrainingClient.postTraining",
      "typescriptMethod": "attach",
      "pythonMethod": "attach",
      "source": "packages/sdk/src/post-training.ts",
      "httpMethod": "POST",
      "path": "/v1/training/post-training-plans",
      "requestSchema": "AttachPostTrainingSchema",
      "responseSchema": "PostTrainingPlanSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "postTraining",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/post-training.ts:createPostTrainingClient explicit JSON headers; Sandbox lib/public-api/taskset-package-body.ts content-type guard"
    },
    {
      "client": "createTrainingClient.postTraining",
      "typescriptMethod": "get",
      "pythonMethod": "get",
      "source": "packages/sdk/src/post-training.ts",
      "httpMethod": "GET",
      "path": "/v1/training/jobs/{jobId}/post-training",
      "requestSchema": null,
      "responseSchema": "PostTrainingSummarySchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "postTraining",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/post-training.ts:createPostTrainingClient explicit JSON headers; Sandbox lib/public-api/taskset-package-body.ts content-type guard"
    },
    {
      "client": "createTrainingClient.postTraining",
      "typescriptMethod": "control",
      "pythonMethod": "control",
      "source": "packages/sdk/src/post-training.ts",
      "httpMethod": "POST",
      "path": "/v1/training/jobs/{jobId}/post-training/{action}",
      "requestSchema": "PostTrainingControlSchema",
      "responseSchema": "PostTrainingSummarySchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "postTraining",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/post-training.ts:createPostTrainingClient explicit JSON headers; Sandbox lib/public-api/taskset-package-body.ts content-type guard"
    },
    {
      "client": "OpenPondModelTasksetRunsClient",
      "typescriptMethod": "create",
      "pythonMethod": "create",
      "source": "packages/sdk/src/model-taskset-runs.ts",
      "httpMethod": "POST",
      "path": "/v1/model-taskset-runs",
      "requestSchema": "ModelTasksetRunRequestSchema",
      "responseSchema": "ModelTasksetRunDetailsSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "evaluations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondModelTasksetRunsClient",
      "typescriptMethod": "list",
      "pythonMethod": "list",
      "source": "packages/sdk/src/model-taskset-runs.ts",
      "httpMethod": "GET",
      "path": "/v1/model-taskset-runs",
      "requestSchema": "ModelTasksetRunListQuerySchema",
      "responseSchema": "ModelTasksetRunPageSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "evaluations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondModelTasksetRunsClient",
      "typescriptMethod": "get",
      "pythonMethod": "get",
      "source": "packages/sdk/src/model-taskset-runs.ts",
      "httpMethod": "GET",
      "path": "/v1/model-taskset-runs/{id}",
      "requestSchema": null,
      "responseSchema": "ModelTasksetRunDetailsSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "evaluations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondModelTasksetRunsClient",
      "typescriptMethod": "cancel",
      "pythonMethod": "cancel",
      "source": "packages/sdk/src/model-taskset-runs.ts",
      "httpMethod": "POST",
      "path": "/v1/model-taskset-runs/{id}/cancel",
      "requestSchema": null,
      "responseSchema": "ModelTasksetRunDetailsSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "evaluations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondModelTasksetRunsClient",
      "typescriptMethod": "result",
      "pythonMethod": "result",
      "source": "packages/sdk/src/model-taskset-runs.ts",
      "httpMethod": "GET",
      "path": "/v1/model-taskset-runs/{id}/result",
      "requestSchema": null,
      "responseSchema": "ModelTasksetRunResultSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "evaluations",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetWorkspaceClient",
      "typescriptMethod": "list",
      "pythonMethod": "list",
      "source": "packages/sdk/src/dataset-workspace-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces",
      "requestSchema": "DatasetWorkspaceListQuerySchema",
      "responseSchema": "DatasetWorkspaceListSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetWorkspaceClient",
      "typescriptMethod": "get",
      "pythonMethod": "get",
      "source": "packages/sdk/src/dataset-workspace-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces/{id}",
      "requestSchema": null,
      "responseSchema": "DatasetWorkspaceReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetWorkspaceClient",
      "typescriptMethod": "operationResult",
      "pythonMethod": "operation_result",
      "source": "packages/sdk/src/dataset-workspace-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces/operations/{operationId}",
      "requestSchema": null,
      "responseSchema": "DatasetWorkspaceOperationResultSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetWorkspaceClient",
      "typescriptMethod": "beginVersion",
      "pythonMethod": "begin_version",
      "source": "packages/sdk/src/dataset-workspace-client.ts",
      "httpMethod": "POST",
      "path": "/v1/dataset-workspaces/{id}/begin-version",
      "requestSchema": "DatasetWorkspaceBeginVersionSchema",
      "responseSchema": "DatasetWorkspaceReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetWorkspaceClient",
      "typescriptMethod": "versions",
      "pythonMethod": "versions",
      "source": "packages/sdk/src/dataset-workspace-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces/{id}/versions",
      "requestSchema": null,
      "responseSchema": "DatasetWorkspaceVersionsSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetWorkspaceClient",
      "typescriptMethod": "version",
      "pythonMethod": "version",
      "source": "packages/sdk/src/dataset-workspace-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces/{id}/versions/{revision}",
      "requestSchema": null,
      "responseSchema": "DatasetWorkspaceReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetWorkspaceClient",
      "typescriptMethod": "save",
      "pythonMethod": "save",
      "source": "packages/sdk/src/dataset-workspace-client.ts",
      "httpMethod": "PUT",
      "path": "/v1/dataset-workspaces/{id}",
      "requestSchema": "DatasetWorkspaceWriteSchema",
      "responseSchema": "DatasetWorkspaceReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetWorkspaceClient",
      "typescriptMethod": "validate",
      "pythonMethod": "validate",
      "source": "packages/sdk/src/dataset-workspace-client.ts",
      "httpMethod": "POST",
      "path": "/v1/dataset-workspaces/{id}/validate",
      "requestSchema": "DatasetWorkspaceValidateRequestSchema",
      "responseSchema": "DatasetWorkspaceValidationSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "schemaAuthority": "Inline request body {expectedRevision}; generator mirrors source method parameter validation",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetWorkspaceClient",
      "typescriptMethod": "publish",
      "pythonMethod": "publish",
      "source": "packages/sdk/src/dataset-workspace-client.ts",
      "httpMethod": "POST",
      "path": "/v1/dataset-workspaces/{id}/publish",
      "requestSchema": "DatasetWorkspacePublishSchema",
      "responseSchema": "DatasetWorkspaceReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetPreparationClient",
      "typescriptMethod": "create",
      "pythonMethod": "create",
      "source": "packages/sdk/src/dataset-preparation-client.ts",
      "httpMethod": "POST",
      "path": "/v1/dataset-workspaces/{datasetId}/preparations",
      "requestSchema": "DatasetPreparationCreateSchema",
      "responseSchema": "DatasetPreparationRunSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetPreparationClient",
      "typescriptMethod": "createGrant",
      "pythonMethod": "create_grant",
      "source": "packages/sdk/src/dataset-preparation-client.ts",
      "httpMethod": "POST",
      "path": "/v1/dataset-workspaces/{datasetId}/preparations/grants",
      "requestSchema": "DatasetPreparationGrantCreateSchema",
      "responseSchema": "DatasetPreparationGrantSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetPreparationClient",
      "typescriptMethod": "getGrant",
      "pythonMethod": "get_grant",
      "source": "packages/sdk/src/dataset-preparation-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces/{datasetId}/preparations/grants/{grantId}",
      "requestSchema": null,
      "responseSchema": "DatasetPreparationGrantSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetPreparationClient",
      "typescriptMethod": "get",
      "pythonMethod": "get",
      "source": "packages/sdk/src/dataset-preparation-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces/{datasetId}/preparations/{runId}",
      "requestSchema": null,
      "responseSchema": "DatasetPreparationRunSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetPreparationClient",
      "typescriptMethod": "list",
      "pythonMethod": "list",
      "source": "packages/sdk/src/dataset-preparation-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces/{datasetId}/preparations",
      "requestSchema": null,
      "responseSchema": "DatasetPreparationListSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetPreparationClient",
      "typescriptMethod": "command",
      "pythonMethod": "command",
      "source": "packages/sdk/src/dataset-preparation-client.ts",
      "httpMethod": "POST",
      "path": "/v1/dataset-workspaces/{datasetId}/preparations/{runId}/commands",
      "requestSchema": "DatasetPreparationCommandSchema",
      "responseSchema": "DatasetPreparationRunSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetPreparationClient",
      "typescriptMethod": "operationResult",
      "pythonMethod": "operation_result",
      "source": "packages/sdk/src/dataset-preparation-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces/{datasetId}/preparations/operations/{operationId}",
      "requestSchema": null,
      "responseSchema": "DatasetPreparationOperationResultSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "schemaAuthority": "Exact inline source validator exported by shared schema generator",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondDatasetPreparationClient",
      "typescriptMethod": "candidates",
      "pythonMethod": "candidates",
      "source": "packages/sdk/src/dataset-preparation-client.ts",
      "httpMethod": "GET",
      "path": "/v1/dataset-workspaces/{datasetId}/preparations/{runId}/candidates",
      "requestSchema": null,
      "responseSchema": "DatasetPreparationCandidatePageSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "datasets",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "schemaAuthority": "Exact inline source validator exported by shared schema generator",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "Existing JSON client headers and domain route adapter"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "register",
      "pythonMethod": "register",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/tool-learning/installations",
      "requestSchema": "ToolLearningRegistrationRequestSchema",
      "responseSchema": "ToolLearningRegistrationReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "installation",
      "pythonMethod": "installation",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "GET",
      "path": "/v1/tool-learning/installations/{installationId}",
      "requestSchema": null,
      "responseSchema": "ToolLearningInstallationSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "installations",
      "pythonMethod": "installations",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "GET",
      "path": "/v1/tool-learning/installations",
      "requestSchema": null,
      "responseSchema": "ToolLearningInstallationPageSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "episodes",
      "pythonMethod": "episodes",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "GET",
      "path": "/v1/tool-learning/installations/{installationId}/episodes",
      "requestSchema": null,
      "responseSchema": "ToolLearningEpisodePageSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "episode",
      "pythonMethod": "episode",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "GET",
      "path": "/v1/tool-learning/installations/{installationId}/episodes/{episodeId}",
      "requestSchema": null,
      "responseSchema": "ToolLearningEpisodeDetailSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "purge",
      "pythonMethod": "purge",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/tool-learning/installations/{installationId}/purge",
      "requestSchema": "ToolLearningPurgeRequestSchema",
      "responseSchema": "ToolLearningPurgeReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "project",
      "pythonMethod": "project",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/tool-learning/installations/{installationId}/project",
      "requestSchema": "ToolLearningProjectionRequestSchema",
      "responseSchema": "ToolLearningProjectionReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "setState",
      "pythonMethod": "set_state",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "PATCH",
      "path": "/v1/tool-learning/installations/{installationId}",
      "requestSchema": "ToolLearningInstallationUpdateSchema",
      "responseSchema": "ToolLearningInstallationSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "append",
      "pythonMethod": "append",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/tool-learning/episodes",
      "requestSchema": "ToolEpisodeAppendSchema",
      "responseSchema": "ToolEpisodeAppendReceiptSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "routing",
      "pythonMethod": "routing",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "GET",
      "path": "/v1/tool-learning/installations/{installationId}/routing",
      "requestSchema": null,
      "responseSchema": "ToolLearningRoutingSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "configureRouting",
      "pythonMethod": "configure_routing",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/tool-learning/installations/{installationId}/routing",
      "requestSchema": "ToolLearningRoutingRequestSchema",
      "responseSchema": "ToolLearningRoutingSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "manifest",
      "pythonMethod": "manifest",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "GET",
      "path": "/v1/tool-learning/installations/{installationId}/manifest",
      "requestSchema": null,
      "responseSchema": "ToolLearningManifestSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "consult",
      "pythonMethod": "consult",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "POST",
      "path": "/v1/tool-learning/consultations",
      "requestSchema": "ToolLearningConsultationRequestSchema",
      "responseSchema": "ToolLearningConsultationResponseSchema",
      "responseUnwrap": null,
      "writeReplay": "never automatic",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    },
    {
      "client": "OpenPondToolLearningClient",
      "typescriptMethod": "consultation",
      "pythonMethod": "consultation",
      "source": "packages/sdk/src/tool-learning-client.ts",
      "httpMethod": "GET",
      "path": "/v1/tool-learning/installations/{installationId}/consultations/{operationId}",
      "requestSchema": "ToolLearningConsultationRequestSchema",
      "responseSchema": "ToolLearningConsultationResponseSchema",
      "responseUnwrap": null,
      "writeReplay": "bounded read retry only",
      "authorityDomain": "tool_learning",
      "classification": "existing_public_client",
      "proofState": "source_only_actual_integration_pending",
      "requestMediaType": "application/json",
      "requestMediaTypeAuthority": "packages/sdk/src/tool-learning-client.ts:#request"
    }
  ],
  "laterFeatures": [
    "SFT",
    "DPO",
    "per-gradient sessions",
    "Python custom grader execution"
  ],
  "authorityDomains": {
    "training": {
      "classification": "existing_public_client",
      "routeOwner": "Sandbox public-api-edge -> signed deployment-worker managed-rl route",
      "hosted": {
        "state": "handler_and_dispatch_source_verified_not_deployed_proof",
        "sources": [
          {
            "repository": "sandbox",
            "path": "lib/public-api/routes.ts",
            "line": 131,
            "symbol": "training routing including post-training special case",
            "sha256": "f8539397e9386e1e6fcbb80a8fcff7601af7e4b96f05a8f57fbba7698414096f"
          },
          {
            "repository": "sandbox",
            "path": "lib/public-api/edge.ts",
            "line": 1161,
            "symbol": "handleManagedRlRoute",
            "sha256": "625ac14c41bc78f72416d33476f4704e9959bc1b7fe3efba87708b359066940d"
          },
          {
            "repository": "sandbox",
            "path": "deployment-worker/api/handlers/managed-rl-handler.ts",
            "line": 947,
            "symbol": "handleManagedRlRequest V2 dispatch",
            "sha256": "e5e2edf0c3eea29fe80b0c93b48557f1137af8c2b30acbd5b59749cefe37570a"
          }
        ]
      },
      "local": {
        "state": "not_implemented_at_canonical_sdk_paths_in_reviewed_local_router",
        "source": {
          "repository": "openpond",
          "path": "apps/server/src/api/routes/training-routes.ts",
          "line": 19,
          "symbol": "handleTrainingRoutes",
          "sha256": "2704fd2eb9205c8658f2d67bc66869ac17c47c1b461c3413e498bf09e746ac6d"
        },
        "note": "Desktop has different UI/CLI training payload routes; this is hosted-only base SDK scope, not evidence all local training is absent."
      },
      "authorization": "Public identity resolves effective workspace; managed-rl:read/write signed forwarding; service owner/job/CAS guards. Source credential authority is not upgraded.",
      "proof": {
        "state": "source_verified_not_executed",
        "actualHostedProof": null,
        "actualLocalProof": null,
        "requiredProof": [
          "authenticated hosted consumer",
          "wrong-team denial",
          "stale revisions",
          "lost-reply reconciliation",
          "pagination",
          "cancellation/recovery where applicable"
        ]
      }
    },
    "preparations": {
      "classification": "existing_public_client",
      "routeOwner": "Sandbox deployment-worker training-preparations handler",
      "hosted": {
        "state": "handler_and_dispatch_source_verified_not_deployed_proof",
        "sources": [
          {
            "repository": "sandbox",
            "path": "lib/public-api/routes.ts",
            "line": 131,
            "symbol": "training routing including post-training special case",
            "sha256": "f8539397e9386e1e6fcbb80a8fcff7601af7e4b96f05a8f57fbba7698414096f"
          },
          {
            "repository": "sandbox",
            "path": "lib/public-api/edge.ts",
            "line": 1161,
            "symbol": "handleManagedRlRoute",
            "sha256": "625ac14c41bc78f72416d33476f4704e9959bc1b7fe3efba87708b359066940d"
          },
          {
            "repository": "sandbox",
            "path": "deployment-worker/api/handlers/training-preparations-handler.ts",
            "line": 60,
            "symbol": "handleTrainingPreparations",
            "sha256": "7d8c261a75c283b919621a62ca1907790870d3fe304036eb2880277ed3aadeba"
          }
        ]
      },
      "local": {
        "state": "not_implemented_at_canonical_sdk_paths_in_reviewed_local_router",
        "source": {
          "repository": "openpond",
          "path": "apps/server/src/api/routes/training-routes.ts",
          "line": 19,
          "symbol": "handleTrainingRoutes",
          "sha256": "2704fd2eb9205c8658f2d67bc66869ac17c47c1b461c3413e498bf09e746ac6d"
        },
        "note": "Desktop has different UI/CLI training payload routes; this is hosted-only base SDK scope, not evidence all local training is absent."
      },
      "authorization": "Workspace identity plus preparation owner/plan hash/revision; submitted job hash is reconciled.",
      "proof": {
        "state": "source_verified_not_executed",
        "actualHostedProof": null,
        "actualLocalProof": null,
        "requiredProof": [
          "authenticated hosted consumer",
          "wrong-team denial",
          "stale revisions",
          "lost-reply reconciliation",
          "pagination",
          "cancellation/recovery where applicable"
        ]
      }
    },
    "models": {
      "classification": "existing_public_client",
      "routeOwner": "Sandbox public-api-edge Model projection/configuration handlers",
      "hosted": {
        "state": "handler_and_dispatch_source_verified_not_deployed_proof",
        "sources": [
          {
            "repository": "sandbox",
            "path": "lib/public-api/edge.ts",
            "line": 1214,
            "symbol": "handleModelProjectsRoute",
            "sha256": "625ac14c41bc78f72416d33476f4704e9959bc1b7fe3efba87708b359066940d"
          },
          {
            "repository": "sandbox",
            "path": "lib/public-api/model-configurations.ts",
            "line": 15,
            "symbol": "handleModelConfigurationRoute",
            "sha256": "e32f7e12e1472e4e41f37fa742d76c5f0b5d3df4432b268877649e5bb1083c70"
          }
        ]
      },
      "local": {
        "state": "not_implemented_at_canonical_sdk_paths_in_reviewed_local_router",
        "source": {
          "repository": "openpond",
          "path": "apps/server/src/api/routes/training-routes.ts",
          "line": 19,
          "symbol": "handleTrainingRoutes",
          "sha256": "2704fd2eb9205c8658f2d67bc66869ac17c47c1b461c3413e498bf09e746ac6d"
        },
        "note": "Desktop has different UI/CLI training payload routes; this is hosted-only base SDK scope, not evidence all local training is absent."
      },
      "authorization": "Effective workspace read/control capability, hosted Model ownership/portable identity and configuration CAS.",
      "proof": {
        "state": "source_verified_not_executed",
        "actualHostedProof": null,
        "actualLocalProof": null,
        "requiredProof": [
          "authenticated hosted consumer",
          "wrong-team denial",
          "stale revisions",
          "lost-reply reconciliation",
          "pagination",
          "cancellation/recovery where applicable"
        ]
      }
    },
    "learning": {
      "classification": "existing_public_client",
      "routeOwner": "Sandbox public-api-edge Learning service",
      "hosted": {
        "state": "handler_and_dispatch_source_verified_not_deployed_proof",
        "sources": [
          {
            "repository": "sandbox",
            "path": "lib/public-api/learning.ts",
            "line": 41,
            "symbol": "handleLearningRoute",
            "sha256": "e81620b265ab527ca7e62a96c00a73555af46c819d233c6817365cdd1e6e3374"
          }
        ]
      },
      "local": {
        "state": "four_owner_routes_implemented_auth_adapter_and_runtime_unqualified",
        "source": {
          "repository": "openpond",
          "path": "apps/server/src/api/routes/learning-routes.ts",
          "line": 7,
          "symbol": "handleLearningRoutes / commands/read/credentials/source-config",
          "sha256": "df63996eb33ccff7ba3035a04b8d4d55f5940f22dbf3c823ae0b4bcb6b34bdc1"
        },
        "note": "Local owner routes use Desktop authenticated trainingPayload context; do not infer hosted API-key parity. Source-credential producer path is separately restricted."
      },
      "authorization": "Body scope must equal effective workspace; owner-scoped Learning repository. Source credentials have separate bounded producer authority.",
      "proof": {
        "state": "source_verified_not_executed",
        "actualHostedProof": null,
        "actualLocalProof": null,
        "requiredProof": [
          "authenticated hosted consumer",
          "wrong-team denial",
          "stale revisions",
          "lost-reply reconciliation",
          "pagination",
          "cancellation/recovery where applicable"
        ]
      }
    },
    "learningPublication": {
      "classification": "existing_public_client",
      "routeOwner": "Sandbox hosted batch publication",
      "hosted": {
        "state": "handler_and_dispatch_source_verified_not_deployed_proof",
        "sources": [
          {
            "repository": "sandbox",
            "path": "lib/public-api/learning.ts",
            "line": 85,
            "symbol": "publish-batch scope validation and publication",
            "sha256": "e81620b265ab527ca7e62a96c00a73555af46c819d233c6817365cdd1e6e3374"
          }
        ]
      },
      "local": {
        "state": "hosted_only_no_publish_batch_entry_in_local_owner_route_map",
        "source": {
          "repository": "openpond",
          "path": "apps/server/src/api/routes/learning-routes.ts",
          "line": 8,
          "symbol": "actions map",
          "sha256": "df63996eb33ccff7ba3035a04b8d4d55f5940f22dbf3c823ae0b4bcb6b34bdc1"
        }
      },
      "authorization": "Existing owner workspace/publication checks; immutable batch identity. No training starts.",
      "proof": {
        "state": "source_verified_not_executed",
        "actualHostedProof": null,
        "actualLocalProof": null,
        "requiredProof": [
          "authenticated hosted consumer",
          "wrong-team denial",
          "stale revisions",
          "lost-reply reconciliation",
          "pagination",
          "cancellation/recovery where applicable"
        ]
      }
    },
    "postTraining": {
      "classification": "existing_public_client",
      "routeOwner": "Sandbox public-api-edge post-training service",
      "hosted": {
        "state": "handler_and_dispatch_source_verified_not_deployed_proof",
        "sources": [
          {
            "repository": "sandbox",
            "path": "lib/public-api/routes.ts",
            "line": 131,
            "symbol": "training routing including post-training special case",
            "sha256": "f8539397e9386e1e6fcbb80a8fcff7601af7e4b96f05a8f57fbba7698414096f"
          },
          {
            "repository": "sandbox",
            "path": "lib/public-api/post-training-evaluations.ts",
            "line": 12,
            "symbol": "handlePostTrainingRoute",
            "sha256": "8ab74db483988245ecce83e820f3a47f237e148f414619bac594cbe89d56d80c"
          }
        ]
      },
      "local": {
        "state": "not_implemented_at_canonical_sdk_paths_in_reviewed_local_router",
        "source": {
          "repository": "openpond",
          "path": "apps/server/src/api/routes/training-routes.ts",
          "line": 19,
          "symbol": "handleTrainingRoutes",
          "sha256": "2704fd2eb9205c8658f2d67bc66869ac17c47c1b461c3413e498bf09e746ac6d"
        },
        "note": "Desktop has different UI/CLI training payload routes; this is hosted-only base SDK scope, not evidence all local training is absent."
      },
      "authorization": "Source credentials refused; effective workspace and PostTrainingService exact job/plan controls.",
      "proof": {
        "state": "source_verified_not_executed",
        "actualHostedProof": null,
        "actualLocalProof": null,
        "requiredProof": [
          "authenticated hosted consumer",
          "wrong-team denial",
          "stale revisions",
          "lost-reply reconciliation",
          "pagination",
          "cancellation/recovery where applicable"
        ]
      }
    },
    "evaluations": {
      "classification": "existing_public_client",
      "routeOwner": "Sandbox public-api-edge taskset-run service",
      "hosted": {
        "state": "handler_and_dispatch_source_verified_not_deployed_proof",
        "sources": [
          {
            "repository": "sandbox",
            "path": "lib/public-api/edge.ts",
            "line": 688,
            "symbol": "model-taskset-runs dispatch",
            "sha256": "625ac14c41bc78f72416d33476f4704e9959bc1b7fe3efba87708b359066940d"
          },
          {
            "repository": "sandbox",
            "path": "lib/public-api/model-taskset-runs.ts",
            "line": 24,
            "symbol": "handleModelTasksetRunsRoute",
            "sha256": "7b938a3d35ed977d692579c70cee1693a8d335fae6abd172dab9c06ed5fb351f"
          }
        ]
      },
      "local": {
        "state": "not_implemented_at_canonical_sdk_paths_in_reviewed_local_router",
        "source": {
          "repository": "openpond",
          "path": "apps/server/src/api/routes/training-routes.ts",
          "line": 19,
          "symbol": "handleTrainingRoutes",
          "sha256": "2704fd2eb9205c8658f2d67bc66869ac17c47c1b461c3413e498bf09e746ac6d"
        },
        "note": "Desktop has different UI/CLI training payload routes; this is hosted-only base SDK scope, not evidence all local training is absent."
      },
      "authorization": "Source credentials refused; effective workspace and run-store Model/team/receipt ownership checks.",
      "proof": {
        "state": "source_verified_not_executed",
        "actualHostedProof": null,
        "actualLocalProof": null,
        "requiredProof": [
          "authenticated hosted consumer",
          "wrong-team denial",
          "stale revisions",
          "lost-reply reconciliation",
          "pagination",
          "cancellation/recovery where applicable"
        ]
      }
    },
    "datasets": {
      "classification": "existing_public_client",
      "routeOwner": "Sandbox public-api-edge Dataset workspace/preparation services",
      "hosted": {
        "state": "handler_and_dispatch_source_verified_not_deployed_proof",
        "sources": [
          {
            "repository": "sandbox",
            "path": "lib/public-api/edge.ts",
            "line": 668,
            "symbol": "dataset-workspaces dispatch",
            "sha256": "625ac14c41bc78f72416d33476f4704e9959bc1b7fe3efba87708b359066940d"
          },
          {
            "repository": "sandbox",
            "path": "lib/public-api/dataset-workspaces.ts",
            "line": 38,
            "symbol": "handleDatasetWorkspacesRoute",
            "sha256": "7f4d1f92fbba2677d23542e3520a49a95954109f90c952f9cb20657f5b019cff"
          },
          {
            "repository": "sandbox",
            "path": "lib/public-api/dataset-preparations.ts",
            "line": 25,
            "symbol": "handleDatasetPreparationRequest",
            "sha256": "4fad525f93dee298251f50df10fb52e3564fa63d80ac962746d21ccf3b9bbeda"
          }
        ]
      },
      "local": {
        "state": "not_implemented_at_canonical_sdk_paths_in_reviewed_local_router",
        "source": {
          "repository": "openpond",
          "path": "apps/server/src/api/routes/training-routes.ts",
          "line": 19,
          "symbol": "handleTrainingRoutes",
          "sha256": "2704fd2eb9205c8658f2d67bc66869ac17c47c1b461c3413e498bf09e746ac6d"
        },
        "note": "Desktop has different UI/CLI training payload routes; this is hosted-only base SDK scope, not evidence all local training is absent."
      },
      "authorization": "Source credentials refused for authoring; effective workspace, Dataset owner/revision/operation identity guards.",
      "proof": {
        "state": "source_verified_not_executed",
        "actualHostedProof": null,
        "actualLocalProof": null,
        "requiredProof": [
          "authenticated hosted consumer",
          "wrong-team denial",
          "stale revisions",
          "lost-reply reconciliation",
          "pagination",
          "cancellation/recovery where applicable"
        ]
      }
    },
    "estimate": {
      "classification": "existing_client_with_verified_missing_hosted_endpoint",
      "routeOwner": "No current implementation found",
      "hosted": {
        "state": "missing_endpoint_in_current_dispatch_and_worker",
        "sources": [
          {
            "repository": "sandbox",
            "path": "lib/public-api/routes.ts",
            "line": 131,
            "symbol": "training routing including post-training special case",
            "sha256": "f8539397e9386e1e6fcbb80a8fcff7601af7e4b96f05a8f57fbba7698414096f"
          },
          {
            "repository": "sandbox",
            "path": "lib/public-api/edge.ts",
            "line": 1161,
            "symbol": "handleManagedRlRoute",
            "sha256": "625ac14c41bc78f72416d33476f4704e9959bc1b7fe3efba87708b359066940d"
          },
          {
            "repository": "sandbox",
            "path": "deployment-worker/api/handlers/managed-rl-handler.ts",
            "line": 947,
            "symbol": "handleManagedRlRequest V2 dispatch",
            "sha256": "e5e2edf0c3eea29fe80b0c93b48557f1137af8c2b30acbd5b59749cefe37570a"
          }
        ],
        "evidence": "Generic training dispatch forwards to worker; no estimates branch or TrainingEstimate service found in managed-rl API/service source."
      },
      "local": {
        "state": "not_implemented_at_canonical_sdk_paths_in_reviewed_local_router",
        "source": {
          "repository": "openpond",
          "path": "apps/server/src/api/routes/training-routes.ts",
          "line": 19,
          "symbol": "handleTrainingRoutes",
          "sha256": "2704fd2eb9205c8658f2d67bc66869ac17c47c1b461c3413e498bf09e746ac6d"
        },
        "note": "Desktop has different UI/CLI training payload routes; this is hosted-only base SDK scope, not evidence all local training is absent."
      },
      "authorization": "No executable endpoint to qualify; existing client schema does not establish product support.",
      "proof": {
        "state": "source_gap_verified_no_live_request",
        "actualHostedProof": null,
        "requiredProof": []
      },
      "disposition": "Deferred new estimate backend, excluded from runnable current manual workflow; do not silently substitute another estimate or require it for start."
    }
  },
  "sourceInventory": {
    "openpondHead": "5d2c4cd6eed999850651436381189804e2fca852",
    "sandboxHead": "6cec19e363ca14e245e59679ffb9183b33cd0851",
    "reviewScope": "Source metadata only. Current files may include reviewed dirty changes; hashes pin inspected bytes. Hosted/local availability is separated and no deployed acceptance inferred."
  },
  "mediaTypeSemantics": "Per-operation media is Accept and, when a body exists, Content-Type. It is not inferred solely from a URL prefix. GET requests have no body Content-Type requirement."
}
