@jinn-network/client 0.1.6 → 0.1.7-canary.17a8ecb8
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 +33 -0
- package/README.md +67 -1
- package/deployments/deployment-jinn-mvi-l1-sepolia-fast.json +23 -4
- package/deployments/deployment-jinn-mvi-l1-sepolia.json +23 -4
- package/deployments/deployment-jinn-mvi-l2-baseSepolia.json +5 -4
- package/dist/adapters/mech/adapter.d.ts +38 -1
- package/dist/adapters/mech/adapter.js +268 -57
- package/dist/adapters/mech/adapter.js.map +1 -1
- package/dist/adapters/mech/contracts.d.ts +17 -4
- package/dist/adapters/mech/contracts.js +8 -2
- package/dist/adapters/mech/contracts.js.map +1 -1
- package/dist/adapters/mech/safe-revert.d.ts +20 -0
- package/dist/adapters/mech/safe-revert.js +12 -4
- package/dist/adapters/mech/safe-revert.js.map +1 -1
- package/dist/adapters/mech/safe.d.ts +6 -2
- package/dist/adapters/mech/safe.js +32 -11
- package/dist/adapters/mech/safe.js.map +1 -1
- package/dist/adapters/mech/types.d.ts +6 -1
- package/dist/adapters/mech/types.js.map +1 -1
- package/dist/adapters/mech/verdict-code.d.ts +1 -0
- package/dist/adapters/mech/verdict-code.js +18 -0
- package/dist/adapters/mech/verdict-code.js.map +1 -1
- package/dist/api/activity-events-endpoint.d.ts +14 -0
- package/dist/api/activity-events-endpoint.js +59 -0
- package/dist/api/activity-events-endpoint.js.map +1 -0
- package/dist/api/admin-endpoint.d.ts +15 -3
- package/dist/api/admin-endpoint.js +24 -2
- package/dist/api/admin-endpoint.js.map +1 -1
- package/dist/api/bootstrap-endpoint.d.ts +1 -2
- package/dist/api/bootstrap-endpoint.js +49 -1
- package/dist/api/bootstrap-endpoint.js.map +1 -1
- package/dist/api/codex-doctor-endpoint.d.ts +73 -0
- package/dist/api/codex-doctor-endpoint.js +177 -0
- package/dist/api/codex-doctor-endpoint.js.map +1 -0
- package/dist/api/discovery-endpoint.d.ts +1 -0
- package/dist/api/discovery-endpoint.js +26 -0
- package/dist/api/discovery-endpoint.js.map +1 -1
- package/dist/api/fleet-build.d.ts +1 -0
- package/dist/api/fleet-build.js +2 -1
- package/dist/api/fleet-build.js.map +1 -1
- package/dist/api/gather-status.d.ts +14 -0
- package/dist/api/gather-status.js +494 -19
- package/dist/api/gather-status.js.map +1 -1
- package/dist/api/hermes-doctor-endpoint.d.ts +117 -0
- package/dist/api/hermes-doctor-endpoint.js +229 -23
- package/dist/api/hermes-doctor-endpoint.js.map +1 -1
- package/dist/api/launcher-status.d.ts +22 -17
- package/dist/api/launcher-status.js +13 -11
- package/dist/api/launcher-status.js.map +1 -1
- package/dist/api/launcher-tasks.d.ts +1 -1
- package/dist/api/launcher-tasks.js +12 -8
- package/dist/api/launcher-tasks.js.map +1 -1
- package/dist/api/portfolio-v0-build.d.ts +10 -0
- package/dist/api/portfolio-v0-build.js +24 -5
- package/dist/api/portfolio-v0-build.js.map +1 -1
- package/dist/api/prediction-v1-build.d.ts +10 -0
- package/dist/api/prediction-v1-build.js +7 -1
- package/dist/api/prediction-v1-build.js.map +1 -1
- package/dist/api/server.d.ts +31 -1
- package/dist/api/server.js +72 -1
- package/dist/api/server.js.map +1 -1
- package/dist/api/setup-endpoints.d.ts +16 -0
- package/dist/api/setup-endpoints.js +89 -135
- package/dist/api/setup-endpoints.js.map +1 -1
- package/dist/api/setup-retry-endpoint.d.ts +19 -0
- package/dist/api/setup-retry-endpoint.js +32 -0
- package/dist/api/setup-retry-endpoint.js.map +1 -0
- package/dist/api/solvernets-endpoints.d.ts +8 -0
- package/dist/api/solvernets-endpoints.js +71 -43
- package/dist/api/solvernets-endpoints.js.map +1 -1
- package/dist/api/status-build.d.ts +112 -0
- package/dist/api/status-build.js +98 -18
- package/dist/api/status-build.js.map +1 -1
- package/dist/api/task-run-routing.d.ts +7 -0
- package/dist/api/task-run-routing.js +12 -0
- package/dist/api/task-run-routing.js.map +1 -0
- package/dist/api/task-runs-build.d.ts +21 -0
- package/dist/api/task-runs-build.js +14 -1
- package/dist/api/task-runs-build.js.map +1 -1
- package/dist/build-info.json +4 -4
- package/dist/build-meta.json +1 -1
- package/dist/chain-read-errors.d.ts +10 -0
- package/dist/chain-read-errors.js +15 -0
- package/dist/chain-read-errors.js.map +1 -1
- package/dist/cli/commands/auth.js +1 -1
- package/dist/cli/commands/auth.js.map +1 -1
- package/dist/cli/commands/create.js +3 -2
- package/dist/cli/commands/create.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts +2 -0
- package/dist/cli/commands/doctor.js +2 -0
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/rewards.js +11 -7
- package/dist/cli/commands/rewards.js.map +1 -1
- package/dist/cli/commands/solver-nets.js +101 -15
- package/dist/cli/commands/solver-nets.js.map +1 -1
- package/dist/cli/commands/solver-plugins-block.d.ts +33 -0
- package/dist/cli/commands/solver-plugins-block.js +118 -0
- package/dist/cli/commands/solver-plugins-block.js.map +1 -0
- package/dist/cli/commands/solver-plugins-feedback.d.ts +72 -0
- package/dist/cli/commands/solver-plugins-feedback.js +262 -0
- package/dist/cli/commands/solver-plugins-feedback.js.map +1 -0
- package/dist/cli/commands/solver-plugins-read.d.ts +54 -0
- package/dist/cli/commands/solver-plugins-read.js +259 -0
- package/dist/cli/commands/solver-plugins-read.js.map +1 -0
- package/dist/cli/commands/solver-plugins.d.ts +35 -0
- package/dist/cli/commands/solver-plugins.js +399 -2
- package/dist/cli/commands/solver-plugins.js.map +1 -1
- package/dist/cli/commands/status.js +1 -1
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/tasks.js +101 -11
- package/dist/cli/commands/tasks.js.map +1 -1
- package/dist/cli/commands/update.d.ts +10 -0
- package/dist/cli/commands/update.js +36 -0
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/introspection-context.js +5 -0
- package/dist/cli/introspection-context.js.map +1 -1
- package/dist/cli/task-native-readiness.d.ts +10 -1
- package/dist/cli/task-native-readiness.js +30 -6
- package/dist/cli/task-native-readiness.js.map +1 -1
- package/dist/config.d.ts +273 -235
- package/dist/config.js +305 -114
- package/dist/config.js.map +1 -1
- package/dist/daemon/checkpoint-loop.d.ts +48 -0
- package/dist/daemon/checkpoint-loop.js +76 -0
- package/dist/daemon/checkpoint-loop.js.map +1 -0
- package/dist/daemon/creator.d.ts +1 -1
- package/dist/daemon/creator.js +7 -3
- package/dist/daemon/creator.js.map +1 -1
- package/dist/daemon/daemon.d.ts +22 -0
- package/dist/daemon/daemon.js +156 -23
- package/dist/daemon/daemon.js.map +1 -1
- package/dist/daemon/eviction-loop.d.ts +40 -0
- package/dist/daemon/eviction-loop.js +67 -0
- package/dist/daemon/eviction-loop.js.map +1 -0
- package/dist/daemon/gate-logger.d.ts +9 -0
- package/dist/daemon/gate-logger.js +2 -0
- package/dist/daemon/gate-logger.js.map +1 -0
- package/dist/daemon/jinn-claim-loop-wiring.d.ts +33 -0
- package/dist/daemon/jinn-claim-loop-wiring.js +40 -0
- package/dist/daemon/jinn-claim-loop-wiring.js.map +1 -0
- package/dist/daemon/jinn-claim-loop.d.ts +24 -17
- package/dist/daemon/jinn-claim-loop.js +77 -23
- package/dist/daemon/jinn-claim-loop.js.map +1 -1
- package/dist/daemon/readiness-gate.d.ts +1 -4
- package/dist/daemon/readiness-gate.js.map +1 -1
- package/dist/daemon/skip-log-dedup.d.ts +69 -0
- package/dist/daemon/skip-log-dedup.js +106 -0
- package/dist/daemon/skip-log-dedup.js.map +1 -0
- package/dist/daemon/spend-cap-gate.d.ts +40 -0
- package/dist/daemon/spend-cap-gate.js +46 -0
- package/dist/daemon/spend-cap-gate.js.map +1 -0
- package/dist/dashboard/assets/index-8yHQgi7p.js +345 -0
- package/dist/dashboard/assets/index-BOBhJ76-.css +32 -0
- package/dist/dashboard/index.html +2 -2
- package/dist/discovery/factory.d.ts +17 -5
- package/dist/discovery/factory.js +46 -18
- package/dist/discovery/factory.js.map +1 -1
- package/dist/discovery/http.js +142 -3
- package/dist/discovery/http.js.map +1 -1
- package/dist/discovery/onchain.d.ts +5 -0
- package/dist/discovery/onchain.js +407 -15
- package/dist/discovery/onchain.js.map +1 -1
- package/dist/discovery/types.d.ts +45 -1
- package/dist/discovery/types.js +8 -10
- package/dist/discovery/types.js.map +1 -1
- package/dist/discovery/with-fallback.d.ts +7 -0
- package/dist/discovery/with-fallback.js +10 -0
- package/dist/discovery/with-fallback.js.map +1 -1
- package/dist/earning/bootstrap.d.ts +92 -1
- package/dist/earning/bootstrap.js +203 -63
- package/dist/earning/bootstrap.js.map +1 -1
- package/dist/earning/contracts.d.ts +14 -0
- package/dist/earning/contracts.js +17 -5
- package/dist/earning/contracts.js.map +1 -1
- package/dist/earning/funding-plan.js +27 -18
- package/dist/earning/funding-plan.js.map +1 -1
- package/dist/earning/jinn-rewards.d.ts +46 -0
- package/dist/earning/jinn-rewards.js +32 -0
- package/dist/earning/jinn-rewards.js.map +1 -1
- package/dist/earning/safe-adapter.d.ts +2 -0
- package/dist/earning/safe-adapter.js +37 -11
- package/dist/earning/safe-adapter.js.map +1 -1
- package/dist/earning/store.d.ts +8 -0
- package/dist/earning/store.js.map +1 -1
- package/dist/earning/testnet-setup-migration.d.ts +12 -0
- package/dist/earning/testnet-setup-migration.js +27 -1
- package/dist/earning/testnet-setup-migration.js.map +1 -1
- package/dist/earning/types.d.ts +21 -6
- package/dist/earning/viem-clients.d.ts +11 -4
- package/dist/earning/viem-clients.js +14 -5
- package/dist/earning/viem-clients.js.map +1 -1
- package/dist/erc8004/reputation.d.ts +8 -0
- package/dist/erc8004/reputation.js +22 -3
- package/dist/erc8004/reputation.js.map +1 -1
- package/dist/events/types.d.ts +2 -2
- package/dist/harnesses/cost-estimates.d.ts +145 -0
- package/dist/harnesses/cost-estimates.js +297 -0
- package/dist/harnesses/cost-estimates.js.map +1 -0
- package/dist/harnesses/engine/engine.d.ts +72 -0
- package/dist/harnesses/engine/engine.js +118 -8
- package/dist/harnesses/engine/engine.js.map +1 -1
- package/dist/harnesses/engine/persistence.d.ts +51 -1
- package/dist/harnesses/engine/persistence.js +118 -5
- package/dist/harnesses/engine/persistence.js.map +1 -1
- package/dist/harnesses/engine/work-dir-reaper.d.ts +65 -0
- package/dist/harnesses/engine/work-dir-reaper.js +100 -0
- package/dist/harnesses/engine/work-dir-reaper.js.map +1 -0
- package/dist/harnesses/impls/hermes-agent/adapter.js +40 -0
- package/dist/harnesses/impls/hermes-agent/adapter.js.map +1 -1
- package/dist/harnesses/impls/hermes-agent/bootstrap.d.ts +20 -0
- package/dist/harnesses/impls/hermes-agent/bootstrap.js +40 -6
- package/dist/harnesses/impls/hermes-agent/bootstrap.js.map +1 -1
- package/dist/harnesses/impls/hermes-agent/harness.d.ts +59 -1
- package/dist/harnesses/impls/hermes-agent/harness.js +104 -0
- package/dist/harnesses/impls/hermes-agent/harness.js.map +1 -1
- package/dist/harnesses/impls/index.d.ts +7 -0
- package/dist/harnesses/impls/index.js +16 -1
- package/dist/harnesses/impls/index.js.map +1 -1
- package/dist/harnesses/impls/learner/harness.d.ts +38 -4
- package/dist/harnesses/impls/learner/harness.js +96 -2
- package/dist/harnesses/impls/learner/harness.js.map +1 -1
- package/dist/harnesses/impls/learner/plugin-path.d.ts +0 -13
- package/dist/harnesses/impls/learner/plugin-path.js +35 -15
- package/dist/harnesses/impls/learner/plugin-path.js.map +1 -1
- package/dist/harnesses/impls/learner/types.d.ts +11 -0
- package/dist/harnesses/impls/stub.d.ts +58 -0
- package/dist/harnesses/impls/stub.js +89 -0
- package/dist/harnesses/impls/stub.js.map +1 -0
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.d.ts +69 -50
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js +178 -93
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js.map +1 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.d.ts +12 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js +121 -7
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js.map +1 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.d.ts +88 -4
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js +143 -22
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js.map +1 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.d.ts +6 -0
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js +1 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js.map +1 -1
- package/dist/harnesses/readiness-registry.js +9 -1
- package/dist/harnesses/readiness-registry.js.map +1 -1
- package/dist/main.js +413 -111
- package/dist/main.js.map +1 -1
- package/dist/observability/emit-event.d.ts +3 -2
- package/dist/observability/emit-event.js +22 -1
- package/dist/observability/emit-event.js.map +1 -1
- package/dist/operator-errors.d.ts +7 -0
- package/dist/operator-errors.js +13 -1
- package/dist/operator-errors.js.map +1 -1
- package/dist/plugins/learner/.claude-plugin/plugin.json +9 -0
- package/dist/plugins/learner/.codex-plugin/plugin.json +39 -0
- package/dist/plugins/learner/AGENTS.md +40 -0
- package/dist/plugins/learner/CLAUDE.md +33 -0
- package/dist/plugins/learner/README.md +59 -0
- package/dist/plugins/learner/hooks/hooks.json +16 -0
- package/dist/plugins/learner/hooks/session-start +38 -0
- package/dist/plugins/learner/skills/learn/SKILL.md +412 -0
- package/dist/plugins/learner/skills/learn/analyst-prompt.md +68 -0
- package/dist/plugins/learner/skills/learn/consolidator-prompt.md +94 -0
- package/dist/plugins/learner/skills/learn/explorer-prompt.md +53 -0
- package/dist/plugins/learner/skills/learn/planner-prompt.md +87 -0
- package/dist/plugins/learner/skills/learn/promoter-prompt.md +113 -0
- package/dist/plugins/learner/skills/learn/step-worker-prompt.md +47 -0
- package/dist/plugins/learner/skills/learn/strategist-prompt.md +85 -0
- package/dist/preflight/rpc-network.d.ts +40 -0
- package/dist/preflight/rpc-network.js +67 -1
- package/dist/preflight/rpc-network.js.map +1 -1
- package/dist/restart-daemon.d.ts +90 -0
- package/dist/restart-daemon.js +95 -0
- package/dist/restart-daemon.js.map +1 -0
- package/dist/rpc/transport.d.ts +109 -0
- package/dist/rpc/transport.js +220 -0
- package/dist/rpc/transport.js.map +1 -0
- package/dist/scripts/donation-consumption-acceptance.js +7 -28
- package/dist/scripts/donation-consumption-acceptance.js.map +1 -1
- package/dist/setup/halt-mode.d.ts +14 -0
- package/dist/setup/halt-mode.js +17 -0
- package/dist/setup/halt-mode.js.map +1 -0
- package/dist/solver-nets/prediction-operator-ux.d.ts +1 -2
- package/dist/solver-nets/prediction-operator-ux.js +90 -47
- package/dist/solver-nets/prediction-operator-ux.js.map +1 -1
- package/dist/solver-nets/registry.d.ts +20 -1
- package/dist/solver-nets/registry.js +38 -25
- package/dist/solver-nets/registry.js.map +1 -1
- package/dist/solver-types/_swe-rebench-v2-pool-cache.d.ts +58 -0
- package/dist/solver-types/_swe-rebench-v2-pool-cache.js +87 -0
- package/dist/solver-types/_swe-rebench-v2-pool-cache.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-pool.d.ts +9 -2
- package/dist/solver-types/_swe-rebench-v2-pool.js +15 -20
- package/dist/solver-types/_swe-rebench-v2-pool.js.map +1 -1
- package/dist/solver-types/_swe-rebench-v2-substrate.d.ts +1 -0
- package/dist/solver-types/_swe-rebench-v2-substrate.js +10 -0
- package/dist/solver-types/_swe-rebench-v2-substrate.js.map +1 -1
- package/dist/solver-types/_swe-rebench-v2-validated-pool.d.ts +94 -1
- package/dist/solver-types/_swe-rebench-v2-validated-pool.js +305 -39
- package/dist/solver-types/_swe-rebench-v2-validated-pool.js.map +1 -1
- package/dist/solver-types/swe-rebench-v2-auto.d.ts +22 -7
- package/dist/solver-types/swe-rebench-v2-auto.js +45 -20
- package/dist/solver-types/swe-rebench-v2-auto.js.map +1 -1
- package/dist/solver-types/swe-rebench-v2.d.ts +13 -2
- package/dist/solver-types/swe-rebench-v2.js +237 -95
- package/dist/solver-types/swe-rebench-v2.js.map +1 -1
- package/dist/solvernets/daemon-init.d.ts +10 -2
- package/dist/solvernets/daemon-init.js +22 -2
- package/dist/solvernets/daemon-init.js.map +1 -1
- package/dist/solvernets/launched-record-dispatcher.js +35 -7
- package/dist/solvernets/launched-record-dispatcher.js.map +1 -1
- package/dist/solvernets/store.d.ts +5 -0
- package/dist/solvernets/store.js +1 -0
- package/dist/solvernets/store.js.map +1 -1
- package/dist/spend/credential.d.ts +8 -0
- package/dist/spend/credential.js +30 -0
- package/dist/spend/credential.js.map +1 -0
- package/dist/spend/daemon-config.d.ts +13 -0
- package/dist/spend/daemon-config.js +24 -0
- package/dist/spend/daemon-config.js.map +1 -0
- package/dist/spend/pricing.d.ts +16 -0
- package/dist/spend/pricing.js +26 -0
- package/dist/spend/pricing.js.map +1 -0
- package/dist/spend/record.d.ts +13 -0
- package/dist/spend/record.js +30 -0
- package/dist/spend/record.js.map +1 -0
- package/dist/spend/usage.d.ts +27 -0
- package/dist/spend/usage.js +113 -0
- package/dist/spend/usage.js.map +1 -0
- package/dist/store/store.d.ts +43 -0
- package/dist/store/store.js +236 -7
- package/dist/store/store.js.map +1 -1
- package/dist/tasks/sources.d.ts +18 -1
- package/dist/tasks/sources.js +33 -5
- package/dist/tasks/sources.js.map +1 -1
- package/dist/trajectory/transcript-parsers/types.d.ts +8 -8
- package/dist/tx-retry.d.ts +166 -19
- package/dist/tx-retry.js +310 -32
- package/dist/tx-retry.js.map +1 -1
- package/dist/types/payloads/prediction-apy-v0.d.ts +5 -5
- package/dist/types/payloads/prediction-v0.d.ts +5 -5
- package/dist/types/task-document.d.ts +392 -0
- package/dist/types/task-document.js +10 -0
- package/dist/types/task-document.js.map +1 -1
- package/dist/types/task.d.ts +28 -0
- package/dist/util/extract-tx-hash.d.ts +14 -0
- package/dist/util/extract-tx-hash.js +19 -0
- package/dist/util/extract-tx-hash.js.map +1 -0
- package/dist/vendor/@jinn-network/sdk/dist/contracts.js +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.d.ts +3 -0
- package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.js +1 -0
- package/package.json +30 -12
- package/dist/dashboard/assets/index-DOlzFN8a.css +0 -32
- package/dist/dashboard/assets/index-NkZ7CTAT.js +0 -140
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viem-clients.js","sourceRoot":"","sources":["../../src/earning/viem-clients.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"viem-clients.js","sourceRoot":"","sources":["../../src/earning/viem-clients.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GAKnB,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAElE,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAU3E,MAAM,UAAU,SAAS,CAAC,OAA2B;IACnD,OAAO,OAAO,KAAK,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAsB;IAChD,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;AACnD,CAAC;AAED,SAAS,YAAY,CAAC,MAAmB;IACvC,OAAO,sBAAsB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAmB,EACnB,OAA2B;IAE3B,OAAO,kBAAkB,CAAC;QACxB,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC;KAChC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAmB,EACnB,OAA2B,EAC3B,OAA0B;IAE1B,OAAO,kBAAkB,CAAC;QACxB,OAAO;QACP,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC;KAChC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAAmB,EACnB,OAAsB;IAEtB,OAAO,kBAAkB,CAAC;QACxB,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC;QAC3B,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC;KAChC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAAmB,EACnB,OAAsB,EACtB,OAA0B;IAE1B,OAAO,kBAAkB,CAAC;QACxB,OAAO;QACP,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC;QAC3B,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC;KAChC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -347,3 +347,11 @@ export declare function submitEvaluatorFeedback(args: {
|
|
|
347
347
|
data?: unknown;
|
|
348
348
|
}) => void;
|
|
349
349
|
}): Promise<FeedbackHookOutcome>;
|
|
350
|
+
/**
|
|
351
|
+
* Render `data` for stdout. Plain `console.log(msg, obj)` prints `[object Object]`
|
|
352
|
+
* when stdout is non-TTY (e.g. piped through the operator console), which loses
|
|
353
|
+
* the structured payload operators actually need (verdict, score, txHash, …).
|
|
354
|
+
* JSON.stringify with a BigInt-safe replacer keeps the line readable in both
|
|
355
|
+
* TTY and non-TTY contexts. Exported for unit coverage.
|
|
356
|
+
*/
|
|
357
|
+
export declare function formatLogData(data: unknown): string;
|
|
@@ -451,14 +451,33 @@ export async function submitEvaluatorFeedback(args) {
|
|
|
451
451
|
}
|
|
452
452
|
// ── Local helpers ───────────────────────────────────────────────────────────
|
|
453
453
|
function defaultLog(entry) {
|
|
454
|
+
const rendered = formatLogData(entry.data);
|
|
455
|
+
const line = rendered ? `${entry.msg} ${rendered}` : entry.msg;
|
|
454
456
|
if (entry.level === 'error') {
|
|
455
|
-
console.error(
|
|
457
|
+
console.error(line);
|
|
456
458
|
}
|
|
457
459
|
else if (entry.level === 'warn') {
|
|
458
|
-
console.warn(
|
|
460
|
+
console.warn(line);
|
|
459
461
|
}
|
|
460
462
|
else {
|
|
461
|
-
console.log(
|
|
463
|
+
console.log(line);
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
/**
|
|
467
|
+
* Render `data` for stdout. Plain `console.log(msg, obj)` prints `[object Object]`
|
|
468
|
+
* when stdout is non-TTY (e.g. piped through the operator console), which loses
|
|
469
|
+
* the structured payload operators actually need (verdict, score, txHash, …).
|
|
470
|
+
* JSON.stringify with a BigInt-safe replacer keeps the line readable in both
|
|
471
|
+
* TTY and non-TTY contexts. Exported for unit coverage.
|
|
472
|
+
*/
|
|
473
|
+
export function formatLogData(data) {
|
|
474
|
+
if (data === undefined || data === null)
|
|
475
|
+
return '';
|
|
476
|
+
try {
|
|
477
|
+
return JSON.stringify(data, (_key, value) => typeof value === 'bigint' ? value.toString() : value);
|
|
478
|
+
}
|
|
479
|
+
catch {
|
|
480
|
+
return String(data);
|
|
462
481
|
}
|
|
463
482
|
}
|
|
464
483
|
//# sourceMappingURL=reputation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reputation.js","sourceRoot":"","sources":["../../src/erc8004/reputation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reputation.js","sourceRoot":"","sources":["../../src/erc8004/reputation.ts"],"names":[],"mappings":"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"}
|
package/dist/events/types.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ export declare const StructuredEventSchema: z.ZodObject<{
|
|
|
21
21
|
}, "strip", z.ZodTypeAny, {
|
|
22
22
|
message: string;
|
|
23
23
|
id: string;
|
|
24
|
-
kind: "reward" | "error" | "
|
|
24
|
+
kind: "reward" | "error" | "intent" | "fleet" | "system" | "log";
|
|
25
25
|
schemaVersion: 1;
|
|
26
26
|
ts: string;
|
|
27
27
|
details?: Record<string, unknown> | undefined;
|
|
@@ -31,7 +31,7 @@ export declare const StructuredEventSchema: z.ZodObject<{
|
|
|
31
31
|
}, {
|
|
32
32
|
message: string;
|
|
33
33
|
id: string;
|
|
34
|
-
kind: "reward" | "error" | "
|
|
34
|
+
kind: "reward" | "error" | "intent" | "fleet" | "system" | "log";
|
|
35
35
|
schemaVersion: 1;
|
|
36
36
|
ts: string;
|
|
37
37
|
details?: Record<string, unknown> | undefined;
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-task cost estimates for paid-API-key harnesses.
|
|
3
|
+
*
|
|
4
|
+
* Background — Issue #331 (Run-mode `feat`, P0 tier under release-feedback
|
|
5
|
+
* umbrella #328). The operator dashboard surfaces a harness/model selection
|
|
6
|
+
* at SolverNet-join time and again in Settings. Operators routing a paid
|
|
7
|
+
* API key (Anthropic, OpenAI, OpenRouter, Nous Portal) through the Hermes
|
|
8
|
+
* harness — or a "raw API key" Claude Code variant if we ever add one —
|
|
9
|
+
* have **no UI nudge** at join-time about per-task cost. The v0.1.6 dogfood
|
|
10
|
+
* surfaced the concrete worry: a first-run operator could pick Opus 4.7 +
|
|
11
|
+
* SWE-rebench v2 and burn $100s/hr before they figure out what Jinn does.
|
|
12
|
+
*
|
|
13
|
+
* This module captures the heuristic the SPA uses to render that estimate
|
|
14
|
+
* and to gate the Save & Join action when the estimate exceeds a
|
|
15
|
+
* configurable per-task threshold (default $1).
|
|
16
|
+
*
|
|
17
|
+
* Heuristic shape per the spec:
|
|
18
|
+
* per-1k-token rate × typical task length, by model id.
|
|
19
|
+
*
|
|
20
|
+
* Subscription harnesses (Claude Code, Codex) are flagged via
|
|
21
|
+
* `subscriptionPath: true` on the harness; in that case the surface shows
|
|
22
|
+
* "Included in subscription, no per-task API cost" and **does not** trigger
|
|
23
|
+
* the confirmation gate, regardless of the model selected.
|
|
24
|
+
*
|
|
25
|
+
* To add a new model: append an entry to `MODEL_COST_TABLE`. The id is the
|
|
26
|
+
* exact `model` string persisted to `joinedSolverNets[<cid>].model`. To
|
|
27
|
+
* shape a new harness: append to `HARNESS_BILLING`. Keep the units
|
|
28
|
+
* consistent: token counts in tokens, rates in USD-per-1k-tokens.
|
|
29
|
+
*
|
|
30
|
+
* Units note: Anthropic + OpenAI publish prices per million tokens; we
|
|
31
|
+
* convert to per-1k-tokens here so the multiplication reads as
|
|
32
|
+
* `(tokens / 1000) * pricePer1k`. Avoids floating-point surprises when the
|
|
33
|
+
* dashboard renders cents.
|
|
34
|
+
*
|
|
35
|
+
* Pricing references captured at the time of this commit (see PR body):
|
|
36
|
+
* - Anthropic Claude Opus 4.7: $15/M input, $75/M output (≈ $0.015 / 1k
|
|
37
|
+
* input, $0.075 / 1k output). Typical SWE-rebench v2 task estimated at
|
|
38
|
+
* ~50k input + 20k output → ~$2.25/task. Anthropic public pricing.
|
|
39
|
+
* - Anthropic Claude Sonnet 4.6: $3/M input, $15/M output.
|
|
40
|
+
* - OpenAI GPT-5.4: $1.25/M input, $10/M output (OpenAI public pricing).
|
|
41
|
+
* - OpenAI GPT-5.4 Mini: $0.25/M input, $2/M output.
|
|
42
|
+
*
|
|
43
|
+
* These are heuristics. Provider-API reconciliation (actual usage) is
|
|
44
|
+
* deferred to the P1 follow-up tracked in #331.
|
|
45
|
+
*/
|
|
46
|
+
export type Provider = 'anthropic' | 'openai' | 'openrouter' | 'nous' | 'other';
|
|
47
|
+
export interface ModelCostEntry {
|
|
48
|
+
/** Upstream API provider that owns the billing relationship. */
|
|
49
|
+
provider: Provider;
|
|
50
|
+
/** USD per 1k input tokens. */
|
|
51
|
+
inputPer1kTokens: number;
|
|
52
|
+
/** USD per 1k output tokens. */
|
|
53
|
+
outputPer1kTokens: number;
|
|
54
|
+
/** Typical input-token consumption for a single task. Heuristic. */
|
|
55
|
+
typicalInputTokens: number;
|
|
56
|
+
/** Typical output-token consumption for a single task. Heuristic. */
|
|
57
|
+
typicalOutputTokens: number;
|
|
58
|
+
/**
|
|
59
|
+
* `true` when this model id is only ever reached via a subscription path
|
|
60
|
+
* (e.g. a future "Claude Code subscription" pinned model). The default
|
|
61
|
+
* gate logic prefers the harness-level flag — this exists so an
|
|
62
|
+
* individual model entry can override it on a per-id basis.
|
|
63
|
+
*/
|
|
64
|
+
subscriptionPath?: boolean;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Per-model cost entries. Keyed by the exact `model` id persisted to
|
|
68
|
+
* `joinedSolverNets[<cid>].model`. The dashboard model dropdown in
|
|
69
|
+
* `claudeModels.ts` is the source of truth for which ids appear here.
|
|
70
|
+
*/
|
|
71
|
+
export declare const MODEL_COST_TABLE: Readonly<Record<string, ModelCostEntry>>;
|
|
72
|
+
/**
|
|
73
|
+
* Harness-level billing classification.
|
|
74
|
+
*
|
|
75
|
+
* `subscriptionPath: true` means the harness shells out to a
|
|
76
|
+
* subscription-billed CLI (Claude Code, Codex) and the operator does NOT
|
|
77
|
+
* incur per-task API charges — the cost surface is suppressed entirely
|
|
78
|
+
* and the confirmation gate is never triggered.
|
|
79
|
+
*
|
|
80
|
+
* `subscriptionPath: false` means the harness routes to a paid API key
|
|
81
|
+
* (Hermes via OpenRouter / Anthropic API / Nous Portal). The cost surface
|
|
82
|
+
* is shown and the gate fires above the configured threshold.
|
|
83
|
+
*/
|
|
84
|
+
export declare const HARNESS_BILLING: Readonly<Record<string, {
|
|
85
|
+
subscriptionPath: boolean;
|
|
86
|
+
}>>;
|
|
87
|
+
/** Default per-task USD threshold above which the confirmation gate fires. */
|
|
88
|
+
export declare const DEFAULT_HIGH_COST_THRESHOLD_USD = 1;
|
|
89
|
+
export interface CostEstimate {
|
|
90
|
+
/** Estimated per-task cost in USD. */
|
|
91
|
+
usd: number;
|
|
92
|
+
/** Computed input cost in USD. */
|
|
93
|
+
inputUsd: number;
|
|
94
|
+
/** Computed output cost in USD. */
|
|
95
|
+
outputUsd: number;
|
|
96
|
+
/** Heuristic typical input tokens used. */
|
|
97
|
+
typicalInputTokens: number;
|
|
98
|
+
/** Heuristic typical output tokens used. */
|
|
99
|
+
typicalOutputTokens: number;
|
|
100
|
+
/** Underlying entry consulted. */
|
|
101
|
+
entry: ModelCostEntry;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Compute the per-task cost estimate for a given model id. Returns `null`
|
|
105
|
+
* when the id has no entry in `MODEL_COST_TABLE` — callers should treat
|
|
106
|
+
* that as "unknown, don't surface a number" rather than rendering $0.
|
|
107
|
+
*/
|
|
108
|
+
export declare function estimateModelCost(modelId: string): CostEstimate | null;
|
|
109
|
+
/**
|
|
110
|
+
* `true` when the harness routes through a paid API key. Subscription
|
|
111
|
+
* harnesses (Claude Code, Codex) return `false`; unknown harnesses
|
|
112
|
+
* conservatively return `true` so a misnamed harness doesn't silently
|
|
113
|
+
* skip the cost surface.
|
|
114
|
+
*/
|
|
115
|
+
export declare function harnessUsesPaidApiKey(harness: string | undefined): boolean;
|
|
116
|
+
export interface CostSurfaceDecision {
|
|
117
|
+
/** Whether to show a numeric cost-per-task estimate at all. */
|
|
118
|
+
showEstimate: boolean;
|
|
119
|
+
/** Resolved estimate (may be `null` even when `showEstimate` is true if the model id is unknown). */
|
|
120
|
+
estimate: CostEstimate | null;
|
|
121
|
+
/** Whether the Save & Join action requires the high-cost confirmation. */
|
|
122
|
+
requiresConfirmation: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* Human-readable reason the surface is suppressed when `showEstimate`
|
|
125
|
+
* is false — e.g. "Included in subscription, no per-task API cost".
|
|
126
|
+
* `null` when the surface is shown.
|
|
127
|
+
*/
|
|
128
|
+
suppressedReason: string | null;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Decide what the cost surface should render for a given harness + model
|
|
132
|
+
* combination, plus whether the confirmation gate fires.
|
|
133
|
+
*
|
|
134
|
+
* Defaults:
|
|
135
|
+
* - threshold: $1 / task (see DEFAULT_HIGH_COST_THRESHOLD_USD).
|
|
136
|
+
* - subscription harness → suppress surface + skip gate.
|
|
137
|
+
* - unknown model on a paid harness → show estimate slot (caller may
|
|
138
|
+
* render "estimate unavailable") but DO NOT trigger the gate.
|
|
139
|
+
*/
|
|
140
|
+
export declare function decideCostSurface(harness: string | undefined, modelId: string | undefined, thresholdUsd?: number): CostSurfaceDecision;
|
|
141
|
+
/**
|
|
142
|
+
* Format a USD amount for compact display in the dashboard. Picks the
|
|
143
|
+
* smallest fraction count that still distinguishes the value from $0.
|
|
144
|
+
*/
|
|
145
|
+
export declare function formatUsd(amount: number): string;
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-task cost estimates for paid-API-key harnesses.
|
|
3
|
+
*
|
|
4
|
+
* Background — Issue #331 (Run-mode `feat`, P0 tier under release-feedback
|
|
5
|
+
* umbrella #328). The operator dashboard surfaces a harness/model selection
|
|
6
|
+
* at SolverNet-join time and again in Settings. Operators routing a paid
|
|
7
|
+
* API key (Anthropic, OpenAI, OpenRouter, Nous Portal) through the Hermes
|
|
8
|
+
* harness — or a "raw API key" Claude Code variant if we ever add one —
|
|
9
|
+
* have **no UI nudge** at join-time about per-task cost. The v0.1.6 dogfood
|
|
10
|
+
* surfaced the concrete worry: a first-run operator could pick Opus 4.7 +
|
|
11
|
+
* SWE-rebench v2 and burn $100s/hr before they figure out what Jinn does.
|
|
12
|
+
*
|
|
13
|
+
* This module captures the heuristic the SPA uses to render that estimate
|
|
14
|
+
* and to gate the Save & Join action when the estimate exceeds a
|
|
15
|
+
* configurable per-task threshold (default $1).
|
|
16
|
+
*
|
|
17
|
+
* Heuristic shape per the spec:
|
|
18
|
+
* per-1k-token rate × typical task length, by model id.
|
|
19
|
+
*
|
|
20
|
+
* Subscription harnesses (Claude Code, Codex) are flagged via
|
|
21
|
+
* `subscriptionPath: true` on the harness; in that case the surface shows
|
|
22
|
+
* "Included in subscription, no per-task API cost" and **does not** trigger
|
|
23
|
+
* the confirmation gate, regardless of the model selected.
|
|
24
|
+
*
|
|
25
|
+
* To add a new model: append an entry to `MODEL_COST_TABLE`. The id is the
|
|
26
|
+
* exact `model` string persisted to `joinedSolverNets[<cid>].model`. To
|
|
27
|
+
* shape a new harness: append to `HARNESS_BILLING`. Keep the units
|
|
28
|
+
* consistent: token counts in tokens, rates in USD-per-1k-tokens.
|
|
29
|
+
*
|
|
30
|
+
* Units note: Anthropic + OpenAI publish prices per million tokens; we
|
|
31
|
+
* convert to per-1k-tokens here so the multiplication reads as
|
|
32
|
+
* `(tokens / 1000) * pricePer1k`. Avoids floating-point surprises when the
|
|
33
|
+
* dashboard renders cents.
|
|
34
|
+
*
|
|
35
|
+
* Pricing references captured at the time of this commit (see PR body):
|
|
36
|
+
* - Anthropic Claude Opus 4.7: $15/M input, $75/M output (≈ $0.015 / 1k
|
|
37
|
+
* input, $0.075 / 1k output). Typical SWE-rebench v2 task estimated at
|
|
38
|
+
* ~50k input + 20k output → ~$2.25/task. Anthropic public pricing.
|
|
39
|
+
* - Anthropic Claude Sonnet 4.6: $3/M input, $15/M output.
|
|
40
|
+
* - OpenAI GPT-5.4: $1.25/M input, $10/M output (OpenAI public pricing).
|
|
41
|
+
* - OpenAI GPT-5.4 Mini: $0.25/M input, $2/M output.
|
|
42
|
+
*
|
|
43
|
+
* These are heuristics. Provider-API reconciliation (actual usage) is
|
|
44
|
+
* deferred to the P1 follow-up tracked in #331.
|
|
45
|
+
*/
|
|
46
|
+
import { CLAUDE_CODE_HARNESS, CODEX_HARNESS, HERMES_AGENT_HARNESS, canonicalHarnessName, } from './names.js';
|
|
47
|
+
/**
|
|
48
|
+
* Per-model cost entries. Keyed by the exact `model` id persisted to
|
|
49
|
+
* `joinedSolverNets[<cid>].model`. The dashboard model dropdown in
|
|
50
|
+
* `claudeModels.ts` is the source of truth for which ids appear here.
|
|
51
|
+
*/
|
|
52
|
+
export const MODEL_COST_TABLE = {
|
|
53
|
+
// ---------- Anthropic family (direct + via OpenRouter) ----------
|
|
54
|
+
'claude-opus-4-7': {
|
|
55
|
+
provider: 'anthropic',
|
|
56
|
+
inputPer1kTokens: 0.015,
|
|
57
|
+
outputPer1kTokens: 0.075,
|
|
58
|
+
typicalInputTokens: 50_000,
|
|
59
|
+
typicalOutputTokens: 20_000,
|
|
60
|
+
},
|
|
61
|
+
'claude-sonnet-4-6': {
|
|
62
|
+
provider: 'anthropic',
|
|
63
|
+
inputPer1kTokens: 0.003,
|
|
64
|
+
outputPer1kTokens: 0.015,
|
|
65
|
+
typicalInputTokens: 50_000,
|
|
66
|
+
typicalOutputTokens: 20_000,
|
|
67
|
+
},
|
|
68
|
+
'claude-haiku-4-5-20251001': {
|
|
69
|
+
provider: 'anthropic',
|
|
70
|
+
inputPer1kTokens: 0.001,
|
|
71
|
+
outputPer1kTokens: 0.005,
|
|
72
|
+
typicalInputTokens: 50_000,
|
|
73
|
+
typicalOutputTokens: 20_000,
|
|
74
|
+
},
|
|
75
|
+
// OpenRouter routing of the same families (Hermes harness uses these).
|
|
76
|
+
'anthropic/claude-opus-4.7': {
|
|
77
|
+
provider: 'openrouter',
|
|
78
|
+
inputPer1kTokens: 0.015,
|
|
79
|
+
outputPer1kTokens: 0.075,
|
|
80
|
+
typicalInputTokens: 50_000,
|
|
81
|
+
typicalOutputTokens: 20_000,
|
|
82
|
+
},
|
|
83
|
+
'anthropic/claude-sonnet-4.6': {
|
|
84
|
+
provider: 'openrouter',
|
|
85
|
+
inputPer1kTokens: 0.003,
|
|
86
|
+
outputPer1kTokens: 0.015,
|
|
87
|
+
typicalInputTokens: 50_000,
|
|
88
|
+
typicalOutputTokens: 20_000,
|
|
89
|
+
},
|
|
90
|
+
// ---------- OpenAI family ----------
|
|
91
|
+
'gpt-5.4': {
|
|
92
|
+
provider: 'openai',
|
|
93
|
+
inputPer1kTokens: 0.00125,
|
|
94
|
+
outputPer1kTokens: 0.01,
|
|
95
|
+
typicalInputTokens: 50_000,
|
|
96
|
+
typicalOutputTokens: 20_000,
|
|
97
|
+
},
|
|
98
|
+
'gpt-5.4-mini': {
|
|
99
|
+
provider: 'openai',
|
|
100
|
+
inputPer1kTokens: 0.00025,
|
|
101
|
+
outputPer1kTokens: 0.002,
|
|
102
|
+
typicalInputTokens: 50_000,
|
|
103
|
+
typicalOutputTokens: 20_000,
|
|
104
|
+
},
|
|
105
|
+
'gpt-5.5': {
|
|
106
|
+
provider: 'openai',
|
|
107
|
+
// Newer flagship; public pricing not confirmed at heuristic-capture
|
|
108
|
+
// time, so use Opus-4.7-class rates as a conservative upper bound
|
|
109
|
+
// until we get a verified figure.
|
|
110
|
+
inputPer1kTokens: 0.015,
|
|
111
|
+
outputPer1kTokens: 0.06,
|
|
112
|
+
typicalInputTokens: 50_000,
|
|
113
|
+
typicalOutputTokens: 20_000,
|
|
114
|
+
},
|
|
115
|
+
'gpt-5.3-codex': {
|
|
116
|
+
provider: 'openai',
|
|
117
|
+
inputPer1kTokens: 0.00125,
|
|
118
|
+
outputPer1kTokens: 0.01,
|
|
119
|
+
typicalInputTokens: 50_000,
|
|
120
|
+
typicalOutputTokens: 20_000,
|
|
121
|
+
},
|
|
122
|
+
'gpt-5.3-codex-spark': {
|
|
123
|
+
provider: 'openai',
|
|
124
|
+
inputPer1kTokens: 0.00125,
|
|
125
|
+
outputPer1kTokens: 0.01,
|
|
126
|
+
typicalInputTokens: 50_000,
|
|
127
|
+
typicalOutputTokens: 20_000,
|
|
128
|
+
},
|
|
129
|
+
// ---------- OpenRouter long-tail (Hermes) ----------
|
|
130
|
+
// These rates are coarse — OpenRouter's effective price depends on the
|
|
131
|
+
// route picked. We pick the published list-price upper bound so the
|
|
132
|
+
// estimate biases toward over-warning rather than under-warning.
|
|
133
|
+
'tencent/hy3-preview': {
|
|
134
|
+
provider: 'openrouter',
|
|
135
|
+
inputPer1kTokens: 0.003,
|
|
136
|
+
outputPer1kTokens: 0.015,
|
|
137
|
+
typicalInputTokens: 50_000,
|
|
138
|
+
typicalOutputTokens: 20_000,
|
|
139
|
+
},
|
|
140
|
+
'deepseek/deepseek-v4-pro': {
|
|
141
|
+
provider: 'openrouter',
|
|
142
|
+
inputPer1kTokens: 0.0014,
|
|
143
|
+
outputPer1kTokens: 0.0028,
|
|
144
|
+
typicalInputTokens: 50_000,
|
|
145
|
+
typicalOutputTokens: 20_000,
|
|
146
|
+
},
|
|
147
|
+
'deepseek/deepseek-v4-flash': {
|
|
148
|
+
provider: 'openrouter',
|
|
149
|
+
inputPer1kTokens: 0.0001,
|
|
150
|
+
outputPer1kTokens: 0.0004,
|
|
151
|
+
typicalInputTokens: 50_000,
|
|
152
|
+
typicalOutputTokens: 20_000,
|
|
153
|
+
},
|
|
154
|
+
'google/gemini-3.1-flash-lite': {
|
|
155
|
+
provider: 'openrouter',
|
|
156
|
+
inputPer1kTokens: 0.0001,
|
|
157
|
+
outputPer1kTokens: 0.0004,
|
|
158
|
+
typicalInputTokens: 50_000,
|
|
159
|
+
typicalOutputTokens: 20_000,
|
|
160
|
+
},
|
|
161
|
+
'moonshotai/kimi-k2.6': {
|
|
162
|
+
provider: 'openrouter',
|
|
163
|
+
inputPer1kTokens: 0.0006,
|
|
164
|
+
outputPer1kTokens: 0.0025,
|
|
165
|
+
typicalInputTokens: 50_000,
|
|
166
|
+
typicalOutputTokens: 20_000,
|
|
167
|
+
},
|
|
168
|
+
'openrouter/owl-alpha': {
|
|
169
|
+
provider: 'openrouter',
|
|
170
|
+
inputPer1kTokens: 0.002,
|
|
171
|
+
outputPer1kTokens: 0.008,
|
|
172
|
+
typicalInputTokens: 50_000,
|
|
173
|
+
typicalOutputTokens: 20_000,
|
|
174
|
+
},
|
|
175
|
+
'minimax/minimax-m2.7': {
|
|
176
|
+
provider: 'openrouter',
|
|
177
|
+
inputPer1kTokens: 0.0008,
|
|
178
|
+
outputPer1kTokens: 0.0032,
|
|
179
|
+
typicalInputTokens: 50_000,
|
|
180
|
+
typicalOutputTokens: 20_000,
|
|
181
|
+
},
|
|
182
|
+
'nousresearch/hermes-4-405b': {
|
|
183
|
+
provider: 'nous',
|
|
184
|
+
inputPer1kTokens: 0.0009,
|
|
185
|
+
outputPer1kTokens: 0.0009,
|
|
186
|
+
typicalInputTokens: 50_000,
|
|
187
|
+
typicalOutputTokens: 20_000,
|
|
188
|
+
},
|
|
189
|
+
};
|
|
190
|
+
/**
|
|
191
|
+
* Harness-level billing classification.
|
|
192
|
+
*
|
|
193
|
+
* `subscriptionPath: true` means the harness shells out to a
|
|
194
|
+
* subscription-billed CLI (Claude Code, Codex) and the operator does NOT
|
|
195
|
+
* incur per-task API charges — the cost surface is suppressed entirely
|
|
196
|
+
* and the confirmation gate is never triggered.
|
|
197
|
+
*
|
|
198
|
+
* `subscriptionPath: false` means the harness routes to a paid API key
|
|
199
|
+
* (Hermes via OpenRouter / Anthropic API / Nous Portal). The cost surface
|
|
200
|
+
* is shown and the gate fires above the configured threshold.
|
|
201
|
+
*/
|
|
202
|
+
export const HARNESS_BILLING = {
|
|
203
|
+
[CLAUDE_CODE_HARNESS]: { subscriptionPath: true },
|
|
204
|
+
[CODEX_HARNESS]: { subscriptionPath: true },
|
|
205
|
+
[HERMES_AGENT_HARNESS]: { subscriptionPath: false },
|
|
206
|
+
};
|
|
207
|
+
/** Default per-task USD threshold above which the confirmation gate fires. */
|
|
208
|
+
export const DEFAULT_HIGH_COST_THRESHOLD_USD = 1;
|
|
209
|
+
/**
|
|
210
|
+
* Compute the per-task cost estimate for a given model id. Returns `null`
|
|
211
|
+
* when the id has no entry in `MODEL_COST_TABLE` — callers should treat
|
|
212
|
+
* that as "unknown, don't surface a number" rather than rendering $0.
|
|
213
|
+
*/
|
|
214
|
+
export function estimateModelCost(modelId) {
|
|
215
|
+
const entry = MODEL_COST_TABLE[modelId];
|
|
216
|
+
if (!entry)
|
|
217
|
+
return null;
|
|
218
|
+
const inputUsd = (entry.typicalInputTokens / 1000) * entry.inputPer1kTokens;
|
|
219
|
+
const outputUsd = (entry.typicalOutputTokens / 1000) * entry.outputPer1kTokens;
|
|
220
|
+
return {
|
|
221
|
+
usd: inputUsd + outputUsd,
|
|
222
|
+
inputUsd,
|
|
223
|
+
outputUsd,
|
|
224
|
+
typicalInputTokens: entry.typicalInputTokens,
|
|
225
|
+
typicalOutputTokens: entry.typicalOutputTokens,
|
|
226
|
+
entry,
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* `true` when the harness routes through a paid API key. Subscription
|
|
231
|
+
* harnesses (Claude Code, Codex) return `false`; unknown harnesses
|
|
232
|
+
* conservatively return `true` so a misnamed harness doesn't silently
|
|
233
|
+
* skip the cost surface.
|
|
234
|
+
*/
|
|
235
|
+
export function harnessUsesPaidApiKey(harness) {
|
|
236
|
+
if (!harness)
|
|
237
|
+
return false;
|
|
238
|
+
const canonical = canonicalHarnessName(harness);
|
|
239
|
+
const billing = HARNESS_BILLING[canonical];
|
|
240
|
+
if (!billing)
|
|
241
|
+
return true;
|
|
242
|
+
return !billing.subscriptionPath;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Decide what the cost surface should render for a given harness + model
|
|
246
|
+
* combination, plus whether the confirmation gate fires.
|
|
247
|
+
*
|
|
248
|
+
* Defaults:
|
|
249
|
+
* - threshold: $1 / task (see DEFAULT_HIGH_COST_THRESHOLD_USD).
|
|
250
|
+
* - subscription harness → suppress surface + skip gate.
|
|
251
|
+
* - unknown model on a paid harness → show estimate slot (caller may
|
|
252
|
+
* render "estimate unavailable") but DO NOT trigger the gate.
|
|
253
|
+
*/
|
|
254
|
+
export function decideCostSurface(harness, modelId, thresholdUsd = DEFAULT_HIGH_COST_THRESHOLD_USD) {
|
|
255
|
+
if (!harnessUsesPaidApiKey(harness)) {
|
|
256
|
+
return {
|
|
257
|
+
showEstimate: false,
|
|
258
|
+
estimate: null,
|
|
259
|
+
requiresConfirmation: false,
|
|
260
|
+
suppressedReason: 'Included in subscription, no per-task API cost.',
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
const estimate = modelId ? estimateModelCost(modelId) : null;
|
|
264
|
+
const modelOverridesSubscription = estimate?.entry.subscriptionPath === true;
|
|
265
|
+
if (modelOverridesSubscription) {
|
|
266
|
+
return {
|
|
267
|
+
showEstimate: false,
|
|
268
|
+
estimate: null,
|
|
269
|
+
requiresConfirmation: false,
|
|
270
|
+
suppressedReason: 'Included in subscription, no per-task API cost.',
|
|
271
|
+
};
|
|
272
|
+
}
|
|
273
|
+
return {
|
|
274
|
+
showEstimate: true,
|
|
275
|
+
estimate,
|
|
276
|
+
requiresConfirmation: estimate !== null && estimate.usd > thresholdUsd,
|
|
277
|
+
suppressedReason: null,
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
/**
|
|
281
|
+
* Format a USD amount for compact display in the dashboard. Picks the
|
|
282
|
+
* smallest fraction count that still distinguishes the value from $0.
|
|
283
|
+
*/
|
|
284
|
+
export function formatUsd(amount) {
|
|
285
|
+
if (!Number.isFinite(amount))
|
|
286
|
+
return '—';
|
|
287
|
+
if (amount === 0)
|
|
288
|
+
return '$0';
|
|
289
|
+
if (amount < 0.01)
|
|
290
|
+
return `<$0.01`;
|
|
291
|
+
if (amount < 1)
|
|
292
|
+
return `$${amount.toFixed(2)}`;
|
|
293
|
+
if (amount < 10)
|
|
294
|
+
return `$${amount.toFixed(2)}`;
|
|
295
|
+
return `$${amount.toFixed(2)}`;
|
|
296
|
+
}
|
|
297
|
+
//# sourceMappingURL=cost-estimates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cost-estimates.js","sourceRoot":"","sources":["../../src/harnesses/cost-estimates.ts"],"names":[],"mappings":"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"}
|