@tangle-network/agent-eval 0.216.0 → 0.216.1
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/CHANGELOG.md +39 -0
- package/dist/adapters/http.d.ts +3 -3
- package/dist/{agent-profile-CIA2Atnt.d.ts → agent-profile-VFcQncbW.d.ts} +5 -5
- package/dist/{agent-profile-CIA2Atnt.d.ts.map → agent-profile-VFcQncbW.d.ts.map} +1 -1
- package/dist/{agent-profile-cell-BYc0bxsL.js → agent-profile-cell-BK8mlqlq.js} +3 -3
- package/dist/{agent-profile-cell-BYc0bxsL.js.map → agent-profile-cell-BK8mlqlq.js.map} +1 -1
- package/dist/{agreement-irr-DsTURxdr.js → agreement-irr-BEWLIF3_.js} +3 -3
- package/dist/{agreement-irr-DsTURxdr.js.map → agreement-irr-BEWLIF3_.js.map} +1 -1
- package/dist/analyst/index.d.ts +14 -14
- package/dist/analyst/index.d.ts.map +1 -1
- package/dist/analyst/index.js +15 -15
- package/dist/{analyze-runs-3xpby3p2.js → analyze-runs-C84irm4i.js} +608 -604
- package/dist/analyze-runs-C84irm4i.js.map +1 -0
- package/dist/{analyze-runs-CSDAh8A7.d.ts → analyze-runs-D68fd-su.d.ts} +17 -15
- package/dist/analyze-runs-D68fd-su.d.ts.map +1 -0
- package/dist/{baseline-Dm8966du.js → baseline-Udi_PLuT.js} +5 -5
- package/dist/{baseline-Dm8966du.js.map → baseline-Udi_PLuT.js.map} +1 -1
- package/dist/{benchmark-BywPeAUo.js → benchmark-CXmVVHH2.js} +2 -2
- package/dist/{benchmark-BywPeAUo.js.map → benchmark-CXmVVHH2.js.map} +1 -1
- package/dist/{benchmark-command-CByl9dxG.js → benchmark-command-By0vh8q7.js} +62 -45
- package/dist/benchmark-command-By0vh8q7.js.map +1 -0
- package/dist/benchmarks/index.d.ts +5 -5
- package/dist/benchmarks/index.js +3 -3
- package/dist/builder-eval/index.js +2 -2
- package/dist/campaign/index.d.ts +7 -7
- package/dist/campaign/index.js +13 -13
- package/dist/{campaign-BQ-Jujuj.js → campaign-BudZ70zo.js} +245 -247
- package/dist/campaign-BudZ70zo.js.map +1 -0
- package/dist/{campaign-evidence-OcUciD-N.js → campaign-evidence-Clrn4hBV.js} +8 -8
- package/dist/campaign-evidence-Clrn4hBV.js.map +1 -0
- package/dist/{canonical-BsZVgBhW.js → canonical-B2RqLofv.js} +2 -2
- package/dist/{canonical-BsZVgBhW.js.map → canonical-B2RqLofv.js.map} +1 -1
- package/dist/{chat-client-DthPOYGd.js → chat-client-l-MVDlDk.js} +2 -2
- package/dist/{chat-client-DthPOYGd.js.map → chat-client-l-MVDlDk.js.map} +1 -1
- package/dist/{chat-json-call-BrKsyspg.js → chat-json-call-puMArmtW.js} +2 -2
- package/dist/{chat-json-call-BrKsyspg.js.map → chat-json-call-puMArmtW.js.map} +1 -1
- package/dist/{claim-BXcZw-jo.js → claim-q4HQhK1G.js} +4 -4
- package/dist/claim-q4HQhK1G.js.map +1 -0
- package/dist/cli.js +9 -9
- package/dist/cli.js.map +1 -1
- package/dist/{cluster-bootstrap-B3JywQQn.js → cluster-bootstrap-qcUWYFl-.js} +3 -3
- package/dist/{cluster-bootstrap-B3JywQQn.js.map → cluster-bootstrap-qcUWYFl-.js.map} +1 -1
- package/dist/contract/index.d.ts +11 -11
- package/dist/contract/index.js +1022 -1078
- package/dist/contract/index.js.map +1 -1
- package/dist/{cost-ledger-D2FnJPBF.js → cost-ledger-BP8V4kUQ.js} +835 -816
- package/dist/cost-ledger-BP8V4kUQ.js.map +1 -0
- package/dist/{cost-ledger-CO7UyEcQ.d.ts → cost-ledger-Jk62OBfF.d.ts} +12 -47
- package/dist/cost-ledger-Jk62OBfF.d.ts.map +1 -0
- package/dist/{counterfactual-DtMWvn7D.js → counterfactual-Dn3veueY.js} +2 -2
- package/dist/{counterfactual-DtMWvn7D.js.map → counterfactual-Dn3veueY.js.map} +1 -1
- package/dist/{default-registry-Cn1LQ2Ve.js → default-registry-COhk9g36.js} +5 -5
- package/dist/{default-registry-Cn1LQ2Ve.js.map → default-registry-COhk9g36.js.map} +1 -1
- package/dist/{default-registry-BrWh62zf.d.ts → default-registry-DzHiGruW.d.ts} +6 -6
- package/dist/{default-registry-BrWh62zf.d.ts.map → default-registry-DzHiGruW.d.ts.map} +1 -1
- package/dist/{define-agent-eval-Ch3MWX6k.js → define-agent-eval-CNTPzIkp.js} +10 -10
- package/dist/define-agent-eval-CNTPzIkp.js.map +1 -0
- package/dist/{define-agent-eval-CEWkX5wZ.d.ts → define-agent-eval-WSck0CZJ.d.ts} +8 -8
- package/dist/{define-agent-eval-CEWkX5wZ.d.ts.map → define-agent-eval-WSck0CZJ.d.ts.map} +1 -1
- package/dist/{descriptive-CnU8Yq29.js → descriptive-DboxPZrG.js} +2 -2
- package/dist/{descriptive-CnU8Yq29.js.map → descriptive-DboxPZrG.js.map} +1 -1
- package/dist/diagnosis/index.d.ts +3 -3
- package/dist/diagnosis/index.js +4 -4
- package/dist/{dspy-rlm-engine-D-KX_e64.js → dspy-rlm-engine-LRCu61m5.js} +3 -3
- package/dist/{dspy-rlm-engine-D-KX_e64.js.map → dspy-rlm-engine-LRCu61m5.js.map} +1 -1
- package/dist/{effect-sizes-DiH8MGOH.js → effect-sizes-BhzEpXMc.js} +2 -2
- package/dist/{effect-sizes-DiH8MGOH.js.map → effect-sizes-BhzEpXMc.js.map} +1 -1
- package/dist/{engine-C_zNWfM8.d.ts → engine-3A_4jOlI.d.ts} +5 -5
- package/dist/{engine-C_zNWfM8.d.ts.map → engine-3A_4jOlI.d.ts.map} +1 -1
- package/dist/{equal-terms-Blx9Zk5I.js → equal-terms-BtdXayCJ.js} +2 -2
- package/dist/{equal-terms-Blx9Zk5I.js.map → equal-terms-BtdXayCJ.js.map} +1 -1
- package/dist/{errors-Dngq5h35.js → errors-DVZiqS7K.js} +6 -2
- package/dist/{errors-Dngq5h35.js.map → errors-DVZiqS7K.js.map} +1 -1
- package/dist/{eval-campaign-4byTtqrf.js → eval-campaign-90jeaCAI.js} +6 -6
- package/dist/{eval-campaign-4byTtqrf.js.map → eval-campaign-90jeaCAI.js.map} +1 -1
- package/dist/{evaluation-Cn2dRZIz.d.ts → evaluation-6Yoi74gM.d.ts} +4 -4
- package/dist/{evaluation-Cn2dRZIz.d.ts.map → evaluation-6Yoi74gM.d.ts.map} +1 -1
- package/dist/evaluation.d.ts +1 -1
- package/dist/evaluation.js +1 -1
- package/dist/{exact-types-CD0lf5Qd.d.ts → exact-types-ClugMJfI.d.ts} +2 -2
- package/dist/{exact-types-CD0lf5Qd.d.ts.map → exact-types-ClugMJfI.d.ts.map} +1 -1
- package/dist/experiment/index.d.ts +404 -3
- package/dist/experiment/index.d.ts.map +1 -1
- package/dist/experiment/index.js +313 -19
- package/dist/experiment/index.js.map +1 -1
- package/dist/{external-optimizer-process-nnsY5D_4.js → external-optimizer-process-BjMGUuds.js} +3 -3
- package/dist/{external-optimizer-process-nnsY5D_4.js.map → external-optimizer-process-BjMGUuds.js.map} +1 -1
- package/dist/{external-optimizer-subprocess-DcerlZSG.js → external-optimizer-subprocess-BqW0hHcI.js} +548 -548
- package/dist/external-optimizer-subprocess-BqW0hHcI.js.map +1 -0
- package/dist/{feedback-trajectory-DkaDj0dj.d.ts → feedback-trajectory-C4EG0nNH.d.ts} +5 -8
- package/dist/feedback-trajectory-C4EG0nNH.d.ts.map +1 -0
- package/dist/fuzz.d.ts +1 -1
- package/dist/fuzz.js +3 -3
- package/dist/hosted/index.js +1 -1
- package/dist/{index-CPJJr98o.d.ts → index-BFRO6chs.d.ts} +3 -2
- package/dist/index-BFRO6chs.d.ts.map +1 -0
- package/dist/{index-Ch9VxCpK.d.ts → index-BO41eGj5.d.ts} +2 -2
- package/dist/{index-Ch9VxCpK.d.ts.map → index-BO41eGj5.d.ts.map} +1 -1
- package/dist/{index-NvGBiO8H.d.ts → index-CyszSg4O.d.ts} +165 -162
- package/dist/index-CyszSg4O.d.ts.map +1 -0
- package/dist/{index-DlH0Y9gI.d.ts → index-DPcngtwt.d.ts} +30 -17
- package/dist/index-DPcngtwt.d.ts.map +1 -0
- package/dist/{index-oQ4aHziK.d.ts → index-DV-jSzxF.d.ts} +8 -8
- package/dist/{index-oQ4aHziK.d.ts.map → index-DV-jSzxF.d.ts.map} +1 -1
- package/dist/index.d.ts +1969 -1871
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +161 -201
- package/dist/index.js.map +1 -1
- package/dist/{integrity-BvnVARVl.js → integrity-BXOsAb3i.js} +2 -2
- package/dist/{integrity-BvnVARVl.js.map → integrity-BXOsAb3i.js.map} +1 -1
- package/dist/{integrity-CCAxGVK6.d.ts → integrity-DAMEDFaC.d.ts} +2 -2
- package/dist/{integrity-CCAxGVK6.d.ts.map → integrity-DAMEDFaC.d.ts.map} +1 -1
- package/dist/{integrity-BV1ZDf42.js → integrity-dLiDe2kD.js} +2 -5
- package/dist/integrity-dLiDe2kD.js.map +1 -0
- package/dist/{internal-CRHwS9iz.js → internal-Epl-YBZW.js} +3 -3
- package/dist/{internal-CRHwS9iz.js.map → internal-Epl-YBZW.js.map} +1 -1
- package/dist/interval-CELpye1n.js +219 -0
- package/dist/interval-CELpye1n.js.map +1 -0
- package/dist/interval-ohuOJurX.d.ts +47 -0
- package/dist/interval-ohuOJurX.d.ts.map +1 -0
- package/dist/{journal-DvKCvjty.js → journal-DfRz9kps.js} +2 -2
- package/dist/{journal-DvKCvjty.js.map → journal-DfRz9kps.js.map} +1 -1
- package/dist/{judge-calibration-N44V04Se.js → judge-calibration-BpCy5XQl.js} +3 -3
- package/dist/{judge-calibration-N44V04Se.js.map → judge-calibration-BpCy5XQl.js.map} +1 -1
- package/dist/{judge-gate-DNcUrRFA.d.ts → judge-gate-CE7CQAgt.d.ts} +3 -3
- package/dist/{judge-gate-DNcUrRFA.d.ts.map → judge-gate-CE7CQAgt.d.ts.map} +1 -1
- package/dist/{judge-gate-B1qYnkpi.js → judge-gate-iY9s4L44.js} +3 -3
- package/dist/judge-gate-iY9s4L44.js.map +1 -0
- package/dist/{kind-factory-CbZ-6tvu.js → kind-factory-BobI5Jy3.js} +4 -4
- package/dist/{kind-factory-CbZ-6tvu.js.map → kind-factory-BobI5Jy3.js.map} +1 -1
- package/dist/ledger-core/index.js +3 -3
- package/dist/{ledger-core-B2hahzrt.js → ledger-core-Gq7yp8lP.js} +4 -4
- package/dist/{ledger-core-B2hahzrt.js.map → ledger-core-Gq7yp8lP.js.map} +1 -1
- package/dist/{llm-client-DQveoxSM.js → llm-client-CyBAoYiX.js} +192 -219
- package/dist/llm-client-CyBAoYiX.js.map +1 -0
- package/dist/{llm-judge-PXV7Xljl.js → llm-judge-CG12SQJq.js} +499 -921
- package/dist/llm-judge-CG12SQJq.js.map +1 -0
- package/dist/matrix/index.d.ts +2 -2
- package/dist/matrix/index.js +1 -1
- package/dist/{matrix-CHMiebFx.d.ts → matrix-DSrSxjjy.d.ts} +4 -4
- package/dist/{matrix-CHMiebFx.d.ts.map → matrix-DSrSxjjy.d.ts.map} +1 -1
- package/dist/{matrix-_BV9-Lk5.js → matrix-Dm0BQW7U.js} +7 -11
- package/dist/matrix-Dm0BQW7U.js.map +1 -0
- package/dist/{paired-tests-jbwPdSz5.js → mean-DHoMiudD.js} +11 -5
- package/dist/mean-DHoMiudD.js.map +1 -0
- package/dist/meta-eval/index.d.ts +3 -3
- package/dist/meta-eval/index.js +9 -9
- package/dist/meta-eval/index.js.map +1 -1
- package/dist/mint-DNU8QPG4.d.ts +81 -0
- package/dist/mint-DNU8QPG4.d.ts.map +1 -0
- package/dist/{mint-Csor1BLJ.js → mint-QaD5cA0u.js} +3 -3
- package/dist/{mint-Csor1BLJ.js.map → mint-QaD5cA0u.js.map} +1 -1
- package/dist/{multiplicity-D9cjmStq.js → multiplicity-DQUFcbW4.js} +2 -2
- package/dist/{multiplicity-D9cjmStq.js.map → multiplicity-DQUFcbW4.js.map} +1 -1
- package/dist/multishot/golden/index.d.ts +1 -1
- package/dist/multishot/golden/index.d.ts.map +1 -1
- package/dist/multishot/golden/index.js +3 -6
- package/dist/multishot/golden/index.js.map +1 -1
- package/dist/multishot/index.d.ts +2 -2
- package/dist/multishot/index.js +1 -1
- package/dist/nonnegative-number-DvdMxg_f.js +9 -0
- package/dist/nonnegative-number-DvdMxg_f.js.map +1 -0
- package/dist/openapi.json +1 -1
- package/dist/{otel-spans-C8YIJWy1.js → otel-spans-B9tUXRHF.js} +3 -3
- package/dist/{otel-spans-C8YIJWy1.js.map → otel-spans-B9tUXRHF.js.map} +1 -1
- package/dist/{paired-arms-DzKn0TfY.js → paired-arms-CwMGJsrS.js} +5 -5
- package/dist/{paired-arms-DzKn0TfY.js.map → paired-arms-CwMGJsrS.js.map} +1 -1
- package/dist/{paired-binary-Q36bhn2R.js → paired-binary-CvpFHfKZ.js} +2 -2
- package/dist/{paired-binary-Q36bhn2R.js.map → paired-binary-CvpFHfKZ.js.map} +1 -1
- package/dist/{paired-promotion-decision-BN6IQTiu.js → paired-promotion-decision-DsAPYGCm.js} +3 -3
- package/dist/{paired-promotion-decision-BN6IQTiu.js.map → paired-promotion-decision-DsAPYGCm.js.map} +1 -1
- package/dist/{search-kernel-BztlERLv.js → pareto-Cm6ndrWN.js} +883 -861
- package/dist/pareto-Cm6ndrWN.js.map +1 -0
- package/dist/pipelines/index.d.ts +2 -2
- package/dist/pipelines/index.js +3 -3
- package/dist/{power-and-mde-fK5Qocwo.js → power-and-mde-Hj2ubb4B.js} +2 -2
- package/dist/{power-and-mde-fK5Qocwo.js.map → power-and-mde-Hj2ubb4B.js.map} +1 -1
- package/dist/predicate-FdKmElA_.js +38 -0
- package/dist/predicate-FdKmElA_.js.map +1 -0
- package/dist/{prime-protocol-DcAK9pC8.js → prime-protocol-CHKgA3a6.js} +2 -2
- package/dist/{prime-protocol-DcAK9pC8.js.map → prime-protocol-CHKgA3a6.js.map} +1 -1
- package/dist/{prime-protocol-CEE4BR9N.d.ts → prime-protocol-HiB9HX7E.d.ts} +3 -3
- package/dist/{prime-protocol-CEE4BR9N.d.ts.map → prime-protocol-HiB9HX7E.d.ts.map} +1 -1
- package/dist/{produced-state-ZCtDBxAE.js → produced-state-BsDmnwxc.js} +8 -8
- package/dist/{produced-state-ZCtDBxAE.js.map → produced-state-BsDmnwxc.js.map} +1 -1
- package/dist/profile-cell.js +1 -1
- package/dist/{release-confidence-BK2QCB5M.d.ts → promotion-gate-BawrdPYr.d.ts} +102 -102
- package/dist/promotion-gate-BawrdPYr.d.ts.map +1 -0
- package/dist/{promotion-policy-CWW35UWq.js → promotion-policy-KO57gbyV.js} +4 -4
- package/dist/{promotion-policy-CWW35UWq.js.map → promotion-policy-KO57gbyV.js.map} +1 -1
- package/dist/{proposal-findings-BZiMTzAF.js → proposal-findings-CY1xKn_a.js} +2 -2
- package/dist/{proposal-findings-BZiMTzAF.js.map → proposal-findings-CY1xKn_a.js.map} +1 -1
- package/dist/{query-B1D1qp2Z.js → query-BUCZCK7F.js} +3 -3
- package/dist/{query-B1D1qp2Z.js.map → query-BUCZCK7F.js.map} +1 -1
- package/dist/{random-Dn5fPWkt.js → random-ByUSnV9w.js} +2 -2
- package/dist/{random-Dn5fPWkt.js.map → random-ByUSnV9w.js.map} +1 -1
- package/dist/{raw-provider-sink-rB2DYxr6.js → raw-provider-sink-DoHz4JNG.js} +2 -2
- package/dist/{raw-provider-sink-rB2DYxr6.js.map → raw-provider-sink-DoHz4JNG.js.map} +1 -1
- package/dist/{redact-Dk1ZdJEm.js → redact-B5xXKqQ3.js} +97 -98
- package/dist/redact-B5xXKqQ3.js.map +1 -0
- package/dist/{redact-Cveoq6fJ.d.ts → redact-mtCCcT8z.d.ts} +4 -20
- package/dist/redact-mtCCcT8z.d.ts.map +1 -0
- package/dist/{registry-JYfPxcVz.d.ts → registry-D7_hm2fK.d.ts} +5 -5
- package/dist/{registry-JYfPxcVz.d.ts.map → registry-D7_hm2fK.d.ts.map} +1 -1
- package/dist/{release-confidence-Dbe9AS_X.js → release-confidence-CpuP65S5.js} +5 -5
- package/dist/{release-confidence-Dbe9AS_X.js.map → release-confidence-CpuP65S5.js.map} +1 -1
- package/dist/{report-command-y8H6RSX8.js → report-command-SC9nqb4M.js} +106 -171
- package/dist/report-command-SC9nqb4M.js.map +1 -0
- package/dist/reporting-html-Kvlc8oMt.js +100 -0
- package/dist/reporting-html-Kvlc8oMt.js.map +1 -0
- package/dist/reporting.d.ts +3 -3
- package/dist/reporting.js +6 -6
- package/dist/{researcher-f6mZhh58.d.ts → researcher-CEcfku-T.d.ts} +5 -5
- package/dist/{researcher-f6mZhh58.d.ts.map → researcher-CEcfku-T.d.ts.map} +1 -1
- package/dist/reward-CpCmAM8L.d.ts +78 -0
- package/dist/reward-CpCmAM8L.d.ts.map +1 -0
- package/dist/{reward-hacking-BFcQgkux.js → reward-hacking-E0d-WVcP.js} +2 -2
- package/dist/{reward-hacking-BFcQgkux.js.map → reward-hacking-E0d-WVcP.js.map} +1 -1
- package/dist/{reward-hacking-DHA7c1l8.d.ts → reward-hacking-RVdZ6Kkt.d.ts} +2 -2
- package/dist/{reward-hacking-DHA7c1l8.d.ts.map → reward-hacking-RVdZ6Kkt.d.ts.map} +1 -1
- package/dist/rl.d.ts +8 -8
- package/dist/rl.js +14 -14
- package/dist/rollout/index.d.ts +3 -2
- package/dist/rollout/index.js +2 -2
- package/dist/{rollout-D9bKKBnZ.js → rollout-DZV1t2Wg.js} +2 -2
- package/dist/{rollout-D9bKKBnZ.js.map → rollout-DZV1t2Wg.js.map} +1 -1
- package/dist/round-decimal-COrKglMh.js +10 -0
- package/dist/round-decimal-COrKglMh.js.map +1 -0
- package/dist/{rubric-predictive-validity-2SgHxoa5.d.ts → rubric-predictive-validity-C03EC7ZE.d.ts} +2 -2
- package/dist/{rubric-predictive-validity-2SgHxoa5.d.ts.map → rubric-predictive-validity-C03EC7ZE.d.ts.map} +1 -1
- package/dist/{rubric-predictive-validity-BsgkBfT0.js → rubric-predictive-validity-DaFW70y9.js} +3 -3
- package/dist/{rubric-predictive-validity-BsgkBfT0.js.map → rubric-predictive-validity-DaFW70y9.js.map} +1 -1
- package/dist/{run-record-DlTZ_lqe.js → run-record-Boc5IUTp.js} +4 -4
- package/dist/{run-record-DlTZ_lqe.js.map → run-record-Boc5IUTp.js.map} +1 -1
- package/dist/{run-record-D1Hw-Jml.d.ts → run-record-C1E24G2A.d.ts} +2 -2
- package/dist/{run-record-D1Hw-Jml.d.ts.map → run-record-C1E24G2A.d.ts.map} +1 -1
- package/dist/{run-record-ES07wfz9.js → run-record-C5e7FjhJ.js} +3 -5
- package/dist/run-record-C5e7FjhJ.js.map +1 -0
- package/dist/search/index.d.ts +46 -32
- package/dist/search/index.d.ts.map +1 -1
- package/dist/search/index.js +3 -3
- package/dist/{search-kernel-CpcKH5Ih.d.ts → search-kernel-DyNEa6IU.d.ts} +14 -10
- package/dist/search-kernel-DyNEa6IU.d.ts.map +1 -0
- package/dist/{search-ledger-d7V8o9Lk.js → search-ledger-CVUGLDZp.js} +189 -199
- package/dist/search-ledger-CVUGLDZp.js.map +1 -0
- package/dist/{search-ledger-file-BqOo-bVo.js → search-ledger-file-DDQUgvCg.js} +4 -4
- package/dist/{search-ledger-file-BqOo-bVo.js.map → search-ledger-file-DDQUgvCg.js.map} +1 -1
- package/dist/search-ledger-types-p2xKfiDJ.d.ts.map +1 -1
- package/dist/{search-shipper-er4pK5_Y.js → search-shipper-BOSD46qv.js} +3 -3
- package/dist/{search-shipper-er4pK5_Y.js.map → search-shipper-BOSD46qv.js.map} +1 -1
- package/dist/{search-summary-CBvz3u_S.js → search-summary-BQCSWf1g.js} +5 -5
- package/dist/{search-summary-CBvz3u_S.js.map → search-summary-BQCSWf1g.js.map} +1 -1
- package/dist/{semantic-concept-judge-zQBG9hHU.js → semantic-concept-judge-BQF8te0T.js} +12 -14
- package/dist/semantic-concept-judge-BQF8te0T.js.map +1 -0
- package/dist/{sequential-D-1PPCmM.js → sequential-Bf_pbE50.js} +5 -5
- package/dist/{sequential-D-1PPCmM.js.map → sequential-Bf_pbE50.js.map} +1 -1
- package/dist/{sequential-eprocess-D1jKoihe.js → sequential-eprocess-DM_qENCl.js} +2 -2
- package/dist/{sequential-eprocess-D1jKoihe.js.map → sequential-eprocess-DM_qENCl.js.map} +1 -1
- package/dist/{server-DbcC7xMl.js → server-e9oWO_bN.js} +4 -4
- package/dist/{server-DbcC7xMl.js.map → server-e9oWO_bN.js.map} +1 -1
- package/dist/{single-run-lock-fVu3MZWH.js → single-run-lock-CV9Eyd_q.js} +2 -2
- package/dist/{single-run-lock-fVu3MZWH.js.map → single-run-lock-CV9Eyd_q.js.map} +1 -1
- package/dist/{skillopt-optimization-method-CCtzralq.js → skillopt-optimization-method-BiwA8nfX.js} +427 -12
- package/dist/skillopt-optimization-method-BiwA8nfX.js.map +1 -0
- package/dist/{spans-D9_ehFuk.d.ts → spans-BHAUXMGN.d.ts} +2 -2
- package/dist/{spans-D9_ehFuk.d.ts.map → spans-BHAUXMGN.d.ts.map} +1 -1
- package/dist/{statistical-heldout-1Gbmex7v.js → statistical-heldout-42NlCNDe.js} +3 -3
- package/dist/{statistical-heldout-1Gbmex7v.js.map → statistical-heldout-42NlCNDe.js.map} +1 -1
- package/dist/{statistical-heldout-BeR4bOdg.d.ts → statistical-heldout-CYpGaoDH.d.ts} +3 -3
- package/dist/{statistical-heldout-BeR4bOdg.d.ts.map → statistical-heldout-CYpGaoDH.d.ts.map} +1 -1
- package/dist/{store-otlp-DtB4Slsr.js → store-otlp-DJ9dtA5x.js} +135 -132
- package/dist/store-otlp-DJ9dtA5x.js.map +1 -0
- package/dist/{store-tool-spans-fZIigrpP.js → store-tool-spans-CIX5arAG.js} +7 -7
- package/dist/{store-tool-spans-fZIigrpP.js.map → store-tool-spans-CIX5arAG.js.map} +1 -1
- package/dist/{store-tool-spans-DR1SrCLK.d.ts → store-tool-spans-DdCSPa7C.d.ts} +162 -161
- package/dist/store-tool-spans-DdCSPa7C.d.ts.map +1 -0
- package/dist/storyboard/index.d.ts.map +1 -1
- package/dist/storyboard/index.js +20 -3
- package/dist/storyboard/index.js.map +1 -1
- package/dist/{student-t-BQeKJx2N.js → student-t-DVPW7CdL.js} +2 -2
- package/dist/{student-t-BQeKJx2N.js.map → student-t-DVPW7CdL.js.map} +1 -1
- package/dist/{summary-report-DtdRucM0.js → summary-report-V_JACR4Y.js} +526 -614
- package/dist/summary-report-V_JACR4Y.js.map +1 -0
- package/dist/{summary-report-C-CtItCN.d.ts → summary-report-bdFDXq0b.d.ts} +10 -5
- package/dist/summary-report-bdFDXq0b.d.ts.map +1 -0
- package/dist/supervisor-run/index.d.ts +153 -149
- package/dist/supervisor-run/index.d.ts.map +1 -1
- package/dist/supervisor-run/index.js +65 -3
- package/dist/supervisor-run/index.js.map +1 -1
- package/dist/{systemone-CpTLAlqb.d.ts → systemone-BomhHr2c.d.ts} +6 -6
- package/dist/{systemone-CpTLAlqb.d.ts.map → systemone-BomhHr2c.d.ts.map} +1 -1
- package/dist/systemone-protocol.js +1 -1
- package/dist/{systemone-review-B_yo1xsd.d.ts → systemone-review-CUVcQJu6.d.ts} +2 -2
- package/dist/{systemone-review-B_yo1xsd.d.ts.map → systemone-review-CUVcQJu6.d.ts.map} +1 -1
- package/dist/{systemone-review-BZWfrtq1.js → systemone-review-D7sXwsqq.js} +2 -2
- package/dist/{systemone-review-BZWfrtq1.js.map → systemone-review-D7sXwsqq.js.map} +1 -1
- package/dist/systemone.d.ts +3 -3
- package/dist/systemone.js +4 -4
- package/dist/{task-failure-attributes-DngaLdE4.js → task-failure-attributes-hEmASjix.js} +2 -2
- package/dist/{task-failure-attributes-DngaLdE4.js.map → task-failure-attributes-hEmASjix.js.map} +1 -1
- package/dist/{terminal-record-BHocwFw1.js → terminal-record-DZyQZ3pz.js} +14 -10
- package/dist/terminal-record-DZyQZ3pz.js.map +1 -0
- package/dist/{tool-groups-mcxOXVlb.d.ts → tool-groups-C3NEcdCM.d.ts} +3 -3
- package/dist/tool-groups-C3NEcdCM.d.ts.map +1 -0
- package/dist/{tool-waste-Wi4g6Ekb.d.ts → tool-waste-BKgvd-TP.d.ts} +30 -30
- package/dist/tool-waste-BKgvd-TP.d.ts.map +1 -0
- package/dist/{tool-waste-D52PqU9Q.js → tool-waste-BlesqTqW.js} +4 -4
- package/dist/{tool-waste-D52PqU9Q.js.map → tool-waste-BlesqTqW.js.map} +1 -1
- package/dist/{trace-questions-DG7nqLQ7.d.ts → trace-questions-CM2CAocU.d.ts} +4 -4
- package/dist/{trace-questions-DG7nqLQ7.d.ts.map → trace-questions-CM2CAocU.d.ts.map} +1 -1
- package/dist/trace-repair/index.d.ts +3 -3
- package/dist/trace-repair/index.d.ts.map +1 -1
- package/dist/trace-repair/index.js +7 -13
- package/dist/trace-repair/index.js.map +1 -1
- package/dist/traces.d.ts +76 -58
- package/dist/traces.d.ts.map +1 -1
- package/dist/traces.js +9 -9
- package/dist/trajectory-replay/index.js +3 -3
- package/dist/{tree-rXLW3M_4.js → tree-C1XYeXvy.js} +2277 -2339
- package/dist/tree-C1XYeXvy.js.map +1 -0
- package/dist/{types-DBZ7keha.d.ts → types-C02qtnG8.d.ts} +4 -46
- package/dist/types-C02qtnG8.d.ts.map +1 -0
- package/dist/{types-oKRhQAde.d.ts → types-C1tnkEgM.d.ts} +4 -4
- package/dist/{types-oKRhQAde.d.ts.map → types-C1tnkEgM.d.ts.map} +1 -1
- package/dist/{types-CfZMIzB_.d.ts → types-Cbe2fWBa.d.ts} +3 -3
- package/dist/{types-CfZMIzB_.d.ts.map → types-Cbe2fWBa.d.ts.map} +1 -1
- package/dist/{types-B4C5nFw6.d.ts → types-Cq8mSbq8.d.ts} +78 -72
- package/dist/types-Cq8mSbq8.d.ts.map +1 -0
- package/dist/{verdict-DhPoXApk.js → verdict-Dl0tiT1X.js} +2 -2
- package/dist/{verdict-DhPoXApk.js.map → verdict-Dl0tiT1X.js.map} +1 -1
- package/dist/{verdict-cache-BQEsVy9n.js → verdict-cache-Bm8EKL2s.js} +2 -2
- package/dist/{verdict-cache-BQEsVy9n.js.map → verdict-cache-Bm8EKL2s.js.map} +1 -1
- package/dist/wire/index.d.ts +3 -3
- package/dist/wire/index.js +1 -1
- package/docs/design/mlbenchmarks-book-review.md +1 -1
- package/docs/design/mlbenchmarks-review/probes.mts +23 -31
- package/docs/experiment.md +1 -1
- package/package.json +1 -1
- package/dist/analyze-runs-3xpby3p2.js.map +0 -1
- package/dist/analyze-runs-CSDAh8A7.d.ts.map +0 -1
- package/dist/ast-DJ6Bc7ab.js +0 -558
- package/dist/ast-DJ6Bc7ab.js.map +0 -1
- package/dist/ast-hI-vjW6J.d.ts +0 -457
- package/dist/ast-hI-vjW6J.d.ts.map +0 -1
- package/dist/benchmark-command-CByl9dxG.js.map +0 -1
- package/dist/campaign-BQ-Jujuj.js.map +0 -1
- package/dist/campaign-evidence-OcUciD-N.js.map +0 -1
- package/dist/claim-BXcZw-jo.js.map +0 -1
- package/dist/cost-ledger-CO7UyEcQ.d.ts.map +0 -1
- package/dist/cost-ledger-D2FnJPBF.js.map +0 -1
- package/dist/define-agent-eval-Ch3MWX6k.js.map +0 -1
- package/dist/external-optimizer-subprocess-DcerlZSG.js.map +0 -1
- package/dist/feedback-trajectory-DkaDj0dj.d.ts.map +0 -1
- package/dist/index-CPJJr98o.d.ts.map +0 -1
- package/dist/index-DlH0Y9gI.d.ts.map +0 -1
- package/dist/index-NvGBiO8H.d.ts.map +0 -1
- package/dist/integrity-BV1ZDf42.js.map +0 -1
- package/dist/judge-gate-B1qYnkpi.js.map +0 -1
- package/dist/llm-client-DQveoxSM.js.map +0 -1
- package/dist/llm-judge-PXV7Xljl.js.map +0 -1
- package/dist/matrix-_BV9-Lk5.js.map +0 -1
- package/dist/mint-DCGoBYhB.d.ts +0 -155
- package/dist/mint-DCGoBYhB.d.ts.map +0 -1
- package/dist/paired-tests-jbwPdSz5.js.map +0 -1
- package/dist/redact-Cveoq6fJ.d.ts.map +0 -1
- package/dist/redact-Dk1ZdJEm.js.map +0 -1
- package/dist/release-confidence-BK2QCB5M.d.ts.map +0 -1
- package/dist/report-command-y8H6RSX8.js.map +0 -1
- package/dist/run-record-ES07wfz9.js.map +0 -1
- package/dist/search-kernel-BztlERLv.js.map +0 -1
- package/dist/search-kernel-CpcKH5Ih.d.ts.map +0 -1
- package/dist/search-ledger-d7V8o9Lk.js.map +0 -1
- package/dist/semantic-concept-judge-zQBG9hHU.js.map +0 -1
- package/dist/skillopt-optimization-method-CCtzralq.js.map +0 -1
- package/dist/store-otlp-DtB4Slsr.js.map +0 -1
- package/dist/store-tool-spans-DR1SrCLK.d.ts.map +0 -1
- package/dist/summary-report-C-CtItCN.d.ts.map +0 -1
- package/dist/summary-report-DtdRucM0.js.map +0 -1
- package/dist/terminal-record-BHocwFw1.js.map +0 -1
- package/dist/tool-groups-mcxOXVlb.d.ts.map +0 -1
- package/dist/tool-waste-Wi4g6Ekb.d.ts.map +0 -1
- package/dist/tree-rXLW3M_4.js.map +0 -1
- package/dist/types-B4C5nFw6.d.ts.map +0 -1
- package/dist/types-DBZ7keha.d.ts.map +0 -1
|
@@ -1,8 +1,42 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { l as errorMessage } from "./errors-DVZiqS7K.js";
|
|
2
|
+
import { a as hashCanonical } from "./canonical-B2RqLofv.js";
|
|
3
|
+
import { o as summarizeNumberSeries } from "./descriptive-DboxPZrG.js";
|
|
4
|
+
import { t as roundDecimal } from "./round-decimal-COrKglMh.js";
|
|
5
|
+
import { a as nonEmptyString, c as parseSupervisorTree, d as NO_SOURCE_LIMITS, g as unavailable, h as showMeasured, i as asRecord, l as recordOrNull, m as isUnavailable, o as parseJson, p as SUPERVISOR_RUN_SCHEMA, r as readTerminalRecord, s as parseJsonl, u as workerSourceKey } from "./terminal-record-DZyQZ3pz.js";
|
|
4
6
|
import { join, resolve } from "node:path";
|
|
5
7
|
import { appendFile, mkdir, readFile, readdir, stat, writeFile } from "node:fs/promises";
|
|
8
|
+
//#region src/supervisor-run/patch-stats.ts
|
|
9
|
+
/** Unified-diff stats. Counts `+++ b/<path>` targets, body +/- lines, and test-file touches. */
|
|
10
|
+
function parsePatch(text) {
|
|
11
|
+
const files = /* @__PURE__ */ new Set();
|
|
12
|
+
const testFiles = /* @__PURE__ */ new Set();
|
|
13
|
+
let added = 0;
|
|
14
|
+
let removed = 0;
|
|
15
|
+
for (const line of text.split("\n")) {
|
|
16
|
+
if (line.startsWith("+++ ")) {
|
|
17
|
+
const p = line.slice(4).trim().replace(/^b\//, "");
|
|
18
|
+
if (p !== "/dev/null") {
|
|
19
|
+
files.add(p);
|
|
20
|
+
if (isTestPath(p)) testFiles.add(p);
|
|
21
|
+
}
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
if (line.startsWith("--- ") || line.startsWith("diff --git") || line.startsWith("index ")) continue;
|
|
25
|
+
if (line.startsWith("+")) added += 1;
|
|
26
|
+
else if (line.startsWith("-")) removed += 1;
|
|
27
|
+
}
|
|
28
|
+
return {
|
|
29
|
+
files: files.size,
|
|
30
|
+
linesAdded: added,
|
|
31
|
+
linesRemoved: removed,
|
|
32
|
+
testFilesTouched: [...testFiles].sort()
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
function isTestPath(p) {
|
|
36
|
+
const base = p.split("/").pop() ?? p;
|
|
37
|
+
return /(^|\/)(tests?|__tests__|testing|spec)(\/|$)/.test(p) || /\.(test|spec)\.[cm]?[jt]sx?$/.test(base) || /^test_.*\.py$/.test(base) || /_test\.py$/.test(base);
|
|
38
|
+
}
|
|
39
|
+
//#endregion
|
|
6
40
|
//#region src/supervisor-run/analyze.ts
|
|
7
41
|
/**
|
|
8
42
|
* The pure analyzer. Takes already-read bytes (`SupervisorRunSources`) and
|
|
@@ -203,8 +237,8 @@ function analyzeSupervisorRunSources(src, now = Date.now) {
|
|
|
203
237
|
supervisorWallMs,
|
|
204
238
|
supervisorWallSource,
|
|
205
239
|
idleMs: isUnavailable(supervisorWallMs) ? unavailable(supervisorWallMs.unavailable) : idleMs,
|
|
206
|
-
idlePct: isUnavailable(supervisorWallMs) || supervisorWallMs === 0 ? isUnavailable(supervisorWallMs) ? unavailable(supervisorWallMs.unavailable) : unavailable("supervisor wall is 0ms") :
|
|
207
|
-
workerUtilization: isUnavailable(supervisorWallMs) || supervisorWallMs === 0 ? isUnavailable(supervisorWallMs) ? unavailable(supervisorWallMs.unavailable) : unavailable("supervisor wall is 0ms") :
|
|
240
|
+
idlePct: isUnavailable(supervisorWallMs) || supervisorWallMs === 0 ? isUnavailable(supervisorWallMs) ? unavailable(supervisorWallMs.unavailable) : unavailable("supervisor wall is 0ms") : roundDecimal(idleMs / supervisorWallMs * 100, 1),
|
|
241
|
+
workerUtilization: isUnavailable(supervisorWallMs) || supervisorWallMs === 0 ? isUnavailable(supervisorWallMs) ? unavailable(supervisorWallMs.unavailable) : unavailable("supervisor wall is 0ms") : roundDecimal(sumWorkerWallMs / supervisorWallMs, 3)
|
|
208
242
|
};
|
|
209
243
|
const settledByStatus = {};
|
|
210
244
|
const settledVerdicts = {};
|
|
@@ -303,20 +337,20 @@ function analyzeSupervisorRunSources(src, now = Date.now) {
|
|
|
303
337
|
const usdLimit = src.limits.spendUsd;
|
|
304
338
|
const closeUsdUnreported = stateUsd === null && resultCloseUsd !== null && resultSpentTotal.usdKnown === false;
|
|
305
339
|
const usdUnreportedReason = unpriced(usdUnknownRecords, usdKnownRecords + usdUnknownRecords, usdUnknownNodes);
|
|
306
|
-
const totalUsd = usdLimit !== null ? gap("totalUsd", usdLimit) : stateUsd !== null ?
|
|
340
|
+
const totalUsd = usdLimit !== null ? gap("totalUsd", usdLimit) : stateUsd !== null ? roundDecimal(stateUsd, 6) : !haveJournal ? gap("totalUsd", journalMissing) : usdUnknownRecords > 0 ? gap("totalUsd", usdUnreportedReason) : roundDecimal(tree.brain.usd + journalWorkerUsd, 6);
|
|
307
341
|
const journalSpendRecords = usdKnownRecords;
|
|
308
342
|
const journalDerivedAvailable = usdLimit === null && haveJournal && !usdAllUnknown;
|
|
309
343
|
const closeRecordAvailable = usdLimit === null && closeUsd !== null && !closeUsdUnreported;
|
|
310
344
|
const spend = {
|
|
311
345
|
journalDerived: {
|
|
312
|
-
usd: journalDerivedAvailable ?
|
|
346
|
+
usd: journalDerivedAvailable ? roundDecimal(tree.brain.usd + journalWorkerUsd, 6) : unavailable(usdLimit ?? (haveJournal ? usdUnreportedReason : journalMissing)),
|
|
313
347
|
records: journalDerivedAvailable ? journalSpendRecords : 0,
|
|
314
348
|
unknownRecords: usdLimit === null && haveJournal ? usdUnknownRecords : 0,
|
|
315
349
|
partial: journalDerivedAvailable && usdPartial,
|
|
316
350
|
unknownNodes: usdLimit === null && haveJournal ? usdUnknownNodes : []
|
|
317
351
|
},
|
|
318
352
|
closeRecord: {
|
|
319
|
-
usd: closeRecordAvailable ?
|
|
353
|
+
usd: closeRecordAvailable ? roundDecimal(closeUsd, 6) : unavailable(usdLimit ?? (closeUsdUnreported ? "close record incomplete: result.json spentTotal.usdKnown is false" : "no close record: neither state.json result.spentUsd nor result.json spentTotal.usd is present")),
|
|
320
354
|
records: closeRecordAvailable ? 1 : 0,
|
|
321
355
|
unknownRecords: closeUsdUnreported ? 1 : 0,
|
|
322
356
|
partial: false,
|
|
@@ -371,7 +405,7 @@ function analyzeSupervisorRunSources(src, now = Date.now) {
|
|
|
371
405
|
brain: {
|
|
372
406
|
tokensIn: managerTokenLimit !== null ? gap("brain.tokensIn", managerTokenLimit) : !haveJournal ? gap("brain.tokensIn", journalMissing) : brainTokensUnreported !== null ? gap("brain.tokensIn", brainTokensUnreported) : tree.brain.tokensIn,
|
|
373
407
|
tokensOut: managerTokenLimit !== null ? unavailable(managerTokenLimit) : !haveJournal ? unavailable(journalMissing) : brainTokensUnreported !== null ? unavailable(brainTokensUnreported) : tree.brain.tokensOut,
|
|
374
|
-
usd: usdLimit !== null ? unavailable(usdLimit) : !haveJournal ? unavailable(journalMissing) : brainUsdUnreported !== null ? unavailable(brainUsdUnreported) :
|
|
408
|
+
usd: usdLimit !== null ? unavailable(usdLimit) : !haveJournal ? unavailable(journalMissing) : brainUsdUnreported !== null ? unavailable(brainUsdUnreported) : roundDecimal(tree.brain.usd, 6),
|
|
375
409
|
cacheRead: managerTokenLimit !== null ? unavailable(managerTokenLimit) : !haveJournal ? unavailable(journalMissing) : brainTokensUnreported !== null ? unavailable(brainTokensUnreported) : !tree.brain.hasCache ? unavailable(NO_CACHE_COUNTERS) : tree.brain.cacheBreakdownKnown ? tree.brain.cacheRead : unavailable(NO_CACHE_BREAKDOWN),
|
|
376
410
|
cacheWrite: managerTokenLimit !== null ? unavailable(managerTokenLimit) : !haveJournal ? unavailable(journalMissing) : brainTokensUnreported !== null ? unavailable(brainTokensUnreported) : !tree.brain.hasCache ? unavailable(NO_CACHE_COUNTERS) : tree.brain.cacheBreakdownKnown ? tree.brain.cacheWrite : unavailable(NO_CACHE_BREAKDOWN),
|
|
377
411
|
source: managerTokenLimit ?? (haveJournal ? `journal metered events (n=${tree.brain.meteredCount})${tree.brain.usdKnownCount > 0 && tree.brain.usdUnknownCount > 0 ? ` — ${tree.brain.usdUnknownCount} unpriced` : ""}` : journalMissing)
|
|
@@ -382,13 +416,13 @@ function analyzeSupervisorRunSources(src, now = Date.now) {
|
|
|
382
416
|
tokensOut: workerOut,
|
|
383
417
|
cacheRead: workerTokenLimit !== null ? unavailable(workerTokenLimit) : sq?.cacheRead !== void 0 ? sq.cacheRead : unavailable(NO_CACHE_COUNTERS),
|
|
384
418
|
cacheWrite: workerTokenLimit !== null ? unavailable(workerTokenLimit) : sq?.cacheWrite !== void 0 ? sq.cacheWrite : unavailable(NO_CACHE_COUNTERS),
|
|
385
|
-
usd: usdLimit !== null ? unavailable(usdLimit) : !haveJournal ? unavailable(journalMissing) : workerUsdUnreported !== null ? unavailable(workerUsdUnreported) :
|
|
419
|
+
usd: usdLimit !== null ? unavailable(usdLimit) : !haveJournal ? unavailable(journalMissing) : workerUsdUnreported !== null ? unavailable(workerUsdUnreported) : roundDecimal(journalWorkerUsd, 6),
|
|
386
420
|
source: `${workerTokenLimit !== null ? workerTokenLimit : sq !== null ? `journal settled spend + ${sq.store} sessions (n=${sq.sessions})` : `journal settled spend only — ${src.harnessMissingReason ?? "harness session store unavailable"}`}${workerUsdUnknownNodes.length > 0 && workerUsdUnknownNodes.length < rootChildSpends.length ? ` — ${workerUsdUnknownNodes.length} unpriced` : ""}`
|
|
387
421
|
},
|
|
388
422
|
spend,
|
|
389
423
|
totalUsd,
|
|
390
424
|
totalUsdSource: usdLimit !== null ? usdLimit : stateUsd !== null ? `state.json result.spentUsd${rootChildCloses.length > 0 && journalWorkerUsd === 0 ? " — brain-priced only; worker CLI inference is unpriced (see worker token counts)" : ""}` : !haveJournal ? journalMissing : usdUnknownRecords > 0 ? usdUnreportedReason : "journal metered + settled usd",
|
|
391
|
-
costPerAcceptedPatchUsd: isUnavailable(totalUsd) ? unavailable(totalUsd.unavailable) : isUnavailable(decision.accepted) ? unavailable(decision.accepted.unavailable) : decision.accepted === 0 ? unavailable("no accepted worker patch (cost has no denominator)") :
|
|
425
|
+
costPerAcceptedPatchUsd: isUnavailable(totalUsd) ? unavailable(totalUsd.unavailable) : isUnavailable(decision.accepted) ? unavailable(decision.accepted.unavailable) : decision.accepted === 0 ? unavailable("no accepted worker patch (cost has no denominator)") : roundDecimal(totalUsd / decision.accepted, 6),
|
|
392
426
|
workerWallMsDistribution: wallDistribution === null ? unavailable(src.workers === null ? workersGapReason : "no worker start/finish pairs captured") : wallDistribution,
|
|
393
427
|
perWorker: src.workers === null ? unavailable(workersGapReason) : perWorker
|
|
394
428
|
};
|
|
@@ -447,98 +481,6 @@ function pickString(rec, key) {
|
|
|
447
481
|
const v = rec?.[key];
|
|
448
482
|
return typeof v === "string" ? v : null;
|
|
449
483
|
}
|
|
450
|
-
function round(v, digits) {
|
|
451
|
-
const f = 10 ** digits;
|
|
452
|
-
return Math.round(v * f) / f;
|
|
453
|
-
}
|
|
454
|
-
/** Unified-diff stats. Counts `+++ b/<path>` targets, body +/- lines, and test-file touches. */
|
|
455
|
-
function parsePatch(text) {
|
|
456
|
-
const files = /* @__PURE__ */ new Set();
|
|
457
|
-
const testFiles = /* @__PURE__ */ new Set();
|
|
458
|
-
let added = 0;
|
|
459
|
-
let removed = 0;
|
|
460
|
-
for (const line of text.split("\n")) {
|
|
461
|
-
if (line.startsWith("+++ ")) {
|
|
462
|
-
const p = line.slice(4).trim().replace(/^b\//, "");
|
|
463
|
-
if (p !== "/dev/null") {
|
|
464
|
-
files.add(p);
|
|
465
|
-
if (isTestPath(p)) testFiles.add(p);
|
|
466
|
-
}
|
|
467
|
-
continue;
|
|
468
|
-
}
|
|
469
|
-
if (line.startsWith("--- ") || line.startsWith("diff --git") || line.startsWith("index ")) continue;
|
|
470
|
-
if (line.startsWith("+")) added += 1;
|
|
471
|
-
else if (line.startsWith("-")) removed += 1;
|
|
472
|
-
}
|
|
473
|
-
return {
|
|
474
|
-
files: files.size,
|
|
475
|
-
linesAdded: added,
|
|
476
|
-
linesRemoved: removed,
|
|
477
|
-
testFilesTouched: [...testFiles].sort()
|
|
478
|
-
};
|
|
479
|
-
}
|
|
480
|
-
function isTestPath(p) {
|
|
481
|
-
const base = p.split("/").pop() ?? p;
|
|
482
|
-
return /(^|\/)(tests?|__tests__|testing|spec)(\/|$)/.test(p) || /\.(test|spec)\.[cm]?[jt]sx?$/.test(base) || /^test_.*\.py$/.test(base) || /_test\.py$/.test(base);
|
|
483
|
-
}
|
|
484
|
-
/**
|
|
485
|
-
* Aggregate many supervisor-run reports. A metric no run could measure stays
|
|
486
|
-
* `unavailable` rather than becoming a 0-valued mean, and cells whose steer
|
|
487
|
-
* count was unavailable are counted separately from cells that measured zero.
|
|
488
|
-
*/
|
|
489
|
-
function rollupSupervisorRuns(reports) {
|
|
490
|
-
const known = (vals) => vals.filter((v) => !isUnavailable(v));
|
|
491
|
-
const steerVals = known(reports.map((r) => r.orchestration.steers));
|
|
492
|
-
const waveVals = known(reports.map((r) => r.orchestration.waves));
|
|
493
|
-
const concVals = known(reports.map((r) => r.orchestration.maxConcurrency));
|
|
494
|
-
const utilVals = known(reports.map((r) => r.orchestration.workerUtilization));
|
|
495
|
-
const idleVals = known(reports.map((r) => r.orchestration.idlePct));
|
|
496
|
-
const spawnVals = known(reports.map((r) => r.orchestration.workersSpawned));
|
|
497
|
-
const acceptVals = known(reports.map((r) => r.decision.accepted));
|
|
498
|
-
const usdVals = known(reports.map((r) => r.economics.totalUsd));
|
|
499
|
-
const journalSpendVals = known(reports.map((r) => r.economics.spend.journalDerived.usd));
|
|
500
|
-
const closeSpendVals = known(reports.map((r) => r.economics.spend.closeRecord.usd));
|
|
501
|
-
const resolvedVals = known(reports.map((r) => r.outcome.judgeResolved));
|
|
502
|
-
const sum = (xs) => xs.reduce((a, b) => a + b, 0);
|
|
503
|
-
const mean = (xs) => xs.length === 0 ? unavailable("no cell reported this metric") : round(sum(xs) / xs.length, 3);
|
|
504
|
-
const perCell = reports.map((r) => ({
|
|
505
|
-
instanceId: r.instanceId,
|
|
506
|
-
arm: r.arm,
|
|
507
|
-
steers: r.orchestration.steers,
|
|
508
|
-
waves: r.orchestration.waves,
|
|
509
|
-
utilization: r.orchestration.workerUtilization,
|
|
510
|
-
idlePct: r.orchestration.idlePct,
|
|
511
|
-
resolved: r.outcome.judgeResolved,
|
|
512
|
-
usd: r.economics.totalUsd,
|
|
513
|
-
...r.economics.resourceRecords === void 0 ? {} : { resourceRecords: r.economics.resourceRecords }
|
|
514
|
-
}));
|
|
515
|
-
return {
|
|
516
|
-
schema: SUPERVISOR_RUN_ROLLUP_SCHEMA,
|
|
517
|
-
cells: reports.length,
|
|
518
|
-
steersTotal: steerVals.length === 0 ? unavailable("no cell reported a steer count") : sum(steerVals),
|
|
519
|
-
cellsWithSteers: steerVals.length === 0 ? unavailable("no cell reported a steer count") : steerVals.filter((n) => n > 0).length,
|
|
520
|
-
cellsWithUnavailableSteers: reports.filter((r) => isUnavailable(r.orchestration.steers)).length,
|
|
521
|
-
wavesMean: mean(waveVals),
|
|
522
|
-
maxConcurrencyMax: concVals.length === 0 ? unavailable("no cell reported concurrency") : Math.max(...concVals),
|
|
523
|
-
utilizationMean: mean(utilVals),
|
|
524
|
-
idlePctMean: mean(idleVals),
|
|
525
|
-
workersSpawnedTotal: spawnVals.length === 0 ? unavailable("no cell reported spawns") : sum(spawnVals),
|
|
526
|
-
acceptedTotal: acceptVals.length === 0 ? unavailable("no cell reported acceptance") : sum(acceptVals),
|
|
527
|
-
usdTotal: usdVals.length === 0 ? unavailable("no cell reported spend") : round(sum(usdVals), 6),
|
|
528
|
-
spendUsd: {
|
|
529
|
-
journalDerived: {
|
|
530
|
-
value: journalSpendVals.length === 0 ? unavailable("no cell measured journal-derived spend") : round(sum(journalSpendVals), 6),
|
|
531
|
-
runs: journalSpendVals.length
|
|
532
|
-
},
|
|
533
|
-
closeRecord: {
|
|
534
|
-
value: closeSpendVals.length === 0 ? unavailable("no cell carried a close record") : round(sum(closeSpendVals), 6),
|
|
535
|
-
runs: closeSpendVals.length
|
|
536
|
-
}
|
|
537
|
-
},
|
|
538
|
-
resolvedCount: resolvedVals.length === 0 ? unavailable("no cell reported a judge verdict") : resolvedVals.filter((v) => v === true).length,
|
|
539
|
-
perCell
|
|
540
|
-
};
|
|
541
|
-
}
|
|
542
484
|
//#endregion
|
|
543
485
|
//#region src/supervisor-run/render.ts
|
|
544
486
|
/**
|
|
@@ -602,8 +544,8 @@ function fmtMs(v) {
|
|
|
602
544
|
if (isUnavailable(v)) return `unavailable — ${v.unavailable}`;
|
|
603
545
|
if (v < 1e3) return `${v}ms`;
|
|
604
546
|
const s = v / 1e3;
|
|
605
|
-
if (s < 120) return `${
|
|
606
|
-
return `${
|
|
547
|
+
if (s < 120) return `${roundDecimal(s, 1)}s`;
|
|
548
|
+
return `${roundDecimal(s / 60, 1)}min`;
|
|
607
549
|
}
|
|
608
550
|
function renderSupervisorRunMarkdown(r) {
|
|
609
551
|
const o = r.orchestration;
|
|
@@ -767,6 +709,45 @@ function readCoordinationLog(runDir) {
|
|
|
767
709
|
return readMaybe(join(runDir, COORDINATION_FILE));
|
|
768
710
|
}
|
|
769
711
|
//#endregion
|
|
712
|
+
//#region src/supervisor-run/runtime-source-limits.ts
|
|
713
|
+
function spendRecord(value) {
|
|
714
|
+
const spend = recordOrNull(value);
|
|
715
|
+
if (spend === null) return null;
|
|
716
|
+
const tokens = recordOrNull(spend.tokens);
|
|
717
|
+
if (tokens === null || typeof tokens.input !== "number" || !Number.isFinite(tokens.input) || tokens.input < 0 || typeof tokens.output !== "number" || !Number.isFinite(tokens.output) || tokens.output < 0 || typeof spend.usd !== "number" || !Number.isFinite(spend.usd) || spend.usd < 0 || spend.usdKnown !== void 0 && typeof spend.usdKnown !== "boolean") return null;
|
|
718
|
+
return spend;
|
|
719
|
+
}
|
|
720
|
+
function sourceLimits(root, events, workerIds) {
|
|
721
|
+
const rootMeters = events.filter((event) => event.kind === "metered" && event.id === root);
|
|
722
|
+
const invalidRootMeters = rootMeters.filter((event) => spendRecord(event.spend) === null);
|
|
723
|
+
const rootMeterReason = rootMeters.length === 0 ? "Runtime journal has no root metered event" : invalidRootMeters.length > 0 ? `${invalidRootMeters.length} root metered event(s) lack complete spend` : null;
|
|
724
|
+
const closes = events.filter((event) => workerIds.has(nonEmptyString(event.id) ?? "") && (event.kind === "settled" || event.kind === "cancelled"));
|
|
725
|
+
const settledById = /* @__PURE__ */ new Map();
|
|
726
|
+
for (const event of closes) {
|
|
727
|
+
const id = nonEmptyString(event.id);
|
|
728
|
+
if (id === null) continue;
|
|
729
|
+
const matches = settledById.get(id) ?? [];
|
|
730
|
+
matches.push(event);
|
|
731
|
+
settledById.set(id, matches);
|
|
732
|
+
}
|
|
733
|
+
const incompleteWorkers = [...workerIds].filter((id) => {
|
|
734
|
+
const terminal = settledById.get(id);
|
|
735
|
+
return terminal?.length !== 1 || terminal[0]?.kind !== "settled" || spendRecord(terminal[0]?.spent) === null;
|
|
736
|
+
});
|
|
737
|
+
const missingVerdicts = [...workerIds].filter((id) => {
|
|
738
|
+
const terminal = settledById.get(id)?.[0];
|
|
739
|
+
if (terminal?.kind !== "settled") return true;
|
|
740
|
+
return typeof recordOrNull(terminal.verdict)?.valid !== "boolean";
|
|
741
|
+
});
|
|
742
|
+
return {
|
|
743
|
+
managerTokens: rootMeterReason,
|
|
744
|
+
workerTokens: incompleteWorkers.length === 0 ? null : `${incompleteWorkers.length}/${workerIds.size} child invocation(s) lack one settled spend record`,
|
|
745
|
+
spendUsd: rootMeterReason !== null ? rootMeterReason : incompleteWorkers.length > 0 ? "at least one child invocation lacks a settled spend record" : null,
|
|
746
|
+
workerVerdicts: missingVerdicts.length === 0 ? null : `${missingVerdicts.length}/${workerIds.size} child invocation(s) lack a structured validity verdict`,
|
|
747
|
+
deliverables: workerIds.size === 0 ? null : "Runtime FileRunContext does not retain per-child delivered patches"
|
|
748
|
+
};
|
|
749
|
+
}
|
|
750
|
+
//#endregion
|
|
770
751
|
//#region src/supervisor-run/runtime-reader.ts
|
|
771
752
|
/**
|
|
772
753
|
* Reader for agent-runtime's file-backed supervision context.
|
|
@@ -826,16 +807,10 @@ const RUNTIME_RUN_DIR_MARKERS = [
|
|
|
826
807
|
OBSERVER_FILE,
|
|
827
808
|
FAILURE_FILE
|
|
828
809
|
];
|
|
829
|
-
function record(value) {
|
|
830
|
-
return typeof value === "object" && value !== null && !Array.isArray(value) ? value : null;
|
|
831
|
-
}
|
|
832
|
-
function nonEmptyString(value) {
|
|
833
|
-
return typeof value === "string" && value.length > 0 ? value : null;
|
|
834
|
-
}
|
|
835
810
|
function profileDigest(event) {
|
|
836
811
|
const direct = nonEmptyString(event.profileDigest);
|
|
837
812
|
if (direct !== null) return direct;
|
|
838
|
-
const identity =
|
|
813
|
+
const identity = recordOrNull(event.identity);
|
|
839
814
|
return identity === null ? null : nonEmptyString(identity.profileDigest);
|
|
840
815
|
}
|
|
841
816
|
function formatError(path, line, detail) {
|
|
@@ -855,7 +830,7 @@ function parseEnvelopeJournal(text, path) {
|
|
|
855
830
|
} catch {
|
|
856
831
|
throw formatError(path, line, "line is not JSON");
|
|
857
832
|
}
|
|
858
|
-
const envelope =
|
|
833
|
+
const envelope = recordOrNull(parsed);
|
|
859
834
|
if (envelope === null) throw formatError(path, line, "line is not an object");
|
|
860
835
|
const kind = nonEmptyString(envelope.kind);
|
|
861
836
|
const root = nonEmptyString(envelope.root);
|
|
@@ -875,7 +850,7 @@ function parseEnvelopeJournal(text, path) {
|
|
|
875
850
|
}
|
|
876
851
|
if (kind !== "event") throw formatError(path, line, "kind must be 'begin' or 'event'");
|
|
877
852
|
if (!begun.has(root)) throw formatError(path, line, `event for tree ${JSON.stringify(root)} precedes begin`);
|
|
878
|
-
const event =
|
|
853
|
+
const event = recordOrNull(envelope.event);
|
|
879
854
|
if (event === null) throw formatError(path, line, "event must be an object");
|
|
880
855
|
if (nonEmptyString(event.kind) === null) throw formatError(path, line, "event.kind must be a non-empty string");
|
|
881
856
|
events.push({
|
|
@@ -989,47 +964,10 @@ function parseOptionalRecord(text, path) {
|
|
|
989
964
|
} catch {
|
|
990
965
|
throw new Error(`${path}: invalid JSON`);
|
|
991
966
|
}
|
|
992
|
-
const value =
|
|
967
|
+
const value = recordOrNull(parsed);
|
|
993
968
|
if (value === null) throw new Error(`${path}: expected a JSON object`);
|
|
994
969
|
return value;
|
|
995
970
|
}
|
|
996
|
-
function spendRecord(value) {
|
|
997
|
-
const spend = record(value);
|
|
998
|
-
if (spend === null) return null;
|
|
999
|
-
const tokens = record(spend.tokens);
|
|
1000
|
-
if (tokens === null || typeof tokens.input !== "number" || !Number.isFinite(tokens.input) || tokens.input < 0 || typeof tokens.output !== "number" || !Number.isFinite(tokens.output) || tokens.output < 0 || typeof spend.usd !== "number" || !Number.isFinite(spend.usd) || spend.usd < 0 || spend.usdKnown !== void 0 && typeof spend.usdKnown !== "boolean") return null;
|
|
1001
|
-
return spend;
|
|
1002
|
-
}
|
|
1003
|
-
function sourceLimits(root, events, workerIds) {
|
|
1004
|
-
const rootMeters = events.filter((event) => event.kind === "metered" && event.id === root);
|
|
1005
|
-
const invalidRootMeters = rootMeters.filter((event) => spendRecord(event.spend) === null);
|
|
1006
|
-
const rootMeterReason = rootMeters.length === 0 ? "Runtime journal has no root metered event" : invalidRootMeters.length > 0 ? `${invalidRootMeters.length} root metered event(s) lack complete spend` : null;
|
|
1007
|
-
const closes = events.filter((event) => workerIds.has(nonEmptyString(event.id) ?? "") && (event.kind === "settled" || event.kind === "cancelled"));
|
|
1008
|
-
const settledById = /* @__PURE__ */ new Map();
|
|
1009
|
-
for (const event of closes) {
|
|
1010
|
-
const id = nonEmptyString(event.id);
|
|
1011
|
-
if (id === null) continue;
|
|
1012
|
-
const matches = settledById.get(id) ?? [];
|
|
1013
|
-
matches.push(event);
|
|
1014
|
-
settledById.set(id, matches);
|
|
1015
|
-
}
|
|
1016
|
-
const incompleteWorkers = [...workerIds].filter((id) => {
|
|
1017
|
-
const terminal = settledById.get(id);
|
|
1018
|
-
return terminal?.length !== 1 || terminal[0]?.kind !== "settled" || spendRecord(terminal[0]?.spent) === null;
|
|
1019
|
-
});
|
|
1020
|
-
const missingVerdicts = [...workerIds].filter((id) => {
|
|
1021
|
-
const terminal = settledById.get(id)?.[0];
|
|
1022
|
-
if (terminal?.kind !== "settled") return true;
|
|
1023
|
-
return typeof record(terminal.verdict)?.valid !== "boolean";
|
|
1024
|
-
});
|
|
1025
|
-
return {
|
|
1026
|
-
managerTokens: rootMeterReason,
|
|
1027
|
-
workerTokens: incompleteWorkers.length === 0 ? null : `${incompleteWorkers.length}/${workerIds.size} child invocation(s) lack one settled spend record`,
|
|
1028
|
-
spendUsd: rootMeterReason !== null ? rootMeterReason : incompleteWorkers.length > 0 ? "at least one child invocation lacks a settled spend record" : null,
|
|
1029
|
-
workerVerdicts: missingVerdicts.length === 0 ? null : `${missingVerdicts.length}/${workerIds.size} child invocation(s) lack a structured validity verdict`,
|
|
1030
|
-
deliverables: workerIds.size === 0 ? null : "Runtime FileRunContext does not retain per-child delivered patches"
|
|
1031
|
-
};
|
|
1032
|
-
}
|
|
1033
971
|
/**
|
|
1034
972
|
* Refuse a `result.json` that belongs to another run. Runtime's result carries
|
|
1035
973
|
* its own `tree.root`; a settled record with a different root is a copied or
|
|
@@ -1038,7 +976,7 @@ function sourceLimits(root, events, workerIds) {
|
|
|
1038
976
|
function assertResultMatchesJournal(root, result, resultPath) {
|
|
1039
977
|
const resultKind = result === null ? null : nonEmptyString(result.kind);
|
|
1040
978
|
if (resultKind === null || result === null) return;
|
|
1041
|
-
const resultRoot = nonEmptyString(
|
|
979
|
+
const resultRoot = nonEmptyString(recordOrNull(result.tree)?.root);
|
|
1042
980
|
if (resultRoot === null) throw new Error(`${resultPath}: Runtime ${resultKind} result has no tree.root`);
|
|
1043
981
|
if (resultRoot !== root) throw new Error(`${resultPath}: root ${JSON.stringify(resultRoot)} does not match journal root ${JSON.stringify(root)}`);
|
|
1044
982
|
}
|
|
@@ -1051,7 +989,7 @@ function assertResultMatchesJournal(root, result, resultPath) {
|
|
|
1051
989
|
*/
|
|
1052
990
|
function assertFailureRecord(failure, failurePath) {
|
|
1053
991
|
if (failure === null) return;
|
|
1054
|
-
if (
|
|
992
|
+
if (recordOrNull(failure.error) === null) throw new Error(`${failurePath}: Runtime failure record has no error object`);
|
|
1055
993
|
}
|
|
1056
994
|
/**
|
|
1057
995
|
* The journal's begin stamp in the analyzer's state-document shape. It carries
|
|
@@ -1097,12 +1035,12 @@ async function receiptSessionFiles(file) {
|
|
|
1097
1035
|
} catch {
|
|
1098
1036
|
return;
|
|
1099
1037
|
}
|
|
1100
|
-
const harness =
|
|
1101
|
-
const files =
|
|
1038
|
+
const harness = recordOrNull(descriptor)?.harness;
|
|
1039
|
+
const files = recordOrNull(descriptor)?.files;
|
|
1102
1040
|
const pattern = typeof harness === "string" ? HARNESS_SESSION_FILE[harness] : void 0;
|
|
1103
1041
|
if (pattern === void 0 || !Array.isArray(files)) return void 0;
|
|
1104
1042
|
return files.filter((entry) => {
|
|
1105
|
-
const path =
|
|
1043
|
+
const path = recordOrNull(entry)?.path;
|
|
1106
1044
|
return typeof path === "string" && pattern.test(path);
|
|
1107
1045
|
}).length;
|
|
1108
1046
|
}
|
|
@@ -1160,23 +1098,23 @@ async function workspaceCapturesFromOutput(runDir, ref) {
|
|
|
1160
1098
|
addressGap = "Runtime output cannot be canonically hashed";
|
|
1161
1099
|
}
|
|
1162
1100
|
const project = (rawReceipt, receiptPointer) => {
|
|
1163
|
-
const receipt =
|
|
1101
|
+
const receipt = recordOrNull(rawReceipt);
|
|
1164
1102
|
if (receipt === null) return {
|
|
1165
1103
|
...missing(`workspaceCapture receipt is absent or malformed${addressGap === null ? "" : `; ${addressGap}`}`),
|
|
1166
1104
|
receiptPointer,
|
|
1167
1105
|
receipt: rawReceipt
|
|
1168
1106
|
};
|
|
1169
|
-
const provenance =
|
|
1107
|
+
const provenance = recordOrNull(receipt.provenance);
|
|
1170
1108
|
const attempts = Array.isArray(provenance?.attempts) ? provenance.attempts : null;
|
|
1171
1109
|
const coverageComplete = typeof receipt.coverageComplete === "boolean" ? receipt.coverageComplete : null;
|
|
1172
1110
|
const incompleteReason = typeof receipt.incompleteReason === "string" ? receipt.incompleteReason : null;
|
|
1173
1111
|
const gaps = [];
|
|
1174
1112
|
if (addressGap !== null) gaps.push(addressGap);
|
|
1175
1113
|
if (coverageComplete === null) gaps.push("workspaceCapture.coverageComplete is absent");
|
|
1176
|
-
if (
|
|
1114
|
+
if (recordOrNull(receipt.snapshot) === null) gaps.push("workspaceCapture.snapshot is absent");
|
|
1177
1115
|
if (provenance === null) gaps.push("workspaceCapture.provenance is absent");
|
|
1178
1116
|
if (attempts === null) gaps.push("workspaceCapture.provenance.attempts is absent");
|
|
1179
|
-
else if (attempts.length === 0 || attempts.some((attempt) =>
|
|
1117
|
+
else if (attempts.length === 0 || attempts.some((attempt) => recordOrNull(attempt) === null)) gaps.push("workspaceCapture.provenance.attempts is empty or malformed");
|
|
1180
1118
|
return {
|
|
1181
1119
|
outRef,
|
|
1182
1120
|
blobPath,
|
|
@@ -1188,7 +1126,7 @@ async function workspaceCapturesFromOutput(runDir, ref) {
|
|
|
1188
1126
|
projectionGap: gaps.length > 0 ? gaps.join("; ") : null
|
|
1189
1127
|
};
|
|
1190
1128
|
};
|
|
1191
|
-
const result =
|
|
1129
|
+
const result = recordOrNull(output);
|
|
1192
1130
|
const captures = [];
|
|
1193
1131
|
for (const key of Object.keys(result ?? {})) if (key === "workspaceCapture") captures.push(project(result?.[key], "/workspaceCapture"));
|
|
1194
1132
|
else if (key === "workspaceCaptures") {
|
|
@@ -1253,8 +1191,8 @@ async function nodeTranscripts(runDir, events, nodeIds, root) {
|
|
|
1253
1191
|
});
|
|
1254
1192
|
}
|
|
1255
1193
|
}
|
|
1256
|
-
if (event.kind === "execution-admitted" &&
|
|
1257
|
-
else if (event.kind === "settled" || event.kind === "cancelled" || event.kind === "reconciled") keepReceipt(entry(id),
|
|
1194
|
+
if (event.kind === "execution-admitted" && recordOrNull(event.admission)?.phase === "dispatched") entry(id).dispatched += 1;
|
|
1195
|
+
else if (event.kind === "settled" || event.kind === "cancelled" || event.kind === "reconciled") keepReceipt(entry(id), recordOrNull(event.harnessTranscript));
|
|
1258
1196
|
}
|
|
1259
1197
|
if (root !== void 0 && nodeIds.has(root.id)) keepReceipt(entry(root.id), root.receipt);
|
|
1260
1198
|
const out = /* @__PURE__ */ new Map();
|
|
@@ -1316,7 +1254,7 @@ async function nodeTranscripts(runDir, events, nodeIds, root) {
|
|
|
1316
1254
|
* instead of `?`.
|
|
1317
1255
|
*/
|
|
1318
1256
|
function recordedRunId(result, failure) {
|
|
1319
|
-
return nonEmptyString(
|
|
1257
|
+
return nonEmptyString(recordOrNull(result?.tree)?.root) ?? nonEmptyString(failure?.runId);
|
|
1320
1258
|
}
|
|
1321
1259
|
function absentRuntimeSupervisorRun(runDir, resultText, failureText, instanceId) {
|
|
1322
1260
|
const reason = `no Runtime spawn journal (${JOURNAL_FILE}) under ${runDir}`;
|
|
@@ -1381,7 +1319,7 @@ async function readRuntimeSupervisorRun(runDir, opts = {}) {
|
|
|
1381
1319
|
const workerIds = new Set(childSpawns.map((event) => nonEmptyString(event.id)).filter((id) => id !== null));
|
|
1382
1320
|
const transcripts = await nodeTranscripts(runDir, normalized.events, /* @__PURE__ */ new Set([normalized.root, ...workerIds]), {
|
|
1383
1321
|
id: normalized.root,
|
|
1384
|
-
receipt:
|
|
1322
|
+
receipt: recordOrNull(result?.rootHarnessTranscript)
|
|
1385
1323
|
});
|
|
1386
1324
|
const workers = childSpawns.map((event) => {
|
|
1387
1325
|
const workerId = nonEmptyString(event.id);
|
|
@@ -1602,9 +1540,6 @@ function parseReportArgs(argv) {
|
|
|
1602
1540
|
format
|
|
1603
1541
|
};
|
|
1604
1542
|
}
|
|
1605
|
-
function errorMessage(error) {
|
|
1606
|
-
return error instanceof Error ? error.message : String(error);
|
|
1607
|
-
}
|
|
1608
1543
|
/**
|
|
1609
1544
|
* CLI driver for `agent-eval supervisor-run`. `argv` is everything after the
|
|
1610
1545
|
* command name, so `['report', runDir, ...flags]`. Returns the process exit code.
|
|
@@ -1654,6 +1589,6 @@ async function runSupervisorRunCommand(argv, io = PROCESS_IO) {
|
|
|
1654
1589
|
}
|
|
1655
1590
|
}
|
|
1656
1591
|
//#endregion
|
|
1657
|
-
export { writeSupervisorRunReportSafe as a, runtimeSupervisorRunReader as c, renderSupervisorRunMarkdown as d, analyzeSupervisorRunSources as f, writeSupervisorRunReport as i, renderSupervisorRollupMarkdown as l,
|
|
1592
|
+
export { writeSupervisorRunReportSafe as a, runtimeSupervisorRunReader as c, renderSupervisorRunMarkdown as d, analyzeSupervisorRunSources as f, writeSupervisorRunReport as i, renderSupervisorRollupMarkdown as l, analyzeSupervisorRun as n, isRuntimeSupervisorRunDir as o, parsePatch as p, findSupervisorRunDirs as r, readRuntimeSupervisorRun as s, runSupervisorRunCommand as t, renderSupervisorRunHeadline as u };
|
|
1658
1593
|
|
|
1659
|
-
//# sourceMappingURL=report-command-
|
|
1594
|
+
//# sourceMappingURL=report-command-SC9nqb4M.js.map
|