@jinn-network/client 0.1.8 → 0.1.9-canary.144d87d2
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/README.md +6 -0
- package/dist/adapters/mech/adapter.d.ts +21 -1
- package/dist/adapters/mech/adapter.js +77 -10
- package/dist/adapters/mech/adapter.js.map +1 -1
- package/dist/adapters/mech/contracts.js +62 -28
- package/dist/adapters/mech/contracts.js.map +1 -1
- package/dist/adapters/mech/safe-revert.d.ts +4 -0
- package/dist/adapters/mech/safe-revert.js +5 -1
- package/dist/adapters/mech/safe-revert.js.map +1 -1
- package/dist/adapters/mech/safe.js +5 -1
- package/dist/adapters/mech/safe.js.map +1 -1
- package/dist/adapters/mech/verdict-code.js +1 -1
- package/dist/adapters/mech/verdict-code.js.map +1 -1
- package/dist/api/bootstrap-endpoint.d.ts +1 -0
- package/dist/api/bootstrap-endpoint.js +1 -0
- package/dist/api/bootstrap-endpoint.js.map +1 -1
- package/dist/api/discovery-endpoint.d.ts +1 -0
- package/dist/api/discovery-endpoint.js +24 -0
- package/dist/api/discovery-endpoint.js.map +1 -1
- package/dist/api/fleet-build.d.ts +1 -7
- package/dist/api/fleet-build.js +0 -7
- package/dist/api/fleet-build.js.map +1 -1
- package/dist/api/gather-status.d.ts +8 -2
- package/dist/api/gather-status.js +29 -117
- package/dist/api/gather-status.js.map +1 -1
- package/dist/api/loop-completion-build.d.ts +79 -0
- package/dist/api/loop-completion-build.js +155 -0
- package/dist/api/loop-completion-build.js.map +1 -0
- package/dist/api/operator-artifacts-endpoint.js +1 -1
- package/dist/api/operator-artifacts-endpoint.js.map +1 -1
- package/dist/api/peers.js +2 -0
- package/dist/api/peers.js.map +1 -1
- package/dist/api/setup-endpoints.d.ts +32 -0
- package/dist/api/setup-endpoints.js +94 -24
- package/dist/api/setup-endpoints.js.map +1 -1
- package/dist/api/solvernets-endpoints.js +4 -1
- package/dist/api/solvernets-endpoints.js.map +1 -1
- package/dist/api/status-build.d.ts +43 -33
- package/dist/api/status-build.js +3 -26
- package/dist/api/status-build.js.map +1 -1
- package/dist/api/status-rollup-build.d.ts +0 -4
- package/dist/api/status-rollup-build.js +0 -4
- package/dist/api/status-rollup-build.js.map +1 -1
- package/dist/api/stop-hook.d.ts +1 -1
- package/dist/api/stop-hook.js +1 -1
- package/dist/api/stop-hook.js.map +1 -1
- package/dist/build-info.json +4 -4
- package/dist/build-meta.json +1 -1
- package/dist/cli/commands/codedigest-revert-check.js +6 -2
- package/dist/cli/commands/codedigest-revert-check.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts +3 -0
- package/dist/cli/commands/doctor.js +37 -2
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/eval.d.ts +87 -0
- package/dist/cli/commands/eval.js +481 -0
- package/dist/cli/commands/eval.js.map +1 -0
- package/dist/cli/commands/rewards.d.ts +2 -0
- package/dist/cli/commands/rewards.js +30 -3
- package/dist/cli/commands/rewards.js.map +1 -1
- package/dist/cli/commands/solver-nets.js +68 -0
- package/dist/cli/commands/solver-nets.js.map +1 -1
- package/dist/cli/commands/status.js +0 -1
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/config.d.ts +102 -15
- package/dist/config.js +166 -19
- package/dist/config.js.map +1 -1
- package/dist/daemon/ai-units-gate.d.ts +6 -6
- package/dist/daemon/ai-units-gate.js +11 -10
- package/dist/daemon/ai-units-gate.js.map +1 -1
- package/dist/daemon/balance-topup-loop.js +3 -0
- package/dist/daemon/balance-topup-loop.js.map +1 -1
- package/dist/daemon/checkpoint-loop.js +2 -2
- package/dist/daemon/creator.d.ts +1 -0
- package/dist/daemon/creator.js +26 -14
- package/dist/daemon/creator.js.map +1 -1
- package/dist/daemon/daemon.d.ts +15 -0
- package/dist/daemon/daemon.js +78 -22
- package/dist/daemon/daemon.js.map +1 -1
- package/dist/daemon/eviction-loop.d.ts +7 -0
- package/dist/daemon/eviction-loop.js +19 -3
- package/dist/daemon/eviction-loop.js.map +1 -1
- package/dist/daemon/jinn-claim-loop.js +3 -0
- package/dist/daemon/jinn-claim-loop.js.map +1 -1
- package/dist/daemon/join-applier.d.ts +35 -0
- package/dist/daemon/join-applier.js +49 -0
- package/dist/daemon/join-applier.js.map +1 -0
- package/dist/daemon/loop-heartbeat.d.ts +34 -0
- package/dist/daemon/loop-heartbeat.js +39 -0
- package/dist/daemon/loop-heartbeat.js.map +1 -0
- package/dist/daemon/reward-claim-loop.js +4 -1
- package/dist/daemon/reward-claim-loop.js.map +1 -1
- package/dist/daemon/watchdog-loop.d.ts +84 -0
- package/dist/daemon/watchdog-loop.js +91 -0
- package/dist/daemon/watchdog-loop.js.map +1 -0
- package/dist/dashboard/assets/index-8tAiMbUV.css +1 -0
- package/dist/dashboard/assets/index-D6a-DfaM.js +171 -0
- package/dist/dashboard/index.html +2 -2
- package/dist/discovery/http.d.ts +17 -0
- package/dist/discovery/http.js +295 -25
- package/dist/discovery/http.js.map +1 -1
- package/dist/discovery/onchain.js +155 -1
- package/dist/discovery/onchain.js.map +1 -1
- package/dist/discovery/types.d.ts +106 -0
- package/dist/discovery/types.js +40 -0
- package/dist/discovery/types.js.map +1 -1
- package/dist/discovery/with-fallback.js +14 -0
- package/dist/discovery/with-fallback.js.map +1 -1
- package/dist/earning/bootstrap.d.ts +25 -0
- package/dist/earning/bootstrap.js +79 -28
- package/dist/earning/bootstrap.js.map +1 -1
- package/dist/earning/faucet.d.ts +1 -1
- package/dist/earning/faucet.js +2 -2
- package/dist/earning/faucet.js.map +1 -1
- package/dist/earning/safe-adapter.js +11 -0
- package/dist/earning/safe-adapter.js.map +1 -1
- package/dist/earning/stolas-claim.js +5 -5
- package/dist/earning/types.d.ts +1 -1
- package/dist/earning/types.js +1 -1
- package/dist/earning/types.js.map +1 -1
- package/dist/eval/eval-harness-run.d.ts +63 -0
- package/dist/eval/eval-harness-run.js +123 -0
- package/dist/eval/eval-harness-run.js.map +1 -0
- package/dist/eval/orchestrator.d.ts +224 -0
- package/dist/eval/orchestrator.js +250 -0
- package/dist/eval/orchestrator.js.map +1 -0
- package/dist/eval/paired.d.ts +68 -0
- package/dist/eval/paired.js +93 -0
- package/dist/eval/paired.js.map +1 -0
- package/dist/eval/resolve-slate-tasks.d.ts +35 -0
- package/dist/eval/resolve-slate-tasks.js +56 -0
- package/dist/eval/resolve-slate-tasks.js.map +1 -0
- package/dist/eval/screen-discovery.d.ts +22 -0
- package/dist/eval/screen-discovery.js +71 -0
- package/dist/eval/screen-discovery.js.map +1 -0
- package/dist/eval/screen-progress.d.ts +41 -0
- package/dist/eval/screen-progress.js +60 -0
- package/dist/eval/screen-progress.js.map +1 -0
- package/dist/eval/screen-runner.d.ts +30 -0
- package/dist/eval/screen-runner.js +289 -0
- package/dist/eval/screen-runner.js.map +1 -0
- package/dist/eval/screen.d.ts +107 -0
- package/dist/eval/screen.js +159 -0
- package/dist/eval/screen.js.map +1 -0
- package/dist/eval/slope.d.ts +29 -0
- package/dist/eval/slope.js +46 -0
- package/dist/eval/slope.js.map +1 -0
- package/dist/eval/train-sequence.d.ts +35 -0
- package/dist/eval/train-sequence.js +59 -0
- package/dist/eval/train-sequence.js.map +1 -0
- package/dist/eval/wilson.d.ts +45 -0
- package/dist/eval/wilson.js +48 -0
- package/dist/eval/wilson.js.map +1 -0
- package/dist/events/types.d.ts +1 -1
- package/dist/events/types.js +1 -1
- package/dist/events/types.js.map +1 -1
- package/dist/harnesses/engine/canonical-json.js +5 -3
- package/dist/harnesses/engine/canonical-json.js.map +1 -1
- package/dist/harnesses/engine/engine.d.ts +24 -0
- package/dist/harnesses/engine/engine.js +72 -9
- package/dist/harnesses/engine/engine.js.map +1 -1
- package/dist/harnesses/engine/packaging.js +1 -1
- package/dist/harnesses/engine/packaging.js.map +1 -1
- package/dist/harnesses/engine/persistence.d.ts +17 -0
- package/dist/harnesses/engine/persistence.js +28 -0
- package/dist/harnesses/engine/persistence.js.map +1 -1
- package/dist/harnesses/impls/claude-mcp-hyperliquid/mcp-tools.d.ts +1 -1
- package/dist/harnesses/impls/claude-mcp-hyperliquid/mcp-tools.js +1 -1
- package/dist/harnesses/impls/claude-mcp-hyperliquid/mcp-tools.js.map +1 -1
- package/dist/harnesses/impls/hermes-agent/adapter.d.ts +2 -0
- package/dist/harnesses/impls/hermes-agent/adapter.js +8 -5
- package/dist/harnesses/impls/hermes-agent/adapter.js.map +1 -1
- package/dist/harnesses/impls/hermes-agent/bootstrap.d.ts +1 -0
- package/dist/harnesses/impls/hermes-agent/bootstrap.js +6 -1
- package/dist/harnesses/impls/hermes-agent/bootstrap.js.map +1 -1
- package/dist/harnesses/impls/hermes-agent/harness.d.ts +17 -3
- package/dist/harnesses/impls/hermes-agent/harness.js +68 -5
- package/dist/harnesses/impls/hermes-agent/harness.js.map +1 -1
- package/dist/harnesses/impls/index.d.ts +2 -0
- package/dist/harnesses/impls/index.js +9 -0
- package/dist/harnesses/impls/index.js.map +1 -1
- package/dist/harnesses/impls/jinn-repo-evaluator/eval-runner.d.ts +34 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/eval-runner.js +111 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/eval-runner.js.map +1 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/evaluator.d.ts +24 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/evaluator.js +19 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/evaluator.js.map +1 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/harness.d.ts +64 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/harness.js +125 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/harness.js.map +1 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/repro.d.ts +32 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/repro.js +73 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/repro.js.map +1 -0
- package/dist/harnesses/impls/learner/adapters/claude-code.js +5 -0
- package/dist/harnesses/impls/learner/adapters/claude-code.js.map +1 -1
- package/dist/harnesses/impls/learner/harness.d.ts +17 -1
- package/dist/harnesses/impls/learner/harness.js +51 -1
- package/dist/harnesses/impls/learner/harness.js.map +1 -1
- package/dist/harnesses/impls/learner/harvest.d.ts +2 -0
- package/dist/harnesses/impls/learner/harvest.js +51 -1
- package/dist/harnesses/impls/learner/harvest.js.map +1 -1
- package/dist/harnesses/impls/learner/plugin-path.js +1 -0
- package/dist/harnesses/impls/learner/plugin-path.js.map +1 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js +3 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js.map +1 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.d.ts +2 -2
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js +3 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js.map +1 -1
- package/dist/harnesses/readiness-registry.d.ts +10 -0
- package/dist/harnesses/readiness-registry.js +13 -0
- package/dist/harnesses/readiness-registry.js.map +1 -1
- package/dist/harnesses/types.d.ts +14 -0
- package/dist/learner/revert-decision.d.ts +16 -1
- package/dist/learner/revert-decision.js +38 -18
- package/dist/learner/revert-decision.js.map +1 -1
- package/dist/learner/revert-stats.d.ts +14 -0
- package/dist/learner/revert-stats.js +42 -0
- package/dist/learner/revert-stats.js.map +1 -1
- package/dist/local-provider-url.d.ts +3 -0
- package/dist/local-provider-url.js +28 -0
- package/dist/local-provider-url.js.map +1 -0
- package/dist/main.js +94 -25
- package/dist/main.js.map +1 -1
- package/dist/mcp/operator-server.js +1 -1
- package/dist/mcp/operator-server.js.map +1 -1
- package/dist/mcp/server.js +1 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/plugins/learner/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/learner/.codex-plugin/plugin.json +1 -1
- package/dist/plugins/learner/hooks/session-start +30 -1
- package/dist/plugins/learner/skills/learn/consolidator-prompt.md +4 -0
- package/dist/preflight/deployment-readiness.d.ts +147 -0
- package/dist/preflight/deployment-readiness.js +366 -0
- package/dist/preflight/deployment-readiness.js.map +1 -0
- package/dist/preflight/pidfile-liveness.d.ts +7 -1
- package/dist/preflight/pidfile-liveness.js +14 -0
- package/dist/preflight/pidfile-liveness.js.map +1 -1
- package/dist/rpc/transport.d.ts +43 -5
- package/dist/rpc/transport.js +131 -30
- package/dist/rpc/transport.js.map +1 -1
- package/dist/scripts/swe-rebench-v2-seed-pool.json +2 -1
- package/dist/solver-nets/registry.d.ts +19 -0
- package/dist/solver-nets/registry.js +95 -66
- package/dist/solver-nets/registry.js.map +1 -1
- package/dist/solver-types/_jinn-repo-pool.d.ts +27 -0
- package/dist/solver-types/_jinn-repo-pool.js +27 -0
- package/dist/solver-types/_jinn-repo-pool.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-held-out-slate.d.ts +76 -0
- package/dist/solver-types/_swe-rebench-v2-held-out-slate.js +156 -0
- package/dist/solver-types/_swe-rebench-v2-held-out-slate.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-pool-recovery.d.ts +81 -0
- package/dist/solver-types/_swe-rebench-v2-pool-recovery.js +116 -0
- package/dist/solver-types/_swe-rebench-v2-pool-recovery.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-state.d.ts +9 -0
- package/dist/solver-types/_swe-rebench-v2-state.js +14 -0
- package/dist/solver-types/_swe-rebench-v2-state.js.map +1 -1
- package/dist/solver-types/_swe-rebench-v2-validated-pool.d.ts +30 -0
- package/dist/solver-types/_swe-rebench-v2-validated-pool.js +40 -0
- package/dist/solver-types/_swe-rebench-v2-validated-pool.js.map +1 -1
- package/dist/solver-types/index.js +2 -0
- package/dist/solver-types/index.js.map +1 -1
- package/dist/solver-types/jinn-repo-admit.d.ts +17 -0
- package/dist/solver-types/jinn-repo-admit.js +16 -0
- package/dist/solver-types/jinn-repo-admit.js.map +1 -0
- package/dist/solver-types/jinn-repo-auto.d.ts +60 -0
- package/dist/solver-types/jinn-repo-auto.js +163 -0
- package/dist/solver-types/jinn-repo-auto.js.map +1 -0
- package/dist/solver-types/jinn-repo-definition.d.ts +15 -0
- package/dist/solver-types/jinn-repo-definition.js +34 -0
- package/dist/solver-types/jinn-repo-definition.js.map +1 -0
- package/dist/solver-types/jinn-repo-extract.d.ts +16 -0
- package/dist/solver-types/jinn-repo-extract.js +32 -0
- package/dist/solver-types/jinn-repo-extract.js.map +1 -0
- package/dist/solver-types/jinn-repo.d.ts +21 -0
- package/dist/solver-types/jinn-repo.js +23 -0
- package/dist/solver-types/jinn-repo.js.map +1 -0
- package/dist/solver-types/learner-loop-test.js +1 -1
- package/dist/solver-types/learner-loop-test.js.map +1 -1
- package/dist/solver-types/slates/held-out-slate.swe-rebench-v2.v1.json +20 -0
- package/dist/solver-types/slates/held-out-slate.swe-rebench-v2.v2.json +19 -0
- package/dist/solver-types/slates/held-out-slate.swe-rebench-v2.v2.screening-report.json +628 -0
- package/dist/solver-types/solver-type.d.ts +8 -0
- package/dist/solver-types/swe-rebench-v2.d.ts +2 -0
- package/dist/solver-types/swe-rebench-v2.js +115 -10
- package/dist/solver-types/swe-rebench-v2.js.map +1 -1
- package/dist/solvernets/launched-record-dispatcher.d.ts +5 -0
- package/dist/solvernets/launched-record-dispatcher.js +8 -1
- package/dist/solvernets/launched-record-dispatcher.js.map +1 -1
- package/dist/solvernets/registry-client-erc8004.js +29 -37
- package/dist/solvernets/registry-client-erc8004.js.map +1 -1
- package/dist/solvernets/registry-client.d.ts +6 -0
- package/dist/solvernets/store.d.ts +1 -1
- package/dist/solvernets/store.js +8 -3
- package/dist/solvernets/store.js.map +1 -1
- package/dist/spend/ai-units-config.d.ts +10 -0
- package/dist/spend/ai-units-config.js +7 -1
- package/dist/spend/ai-units-config.js.map +1 -1
- package/dist/spend/ai-units.d.ts +51 -0
- package/dist/spend/ai-units.js +73 -0
- package/dist/spend/ai-units.js.map +1 -1
- package/dist/spend/record.js +12 -5
- package/dist/spend/record.js.map +1 -1
- package/dist/store/store.d.ts +91 -5
- package/dist/store/store.js +170 -7
- package/dist/store/store.js.map +1 -1
- package/dist/trajectory/harness-bundle-schema.d.ts +1 -1
- package/dist/trajectory/harness-bundle-schema.js +1 -1
- package/dist/trajectory/harness-bundle-schema.js.map +1 -1
- package/dist/trajectory/schema.d.ts +1 -1
- package/dist/trajectory/schema.js +1 -1
- package/dist/trajectory/schema.js.map +1 -1
- package/dist/trajectory/transcript-parsers/types.d.ts +1 -1
- package/dist/trajectory/transcript-parsers/types.js +1 -1
- package/dist/trajectory/transcript-parsers/types.js.map +1 -1
- package/dist/types/envelope.d.ts +1 -1
- package/dist/types/envelope.js +1 -1
- package/dist/types/envelope.js.map +1 -1
- package/dist/types/payloads/index.d.ts +1 -1
- package/dist/types/payloads/index.js +7 -1
- package/dist/types/payloads/index.js.map +1 -1
- package/dist/types/payloads/portfolio-v0.d.ts +1 -1
- package/dist/types/payloads/portfolio-v0.js +1 -1
- package/dist/types/payloads/portfolio-v0.js.map +1 -1
- package/dist/types/payloads/prediction-apy-v0.d.ts +1 -1
- package/dist/types/payloads/prediction-apy-v0.js +1 -1
- package/dist/types/payloads/prediction-apy-v0.js.map +1 -1
- package/dist/types/payloads/prediction-v0.d.ts +1 -1
- package/dist/types/payloads/prediction-v0.js +1 -1
- package/dist/types/payloads/prediction-v0.js.map +1 -1
- package/dist/types/portfolio.d.ts +1 -1
- package/dist/types/portfolio.js +1 -1
- package/dist/types/portfolio.js.map +1 -1
- package/dist/types/prediction-apy.d.ts +1 -1
- package/dist/types/prediction-apy.js +1 -1
- package/dist/types/prediction-apy.js.map +1 -1
- package/dist/types/prediction.d.ts +1 -1
- package/dist/types/prediction.js +1 -1
- package/dist/types/prediction.js.map +1 -1
- package/dist/types/session-provenance.d.ts +1 -1
- package/dist/types/session-provenance.js +1 -1
- package/dist/types/session-provenance.js.map +1 -1
- package/dist/types/task-document.d.ts +1 -1
- package/dist/types/task-document.js +1 -1
- package/dist/types/task-document.js.map +1 -1
- package/dist/types/task.d.ts +1 -1
- package/dist/types/task.js +1 -1
- package/dist/types/task.js.map +1 -1
- package/dist/types/window.d.ts +1 -1
- package/dist/types/window.js +1 -1
- package/dist/types/window.js.map +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/checkpoint.d.ts +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/checkpoint.js +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/contracts.d.ts +3 -2
- package/dist/vendor/@jinn-network/sdk/dist/contracts.js +49 -0
- package/dist/vendor/@jinn-network/sdk/dist/jinn-repo.d.ts +44 -0
- package/dist/vendor/@jinn-network/sdk/dist/jinn-repo.js +25 -0
- package/dist/vendor/@jinn-network/sdk/dist/json-schema.d.ts +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/json-schema.js +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/payloads/jinn-repo.d.ts +38 -0
- package/dist/vendor/@jinn-network/sdk/dist/payloads/jinn-repo.js +22 -0
- package/dist/vendor/@jinn-network/sdk/dist/payloads/prediction-v1.d.ts +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/payloads/prediction-v1.js +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/payloads/session-derived.d.ts +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/payloads/session-derived.js +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/payloads/swe-rebench-v2.d.ts +109 -2
- package/dist/vendor/@jinn-network/sdk/dist/payloads/swe-rebench-v2.js +26 -2
- package/dist/vendor/@jinn-network/sdk/dist/prediction-v1.d.ts +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/prediction-v1.js +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/jinn-repo.d.ts +4 -0
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/jinn-repo.js +2 -0
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.d.ts +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.js +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/swe-rebench-v2-held-out-slate.d.ts +65 -0
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/swe-rebench-v2-held-out-slate.js +123 -0
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/swe-rebench-v2.d.ts +2 -2
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/swe-rebench-v2.js +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/swe-rebench-v2.d.ts +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/swe-rebench-v2.js +1 -1
- package/dist/vendor/@jinn-network/sdk/package.json +9 -1
- package/docker-compose.yml +3 -2
- package/package.json +23 -20
- package/plugins/jinn-repo-runtime/.claude-plugin/plugin.json +5 -0
- package/plugins/jinn-repo-runtime/.codex-plugin/plugin.json +39 -0
- package/plugins/jinn-repo-runtime/README.md +27 -0
- package/plugins/jinn-repo-runtime/hooks/hooks.json +16 -0
- package/plugins/jinn-repo-runtime/hooks/session-start +73 -0
- package/plugins/jinn-repo-runtime/jinn.plugin.json +11 -0
- package/plugins/jinn-repo-runtime/skills/task/SKILL.md +92 -0
- package/plugins/learner/.claude-plugin/plugin.json +1 -1
- package/plugins/learner/.codex-plugin/plugin.json +1 -1
- package/plugins/learner/hooks/session-start +30 -1
- package/plugins/learner/skills/learn/consolidator-prompt.md +4 -0
- package/plugins/swe-rebench-v2-runtime/hooks/hooks.json +16 -0
- package/plugins/swe-rebench-v2-runtime/hooks/session-start +74 -0
- package/dist/dashboard/assets/index-CzKxvMcU.css +0 -32
- package/dist/dashboard/assets/index-yVemxHot.js +0 -351
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repo-native eval runner for the jinn-repo SolverType.
|
|
3
|
+
*
|
|
4
|
+
* Grades a candidate patch against a real merged-PR fixture, SWE-bench
|
|
5
|
+
* FAIL_TO_PASS style:
|
|
6
|
+
* 1. prepare a throwaway repro (clone @ base_commit, apply patch, overwrite
|
|
7
|
+
* gold tests) — see ./repro.ts
|
|
8
|
+
* 2. install deps in the `client/` workspace
|
|
9
|
+
* 3. run the PR's own (gold) test scoped by `task.test_cmd`
|
|
10
|
+
* 4. classify: test passed => PASS, test failed => FAIL, infra failure
|
|
11
|
+
* (clone / install / spawn) => unscorable
|
|
12
|
+
*
|
|
13
|
+
* Infra failure is NEVER coerced to FAIL: a candidate patch must not be
|
|
14
|
+
* penalised because the grader's environment broke. `unscorable` is the
|
|
15
|
+
* honest signal for "we could not grade this".
|
|
16
|
+
*
|
|
17
|
+
* cwd note: `client/` is a standalone yarn project (no root workspace), so
|
|
18
|
+
* both `yarn install` and the test command run from `<repro>/client`. The
|
|
19
|
+
* task's `test_cmd` / `test_files` paths are repo-root-relative (they start
|
|
20
|
+
* with `client/`); we strip a single leading `client/` from the test-command
|
|
21
|
+
* args so they resolve correctly from inside `client/`.
|
|
22
|
+
*/
|
|
23
|
+
import type { JinnRepoTask } from '../../../solver-types/jinn-repo.js';
|
|
24
|
+
export interface JinnRepoEvalResult {
|
|
25
|
+
passed: boolean | null;
|
|
26
|
+
unscorable: boolean;
|
|
27
|
+
logExcerpt: string;
|
|
28
|
+
}
|
|
29
|
+
export declare function runJinnRepoEval(args: {
|
|
30
|
+
task: JinnRepoTask;
|
|
31
|
+
patch: string;
|
|
32
|
+
monoRepoUrl: string;
|
|
33
|
+
goldTests: Record<string, string>;
|
|
34
|
+
}): Promise<JinnRepoEvalResult>;
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repo-native eval runner for the jinn-repo SolverType.
|
|
3
|
+
*
|
|
4
|
+
* Grades a candidate patch against a real merged-PR fixture, SWE-bench
|
|
5
|
+
* FAIL_TO_PASS style:
|
|
6
|
+
* 1. prepare a throwaway repro (clone @ base_commit, apply patch, overwrite
|
|
7
|
+
* gold tests) — see ./repro.ts
|
|
8
|
+
* 2. install deps in the `client/` workspace
|
|
9
|
+
* 3. run the PR's own (gold) test scoped by `task.test_cmd`
|
|
10
|
+
* 4. classify: test passed => PASS, test failed => FAIL, infra failure
|
|
11
|
+
* (clone / install / spawn) => unscorable
|
|
12
|
+
*
|
|
13
|
+
* Infra failure is NEVER coerced to FAIL: a candidate patch must not be
|
|
14
|
+
* penalised because the grader's environment broke. `unscorable` is the
|
|
15
|
+
* honest signal for "we could not grade this".
|
|
16
|
+
*
|
|
17
|
+
* cwd note: `client/` is a standalone yarn project (no root workspace), so
|
|
18
|
+
* both `yarn install` and the test command run from `<repro>/client`. The
|
|
19
|
+
* task's `test_cmd` / `test_files` paths are repo-root-relative (they start
|
|
20
|
+
* with `client/`); we strip a single leading `client/` from the test-command
|
|
21
|
+
* args so they resolve correctly from inside `client/`.
|
|
22
|
+
*/
|
|
23
|
+
import { join } from 'node:path';
|
|
24
|
+
import { execFile } from 'node:child_process';
|
|
25
|
+
import { promisify } from 'node:util';
|
|
26
|
+
import { prepareRepro, PatchDoesNotApplyError } from './repro.js';
|
|
27
|
+
const sh = promisify(execFile);
|
|
28
|
+
const MAX_BUFFER = 64 * 1024 * 1024;
|
|
29
|
+
const LOG_LIMIT = 4000;
|
|
30
|
+
/** Strip a single leading `client/` so a repo-root-relative arg resolves
|
|
31
|
+
* from inside the `client/` workspace. Non-path args pass through. */
|
|
32
|
+
function stripClientPrefix(arg) {
|
|
33
|
+
return arg.startsWith('client/') ? arg.slice('client/'.length) : arg;
|
|
34
|
+
}
|
|
35
|
+
export async function runJinnRepoEval(args) {
|
|
36
|
+
let repro;
|
|
37
|
+
try {
|
|
38
|
+
repro = await prepareRepro({
|
|
39
|
+
monoRepoUrl: args.monoRepoUrl,
|
|
40
|
+
baseCommit: args.task.base_commit,
|
|
41
|
+
patch: args.patch,
|
|
42
|
+
goldTestFiles: args.goldTests,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
catch (e) {
|
|
46
|
+
// A candidate patch that does not apply is a graded FAIL — the candidate
|
|
47
|
+
// produced a broken/conflicting diff (SWE-bench convention). Only true
|
|
48
|
+
// grader-infra failure (clone / fetch / checkout) is unscorable.
|
|
49
|
+
if (e instanceof PatchDoesNotApplyError) {
|
|
50
|
+
return {
|
|
51
|
+
passed: false,
|
|
52
|
+
unscorable: false,
|
|
53
|
+
logExcerpt: String(e).slice(0, LOG_LIMIT),
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
passed: null,
|
|
58
|
+
unscorable: true,
|
|
59
|
+
logExcerpt: `repro-prep-failed: ${String(e).slice(0, LOG_LIMIT)}`,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
const clientDir = join(repro.dir, 'client');
|
|
63
|
+
try {
|
|
64
|
+
// corepack is usually already enabled at the user / container level.
|
|
65
|
+
// A failure here (e.g. read-only global shim dir) must NOT block the
|
|
66
|
+
// eval — yarn install is the real gate. Swallow any corepack error.
|
|
67
|
+
try {
|
|
68
|
+
await sh('corepack', ['enable'], { cwd: clientDir });
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
// non-fatal: proceed to yarn install regardless
|
|
72
|
+
}
|
|
73
|
+
await sh('yarn', ['install', '--immutable'], { cwd: clientDir, maxBuffer: MAX_BUFFER });
|
|
74
|
+
}
|
|
75
|
+
catch (e) {
|
|
76
|
+
await repro.cleanup();
|
|
77
|
+
return {
|
|
78
|
+
passed: null,
|
|
79
|
+
unscorable: true,
|
|
80
|
+
logExcerpt: `install-failed: ${String(e).slice(0, LOG_LIMIT)}`,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
try {
|
|
84
|
+
const [bin, ...rest] = args.task.test_cmd.split(' ').map(stripClientPrefix);
|
|
85
|
+
if (!bin) {
|
|
86
|
+
await repro.cleanup();
|
|
87
|
+
return { passed: null, unscorable: true, logExcerpt: 'empty-test-cmd' };
|
|
88
|
+
}
|
|
89
|
+
await sh(bin, rest, { cwd: clientDir, maxBuffer: MAX_BUFFER });
|
|
90
|
+
return { passed: true, unscorable: false, logExcerpt: '' };
|
|
91
|
+
}
|
|
92
|
+
catch (e) {
|
|
93
|
+
// A *numeric* exit code means the test command ran and exited non-zero —
|
|
94
|
+
// a real FAIL (the gold test did not pass under this patch). A non-numeric
|
|
95
|
+
// `code` (e.g. ENOENT when the runner binary is missing) is a spawn-level
|
|
96
|
+
// infra failure and must be unscorable, not coerced to FAIL.
|
|
97
|
+
const out = `${e?.stdout ?? ''}\n${e?.stderr ?? ''}`.slice(0, LOG_LIMIT);
|
|
98
|
+
if (typeof e?.code === 'number') {
|
|
99
|
+
return { passed: false, unscorable: false, logExcerpt: out };
|
|
100
|
+
}
|
|
101
|
+
return {
|
|
102
|
+
passed: null,
|
|
103
|
+
unscorable: true,
|
|
104
|
+
logExcerpt: `test-spawn-failed: ${String(e?.code ?? e).slice(0, LOG_LIMIT)}\n${out}`,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
finally {
|
|
108
|
+
await repro.cleanup();
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=eval-runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eval-runner.js","sourceRoot":"","sources":["../../../../src/harnesses/impls/jinn-repo-evaluator/eval-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type JinnRepoEvalResult } from './eval-runner.js';
|
|
2
|
+
import type { JinnRepoTask } from '../../../solver-types/jinn-repo.js';
|
|
3
|
+
import type { JinnRepoPoolItem } from '../../../solver-types/_jinn-repo-pool.js';
|
|
4
|
+
type RunFn = (args: {
|
|
5
|
+
task: JinnRepoTask;
|
|
6
|
+
patch: string;
|
|
7
|
+
monoRepoUrl: string;
|
|
8
|
+
goldTests: Record<string, string>;
|
|
9
|
+
}) => Promise<JinnRepoEvalResult>;
|
|
10
|
+
export declare class JinnRepoEvaluator {
|
|
11
|
+
private readonly run;
|
|
12
|
+
private readonly monoRepoUrl;
|
|
13
|
+
constructor(opts?: {
|
|
14
|
+
run?: RunFn;
|
|
15
|
+
monoRepoUrl?: string;
|
|
16
|
+
});
|
|
17
|
+
grade(args: {
|
|
18
|
+
task: JinnRepoPoolItem;
|
|
19
|
+
solution: {
|
|
20
|
+
patch: string;
|
|
21
|
+
};
|
|
22
|
+
}): Promise<JinnRepoEvalResult>;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { runJinnRepoEval } from './eval-runner.js';
|
|
2
|
+
export class JinnRepoEvaluator {
|
|
3
|
+
run;
|
|
4
|
+
monoRepoUrl;
|
|
5
|
+
constructor(opts) {
|
|
6
|
+
this.run = opts?.run ?? runJinnRepoEval;
|
|
7
|
+
// Resolution order: explicit opt > JINN_MONO_REPO_URL env > GitHub https.
|
|
8
|
+
// The env override lets the evaluator clone from a fast local `file://`
|
|
9
|
+
// checkout in tests/e2e while production defaults to the public GitHub URL.
|
|
10
|
+
this.monoRepoUrl =
|
|
11
|
+
opts?.monoRepoUrl ??
|
|
12
|
+
process.env['JINN_MONO_REPO_URL'] ??
|
|
13
|
+
'https://github.com/Jinn-Network/mono.git';
|
|
14
|
+
}
|
|
15
|
+
async grade(args) {
|
|
16
|
+
return this.run({ task: args.task, patch: args.solution.patch, monoRepoUrl: this.monoRepoUrl, goldTests: args.task.gold_tests });
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=evaluator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evaluator.js","sourceRoot":"","sources":["../../../../src/harnesses/impls/jinn-repo-evaluator/evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA2B,MAAM,kBAAkB,CAAC;AAM5E,MAAM,OAAO,iBAAiB;IACX,GAAG,CAAQ;IACX,WAAW,CAAS;IACrC,YAAY,IAA4C;QACtD,IAAI,CAAC,GAAG,GAAG,IAAI,EAAE,GAAG,IAAI,eAAe,CAAC;QACxC,0EAA0E;QAC1E,wEAAwE;QACxE,4EAA4E;QAC5E,IAAI,CAAC,WAAW;YACd,IAAI,EAAE,WAAW;gBACjB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;gBACjC,0CAA0C,CAAC;IAC/C,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,IAA6D;QACvE,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACnI,CAAC;CACF"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* jinn-repo Evaluator Harness — wraps the {@link JinnRepoEvaluator} grading
|
|
3
|
+
* library as a first-class {@link Harness} so the daemon dispatches
|
|
4
|
+
* `jinn-repo.v1` evaluation tasks to it.
|
|
5
|
+
*
|
|
6
|
+
* Mirrors {@link SweRebenchV2EvaluatorHarness} but needs no Docker: grading is
|
|
7
|
+
* a repo-native git clone + `yarn install` + scoped test run (see
|
|
8
|
+
* `./eval-runner.ts`). Readiness is therefore just "not a stub" — git + the
|
|
9
|
+
* local pool are assumed present in any real daemon checkout.
|
|
10
|
+
*
|
|
11
|
+
* Spec: docs/superpowers/specs/2026-05-06-agent-harness-solvernet-design.md §3.4
|
|
12
|
+
*/
|
|
13
|
+
import type { Harness, HarnessContext, ReadyStatus, Solution } from '../../types.js';
|
|
14
|
+
import type { Task } from '../../../types/task.js';
|
|
15
|
+
import { type JinnRepoPoolItem } from '../../../solver-types/_jinn-repo-pool.js';
|
|
16
|
+
import type { JinnRepoEvalResult } from './eval-runner.js';
|
|
17
|
+
type GradeFn = (args: {
|
|
18
|
+
task: JinnRepoPoolItem;
|
|
19
|
+
solution: {
|
|
20
|
+
patch: string;
|
|
21
|
+
};
|
|
22
|
+
}) => Promise<JinnRepoEvalResult>;
|
|
23
|
+
export interface JinnRepoEvaluatorHarnessOptions {
|
|
24
|
+
/** Marks a stub registry — `isReady()` reports requires-live-daemon. */
|
|
25
|
+
stub?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Per-impl state directory (e.g.
|
|
28
|
+
* `~/.jinn-client/engine/impl-state/jinn-repo-evaluator`). Unused by the
|
|
29
|
+
* grading path today (the evaluator clones into a throwaway temp dir), but
|
|
30
|
+
* carried for parity with the swe-rebench harness and future caching.
|
|
31
|
+
*/
|
|
32
|
+
implStateDir?: string;
|
|
33
|
+
/**
|
|
34
|
+
* Pool loader override (test injection). Defaults to {@link loadJinnRepoPool}.
|
|
35
|
+
*/
|
|
36
|
+
loadPool?: () => JinnRepoPoolItem[];
|
|
37
|
+
/**
|
|
38
|
+
* Grade-fn override (test injection). Defaults to a fresh
|
|
39
|
+
* {@link JinnRepoEvaluator}'s `grade`.
|
|
40
|
+
*/
|
|
41
|
+
grade?: GradeFn;
|
|
42
|
+
}
|
|
43
|
+
export declare class JinnRepoEvaluatorHarness implements Harness {
|
|
44
|
+
readonly name = "jinn-repo-evaluator";
|
|
45
|
+
readonly version = "1.0.0";
|
|
46
|
+
private readonly stub;
|
|
47
|
+
private readonly implStateDir;
|
|
48
|
+
private readonly loadPool;
|
|
49
|
+
private readonly grade;
|
|
50
|
+
constructor(opts?: JinnRepoEvaluatorHarnessOptions);
|
|
51
|
+
supports(ctx: {
|
|
52
|
+
solverType: string;
|
|
53
|
+
role?: 'restoration' | 'evaluation';
|
|
54
|
+
}): boolean;
|
|
55
|
+
canAttempt(task: Task): Promise<{
|
|
56
|
+
ok: true;
|
|
57
|
+
} | {
|
|
58
|
+
ok: false;
|
|
59
|
+
reason: string;
|
|
60
|
+
}>;
|
|
61
|
+
isReady(): Promise<ReadyStatus>;
|
|
62
|
+
run(ctx: HarnessContext): Promise<Solution>;
|
|
63
|
+
}
|
|
64
|
+
export {};
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* jinn-repo Evaluator Harness — wraps the {@link JinnRepoEvaluator} grading
|
|
3
|
+
* library as a first-class {@link Harness} so the daemon dispatches
|
|
4
|
+
* `jinn-repo.v1` evaluation tasks to it.
|
|
5
|
+
*
|
|
6
|
+
* Mirrors {@link SweRebenchV2EvaluatorHarness} but needs no Docker: grading is
|
|
7
|
+
* a repo-native git clone + `yarn install` + scoped test run (see
|
|
8
|
+
* `./eval-runner.ts`). Readiness is therefore just "not a stub" — git + the
|
|
9
|
+
* local pool are assumed present in any real daemon checkout.
|
|
10
|
+
*
|
|
11
|
+
* Spec: docs/superpowers/specs/2026-05-06-agent-harness-solvernet-design.md §3.4
|
|
12
|
+
*/
|
|
13
|
+
import { writeFile } from 'node:fs/promises';
|
|
14
|
+
import { join } from 'node:path';
|
|
15
|
+
import { JinnRepoSolutionPayloadSchema, } from '../../../vendor/@jinn-network/sdk/dist/solvernets/jinn-repo.js';
|
|
16
|
+
import { REQUIRES_LIVE_DAEMON_READINESS, SkippableError } from '../../types.js';
|
|
17
|
+
import { SignedEnvelopeSchema, normalizeEnvelopeRole } from '../../../types/envelope.js';
|
|
18
|
+
import { loadJinnRepoPool, } from '../../../solver-types/_jinn-repo-pool.js';
|
|
19
|
+
import { JinnRepoEvaluator } from './evaluator.js';
|
|
20
|
+
export class JinnRepoEvaluatorHarness {
|
|
21
|
+
name = 'jinn-repo-evaluator';
|
|
22
|
+
version = '1.0.0';
|
|
23
|
+
stub;
|
|
24
|
+
implStateDir;
|
|
25
|
+
loadPool;
|
|
26
|
+
grade;
|
|
27
|
+
constructor(opts = {}) {
|
|
28
|
+
this.stub = opts.stub ?? false;
|
|
29
|
+
this.implStateDir = opts.implStateDir;
|
|
30
|
+
this.loadPool = opts.loadPool ?? (() => loadJinnRepoPool());
|
|
31
|
+
this.grade = opts.grade ?? ((args) => new JinnRepoEvaluator().grade(args));
|
|
32
|
+
}
|
|
33
|
+
supports(ctx) {
|
|
34
|
+
return ctx.solverType === 'jinn-repo.v1' && ctx.role === 'evaluation';
|
|
35
|
+
}
|
|
36
|
+
async canAttempt(task) {
|
|
37
|
+
if (task.solverType !== 'jinn-repo.v1') {
|
|
38
|
+
return { ok: false, reason: 'solverType is not jinn-repo.v1' };
|
|
39
|
+
}
|
|
40
|
+
if (task.role !== 'evaluation') {
|
|
41
|
+
return { ok: false, reason: 'role is not evaluation' };
|
|
42
|
+
}
|
|
43
|
+
if (typeof task.context?.['restorationResult'] !== 'string') {
|
|
44
|
+
return { ok: false, reason: 'context.restorationResult required' };
|
|
45
|
+
}
|
|
46
|
+
return { ok: true };
|
|
47
|
+
}
|
|
48
|
+
async isReady() {
|
|
49
|
+
if (this.stub)
|
|
50
|
+
return { ...REQUIRES_LIVE_DAEMON_READINESS };
|
|
51
|
+
// No Docker, no enable marker: the repo-native evaluator only needs git +
|
|
52
|
+
// the bundled pool, both present in any real daemon. Always ready when live.
|
|
53
|
+
return { ready: true };
|
|
54
|
+
}
|
|
55
|
+
async run(ctx) {
|
|
56
|
+
if (this.stub) {
|
|
57
|
+
throw new Error('jinn-repo-evaluator: stub registry cannot run evaluation (requires live daemon)');
|
|
58
|
+
}
|
|
59
|
+
// Read instance_id from the evaluation task spec (the leak-controlled
|
|
60
|
+
// solverView). The full pool item — including gold tests — is resolved
|
|
61
|
+
// locally, never sent over the wire.
|
|
62
|
+
const instanceId = ctx.task.spec?.['instance_id'];
|
|
63
|
+
if (typeof instanceId !== 'string' || instanceId.length === 0) {
|
|
64
|
+
throw new Error('jinn-repo-evaluator: task spec missing instance_id');
|
|
65
|
+
}
|
|
66
|
+
// Parse the solver's solution envelope and pull out the candidate patch.
|
|
67
|
+
// Mirrors the swe-rebench harness: context.restorationResult is the signed
|
|
68
|
+
// solution envelope JSON; assert solverType + solution role, then validate
|
|
69
|
+
// the typed payload.
|
|
70
|
+
const manifestJson = ctx.task.context['restorationResult'];
|
|
71
|
+
const envelope = SignedEnvelopeSchema.parse(JSON.parse(manifestJson));
|
|
72
|
+
if (envelope.solverType !== 'jinn-repo.v1' ||
|
|
73
|
+
normalizeEnvelopeRole(envelope.role) !== 'solution') {
|
|
74
|
+
throw new Error(`jinn-repo-evaluator: expected jinn-repo.v1/solution envelope, got ${envelope.solverType}/${envelope.role}`);
|
|
75
|
+
}
|
|
76
|
+
const solutionPayload = JinnRepoSolutionPayloadSchema.parse(envelope.payload);
|
|
77
|
+
// Resolve the full pool item (gold tests + base commit) for this instance.
|
|
78
|
+
// A missing instance must NOT silently pass — emit no verdict (SkippableError)
|
|
79
|
+
// so the orchestrator records a skip rather than a bogus FAIL.
|
|
80
|
+
const poolItem = this.loadPool().find((p) => p.instance_id === instanceId);
|
|
81
|
+
if (!poolItem) {
|
|
82
|
+
throw new SkippableError('instance_not_in_pool', `jinn-repo-evaluator: ${instanceId} is not present in the local pool`);
|
|
83
|
+
}
|
|
84
|
+
const result = await this.grade({ task: poolItem, solution: { patch: solutionPayload.patch } });
|
|
85
|
+
// An unscorable run (clone/install/spawn failure, or a patch that did not
|
|
86
|
+
// apply) carries no signal about the solver. Mirror swe-rebench's
|
|
87
|
+
// EvalCouldNotGradeError → SkippableError: emit no verdict so the engine
|
|
88
|
+
// records a skip. NEVER coerce unscorable → passed:false.
|
|
89
|
+
if (result.unscorable || result.passed === null) {
|
|
90
|
+
throw new SkippableError('eval_unscorable', `jinn-repo-evaluator: could not grade ${instanceId}${result.logExcerpt ? `\n${result.logExcerpt}` : ''}`);
|
|
91
|
+
}
|
|
92
|
+
const verdictPayload = {
|
|
93
|
+
schemaVersion: 'jinn-repo-verdict.v1',
|
|
94
|
+
passed: result.passed === true,
|
|
95
|
+
test_log_excerpt: result.logExcerpt,
|
|
96
|
+
};
|
|
97
|
+
await writeFile(join(ctx.workingDir, 'jinn-repo-verdict.json'), `${JSON.stringify(verdictPayload, null, 2)}\n`, 'utf8');
|
|
98
|
+
// Derive the engine-facing `verdict` from `passed`. The engine's
|
|
99
|
+
// reputation-feedback hook (and `verdictCodeForTask`) keys on
|
|
100
|
+
// `gating.verdict` — mirror the swe-rebench harness (jinn-mono-uy6v.10).
|
|
101
|
+
const verdict = verdictPayload.passed ? 'PASS' : 'FAIL';
|
|
102
|
+
return {
|
|
103
|
+
venueRef: { name: 'jinn-repo' },
|
|
104
|
+
gating: {
|
|
105
|
+
passed: verdictPayload.passed,
|
|
106
|
+
verdict,
|
|
107
|
+
},
|
|
108
|
+
informational: {
|
|
109
|
+
instance_id: instanceId,
|
|
110
|
+
},
|
|
111
|
+
verdictPayload: verdictPayload,
|
|
112
|
+
artifacts: [
|
|
113
|
+
{
|
|
114
|
+
path: 'jinn-repo-verdict.json',
|
|
115
|
+
artifactType: 'jinn_repo_verdict',
|
|
116
|
+
metadata: {
|
|
117
|
+
passed: verdictPayload.passed,
|
|
118
|
+
},
|
|
119
|
+
access: { priceUsdc: '0' },
|
|
120
|
+
},
|
|
121
|
+
],
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=harness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"harness.js","sourceRoot":"","sources":["../../../../src/harnesses/impls/jinn-repo-evaluator/harness.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repo-native repro for the jinn-repo SolverType.
|
|
3
|
+
*
|
|
4
|
+
* Clones Jinn-Network/mono at a task's `base_commit` into a throwaway dir,
|
|
5
|
+
* applies a candidate patch, and overwrites the PR's gold test files. The
|
|
6
|
+
* caller (eval-runner) then installs deps and runs the targeted test to
|
|
7
|
+
* grade the patch (SWE-bench FAIL_TO_PASS pattern).
|
|
8
|
+
*
|
|
9
|
+
* Deliberately does NOT install or run anything — that is the eval-runner's
|
|
10
|
+
* job, so it can classify install failure as `unscorable` separately from a
|
|
11
|
+
* test failure (FAIL).
|
|
12
|
+
*/
|
|
13
|
+
export interface PreparedRepro {
|
|
14
|
+
dir: string;
|
|
15
|
+
cleanup: () => Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Thrown when the *candidate* patch fails to apply to a clean base_commit
|
|
19
|
+
* checkout. This is a property of the candidate (a bad / conflicting patch),
|
|
20
|
+
* NOT a grader-infra failure — so the eval-runner scores it FAIL, not
|
|
21
|
+
* unscorable. (Reserve `unscorable` for clone / fetch / install / test-spawn
|
|
22
|
+
* failures, which are the grader's environment breaking.)
|
|
23
|
+
*/
|
|
24
|
+
export declare class PatchDoesNotApplyError extends Error {
|
|
25
|
+
constructor(message: string);
|
|
26
|
+
}
|
|
27
|
+
export declare function prepareRepro(args: {
|
|
28
|
+
monoRepoUrl: string;
|
|
29
|
+
baseCommit: string;
|
|
30
|
+
patch: string;
|
|
31
|
+
goldTestFiles: Record<string, string>;
|
|
32
|
+
}): Promise<PreparedRepro>;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repo-native repro for the jinn-repo SolverType.
|
|
3
|
+
*
|
|
4
|
+
* Clones Jinn-Network/mono at a task's `base_commit` into a throwaway dir,
|
|
5
|
+
* applies a candidate patch, and overwrites the PR's gold test files. The
|
|
6
|
+
* caller (eval-runner) then installs deps and runs the targeted test to
|
|
7
|
+
* grade the patch (SWE-bench FAIL_TO_PASS pattern).
|
|
8
|
+
*
|
|
9
|
+
* Deliberately does NOT install or run anything — that is the eval-runner's
|
|
10
|
+
* job, so it can classify install failure as `unscorable` separately from a
|
|
11
|
+
* test failure (FAIL).
|
|
12
|
+
*/
|
|
13
|
+
import { mkdtemp, mkdir, rm, writeFile } from 'node:fs/promises';
|
|
14
|
+
import { tmpdir } from 'node:os';
|
|
15
|
+
import { dirname, join } from 'node:path';
|
|
16
|
+
import { execFile } from 'node:child_process';
|
|
17
|
+
import { promisify } from 'node:util';
|
|
18
|
+
const sh = promisify(execFile);
|
|
19
|
+
/**
|
|
20
|
+
* Thrown when the *candidate* patch fails to apply to a clean base_commit
|
|
21
|
+
* checkout. This is a property of the candidate (a bad / conflicting patch),
|
|
22
|
+
* NOT a grader-infra failure — so the eval-runner scores it FAIL, not
|
|
23
|
+
* unscorable. (Reserve `unscorable` for clone / fetch / install / test-spawn
|
|
24
|
+
* failures, which are the grader's environment breaking.)
|
|
25
|
+
*/
|
|
26
|
+
export class PatchDoesNotApplyError extends Error {
|
|
27
|
+
constructor(message) {
|
|
28
|
+
super(message);
|
|
29
|
+
this.name = 'PatchDoesNotApplyError';
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export async function prepareRepro(args) {
|
|
33
|
+
const dir = await mkdtemp(join(tmpdir(), 'jinn-repo-eval-'));
|
|
34
|
+
const cleanup = () => rm(dir, { recursive: true, force: true });
|
|
35
|
+
try {
|
|
36
|
+
// Shallow single-commit fetch keeps the clone tractable even though the
|
|
37
|
+
// mono history is large. Works against both https and file:// remotes.
|
|
38
|
+
await sh('git', ['init', '-q', dir]);
|
|
39
|
+
await sh('git', ['-C', dir, 'remote', 'add', 'origin', args.monoRepoUrl]);
|
|
40
|
+
await sh('git', ['-C', dir, 'fetch', '-q', '--depth', '1', 'origin', args.baseCommit]);
|
|
41
|
+
await sh('git', ['-C', dir, 'checkout', '-q', args.baseCommit]);
|
|
42
|
+
// Apply the candidate patch (skip when empty — an empty patch is a valid
|
|
43
|
+
// "no-op" candidate that must still be graded, and `git apply` errors on
|
|
44
|
+
// empty input).
|
|
45
|
+
if (args.patch.trim().length > 0) {
|
|
46
|
+
const patchPath = join(dir, '.candidate.patch');
|
|
47
|
+
await writeFile(patchPath, args.patch);
|
|
48
|
+
try {
|
|
49
|
+
await sh('git', ['-C', dir, 'apply', '--3way', patchPath]);
|
|
50
|
+
}
|
|
51
|
+
catch (e) {
|
|
52
|
+
// A candidate patch that does not apply is a FAIL, not infra breakage.
|
|
53
|
+
// Surface a typed error so the eval-runner classifies it as a graded
|
|
54
|
+
// FAIL rather than silently skipping it (unscorable → no verdict).
|
|
55
|
+
const detail = String(e?.stderr ?? e).slice(0, 2000);
|
|
56
|
+
throw new PatchDoesNotApplyError(`candidate patch does not apply: ${detail}`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
// Overwrite the gold tests last so a candidate patch can never weaken
|
|
60
|
+
// them. relpath is from the repo root (e.g. client/test/...).
|
|
61
|
+
for (const [rel, contents] of Object.entries(args.goldTestFiles)) {
|
|
62
|
+
const dest = join(dir, rel);
|
|
63
|
+
await mkdir(dirname(dest), { recursive: true });
|
|
64
|
+
await writeFile(dest, contents);
|
|
65
|
+
}
|
|
66
|
+
return { dir, cleanup };
|
|
67
|
+
}
|
|
68
|
+
catch (e) {
|
|
69
|
+
await cleanup();
|
|
70
|
+
throw e;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=repro.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repro.js","sourceRoot":"","sources":["../../../../src/harnesses/impls/jinn-repo-evaluator/repro.ts"],"names":[],"mappings":"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"}
|
|
@@ -172,6 +172,11 @@ export class ClaudeCodeHarnessAdapter {
|
|
|
172
172
|
}
|
|
173
173
|
const env = buildAgentEnv({
|
|
174
174
|
IMPL_STATE_DIR: inputs.implStateDir,
|
|
175
|
+
// Mode reaches the SessionStart hook so its steer is mode-aware: in `train`
|
|
176
|
+
// it steers the full learn loop (persist lessons); in `frozen` it must NOT
|
|
177
|
+
// (any implStateDir write trips the freeze-fence → the held-out eval aborts).
|
|
178
|
+
// Default 'train' (the daemon's normal restoration path).
|
|
179
|
+
JINN_HARNESS_MODE: inputs.mode ?? 'train',
|
|
175
180
|
WORKING_DIR: inputs.workingDir,
|
|
176
181
|
JINN_WORKING_DIR: inputs.workingDir,
|
|
177
182
|
JINN_CLAUDE_CODE_LEARNER_PLUGIN_ROOT: pluginRoot,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../../../../src/harnesses/impls/learner/adapters/claude-code.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../../../../src/harnesses/impls/learner/adapters/claude-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Harness, HarnessContext, ReadyStatus, Solution } from '../../types.js';
|
|
1
|
+
import type { Harness, HarnessContext, ReadyStatus, RuntimePlugin, Solution } from '../../types.js';
|
|
2
2
|
import type { Task } from '../../../types/task.js';
|
|
3
3
|
import type { LearnerHarnessConfig } from './types.js';
|
|
4
4
|
/**
|
|
@@ -27,7 +27,23 @@ export declare class LearnerHarness implements Harness {
|
|
|
27
27
|
private readonly codexPath;
|
|
28
28
|
private readonly codexDoctorTimeoutMs;
|
|
29
29
|
private readonly runtimeMode;
|
|
30
|
+
/** Memoized #1035 attribution descriptors (built lazily on first request). */
|
|
31
|
+
private attributionPluginsCache;
|
|
30
32
|
constructor(config: LearnerHarnessConfig);
|
|
33
|
+
/**
|
|
34
|
+
* #1035 — advertise the bundled learner plugin for envelope attribution so it
|
|
35
|
+
* lands in the envelope's executor.plugins like any SolverNet runtime plugin.
|
|
36
|
+
*
|
|
37
|
+
* Built lazily and memoized: the directory digest is stable per run, but the
|
|
38
|
+
* plugin root may legitimately lack a manifest in non-production contexts
|
|
39
|
+
* (unit tests pass synthetic roots), so we degrade to an empty array rather
|
|
40
|
+
* than failing the run. We do NOT use resolveSolverPlugin/
|
|
41
|
+
* loadSolverPluginManifest here: the learner manifest
|
|
42
|
+
* (.claude-plugin/plugin.json) has only name+version and no jinn.supports, so
|
|
43
|
+
* the SolverPlugin validator would reject it. Read name+version directly.
|
|
44
|
+
*/
|
|
45
|
+
attributionPlugins(): RuntimePlugin[];
|
|
46
|
+
private buildAttributionPlugin;
|
|
31
47
|
private readonly claudeIsReady;
|
|
32
48
|
/**
|
|
33
49
|
* Readiness probe.
|