@claudexor/schema 3.0.4 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-capabilities.d.ts +37 -0
- package/dist/agent-capabilities.d.ts.map +1 -1
- package/dist/agent-capabilities.js +14 -0
- package/dist/agent-capabilities.js.map +1 -1
- package/dist/apply-eligibility.d.ts +384 -18
- package/dist/apply-eligibility.d.ts.map +1 -1
- package/dist/apply-eligibility.js +20 -1
- package/dist/apply-eligibility.js.map +1 -1
- package/dist/budget.d.ts +75 -0
- package/dist/budget.d.ts.map +1 -1
- package/dist/budget.js +46 -0
- package/dist/budget.js.map +1 -1
- package/dist/config.d.ts +41 -41
- package/dist/control-operation-responses.d.ts +287 -65
- package/dist/control-operation-responses.d.ts.map +1 -1
- package/dist/control-operation-responses.js +33 -3
- package/dist/control-operation-responses.js.map +1 -1
- package/dist/control-run-detail.d.ts +600 -150
- package/dist/control-run-detail.d.ts.map +1 -1
- package/dist/control-run-detail.js +28 -2
- package/dist/control-run-detail.js.map +1 -1
- package/dist/control-run-retry.d.ts +1 -1
- package/dist/control-run-scope.d.ts +1 -1
- package/dist/control-thread-apply.d.ts +10 -0
- package/dist/control-thread-apply.d.ts.map +1 -1
- package/dist/control.d.ts +664 -156
- package/dist/control.d.ts.map +1 -1
- package/dist/control.js +76 -2
- package/dist/control.js.map +1 -1
- package/dist/decision.d.ts +205 -9
- package/dist/decision.d.ts.map +1 -1
- package/dist/decision.js +69 -1
- package/dist/decision.js.map +1 -1
- package/dist/deep-scan.d.ts +27 -0
- package/dist/deep-scan.d.ts.map +1 -0
- package/dist/deep-scan.js +27 -0
- package/dist/deep-scan.js.map +1 -0
- package/dist/delivery.d.ts +13 -0
- package/dist/delivery.d.ts.map +1 -1
- package/dist/delivery.js +15 -0
- package/dist/delivery.js.map +1 -1
- package/dist/events.d.ts +59 -4
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js +85 -0
- package/dist/events.js.map +1 -1
- package/dist/harness.d.ts +111 -3
- package/dist/harness.d.ts.map +1 -1
- package/dist/harness.js +77 -1
- package/dist/harness.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/operation.d.ts +193 -10
- package/dist/operation.d.ts.map +1 -1
- package/dist/operation.js +45 -0
- package/dist/operation.js.map +1 -1
- package/dist/output-schema-dialect.d.ts +22 -0
- package/dist/output-schema-dialect.d.ts.map +1 -0
- package/dist/output-schema-dialect.js +37 -0
- package/dist/output-schema-dialect.js.map +1 -0
- package/dist/output-schema.d.ts +26 -2
- package/dist/output-schema.d.ts.map +1 -1
- package/dist/output-schema.js +313 -16
- package/dist/output-schema.js.map +1 -1
- package/dist/plan.d.ts +2 -2
- package/dist/problem.d.ts +3 -3
- package/dist/project.d.ts +47 -12
- package/dist/project.d.ts.map +1 -1
- package/dist/project.js +32 -0
- package/dist/project.js.map +1 -1
- package/dist/readiness.d.ts +14 -0
- package/dist/readiness.d.ts.map +1 -1
- package/dist/recovery.d.ts +14 -14
- package/dist/review.d.ts +7 -7
- package/dist/route.d.ts +2 -2
- package/dist/setup.d.ts +288 -94
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +90 -6
- package/dist/setup.js.map +1 -1
- package/dist/status-projection.d.ts +79 -4
- package/dist/status-projection.d.ts.map +1 -1
- package/dist/status-projection.js +161 -4
- package/dist/status-projection.js.map +1 -1
- package/dist/task.d.ts +14 -0
- package/dist/task.d.ts.map +1 -1
- package/dist/task.js +9 -0
- package/dist/task.js.map +1 -1
- package/dist/telemetry.d.ts +779 -16
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +177 -4
- package/dist/telemetry.js.map +1 -1
- package/dist/tool-ref.d.ts +14 -0
- package/dist/tool-ref.d.ts.map +1 -1
- package/dist/tool-ref.js +15 -0
- package/dist/tool-ref.js.map +1 -1
- package/dist/work-report.d.ts +131 -0
- package/dist/work-report.d.ts.map +1 -0
- package/dist/work-report.js +124 -0
- package/dist/work-report.js.map +1 -0
- package/dist/workspace.d.ts +2 -2
- package/generated/AgentCapabilityCatalog.schema.json +35 -0
- package/generated/ControlApplyCheckResponse.schema.json +5 -0
- package/generated/ControlDeliveryResponse.schema.json +14 -0
- package/generated/ControlHarnessListResponse.schema.json +19 -0
- package/generated/ControlOperationCatalog.schema.json +74 -0
- package/generated/ControlOperationDescriptor.schema.json +74 -0
- package/generated/ControlOperationParameter.schema.json +75 -0
- package/generated/ControlProjectRemoveReceipt.schema.json +58 -0
- package/generated/ControlRunAgainDraft.schema.json +11 -0
- package/generated/ControlRunDetail.schema.json +403 -9
- package/generated/ControlRunListResponse.schema.json +229 -3
- package/generated/ControlRunStartRequest.schema.json +11 -0
- package/generated/ControlRunSummary.schema.json +215 -2
- package/generated/ControlSetupJobCreateRequest.schema.json +2 -1
- package/generated/ControlSetupJobEvent.schema.json +28 -0
- package/generated/ControlSetupJobSnapshot.schema.json +28 -0
- package/generated/ControlThreadApplyResponse.schema.json +14 -0
- package/generated/ControlThreadDetail.schema.json +94 -1
- package/generated/ControlThreadTurnRequest.schema.json +11 -0
- package/generated/DecisionRecord.schema.json +178 -2
- package/generated/HarnessEvent.schema.json +79 -1
- package/generated/HarnessManifest.schema.json +19 -0
- package/generated/HarnessStatusDto.schema.json +19 -0
- package/generated/McpRunHandleResult.schema.json +286 -1
- package/generated/McpRunToolResult.schema.json +171 -1
- package/generated/RoutePoolDegradedPayload.schema.json +79 -0
- package/generated/RunEvent.schema.json +7 -1
- package/generated/RunFailure.schema.json +23 -1
- package/generated/RunTelemetry.schema.json +376 -1
- package/generated/StructuredOutputConformance.schema.json +83 -0
- package/generated/TaskContract.schema.json +16 -0
- package/package.json +2 -2
|
@@ -135,6 +135,16 @@
|
|
|
135
135
|
"description": "Web-evidence verdict for an attempt/run: none (no web activity), attempted, satisfied (required evidence produced), failed, or unverified.",
|
|
136
136
|
"default": "none"
|
|
137
137
|
},
|
|
138
|
+
"verification": {
|
|
139
|
+
"type": "string",
|
|
140
|
+
"enum": [
|
|
141
|
+
"verified",
|
|
142
|
+
"dispatched",
|
|
143
|
+
"none"
|
|
144
|
+
],
|
|
145
|
+
"default": "none",
|
|
146
|
+
"description": "Retrieval strength of the web evidence: verified (typed retrieval), dispatched (completed but no typed outcome), or none."
|
|
147
|
+
},
|
|
138
148
|
"tool": {
|
|
139
149
|
"type": [
|
|
140
150
|
"string",
|
|
@@ -320,6 +330,9 @@
|
|
|
320
330
|
"status": {
|
|
321
331
|
"$ref": "#/definitions/RunTelemetry/properties/web/properties/status"
|
|
322
332
|
},
|
|
333
|
+
"verification": {
|
|
334
|
+
"$ref": "#/definitions/RunTelemetry/properties/web/properties/verification"
|
|
335
|
+
},
|
|
323
336
|
"tool": {
|
|
324
337
|
"$ref": "#/definitions/RunTelemetry/properties/web/properties/tool"
|
|
325
338
|
},
|
|
@@ -430,7 +443,26 @@
|
|
|
430
443
|
"unknown"
|
|
431
444
|
],
|
|
432
445
|
"default": "unknown",
|
|
433
|
-
"description": "
|
|
446
|
+
"description": "Fine-grained kind of transient failure (adapter-declared)."
|
|
447
|
+
},
|
|
448
|
+
"category": {
|
|
449
|
+
"type": "string",
|
|
450
|
+
"enum": [
|
|
451
|
+
"timeout",
|
|
452
|
+
"rate_limited",
|
|
453
|
+
"auth_failed",
|
|
454
|
+
"capability_refused",
|
|
455
|
+
"process_crash",
|
|
456
|
+
"config_error",
|
|
457
|
+
"unknown_harness_error"
|
|
458
|
+
],
|
|
459
|
+
"description": "Typed failure category (GH #31) the retry policy and required-actions read; orthogonal to kind.",
|
|
460
|
+
"default": "unknown_harness_error"
|
|
461
|
+
},
|
|
462
|
+
"retryable": {
|
|
463
|
+
"type": "boolean",
|
|
464
|
+
"default": false,
|
|
465
|
+
"description": "Whether the classified category is retryable (the centralized retry-policy gate)."
|
|
434
466
|
},
|
|
435
467
|
"retry_delay_ms": {
|
|
436
468
|
"anyOf": [
|
|
@@ -444,6 +476,34 @@
|
|
|
444
476
|
],
|
|
445
477
|
"default": null,
|
|
446
478
|
"description": "Suggested retry delay in milliseconds, when reported."
|
|
479
|
+
},
|
|
480
|
+
"http_status": {
|
|
481
|
+
"anyOf": [
|
|
482
|
+
{
|
|
483
|
+
"type": "integer"
|
|
484
|
+
},
|
|
485
|
+
{
|
|
486
|
+
"type": "null"
|
|
487
|
+
}
|
|
488
|
+
],
|
|
489
|
+
"default": null,
|
|
490
|
+
"description": "Vendor HTTP status code disclosed by the error, when any; null otherwise."
|
|
491
|
+
},
|
|
492
|
+
"signal": {
|
|
493
|
+
"type": [
|
|
494
|
+
"string",
|
|
495
|
+
"null"
|
|
496
|
+
],
|
|
497
|
+
"default": null,
|
|
498
|
+
"description": "Process termination signal (e.g. SIGKILL) when a crash killed the child; null otherwise."
|
|
499
|
+
},
|
|
500
|
+
"adapter_code": {
|
|
501
|
+
"type": [
|
|
502
|
+
"string",
|
|
503
|
+
"null"
|
|
504
|
+
],
|
|
505
|
+
"default": null,
|
|
506
|
+
"description": "Vendor/adapter error-category code passed verbatim as evidence; null when none."
|
|
447
507
|
}
|
|
448
508
|
},
|
|
449
509
|
"additionalProperties": false,
|
|
@@ -478,6 +538,11 @@
|
|
|
478
538
|
"default": false,
|
|
479
539
|
"description": "True when required web evidence was not satisfied."
|
|
480
540
|
},
|
|
541
|
+
"delegation_belt_unavailable": {
|
|
542
|
+
"type": "boolean",
|
|
543
|
+
"default": false,
|
|
544
|
+
"description": "True when --delegate requested the belt but the injected MCP server failed to become operational (QA-024); blocks a silent clean success."
|
|
545
|
+
},
|
|
481
546
|
"tool_warnings_count": {
|
|
482
547
|
"type": "integer",
|
|
483
548
|
"minimum": 0,
|
|
@@ -494,12 +559,163 @@
|
|
|
494
559
|
],
|
|
495
560
|
"description": "Outcome of one attempt: success, success_with_warnings, blocked, or failed.",
|
|
496
561
|
"default": "success"
|
|
562
|
+
},
|
|
563
|
+
"work_state": {
|
|
564
|
+
"type": "object",
|
|
565
|
+
"properties": {
|
|
566
|
+
"state": {
|
|
567
|
+
"type": "string",
|
|
568
|
+
"enum": [
|
|
569
|
+
"completed",
|
|
570
|
+
"needs_input",
|
|
571
|
+
"incomplete",
|
|
572
|
+
"unverified"
|
|
573
|
+
],
|
|
574
|
+
"description": "Folded work state: the WorkReport state, or unverified when no report was obtainable (transport unsupported / lane gated)."
|
|
575
|
+
},
|
|
576
|
+
"source": {
|
|
577
|
+
"type": "string",
|
|
578
|
+
"enum": [
|
|
579
|
+
"constrained",
|
|
580
|
+
"validated",
|
|
581
|
+
"absent"
|
|
582
|
+
],
|
|
583
|
+
"description": "Provenance of a WorkReport: constrained (native schema transport), validated (whole-answer JSON), or absent (no transport could carry one — a disclosed absence, not a failure)."
|
|
584
|
+
},
|
|
585
|
+
"required_inputs": {
|
|
586
|
+
"type": "array",
|
|
587
|
+
"items": {
|
|
588
|
+
"type": "object",
|
|
589
|
+
"properties": {
|
|
590
|
+
"kind": {
|
|
591
|
+
"type": "string",
|
|
592
|
+
"enum": [
|
|
593
|
+
"file",
|
|
594
|
+
"context",
|
|
595
|
+
"credential",
|
|
596
|
+
"permission",
|
|
597
|
+
"decision",
|
|
598
|
+
"external_dependency"
|
|
599
|
+
],
|
|
600
|
+
"description": "Category of a missing input a needs_input/incomplete report lists: a file, additional context, a credential, a permission, a human decision, or an external dependency."
|
|
601
|
+
},
|
|
602
|
+
"locator": {
|
|
603
|
+
"anyOf": [
|
|
604
|
+
{
|
|
605
|
+
"type": "string",
|
|
606
|
+
"maxLength": 512
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
"type": "null"
|
|
610
|
+
}
|
|
611
|
+
],
|
|
612
|
+
"default": null,
|
|
613
|
+
"description": "Concrete pointer to the missing thing (path/url/name); null when unnameable."
|
|
614
|
+
},
|
|
615
|
+
"description": {
|
|
616
|
+
"type": "string",
|
|
617
|
+
"maxLength": 1024,
|
|
618
|
+
"description": "Human-readable description of what is needed and why."
|
|
619
|
+
}
|
|
620
|
+
},
|
|
621
|
+
"required": [
|
|
622
|
+
"kind",
|
|
623
|
+
"description"
|
|
624
|
+
],
|
|
625
|
+
"additionalProperties": false,
|
|
626
|
+
"description": "One blocking input a needs_input/incomplete WorkReport lists."
|
|
627
|
+
},
|
|
628
|
+
"maxItems": 16,
|
|
629
|
+
"description": "Carried through from a needs_input/incomplete WorkReport for honest disclosure."
|
|
630
|
+
}
|
|
631
|
+
},
|
|
632
|
+
"required": [
|
|
633
|
+
"state",
|
|
634
|
+
"source"
|
|
635
|
+
],
|
|
636
|
+
"additionalProperties": false,
|
|
637
|
+
"description": "D-16 model-attested work outcome for the attempt (from its WorkReport), orthogonal to status; absent when the route has no work_report transport."
|
|
497
638
|
}
|
|
498
639
|
},
|
|
499
640
|
"additionalProperties": false,
|
|
500
641
|
"description": "Contract/outcome truth for one attempt; tool errors are tracked separately from deliverable production.",
|
|
501
642
|
"default": {}
|
|
502
643
|
},
|
|
644
|
+
"delegation_belt": {
|
|
645
|
+
"type": "object",
|
|
646
|
+
"properties": {
|
|
647
|
+
"requested": {
|
|
648
|
+
"type": "boolean",
|
|
649
|
+
"default": false,
|
|
650
|
+
"description": "A Claudexor delegation belt MCP server was injected into this attempt's sandbox."
|
|
651
|
+
},
|
|
652
|
+
"server_name": {
|
|
653
|
+
"type": [
|
|
654
|
+
"string",
|
|
655
|
+
"null"
|
|
656
|
+
],
|
|
657
|
+
"default": null,
|
|
658
|
+
"description": "The injected belt MCP server name (as the harness reports it); null when unknown."
|
|
659
|
+
},
|
|
660
|
+
"ready": {
|
|
661
|
+
"type": "boolean",
|
|
662
|
+
"default": false,
|
|
663
|
+
"description": "The harness reported the injected belt MCP server as connected/ready."
|
|
664
|
+
},
|
|
665
|
+
"failed": {
|
|
666
|
+
"type": "boolean",
|
|
667
|
+
"default": false,
|
|
668
|
+
"description": "The harness reported the injected belt MCP server as failed to start."
|
|
669
|
+
},
|
|
670
|
+
"tool_evidence": {
|
|
671
|
+
"type": "boolean",
|
|
672
|
+
"default": false,
|
|
673
|
+
"description": "At least one belt tool (mcp__<server>__*) was actually invoked in this attempt."
|
|
674
|
+
}
|
|
675
|
+
},
|
|
676
|
+
"additionalProperties": false,
|
|
677
|
+
"description": "Runtime readiness receipt for the injected Claudexor delegation belt on one attempt (QA-024)."
|
|
678
|
+
},
|
|
679
|
+
"browser": {
|
|
680
|
+
"type": "object",
|
|
681
|
+
"properties": {
|
|
682
|
+
"requested": {
|
|
683
|
+
"type": "boolean",
|
|
684
|
+
"default": false,
|
|
685
|
+
"description": "The engine armed (injected) the browser MCP for this attempt."
|
|
686
|
+
},
|
|
687
|
+
"server_name": {
|
|
688
|
+
"type": [
|
|
689
|
+
"string",
|
|
690
|
+
"null"
|
|
691
|
+
],
|
|
692
|
+
"default": null,
|
|
693
|
+
"description": "The injected browser MCP server name; null when not armed."
|
|
694
|
+
},
|
|
695
|
+
"attempted": {
|
|
696
|
+
"type": "boolean",
|
|
697
|
+
"default": false,
|
|
698
|
+
"description": "At least one browser MCP tool call (matched to the injected server) occurred."
|
|
699
|
+
},
|
|
700
|
+
"satisfied": {
|
|
701
|
+
"type": "boolean",
|
|
702
|
+
"default": false,
|
|
703
|
+
"description": "At least one browser MCP tool call succeeded (trusted live-web activity)."
|
|
704
|
+
},
|
|
705
|
+
"failed": {
|
|
706
|
+
"type": "boolean",
|
|
707
|
+
"default": false,
|
|
708
|
+
"description": "A browser MCP tool call failed and was not superseded by a success."
|
|
709
|
+
},
|
|
710
|
+
"unused": {
|
|
711
|
+
"type": "boolean",
|
|
712
|
+
"default": false,
|
|
713
|
+
"description": "The browser was armed but never called while generic web evidence satisfied the run (disclosure only; not a failure)."
|
|
714
|
+
}
|
|
715
|
+
},
|
|
716
|
+
"additionalProperties": false,
|
|
717
|
+
"description": "Runtime browser-MCP evidence for one attempt (QA-040)."
|
|
718
|
+
},
|
|
503
719
|
"usage": {
|
|
504
720
|
"type": "object",
|
|
505
721
|
"properties": {
|
|
@@ -685,6 +901,165 @@
|
|
|
685
901
|
"default": null,
|
|
686
902
|
"description": "Auth route receipt: requested preference, disclosed effective route/source, deterministic reason, and the disclosing attempt; surfaces project it verbatim."
|
|
687
903
|
},
|
|
904
|
+
"routing_rationale": {
|
|
905
|
+
"anyOf": [
|
|
906
|
+
{
|
|
907
|
+
"type": "object",
|
|
908
|
+
"properties": {
|
|
909
|
+
"goal": {
|
|
910
|
+
"type": "string",
|
|
911
|
+
"enum": [
|
|
912
|
+
"auto",
|
|
913
|
+
"quality",
|
|
914
|
+
"economy"
|
|
915
|
+
],
|
|
916
|
+
"description": "Routing objective: pace expiring quota, choose the highest declared quality tier, or minimize incremental paid spend."
|
|
917
|
+
},
|
|
918
|
+
"paid_fallback": {
|
|
919
|
+
"type": "string",
|
|
920
|
+
"enum": [
|
|
921
|
+
"never",
|
|
922
|
+
"when_unavailable",
|
|
923
|
+
"allowed_within_cap"
|
|
924
|
+
],
|
|
925
|
+
"description": "When a route with incremental paid spend may be used."
|
|
926
|
+
},
|
|
927
|
+
"order": {
|
|
928
|
+
"type": "array",
|
|
929
|
+
"items": {
|
|
930
|
+
"$ref": "#/definitions/RunTelemetry/properties/final_attempt_id/anyOf/0"
|
|
931
|
+
},
|
|
932
|
+
"default": [],
|
|
933
|
+
"description": "Final ranked order, harness ids."
|
|
934
|
+
},
|
|
935
|
+
"dropped": {
|
|
936
|
+
"type": "array",
|
|
937
|
+
"items": {
|
|
938
|
+
"$ref": "#/definitions/RunTelemetry/properties/final_attempt_id/anyOf/0"
|
|
939
|
+
},
|
|
940
|
+
"default": [],
|
|
941
|
+
"description": "Ids removed by paid_fallback or cooldown before ranking."
|
|
942
|
+
},
|
|
943
|
+
"reason": {
|
|
944
|
+
"type": "string",
|
|
945
|
+
"enum": [
|
|
946
|
+
"subscription_entitlement_first",
|
|
947
|
+
"lowest_incremental_cash",
|
|
948
|
+
"quality_tier",
|
|
949
|
+
"expiring_quota_slack",
|
|
950
|
+
"all_incremental_cash_unknown",
|
|
951
|
+
"declared_order"
|
|
952
|
+
],
|
|
953
|
+
"description": "Typed decisive reason the pool ranked the way it did (QA-034)."
|
|
954
|
+
},
|
|
955
|
+
"entries": {
|
|
956
|
+
"type": "array",
|
|
957
|
+
"items": {
|
|
958
|
+
"type": "object",
|
|
959
|
+
"properties": {
|
|
960
|
+
"harness_id": {
|
|
961
|
+
"type": "string",
|
|
962
|
+
"minLength": 1,
|
|
963
|
+
"description": "Candidate harness id."
|
|
964
|
+
},
|
|
965
|
+
"billing_knowledge": {
|
|
966
|
+
"type": "string",
|
|
967
|
+
"enum": [
|
|
968
|
+
"proven_zero",
|
|
969
|
+
"subscription_entitlement",
|
|
970
|
+
"metered",
|
|
971
|
+
"unknown"
|
|
972
|
+
],
|
|
973
|
+
"description": "Effective billing knowledge used to rank it."
|
|
974
|
+
},
|
|
975
|
+
"incremental_cost_usd": {
|
|
976
|
+
"anyOf": [
|
|
977
|
+
{
|
|
978
|
+
"type": "number",
|
|
979
|
+
"minimum": 0
|
|
980
|
+
},
|
|
981
|
+
{
|
|
982
|
+
"type": "null"
|
|
983
|
+
}
|
|
984
|
+
],
|
|
985
|
+
"default": null,
|
|
986
|
+
"description": "Known incremental cash cost, when any; null when unknown."
|
|
987
|
+
},
|
|
988
|
+
"eligible": {
|
|
989
|
+
"type": "boolean",
|
|
990
|
+
"description": "Whether the candidate survived paid_fallback/cooldown filtering."
|
|
991
|
+
}
|
|
992
|
+
},
|
|
993
|
+
"required": [
|
|
994
|
+
"harness_id",
|
|
995
|
+
"billing_knowledge",
|
|
996
|
+
"eligible"
|
|
997
|
+
],
|
|
998
|
+
"additionalProperties": false,
|
|
999
|
+
"description": "Per-candidate billing/cost tuple in the routing rationale (QA-034)."
|
|
1000
|
+
},
|
|
1001
|
+
"default": []
|
|
1002
|
+
}
|
|
1003
|
+
},
|
|
1004
|
+
"required": [
|
|
1005
|
+
"goal",
|
|
1006
|
+
"paid_fallback",
|
|
1007
|
+
"reason"
|
|
1008
|
+
],
|
|
1009
|
+
"additionalProperties": false,
|
|
1010
|
+
"description": "Typed routing rationale recorded once at pool ordering (QA-034)."
|
|
1011
|
+
},
|
|
1012
|
+
{
|
|
1013
|
+
"type": "null"
|
|
1014
|
+
}
|
|
1015
|
+
],
|
|
1016
|
+
"description": "Typed routing rationale recorded once at pool ordering (QA-034); null on legacy artifacts or when no ranking was computed.",
|
|
1017
|
+
"default": null
|
|
1018
|
+
},
|
|
1019
|
+
"deep_scan_synthesis": {
|
|
1020
|
+
"anyOf": [
|
|
1021
|
+
{
|
|
1022
|
+
"type": "object",
|
|
1023
|
+
"properties": {
|
|
1024
|
+
"status": {
|
|
1025
|
+
"type": "string",
|
|
1026
|
+
"enum": [
|
|
1027
|
+
"succeeded",
|
|
1028
|
+
"failed",
|
|
1029
|
+
"skipped"
|
|
1030
|
+
],
|
|
1031
|
+
"description": "succeeded = reducer merged the scouts; failed = honest raw bundle; skipped = single report, no merge."
|
|
1032
|
+
},
|
|
1033
|
+
"reducer_attempt_id": {
|
|
1034
|
+
"type": [
|
|
1035
|
+
"string",
|
|
1036
|
+
"null"
|
|
1037
|
+
],
|
|
1038
|
+
"default": null,
|
|
1039
|
+
"description": "The reducer attempt id (roster/cost visible); null when no reducer attempt ran."
|
|
1040
|
+
},
|
|
1041
|
+
"reason": {
|
|
1042
|
+
"type": [
|
|
1043
|
+
"string",
|
|
1044
|
+
"null"
|
|
1045
|
+
],
|
|
1046
|
+
"default": null,
|
|
1047
|
+
"description": "Why the reducer failed or was skipped; null on a clean merge."
|
|
1048
|
+
}
|
|
1049
|
+
},
|
|
1050
|
+
"required": [
|
|
1051
|
+
"status"
|
|
1052
|
+
],
|
|
1053
|
+
"additionalProperties": false,
|
|
1054
|
+
"description": "Deep-scan reducer outcome: whether the scout reports were merged into a real synthesis, degraded to an honest raw bundle, or skipped as a single report."
|
|
1055
|
+
},
|
|
1056
|
+
{
|
|
1057
|
+
"type": "null"
|
|
1058
|
+
}
|
|
1059
|
+
],
|
|
1060
|
+
"description": "Deep-scan reducer outcome (#27); null on non-deep-scan runs and legacy artifacts.",
|
|
1061
|
+
"default": null
|
|
1062
|
+
},
|
|
688
1063
|
"generated_at": {
|
|
689
1064
|
"type": "string",
|
|
690
1065
|
"minLength": 1,
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$ref": "#/definitions/StructuredOutputConformance",
|
|
3
|
+
"definitions": {
|
|
4
|
+
"StructuredOutputConformance": {
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"schema_version": {
|
|
8
|
+
"type": "number",
|
|
9
|
+
"const": 2,
|
|
10
|
+
"description": "Schema version of the artifact; bumped on breaking ABI changes."
|
|
11
|
+
},
|
|
12
|
+
"schema_dialect": {
|
|
13
|
+
"anyOf": [
|
|
14
|
+
{
|
|
15
|
+
"type": "string",
|
|
16
|
+
"enum": [
|
|
17
|
+
"draft-07",
|
|
18
|
+
"draft-2020-12"
|
|
19
|
+
],
|
|
20
|
+
"description": "JSON Schema dialect selected for structured-output validation."
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"type": "null"
|
|
24
|
+
}
|
|
25
|
+
],
|
|
26
|
+
"description": "Dialect used to compile and validate the caller schema; null only for legacy receipts.",
|
|
27
|
+
"default": null
|
|
28
|
+
},
|
|
29
|
+
"schema_hash": {
|
|
30
|
+
"anyOf": [
|
|
31
|
+
{
|
|
32
|
+
"type": "string",
|
|
33
|
+
"minLength": 1,
|
|
34
|
+
"description": "Content hash in algo:hex form, e.g. \"sha256:abcd...\"."
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"type": "null"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"description": "Stable hash of the original caller schema; null only for legacy receipts written before schema identity was recorded.",
|
|
41
|
+
"default": null
|
|
42
|
+
},
|
|
43
|
+
"status": {
|
|
44
|
+
"type": "string",
|
|
45
|
+
"enum": [
|
|
46
|
+
"passed",
|
|
47
|
+
"failed"
|
|
48
|
+
],
|
|
49
|
+
"description": "Whether the final answer conformed to the run's output schema."
|
|
50
|
+
},
|
|
51
|
+
"reason": {
|
|
52
|
+
"type": [
|
|
53
|
+
"string",
|
|
54
|
+
"null"
|
|
55
|
+
],
|
|
56
|
+
"default": null,
|
|
57
|
+
"description": "Why conformance failed (missing/unparsable answer, validator errors); null on pass."
|
|
58
|
+
},
|
|
59
|
+
"output_path": {
|
|
60
|
+
"type": [
|
|
61
|
+
"string",
|
|
62
|
+
"null"
|
|
63
|
+
],
|
|
64
|
+
"default": null,
|
|
65
|
+
"description": "Artifact path of the materialized structured output: final/output.json when conformant, final/output.invalid.json when parsed but non-conformant; null when the answer never parsed."
|
|
66
|
+
},
|
|
67
|
+
"generated_at": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"minLength": 1,
|
|
70
|
+
"description": "When the receipt was generated."
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
"required": [
|
|
74
|
+
"schema_version",
|
|
75
|
+
"status",
|
|
76
|
+
"generated_at"
|
|
77
|
+
],
|
|
78
|
+
"additionalProperties": false,
|
|
79
|
+
"description": "Structured-output conformance receipt (final/structured_output.yaml): the single engine validator's verdict on the final answer."
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
83
|
+
}
|
|
@@ -508,6 +508,22 @@
|
|
|
508
508
|
"default": {},
|
|
509
509
|
"description": "Resolved harness-scoped model map for this run (harness id to model id); empty means every route uses its per-harness settings default."
|
|
510
510
|
},
|
|
511
|
+
"routing_efforts": {
|
|
512
|
+
"type": "object",
|
|
513
|
+
"additionalProperties": {
|
|
514
|
+
"type": "string",
|
|
515
|
+
"enum": [
|
|
516
|
+
"low",
|
|
517
|
+
"medium",
|
|
518
|
+
"high",
|
|
519
|
+
"xhigh",
|
|
520
|
+
"max"
|
|
521
|
+
],
|
|
522
|
+
"description": "Cross-harness reasoning-effort level, weakest to strongest; adapters declare the subset they support and a shared normalizer clamps requests onto the nearest supported level."
|
|
523
|
+
},
|
|
524
|
+
"default": {},
|
|
525
|
+
"description": "Resolved harness-scoped reasoning-effort map for this run (harness id to effort), frozen so an Exact Retry replays the same effort instead of re-resolving current settings."
|
|
526
|
+
},
|
|
511
527
|
"convergence": {
|
|
512
528
|
"type": "object",
|
|
513
529
|
"properties": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@claudexor/schema",
|
|
3
|
-
"version": "3.0
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Single source of truth for all Claudexor data shapes (Zod + generated JSON Schema).",
|
|
6
6
|
"type": "module",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"zod": "^3.24.1",
|
|
22
22
|
"zod-to-json-schema": "^3.24.1",
|
|
23
|
-
"@claudexor/util": "3.0
|
|
23
|
+
"@claudexor/util": "3.1.0"
|
|
24
24
|
},
|
|
25
25
|
"repository": {
|
|
26
26
|
"type": "git",
|